Skip to content

Commit

Permalink
Merge pull request #88 from MargoMarm/bagfix/exercisesPage
Browse files Browse the repository at this point in the history
Bagfix/exercises page
  • Loading branch information
MargoMarm committed Sep 25, 2023
2 parents bd52864 + ab4cba5 commit c36b04c
Show file tree
Hide file tree
Showing 8 changed files with 60 additions and 36 deletions.
Binary file added src/assets/images/exercises_desk_2x.jpeg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 5 additions & 4 deletions src/components/AddExerciseForm/AddExerciseForm.jsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import PropTypes from 'prop-types';
import { useEffect, useState } from 'react';
import { capitalizeWord } from '../../utils/capitalizeWord';

import Timer from '../Timer';
import {
Expand Down Expand Up @@ -97,19 +98,19 @@ export default function AddExerciseForm({ data, addExercise }) {
<InfoCardConteiner>
<InfoCard>
<CardTitle>Name</CardTitle>
<CardInfo>{name}</CardInfo>
<CardInfo>{capitalizeWord(name)}</CardInfo>
</InfoCard>
<InfoCard>
<CardTitle>Target</CardTitle>
<CardInfo>{target}</CardInfo>
<CardInfo>{capitalizeWord(target)}</CardInfo>
</InfoCard>
<InfoCard>
<CardTitle>Body Part</CardTitle>
<CardInfo>{bodyPart}</CardInfo>
<CardInfo>{capitalizeWord(bodyPart)}</CardInfo>
</InfoCard>
<InfoCard>
<CardTitle>Equipment</CardTitle>
<CardInfo>{equipment}</CardInfo>
<CardInfo>{capitalizeWord(equipment)}</CardInfo>
</InfoCard>
<InfoCard>
<CardTitle>Time</CardTitle>
Expand Down
3 changes: 2 additions & 1 deletion src/components/ExercisesBtnBack/ExercisesBtnBack.jsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { useDispatch } from 'react-redux';
import { changeStatusFilter } from '../../redux/exercises/slice';
import { ButtonBack, SvgArrow } from './ExercisesBtnBack.styled'; // Імпорт стилів
import sprite from '../../assets/sprite.svg';

const ExercisesBtnBack = () => {
const dispatch = useDispatch();
Expand All @@ -12,7 +13,7 @@ const ExercisesBtnBack = () => {
return (
<ButtonBack type="button" onClick={handleBtnBack}>
<SvgArrow>
<use href="/src/assets/sprite.svg#icon-arrow-left"></use>
<use href={sprite + `#icon-arrow-left`}></use>
</SvgArrow>
Back
</ButtonBack>
Expand Down
5 changes: 4 additions & 1 deletion src/components/ExercisesBtnBack/ExercisesBtnBack.styled.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,11 @@ import { mq, colors } from '../../utils';

export const ButtonBack = styled.button`
display: flex;
padding: 0px;
align-items: center;
padding: 0px;
margin-top:10px;
font-size: 14px;
line-height: 1.28;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import styled from 'styled-components';
// import { NavLink } from 'react-router-dom';
import { mq, colors } from '../../utils';

export const CategoriesList = styled.ul`
Expand Down Expand Up @@ -28,6 +27,21 @@ export const CategoriesLink = styled.button`
outline: none;
border: none;
&:after {
content: '';
display: block;
position: absolute;
transition:
background-color 200ms cubic-bezier(0.4, 0, 0.2, 1),
transform 200ms cubic-bezier(0.4, 0, 0.2, 1);
transform: scalex(0);
bottom: -4px;
left: 0;
background-color: transparent;
}
&.active::after {
content: '';
display: block;
Expand All @@ -38,6 +52,7 @@ export const CategoriesLink = styled.button`
bottom: -4px;
left: 0;
background-color: #ef8964;
transform: scalex(1);
border-radius: 2px;
}
Expand Down
17 changes: 12 additions & 5 deletions src/components/ExercisesItemList/ExercisesItemList.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ import { setCurrentTitle } from '../../redux/exerciseFilters/slice';
import { Navigation, Pagination, Scrollbar, A11y } from 'swiper/modules';

import { Swiper, SwiperSlide } from 'swiper/react';
import { useMediaQuery } from 'react-responsive';

import 'swiper/css';
import 'swiper/css/navigation';
Expand All @@ -35,9 +36,18 @@ const ExercisesList = () => {

const array = filters.filter(item => item.filter === category);

const isTablet = useMediaQuery({ minWidth: 768, maxWidth: 1439 });

const chunkedFilters = [];
for (let i = 0; i < array.length; i += 10) {
chunkedFilters.push(array.slice(i, i + 10));

if (isTablet) {
for (let i = 0; i < array.length; i += 9) {
chunkedFilters.push(array.slice(i, i + 9));
}
} else {
for (let i = 0; i < array.length; i += 10) {
chunkedFilters.push(array.slice(i, i + 10));
}
}

return (
Expand All @@ -47,10 +57,7 @@ const ExercisesList = () => {
slidesPerView={1}
pagination={{ clickable: true }}
scrollbar={{ draggable: true }}
onSwiper={swiper => console.log(swiper)}
className="pagination"

// onSlideChange={() => console.log('slide change')}
>
{chunkedFilters.map(arr => (
<SwiperSlide key={nanoid()}>
Expand Down
6 changes: 4 additions & 2 deletions src/pages/Exercises/Exercises.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ import Title from '../../components/Title/Title';
import {
TitleThumb,
ExercisesContainer,
ExercisesListContainer,
ExercisesListContainer,
BGImg
} from './Exercises.styled';

import ProductsOrExercisesContainer from '../../components/ProductOrExerciseContainer/ProductOrExerciseContainer';
Expand Down Expand Up @@ -68,7 +69,8 @@ const Exercises = () => {
<ExercisesItemList />
</ExercisesContainer>
) : (
<ExercisesListContainer>
<ExercisesListContainer>
<BGImg/>
<Scrollbar width={{ dt: '868' }}>
<ProductsOrExercisesContainer>
{items.map((item, i) => {
Expand Down
39 changes: 17 additions & 22 deletions src/pages/Exercises/Exercises.styled.jsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import styled from '@emotion/styled';
import { mq } from '../../utils';

import imgHomePage from '../../assets/images/imgHomePage';
import imgDx2 from '../../assets/images/exercises_desk_2x.jpeg';

export const ExercisesContainer = styled.div`
padding-left: 20px;
Expand All @@ -27,38 +27,33 @@ export const TitleThumb = styled.div`
`;

export const ExercisesListContainer = styled.div`
display: flex;
flex-direction: column;
padding: 40px 20px 80px 20px;
gap: 40px;
position: relative;
${mq.tablet} {
gap: 32px;
padding: 72px 32px 48px 32px;
}
${mq.desktop} {
padding: 68px 81px 81px 96px;
}
`;

gap: 28px;
export const BGImg = styled.div`
${mq.desktop} {
position: absolute;
top: -117px;
right: 0;
z-index: -1;
display: block;
width: 428px;
height: 716px;
background: linear-gradient(89deg, #040404 1.1%, rgba(4, 4, 4, 0) 70.79%);
background-repeat: no-repeat;
background-position: 100% 0;
background-size: 428px 716px;
background-image: url(${imgHomePage.imgDx1});
${
'' /* @media (min-device-pixel-ratio: 2),
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 192dpi),
(min-resolution: 2dppx) {
& {
background-image: url(${imgProducts.imgDx2});
}
} */
}
background-image: url(${imgDx2});
}
`;
`;

0 comments on commit c36b04c

Please sign in to comment.