+
+
+ {open ? (
+
+ {LANG_OPTIONS.map((option) => {
+ const active = option.code === lang;
+ return (
+
+ );
+ })}
+
+ ) : null}
+
+ );
+}
+
export function PublicLayout() {
const { t, lang, setLang } = useI18n();
const { pathname, search, hash } = useLocation();
const [open, setOpen] = useState(false);
+ const [mobileSearchOpen, setMobileSearchOpen] = useState(false);
const [q, setQ] = useState("");
const nav = useNavigate();
@@ -173,12 +270,102 @@ export function PublicLayout() {
if (!s) return;
nav(`/search?q=${encodeURIComponent(s)}`);
setOpen(false);
+ setMobileSearchOpen(false);
};
return (