We will remove a level of inheritance and convert the ImageOverlay to an Overlay with a child
= Precursors
* LanguageOverlay should be converted to an Overlay (T215657)
* Talkoverlay should be an Overlay (T215370)
= Acceptance criteria
[] ImageOverlay is repurposed as a specialised Overlay which has no header.
[] An imageOverlay factory method returns an Overlay which contains an ImageCarousel component.
[] The new ImageCarousel component does not use templatePartials in any way either directly or via toHtmlString (see https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/MobileFrontend/+/482382/)
= Anatomy of ImageOverlay
The ImageOverlay has 3 distinct parts. The header/footer probably belong to the Overlay but may require specific styling and themselves may be components!
== ImageCarousel
{F28247048}
== header
{F28247051}
== footer
{F28247052}