diff --git a/README.md b/README.md index 10caa63..ac6969f 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Talent Team - разработка корпоративных мероприят - В раздел "Наша команда" добавлен еще 1 человек - Убрана кнопка "О компании" с Hero секции - Добавленны страницы для всех бизнес-игр -- Переработан компонент Header и Footer так чтобы в меню для каждрй игры можно было создавать свои якорные ссылки +- Переработан компонент Header и Footer так чтобы в меню для каждой игры можно было создавать свои якорные ссылки - Изменен Hero компонент для страниц с играми так, чтобы у каждой игры можно было ставить свой заголовок, изображение и доп.информацию об игре. - Исправленно отображение длинной доп.информации об игре в Hero компоненте для страниц с играми. - Добавлен favicon для сайта. @@ -19,8 +19,10 @@ Talent Team - разработка корпоративных мероприят - Добавлен description для сайта. - Блок "Создание электронных курсов" за менен на другой блок - "Сессии Lego SP". - Для мобильной и планшетной версии созданно Burger меню. -- Адаптирован блок Header, Advantages, About на главной странице под все разрешения (неадаптированые блоки временно скрыты). -- В блоке Header, Advantages, About на главной странице исправленны все ошибки и варнинги. +- Полностью адаптирована главная страница, а также страницы игр "Эмоциональный интеллект", "Вызов принят". +- На главной странице, а также страницах игр "Эмоциональный интеллект", "Вызов принят" исправленны все ошибки и варнинги в консоли. +- Добавлен Lazy loading на изображения. +- Отзывы замененны на благодарственные письма. #### V 0.2 diff --git a/src/components/About.jsx b/src/components/About.jsx index 1a8b7fb..ae40c9e 100644 --- a/src/components/About.jsx +++ b/src/components/About.jsx @@ -14,7 +14,7 @@ const About = ({...props}) => {

Мы разрабатываем и проводим бизнес-игры и бизнес-симуляции любой сложности «под ключ». Мы провели более 150 игр, с количеством игроков от 4 до 400.

Мы убеждены, что каждое проводимое корпоративное мероприятие должны быть максимально полезны, придерживаясь главной цели – это развитие персонала. Ведь, развивая персонал, мы открываем для бизнеса новые возможности.

-
+
diff --git a/src/components/Contact.jsx b/src/components/Contact.jsx index c456edb..6d1c5a5 100644 --- a/src/components/Contact.jsx +++ b/src/components/Contact.jsx @@ -6,17 +6,17 @@ import Textarea from "./UI/Textarea"; const Contact = ({white, ...props}) => { return ( -
-
-

Связаться с нами

-
-
- - - +
+
+

Связаться с нами

+
+
+ + +
- +
diff --git a/src/components/Facilitations/Example/Example.jsx b/src/components/Facilitations/Example/Example.jsx index ae09255..6cc27e7 100644 --- a/src/components/Facilitations/Example/Example.jsx +++ b/src/components/Facilitations/Example/Example.jsx @@ -39,7 +39,7 @@ const Example = () => { }, }`); - const [examples, setExamples] = useState([ + const [examples] = useState([ {id: 1, title: 'Сессии по подведению итогов и ретроспективы', img: images.img1}, {id: 2, title: 'Креативные, инновационные сессии', img: images.img2}, {id: 3, title: 'Стратегические сессии', img: images.img3}, @@ -49,8 +49,8 @@ const Example = () => { ]); return ( -
-

Примеры фасилитационных сессий

+
+

Примеры фасилитационных сессий

{examples.map(example => diff --git a/src/components/Facilitations/Example/Image.jsx b/src/components/Facilitations/Example/Image.jsx index bf9deb1..36424e2 100644 --- a/src/components/Facilitations/Example/Image.jsx +++ b/src/components/Facilitations/Example/Image.jsx @@ -3,9 +3,9 @@ import { getImage } from 'gatsby-plugin-image'; const Image = ({title, image}) => { return ( -
+
-

{title}

+

{title}

) diff --git a/src/components/Facilitations/Main.jsx b/src/components/Facilitations/Main.jsx index 7e0d5a7..b938c5c 100644 --- a/src/components/Facilitations/Main.jsx +++ b/src/components/Facilitations/Main.jsx @@ -4,29 +4,29 @@ import Step from './Step/Step' import Line from '../../images/line.svg' const Main = ({props}) => { - const [steps, setStep] = useState([ - {title: "Составление технического задания", ml: 'ml-[0px]'}, - {title: "Детализация запроса", ml: 'ml-[20px]'}, - {title: "Подготовительный этап", ml: 'ml-[40px]'}, - {title: "Проведении сессии", ml: 'ml-[60px]'}, - {title: "Заключительный этап", ml: 'ml-[80px]'}, + const [steps] = useState([ + {id: 0, title: "Составление технического задания", ml: '0'}, + {id: 1, title: "Детализация запроса", ml: '20'}, + {id: 2, title: "Подготовительный этап", ml: '40'}, + {id: 3, title: "Проведении сессии", ml: '60'}, + {id: 4, title: "Заключительный этап", ml: '80'}, ]); return ( -
-
-

Фасилитации

-

Вы можете доверить проведение сессии нам — профессиональным фасилитаторам

-
+
+
+

Фасилитации

+

Вы можете доверить проведение сессии нам — профессиональным фасилитаторам

+

Фасилитация (англ. facilitate – облегчать, помогать) – профессиональная организация процесса групповой работы, направленная на обсуждение, прояснение и достижение группой поставленных заказчиком целей, при полной нейтральности фасилитатора к контенту обсуждения.

-

Проект проведения любой фасилитационной сессии обычно состоит из 5 этапов:

- wave +

Проект проведения любой фасилитационной сессии обычно состоит из 5 этапов:

+ wave
-
+
{steps.map((step, count)=> - + )}
diff --git a/src/components/Facilitations/Step/Step.jsx b/src/components/Facilitations/Step/Step.jsx index dd113f3..3cf4f41 100644 --- a/src/components/Facilitations/Step/Step.jsx +++ b/src/components/Facilitations/Step/Step.jsx @@ -2,10 +2,10 @@ import React from 'react' const Step = ({title, count, ml}) => { return ( -
+
div>.number]:last:before:content-none'>
-
0{count}
-

{title}

+
0{count}
+

{title}

diff --git a/src/components/Games/Game.jsx b/src/components/Games/Game.jsx index 21fa1e5..0124135 100644 --- a/src/components/Games/Game.jsx +++ b/src/components/Games/Game.jsx @@ -4,12 +4,12 @@ import { GatsbyImage, getImage } from 'gatsby-plugin-image'; import { BsArrowRight } from "react-icons/bs"; const Game = ({img, title, description, slug}) => { - const image = getImage(img) + const image = getImage(img); return ( - div>h2]:hover:text-yellow-500 [&>div]:hover:scale-105'}> + div>h2]:hover:text-yellow-500 [&>div]:hover:scale-105'}>
- +

{title}

{description}

Подробнее

diff --git a/src/components/Games/GamePage/Hero.jsx b/src/components/Games/GamePage/Hero.jsx index 5a9473b..bc8d394 100644 --- a/src/components/Games/GamePage/Hero.jsx +++ b/src/components/Games/GamePage/Hero.jsx @@ -4,17 +4,17 @@ import { AiOutlineClockCircle, AiOutlineTeam } from "react-icons/ai"; const Hero = ({title, img, time, members, formats}) => { return ( -
+
-
-

{title}

-
+
+

{title}

+
{time &&

: {time}

} {members &&

: {members}

} {formats &&

Доступные форматы: {formats}

}
-
+
diff --git a/src/components/Games/Games.jsx b/src/components/Games/Games.jsx index e191771..de6c3d5 100644 --- a/src/components/Games/Games.jsx +++ b/src/components/Games/Games.jsx @@ -48,12 +48,12 @@ const Games = ({...props}) => { }, eight_colors_delegation: file(relativePath: {eq: "games/8-colors-delegation.jpeg"}) { childImageSharp { - gatsbyImageData(formats: WEBP, height: 240, jpgOptions: {progressive: true}) + gatsbyImageData(formats: WEBP, height: 240) } } }`); - const [games, setGames] = useState([ + const [games] = useState([ {slug: 'challenge-accepted', title: 'Вызов Принят', description: 'Частники выступают в качестве руководителей региональных отделений одной компании в разных городах. Цель каждого - первым реализовать проект по увеличению объема продаж в своем регионе в 2 раза с наименьшими финансовыми затратами.', img: images.challenge_accepted}, {slug: 'bridge', title: 'Мост', description: 'Дает участникам практические уроки по эффективной работе в команде. Участники должны работать вместе, как единая организация, в индивидуальных командах и подгруппах, над строительством гигантской модели моста.', img: images.bridge}, {slug: 'middleages-secrets', title: 'Секреты Средневековья', description: 'Командам предстоит проанализировать много важной информации, разгадать зашифрованные коды , решить сложные головоломки и многое-многое другое.', img: images.middleages_secrets}, @@ -66,19 +66,19 @@ const Games = ({...props}) => { return ( <> -
+
-
-

Бизнес-игры

-

Бизнес игры прекрасно моделируют реальный процесс работы в интересной форме. Сотрудник или команда быстрее погружается в курс дела и учится находить решения самостоятельно. Такой способ помогает быстро усвоить большой объем новой информации. Также бизнес- игра является хорошим инструментом для оценки компетенций персонала. процессе игры можно оценить.

+
+

Бизнес-игры

+

Бизнес игры прекрасно моделируют реальный процесс работы в интересной форме. Сотрудник или команда быстрее погружается в курс дела и учится находить решения самостоятельно. Такой способ помогает быстро усвоить большой объем новой информации. Также бизнес- игра является хорошим инструментом для оценки компетенций персонала. процессе игры можно оценить.

-
+
-

Другие игры

-
+

Другие игры

+
{games.map(game=> )} diff --git a/src/components/Games/RecGame.jsx b/src/components/Games/RecGame.jsx index c231bb3..79cd916 100644 --- a/src/components/Games/RecGame.jsx +++ b/src/components/Games/RecGame.jsx @@ -5,13 +5,14 @@ import { Link } from 'gatsby'; const RecGame = () => { return ( -
- -
-

Бизнес игра «Эмоциональный интеллект»

+
+ +
+

Бизнес игра «Эмоциональный интеллект»

+

Игровая цель – набрать как можно больше баллов и осознать степень развития собственного эмоционального интеллекта.

Игра основана на подходе Йельского университета к трактовке понятия «Эмоциональный интеллект», которое состоит из 4- х факторов:

-
    +
    • осознание своих эмоций
    • управление своими эмоциями
    • осознание эмоций других людей
    • diff --git a/src/components/LegoSP.jsx b/src/components/LegoSP.jsx index 663832f..f8c787e 100644 --- a/src/components/LegoSP.jsx +++ b/src/components/LegoSP.jsx @@ -2,10 +2,10 @@ import React from 'react' const LegoSP = ({...props}) => { return ( -
      -
      +
      +
      -

      Сессии LEGO SP

      +

      Сессии LEGO SP

      Основная цель метода LSP – стимулировать творческое мышление участников, заставить их отключить стереотипность мышления.

      В ходе сессии LSP участники «думают руками» – при помощи кирпичиков LEGO отвечают на различные вопросы, связанные с их идеями, проектами, бизнес-моделями, командой или стратегией развития. Тактильные действия включают фантазию на полную мощность при помощи тех участков нашего головного мозга, которые не задействованы только в ходе вербальной речи.

      Результаты сессий LEGO SP:

      diff --git a/src/components/Reviews/Review.jsx b/src/components/Reviews/Review.jsx index 3eea66c..8b41917 100644 --- a/src/components/Reviews/Review.jsx +++ b/src/components/Reviews/Review.jsx @@ -1,17 +1,11 @@ import React from 'react' +import { GatsbyImage, getImage } from 'gatsby-plugin-image'; -import { FaQuoteLeft } from "react-icons/fa"; -const Review = ({text, name, post, company}) => { +const Review = ({ img }) => { return ( -
      - -

      {text}

      -
      -

      {name}

      -

      {post}

      -

      {company}

      -
      +
      +
      ) } diff --git a/src/components/Reviews/Reviews.jsx b/src/components/Reviews/Reviews.jsx index 1740e68..24954d8 100644 --- a/src/components/Reviews/Reviews.jsx +++ b/src/components/Reviews/Reviews.jsx @@ -1,5 +1,6 @@ import React, { useState } from 'react' import { Swiper, SwiperSlide } from 'swiper/react'; +import { useStaticQuery, graphql } from "gatsby" import { Autoplay } from 'swiper'; import 'swiper/css'; import 'swiper/css/autoplay'; @@ -7,25 +8,55 @@ import 'swiper/css/autoplay'; import Review from './Review'; const Reviews = () => { - - const [reviews, setReviews] = useState([ - {id: 0, text: 'Какой-то очень красивый отзыв ялял яля л яля ля ля лля ля ля лйцмвпйцв йцв пнгцйпнгвнгпйц йцвйцв в', name: 'Имя Фамилия', post: 'Директор', company: 'Газпром :D'}, - {id: 1, text: 'Какой-то очень красивый отзыв ялял яля л яля ля ля лля ля ля лйцмвпйцв йцв пнгцйпнгвнгйцвйц вйцвцй в йцвйцв йцв ш йцвв йц йцвгйшц рщв гшпщнйцвнпш гйцвшнпщгйц внпгщ йцнпгвйцв нгпнг йпцвгн пйцгнппйцв', name: 'Имя Фамилия', post: 'Директор', company: 'Газпром :D'}, - {id: 2, text: 'Какой-то очень красивый отзыв ялял яля л яля ля ля лля ля ля лйцмвпйцв йцв пнгцйпнгвнгпйцв', name: 'Имя Фамилия', post: 'Директор', company: 'Газпром :D'}, - {id: 3, text: 'Какой-то очень красивый отзыв ялял яля л яля ля ля лля ля ля лйцмвпйцв йцв пнгцйпнгвнгпйцв', name: 'Имя Фамилия', post: 'Директор', company: 'Газпром :D'}, + const images = useStaticQuery(graphql` + query { + img1: file(relativePath: {eq: "reviews/1.jpg"}) { + childImageSharp { + gatsbyImageData(formats: WEBP) + } + }, + img2: file(relativePath: {eq: "reviews/2.jpg"}) { + childImageSharp { + gatsbyImageData(formats: WEBP) + } + }, + img3: file(relativePath: {eq: "reviews/3.jpg"}) { + childImageSharp { + gatsbyImageData(formats: WEBP) + } + }, + img4: file(relativePath: {eq: "reviews/4.jpg"}) { + childImageSharp { + gatsbyImageData(formats: WEBP) + } + } + }`); + const [reviews] = useState([ + {id: 0, img: images.img1}, + {id: 1, img: images.img2}, + {id: 2, img: images.img3}, + {id: 3, img: images.img4}, ]) return ( -
      +
      -

      Отзывы

      - console.log(swiper)}> +

      Отзывы

      + {reviews.map(review=> - - + + )} - +
      ) diff --git a/src/components/Team/Person.jsx b/src/components/Team/Person.jsx index 97afe54..11d192b 100644 --- a/src/components/Team/Person.jsx +++ b/src/components/Team/Person.jsx @@ -3,13 +3,13 @@ import { GatsbyImage, getImage } from 'gatsby-plugin-image'; const Person = ({name, post, img}) => { return ( -
      +

      {name}

      {post}

      - +
      ) diff --git a/src/components/Team/Team.jsx b/src/components/Team/Team.jsx index 4b27a0d..2cb729b 100644 --- a/src/components/Team/Team.jsx +++ b/src/components/Team/Team.jsx @@ -29,7 +29,7 @@ const Team = ({...props}) => { }, }`); - const [persons, setPersons] = useState([ + const [persons] = useState([ {id: 1, name: 'Алексей Красавин', post: 'Инвестор идей💡.\nПродюсер корпоративных мероприятий.', img: images.krasavin}, {id: 2, name: 'Мария Ровенская - Тарасова ', post: 'Менеджер крутых проектов, Методолог игр.', img: images.rovenskaya}, {id: 3, name: 'Алёна Крюкова', post: 'Фасилитатор, бизнес -тренер, игротехник, разработчик корпоративных мероприятий.', img: images.kryukova}, @@ -37,10 +37,10 @@ const Team = ({...props}) => { ]); return ( -
      +
      -

      Наша команда

      -
      +

      Наша команда

      +
      {persons.map(person=> )} diff --git a/src/components/Teambuilding/Example/Example.jsx b/src/components/Teambuilding/Example/Example.jsx index 33b36aa..6062d3c 100644 --- a/src/components/Teambuilding/Example/Example.jsx +++ b/src/components/Teambuilding/Example/Example.jsx @@ -39,7 +39,7 @@ const Example = () => { }, }`); - const [examples, setExamples] = useState([ + const [examples] = useState([ {id: 1, title: 'Веревочный курс', img: images.hero1}, {id: 2, title: 'Тематический «Форд Боярд» ', img: images.hero1}, {id: 3, title: 'Творческий', img: images.hero1}, @@ -53,8 +53,8 @@ const Example = () => { ]); return ( -
      -

      Примеры тимбилдингов

      +
      +

      Примеры тимбилдингов

      {examples.map(example => diff --git a/src/components/Teambuilding/Example/Image.jsx b/src/components/Teambuilding/Example/Image.jsx index ebd32cd..0089cc5 100644 --- a/src/components/Teambuilding/Example/Image.jsx +++ b/src/components/Teambuilding/Example/Image.jsx @@ -3,9 +3,9 @@ import { getImage } from 'gatsby-plugin-image'; const Image = ({title, image}) => { return ( -
      +
      -

      {title}

      +

      {title}

      ) diff --git a/src/components/Teambuilding/Main.jsx b/src/components/Teambuilding/Main.jsx index 089bdc1..9eb0277 100644 --- a/src/components/Teambuilding/Main.jsx +++ b/src/components/Teambuilding/Main.jsx @@ -2,10 +2,10 @@ import React from 'react' const Main = ({props}) => { return ( -
      -
      +
      +
      -

      Корпоративные мероприятия: Тимбилдинг/ Квесты

      +

      Корпоративные мероприятия: Тимбилдинг/ Квесты

      Грамотное составление программы психологических тренингов является одним из основополагающих этапов в правильном командообразовании. Невозможно достичь успешных результатов тимбилдинга, если программа мероприятия не продумана или же составлена не профессионалами.

      Игра, тренинг и другие интерактивные мероприятия основываются на принципах психологии, без которой трудно представить качественное и результативное управление персоналом.

      Целевая аудитория тимбилдинга:

      diff --git a/src/components/UI/Input.jsx b/src/components/UI/Input.jsx index 5638c8e..01e4c19 100644 --- a/src/components/UI/Input.jsx +++ b/src/components/UI/Input.jsx @@ -1,14 +1,14 @@ import React from 'react'; import uniqid from 'uniqid'; -const Input = ({ className, label, ...props }) => { +const Input = ({ className, label, labelClasses, ...props }) => { const uid = uniqid(); return (
      {label && - + }
      diff --git a/src/components/UI/Textarea.jsx b/src/components/UI/Textarea.jsx index 262e67f..685fb14 100644 --- a/src/components/UI/Textarea.jsx +++ b/src/components/UI/Textarea.jsx @@ -1,14 +1,14 @@ import React from 'react'; import uniqid from 'uniqid'; -const Textarea = ({ className, label, ...props }) => { +const Textarea = ({ className, label, labelClasses, ...props }) => { const uid = uniqid(); return (
      {label && - + }
      diff --git a/src/components/footer.jsx b/src/components/footer.jsx index 7698e4b..33d74e5 100644 --- a/src/components/footer.jsx +++ b/src/components/footer.jsx @@ -11,22 +11,22 @@ const Footer = ({menu}) => { return(