feat: show guide only if language matches

This commit is contained in:
Shusui MOYATANI
2024-01-22 12:45:21 +09:00
parent 2423f742e2
commit 65dfb8c8a4

View File

@@ -4,6 +4,7 @@ import ArrowTopRightOnSquare from 'heroicons/24/outline/arrow-top-right-on-squar
import { UAParser } from 'ua-parser-js'; import { UAParser } from 'ua-parser-js';
import SafeLink from '@/components/utils/SafeLink'; import SafeLink from '@/components/utils/SafeLink';
import { useTranslation } from '@/i18n/useTranslation';
const Browsers = ['pc-chrome', 'pc-firefox', 'ios', 'android'] as const; const Browsers = ['pc-chrome', 'pc-firefox', 'ios', 'android'] as const;
@@ -86,7 +87,9 @@ const getBrowsers = () => {
}; };
const SignerExtensions = () => { const SignerExtensions = () => {
const i18n = useTranslation();
const [selectedBrowsers, setSelectedBrowsers] = createSignal(getBrowsers()); const [selectedBrowsers, setSelectedBrowsers] = createSignal(getBrowsers());
const toggleBrowser = (browser: Browser) => const toggleBrowser = (browser: Browser) =>
setSelectedBrowsers((current) => { setSelectedBrowsers((current) => {
const newSet = new Set(current); const newSet = new Set(current);
@@ -143,7 +146,7 @@ const SignerExtensions = () => {
</SafeLink> </SafeLink>
<div class="flex items-center"> <div class="flex items-center">
<ul class="flex items-center gap-1 text-xs"> <ul class="flex items-center gap-1 text-xs">
<For each={extension.guides}> <For each={extension.guides.filter((guide) => i18n.language === guide.lang)}>
{(guide) => ( {(guide) => (
<li class="text-link underline"> <li class="text-link underline">
<SafeLink href={guide.url}>{guide.title}</SafeLink> <SafeLink href={guide.url}>{guide.title}</SafeLink>
@@ -163,7 +166,7 @@ const SignerExtensions = () => {
</ul> </ul>
</div> </div>
<div class="shrink-0" aria-hidden="true"> <div class="shrink-0" aria-hidden="true">
<SafeLink class="font-bold text-fg-secondary" href={extension.url}> <SafeLink class="font-bold text-fg hover:text-fg-secondary" href={extension.url}>
<span class="ms-1 inline-block size-16 p-5"> <span class="ms-1 inline-block size-16 p-5">
<ArrowTopRightOnSquare /> <ArrowTopRightOnSquare />
</span> </span>