Skip to content

Commit 5a00210

Browse files
committed
fix: lang switch
1 parent eac528e commit 5a00210

File tree

4 files changed

+52
-24
lines changed

4 files changed

+52
-24
lines changed
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import { useLocation } from '@docusaurus/router';
2+
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
3+
import { KolLinkButton } from '@public-ui/react';
4+
import React, { FC } from 'react';
5+
6+
export const LanguageSwitch: FC = () => {
7+
const { i18n } = useDocusaurusContext();
8+
9+
const location = useLocation();
10+
11+
return (
12+
<div>
13+
{i18n.currentLocale === 'de' ? (
14+
<KolLinkButton
15+
_href={`/en${location.pathname}`}
16+
_label="Switch to English"
17+
_icon-only
18+
_icon="fa-solid fa-language"
19+
_tooltipAlign="left"
20+
_variant="ghost"
21+
/>
22+
) : (
23+
<KolLinkButton
24+
_href={`${location.pathname.replace(/^\/en/, '')}`}
25+
_label="Zu Deutsch wechseln"
26+
_icon-only
27+
_icon="fa-solid fa-language"
28+
_tooltipAlign="left"
29+
_variant="ghost"
30+
/>
31+
)}
32+
</div>
33+
);
34+
};

dev/src/components/LiveEditor.tsx

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -59,20 +59,22 @@ export function LiveEditor(props: Props) {
5959

6060
return (
6161
<BrowserOnly>
62-
<div className="grid lg:grid-cols-2 gap-4 py-4">
63-
<div className={props.isOnComponentPage ? '' : 'lg:row-span-2'}>
64-
<KolBadge _label="Beta" _color="#b00"></KolBadge>
65-
<div className="py-2 px-4 border-solid border border-gray-300 rounded-md min-h-[5rem] grid place-content-center">
66-
<ComponentDisplay tag={tag} params={config} />
62+
{() => (
63+
<div className="grid lg:grid-cols-2 gap-4 py-4">
64+
<div className={props.isOnComponentPage ? '' : 'lg:row-span-2'}>
65+
<KolBadge _label="Beta" _color="#b00"></KolBadge>
66+
<div className="py-2 px-4 border-solid border border-gray-300 rounded-md min-h-[5rem] grid place-content-center">
67+
<ComponentDisplay tag={tag} params={config} />
68+
</div>
69+
</div>
70+
{props.isOnComponentPage ? '' : <KolSelect _list={tagList} _value={[tag]} _on={{ onChange: updateTag }}></KolSelect>}
71+
{/* @ts-ignore */}
72+
<Configuration config={config} showDescription={!props.isOnComponentPage} tag={tag} update={updateConfig} />
73+
<div className="lg:col-span-2">
74+
<CodeOutput params={config} tag={tag} />
6775
</div>
6876
</div>
69-
{props.isOnComponentPage ? '' : <KolSelect _list={tagList} _value={[tag]} _on={{ onChange: updateTag }}></KolSelect>}
70-
{/* @ts-ignore */}
71-
<Configuration config={config} showDescription={!props.isOnComponentPage} tag={tag} update={updateConfig} />
72-
<div className="lg:col-span-2">
73-
<CodeOutput params={config} tag={tag} />
74-
</div>
75-
</div>
77+
)}
7678
</BrowserOnly>
7779
);
7880
}

dev/src/pages/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { translate } from '@docusaurus/Translate';
22
import { Bundesanstalt } from '@public-ui/components';
3-
import { KolKolibri, KolHeading, KolImage, KolLink, KolLinkButton, KolLogo } from '@public-ui/react';
3+
import { KolKolibri, KolLink, KolLinkButton, KolLogo } from '@public-ui/react';
44
import HomepageFeatures from '@site/src/components/HomepageFeatures';
55
import Layout from '@theme/Layout';
66
import React, { FunctionComponent } from 'react';

dev/src/theme/Navbar/index.tsx

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */
22
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
3-
import { KolLinkButton, KolVersion, KolIcon, KolImage } from '@public-ui/react';
3+
import { KolLinkButton, KolVersion } from '@public-ui/react';
44
import React, { FunctionComponent, PropsWithChildren } from 'react';
55
// import { getDarkMode, setDarkMode } from '../../shares/store';
66
import BrowserOnly from '@docusaurus/BrowserOnly';
7-
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
7+
import { LanguageSwitch } from '@site/src/components/LanguageSwitch';
88
import Navbar from '@theme-original/Navbar';
99
import JSON from '../../../node_modules/@public-ui/components/package.json';
1010
import ThemeSelect from './ThemeSelect';
@@ -25,21 +25,13 @@ export const NavbarWrapper: FunctionComponent<PropsWithChildren> = (props: { chi
2525
// },
2626
// };
2727

28-
const { i18n } = useDocusaurusContext();
29-
3028
return (
3129
<div className="grid grid-cols-2 shadow items-center md:grid-cols-[1fr,auto,auto,auto]">
3230
<Navbar {...props} />
3331
<KolVersion aria-label="Kontaktformular" role="region" className="text-right pr-4" _version={JSON.version as string}></KolVersion>
3432
<section aria-label="Toolbar" className="grid gap-2 col-span-2 p-4 sm:grid-cols-[auto,auto,auto]">
3533
<div className="grid gap-2 grid-cols-6 col-span-2 items-center justify-items-center">
36-
<div>
37-
{i18n.currentLocale === 'de' ? (
38-
<KolLinkButton _href="/en/" _label="Switch to English" _icon-only _icon="fa-solid fa-language" _tooltipAlign="left" _variant="ghost" />
39-
) : (
40-
<KolLinkButton _href="/" _label="Zu Deutsch wechseln" _icon-only _icon="fa-solid fa-language" _tooltipAlign="left" _variant="ghost" />
41-
)}
42-
</div>
34+
<LanguageSwitch />
4335
{/* <div>
4436
{dark ? (
4537
<KolButton _icon={'codicon codicon-moon'} _iconOnly _label="Dark-Modus ausschalten" _on={onDark} _tooltipAlign="left" _variant="ghost"></KolButton>

0 commit comments

Comments
 (0)