import { Header, IconSearch, IconUser, Logo, logoFi, logoSv, logoSvDark } from 'hds-react';
() => {
const languages = [
{ label: 'Suomi', value: 'fi', isPrimary: true },
{ label: 'Svenska', value: 'sv', isPrimary: true },
{ label: 'English', value: 'en', isPrimary: true },
{ label: 'Français', value: 'fr' },
];
const searchAction = () => {
console.log('Open search page');
};
const [href, setHref] = React.useState('');
const [lang, setLang] = React.useState('fi');
const languageChangedStateAction = (language) => {
setLang(language);
};
const [I18n, setI18n] = React.useState(translations[lang]);
React.useEffect(() => {
setI18n(translations[lang]);
}, [lang]);
return (
<>
<Header onDidChangeLanguage={languageChangedStateAction} languages={languages}>
<Header.SkipLink skipTo="#content" label={I18n.skipToContent} />
<Header.UniversalBar primaryLinkText={I18n.headerTitle} primaryLinkHref="#">
<Header.Link href="#uutiset" label={I18n.news} />
<Header.Link href="#asioi_verkossa" label={I18n.online} />
<Header.Link href="#anna_palautetta" label={I18n.feedback} />
</Header.UniversalBar>
<Header.ActionBar
title={I18n.headerTitle}
frontPageLabel={I18n.frontPage}
titleAriaLabel={I18n.headerTitle}
titleHref="https://hel.fi"
logo={<Logo src={logoSrcFromLanguageAndTheme(lang, 'light')} alt={I18n.headerTitle} />}
logoAriaLabel={I18n.ariaLogo}
logoHref="https://hel.fi"
menuButtonAriaLabel={I18n.ariaMenuButton}
openFrontPageLinksAriaLabel="Avaa Etusivun linkkivalikko"
onMenuClick={(e) => e.stopPropagation()}
>
<Header.LanguageSelector ariaLabel={I18n.ariaLanguageSelection} languageHeading={I18n.otherLanguages}>
<h3>{I18n.infoOtherLanguages}</h3>
<Link external href="www.example.com" size="S" lang="fi">
{I18n.clearFinnish}
</Link>
<Link external href="www.example.com" size="S" lang="fse">
{I18n.signLanguage}
</Link>
<h3>{I18n.forTravellers}</h3>
<Link external href="www.example.com" size="S" lang="fi">
MyHelsinki.fi
</Link>
<h3>{I18n.forImmigrants}</h3>
<Link external href="www.example.com" size="S" lang="fi">
InfoFinland.fi
</Link>
</Header.LanguageSelector>
<Header.ActionBarItem
label={I18n.headerSearch}
icon={<IconSearch />}
id="action-bar-search"
onClick={searchAction}
closeLabel={I18n.close}
/>
<Header.ActionBarItem
label={translations[lang].headerLogin}
fixedRightPosition
icon={<IconUser />}
id="action-bar-login"
closeLabel={I18n.close}
preventButtonResize
>
<h3>{I18n.loginOptions}</h3>
</Header.ActionBarItem>
</Header.ActionBar>
<Header.NavigationMenu>
<Header.Link
label={I18n.healthAndndSocialServices}
onClick={(event) => {
event.preventDefault();
setHref('#sosiaali-_ja_terveyspalvelut');
}}
active={href.includes('#sosiaali-_ja_terveyspalvelut')}
dropdownLinks={[
<Header.Link
onClick={(event) => {
event.preventDefault();
setHref('#sosiaali-_ja_terveyspalvelut#terveydenhoito');
}}
label={I18n.healtcare}
active={href.includes('#terveydenhoito')}
dropdownLinks={[
<Header.Link
active={href.includes('#hammashoito')}
onClick={(event) => {
event.preventDefault();
setHref('#sosiaali-_ja_terveyspalvelut#terveydenhoito#hammashoito');
}}
label={I18n.dentalCare}
/>,
]}
/>,
<Header.Link
active={href.includes('#senioripalvelut')}
onClick={(event) => {
event.preventDefault();
setHref('#sosiaali-_ja_terveyspalvelut#senioripalvelut');
}}
label={I18n.seniorServices}
/>,
]}
/>
<Header.Link
active={href.includes('#kasvatus_ja_koulutus')}
onClick={(event) => {
event.preventDefault();
setHref('#kasvatus_ja_koulutus');
}}
label={I18n.childHoodAndEducation}
dropdownLinks={[
<Header.Link
active={href.includes('#varhaiskasvatus')}
onClick={(event) => {
event.preventDefault();
setHref('#kasvatus_ja_koulutus#varhaiskasvatus');
}}
label={I18n.earlyChildhoodEducation}
/>,
<Header.Link
active={href.includes('#esiopetus')}
onClick={(event) => {
event.preventDefault();
setHref('#kasvatus_ja_koulutus#esiopetus');
}}
label={I18n.prePrimaryEducation}
/>,
<Header.Link
active={href.includes('#koulutus')}
onClick={(event) => {
event.preventDefault();
setHref('#kasvatus_ja_koulutus#koulutus');
}}
label={I18n.education}
dropdownLinks={[
<Header.Link
active={href.includes('#perusopetus')}
onClick={(event) => {
event.preventDefault();
setHref('#kasvatus_ja_koulutus#koulutus#perusopetus');
}}
label={I18n.basicEducation}
/>,
<Header.Link
label={I18n.generalUpperSecondaryEducation}
active={href.includes('#lukiokoulutus')}
onClick={(event) => {
event.preventDefault();
setHref('#kasvatus_ja_koulutus#koulutus#lukiokoulutus');
}}
/>,
<Header.Link
label={I18n.adultEducationCentres}
active={href.includes('#tyovaenopistot')}
onClick={(event) => {
event.preventDefault();
setHref('#kasvatus_ja_koulutus#koulutus#tyovaenopistot');
}}
/>,
]}
/>,
]}
/>
<Header.Link
active={href.includes('#yritykset_ja_tyo')}
onClick={(event) => {
event.preventDefault();
setHref('#yritykset_ja_tyo');
}}
label={I18n.businessAndWork}
dropdownLinks={[
<Header.Link
label={I18n.employers}
active={href.includes('#tyonantajat')}
onClick={(event) => {
event.preventDefault();
setHref('#yritykset_ja_tyo#tyonantajat');
}}
dropdownLinks={[
<Header.Link
label={I18n.business}
active={href.includes('#yritykset_ja_tyo#tyonantajat#yritykset')}
onClick={(event) => {
event.preventDefault();
setHref('#yritykset_ja_tyo#tyonantajat#yritykset');
}}
/>,
<Header.Link
label={I18n.entrepreneurs}
active={href.includes('#yrittajat')}
onClick={(event) => {
event.preventDefault();
setHref('#yritykset_ja_tyo#tyonantajat#yrittajat');
}}
/>,
]}
/>,
<Header.Link
active={href.includes('#yritykset_ja_tyo#tyonhakijat')}
onClick={(event) => {
event.preventDefault();
setHref('#yritykset_ja_tyo#tyonhakijat');
}}
label={I18n.jobSeekers}
dropdownLinks={[
<Header.Link
label={I18n.openJobs}
active={href.includes('#yritykset_ja_tyo#tyonhakijat#avoimet_tyopaikat')}
onClick={(event) => {
event.preventDefault();
setHref('#yritykset_ja_tyo#tyonhakijat#avoimet_tyopaikat');
}}
/>,
]}
/>,
]}
/>
</Header.NavigationMenu>
</Header>
<div id="content" />
</>
)
}