Статистика обучения
@@ -209,12 +209,12 @@ function TeachingFeaturesForOtherScreens() {

diff --git a/src/components/Main/Trainings.tsx b/src/components/Main/Trainings.tsx
index 6c810f5..ecd456a 100644
--- a/src/components/Main/Trainings.tsx
+++ b/src/components/Main/Trainings.tsx
@@ -26,19 +26,19 @@ export function Trainings() {
>
diff --git a/src/consts/clients.ts b/src/consts/clients.ts
index 64a9b57..c41253d 100644
--- a/src/consts/clients.ts
+++ b/src/consts/clients.ts
@@ -2,39 +2,39 @@ import { IClient } from '../types/IClient';
export const clients: IClient[] = [
{
- src: '/clients/aircraft_industries.png',
+ src: '/images/clients/aircraft_industries.png',
title: 'Aircraft Industries',
},
{
- src: '/clients/mintrans.png',
+ src: '/images/clients/mintrans.png',
title: 'Министерство транспорта Российской Федерации',
},
{
- src: '/clients/moscow_government.png',
+ src: '/images/clients/moscow_government.png',
title: 'Правительство Москвы',
},
- { src: '/clients/npoa.png', title: 'НПО Автоматики' },
- { src: '/clients/elem.png', title: 'Elem' },
+ { src: '/images/clients/npoa.png', title: 'НПО Автоматики' },
+ { src: '/images/clients/elem.png', title: 'Elem' },
{
- src: '/clients/RussianRailways.png',
+ src: '/images/clients/RussianRailways.png',
title: 'Российские железные дороги',
},
- { src: '/clients/uralvagonzavod.png', title: 'Уралвагонзавод' },
+ { src: '/images/clients/uralvagonzavod.png', title: 'Уралвагонзавод' },
{
- src: '/clients/electro_him_pribor.png',
+ src: '/images/clients/electro_him_pribor.png',
title: 'комбинат Электрозимприбор',
},
- { src: '/clients/rosatom.png', title: 'Росатом' },
- { src: '/clients/croc.png', title: 'Croc' },
- { src: '/clients/uralhimmash.png', title: 'Уралхиммаш' },
+ { src: '/images/clients/rosatom.png', title: 'Росатом' },
+ { src: '/images/clients/croc.png', title: 'Croc' },
+ { src: '/images/clients/uralhimmash.png', title: 'Уралхиммаш' },
{
- src: '/clients/urfu.png',
+ src: '/images/clients/urfu.png',
title: 'Уральский федеральный университет',
},
{
- src: '/clients/uztm.png',
+ src: '/images/clients/uztm.png',
title: 'Уральский завод тяжелого машиностроения',
},
- { src: '/clients/dubai_police.png', title: 'Dubai Police' },
- { src: '/clients/ugmk.png', title: 'УГМК' },
+ { src: '/images/clients/dubai_police.png', title: 'Dubai Police' },
+ { src: '/images/clients/ugmk.png', title: 'УГМК' },
];
diff --git a/src/consts/projects.ts b/src/consts/projects.ts
index 65994bf..0aadd31 100644
--- a/src/consts/projects.ts
+++ b/src/consts/projects.ts
@@ -2,7 +2,7 @@ import { IProject, Media } from '../types/IProject';
export const projects: IProject
[] = [
{
- src: '/projects/loader.png',
+ src: '/images/projects/loader.jpg',
tags: ['Симулятор'],
title: 'Симулятор погрузчика',
media: Media.img,
@@ -11,40 +11,40 @@ export const projects: IProject[] = [
{
year: '2024',
media: Media.video,
- src: ['/projects/operator.mp4', '/projects/operator.png'],
+ src: '/video/operator.mp4',
tags: ['Симулятор', 'VR-приложение'],
title: 'Обучение работе с системой водоочистки',
} as IProject,
{
- src: '/projects/plane.png',
+ src: '/images/projects/plane.jpg',
tags: ['Симулятор', 'VR-приложение'],
title: 'L 410 NG Aircraft',
year: '2024',
media: Media.img,
},
{
- src: '/projects/hangar.png',
+ src: '/images/projects/hangar.jpg',
year: '2024',
tags: ['Симулятор', 'VR-приложение'],
title: 'Сборка-разборка вертолётного двигателя',
media: Media.img,
},
{
- src: '/projects/trains.png',
+ src: '/images/projects/trains.jpg',
year: '2024',
tags: ['Симулятор', 'VR-приложение'],
title: 'Тренажер РЖД: ЭП2Д, Иволга, ЭП20, ТЭ33А, ТЭМ2',
media: Media.img,
},
{
- src: '/projects/laboratory.png',
+ src: '/images/projects/laboratory.jpg',
tags: ['Симулятор', 'VR-приложение'],
title: 'Учебная лаборатория определения жирности молока',
year: '2024',
media: Media.img,
},
{
- src: '/projects/train_big.jpg',
+ src: '/images/projects/train_big.jpg',
year: '2024',
tags: ['Симулятор'],
title: 'Симулятор машиниста',
diff --git a/src/types/IProject.ts b/src/types/IProject.ts
index a887d40..a062d14 100644
--- a/src/types/IProject.ts
+++ b/src/types/IProject.ts
@@ -4,7 +4,7 @@ export enum Media {
}
export interface IProject {
- src: TMedia extends Media.img ? string : string[];
+ src: string;
title: string;
tags: string[];
year: string;
diff --git a/src/ui/AnchorLink.tsx b/src/ui/AnchorLink.tsx
index d903094..7d299a2 100644
--- a/src/ui/AnchorLink.tsx
+++ b/src/ui/AnchorLink.tsx
@@ -1,5 +1,5 @@
import { PropsWithChildren } from 'react';
-import { Link } from 'react-router-dom';
+import { Link, useLocation } from 'react-router-dom';
export function AnchorLink({
children,
@@ -9,12 +9,24 @@ export function AnchorLink({
route: string;
className?: string;
}>) {
+ const { hash } = useLocation();
return (
{
+ if (hash === route) {
+ document
+ .getElementById(hash.slice(1))
+ ?.scrollIntoView({
+ behavior: 'smooth',
+ inline: 'nearest',
+ block: 'start',
+ });
+ }
+ }}
to={route}
>
{children}
diff --git a/src/ui/SliderWithScaling.tsx b/src/ui/SliderWithScaling.tsx
index e86bea2..a36ee56 100644
--- a/src/ui/SliderWithScaling.tsx
+++ b/src/ui/SliderWithScaling.tsx
@@ -24,8 +24,8 @@ export function SliderWithScaling({
const width = useWindowWidth();
const baseoffset =
width >= 1024
- ? (-width / 1600) * 507 + 0
- : (-width * +minWidth.slice(0, -2)) / 100;
+ ? (-width / 1600) * 507 + 8
+ : (-width * +minWidth.slice(0, -2)) / 100 - 8;
const [slide, setSlide] = useState(0);
const [transiting, setTransiting] = useState(false);