Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RS-162 #7

Open
wants to merge 33 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
d01668d
feat(entities): add entities for achievements, hardatons, news, partn…
Robocotik Jul 16, 2024
a59e8f9
feat (entities) : add event entity
Robocotik Jul 16, 2024
5b07ac6
rename (entities) : entity
Robocotik Jul 16, 2024
2569fe2
feat(entities): add entities for achievements, hardatons, news, partn…
Robocotik Jul 16, 2024
521ffbf
Merge branch 'api' of https://github.com/bmstu-itstech/rs-front into api
Robocotik Jul 16, 2024
ff6f05e
feat(entities): add entities for achievements, hardatons, news, partn…
Robocotik Jul 16, 2024
b53ea12
feat(entities): add entities for achievements, hardatons, news, partn…
Robocotik Jul 16, 2024
f552ece
Merge branches 'api' and 'fix-api-url' of https://github.com/bmstu-it…
Robocotik Jul 16, 2024
756e49b
feat(api): add axios.tsx
Robocotik Jul 16, 2024
47fc451
feat(apis): add api requests for achievements, news, partners
Robocotik Jul 16, 2024
caa7cbc
refactor(entities): rename axios+add semi
Robocotik Jul 16, 2024
bb189d8
refactor(api): rename partners.ts
Robocotik Jul 17, 2024
acb1a1a
feat(api): add eventById, eventList, qestenereList, qestenereById
Robocotik Jul 17, 2024
36eee7f
refactor(api): rename questenereById, questenereList
Robocotik Jul 17, 2024
c7861ad
reafctor(api): delete header in axios.ts
Robocotik Jul 17, 2024
5a4699f
refactor(apis): group events and questeners to files
Robocotik Jul 17, 2024
2d7c494
refactor(events/api): add usage api request
coma8765 Jul 17, 2024
c242b2a
refactor(components): rename events, news, achieviements, partners co…
Robocotik Jul 17, 2024
2e6b3eb
feat(components): add usage of api
Robocotik Jul 17, 2024
463ccc8
refactor(components): add data
Robocotik Jul 17, 2024
c8e0efb
refactor(components): add "Page" to names
Robocotik Jul 17, 2024
ef028e2
feat(components): rewrite getting data
Robocotik Jul 17, 2024
d7c0b50
refactor(components): refact anonymous fn to direct fn
Robocotik Jul 17, 2024
872c707
perf(placeholders): rebase placeholders to folder
Robocotik Jul 17, 2024
0ac3ad9
refactor(components): rename routes to Placeholders
Robocotik Jul 17, 2024
eb7eca8
refactor(components): delete isError prop
Robocotik Jul 18, 2024
42fadf0
refactor(components): rename entities
Robocotik Jul 18, 2024
9aebc0c
fix(api): add server uri where need
coma8765 Jul 20, 2024
42a3238
fix(api): fix events requests
coma8765 Jul 20, 2024
f03318d
fix(api): base url and some fixes
coma8765 Jul 20, 2024
31481fc
feat(events): fix page
coma8765 Jul 20, 2024
57e9a38
fix(styles): remove tailiwnd preflight
coma8765 Jul 23, 2024
fecf15b
fix(styles): remove tailiwnd preflight v2
coma8765 Jul 23, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@
"@types/jquery": "^3.5.29",
"@types/react-helmet": "^6.1.11",
"@types/react-slick": "^0.23.13",
"gh-pages": "^6.1.1"
"gh-pages": "^6.1.1",
"tailwindcss": "^3.4.5"
}
}
75 changes: 75 additions & 0 deletions public/tailwind-preflight.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
h1,
h2,
h3,
h4,
h5,
h6 {
font-size: inherit;
font-weight: inherit;
}

ol,
ul {
list-style: none;
margin: 0;
padding: 0;
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
display: block;
vertical-align: middle;
}

img,
video {
max-width: 100%;
height: auto;
}

*,
::before,
::after {
border-width: 0;
border-style: solid;
border-color: transparent;
}

.google-map * {
border-style: none;
}


button, a {
display: inline-block;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin: 10px 0;
padding: 0px;
height: 50px;
border-width: 0;
background-color: transparent;
color: White;
font-family: sans-serif;
font-weight: normal;
font-size: inherit;
text-decoration: none;
line-height: 50px;
cursor: pointer;
font-size: 100%;
}
button {
#width:0px;
overflow: visible;
}
button::-moz-focus-inner {
border: 0;
padding: 0;
}
30 changes: 16 additions & 14 deletions src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,17 @@ import {
import 'bootstrap/dist/css/bootstrap.min.css';
import {Helmet} from 'react-helmet';
import Menu from "./components/utils/menu/Menu";
import {News} from "./components/pages/News/News";
import {Events} from "./components/pages/Events/Events";
import {NewsPage} from "./components/pages/News/News";
import {EventsPage} from "./components/pages/Events/Events";
import {Event} from "./components/pages/Event/Event";
import {Achievements} from "./components/pages/Achievements/Achievements";
import {Partners} from "./components/pages/Partners/Partners";
import {Contacts} from "./components/pages/Contacts/Contacts";
import {Home} from "./components/pages/Home/Home";
import {Hardathon} from "./components/pages/Hardathon/Hardathon";
import {AchievementsPage} from "./components/pages/Achievements/Achievements";
import {PartnersPage} from "./components/pages/Partners/Partners";
import {ContactsPage} from "./components/pages/Contacts/Contacts";
import {HomePage} from "./components/pages/Home/Home";
import {HardathonPage} from "./components/pages/Hardathon/Hardathon";
import {ProjectDetails} from "./components/pages/Hardathon/ProjectDetails/ProjectDetails";
import {QueryClient, QueryClientProvider} from "@tanstack/react-query";
import HardathonsPage from "./components/pages/Hardathons";

const queryClient = new QueryClient()

Expand All @@ -29,14 +30,15 @@ function App() {
</Helmet>
<Menu/>
<Routes>
<Route path="/" element={<Home/>}/>
<Route path="/news" element={<News/>}/>
<Route path="/events" element={<Events/>}/>
<Route path="/" element={<HomePage/>}/>
<Route path="/news" element={<NewsPage/>}/>
<Route path="/events" element={<EventsPage/>}/>
<Route path="/events/:id" element={<Event/>}/>
<Route path="/achievements" element={<Achievements/>}/>
<Route path="/partners" element={<Partners/>}/>
<Route path="/contacts" element={<Contacts/>}/>
<Route path="/hardathons" element={<Hardathon/>}/>
<Route path="/achievements" element={<AchievementsPage/>}/>
<Route path="/partners" element={<PartnersPage/>}/>
<Route path="/contacts" element={<ContactsPage/>}/>
<Route path="/hardathons" element={<HardathonsPage/>}/>
<Route path="/hardathons/1" element={<HardathonPage/>}/>
{/*<Route path="/hardathons/:id/partners" element={<PartnersHardathon/>} />*/}
<Route path="/hardathons/:id/details" element={<ProjectDetails/>}/>

Expand Down
47 changes: 17 additions & 30 deletions src/components/pages/Achievements/Achievements.tsx
Original file line number Diff line number Diff line change
@@ -1,36 +1,23 @@
import React, {useEffect, useState, useRef, Ref} from 'react';
import React, { useEffect, useState, useRef, Ref } from 'react';
import "./achievements.scss"
import Logo from "../../utils/logo/Logo"
import AchieveCard from "../../utils/achieve-card/AchieveCard";
import 'react-alice-carousel/lib/alice-carousel.css';
import down_arrow from "../../assets/icons/arrow.svg";
import axios from "axios";
import {AppConfig} from "../../../core";
import { useQuery } from '@tanstack/react-query';
import { Achievement } from '../../../domain/entities/achievements';
import { achievementsList } from '../../../shared/apis/achievements';
import { eventPlaceholder } from '../../../shared/placeholders/achievements';

interface Achievement {
id: number;
title: string,
description: string,
photo_album_url: string,
link_to_media: string,
photo: string,
index: number,
inputRef: Ref<HTMLDivElement>
}

export const Achievements = () => {
export const AchievementsPage = () => {

const [achievements, setAchievements] = useState<Achievement[]>([]);
const { data: achievements} = useQuery<Achievement[]>({
queryKey: ['achievement-list'],
queryFn: achievementsList,
placeholderData: () => [eventPlaceholder],
}
);

useEffect(() => {
axios.get(`${AppConfig.apiUri}/api/v0/achievements/?page=1`)
.then(res => {
if (res.data)
setAchievements(res.data.data);
}).catch(err => {
console.log(err);
})
}, []);

const InputRefs = useRef<(HTMLDivElement | null)[]>([])

Expand All @@ -48,10 +35,10 @@ export const Achievements = () => {

return (
<section className="achievements-page page" id="achievements">
<Logo title="достижения"/>
<Logo title="достижения" />
<div className="container-fluid mt-0 h-100 achievements-carousel d-flex justify-content-center px-0">
<div className="desktop-carousel-achievements">
{achievements.map((achievement, index) => (
{achievements?.map((achievement, index) => (
< AchieveCard
title={achievement.title}
description={achievement.description}
Expand All @@ -65,7 +52,7 @@ export const Achievements = () => {
))}
</div>
<div className="mobile-carousel-achievements" id="achieve-wrapper">
{achievements.map((achievement, index) => (
{achievements?.map((achievement, index) => (
<AchieveCard
title={achievement.title}
description={achievement.description}
Expand All @@ -78,10 +65,10 @@ export const Achievements = () => {
/>
))}
<button className={"btn b-0 p-0 bg-transparent swap-card"} onClick={swapHandler}>
<img src={down_arrow} alt="down-arrow"/>
<img src={down_arrow} alt="down-arrow" />
</button>
</div>
</div>
</section>
)
}
}
2 changes: 1 addition & 1 deletion src/components/pages/Contacts/Contacts.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import React from "react";



export const Contacts = () => {
export const ContactsPage = () => {

const items = [
<div className={"card mx-auto w-100 my-auto"}>
Expand Down
Loading