From de2e7cd739a697fa0df86e22cc9362240990ca28 Mon Sep 17 00:00:00 2001 From: Dora Su Date: Fri, 14 May 2021 04:03:26 -0400 Subject: [PATCH 01/13] Add the NewsCard component --- .vscode/settings.json | 1 + components/NewsCard.module.css | 33 +++++++++++++++++++ components/NewsCard.tsx | 30 ++++++++++++++++++ components/playground.module.css | 42 +++++++++++++++++++++++-- components/playground.tsx | 21 +++++++++++++ content/playground/unavailable.news.mdx | 14 +++++++++ next-env.d.ts | 30 +++++++++++++----- pages/index.mdx | 2 +- pages/index.module.css | 3 -- pages/playground.mdx | 12 +++++-- 10 files changed, 173 insertions(+), 15 deletions(-) create mode 100644 components/NewsCard.module.css create mode 100644 components/NewsCard.tsx create mode 100644 content/playground/unavailable.news.mdx delete mode 100644 pages/index.module.css diff --git a/.vscode/settings.json b/.vscode/settings.json index beeb26f4..68d9b3b3 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -38,4 +38,5 @@ "files.exclude": { "node_modules": true }, + "editor.tabSize": 2 } \ No newline at end of file diff --git a/components/NewsCard.module.css b/components/NewsCard.module.css new file mode 100644 index 00000000..ee79eb84 --- /dev/null +++ b/components/NewsCard.module.css @@ -0,0 +1,33 @@ +.card { + padding: 1.6875rem 2.4375rem; + max-width: 524px; + background-color: white; +} + +.date { + color: var(--purple-2); + font-size: 1.125rem; + font-weight: bold; + line-height: 1.6875rem; +} + +.author { + color: var(--purple-1); + font-style: normal; + line-height: 1.3125rem; + font-size: 0.875rem; + margin: 0.3125rem 0rem 0.4375rem 0rem; +} + +.content { + line-height: 1.3125rem; + color: var(--purple-2); + font-size: 0.875rem; +} + +@media only screen and (max-width: 768px) { + .card { + padding: 0; + background-color: transparent; + } +} diff --git a/components/NewsCard.tsx b/components/NewsCard.tsx new file mode 100644 index 00000000..765749d6 --- /dev/null +++ b/components/NewsCard.tsx @@ -0,0 +1,30 @@ +import React, { ReactNode } from "react"; +import styles from "./NewsCard.module.css"; + +interface NewsCardProps { + date: Date; + author: string; + children: ReactNode; +} + +export const NewsCard: React.FC = ({ + date, + author, + children, +}) => { + return ( +
+

+ +

+
{author}
+
{children}
+
+ ); +}; diff --git a/components/playground.module.css b/components/playground.module.css index ec70cf46..bb7eff6a 100644 --- a/components/playground.module.css +++ b/components/playground.module.css @@ -1,3 +1,41 @@ .miniEventCardDemo > *:nth-child(odd) { - background: #E1EEFA; -} \ No newline at end of file + background: #e1eefa; +} + +.news { + padding: 50px; + background-color: var(--off-white); + display: inline-block; +} + +@media only screen and (max-width: 768px) { + .news { + background-color: #e1eefa; + } +} + +.newsTitle { + font-style: normal; + font-weight: bold; + color: var(--purple-2); + font-size: 24px; + line-height: 36px; + margin-bottom: 14px; +} + +.newsDesc { + font-style: normal; + font-weight: normal; + font-size: 14px; + line-height: 21px; + white-space: pre-line; + color: var(--purple-2); + vertical-align: baseline; +} + +.news > hr { + border: none; + height: 1px; + background-color: var(--purple-2); + margin: 0 0 13px 0; +} diff --git a/components/playground.tsx b/components/playground.tsx index bbb85e0e..a3f5fca4 100644 --- a/components/playground.tsx +++ b/components/playground.tsx @@ -5,8 +5,12 @@ import styles from "./playground.module.css"; import AfterHoursContent, { metadata as afterHoursMetadata, } from "../content/playground/after-hours.event.mdx"; +import UnavailableContent, { + metadata as unavailableMetadata, +} from "../content/playground/unavailable.news.mdx"; import { MiniEventCard } from "./MiniEventCard"; +import { NewsCard } from "./NewsCard"; export function MiniEventCardDemo() { const { name, location, short, date } = afterHoursMetadata; @@ -50,3 +54,20 @@ export function MiniEventCardDemo() { ); } + +export function NewsCardDemo() { + return ( +
+
News
+
+ Updates from our execs +
+
+
+
+ + + +
+ ); +} diff --git a/content/playground/unavailable.news.mdx b/content/playground/unavailable.news.mdx new file mode 100644 index 00000000..74919ef8 --- /dev/null +++ b/content/playground/unavailable.news.mdx @@ -0,0 +1,14 @@ +export const metadata = { + author: "merenber", + date: new Date("2021-03-19"), +} + +Computer Science Club systems and services will be unavailable on Saturday, Mar. 20 +due to a planned power outage in the Mathematics and Computer Building (MC) from 7am to 5pm. + +The CSC will begin shutting down machines at 6am in preparation of the outage. +Please prepare for the outage by: + +- Ensuring all running processes have their state saved (configuration, data, etc.) +- Any important files are backed up off-site from the CSC +- If you have any questions/concerns, please email the Systems Committee. \ No newline at end of file diff --git a/next-env.d.ts b/next-env.d.ts index 0c47f061..ed11a509 100644 --- a/next-env.d.ts +++ b/next-env.d.ts @@ -1,16 +1,32 @@ /// /// -interface EventMetadata { - name: string; - short: string; - date: Date; - location: string; -} - declare module "*.event.mdx" { + import { ComponentType } from "react"; + + interface EventMetadata { + name: string; + short: string; + date: Date; + location: string; + } + const ReactComponent: ComponentType; export const metadata: EventMetadata; export default ReactComponent; } + +declare module "*.news.mdx" { + import { ComponentType } from "react"; + + interface NewsMetadata { + author: string; + date: Date; + } + + const ReactComponent: ComponentType; + + export const metadata: NewsMetadata; + export default ReactComponent; +} diff --git a/pages/index.mdx b/pages/index.mdx index 2ad8a3f5..7a6200c7 100644 --- a/pages/index.mdx +++ b/pages/index.mdx @@ -1 +1 @@ -Visit the [playground](/playground) \ No newline at end of file +Visit the [playground](/playground) diff --git a/pages/index.module.css b/pages/index.module.css deleted file mode 100644 index 4c137b02..00000000 --- a/pages/index.module.css +++ /dev/null @@ -1,3 +0,0 @@ -.Foo { - background-color: red; -} \ No newline at end of file diff --git a/pages/playground.mdx b/pages/playground.mdx index 87d8a405..7efaeb5f 100644 --- a/pages/playground.mdx +++ b/pages/playground.mdx @@ -1,4 +1,4 @@ -import {MiniEventCardDemo} from '../components/playground' +import {MiniEventCardDemo, NewsCardDemo} from '../components/playground' # Playground @@ -7,4 +7,12 @@ import {MiniEventCardDemo} from '../components/playground' The `` component has a collapsible description, and it used on the events page. It uses the `
` tag and works without JS! - \ No newline at end of file + + +--- + +## `` + +unavailable + + \ No newline at end of file From b4d4a1521250b543b1ac484c8e6b90f48e6d57c7 Mon Sep 17 00:00:00 2001 From: Bonnie Peng Date: Sun, 16 May 2021 03:22:06 -0400 Subject: [PATCH 02/13] Event Description Card --- components/EventDescriptionCard.module.css | 55 +++++++++++++++ components/EventDescriptionCard.tsx | 74 +++++++++++++++++++++ components/EventSetting.module.css | 5 ++ components/EventSetting.tsx | 28 ++++++++ components/playground.module.css | 35 ++++++++-- components/playground.tsx | 40 +++++++++++ pages/playground.mdx | 23 +++++-- public/images/playground/alt-tab.jpg | Bin 0 -> 274071 bytes public/images/playground/intro-ootb.jpg | Bin 0 -> 328404 bytes public/images/profile.jpg | Bin 62408 -> 0 bytes public/logos/Discord.png | Bin 0 -> 900 bytes public/logos/Facebook.png | Bin 0 -> 615 bytes public/logos/Instagram.png | Bin 0 -> 1077 bytes public/logos/Twitch.png | Bin 0 -> 575 bytes 14 files changed, 250 insertions(+), 10 deletions(-) create mode 100644 components/EventDescriptionCard.module.css create mode 100644 components/EventDescriptionCard.tsx create mode 100644 components/EventSetting.module.css create mode 100644 components/EventSetting.tsx create mode 100644 public/images/playground/alt-tab.jpg create mode 100644 public/images/playground/intro-ootb.jpg delete mode 100644 public/images/profile.jpg create mode 100644 public/logos/Discord.png create mode 100644 public/logos/Facebook.png create mode 100644 public/logos/Instagram.png create mode 100644 public/logos/Twitch.png diff --git a/components/EventDescriptionCard.module.css b/components/EventDescriptionCard.module.css new file mode 100644 index 00000000..6037a248 --- /dev/null +++ b/components/EventDescriptionCard.module.css @@ -0,0 +1,55 @@ +.card { + display: flex; + box-sizing: border-box; + max-width: 540px; + padding: 1.5rem; + border-radius: 4px; + background-color: white; +} + +.poster { + width: 150px; + height: 150px; + margin-right: 1.25rem; +} + +.details { + position: relative; +} + +.name { + color: var(--purple-2); + font-weight: bolder; + font-size: 1.125rem; + line-height: 1.6875rem; + margin: 0; +} + +.desc { + color: var(--purple-2); + font-size: 0.75rem; +} + +.spacer { + height: 35px; +} + +.button { + position: absolute; + bottom: 0; + left: 0; +} + +.logo { + width: 30px; + position: absolute; + bottom: 0; + right: 0; +} + +@media only screen and (max-width: 768px) { + .card { + padding: 0; + background-color: #e1eefa; + } +} diff --git a/components/EventDescriptionCard.tsx b/components/EventDescriptionCard.tsx new file mode 100644 index 00000000..013d977a --- /dev/null +++ b/components/EventDescriptionCard.tsx @@ -0,0 +1,74 @@ +import React, { ReactNode } from "react"; +// import { Button } from "./Button"; +import { EventSetting } from "./EventSetting"; +import styles from "./EventDescriptionCard.module.css"; + +interface BaseProps { + name: string; + date: Date; + poster: string; + registerLink?: string; + children: ReactNode; +} + +type Props = BaseProps & + ( + | { online: true; location: keyof typeof links } + | { online: false; location: string } + ); + +const links = { + Twitch: "https://www.twitch.tv/uwcsclub", + Discord: "https://discord.gg/pHfYBCg", + Facebook: "https://www.facebook.com/uw.computerscienceclub", + Instagram: "https://www.instagram.com/uwcsclub/", +}; + +/** + * @remarks + * - Child elements will display as the event's description + * - Assuming date prop is in EST + * - poster is the event's image name, including file ending (.jpg/.png/etc) + * - If event is online, location will be the platform, with capital first letter and no trailing spaces + * - ie. location="Discord" + * @todo + * get Link component + */ +export function EventDescriptionCard(props: Props) { + return ( +
+ {props.name} + +
+

{props.name}

+ + +
{props.children}
+
+ +
+ {props.registerLink && ( +
+ +
+ )} + {props.online && ( + + {props.location} + + )} +
+
+
+ ); +} diff --git a/components/EventSetting.module.css b/components/EventSetting.module.css new file mode 100644 index 00000000..154bb6fa --- /dev/null +++ b/components/EventSetting.module.css @@ -0,0 +1,5 @@ +.setting { + color: var(--blue-1); + font-weight: bolder; + font-size: 0.75rem; +} diff --git a/components/EventSetting.tsx b/components/EventSetting.tsx new file mode 100644 index 00000000..237c5bb4 --- /dev/null +++ b/components/EventSetting.tsx @@ -0,0 +1,28 @@ +import React from "react"; +import styles from "./EventSetting.module.css"; + +interface Props { + date: Date; + online: boolean; + location: string; +} + +export function EventSetting(props: Props) { + const date = props.date.toLocaleDateString("en-US", { + day: "numeric", + month: "long", + year: "numeric", + }); + const time = props.date.toLocaleTimeString("en-US", { + hour: "numeric", + minute: "numeric", + }); + const location = props.online ? `Online - ${props.location}` : props.location; + + return ( +
+ + {` | ${location}`} +
+ ); +} diff --git a/components/playground.module.css b/components/playground.module.css index bb7eff6a..5fb63d85 100644 --- a/components/playground.module.css +++ b/components/playground.module.css @@ -8,12 +8,6 @@ display: inline-block; } -@media only screen and (max-width: 768px) { - .news { - background-color: #e1eefa; - } -} - .newsTitle { font-style: normal; font-weight: bold; @@ -39,3 +33,32 @@ background-color: var(--purple-2); margin: 0 0 13px 0; } + +.eventDescriptionCardDemo { + padding: 50px 0; + background-color: var(--off-white); + display: inline-block; +} + +.eventDescriptionCardDemo > * { + margin: 12px 50px; +} + +.eventDescriptionCardDemo > *:first-child { + margin-top: 0; +} + +.eventDescriptionCardDemo > *:last-child { + margin-bottom: 0; +} + +@media only screen and (max-width: 768px) { + .news, + .eventDescriptionCardDemo { + background-color: #e1eefa; + } + + .eventDescriptionCardDemo > * { + margin: 50px; + } +} diff --git a/components/playground.tsx b/components/playground.tsx index a3f5fca4..baf4e99b 100644 --- a/components/playground.tsx +++ b/components/playground.tsx @@ -1,4 +1,5 @@ import React from "react"; +import { EventDescriptionCard } from "./EventDescriptionCard"; import styles from "./playground.module.css"; @@ -71,3 +72,42 @@ export function NewsCardDemo() { ); } + +export function EventDescriptionCardDemo() { + const { name, short, date } = afterHoursMetadata; + + return ( +
+ +

{short}

+
+ +

{short}

+
+ +

{short}

+
+
+ ); +} diff --git a/pages/playground.mdx b/pages/playground.mdx index 7efaeb5f..2584b4e4 100644 --- a/pages/playground.mdx +++ b/pages/playground.mdx @@ -1,11 +1,15 @@ -import {MiniEventCardDemo, NewsCardDemo} from '../components/playground' +import { + MiniEventCardDemo, + NewsCardDemo, + EventDescriptionCardDemo, +} from "../components/playground"; # Playground ## `` -The `` component has a collapsible description, and it used on -the events page. It uses the `
` tag and works without JS! +The `` component has a collapsible description, and it is used +on the events page. It uses the `
` tag and works without JS! @@ -15,4 +19,15 @@ the events page. It uses the `
` tag and works without JS! unavailable - \ No newline at end of file + + +--- + +## `` + +The `` component is used on the home page, and uses the +` + +
+

{name}

+

+ +

+
{children}
+
+ + ); +} diff --git a/components/EventDescriptionCard.module.css b/components/EventDescriptionCard.module.css index 6037a248..7796e9d8 100644 --- a/components/EventDescriptionCard.module.css +++ b/components/EventDescriptionCard.module.css @@ -47,6 +47,13 @@ right: 0; } +.setting { + margin: 0; + color: var(--blue-1); + font-weight: bolder; + font-size: 0.75rem; +} + @media only screen and (max-width: 768px) { .card { padding: 0; diff --git a/components/EventDescriptionCard.tsx b/components/EventDescriptionCard.tsx index 32fcba15..39ca9cb6 100644 --- a/components/EventDescriptionCard.tsx +++ b/components/EventDescriptionCard.tsx @@ -42,12 +42,13 @@ export function EventDescriptionCard(props: Props) {

{props.name}

- - +

+ +

{props.children}
diff --git a/components/EventSetting.module.css b/components/EventSetting.module.css deleted file mode 100644 index 154bb6fa..00000000 --- a/components/EventSetting.module.css +++ /dev/null @@ -1,5 +0,0 @@ -.setting { - color: var(--blue-1); - font-weight: bolder; - font-size: 0.75rem; -} diff --git a/components/EventSetting.tsx b/components/EventSetting.tsx index 237c5bb4..3dec1cde 100644 --- a/components/EventSetting.tsx +++ b/components/EventSetting.tsx @@ -1,5 +1,4 @@ import React from "react"; -import styles from "./EventSetting.module.css"; interface Props { date: Date; @@ -20,7 +19,7 @@ export function EventSetting(props: Props) { const location = props.online ? `Online - ${props.location}` : props.location; return ( -
+
{` | ${location}`}
diff --git a/components/playground.tsx b/components/playground.tsx index 507e0540..31d23087 100644 --- a/components/playground.tsx +++ b/components/playground.tsx @@ -5,6 +5,13 @@ import styles from "./playground.module.css"; import AfterHoursContent, { metadata as afterHoursMetadata, } from "../content/playground/after-hours.event.mdx"; +import OOTBReact, { + metadata as OOTBReactEventMetadata, +} from "../content/playground/ootb-react.event.mdx"; +import AltTab, { + metadata as altTabEventMetadata, +} from "../content/playground/alt-tab.event.mdx"; + import UnavailableContent, { metadata as unavailableMetadata, } from "../content/playground/unavailable.news.mdx"; @@ -12,6 +19,7 @@ import { metadata as teamMemberMetadata } from "../content/playground/demo.teamm import { MiniEventCard } from "./MiniEventCard"; import { NewsCard } from "./NewsCard"; +import { EventCard } from "./EventCard"; import { EventDescriptionCard } from "./EventDescriptionCard"; import { TeamMember } from "./TeamMember"; @@ -114,6 +122,23 @@ export function EventDescriptionCardDemo() { ); } +export function EventCardDemo() { + const eventCardData = [ + { Content: OOTBReact, metadata: OOTBReactEventMetadata }, + { Content: AltTab, metadata: altTabEventMetadata }, + ]; + + return ( + <> + {eventCardData.map(({ Content, metadata }) => ( + + + + ))} + + ); +} + export function TeamMemberDemo() { return (
diff --git a/content/playground/after-hours.event.mdx b/content/playground/after-hours.event.mdx index 45fdb7d3..a9fbb372 100644 --- a/content/playground/after-hours.event.mdx +++ b/content/playground/after-hours.event.mdx @@ -2,7 +2,10 @@ export const metadata = { name: "Afterhours: Personal Relationships", short: "Learn how React works and make your own version!", date: new Date("2021-03-02 2:00 PM"), - location: "Online - Twitch", + online: false, + location: "MC", + poster: "/images/playground/intro-ootb.jpg", + registerLink: "http://csclub.uwaterloo.ca/", }; The past year has been tough for all of us, having to deal with the pandemic diff --git a/content/playground/alt-tab.event.mdx b/content/playground/alt-tab.event.mdx new file mode 100644 index 00000000..a4ee16dd --- /dev/null +++ b/content/playground/alt-tab.event.mdx @@ -0,0 +1,15 @@ +export const metadata = { + name: "Alt-Tab", + short: "CSC is proud to present to you Alt-Tab!", + date: new Date("March 25, 2021 19:00:00"), + online: true, + location: "Twitch", + poster: "/images/alt-tab.png", + registerLink: "http://google.com/", +}; + +CSC is proud to present to you Alt-Tab! Join us in a lightning tech talk series presented to you by our very own students. Alt-Tab consists of 10 to 15-minute talks about anything related to tech. Learn more about exciting topics that range from competitive programming to cryptography! + +We will have four incredible presenters that are eager to share their insights with you. Stay tuned as we'll be introducing them and the topics that they will be discussing soon!. + +Registration is not required to attend! We'll just be sending you an email reminder, as well as inviting you to our calendar even diff --git a/content/playground/ootb-react.event.mdx b/content/playground/ootb-react.event.mdx new file mode 100644 index 00000000..a46427c5 --- /dev/null +++ b/content/playground/ootb-react.event.mdx @@ -0,0 +1,17 @@ +export const metadata = { + name: "Out of the Box: React", + short: "Out of the Box is a series of code-along projects that explore what's under the hood of modern web frameworks.", + date: new Date("March 23, 2021 19:00:00"), + online: true, + location: "Twitch", + poster: "/images/ootb-react.png", + registerLink: "http://google.com/", +}; + +Modern web frameworks are a black-box. They're easy to use, but they have numerous minute details to master in order to apply them to truly scalable websites. Over the last few years, front-end frameworks have absorbed the responsibilities of the back-end, meaning it's become ever more important to dig their details out of the box. + +Out of the Box is a series of code-along projects that explore what's under the hood of modern web frameworks. Nearly 5 million websites use React, including many of the internet's most popular websites. While its simple syntax attracts developers from all over, underneath lies a complex infrastructure of code to manage all elements from caching to hooks. Rishi will bring these ideas to light in our inaugural episode of Out of the Box. Come join him and code your own version of React! + +Only basic web experience is needed. All JavaScript code will be written within a single HTML document for simplicity. Node.js will also be required to participate in the event! + +Registration is not required to attend! We'll just be sending you an email reminder, as well as inviting you to our calendar event. diff --git a/next-env.d.ts b/next-env.d.ts index 2a3d896f..18bf6b5f 100644 --- a/next-env.d.ts +++ b/next-env.d.ts @@ -8,7 +8,10 @@ declare module "*.event.mdx" { name: string; short: string; date: Date; + online: boolean; location: string; + poster: string; + registerLink: string; } const ReactComponent: ComponentType; diff --git a/pages/playground.mdx b/pages/playground.mdx index 4d4a77df..6f7c115f 100644 --- a/pages/playground.mdx +++ b/pages/playground.mdx @@ -2,6 +2,7 @@ import { MiniEventCardDemo, NewsCardDemo, EventDescriptionCardDemo, + EventCardDemo, TeamMemberDemo } from "../components/playground"; @@ -9,7 +10,7 @@ import { ## `` -The `` component has a collapsible description, and it is used +The `` component has a collapsible description, and it is used on the events page. It uses the `
` tag and works without JS! @@ -32,6 +33,16 @@ The `` component is used on the home page, and uses the --- + +## `` + +The `` component is used on the events page, and uses the +`
)} - {props.online && ( - + {online && platformURL && ( + {props.location} )} diff --git a/components/MiniEventCard.tsx b/components/MiniEventCard.tsx index acbd1d63..032e5c8d 100644 --- a/components/MiniEventCard.tsx +++ b/components/MiniEventCard.tsx @@ -1,13 +1,14 @@ import React, { ReactNode } from "react"; +import { EventSetting } from "./EventSetting"; import styles from "./MiniEventCard.module.css"; interface Props { name: string; - descriptionShort: string; description: ReactNode; + short: string; + online: boolean; location: string; - date: string; - time: string; + date: Date; } const dropDownIcon = ( @@ -28,11 +29,11 @@ const dropDownIcon = ( export const MiniEventCard: React.FC = ({ name, - descriptionShort, + short, description, location, date, - time, + online, }) => { return (
@@ -43,9 +44,9 @@ export const MiniEventCard: React.FC = ({

- {location} | {date} | {time} +

-

{descriptionShort}

+

{short}

View details {dropDownIcon}

diff --git a/components/playground.tsx b/components/playground.tsx index 31d23087..75cdc3f6 100644 --- a/components/playground.tsx +++ b/components/playground.tsx @@ -23,45 +23,22 @@ import { EventCard } from "./EventCard"; import { EventDescriptionCard } from "./EventDescriptionCard"; import { TeamMember } from "./TeamMember"; +const events = [ + { Content: AfterHoursContent, metadata: afterHoursMetadata }, + { Content: OOTBReact, metadata: OOTBReactEventMetadata }, + { Content: AltTab, metadata: altTabEventMetadata }, +]; + export function MiniEventCardDemo() { - const { name, location, short, date } = afterHoursMetadata; - - const dateString = date.toLocaleDateString("en-US", { - day: "numeric", - month: "long", - year: "numeric", - }); - const timeString = date.toLocaleTimeString("en-US", { - hour: "numeric", - minute: "numeric", - }); - return (
- } - /> - } - /> - } - /> + {events.map(({ Content, metadata }) => ( + } + key={metadata.name + metadata.date.toString()} + /> + ))}
); } @@ -84,54 +61,28 @@ export function NewsCardDemo() { } export function EventDescriptionCardDemo() { - const { name, short, date } = afterHoursMetadata; - return (
- -

{short}

-
- -

{short}

-
- -

{short}

-
+ {events.map(({ metadata }) => ( + + {metadata.short} + + ))}
); } export function EventCardDemo() { - const eventCardData = [ - { Content: OOTBReact, metadata: OOTBReactEventMetadata }, - { Content: AltTab, metadata: altTabEventMetadata }, - ]; - return ( <> - {eventCardData.map(({ Content, metadata }) => ( - + {events.map(({ Content, metadata }) => ( + ))} From 7f88950f78841be31dd56f7e3923c3924b2ba11f Mon Sep 17 00:00:00 2001 From: Aditya Thakral Date: Mon, 24 May 2021 04:04:02 -0400 Subject: [PATCH 10/13] Make registerLink and poster optional for events --- components/EventCard.module.css | 4 ++++ components/EventCard.tsx | 15 +++++++++------ components/EventDescriptionCard.tsx | 4 ++-- components/playground.tsx | 2 +- content/playground/after-hours.event.mdx | 1 - content/playground/alt-tab.event.mdx | 1 - next-env.d.ts | 4 ++-- 7 files changed, 18 insertions(+), 13 deletions(-) diff --git a/components/EventCard.module.css b/components/EventCard.module.css index 4f4a96f9..8c538d37 100644 --- a/components/EventCard.module.css +++ b/components/EventCard.module.css @@ -16,6 +16,10 @@ margin-bottom: 16px; } +.spacer { + margin-top: 76px; +} + .registerButton { width: 100%; } diff --git a/components/EventCard.tsx b/components/EventCard.tsx index 80d7147e..52118a20 100644 --- a/components/EventCard.tsx +++ b/components/EventCard.tsx @@ -10,8 +10,8 @@ interface EventCardProps { date: Date; online: boolean; location: string; - poster: string; - registerLink: string; + poster?: string; + registerLink?: string; children: ReactNode; } @@ -27,11 +27,14 @@ export function EventCard({ return (

{name}

diff --git a/components/EventDescriptionCard.tsx b/components/EventDescriptionCard.tsx index 5a69a2ca..e502054a 100644 --- a/components/EventDescriptionCard.tsx +++ b/components/EventDescriptionCard.tsx @@ -9,7 +9,7 @@ interface Props { online: boolean; location: string; date: Date; - poster: string; + poster?: string; registerLink?: string; children: ReactNode; } @@ -52,7 +52,7 @@ export function EventDescriptionCard({ return (
- {name} + {poster && {name}}

{name}

diff --git a/components/playground.tsx b/components/playground.tsx index 75cdc3f6..9f86fc0e 100644 --- a/components/playground.tsx +++ b/components/playground.tsx @@ -24,8 +24,8 @@ import { EventDescriptionCard } from "./EventDescriptionCard"; import { TeamMember } from "./TeamMember"; const events = [ - { Content: AfterHoursContent, metadata: afterHoursMetadata }, { Content: OOTBReact, metadata: OOTBReactEventMetadata }, + { Content: AfterHoursContent, metadata: afterHoursMetadata }, { Content: AltTab, metadata: altTabEventMetadata }, ]; diff --git a/content/playground/after-hours.event.mdx b/content/playground/after-hours.event.mdx index a9fbb372..7d227d63 100644 --- a/content/playground/after-hours.event.mdx +++ b/content/playground/after-hours.event.mdx @@ -4,7 +4,6 @@ export const metadata = { date: new Date("2021-03-02 2:00 PM"), online: false, location: "MC", - poster: "/images/playground/intro-ootb.jpg", registerLink: "http://csclub.uwaterloo.ca/", }; diff --git a/content/playground/alt-tab.event.mdx b/content/playground/alt-tab.event.mdx index c64e4884..fc3567d6 100644 --- a/content/playground/alt-tab.event.mdx +++ b/content/playground/alt-tab.event.mdx @@ -5,7 +5,6 @@ export const metadata = { online: true, location: "Twitch", poster: "/images/playground/alt-tab.jpg", - registerLink: "http://google.com/", }; CSC is proud to present to you Alt-Tab! Join us in a lightning tech talk series presented to you by our very own students. Alt-Tab consists of 10 to 15-minute talks about anything related to tech. Learn more about exciting topics that range from competitive programming to cryptography! diff --git a/next-env.d.ts b/next-env.d.ts index 18bf6b5f..bcee8690 100644 --- a/next-env.d.ts +++ b/next-env.d.ts @@ -10,8 +10,8 @@ declare module "*.event.mdx" { date: Date; online: boolean; location: string; - poster: string; - registerLink: string; + poster?: string; + registerLink?: string; } const ReactComponent: ComponentType; From 4777b5f274a2c6ecb9631373fe237b58d965404f Mon Sep 17 00:00:00 2001 From: Amy Wang Date: Mon, 24 May 2021 09:21:34 +0000 Subject: [PATCH 11/13] TeamMemberCard --- components/MiniEventCard.module.css | 2 +- components/MiniEventCard.tsx | 4 +- components/TeamMember.tsx | 14 ++- components/TeamMemberCard.module.css | 114 ++++++++++++++++++++++ components/TeamMemberCard.tsx | 27 +++++ components/playground.tsx | 36 ++++--- content/playground/codey.team-member.mdx | 9 ++ content/playground/demo.teammember.mdx | 5 - content/playground/doge.team-member.mdx | 5 + next-env.d.ts | 4 +- pages/playground.mdx | 14 ++- public/images/playground/codeyHi.png | Bin 0 -> 52005 bytes public/images/playground/doge.jpg | Bin 0 -> 64612 bytes public/images/playground/team-member.png | Bin 210 -> 0 bytes public/images/team-member-placeholder.svg | 3 + 15 files changed, 212 insertions(+), 25 deletions(-) create mode 100644 components/TeamMemberCard.module.css create mode 100644 components/TeamMemberCard.tsx create mode 100644 content/playground/codey.team-member.mdx delete mode 100644 content/playground/demo.teammember.mdx create mode 100644 content/playground/doge.team-member.mdx create mode 100644 public/images/playground/codeyHi.png create mode 100644 public/images/playground/doge.jpg delete mode 100644 public/images/playground/team-member.png create mode 100644 public/images/team-member-placeholder.svg diff --git a/components/MiniEventCard.module.css b/components/MiniEventCard.module.css index d6897613..a96ea9f1 100644 --- a/components/MiniEventCard.module.css +++ b/components/MiniEventCard.module.css @@ -18,7 +18,7 @@ } .info { - margin-top: 0; + margin-bottom: 0.75rem; } .details { diff --git a/components/MiniEventCard.tsx b/components/MiniEventCard.tsx index 032e5c8d..b297ded4 100644 --- a/components/MiniEventCard.tsx +++ b/components/MiniEventCard.tsx @@ -43,9 +43,9 @@ export const MiniEventCard: React.FC = ({
{name}
-

+

-

+

{short}

diff --git a/components/TeamMember.tsx b/components/TeamMember.tsx index 745b14c5..9c9cdc4c 100644 --- a/components/TeamMember.tsx +++ b/components/TeamMember.tsx @@ -5,13 +5,21 @@ import { Image } from "./Image"; interface TeamMemberProps { name: string; role: string; - src: string; + image?: string; } -export const TeamMember: React.FC = ({ name, role, src }) => { +export const TeamMember: React.FC = ({ + name, + role, + image, +}) => { return (
- {`${name} + {`Picture
{name}
{role}
diff --git a/components/TeamMemberCard.module.css b/components/TeamMemberCard.module.css new file mode 100644 index 00000000..35a7882f --- /dev/null +++ b/components/TeamMemberCard.module.css @@ -0,0 +1,114 @@ +.card { + display: grid; + grid-template-columns: 126px auto; + grid-template-areas: + "picture name" + "picture role" + "picture description"; + column-gap: 2rem; + row-gap: 0; + justify-items: start; + align-items: start; + + max-width: 847px; +} + +.picture { + grid-area: picture; + justify-self: center; + + max-width: 126px; + max-height: 126px; + + clip-path: circle(50%); +} + +.image { + width: 100%; +} + +.name { + grid-area: name; + margin: 0; + + color: var(--blue-1); + font-size: 2.25rem; + line-height: 1.1; + font-weight: 700; +} + +.role { + grid-area: role; + margin: 0; + + color: var(--purple-2); + font-size: 1.5rem; + line-height: 1.7; + font-weight: 600; +} + +.description { + grid-area: description; + margin: 0; + + line-height: 1.875; +} + +@media screen and (max-width: 768px) { + .card { + grid-template-columns: 90px auto; + column-gap: 1.375rem; + + max-width: 460px; + } + + .picture { + max-width: 90px; + max-height: 90px; + } + + .name, + .role, + .description { + font-size: 1rem; + line-height: 1.5; + } +} + +/* TODO: Use the correct mobile styles from figma +@media only screen and (max-width: 375px) { + .card { + grid-template-columns: 70px auto; + grid-template-rows: auto calc(0.875rem * 1.5 + 0.75rem) auto; + grid-template-areas: + "picture name" + "picture role" + "description description"; + column-gap: 1.4375rem; + align-items: end; + + max-width: 190px; + } + + .picture { + max-width: 70px; + max-height: 70px; + } + + .name, + .role, + .description { + font-size: 0.875rem; + line-height: 1.5; + } + + .role { + margin-bottom: 0.75rem; + } + + .description { + justify-self: top; + margin-top: 0.75rem; + margin-left: 0.75rem; + } +} */ diff --git a/components/TeamMemberCard.tsx b/components/TeamMemberCard.tsx new file mode 100644 index 00000000..4b9c4e73 --- /dev/null +++ b/components/TeamMemberCard.tsx @@ -0,0 +1,27 @@ +import React from "react"; +import { Image } from "./Image"; +import styles from "./TeamMemberCard.module.css"; + +interface TeamMemberCardProps { + name: string; + role: string; + image?: string; // path to image of person, relative to public directory + children: React.ReactNode; +} + +export function TeamMemberCard(props: TeamMemberCardProps) { + return ( +
+
+ {`Picture +
+

{props.name}

+

{props.role}

+
{props.children}
+
+ ); +} diff --git a/components/playground.tsx b/components/playground.tsx index 9f86fc0e..609e9566 100644 --- a/components/playground.tsx +++ b/components/playground.tsx @@ -15,13 +15,17 @@ import AltTab, { import UnavailableContent, { metadata as unavailableMetadata, } from "../content/playground/unavailable.news.mdx"; -import { metadata as teamMemberMetadata } from "../content/playground/demo.teammember.mdx"; +import { metadata as dogeMetadata } from "../content/playground/doge.team-member.mdx"; +import CodeyInfo, { + metadata as codeyMetadata, +} from "../content/playground/codey.team-member.mdx"; import { MiniEventCard } from "./MiniEventCard"; import { NewsCard } from "./NewsCard"; import { EventCard } from "./EventCard"; import { EventDescriptionCard } from "./EventDescriptionCard"; import { TeamMember } from "./TeamMember"; +import { TeamMemberCard } from "./TeamMemberCard"; const events = [ { Content: OOTBReact, metadata: OOTBReactEventMetadata }, @@ -98,17 +102,27 @@ export function TeamMemberDemo() {

- - - - - - - - - - + + + + + + + + + +
); } + +export function TeamMemberCardDemo() { + return ( +
+ + + +
+ ); +} diff --git a/content/playground/codey.team-member.mdx b/content/playground/codey.team-member.mdx new file mode 100644 index 00000000..0c42aa19 --- /dev/null +++ b/content/playground/codey.team-member.mdx @@ -0,0 +1,9 @@ +export const metadata = { + name: "Codey", + role: "Mascot", + image: "/images/playground/codeyHi.png" +} + +The one, the only, Codey! Codey is ecstatic to be your mascot for this term. +Codey loves programming and playing on their laptop. You can often find Codey +posing for event promo graphics, or chilling in the CSC discord. \ No newline at end of file diff --git a/content/playground/demo.teammember.mdx b/content/playground/demo.teammember.mdx deleted file mode 100644 index 116900b7..00000000 --- a/content/playground/demo.teammember.mdx +++ /dev/null @@ -1,5 +0,0 @@ -export const metadata = { - name: "Name Name", - role: "Role", - src: "images/playground/team-member.png" -} \ No newline at end of file diff --git a/content/playground/doge.team-member.mdx b/content/playground/doge.team-member.mdx new file mode 100644 index 00000000..0fa58e6f --- /dev/null +++ b/content/playground/doge.team-member.mdx @@ -0,0 +1,5 @@ +export const metadata = { + name: "Woof Woof", + role: "Doge", + image: "/images/playground/doge.jpg" +} \ No newline at end of file diff --git a/next-env.d.ts b/next-env.d.ts index bcee8690..458d2ae0 100644 --- a/next-env.d.ts +++ b/next-env.d.ts @@ -34,13 +34,13 @@ declare module "*.news.mdx" { export default ReactComponent; } -declare module "*.teammember.mdx" { +declare module "*.team-member.mdx" { import { ComponentType } from "react"; interface TeamMemberMetadata { name: string; role: string; - src: string; + image?: string; } const ReactComponent: ComponentType; diff --git a/pages/playground.mdx b/pages/playground.mdx index 6f7c115f..f998bb14 100644 --- a/pages/playground.mdx +++ b/pages/playground.mdx @@ -3,9 +3,12 @@ import { NewsCardDemo, EventDescriptionCardDemo, EventCardDemo, - TeamMemberDemo + TeamMemberDemo, + TeamMemberCardDemo, } from "../components/playground"; +import { TeamMemberCard } from "../components/TeamMemberCard"; + # Playground ## `` @@ -49,3 +52,12 @@ The `` component has an image of the team member along with their It is used on the Meet the Team page for non executive members. + +--- + +## `` + +The `` component is used on the "Meet the Team!" page to +display information about the execs: prez, VP, trez, AVP, and syscom overlord. + + diff --git a/public/images/playground/codeyHi.png b/public/images/playground/codeyHi.png new file mode 100644 index 0000000000000000000000000000000000000000..0445cd82bbc68274c617b95468f8564dbbb32715 GIT binary patch literal 52005 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 literal 0 HcmV?d00001 diff --git a/public/images/playground/doge.jpg b/public/images/playground/doge.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0bc186870b0049aaf712dbf5b93e0e003e98eae5 GIT binary patch literal 64612 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

U=duGTTK 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 z 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 diff --git a/public/images/team-member-placeholder.svg b/public/images/team-member-placeholder.svg new file mode 100644 index 00000000..3de69d51 --- /dev/null +++ b/public/images/team-member-placeholder.svg @@ -0,0 +1,3 @@ + + + From 1dcc97368da9eb93c8e98afa1bfe6b1148872adb Mon Sep 17 00:00:00 2001 From: Adi Thakral Date: Mon, 24 May 2021 18:58:28 +0000 Subject: [PATCH 12/13] Convert rems to px and use calc to convert on build time --- components/EventCard.module.css | 18 +- components/EventDescriptionCard.module.css | 28 +- components/MiniEventCard.module.css | 14 +- components/Navbar.module.css | 26 +- components/NewsCard.module.css | 20 +- components/TeamMember.module.css | 6 +- components/TeamMemberCard.module.css | 46 +- components/playground.module.css | 44 +- package-lock.json | 3495 +++++++++++++++++++- package.json | 4 + postcss.config.json | 18 + 11 files changed, 3596 insertions(+), 123 deletions(-) create mode 100644 postcss.config.json diff --git a/components/EventCard.module.css b/components/EventCard.module.css index 8c538d37..1eb720af 100644 --- a/components/EventCard.module.css +++ b/components/EventCard.module.css @@ -1,23 +1,23 @@ .card { display: flex; flex-direction: row; - max-width: 1000px; + max-width: calc(1000rem / 16); box-sizing: border-box; - padding: 24px; + padding: calc(24rem / 16); } .card aside { - flex: 0 0 144px; - margin-right: 24px; + flex: 0 0 calc(144rem / 16); + margin-right: calc(24rem / 16); } .card aside img { width: 100%; - margin-bottom: 16px; + margin-bottom: 1rem; } .spacer { - margin-top: 76px; + margin-top: calc(76rem / 16); } .registerButton { @@ -25,7 +25,7 @@ } .content > h2 { - font-size: 24px; + font-size: calc(24rem / 16); font-weight: 700; font-style: normal; margin-top: 0; @@ -35,11 +35,11 @@ .content, .content > h3 { color: var(--purple-2); - font-size: 14px; + font-size: calc(14rem / 16); font-weight: 400; font-style: normal; margin-top: 0; - margin-bottom: 14px; + margin-bottom: calc(14rem / 16); } .content { diff --git a/components/EventDescriptionCard.module.css b/components/EventDescriptionCard.module.css index 965a0a58..1c0dbfa5 100644 --- a/components/EventDescriptionCard.module.css +++ b/components/EventDescriptionCard.module.css @@ -1,16 +1,16 @@ .card { display: flex; box-sizing: border-box; - max-width: 540px; - padding: 1.5rem; - border-radius: 4px; + max-width: calc(540rem / 16); + padding: calc(24rem / 16); + border-radius: calc(4rem / 16); background-color: white; } .poster { - width: 150px; - height: 150px; - margin-right: 1.25rem; + width: calc(150rem / 16); + height: calc(150rem / 16); + margin-right: calc(20rem / 16); } .details { @@ -21,19 +21,19 @@ .name { color: var(--purple-2); font-weight: bolder; - font-size: 1.125rem; - line-height: 1.6875rem; + font-size: calc(18rem / 16); + line-height: calc(27rem / 16); margin: 0; } .desc { color: var(--purple-2); - font-size: 0.75rem; - margin-top: 0.75rem; + font-size: calc(12rem / 16); + margin-top: calc(12rem / 16); } .spacer { - height: 35px; + height: calc(35rem / 16); } .button { @@ -43,7 +43,7 @@ } .logo { - width: 30px; + width: calc(30rem / 16); position: absolute; bottom: 0; right: 0; @@ -53,10 +53,10 @@ margin: 0; color: var(--blue-1); font-weight: bolder; - font-size: 0.75rem; + font-size: calc(12rem / 16); } -@media only screen and (max-width: 768px) { +@media only screen and (max-width: calc(768rem / 16)) { .card { padding: 0; background-color: #e1eefa; diff --git a/components/MiniEventCard.module.css b/components/MiniEventCard.module.css index a96ea9f1..0ed33300 100644 --- a/components/MiniEventCard.module.css +++ b/components/MiniEventCard.module.css @@ -1,24 +1,24 @@ .miniEventCard { - max-width: 936px; + max-width: calc(936rem / 16); box-sizing: border-box; position: relative; color: var(--purple-2); - padding: 1.25rem; - font-size: 0.875rem; + padding: calc(20rem / 16); + font-size: calc(14rem / 16); } .name { display: flex; - font-size: 1.125rem; + font-size: calc(18rem / 16); margin: 0; } .nameSpacer { - width: 140px; + width: calc(140rem / 16); } .info { - margin-bottom: 0.75rem; + margin-bottom: calc(12rem / 16); } .details { @@ -27,7 +27,7 @@ right: 0; cursor: pointer; color: var(--blue-2); - margin: 1.25rem; + margin: calc(20rem / 16); } .miniEventCard[open] .shortDescription { diff --git a/components/Navbar.module.css b/components/Navbar.module.css index 0bac891e..96c13beb 100644 --- a/components/Navbar.module.css +++ b/components/Navbar.module.css @@ -14,9 +14,9 @@ align-items: center; width: stretch; - max-width: 1440px; + max-width: calc(1440rem / 16); height: auto; - padding: 1.75rem 8.5rem; + padding: calc(28rem / 16) calc(136rem / 16); } .logo { @@ -30,7 +30,7 @@ } .logo img { - width: 96px; + width: calc(96rem / 16); } .navMenu { @@ -43,7 +43,7 @@ margin: 0; padding: 0; - width: 32rem; + width: calc(512rem / 16); } .navMenu li { @@ -97,14 +97,14 @@ position: absolute; margin: 0; - margin-top: 3rem; + margin-top: calc(48rem / 16); padding: 0; - border-radius: 0.5rem; + border-radius: calc(8rem / 16); background-color: var(--white); - box-shadow: 0 0.5rem 1rem var(--blue-1-20); + box-shadow: 0 calc(8rem / 16) 1rem var(--blue-1-20); - font-size: 0.875rem; + font-size: calc(14rem / 16); } .dropdown > li { @@ -112,7 +112,7 @@ } .dropdown > li > a { - padding: 0.5rem; + padding: calc(8rem / 16); width: 100%; box-sizing: border-box; } @@ -124,12 +124,12 @@ .dropdown > li:first-child > a { padding-top: 1rem; - border-radius: 0.5rem 0.5rem 0 0; + border-radius: calc(8rem / 16) calc(8rem / 16) 0 0; } .dropdown > li:last-child > a { padding-bottom: 1rem; - border-radius: 0 0 0.5rem 0.5rem; + border-radius: 0 0 calc(8rem / 16) calc(8rem / 16); } .navMenu > li .dropdown { @@ -144,8 +144,8 @@ /* On a smaller desktop screen, keep the same navbar layout but decrease the * horizontal padding so it still fits */ -@media screen and (max-width: 960px) { +@media screen and (max-width: calc(960rem / 16)) { .navContent { - padding: 1.75rem 4rem; + padding: calc(28rem / 16) calc(64rem / 16); } } diff --git a/components/NewsCard.module.css b/components/NewsCard.module.css index ee79eb84..18578931 100644 --- a/components/NewsCard.module.css +++ b/components/NewsCard.module.css @@ -1,31 +1,31 @@ .card { - padding: 1.6875rem 2.4375rem; - max-width: 524px; + padding: calc(27rem / 16) calc(39rem / 16); + max-width: calc(524rem / 16); background-color: white; } .date { color: var(--purple-2); - font-size: 1.125rem; + font-size: calc(18rem / 16); font-weight: bold; - line-height: 1.6875rem; + line-height: calc(27rem / 16); } .author { color: var(--purple-1); font-style: normal; - line-height: 1.3125rem; - font-size: 0.875rem; - margin: 0.3125rem 0rem 0.4375rem 0rem; + line-height: calc(21rem / 16); + font-size: calc(14rem / 16); + margin: calc(5rem / 16) 0 calc(7rem / 16) 0; } .content { - line-height: 1.3125rem; + line-height: calc(21rem / 16); color: var(--purple-2); - font-size: 0.875rem; + font-size: calc(14rem / 16); } -@media only screen and (max-width: 768px) { +@media only screen and (max-width: calc(768rem / 16)) { .card { padding: 0; background-color: transparent; diff --git a/components/TeamMember.module.css b/components/TeamMember.module.css index 902d099d..d29a6f85 100644 --- a/components/TeamMember.module.css +++ b/components/TeamMember.module.css @@ -1,5 +1,5 @@ .container { - max-width: 7.875rem; + max-width: calc(126rem / 16); display: flex; flex-direction: column; margin: 0; @@ -13,8 +13,8 @@ .caption { text-align: center; - font-size: 0.875rem; - margin-top: 1.5rem; + font-size: calc(14rem / 16); + margin-top: calc(24rem / 16); } .name { diff --git a/components/TeamMemberCard.module.css b/components/TeamMemberCard.module.css index 35a7882f..dff237e9 100644 --- a/components/TeamMemberCard.module.css +++ b/components/TeamMemberCard.module.css @@ -1,24 +1,24 @@ .card { display: grid; - grid-template-columns: 126px auto; + grid-template-columns: calc(126rem / 16) auto; grid-template-areas: "picture name" "picture role" "picture description"; - column-gap: 2rem; + column-gap: calc(32rem / 16); row-gap: 0; justify-items: start; align-items: start; - max-width: 847px; + max-width: calc(847rem / 16); } .picture { grid-area: picture; justify-self: center; - max-width: 126px; - max-height: 126px; + max-width: calc(126rem / 16); + max-height: calc(126rem / 16); clip-path: circle(50%); } @@ -32,7 +32,7 @@ margin: 0; color: var(--blue-1); - font-size: 2.25rem; + font-size: calc(36rem / 16); line-height: 1.1; font-weight: 700; } @@ -42,7 +42,7 @@ margin: 0; color: var(--purple-2); - font-size: 1.5rem; + font-size: calc(24rem / 16); line-height: 1.7; font-weight: 600; } @@ -54,17 +54,17 @@ line-height: 1.875; } -@media screen and (max-width: 768px) { +@media screen and (max-width: calc(768rem / 16)) { .card { - grid-template-columns: 90px auto; - column-gap: 1.375rem; + grid-template-columns: calc(90rem / 16) auto; + column-gap: calc(22rem / 16); - max-width: 460px; + max-width: calc(460rem / 16); } .picture { - max-width: 90px; - max-height: 90px; + max-width: calc(90rem / 16); + max-height: calc(90rem / 16); } .name, @@ -76,10 +76,10 @@ } /* TODO: Use the correct mobile styles from figma -@media only screen and (max-width: 375px) { +@media only screen and (max-width: calc(375rem / 16)) { .card { - grid-template-columns: 70px auto; - grid-template-rows: auto calc(0.875rem * 1.5 + 0.75rem) auto; + grid-template-columns: calc(70rem / 16) auto; + grid-template-rows: auto calc(calc(14rem / 16) * 1.5 + calc(12rem / 16)) auto; grid-template-areas: "picture name" "picture role" @@ -87,28 +87,28 @@ column-gap: 1.4375rem; align-items: end; - max-width: 190px; + max-width: calc(190rem / 16); } .picture { - max-width: 70px; - max-height: 70px; + max-width: calc(70rem / 16); + max-height: calc(70rem / 16); } .name, .role, .description { - font-size: 0.875rem; + font-size: calc(14rem / 16); line-height: 1.5; } .role { - margin-bottom: 0.75rem; + margin-bottom: calc(12rem / 16); } .description { justify-self: top; - margin-top: 0.75rem; - margin-left: 0.75rem; + margin-top: calc(12rem / 16); + margin-left: calc(12rem / 16); } } */ diff --git a/components/playground.module.css b/components/playground.module.css index 4afb6d8b..b7938a64 100644 --- a/components/playground.module.css +++ b/components/playground.module.css @@ -3,7 +3,7 @@ } .newsDemo { - padding: 50px; + padding: calc(50rem / 16); background-color: var(--off-white); display: inline-block; } @@ -12,16 +12,16 @@ font-style: normal; font-weight: bold; color: var(--purple-2); - font-size: 24px; - line-height: 36px; - margin-bottom: 14px; + font-size: calc(24rem / 16); + line-height: calc(36rem / 16); + margin-bottom: calc(14rem / 16); } .newsDesc { font-style: normal; font-weight: normal; - font-size: 14px; - line-height: 21px; + font-size: calc(14rem / 16); + line-height: calc(21rem / 16); white-space: pre-line; color: var(--purple-2); vertical-align: baseline; @@ -29,19 +29,19 @@ .news > hr { border: none; - height: 1px; + height: calc(1rem / 16); background-color: var(--purple-2); - margin: 0 0 13px 0; + margin: 0 0 calc(13rem / 16) 0; } .eventDescriptionCardDemo { - padding: 50px 0; + padding: calc(50rem / 16) 0; background-color: var(--off-white); display: inline-block; } .eventDescriptionCardDemo > * { - margin: 12px 50px; + margin: calc(12rem / 16) calc(50rem / 16); } .eventDescriptionCardDemo > *:first-child { @@ -53,41 +53,41 @@ } .teamMemberDemo { - padding: 10px 50px 30px 50px; - max-width: 847px; + padding: calc(10rem / 16) calc(50rem / 16) calc(30rem / 16) calc(50rem / 16); + max-width: calc(847rem / 16); } .committee { margin: 0; color: var(--purple-2); font-weight: 600; - font-size: 24px; - line-height: 36px; + font-size: calc(24rem / 16); + line-height: calc(36rem / 16); } .teamMemberDemo > hr { border: none; - height: 1px; + height: calc(1rem / 16); background-color: var(--blue-2); width: 100%; - margin-top: 24px; - margin-bottom: 46px; + margin-top: calc(24rem / 16); + margin-bottom: calc(46rem / 16); } .teamMembers { display: grid; - grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); - row-gap: 2.6875rem; - column-gap: 3.3125rem; + grid-template-columns: repeat(auto-fill, minmax(calc(100rem / 16), 1fr)); + row-gap: calc(43rem / 16); + column-gap: calc(53rem / 16); } -@media only screen and (max-width: 768px) { +@media only screen and (max-width: calc(768rem / 16)) { .newsDemo, .eventDescriptionCardDemo { background-color: #e1eefa; } .eventDescriptionCardDemo > * { - margin: 50px; + margin: calc(50rem / 16); } } diff --git a/package-lock.json b/package-lock.json index ee4f0e5f..5e0fee35 100644 --- a/package-lock.json +++ b/package-lock.json @@ -30,6 +30,10 @@ "eslint-plugin-prettier": "^3.4.0", "eslint-plugin-react": "^7.23.2", "eslint-plugin-react-hooks": "^4.2.0", + "postcss": "^8.3.0", + "postcss-calc": "^8.0.0", + "postcss-flexbugs-fixes": "^5.0.2", + "postcss-preset-env": "^6.7.0", "typescript": "^4.2.4" } }, @@ -537,6 +541,15 @@ "to-fast-properties": "^2.0.0" } }, + "node_modules/@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/@eslint/eslintrc": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", @@ -1457,6 +1470,67 @@ "node": ">=8" } }, + "node_modules/autoprefixer": { + "version": "9.8.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", + "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", + "dev": true, + "dependencies": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "colorette": "^1.2.1", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + }, + "node_modules/autoprefixer/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/autoprefixer/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/autoprefixer/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/available-typed-arrays": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz", @@ -1986,11 +2060,192 @@ "node": "*" } }, + "node_modules/css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5" + }, + "bin": { + "css-blank-pseudo": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-blank-pseudo/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-blank-pseudo/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-blank-pseudo/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" + }, + "bin": { + "css-has-pseudo": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-has-pseudo/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-has-pseudo/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-has-pseudo/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5" + }, + "bin": { + "css-prefers-color-scheme": "cli.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/css-prefers-color-scheme/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/css-prefers-color-scheme/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-prefers-color-scheme/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/css.escape": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", "integrity": "sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=" }, + "node_modules/cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==", + "dev": true + }, + "node_modules/cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/cssnano-preset-simple": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cssnano-preset-simple/-/cssnano-preset-simple-1.2.2.tgz", @@ -2881,6 +3136,12 @@ "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, + "node_modules/flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", + "dev": true + }, "node_modules/foreach": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", @@ -3375,6 +3636,12 @@ "node": ">=0.8.19" } }, + "node_modules/indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -4157,9 +4424,9 @@ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "node_modules/nanoid": { - "version": "3.1.22", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz", - "integrity": "sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==", + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", + "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -4262,6 +4529,32 @@ } } }, + "node_modules/next/node_modules/postcss": { + "version": "8.1.7", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.1.7.tgz", + "integrity": "sha512-llCQW1Pz4MOPwbZLmOddGM9eIJ8Bh7SZ2Oj5sxZva77uVaotYDsYTch1WBTNu7fUY0fpWp0fdt7uW40D4sRiiQ==", + "dependencies": { + "colorette": "^1.2.1", + "line-column": "^1.0.2", + "nanoid": "^3.1.16", + "source-map": "^0.6.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/next/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/node-fetch": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.1.tgz", @@ -4433,6 +4726,21 @@ "node": ">=0.10.0" } }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -4768,14 +5076,14 @@ } }, "node_modules/postcss": { - "version": "8.1.7", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.1.7.tgz", - "integrity": "sha512-llCQW1Pz4MOPwbZLmOddGM9eIJ8Bh7SZ2Oj5sxZva77uVaotYDsYTch1WBTNu7fUY0fpWp0fdt7uW40D4sRiiQ==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.0.tgz", + "integrity": "sha512-+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==", + "dev": true, "dependencies": { - "colorette": "^1.2.1", - "line-column": "^1.0.2", - "nanoid": "^3.1.16", - "source-map": "^0.6.1" + "colorette": "^1.2.2", + "nanoid": "^3.1.23", + "source-map-js": "^0.6.2" }, "engines": { "node": "^10 || ^12 || >=14" @@ -4785,14 +5093,1677 @@ "url": "https://opencollective.com/postcss/" } }, - "node_modules/postcss/node_modules/source-map": { + "node_modules/postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, "engines": { "node": ">=0.10.0" } }, + "node_modules/postcss-attribute-case-insensitive/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-calc": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.0.0.tgz", + "integrity": "sha512-5NglwDrcbiy8XXfPM11F3HeC6hoT9W7GUH/Zi5U/p7u3Irv4rHhdDcIZwG0llHXV4ftsBjpfWMXAnXNl4lnt8g==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + }, + "peerDependencies": { + "postcss": "^8.2.2" + } + }, + "node_modules/postcss-calc/node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-calc/node_modules/postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-functional-notation/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-functional-notation/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-functional-notation/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "dev": true, + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-gray/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-gray/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-gray/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-hex-alpha/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-hex-alpha/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-hex-alpha/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "dev": true, + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-mod-function/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-mod-function/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-mod-function/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-color-rebeccapurple": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-color-rebeccapurple/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-color-rebeccapurple/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-color-rebeccapurple/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-media/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-media/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-custom-media/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-properties/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-properties/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-custom-properties/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-custom-selectors/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-custom-selectors/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-custom-selectors/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-double-position-gradients/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-double-position-gradients/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-double-position-gradients/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-env-function/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-env-function/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-env-function/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-flexbugs-fixes": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-5.0.2.tgz", + "integrity": "sha512-18f9voByak7bTktR2QgDveglpn9DTbBWPUzSOe9g0N4WR/2eSt6Vrcbf0hmspvMI6YWGywz6B9f7jzpFNJJgnQ==", + "dev": true, + "peerDependencies": { + "postcss": "^8.1.4" + } + }, + "node_modules/postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-focus-visible/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-focus-visible/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-focus-visible/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-focus-within/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-focus-within/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-focus-within/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-font-variant": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", + "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-font-variant/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-font-variant/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-font-variant/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-gap-properties/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-gap-properties/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-gap-properties/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-image-set-function/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-image-set-function/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-image-set-function/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-initial": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", + "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-initial/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-initial/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-initial/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "dev": true, + "dependencies": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-lab-function/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-lab-function/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-lab-function/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-logical/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-logical/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-logical/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-media-minmax/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-media-minmax/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-media-minmax/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-nesting/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-nesting/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-nesting/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-overflow-shorthand/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-overflow-shorthand/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-overflow-shorthand/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-page-break/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-page-break/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-page-break/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-place/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-place/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-place/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "dev": true, + "dependencies": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-preset-env/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-preset-env/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-preset-env/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "dev": true, + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-replace-overflow-wrap/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-replace-overflow-wrap/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-replace-overflow-wrap/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-selector-matches/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-selector-matches/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-selector-matches/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-selector-not": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", + "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "node_modules/postcss-selector-not/node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-selector-not/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss-selector-not/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "dependencies": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true + }, + "node_modules/postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dev": true, + "dependencies": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + }, + "engines": { + "node": ">=6.14.4" + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -5489,6 +7460,15 @@ "node": ">= 8" } }, + "node_modules/source-map-js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", + "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/space-separated-tokens": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", @@ -5975,6 +7955,12 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, "node_modules/unist-builder": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", @@ -6806,6 +8792,12 @@ "to-fast-properties": "^2.0.0" } }, + "@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==", + "dev": true + }, "@eslint/eslintrc": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz", @@ -7474,6 +9466,49 @@ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true }, + "autoprefixer": { + "version": "9.8.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", + "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", + "dev": true, + "requires": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "colorette": "^1.2.1", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, "available-typed-arrays": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz", @@ -7903,11 +9938,135 @@ "randomfill": "^1.0.3" } }, + "css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", + "dev": true, + "requires": { + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "dev": true, + "requires": { + "postcss": "^7.0.5" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, "css.escape": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", "integrity": "sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=" }, + "cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==", + "dev": true + }, + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", + "dev": true + }, "cssnano-preset-simple": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/cssnano-preset-simple/-/cssnano-preset-simple-1.2.2.tgz", @@ -8585,6 +10744,12 @@ "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", "dev": true }, + "flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", + "dev": true + }, "foreach": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", @@ -8940,6 +11105,12 @@ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", "dev": true }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", @@ -9486,9 +11657,9 @@ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, "nanoid": { - "version": "3.1.22", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.22.tgz", - "integrity": "sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ==" + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", + "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==" }, "native-url": { "version": "0.3.4", @@ -9559,6 +11730,24 @@ "util": "0.12.3", "vm-browserify": "1.1.2", "watchpack": "2.1.1" + }, + "dependencies": { + "postcss": { + "version": "8.1.7", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.1.7.tgz", + "integrity": "sha512-llCQW1Pz4MOPwbZLmOddGM9eIJ8Bh7SZ2Oj5sxZva77uVaotYDsYTch1WBTNu7fUY0fpWp0fdt7uW40D4sRiiQ==", + "requires": { + "colorette": "^1.2.1", + "line-column": "^1.0.2", + "nanoid": "^3.1.16", + "source-map": "^0.6.1" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + } } }, "node-fetch": { @@ -9726,6 +11915,18 @@ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -9972,23 +12173,1261 @@ } }, "postcss": { - "version": "8.1.7", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.1.7.tgz", - "integrity": "sha512-llCQW1Pz4MOPwbZLmOddGM9eIJ8Bh7SZ2Oj5sxZva77uVaotYDsYTch1WBTNu7fUY0fpWp0fdt7uW40D4sRiiQ==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.0.tgz", + "integrity": "sha512-+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==", + "dev": true, "requires": { - "colorette": "^1.2.1", - "line-column": "^1.0.2", - "nanoid": "^3.1.16", - "source-map": "^0.6.1" + "colorette": "^1.2.2", + "nanoid": "^3.1.23", + "source-map-js": "^0.6.2" + } + }, + "postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" }, "dependencies": { + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, + "postcss-calc": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.0.0.tgz", + "integrity": "sha512-5NglwDrcbiy8XXfPM11F3HeC6hoT9W7GUH/Zi5U/p7u3Irv4rHhdDcIZwG0llHXV4ftsBjpfWMXAnXNl4lnt8g==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + }, + "dependencies": { + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + } + } + }, + "postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "dev": true, + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "dev": true, + "requires": { + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "dev": true, + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-color-rebeccapurple": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "dev": true, + "requires": { + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "dev": true, + "requires": { + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-flexbugs-fixes": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-5.0.2.tgz", + "integrity": "sha512-18f9voByak7bTktR2QgDveglpn9DTbBWPUzSOe9g0N4WR/2eSt6Vrcbf0hmspvMI6YWGywz6B9f7jzpFNJJgnQ==", + "dev": true, + "requires": {} + }, + "postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-font-variant": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.1.tgz", + "integrity": "sha512-I3ADQSTNtLTTd8uxZhtSOrTCQ9G4qUVKPjHiDk0bV75QSxXjVWiJVJ2VLdspGUi9fbW9BcjKJoRvxAH1pckqmA==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-initial": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.4.tgz", + "integrity": "sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "dev": true, + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "dev": true, + "requires": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "dev": true, + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-selector-not": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.1.tgz", + "integrity": "sha512-YolvBgInEK5/79C+bdFMyzqTg6pkYqDbzZIST/PDMqa/o3qtXenD05apBG2jLgT0/BQ77d4U2UK12jWpilqMAQ==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "dev": true, + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true + }, + "postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "dev": true, + "requires": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, "prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -10497,6 +13936,12 @@ "whatwg-url": "^7.0.0" } }, + "source-map-js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", + "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "dev": true + }, "space-separated-tokens": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", @@ -10868,6 +14313,12 @@ "vfile": "^4.0.0" } }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, "unist-builder": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", diff --git a/package.json b/package.json index 21f6686d..f7d1bc39 100644 --- a/package.json +++ b/package.json @@ -33,6 +33,10 @@ "eslint-plugin-prettier": "^3.4.0", "eslint-plugin-react": "^7.23.2", "eslint-plugin-react-hooks": "^4.2.0", + "postcss": "^8.3.0", + "postcss-calc": "^8.0.0", + "postcss-flexbugs-fixes": "^5.0.2", + "postcss-preset-env": "^6.7.0", "typescript": "^4.2.4" } } diff --git a/postcss.config.json b/postcss.config.json new file mode 100644 index 00000000..8c2ac0e8 --- /dev/null +++ b/postcss.config.json @@ -0,0 +1,18 @@ +{ + "plugins": [ + "postcss-flexbugs-fixes", + [ + "postcss-preset-env", + { + "autoprefixer": { + "flexbox": "no-2009" + }, + "stage": 3, + "features": { + "custom-properties": false + } + } + ], + "postcss-calc" + ] +} \ No newline at end of file From 4f5496ba8cb40f555970a5759d773ba49baa6a2a Mon Sep 17 00:00:00 2001 From: Aditya Thakral Date: Mon, 24 May 2021 15:27:44 -0400 Subject: [PATCH 13/13] Use 16px as default font-size for desktops --- components/EventCard.module.css | 14 ++++++------- components/EventCard.tsx | 6 +++--- components/EventDescriptionCard.module.css | 3 +-- components/EventDescriptionCard.tsx | 6 +++--- components/MiniEventCard.module.css | 1 + components/NewsCard.module.css | 1 - components/TeamMember.module.css | 1 - components/TeamMemberCard.module.css | 2 -- pages/_app.css | 24 ++++++++++++---------- 9 files changed, 28 insertions(+), 30 deletions(-) diff --git a/components/EventCard.module.css b/components/EventCard.module.css index 1eb720af..0039d275 100644 --- a/components/EventCard.module.css +++ b/components/EventCard.module.css @@ -24,7 +24,7 @@ width: 100%; } -.content > h2 { +.content > h1 { font-size: calc(24rem / 16); font-weight: 700; font-style: normal; @@ -33,15 +33,15 @@ } .content, -.content > h3 { +.content > h2 { color: var(--purple-2); - font-size: calc(14rem / 16); font-weight: 400; font-style: normal; margin-top: 0; - margin-bottom: calc(14rem / 16); -} - -.content { margin-bottom: 0; } + +.content > h2 { + font-size: 1rem; + margin-bottom: calc(14rem / 16); +} diff --git a/components/EventCard.tsx b/components/EventCard.tsx index 52118a20..e782ec0a 100644 --- a/components/EventCard.tsx +++ b/components/EventCard.tsx @@ -37,10 +37,10 @@ export function EventCard({ )}

-

{name}

-

+

{name}

+

-

+
{children}
diff --git a/components/EventDescriptionCard.module.css b/components/EventDescriptionCard.module.css index 1c0dbfa5..f8517e4f 100644 --- a/components/EventDescriptionCard.module.css +++ b/components/EventDescriptionCard.module.css @@ -28,7 +28,6 @@ .desc { color: var(--purple-2); - font-size: calc(12rem / 16); margin-top: calc(12rem / 16); } @@ -53,7 +52,7 @@ margin: 0; color: var(--blue-1); font-weight: bolder; - font-size: calc(12rem / 16); + font-size: calc(14rem / 16); } @media only screen and (max-width: calc(768rem / 16)) { diff --git a/components/EventDescriptionCard.tsx b/components/EventDescriptionCard.tsx index e502054a..3e9e5970 100644 --- a/components/EventDescriptionCard.tsx +++ b/components/EventDescriptionCard.tsx @@ -55,10 +55,10 @@ export function EventDescriptionCard({ {poster && {name}}
-

{name}

-

+

{name}

+

-

+
{children}
diff --git a/components/MiniEventCard.module.css b/components/MiniEventCard.module.css index 0ed33300..4675d9ae 100644 --- a/components/MiniEventCard.module.css +++ b/components/MiniEventCard.module.css @@ -4,6 +4,7 @@ position: relative; color: var(--purple-2); padding: calc(20rem / 16); + /* FIXME: Check figma for updated size */ font-size: calc(14rem / 16); } diff --git a/components/NewsCard.module.css b/components/NewsCard.module.css index 18578931..bd79bedb 100644 --- a/components/NewsCard.module.css +++ b/components/NewsCard.module.css @@ -22,7 +22,6 @@ .content { line-height: calc(21rem / 16); color: var(--purple-2); - font-size: calc(14rem / 16); } @media only screen and (max-width: calc(768rem / 16)) { diff --git a/components/TeamMember.module.css b/components/TeamMember.module.css index d29a6f85..e92a14a5 100644 --- a/components/TeamMember.module.css +++ b/components/TeamMember.module.css @@ -13,7 +13,6 @@ .caption { text-align: center; - font-size: calc(14rem / 16); margin-top: calc(24rem / 16); } diff --git a/components/TeamMemberCard.module.css b/components/TeamMemberCard.module.css index dff237e9..0c4af7b1 100644 --- a/components/TeamMemberCard.module.css +++ b/components/TeamMemberCard.module.css @@ -70,7 +70,6 @@ .name, .role, .description { - font-size: 1rem; line-height: 1.5; } } @@ -98,7 +97,6 @@ .name, .role, .description { - font-size: calc(14rem / 16); line-height: 1.5; } diff --git a/pages/_app.css b/pages/_app.css index 9ed11d6d..d55f4e2c 100644 --- a/pages/_app.css +++ b/pages/_app.css @@ -1,13 +1,9 @@ -* { - font-family: "Poppins", "sans-serif"; -} - -code, pre { - font-family: monospace; -} - -/* Default is light theme */ body { + font-family: "Poppins", "sans-serif"; + font-size: 1rem; + margin: 0; + + /* Default is light theme */ --white: #ffffff; --off-white: #fdf8f5; --teal-1: #76ffdc; @@ -22,16 +18,16 @@ body { #1481e3 -17.95%, #4ed4b2 172.82% ); - - margin: 0; } +/* FIXME: Dark theme is the same as light theme right now */ .dark { --white: #ffffff; --off-white: #fdf8f5; --teal-1: #76ffdc; --teal-2: #4ed4b2; --blue-1: #5caff9; + --blue-1-20: #5caff934; --blue-2: #1482e3; --purple-1: #525284; --purple-2: #2a2a62; @@ -41,3 +37,9 @@ body { #4ed4b2 172.82% ); } + +@media only screen and (max-width: calc(375rem / 16)) { + body { + font-size: calc(14rem / 16); + } +}