UNPKG

@redocly/theme

Version:

Shared UI components lib

24 lines 1.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useLanguagePicker = useLanguagePicker; const react_router_dom_1 = require("react-router-dom"); const use_theme_hooks_1 = require("./use-theme-hooks"); const urls_1 = require("../utils/urls"); function useLanguagePicker() { const { useL10nConfig, useLoadAndNavigate } = (0, use_theme_hooks_1.useThemeHooks)(); const navigate = (0, react_router_dom_1.useNavigate)(); const loadAndNavigate = useLoadAndNavigate(); const { currentLocale, locales, defaultLocale } = useL10nConfig(); const locale = locales.find((l) => l.code === currentLocale); function setLocale(value) { const newLangPathname = (0, urls_1.withPathPrefix)((0, urls_1.getPathnameForLocale)((0, urls_1.withoutPathPrefix)(location.pathname), defaultLocale, value, locales)); const newUrlWithLanguage = `${newLangPathname}${location.search}${location.hash}`; loadAndNavigate({ navigate, to: newUrlWithLanguage }); } return { currentLocale: locale, locales, setLocale, }; } //# sourceMappingURL=use-language-picker.js.map