MCPcopy Index your code
hub / github.com/anomalyco/opencode / LanguagePicker

Function LanguagePicker

packages/console/app/src/component/language-picker.tsx:8–40  ·  view source on GitHub ↗
(props: { align?: "left" | "right" } = {})

Source from the content-addressed store, hash-verified

6import "./language-picker.css"
7
8export function LanguagePicker(props: { align?: "left" | "right" } = {}) {
9 const language = useLanguage()
10 const navigate = useNavigate()
11 const location = useLocation()
12 const [open, setOpen] = createSignal(false)
13
14 return (
15 <div data-component="language-picker">
16 <Dropdown
17 trigger={language.label(language.locale())}
18 align={props.align ?? "left"}
19 open={open()}
20 onOpenChange={setOpen}
21 >
22 <For each={language.locales}>
23 {(locale) => (
24 <DropdownItem
25 selected={locale === language.locale()}
26 onClick={() => {
27 language.setLocale(locale)
28 const href = `${route(locale, strip(location.pathname))}${location.search}${location.hash}`
29 if (href !== `${location.pathname}${location.search}${location.hash}`) navigate(href)
30 setOpen(false)
31 }}
32 >
33 {language.label(locale)}
34 </DropdownItem>
35 )}
36 </For>
37 </Dropdown>
38 </div>
39 )
40}

Callers

nothing calls this directly

Calls 6

routeFunction · 0.90
stripFunction · 0.90
useLocationFunction · 0.85
openFunction · 0.50
navigateFunction · 0.50
setOpenFunction · 0.50

Tested by

no test coverage detected