fix: resolve circular dependency in language imports
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@crux-kit/admin-app",
|
||||
"private": true,
|
||||
"version": "1.0.0",
|
||||
"version": "1.0.1",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
|
||||
@@ -16,6 +16,7 @@ export interface Language {
|
||||
}
|
||||
|
||||
export interface I18nProviderProps {
|
||||
languages: Language[];
|
||||
currenLanguage: Language;
|
||||
isRTL: () => boolean;
|
||||
changeLanguage: (lang: Language) => void;
|
||||
|
||||
@@ -32,6 +32,7 @@ const getInitialLanguage = () => {
|
||||
};
|
||||
|
||||
const initialProps: I18nProviderProps = {
|
||||
languages: I18N_LANGUAGES,
|
||||
currenLanguage: getInitialLanguage(),
|
||||
changeLanguage: (_: Language) => {},
|
||||
isRTL: () => false
|
||||
@@ -60,6 +61,7 @@ const I18nProvider = ({ children }: PropsWithChildren) => {
|
||||
return (
|
||||
<TranslationsContext.Provider
|
||||
value={{
|
||||
languages: I18N_LANGUAGES,
|
||||
isRTL,
|
||||
currenLanguage,
|
||||
changeLanguage
|
||||
|
||||
@@ -3,7 +3,6 @@ import { useTheme } from 'next-themes';
|
||||
import { ReactNode } from 'react';
|
||||
import { useIntl } from 'react-intl';
|
||||
import { Link } from 'react-router';
|
||||
import { I18N_LANGUAGES } from '#app/i18n/config';
|
||||
import { Language } from '#app/i18n/types';
|
||||
import { IntlName } from '#infrastructure/IntlName';
|
||||
import { useAuth } from '#core/Auth/providers/AuthProvider';
|
||||
@@ -18,7 +17,7 @@ export function UserDropdownMenu({ trigger }: { trigger: ReactNode }) {
|
||||
const intl = useIntl();
|
||||
|
||||
const { logout, user } = useAuth();
|
||||
const { currenLanguage, changeLanguage } = useLanguage();
|
||||
const { currenLanguage, languages, changeLanguage } = useLanguage();
|
||||
const { resolvedTheme, setTheme } = useTheme();
|
||||
|
||||
const displayName = user
|
||||
@@ -110,11 +109,11 @@ export function UserDropdownMenu({ trigger }: { trigger: ReactNode }) {
|
||||
<DropdownMenuRadioGroup
|
||||
value={currenLanguage.code}
|
||||
onValueChange={(value) => {
|
||||
const selectedLang = I18N_LANGUAGES.find((lang) => lang.code === value);
|
||||
const selectedLang = languages.find((lang) => lang.code === value);
|
||||
if (selectedLang) handleLanguage(selectedLang);
|
||||
}}
|
||||
>
|
||||
{I18N_LANGUAGES.map((item) => (
|
||||
{languages.map((item) => (
|
||||
<DropdownMenuRadioItem
|
||||
key={item.code}
|
||||
value={item.code}
|
||||
|
||||
Reference in New Issue
Block a user