feat: Add translation on 3 languages for sight page

This commit is contained in:
2025-06-01 00:34:59 +03:00
parent 0d9bbb140f
commit 87386c6a73
22 changed files with 768 additions and 732 deletions

View File

@@ -1,13 +1,6 @@
import {
articlesStore,
authStore,
Language,
mediaStore,
MEDIA_TYPE_LABELS,
API_URL,
} from "@shared";
import { mediaStore, MEDIA_TYPE_LABELS } from "@shared";
import { observer } from "mobx-react-lite";
import { useEffect, useRef, useState, useCallback } from "react";
import { useEffect, useState } from "react";
import {
Dialog,
DialogTitle,
@@ -17,13 +10,12 @@ import {
TextField,
Paper,
Box,
Typography,
CircularProgress,
Alert,
Snackbar,
} from "@mui/material";
import { Download, Save } from "lucide-react";
import { ReactMarkdownComponent, MediaViewer } from "@widgets";
import { MediaViewer } from "@widgets";
import { authInstance } from "@shared";
interface PreviewMediaDialogProps {

View File

@@ -1,4 +1,4 @@
import { articlesStore, authStore, Language } from "@shared";
import { articlesStore } from "@shared";
import { observer } from "mobx-react-lite";
import { useEffect, useState } from "react";
import {
@@ -73,7 +73,10 @@ export const SelectArticleModal = observer(
setIsLoading(true);
try {
await Promise.all([getArticle(articleId), getArticleMedia(articleId)]);
await Promise.all([
getArticle(Number(articleId)),
getArticleMedia(Number(articleId)),
]);
} catch (error) {
console.error("Failed to fetch article data:", error);
// Reset article data on error
@@ -83,9 +86,11 @@ export const SelectArticleModal = observer(
setIsLoading(false);
}
};
// @ts-ignore
const filteredArticles = articles
// @ts-ignore
.filter((article) => !linkedArticleIds.includes(article.id))
// @ts-ignore
.filter((article) =>
article.service_name.toLowerCase().includes(searchQuery.toLowerCase())
);
@@ -140,6 +145,7 @@ export const SelectArticleModal = observer(
{searchQuery ? "Статьи не найдены" : "Нет доступных статей"}
</Typography>
) : (
// @ts-ignore
filteredArticles.map((article) => (
<ListItemButton
key={article.id}

View File

@@ -1,4 +1,4 @@
import { articlesStore, authStore, Language, mediaStore } from "@shared";
import { mediaStore } from "@shared";
import { observer } from "mobx-react-lite";
import { useEffect, useRef, useState } from "react";
import {
@@ -12,12 +12,11 @@ import {
ListItemButton,
ListItemText,
Paper,
Box,
Typography,
InputAdornment,
} from "@mui/material";
import { ImagePlus, Search } from "lucide-react";
import { ReactMarkdownComponent, MediaViewer } from "@widgets";
import { Search } from "lucide-react";
import { MediaViewer } from "@widgets";
interface SelectMediaDialogProps {
open: boolean; // Corrected prop name