Esikatselu
<TitleBar logo={<LogoKela height="48" width="83" />} />
Käyttötarkoitus
TitleBar
on sivun yläosaan sijoitettava palvelukohtainen elementti, jolla luodaan palvelun brändiä. Komponentissa näkyy logo, joka toimii linkkinä kyseisen palvelun etusivulle. Lisäksi komponentissa voidaan tarvittaessa näyttää palvelun nimi ja jokin yksittäinen toiminto, kuten kielivalinta.
TitleBaria voi käyttää esimerkiksi erillissovelluksissa, kuten laskureissa.
Titlebarin avulla voidaan tietyissä tilanteissa näyttää palvelun logo. Esimerkiksi asiointipalveluissa logo näytetään sivunavigaatiossa (Sidebar). Pienellä näytöllä sivunavigaatio kuitenkin piilotetaan, jolloin tässä näkymässä palvelun logo voidaan näyttää TitleBarin avulla.
- Käytä TitleBaria luomaan palvelun brändiä erillissovelluksissa.
- Käytä TitleBaria näyttämään palvelun logo.
- Voit käyttää TitleBaria myös muiden palvelukohtaisten toimintojen esittämiseen.
- Älä tuo TitleBariin toimintoja, jos palvelussa on käytössä työkalupalkki (MainBar). Vie toiminnot silloin työkalupalkkiin.
- Älä käytä TitleBaria navigaatiopalkkina tai työkalupalkkina, johon tuodaan useita toimintoja.
- Jos käytät sivunavigaatioon Sidebar-komponenttia, älä näytä sivunavigaatiota ja Titlebaria samaan aikaan. Muutoin logo näkyy kahteen kertaan.
Saavutettavuus
Komponentin responsiivinen toteutus on osittain kehittäjän vastuulla. Kapeilla näytöillä lisätoiminnot tulee piilottaa, jos ne eivät luontevasti mahdu ruudulle. Näytön kaventuessa mahdolliset lisätoiminnot pudotetaan oletuksena uudelle riville, jossa ne tasataan oikealle.
Toimintolinkkien ja -painikkeiden saavutettavuus on kehittäjän vastuulla, kun niiden tekstit piilotetaan. Toiminnoille on tarpeen mukaan lisättävä aria-label
-attribuutit.
Esimerkit
Komponentti pelkällä tunnuksella
<TitleBar logo={<LogoKela height="48" width="83" />} maxWidth="xl" />
<TitleBar logo={<LogoKanta height="28" width="105" />} maxWidth="xl" />
Komponentti tunnuksella ja palvelun nimellä
<TitleBar logo={<LogoKela height="48" width="83" />} title="Henkilöasiakkaat" maxWidth="xl" />
Komponentti OmaKela-tunnuksella ja lisätoiminnolla
const OmaKelaTitleBar = () => {
const [isLangOpen, setIsLangOpen] = useState(false);
return (
<TitleBar
title="Testipalvelu"
logo={
<a href="#" aria-label="Etusivulle" className="kds-inline-block">
<LogoOmaKela height="48" width="175" />
</a>
}
maxWidth="xl"
>
<Dropdown isOpen={isLangOpen} onClick={() => setIsLangOpen(!isLangOpen)}>
<DropdownToggle as={TitleBarAction} icon={<IconGlobe />} aria-label="Suomi">
Suomi
</DropdownToggle>
<DropdownMenu>
<DropdownMenuGroupHeading>Valitse kieli</DropdownMenuGroupHeading>
<DropdownMenuGroup>
<DropdownMenuItem href="#">På svenska</DropdownMenuItem>
<DropdownMenuItem href="#">In english</DropdownMenuItem>
<DropdownMenuItem href="#">Saameksi</DropdownMenuItem>
<DropdownMenuItem href="#">Selkosuomeksi</DropdownMenuItem>
<DropdownMenuItem href="#">Viittomakielellä</DropdownMenuItem>
<DropdownMenuItem href="#">På teckenspråk</DropdownMenuItem>
<DropdownMenuItem href="#">Other languages</DropdownMenuItem>
</DropdownMenuGroup>
</DropdownMenu>
</Dropdown>
</TitleBar>
);
};
render(<OmaKelaTitleBar />);
Täysleveä komponentti
Komponentin sisältö voidaan halutessa näyttää koko layoutin levyisenä, ilman että se saa containerin maksimileveyden.
<TitleBar logo={<LogoKela height="48" width="83" />} title="Kuntoutuspalaute" fluid />