Redirect 301 redirect from GET @training_exercise_collection_category (59215b)

GET http://test.fitmetrics.ch/fr/exercices/categorie/61-renforcement?page=96

Components

17 Twig Components
141 Render Count
129 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 3.02ms
ui:badge
"App\Twig\Components\Ui\Badge"
components/ui/badge.html.twig
15 1.02ms
card:exercise-h
"App\Twig\Components\Card\ExerciseCardH"
components/card/exercise-h.html.twig
10 82.50ms
training:exercise:image
"App\Twig\Components\Training\Exercise\ExerciseImage"
components/training/exercise/image.html.twig
10 31.95ms
training:difficulty-badge
"App\Twig\Components\Training\DifficultyBadge"
components/training/difficulity-badge.html.twig
10 0.74ms
app:lang-selector
"App\Twig\Components\App\LangSelector"
components/app/lang-selector.html.twig
4 3.86ms
ui:dropdown
"App\Twig\Components\Ui\Dropdown"
components/ui/dropdown.html.twig
4 2.60ms
utils:lang-selector
[Anonymous]
components/utils/lang-selector.html.twig
3 3.93ms
ad:horizontal:fluid
"App\Twig\Components\Ad\AdHorizontalFluid"
components/ad/horizontal-fluid.html.twig
3 0.61ms
menu:main
"App\Twig\Components\Menu\MainMenu"
components/menu/main.html.twig
1 39.67ms
menu:connexion-menu
"App\Twig\Components\Menu\ConnexionMenu"
components/menu/user-menu.html.twig
1 9.34ms
menu:breadcrumb
"App\Twig\Components\Menu\Breadcrumb"
components/menu/breadcrumb.html.twig
1 0.55ms
media:image
"App\Twig\Components\Media\Image"
components/media/image.html.twig
1 0.94ms
ui:accordion
"App\Twig\Components\Ui\Accordion"
components/ui/accordion.html.twig
1 1.03ms
app:page-sharer
"App\Twig\Components\App\PageSharer"
components/app/page-sharer.html.twig
1 1.70ms
ad:wide-skyscraper
"App\Twig\Components\Ad\AdWideSkyscraper"
components/ad/wide-skyscraper.html.twig
1 0.39ms
utils:theme-switcher
[Anonymous]
components/utils/theme-switcher.html.twig
1 0.54ms

Render calls

menu:main App\Twig\Components\Menu\MainMenu 64.5 MiB 39.67 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\MainMenu {#5113
  -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 60.5 MiB 0.49 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 {#5160
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.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 {#5171
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
utils:lang-selector
[Anonymous]
60.5 MiB 2.16 ms
Input props
[
  "size" => "compact"
  "showTranslateIcon" => false
]
Attributes
[
  "size" => "compact"
  "showTranslateIcon" => false
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#5222
  -props: [
    "size" => "compact"
    "showTranslateIcon" => false
  ]
}
app:lang-selector App\Twig\Components\App\LangSelector 60.5 MiB 1.69 ms
Input props
[
  "defaultOpenLeft" => false
  "size" => "compact"
  "showTranslateIcon" => false
]
Attributes
[
  "size" => "compact"
]
Component
App\Twig\Components\App\LangSelector {#5249
  +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 60.5 MiB 0.87 ms
Input props
[
  "label" => "lang.name.fr"
  "defaultOpenLeft" => false
  "locales" => [
    "fr"
    "en"
    "de"
    "it"
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Dropdown {#5284
  +label: "lang.name.fr"
  +contentClass: null
  +defaultOpen: false
  +defaultOpenLeft: false
  +locales: [
    "fr"
    "en"
    "de"
    "it"
  ]
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 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 {#5327
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.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 {#5373
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5390
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5412
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "fitmetrics-white-biceps"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 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 {#5440
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5456
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5480
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5504
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5528
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5552
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5576
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#5600
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "latest"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.03 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 {#5624
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "random"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.05 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 {#6149
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
utils:lang-selector
[Anonymous]
60.5 MiB 0.84 ms
Input props
[
  "defaultOpenLeft" => true
  "size" => "compact"
]
Attributes
[
  "defaultOpenLeft" => true
  "size" => "compact"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#6187
  -props: [
    "defaultOpenLeft" => true
    "size" => "compact"
  ]
}
app:lang-selector App\Twig\Components\App\LangSelector 60.5 MiB 0.73 ms
Input props
[
  "defaultOpenLeft" => true
  "size" => "compact"
  "showTranslateIcon" => true
]
Attributes
[
  "size" => "compact"
]
Component
App\Twig\Components\App\LangSelector {#6224
  +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.60 ms
Input props
[
  "label" => "lang.name.fr"
  "defaultOpenLeft" => true
  "locales" => [
    "fr"
    "en"
    "de"
    "it"
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Dropdown {#6246
  +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 {#6277
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6299
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6346
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
menu:connexion-menu App\Twig\Components\Menu\ConnexionMenu 64.5 MiB 9.34 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Menu\ConnexionMenu {#6218
  -authenticationUtils: Symfony\Component\Security\Http\Authentication\AuthenticationUtils {#6328 …}
  -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 {#6474
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "close"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 60.5 MiB 0.04 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 {#6490
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6520
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6552
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6571
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "apple"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
app:lang-selector App\Twig\Components\App\LangSelector 64.5 MiB 0.69 ms
Input props
[
  "defaultOpenLeft" => true
  "size" => "compact"
  "showTranslateIcon" => true
]
Attributes
[
  "size" => "compact"
]
Component
App\Twig\Components\App\LangSelector {#6683
  +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.56 ms
Input props
[
  "label" => "lang.name.fr"
  "defaultOpenLeft" => true
  "locales" => [
    "fr"
    "en"
    "de"
    "it"
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Dropdown {#6712
  +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 {#6743
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6765
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6812
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6667
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6837
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6853
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6891
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6915
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6939
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "barbell"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 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 {#6963
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6987
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "stats-chart"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 64.5 MiB 0.04 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 {#7011
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#7035
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#7059
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#7083
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#6623
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "fitmetrics-biceps"
  +title: null
  +symbolDefsName: null
}
menu:breadcrumb App\Twig\Components\Menu\Breadcrumb 64.5 MiB 0.55 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" => "Renforcement"
        "url" => null
      ]
    ]
  }
]
Attributes
[]
Component
App\Twig\Components\Menu\Breadcrumb {#7153
  +items: [
    [
      "label" => "menu.home"
      "url" => "/fr/"
    ]
    [
      "label" => "menu.exercises"
      "url" => "/fr/exercices"
    ]
    [
      "label" => "label.categories"
      "url" => "/fr/exercices/categories"
    ]
    [
      "label" => "Renforcement"
      "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" => "Renforcement"
        "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 {#7183
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#7205
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#7228
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "chevron-right"
  +title: null
  +symbolDefsName: null
}
media:image App\Twig\Components\Media\Image 64.5 MiB 0.94 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: null
    -zone: null
    -urlExternal: null
    #id: 507
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#3355 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: null
    #createdAt: DateTimeImmutable @1730211004 {#3280
      date: 2024-10-29 15:10:04.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1778015874 {#3363
      date: 2026-05-05 23:17:54.511847 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 renforcement"
  "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 {#7251
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Meilleurs exercices pour renforcement"
  +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: null
    -zone: null
    -urlExternal: null
    #id: 507
    -notes: null
    #translations: Doctrine\ORM\PersistentCollection {#3355 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -tiersId: null
    -tiersName: null
    #createdAt: DateTimeImmutable @1730211004 {#3280
      date: 2024-10-29 15:10:04.0 Europe/Zurich (+01:00)
    }
    #updatedAt: DateTimeImmutable @1778015874 {#3363
      date: 2026-05-05 23:17:54.511847 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 1.03 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 {#7297
  +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 {#7385
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "chevron-up-circle"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 64.5 MiB 9.54 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#3718
    #id: 1548
    #token: "689cbcc228493"
    -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: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -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_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4074 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4150 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4234 …}
    -side: false
    #createdAt: DateTimeImmutable @1755102402 {#3800
      date: 2025-08-13 18:26:42.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769256837 {#3714
      date: 2026-01-24 13:13:57.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: 56
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "scapular slide wall"
    -metaphoneName: "SKPLRSLTWL"
  }
  "shortName" => false
  "id" => "exercise-card-689cbcc228493"
]
Attributes
[
  "id" => "exercise-card-689cbcc228493"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7434
  +exercise: App\Entity\Training\Exercise {#3718
    #id: 1548
    #token: "689cbcc228493"
    -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: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -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_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4074 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4150 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4234 …}
    -side: false
    #createdAt: DateTimeImmutable @1755102402 {#3800
      date: 2025-08-13 18:26:42.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769256837 {#3714
      date: 2026-01-24 13:13:57.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: 56
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "scapular slide wall"
    -metaphoneName: "SKPLRSLTWL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 64.5 MiB 2.67 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#3718
    #id: 1548
    #token: "689cbcc228493"
    -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: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -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_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4074 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4150 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4234 …}
    -side: false
    #createdAt: DateTimeImmutable @1755102402 {#3800
      date: 2025-08-13 18:26:42.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769256837 {#3714
      date: 2026-01-24 13:13:57.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: 56
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "scapular slide wall"
    -metaphoneName: "SKPLRSLTWL"
  }
  "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 Glissés scapulaires contre un mur"
  "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 {#7467
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Glissés scapulaires contre un mur"
  +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: 1548
    #token: "689cbcc228493"
    -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: "done"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -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_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4074 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4150 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4234 …}
    -side: false
    #createdAt: DateTimeImmutable @1755102402 {#3800
      date: 2025-08-13 18:26:42.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769256837 {#3714
      date: 2026-01-24 13:13:57.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: 56
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "scapular slide wall"
    -metaphoneName: "SKPLRSLTWL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 64.5 MiB 0.27 ms
Input props
[
  "name" => "Dos"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7649
  +name: "Dos"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 64.5 MiB 0.25 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#7665
  +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 {#7586
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 66.5 MiB 9.43 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4258
    #id: 1549
    #token: "689cbcc230a9c"
    -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: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4271 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4273 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4275 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4278 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4279 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4281 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4283 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4285 …}
    -side: false
    #createdAt: DateTimeImmutable @1755102402 {#4254
      date: 2025-08-13 18:26:42.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769169020 {#4257
      date: 2026-01-23 12:50:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4287 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 59
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "drill hinge hip wall"
    -metaphoneName: "TRLHNJHPWL"
  }
  "shortName" => false
  "id" => "exercise-card-689cbcc230a9c"
]
Attributes
[
  "id" => "exercise-card-689cbcc230a9c"
]
Component
App\Twig\Components\Card\ExerciseCardH {#7470
  +exercise: App\Entity\Training\Exercise {#4258
    #id: 1549
    #token: "689cbcc230a9c"
    -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: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4271 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4273 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4275 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4278 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4279 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4281 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4283 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4285 …}
    -side: false
    #createdAt: DateTimeImmutable @1755102402 {#4254
      date: 2025-08-13 18:26:42.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769169020 {#4257
      date: 2026-01-23 12:50:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4287 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 59
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "drill hinge hip wall"
    -metaphoneName: "TRLHNJHPWL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 66.5 MiB 2.56 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4258
    #id: 1549
    #token: "689cbcc230a9c"
    -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: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4271 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4273 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4275 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4278 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4279 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4281 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4283 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4285 …}
    -side: false
    #createdAt: DateTimeImmutable @1755102402 {#4254
      date: 2025-08-13 18:26:42.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769169020 {#4257
      date: 2026-01-23 12:50:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4287 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 59
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "drill hinge hip wall"
    -metaphoneName: "TRLHNJHPWL"
  }
  "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 Poussée de hanches contre un mur"
  "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 {#7778
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Poussée de hanches contre un mur"
  +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: 1549
    #token: "689cbcc230a9c"
    -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: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4271 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4273 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4275 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4278 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4279 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4281 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4283 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4285 …}
    -side: false
    #createdAt: DateTimeImmutable @1755102402 {#4254
      date: 2025-08-13 18:26:42.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769169020 {#4257
      date: 2026-01-23 12:50:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4287 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 59
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "drill hinge hip wall"
    -metaphoneName: "TRLHNJHPWL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.06 ms
Input props
[
  "name" => "Fessiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7929
  +name: "Fessiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.05 ms
Input props
[
  "name" => "Lombaires"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#7965
  +name: "Lombaires"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.06 ms
Input props
[
  "name" => "Ischio-jambiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8001
  +name: "Ischio-jambiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 66.5 MiB 0.06 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#7983
  +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 {#7803
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 66.5 MiB 6.87 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4291
    #id: 1550
    #token: "689dc599c91de"
    -images: Doctrine\ORM\PersistentCollection {#4292 …}
    -videos: Doctrine\ORM\PersistentCollection {#4294 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4296 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4298 …}
    -categories: Doctrine\ORM\PersistentCollection {#4300 …}
    -materials: Doctrine\ORM\PersistentCollection {#4302 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4304 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4306 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4308 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4311 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4312 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4314 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4316 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4318 …}
    -side: false
    #createdAt: DateTimeImmutable @1755170201 {#4289
      date: 2025-08-14 13:16:41.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769262849 {#4290
      date: 2026-01-24 14:54:09.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4321 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4322 …}
    #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: "ball curl hamstring swiss"
    -metaphoneName: "BLKRLHMSTRNKSWS"
  }
  "shortName" => false
  "id" => "exercise-card-689dc599c91de"
]
Attributes
[
  "id" => "exercise-card-689dc599c91de"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8047
  +exercise: App\Entity\Training\Exercise {#4291
    #id: 1550
    #token: "689dc599c91de"
    -images: Doctrine\ORM\PersistentCollection {#4292 …}
    -videos: Doctrine\ORM\PersistentCollection {#4294 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4296 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4298 …}
    -categories: Doctrine\ORM\PersistentCollection {#4300 …}
    -materials: Doctrine\ORM\PersistentCollection {#4302 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4304 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4306 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4308 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4311 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4312 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4314 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4316 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4318 …}
    -side: false
    #createdAt: DateTimeImmutable @1755170201 {#4289
      date: 2025-08-14 13:16:41.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769262849 {#4290
      date: 2026-01-24 14:54:09.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4321 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4322 …}
    #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: "ball curl hamstring swiss"
    -metaphoneName: "BLKRLHMSTRNKSWS"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 66.5 MiB 2.70 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4291
    #id: 1550
    #token: "689dc599c91de"
    -images: Doctrine\ORM\PersistentCollection {#4292 …}
    -videos: Doctrine\ORM\PersistentCollection {#4294 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4296 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4298 …}
    -categories: Doctrine\ORM\PersistentCollection {#4300 …}
    -materials: Doctrine\ORM\PersistentCollection {#4302 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4304 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4306 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4308 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4311 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4312 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4314 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4316 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4318 …}
    -side: false
    #createdAt: DateTimeImmutable @1755170201 {#4289
      date: 2025-08-14 13:16:41.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769262849 {#4290
      date: 2026-01-24 14:54:09.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4321 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4322 …}
    #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: "ball curl hamstring swiss"
    -metaphoneName: "BLKRLHMSTRNKSWS"
  }
  "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 Curl ischio-jambiers au ballon suisse"
  "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 {#8088
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Curl ischio-jambiers au ballon suisse"
  +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 {#4291
    #id: 1550
    #token: "689dc599c91de"
    -images: Doctrine\ORM\PersistentCollection {#4292 …}
    -videos: Doctrine\ORM\PersistentCollection {#4294 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4296 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4298 …}
    -categories: Doctrine\ORM\PersistentCollection {#4300 …}
    -materials: Doctrine\ORM\PersistentCollection {#4302 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4304 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4306 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4308 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4311 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4312 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4314 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4316 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4318 …}
    -side: false
    #createdAt: DateTimeImmutable @1755170201 {#4289
      date: 2025-08-14 13:16:41.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769262849 {#4290
      date: 2026-01-24 14:54:09.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4321 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4322 …}
    #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: "ball curl hamstring swiss"
    -metaphoneName: "BLKRLHMSTRNKSWS"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.05 ms
Input props
[
  "name" => "Ischio-jambiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8197
  +name: "Ischio-jambiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 66.5 MiB 0.06 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8176
  +difficulty: "intermediate"
  +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 {#8113
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 66.5 MiB 9.20 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4326
    #id: 1558
    #token: "689f1a9093a67"
    -images: Doctrine\ORM\PersistentCollection {#4327 …}
    -videos: Doctrine\ORM\PersistentCollection {#4329 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4331 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4333 …}
    -categories: Doctrine\ORM\PersistentCollection {#4335 …}
    -materials: Doctrine\ORM\PersistentCollection {#4337 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4339 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4341 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4343 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4346 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4347 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4349 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4351 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4353 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4324
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769195600 {#4325
      date: 2026-01-23 20:13:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4355 …}
    #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: "arm bench dumbbell press single"
    -metaphoneName: "ARMBNXTMLPRSSNKL"
  }
  "shortName" => false
  "id" => "exercise-card-689f1a9093a67"
]
Attributes
[
  "id" => "exercise-card-689f1a9093a67"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8243
  +exercise: App\Entity\Training\Exercise {#4326
    #id: 1558
    #token: "689f1a9093a67"
    -images: Doctrine\ORM\PersistentCollection {#4327 …}
    -videos: Doctrine\ORM\PersistentCollection {#4329 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4331 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4333 …}
    -categories: Doctrine\ORM\PersistentCollection {#4335 …}
    -materials: Doctrine\ORM\PersistentCollection {#4337 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4339 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4341 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4343 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4346 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4347 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4349 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4351 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4353 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4324
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769195600 {#4325
      date: 2026-01-23 20:13:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4355 …}
    #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: "arm bench dumbbell press single"
    -metaphoneName: "ARMBNXTMLPRSSNKL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 66.5 MiB 4.25 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4326
    #id: 1558
    #token: "689f1a9093a67"
    -images: Doctrine\ORM\PersistentCollection {#4327 …}
    -videos: Doctrine\ORM\PersistentCollection {#4329 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4331 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4333 …}
    -categories: Doctrine\ORM\PersistentCollection {#4335 …}
    -materials: Doctrine\ORM\PersistentCollection {#4337 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4339 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4341 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4343 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4346 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4347 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4349 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4351 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4353 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4324
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769195600 {#4325
      date: 2026-01-23 20:13:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4355 …}
    #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: "arm bench dumbbell press single"
    -metaphoneName: "ARMBNXTMLPRSSNKL"
  }
  "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 Développé couché unilatéral avec haltère"
  "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 {#8282
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Développé couché unilatéral avec haltère"
  +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 {#4326
    #id: 1558
    #token: "689f1a9093a67"
    -images: Doctrine\ORM\PersistentCollection {#4327 …}
    -videos: Doctrine\ORM\PersistentCollection {#4329 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4331 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4333 …}
    -categories: Doctrine\ORM\PersistentCollection {#4335 …}
    -materials: Doctrine\ORM\PersistentCollection {#4337 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4339 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4341 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4343 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4346 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4347 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4349 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4351 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4353 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4324
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769195600 {#4325
      date: 2026-01-23 20:13:20.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4355 …}
    #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: "arm bench dumbbell press single"
    -metaphoneName: "ARMBNXTMLPRSSNKL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.06 ms
Input props
[
  "name" => "Pectoraux"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8413
  +name: "Pectoraux"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 66.5 MiB 0.06 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8395
  +difficulty: "intermediate"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 66.5 MiB 0.07 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 {#8307
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 66.5 MiB 0.50 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 {#8466
  +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 6.96 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4359
    #id: 1559
    #token: "689f1a909ae1e"
    -images: Doctrine\ORM\PersistentCollection {#4360 …}
    -videos: Doctrine\ORM\PersistentCollection {#4362 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4364 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4366 …}
    -categories: Doctrine\ORM\PersistentCollection {#4368 …}
    -materials: Doctrine\ORM\PersistentCollection {#4370 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4372 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4374 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4376 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4379 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4380 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4382 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4384 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4386 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4357
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1773626080 {#4358
      date: 2026-03-16 02:54:40.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4388 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 74
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm cable decline fly single"
    -metaphoneName: "ARMKBLTKLNFLSNKL"
  }
  "shortName" => false
  "id" => "exercise-card-689f1a909ae1e"
]
Attributes
[
  "id" => "exercise-card-689f1a909ae1e"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8459
  +exercise: App\Entity\Training\Exercise {#4359
    #id: 1559
    #token: "689f1a909ae1e"
    -images: Doctrine\ORM\PersistentCollection {#4360 …}
    -videos: Doctrine\ORM\PersistentCollection {#4362 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4364 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4366 …}
    -categories: Doctrine\ORM\PersistentCollection {#4368 …}
    -materials: Doctrine\ORM\PersistentCollection {#4370 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4372 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4374 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4376 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4379 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4380 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4382 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4384 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4386 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4357
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1773626080 {#4358
      date: 2026-03-16 02:54:40.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4388 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 74
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm cable decline fly single"
    -metaphoneName: "ARMKBLTKLNFLSNKL"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 66.5 MiB 2.59 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4359
    #id: 1559
    #token: "689f1a909ae1e"
    -images: Doctrine\ORM\PersistentCollection {#4360 …}
    -videos: Doctrine\ORM\PersistentCollection {#4362 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4364 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4366 …}
    -categories: Doctrine\ORM\PersistentCollection {#4368 …}
    -materials: Doctrine\ORM\PersistentCollection {#4370 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4372 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4374 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4376 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4379 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4380 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4382 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4384 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4386 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4357
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1773626080 {#4358
      date: 2026-03-16 02:54:40.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4388 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 74
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm cable decline fly single"
    -metaphoneName: "ARMKBLTKLNFLSNKL"
  }
  "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 Écarté décliné à la poulie à 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 {#8533
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Écarté décliné à la poulie à 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 {#4359
    #id: 1559
    #token: "689f1a909ae1e"
    -images: Doctrine\ORM\PersistentCollection {#4360 …}
    -videos: Doctrine\ORM\PersistentCollection {#4362 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4364 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4366 …}
    -categories: Doctrine\ORM\PersistentCollection {#4368 …}
    -materials: Doctrine\ORM\PersistentCollection {#4370 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4372 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4374 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4376 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4379 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4380 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4382 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4384 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4386 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4357
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1773626080 {#4358
      date: 2026-03-16 02:54:40.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4388 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 74
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "arm cable decline fly single"
    -metaphoneName: "ARMKBLTKLNFLSNKL"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 66.5 MiB 0.05 ms
Input props
[
  "name" => "Pectoraux"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8642
  +name: "Pectoraux"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 66.5 MiB 0.06 ms
Input props
[
  "difficulty" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8621
  +difficulty: "intermediate"
  +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 {#8558
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 68.5 MiB 6.70 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4392
    #id: 1561
    #token: "689f1a90b0ce6"
    -images: Doctrine\ORM\PersistentCollection {#4393 …}
    -videos: Doctrine\ORM\PersistentCollection {#4395 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4397 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4399 …}
    -categories: Doctrine\ORM\PersistentCollection {#4401 …}
    -materials: Doctrine\ORM\PersistentCollection {#4403 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4405 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4407 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4409 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4412 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4413 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4415 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4417 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4419 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4390
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769081567 {#4391
      date: 2026-01-22 12:32:47.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4421 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 192
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "knee plank tuck"
    -metaphoneName: "NPLNKTK"
  }
  "shortName" => false
  "id" => "exercise-card-689f1a90b0ce6"
]
Attributes
[
  "id" => "exercise-card-689f1a90b0ce6"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8688
  +exercise: App\Entity\Training\Exercise {#4392
    #id: 1561
    #token: "689f1a90b0ce6"
    -images: Doctrine\ORM\PersistentCollection {#4393 …}
    -videos: Doctrine\ORM\PersistentCollection {#4395 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4397 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4399 …}
    -categories: Doctrine\ORM\PersistentCollection {#4401 …}
    -materials: Doctrine\ORM\PersistentCollection {#4403 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4405 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4407 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4409 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4412 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4413 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4415 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4417 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4419 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4390
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769081567 {#4391
      date: 2026-01-22 12:32:47.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4421 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 192
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "knee plank tuck"
    -metaphoneName: "NPLNKTK"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 2.58 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4392
    #id: 1561
    #token: "689f1a90b0ce6"
    -images: Doctrine\ORM\PersistentCollection {#4393 …}
    -videos: Doctrine\ORM\PersistentCollection {#4395 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4397 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4399 …}
    -categories: Doctrine\ORM\PersistentCollection {#4401 …}
    -materials: Doctrine\ORM\PersistentCollection {#4403 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4405 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4407 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4409 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4412 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4413 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4415 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4417 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4419 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4390
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769081567 {#4391
      date: 2026-01-22 12:32:47.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4421 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 192
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "knee plank tuck"
    -metaphoneName: "NPLNKTK"
  }
  "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 Planche avec tirage de genou"
  "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 {#8727
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Planche avec tirage de genou"
  +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 {#4392
    #id: 1561
    #token: "689f1a90b0ce6"
    -images: Doctrine\ORM\PersistentCollection {#4393 …}
    -videos: Doctrine\ORM\PersistentCollection {#4395 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4397 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4399 …}
    -categories: Doctrine\ORM\PersistentCollection {#4401 …}
    -materials: Doctrine\ORM\PersistentCollection {#4403 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "intermediate"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4405 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4407 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4409 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4412 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4413 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4415 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4417 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4419 …}
    -side: true
    #createdAt: DateTimeImmutable @1755257488 {#4390
      date: 2025-08-15 13:31:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769081567 {#4391
      date: 2026-01-22 12:32:47.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4421 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 192
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "knee plank tuck"
    -metaphoneName: "NPLNKTK"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.06 ms
Input props
[
  "name" => "Abdominaux"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#8836
  +name: "Abdominaux"
  +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" => "intermediate"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#8815
  +difficulty: "intermediate"
  +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 {#8752
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 68.5 MiB 7.88 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4425
    #id: 1569
    #token: "689f1ca76082c"
    -images: Doctrine\ORM\PersistentCollection {#4426 …}
    -videos: Doctrine\ORM\PersistentCollection {#4428 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4430 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4432 …}
    -categories: Doctrine\ORM\PersistentCollection {#4434 …}
    -materials: Doctrine\ORM\PersistentCollection {#4436 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "advanced"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4438 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4440 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4442 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4445 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4446 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4448 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4450 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4452 …}
    -side: false
    #createdAt: DateTimeImmutable @1755258023 {#4423
      date: 2025-08-15 13:40:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769267451 {#4424
      date: 2026-01-24 16:10:51.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4454 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 65
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "heavy kettlebell swing"
    -metaphoneName: "HFKTLBLSWNK"
  }
  "shortName" => false
  "id" => "exercise-card-689f1ca76082c"
]
Attributes
[
  "id" => "exercise-card-689f1ca76082c"
]
Component
App\Twig\Components\Card\ExerciseCardH {#8882
  +exercise: App\Entity\Training\Exercise {#4425
    #id: 1569
    #token: "689f1ca76082c"
    -images: Doctrine\ORM\PersistentCollection {#4426 …}
    -videos: Doctrine\ORM\PersistentCollection {#4428 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4430 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4432 …}
    -categories: Doctrine\ORM\PersistentCollection {#4434 …}
    -materials: Doctrine\ORM\PersistentCollection {#4436 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "advanced"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4438 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4440 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4442 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4445 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4446 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4448 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4450 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4452 …}
    -side: false
    #createdAt: DateTimeImmutable @1755258023 {#4423
      date: 2025-08-15 13:40:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769267451 {#4424
      date: 2026-01-24 16:10:51.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4454 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 65
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "heavy kettlebell swing"
    -metaphoneName: "HFKTLBLSWNK"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 2.67 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4425
    #id: 1569
    #token: "689f1ca76082c"
    -images: Doctrine\ORM\PersistentCollection {#4426 …}
    -videos: Doctrine\ORM\PersistentCollection {#4428 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4430 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4432 …}
    -categories: Doctrine\ORM\PersistentCollection {#4434 …}
    -materials: Doctrine\ORM\PersistentCollection {#4436 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "advanced"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4438 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4440 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4442 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4445 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4446 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4448 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4450 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4452 …}
    -side: false
    #createdAt: DateTimeImmutable @1755258023 {#4423
      date: 2025-08-15 13:40:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769267451 {#4424
      date: 2026-01-24 16:10:51.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4454 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 65
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "heavy kettlebell swing"
    -metaphoneName: "HFKTLBLSWNK"
  }
  "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 Swing lourd avec kettlebell"
  "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 {#8921
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Swing lourd avec kettlebell"
  +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 {#4425
    #id: 1569
    #token: "689f1ca76082c"
    -images: Doctrine\ORM\PersistentCollection {#4426 …}
    -videos: Doctrine\ORM\PersistentCollection {#4428 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4430 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4432 …}
    -categories: Doctrine\ORM\PersistentCollection {#4434 …}
    -materials: Doctrine\ORM\PersistentCollection {#4436 …}
    -status: null
    -statusInternal: "done"
    -publicStatus: null
    -difficulty: "advanced"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4438 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4440 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4442 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4445 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4446 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4448 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4450 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4452 …}
    -side: false
    #createdAt: DateTimeImmutable @1755258023 {#4423
      date: 2025-08-15 13:40:23.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769267451 {#4424
      date: 2026-01-24 16:10:51.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4454 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 65
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "heavy kettlebell swing"
    -metaphoneName: "HFKTLBLSWNK"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 68.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 {#9052
  +name: "Quadriceps"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 68.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 {#9076
  +name: "Fessiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.04 ms
Input props
[
  "name" => "Ischio-jambiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9100
  +name: "Ischio-jambiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 68.5 MiB 0.06 ms
Input props
[
  "difficulty" => "advanced"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9082
  +difficulty: "advanced"
  +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 {#8946
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 68.5 MiB 11.05 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4458
    #id: 1572
    #token: "68a0d3e42910c"
    -images: Doctrine\ORM\PersistentCollection {#4459 …}
    -videos: Doctrine\ORM\PersistentCollection {#4461 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4463 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4465 …}
    -categories: Doctrine\ORM\PersistentCollection {#4467 …}
    -materials: Doctrine\ORM\PersistentCollection {#4469 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4471 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4473 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4475 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4478 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4479 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4481 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4483 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4485 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#4456
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769254723 {#4457
      date: 2026-01-24 12:38:43.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4487 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 111
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "bodyweight chair squat"
    -metaphoneName: "BTWFTXRSKT"
  }
  "shortName" => false
  "id" => "exercise-card-68a0d3e42910c"
]
Attributes
[
  "id" => "exercise-card-68a0d3e42910c"
]
Component
App\Twig\Components\Card\ExerciseCardH {#9146
  +exercise: App\Entity\Training\Exercise {#4458
    #id: 1572
    #token: "68a0d3e42910c"
    -images: Doctrine\ORM\PersistentCollection {#4459 …}
    -videos: Doctrine\ORM\PersistentCollection {#4461 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4463 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4465 …}
    -categories: Doctrine\ORM\PersistentCollection {#4467 …}
    -materials: Doctrine\ORM\PersistentCollection {#4469 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4471 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4473 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4475 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4478 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4479 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4481 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4483 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4485 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#4456
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769254723 {#4457
      date: 2026-01-24 12:38:43.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4487 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 111
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "bodyweight chair squat"
    -metaphoneName: "BTWFTXRSKT"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 6.41 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4458
    #id: 1572
    #token: "68a0d3e42910c"
    -images: Doctrine\ORM\PersistentCollection {#4459 …}
    -videos: Doctrine\ORM\PersistentCollection {#4461 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4463 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4465 …}
    -categories: Doctrine\ORM\PersistentCollection {#4467 …}
    -materials: Doctrine\ORM\PersistentCollection {#4469 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4471 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4473 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4475 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4478 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4479 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4481 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4483 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4485 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#4456
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769254723 {#4457
      date: 2026-01-24 12:38:43.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4487 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 111
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "bodyweight chair squat"
    -metaphoneName: "BTWFTXRSKT"
  }
  "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 Squat à la chaise"
  "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 {#9185
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Squat à la chaise"
  +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 {#4458
    #id: 1572
    #token: "68a0d3e42910c"
    -images: Doctrine\ORM\PersistentCollection {#4459 …}
    -videos: Doctrine\ORM\PersistentCollection {#4461 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4463 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4465 …}
    -categories: Doctrine\ORM\PersistentCollection {#4467 …}
    -materials: Doctrine\ORM\PersistentCollection {#4469 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "compound"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4471 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4473 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4475 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4478 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4479 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4481 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4483 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4485 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#4456
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769254723 {#4457
      date: 2026-01-24 12:38:43.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4487 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 111
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "bodyweight chair squat"
    -metaphoneName: "BTWFTXRSKT"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 68.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 {#5406
  +name: "Quadriceps"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
ui:badge App\Twig\Components\Ui\Badge 68.5 MiB 0.04 ms
Input props
[
  "name" => "Fessiers"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#6913
  +name: "Fessiers"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 68.5 MiB 0.06 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#6475
  +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 {#9210
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
ad:horizontal:fluid App\Twig\Components\Ad\AdHorizontalFluid 68.5 MiB 0.05 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 {#9273
  +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.26 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4491
    #id: 1575
    #token: "68a0d3e446901"
    -images: Doctrine\ORM\PersistentCollection {#4492 …}
    -videos: Doctrine\ORM\PersistentCollection {#4494 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4496 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4498 …}
    -categories: Doctrine\ORM\PersistentCollection {#4500 …}
    -materials: Doctrine\ORM\PersistentCollection {#4502 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4504 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4506 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4508 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4511 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4512 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4514 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4516 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4518 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#4489
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769263909 {#4490
      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 {#4520 …}
    #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 {#9267
  +exercise: App\Entity\Training\Exercise {#4491
    #id: 1575
    #token: "68a0d3e446901"
    -images: Doctrine\ORM\PersistentCollection {#4492 …}
    -videos: Doctrine\ORM\PersistentCollection {#4494 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4496 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4498 …}
    -categories: Doctrine\ORM\PersistentCollection {#4500 …}
    -materials: Doctrine\ORM\PersistentCollection {#4502 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4504 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4506 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4508 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4511 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4512 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4514 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4516 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4518 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#4489
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769263909 {#4490
      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 {#4520 …}
    #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 68.5 MiB 2.89 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4491
    #id: 1575
    #token: "68a0d3e446901"
    -images: Doctrine\ORM\PersistentCollection {#4492 …}
    -videos: Doctrine\ORM\PersistentCollection {#4494 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4496 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4498 …}
    -categories: Doctrine\ORM\PersistentCollection {#4500 …}
    -materials: Doctrine\ORM\PersistentCollection {#4502 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4504 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4506 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4508 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4511 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4512 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4514 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4516 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4518 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#4489
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769263909 {#4490
      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 {#4520 …}
    #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 {#9331
  #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 {#4491
    #id: 1575
    #token: "68a0d3e446901"
    -images: Doctrine\ORM\PersistentCollection {#4492 …}
    -videos: Doctrine\ORM\PersistentCollection {#4494 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4496 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4498 …}
    -categories: Doctrine\ORM\PersistentCollection {#4500 …}
    -materials: Doctrine\ORM\PersistentCollection {#4502 …}
    -status: null
    -statusInternal: null
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4504 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4506 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4508 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4511 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4512 …}
    -defaultUnit: "unit_time"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4514 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4516 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4518 …}
    -side: false
    #createdAt: DateTimeImmutable @1755370468 {#4489
      date: 2025-08-16 20:54:28.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1769263909 {#4490
      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 {#4520 …}
    #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 {#7490 …}
}
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 {#9440
  +name: "Abdominaux"
  +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 {#9419
  +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 {#9356
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
card:exercise-h App\Twig\Components\Card\ExerciseCardH 70.5 MiB 7.62 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4524
    #id: 1581
    #token: "68a1021a18e19"
    -images: Doctrine\ORM\PersistentCollection {#4525 …}
    -videos: Doctrine\ORM\PersistentCollection {#4527 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4529 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4531 …}
    -categories: Doctrine\ORM\PersistentCollection {#4533 …}
    -materials: Doctrine\ORM\PersistentCollection {#4535 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4537 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4539 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4541 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4544 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4545 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4547 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4549 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4551 …}
    -side: true
    #createdAt: DateTimeImmutable @1755382298 {#4522
      date: 2025-08-17 00:11:38.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1774354437 {#4523
      date: 2026-03-24 13:13:57.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4553 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 60
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "curl dumbbell hammer"
    -metaphoneName: "KRLTMLHMR"
  }
  "shortName" => false
  "id" => "exercise-card-68a1021a18e19"
]
Attributes
[
  "id" => "exercise-card-68a1021a18e19"
]
Component
App\Twig\Components\Card\ExerciseCardH {#9486
  +exercise: App\Entity\Training\Exercise {#4524
    #id: 1581
    #token: "68a1021a18e19"
    -images: Doctrine\ORM\PersistentCollection {#4525 …}
    -videos: Doctrine\ORM\PersistentCollection {#4527 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4529 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4531 …}
    -categories: Doctrine\ORM\PersistentCollection {#4533 …}
    -materials: Doctrine\ORM\PersistentCollection {#4535 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4537 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4539 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4541 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4544 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4545 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4547 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4549 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4551 …}
    -side: true
    #createdAt: DateTimeImmutable @1755382298 {#4522
      date: 2025-08-17 00:11:38.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1774354437 {#4523
      date: 2026-03-24 13:13:57.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4553 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 60
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "curl dumbbell hammer"
    -metaphoneName: "KRLTMLHMR"
  }
  +title: ? string
  +shortName: false
  +hasOverEffect: true
}
training:exercise:image App\Twig\Components\Training\Exercise\ExerciseImage 68.5 MiB 2.63 ms
Input props
[
  "exercise" => App\Entity\Training\Exercise {#4524
    #id: 1581
    #token: "68a1021a18e19"
    -images: Doctrine\ORM\PersistentCollection {#4525 …}
    -videos: Doctrine\ORM\PersistentCollection {#4527 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4529 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4531 …}
    -categories: Doctrine\ORM\PersistentCollection {#4533 …}
    -materials: Doctrine\ORM\PersistentCollection {#4535 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4537 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4539 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4541 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4544 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4545 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4547 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4549 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4551 …}
    -side: true
    #createdAt: DateTimeImmutable @1755382298 {#4522
      date: 2025-08-17 00:11:38.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1774354437 {#4523
      date: 2026-03-24 13:13:57.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4553 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 60
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "curl dumbbell hammer"
    -metaphoneName: "KRLTMLHMR"
  }
  "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 Curl marteau"
  "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 {#9525
  #cacheManager: Liip\ImagineBundle\Imagine\Cache\CacheManager {#516 …}
  +fileSrc: null
  +placeholderSrc: null
  +alt: "Image Curl marteau"
  +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 {#4524
    #id: 1581
    #token: "68a1021a18e19"
    -images: Doctrine\ORM\PersistentCollection {#4525 …}
    -videos: Doctrine\ORM\PersistentCollection {#4527 …}
    -muscles: Doctrine\ORM\PersistentCollection {#4529 …}
    -secondaryMuscles: Doctrine\ORM\PersistentCollection {#4531 …}
    -categories: Doctrine\ORM\PersistentCollection {#4533 …}
    -materials: Doctrine\ORM\PersistentCollection {#4535 …}
    -status: null
    -statusInternal: "to_film"
    -publicStatus: null
    -difficulty: "beginner"
    -focus: "isolation"
    -executionType: null
    -workoutParts: [
      "workout"
    ]
    -tensionType: null
    -disciplines: Doctrine\ORM\PersistentCollection {#4537 …}
    -validateAt: null
    -validatedBy: Doctrine\ORM\PersistentCollection {#4539 …}
    -mainExercise: null
    -variants: Doctrine\ORM\PersistentCollection {#4541 …}
    -isAvatarDefaultBackView: false
    -exerciseGroup: App\Entity\Training\ExerciseGroup {#4544 …}
    -grips: []
    -isSuggestion: false
    -suggestBy: null
    -preferredGenderView: null
    -exerciseProposal: null
    -userFavorites: Doctrine\ORM\PersistentCollection {#4545 …}
    -defaultUnit: "unit_repeat"
    -exerciseLogs: Doctrine\ORM\PersistentCollection {#4547 …}
    -aliases: Doctrine\ORM\PersistentCollection {#4549 …}
    -faqs: Doctrine\ORM\PersistentCollection {#4551 …}
    -side: true
    #createdAt: DateTimeImmutable @1755382298 {#4522
      date: 2025-08-17 00:11:38.0 Europe/Zurich (+02:00)
    }
    #updatedAt: DateTimeImmutable @1774354437 {#4523
      date: 2026-03-24 13:13:57.0 Europe/Zurich (+01:00)
    }
    #createdBy: App\Entity\User {#4218 …}
    #updatedBy: null
    #deletedAt: null
    #translations: Doctrine\ORM\PersistentCollection {#4553 …}
    #newTranslations: null
    #currentLocale: "fr"
    #defaultLocale: "en"
    -published: true
    #publishedAt: null
    -publishedBy: null
    -notes: null
    -viewCounter: 60
    -tiersId: null
    -tiersName: null
    -source: "openai"
    -sourceModel: null
    -normalizedName: "curl dumbbell hammer"
    -metaphoneName: "KRLTMLHMR"
  }
  #exerciseMediaManager: App\BusinessLogic\Training\Exercise\Manager\ExerciseMediaManager {#7490 …}
}
ui:badge App\Twig\Components\Ui\Badge 70.5 MiB 0.06 ms
Input props
[
  "name" => "Biceps"
  "style" => "z-index: 3"
  "color" => "primary"
  "small" => true
]
Attributes
[
  "style" => "z-index: 3"
]
Component
App\Twig\Components\Ui\Badge {#9659
  +name: "Biceps"
  +url: null
  +color: "primary"
  +small: true
  +selected: false
}
training:difficulty-badge App\Twig\Components\Training\DifficultyBadge 70.5 MiB 0.05 ms
Input props
[
  "difficulty" => "beginner"
  "small" => true
  "link" => false
]
Attributes
[]
Component
App\Twig\Components\Training\DifficultyBadge {#9641
  +difficulty: "beginner"
  +small: true
  +link: false
}
media:icon App\Twig\Components\Media\Icon 70.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 {#9550
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "favorites"
  +title: null
  +symbolDefsName: null
}
app:page-sharer App\Twig\Components\App\PageSharer 70.5 MiB 1.70 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: "http://test.fitmetrics.ch/fr/exercices/categorie/61-renforcement?page=96"
  +title: "Exercices - Renforcement - FitMetrics"
  +description: "Le renforcement musculaire vise à développer la force, la résistance, la stabilité articulaire et la capacité fonctionnelle du corps. Il s’appuie sur des exercices ciblant l’ensemble des groupes musculaires, avec ou sans charges externes (poids du corps, haltères, élastiques, machines). Que ce soit pour la prévention des blessures, la performance sportive, la posture ou la santé globale, le renforcement s’adapte à tous les niveaux. Il améliore aussi le métabolisme, favorise le gain musculaire, et complète efficacement les pratiques cardiovasculaires ou techniques. Résultat : un corps plus fort, équilibré et prêt à répondre aux exigences du quotidien comme du sport."
  +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.05 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 {#9747
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#9775
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#9800
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#9823
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#9846
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#9869
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#9892
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#9915
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "email"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
ad:wide-skyscraper App\Twig\Components\Ad\AdWideSkyscraper 70.5 MiB 0.39 ms
Input props
[]
Attributes
[]
Component
App\Twig\Components\Ad\AdWideSkyscraper {#9751
  +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.06 ms
Input props
[
  "containerClass" => "content-container my-4"
]
Attributes
[]
Component
App\Twig\Components\Ad\AdHorizontalFluid {#9968
  +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.93 ms
Input props
[
  "size" => "large"
]
Attributes
[
  "size" => "large"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#10005
  -props: [
    "size" => "large"
  ]
}
app:lang-selector App\Twig\Components\App\LangSelector 70.5 MiB 0.75 ms
Input props
[
  "defaultOpenLeft" => false
  "size" => "large"
  "showTranslateIcon" => true
]
Attributes
[
  "size" => "large"
]
Component
App\Twig\Components\App\LangSelector {#10027
  +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.57 ms
Input props
[
  "label" => "lang.name.fr"
  "defaultOpenLeft" => false
  "locales" => [
    "fr"
    "en"
    "de"
    "it"
  ]
]
Attributes
[]
Component
App\Twig\Components\Ui\Dropdown {#10049
  +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.04 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 {#10080
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#10102
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "chevron-down"
  +title: null
  +symbolDefsName: null
}
media:icon App\Twig\Components\Media\Icon 70.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 {#10149
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "check"
  +title: null
  +symbolDefsName: null
}
utils:theme-switcher
[Anonymous]
70.5 MiB 0.54 ms
Input props
[
  "size" => "large"
]
Attributes
[
  "size" => "large"
]
Component
Symfony\UX\TwigComponent\AnonymousComponent {#10028
  -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 {#10170
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#10204
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#10227
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#10250
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#10273
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#10296
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#10319
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "tiktok"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}
media:icon App\Twig\Components\Media\Icon 70.5 MiB 0.04 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 {#10342
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +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 {#10365
  #iconManager: App\BusinessLogic\Media\Manager\IconManager {#5163 …}
  +name: "youtube"
  +title: null
  +symbolDefsName: "networks-symbol-defs.svg"
}