diff --git a/src/assets/icons/arrow-down-blue.svg b/src/assets/icons/arrow-down-blue.svg new file mode 100644 index 0000000..b288d3f --- /dev/null +++ b/src/assets/icons/arrow-down-blue.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/components/global/Aside.tsx b/src/components/global/Aside.tsx index 3c744fd..612e71d 100644 --- a/src/components/global/Aside.tsx +++ b/src/components/global/Aside.tsx @@ -1,11 +1,15 @@ // Modules import { v4 as uuidv4 } from 'uuid'; +import { motion } from 'framer-motion'; // Components import SectionTitle from './SectionTitle'; import AsideItem from '../aside/AsideItem'; import Calendar from '../aside/Calendar'; +// Icons +import { ReactComponent as ArrowDownBlue } from '../../assets/icons/arrow-down-blue.svg'; + interface AsideDataType { title: string; category: string; @@ -42,6 +46,37 @@ const asideData: AsideDataType[] = [ category: 'Политика', }, ]; + +const buttonMotion = { + rest: { + backgroundColor: 'rgba(0, 0, 0, 0)', + color: '#2368ad', + duration: 0.4, + type: 'tween', + }, + hover: { + backgroundColor: '#2368ad', + color: '#ffffff', + duration: 0.4, + type: 'spring', + }, +}; + +const arrowMotion = { + rest: { + fill: '#2368ad', + transform: 'rotateX(0%)', + duration: 0.4, + type: 'tween', + }, + hover: { + fill: '#ffffff', + transform: 'rotateX(180%)', + duration: 0.4, + type: 'spring', + }, +}; + const Aside = () => { return ( ); diff --git a/src/styles/_aside.scss b/src/styles/_aside.scss index 956e54f..4d2c8f9 100644 --- a/src/styles/_aside.scss +++ b/src/styles/_aside.scss @@ -39,3 +39,21 @@ font-weight: bold; font-size: 1rem; } + +.aside-btn { + cursor: pointer; + color: $main; + border: 0.1rem $main solid; + border-radius: 0.5rem; + padding: 0.8rem; + display: flex; + align-items: center; + justify-content: center; + gap: 0.8rem; + font-size: 1.4rem; + + svg { + width: 1.4rem; + height: 1.4rem; + } +}