Files
MyClub/diagrams/frontend-homepage.mmd
T
Tomas Dvorak c941313fd5 dev day #92
2025-11-14 15:53:12 +01:00

70 lines
2.8 KiB
Plaintext

flowchart LR
%% Homepage composition (components and data)
classDef page fill:#1c243a,stroke:#4b5b8a,color:#e8eaf0;
classDef comp fill:#1d2a2a,stroke:#3d7a6a,color:#e8eaf0;
classDef svc fill:#0b273f,stroke:#3a72a0,color:#e8eaf0;
classDef ctx fill:#2b233f,stroke:#7a63a0,color:#e8eaf0;
classDef hook fill:#2a2a1f,stroke:#9a8a3d,color:#e8eaf0;
HomePage:::page
HomePage --> MainLayout[components/layout/MainLayout]:::comp
HomePage --> ClubHeroTopbar[components/home/ClubHeroTopbar]:::comp
HomePage --> BannerDisplay[components/banners/BannerDisplay]:::comp
HomePage --> BlogCardsScroller[components/home/BlogCardsScroller]:::comp
HomePage --> BlogSwiper[components/home/BlogSwiper]:::comp
HomePage --> VideosSection[components/home/VideosSection]:::comp
HomePage --> MerchSection[components/home/MerchSection]:::comp
HomePage --> PollsWidget[components/home/PollsWidget]:::comp
HomePage --> GallerySection[components/home/GallerySection]:::comp
HomePage --> NewsletterSubscribe[components/newsletter/NewsletterSubscribe]:::comp
HomePage --> NewsList[components/pack/NewsList]:::comp
HomePage --> StandingsCard[components/pack/StandingsCard]:::comp
HomePage --> NextMatch[components/pack/NextMatch]:::comp
HomePage --> MatchesSlider[components/pack/MatchesSlider]:::comp
HomePage --> ActivitiesList[components/pack/ActivitiesList]:::comp
HomePage --> SweepstakeWidget[components/sweepstakes/SweepstakeWidget]:::comp
HomePage --> ClubModal[components/home/ClubModal]:::comp
HomePage --> MatchModal[components/home/MatchModal]:::comp
HomePage -. uses .- TeamLogo[components/common/TeamLogo]:::comp
%% Data sources
subgraph Services
settingsSvc[services/settings.getPublicSettings]:::svc
pageElementsSvc[services/pageElements.getPageElementConfigs]:::svc
articlesSvc[services/articles]:::svc
playersSvc[services/players]:::svc
sponsorsSvc[services/sponsors]:::svc
bannersSvc[services/banners]:::svc
compAliasesSvc[services/competitionAliases]:::svc
eventsSvc[services/eventService.getUpcomingEvents]:::svc
facrApi[services/facr/facrApi]:::svc
apiCore[services/api - API_URL]:::svc
end
HomePage --> settingsSvc
HomePage --> pageElementsSvc
HomePage --> articlesSvc
HomePage --> playersSvc
HomePage --> sponsorsSvc
HomePage --> bannersSvc
HomePage --> compAliasesSvc
HomePage --> eventsSvc
HomePage --> facrApi
HomePage --> apiCore
%% Contexts & Hooks
subgraph Contexts
AuthContext[contexts/AuthContext]:::ctx
ClubThemeContext[contexts/ClubThemeContext]:::ctx
end
subgraph Hooks
useAllPageElementConfigs[hooks/usePageElementConfig.useAllPageElementConfigs]:::hook
usePublicSettings[hooks/usePublicSettings]:::hook
end
HomePage --> AuthContext
HomePage --> ClubThemeContext
HomePage --> useAllPageElementConfigs
HomePage --> usePublicSettings