├── .gitignore
├── next-env.d.ts
├── package.json
├── postcss.config.js
├── src
├── hooks
│ └── throttle.ts
├── layouts
│ └── centered.tsx
├── pages
│ ├── [id].tsx
│ └── _app.tsx
└── styles
│ └── globals.css
├── tailwind.config.js
├── tsconfig.json
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .next
3 | .env
4 | dist
5 | .DS_Store
6 | .idea
7 | .vscode
8 | yarn-error.log
9 | hop.yml
10 |
--------------------------------------------------------------------------------
/next-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | ///
3 |
4 | // NOTE: This file should not be edited
5 | // see https://nextjs.org/docs/basic-features/typescript for more information.
6 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "obs-spotify",
3 | "version": "1.0.0",
4 | "repository": "git@github.com:alii/obs-spotify.git",
5 | "author": "Alistair Smith ",
6 | "scripts": {
7 | "dev": "next",
8 | "build": "next build",
9 | "start": "next start"
10 | },
11 | "dependencies": {
12 | "next": "^12.2.5",
13 | "react": "^18.2.0",
14 | "react-dom": "^18.2.0",
15 | "react-spinners": "^0.13.4",
16 | "use-lanyard": "^1.2.0",
17 | "zod": "^3.19.0"
18 | },
19 | "devDependencies": {
20 | "@types/node": "^18.7.16",
21 | "@types/react-dom": "^18.0.6",
22 | "autoprefixer": "^10.4.8",
23 | "postcss": "^8.4.16",
24 | "tailwindcss": "^3.1.8",
25 | "typescript": "^4.8.2"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | plugins: {
3 | tailwindcss: {},
4 | autoprefixer: {},
5 | },
6 | }
7 |
--------------------------------------------------------------------------------
/src/hooks/throttle.ts:
--------------------------------------------------------------------------------
1 | import { useState, useRef, useEffect } from "react";
2 |
3 | export function useThrottle(value: T, limit = 1000) {
4 | const [throttledValue, setThrottledValue] = useState(value);
5 | const lastRan = useRef(Date.now());
6 |
7 | useEffect(() => {
8 | const handler = setTimeout(() => {
9 | if (Date.now() - lastRan.current >= limit) {
10 | setThrottledValue(value);
11 | lastRan.current = Date.now();
12 | }
13 | }, limit - (Date.now() - lastRan.current));
14 |
15 | return () => {
16 | clearTimeout(handler);
17 | };
18 | }, [value, limit]);
19 |
20 | return throttledValue;
21 | }
22 |
--------------------------------------------------------------------------------
/src/layouts/centered.tsx:
--------------------------------------------------------------------------------
1 | import { PropsWithChildren } from "react";
2 |
3 | export function Centered({ children }: PropsWithChildren) {
4 | return {children}
;
5 | }
6 |
--------------------------------------------------------------------------------
/src/pages/[id].tsx:
--------------------------------------------------------------------------------
1 | import { GetServerSideProps } from "next";
2 | import { z } from "zod";
3 | import { useLanyardWs } from "use-lanyard";
4 | import { RotateLoader } from "react-spinners";
5 | import { useThrottle } from "../hooks/throttle";
6 | import { Centered } from "../layouts/centered";
7 | import { useEffect, useState } from "react";
8 |
9 | interface Props {
10 | userId: string;
11 | }
12 |
13 | function IndexPage(props: Props) {
14 | const data = useThrottle(useLanyardWs(props.userId));
15 | const [, rerender] = useState({});
16 |
17 | useEffect(() => {
18 | const interval = setInterval(() => {
19 | rerender({});
20 | }, 1000);
21 |
22 | return () => {
23 | clearInterval(interval);
24 | };
25 | }, []);
26 |
27 | if (!data) {
28 | // Loading state
29 | return (
30 |
31 |
32 |
33 | );
34 | }
35 |
36 | if (!data.spotify) {
37 | return null;
38 | }
39 |
40 | const total = data.spotify.timestamps.end - data.spotify.timestamps.start;
41 | const progress = 100 - (100 * (data.spotify.timestamps.end - new Date().getTime())) / total;
42 |
43 | return (
44 |
45 |
46 |
47 |

48 |
49 |
50 |
51 |
52 |
{data.spotify.song}
53 |
{data.spotify.artist}
54 |
55 |
56 |
63 |
64 |
65 |
66 | );
67 | }
68 |
69 | export default function Page(props: Props) {
70 | return (
71 |
72 |
73 |
74 | );
75 | }
76 |
77 | export const getServerSideProps: GetServerSideProps = async ctx => {
78 | const schema = z.object({
79 | id: z.string(),
80 | });
81 |
82 | const params = schema.parse(ctx.params);
83 |
84 | return {
85 | props: {
86 | userId: params.id,
87 | },
88 | };
89 | };
90 |
--------------------------------------------------------------------------------
/src/pages/_app.tsx:
--------------------------------------------------------------------------------
1 | import "tailwindcss/tailwind.css";
2 | import "../styles/globals.css";
3 |
4 | import { AppProps } from "next/app";
5 |
6 | export default function App({ Component, pageProps }: AppProps) {
7 | return ;
8 | }
9 |
--------------------------------------------------------------------------------
/src/styles/globals.css:
--------------------------------------------------------------------------------
1 | body {
2 | @apply text-white bg-black;
3 | }
4 |
--------------------------------------------------------------------------------
/tailwind.config.js:
--------------------------------------------------------------------------------
1 | // @ts-check
2 |
3 | /** @type {import('tailwindcss').Config} */
4 | module.exports = {
5 | content: ["./src/**/*.{ts,tsx}"],
6 | theme: {
7 | extend: {},
8 | },
9 | plugins: [],
10 | };
11 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ESNext",
4 | "lib": ["dom", "dom.iterable", "esnext"],
5 | "allowJs": true,
6 | "skipLibCheck": true,
7 | "esModuleInterop": true,
8 | "strict": true,
9 | "forceConsistentCasingInFileNames": true,
10 | "module": "esnext",
11 | "moduleResolution": "node",
12 | "resolveJsonModule": true,
13 | "isolatedModules": true,
14 | "noEmit": true,
15 | "jsx": "preserve",
16 | "noFallthroughCasesInSwitch": true,
17 | "allowSyntheticDefaultImports": true,
18 | "incremental": true
19 | },
20 | "exclude": ["node_modules"],
21 | "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"]
22 | }
23 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@next/env@12.2.5":
6 | version "12.2.5"
7 | resolved "https://registry.yarnpkg.com/@next/env/-/env-12.2.5.tgz#d908c57b35262b94db3e431e869b72ac3e1ad3e3"
8 | integrity sha512-vLPLV3cpPGjUPT3PjgRj7e3nio9t6USkuew3JE/jMeon/9Mvp1WyR18v3iwnCuX7eUAm1HmAbJHHLAbcu/EJcw==
9 |
10 | "@next/swc-android-arm-eabi@12.2.5":
11 | version "12.2.5"
12 | resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.2.5.tgz#903a5479ab4c2705d9c08d080907475f7bacf94d"
13 | integrity sha512-cPWClKxGhgn2dLWnspW+7psl3MoLQUcNqJqOHk2BhNcou9ARDtC0IjQkKe5qcn9qg7I7U83Gp1yh2aesZfZJMA==
14 |
15 | "@next/swc-android-arm64@12.2.5":
16 | version "12.2.5"
17 | resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.2.5.tgz#2f9a98ec4166c7860510963b31bda1f57a77c792"
18 | integrity sha512-vMj0efliXmC5b7p+wfcQCX0AfU8IypjkzT64GiKJD9PgiA3IILNiGJr1fw2lyUDHkjeWx/5HMlMEpLnTsQslwg==
19 |
20 | "@next/swc-darwin-arm64@12.2.5":
21 | version "12.2.5"
22 | resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.2.5.tgz#31b1c3c659d54be546120c488a1e1bad21c24a1d"
23 | integrity sha512-VOPWbO5EFr6snla/WcxUKtvzGVShfs302TEMOtzYyWni6f9zuOetijJvVh9CCTzInnXAZMtHyNhefijA4HMYLg==
24 |
25 | "@next/swc-darwin-x64@12.2.5":
26 | version "12.2.5"
27 | resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.2.5.tgz#2e44dd82b2b7fef88238d1bc4d3bead5884cedfd"
28 | integrity sha512-5o8bTCgAmtYOgauO/Xd27vW52G2/m3i5PX7MUYePquxXAnX73AAtqA3WgPXBRitEB60plSKZgOTkcpqrsh546A==
29 |
30 | "@next/swc-freebsd-x64@12.2.5":
31 | version "12.2.5"
32 | resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.2.5.tgz#e24e75d8c2581bfebc75e4f08f6ddbd116ce9dbd"
33 | integrity sha512-yYUbyup1JnznMtEBRkK4LT56N0lfK5qNTzr6/DEyDw5TbFVwnuy2hhLBzwCBkScFVjpFdfiC6SQAX3FrAZzuuw==
34 |
35 | "@next/swc-linux-arm-gnueabihf@12.2.5":
36 | version "12.2.5"
37 | resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.2.5.tgz#46d8c514d834d2b5f67086013f0bd5e3081e10b9"
38 | integrity sha512-2ZE2/G921Acks7UopJZVMgKLdm4vN4U0yuzvAMJ6KBavPzqESA2yHJlm85TV/K9gIjKhSk5BVtauIUntFRP8cg==
39 |
40 | "@next/swc-linux-arm64-gnu@12.2.5":
41 | version "12.2.5"
42 | resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.2.5.tgz#91f725ac217d3a1f4f9f53b553615ba582fd3d9f"
43 | integrity sha512-/I6+PWVlz2wkTdWqhlSYYJ1pWWgUVva6SgX353oqTh8njNQp1SdFQuWDqk8LnM6ulheVfSsgkDzxrDaAQZnzjQ==
44 |
45 | "@next/swc-linux-arm64-musl@12.2.5":
46 | version "12.2.5"
47 | resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.2.5.tgz#e627e8c867920995810250303cd9b8e963598383"
48 | integrity sha512-LPQRelfX6asXyVr59p5sTpx5l+0yh2Vjp/R8Wi4X9pnqcayqT4CUJLiHqCvZuLin3IsFdisJL0rKHMoaZLRfmg==
49 |
50 | "@next/swc-linux-x64-gnu@12.2.5":
51 | version "12.2.5"
52 | resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.2.5.tgz#83a5e224fbc4d119ef2e0f29d0d79c40cc43887e"
53 | integrity sha512-0szyAo8jMCClkjNK0hknjhmAngUppoRekW6OAezbEYwHXN/VNtsXbfzgYOqjKWxEx3OoAzrT3jLwAF0HdX2MEw==
54 |
55 | "@next/swc-linux-x64-musl@12.2.5":
56 | version "12.2.5"
57 | resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.2.5.tgz#be700d48471baac1ec2e9539396625584a317e95"
58 | integrity sha512-zg/Y6oBar1yVnW6Il1I/08/2ukWtOG6s3acdJdEyIdsCzyQi4RLxbbhkD/EGQyhqBvd3QrC6ZXQEXighQUAZ0g==
59 |
60 | "@next/swc-win32-arm64-msvc@12.2.5":
61 | version "12.2.5"
62 | resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.2.5.tgz#a93e958133ad3310373fda33a79aa10af2a0aa97"
63 | integrity sha512-3/90DRNSqeeSRMMEhj4gHHQlLhhKg5SCCoYfE3kBjGpE63EfnblYUqsszGGZ9ekpKL/R4/SGB40iCQr8tR5Jiw==
64 |
65 | "@next/swc-win32-ia32-msvc@12.2.5":
66 | version "12.2.5"
67 | resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.2.5.tgz#4f5f7ba0a98ff89a883625d4af0125baed8b2e19"
68 | integrity sha512-hGLc0ZRAwnaPL4ulwpp4D2RxmkHQLuI8CFOEEHdzZpS63/hMVzv81g8jzYA0UXbb9pus/iTc3VRbVbAM03SRrw==
69 |
70 | "@next/swc-win32-x64-msvc@12.2.5":
71 | version "12.2.5"
72 | resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.2.5.tgz#20fed129b04a0d3f632c6d0de135345bb623b1e4"
73 | integrity sha512-7h5/ahY7NeaO2xygqVrSG/Y8Vs4cdjxIjowTZ5W6CKoTKn7tmnuxlUc2h74x06FKmbhAd9agOjr/AOKyxYYm9Q==
74 |
75 | "@nodelib/fs.scandir@2.1.5":
76 | version "2.1.5"
77 | resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
78 | integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
79 | dependencies:
80 | "@nodelib/fs.stat" "2.0.5"
81 | run-parallel "^1.1.9"
82 |
83 | "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
84 | version "2.0.5"
85 | resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
86 | integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
87 |
88 | "@nodelib/fs.walk@^1.2.3":
89 | version "1.2.8"
90 | resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
91 | integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
92 | dependencies:
93 | "@nodelib/fs.scandir" "2.1.5"
94 | fastq "^1.6.0"
95 |
96 | "@swc/helpers@0.4.3":
97 | version "0.4.3"
98 | resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.3.tgz#16593dfc248c53b699d4b5026040f88ddb497012"
99 | integrity sha512-6JrF+fdUK2zbGpJIlN7G3v966PQjyx/dPt1T9km2wj+EUBqgrxCk3uX4Kct16MIm9gGxfKRcfax2hVf5jvlTzA==
100 | dependencies:
101 | tslib "^2.4.0"
102 |
103 | "@types/node@^18.7.16":
104 | version "18.7.16"
105 | resolved "https://registry.yarnpkg.com/@types/node/-/node-18.7.16.tgz#0eb3cce1e37c79619943d2fd903919fc30850601"
106 | integrity sha512-EQHhixfu+mkqHMZl1R2Ovuvn47PUw18azMJOTwSZr9/fhzHNGXAJ0ma0dayRVchprpCj0Kc1K1xKoWaATWF1qg==
107 |
108 | "@types/prop-types@*":
109 | version "15.7.5"
110 | resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.5.tgz#5f19d2b85a98e9558036f6a3cacc8819420f05cf"
111 | integrity sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==
112 |
113 | "@types/react-dom@^18.0.6":
114 | version "18.0.6"
115 | resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-18.0.6.tgz#36652900024842b74607a17786b6662dd1e103a1"
116 | integrity sha512-/5OFZgfIPSwy+YuIBP/FgJnQnsxhZhjjrnxudMddeblOouIodEQ75X14Rr4wGSG/bknL+Omy9iWlLo1u/9GzAA==
117 | dependencies:
118 | "@types/react" "*"
119 |
120 | "@types/react@*":
121 | version "18.0.18"
122 | resolved "https://registry.yarnpkg.com/@types/react/-/react-18.0.18.tgz#9f16f33d57bc5d9dca848d12c3572110ff9429ac"
123 | integrity sha512-6hI08umYs6NaiHFEEGioXnxJ+oEhY3eRz8VCUaudZmGdtvPviCJB8mgaMxaDWAdPSYd4eFavrPk2QIolwbLYrg==
124 | dependencies:
125 | "@types/prop-types" "*"
126 | "@types/scheduler" "*"
127 | csstype "^3.0.2"
128 |
129 | "@types/scheduler@*":
130 | version "0.16.2"
131 | resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39"
132 | integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==
133 |
134 | acorn-node@^1.8.2:
135 | version "1.8.2"
136 | resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8"
137 | integrity sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==
138 | dependencies:
139 | acorn "^7.0.0"
140 | acorn-walk "^7.0.0"
141 | xtend "^4.0.2"
142 |
143 | acorn-walk@^7.0.0:
144 | version "7.2.0"
145 | resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc"
146 | integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==
147 |
148 | acorn@^7.0.0:
149 | version "7.4.1"
150 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
151 | integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
152 |
153 | anymatch@~3.1.2:
154 | version "3.1.2"
155 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"
156 | integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==
157 | dependencies:
158 | normalize-path "^3.0.0"
159 | picomatch "^2.0.4"
160 |
161 | arg@^5.0.2:
162 | version "5.0.2"
163 | resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c"
164 | integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==
165 |
166 | autoprefixer@^10.4.8:
167 | version "10.4.8"
168 | resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.8.tgz#92c7a0199e1cfb2ad5d9427bd585a3d75895b9e5"
169 | integrity sha512-75Jr6Q/XpTqEf6D2ltS5uMewJIx5irCU1oBYJrWjFenq/m12WRRrz6g15L1EIoYvPLXTbEry7rDOwrcYNj77xw==
170 | dependencies:
171 | browserslist "^4.21.3"
172 | caniuse-lite "^1.0.30001373"
173 | fraction.js "^4.2.0"
174 | normalize-range "^0.1.2"
175 | picocolors "^1.0.0"
176 | postcss-value-parser "^4.2.0"
177 |
178 | binary-extensions@^2.0.0:
179 | version "2.2.0"
180 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"
181 | integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==
182 |
183 | braces@^3.0.2, braces@~3.0.2:
184 | version "3.0.2"
185 | resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
186 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
187 | dependencies:
188 | fill-range "^7.0.1"
189 |
190 | browserslist@^4.21.3:
191 | version "4.21.3"
192 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.3.tgz#5df277694eb3c48bc5c4b05af3e8b7e09c5a6d1a"
193 | integrity sha512-898rgRXLAyRkM1GryrrBHGkqA5hlpkV5MhtZwg9QXeiyLUYs2k00Un05aX5l2/yJIOObYKOpS2JNo8nJDE7fWQ==
194 | dependencies:
195 | caniuse-lite "^1.0.30001370"
196 | electron-to-chromium "^1.4.202"
197 | node-releases "^2.0.6"
198 | update-browserslist-db "^1.0.5"
199 |
200 | camelcase-css@^2.0.1:
201 | version "2.0.1"
202 | resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5"
203 | integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==
204 |
205 | caniuse-lite@^1.0.30001332, caniuse-lite@^1.0.30001370, caniuse-lite@^1.0.30001373:
206 | version "1.0.30001393"
207 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001393.tgz#1aa161e24fe6af2e2ccda000fc2b94be0b0db356"
208 | integrity sha512-N/od11RX+Gsk+1qY/jbPa0R6zJupEa0lxeBG598EbrtblxVCTJsQwbRBm6+V+rxpc5lHKdsXb9RY83cZIPLseA==
209 |
210 | chokidar@^3.5.3:
211 | version "3.5.3"
212 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd"
213 | integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==
214 | dependencies:
215 | anymatch "~3.1.2"
216 | braces "~3.0.2"
217 | glob-parent "~5.1.2"
218 | is-binary-path "~2.1.0"
219 | is-glob "~4.0.1"
220 | normalize-path "~3.0.0"
221 | readdirp "~3.6.0"
222 | optionalDependencies:
223 | fsevents "~2.3.2"
224 |
225 | color-name@^1.1.4:
226 | version "1.1.4"
227 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
228 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
229 |
230 | cssesc@^3.0.0:
231 | version "3.0.0"
232 | resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
233 | integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
234 |
235 | csstype@^3.0.2:
236 | version "3.1.0"
237 | resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.0.tgz#4ddcac3718d787cf9df0d1b7d15033925c8f29f2"
238 | integrity sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA==
239 |
240 | defined@^1.0.0:
241 | version "1.0.0"
242 | resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693"
243 | integrity sha512-Y2caI5+ZwS5c3RiNDJ6u53VhQHv+hHKwhkI1iHvceKUHw9Df6EK2zRLfjejRgMuCuxK7PfSWIMwWecceVvThjQ==
244 |
245 | detective@^5.2.1:
246 | version "5.2.1"
247 | resolved "https://registry.yarnpkg.com/detective/-/detective-5.2.1.tgz#6af01eeda11015acb0e73f933242b70f24f91034"
248 | integrity sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==
249 | dependencies:
250 | acorn-node "^1.8.2"
251 | defined "^1.0.0"
252 | minimist "^1.2.6"
253 |
254 | didyoumean@^1.2.2:
255 | version "1.2.2"
256 | resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037"
257 | integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==
258 |
259 | dlv@^1.1.3:
260 | version "1.1.3"
261 | resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79"
262 | integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==
263 |
264 | electron-to-chromium@^1.4.202:
265 | version "1.4.244"
266 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.244.tgz#ae9b56ed4ae2107e3a860dad80ed662c936e369e"
267 | integrity sha512-E21saXLt2eTDaTxgUtiJtBUqanF9A32wZasAwDZ8gvrqXoxrBrbwtDCx7c/PQTLp81wj4X0OLDeoGQg7eMo3+w==
268 |
269 | escalade@^3.1.1:
270 | version "3.1.1"
271 | resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
272 | integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
273 |
274 | fast-glob@^3.2.11:
275 | version "3.2.11"
276 | resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9"
277 | integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==
278 | dependencies:
279 | "@nodelib/fs.stat" "^2.0.2"
280 | "@nodelib/fs.walk" "^1.2.3"
281 | glob-parent "^5.1.2"
282 | merge2 "^1.3.0"
283 | micromatch "^4.0.4"
284 |
285 | fastq@^1.6.0:
286 | version "1.13.0"
287 | resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c"
288 | integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==
289 | dependencies:
290 | reusify "^1.0.4"
291 |
292 | fill-range@^7.0.1:
293 | version "7.0.1"
294 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
295 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
296 | dependencies:
297 | to-regex-range "^5.0.1"
298 |
299 | fraction.js@^4.2.0:
300 | version "4.2.0"
301 | resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.2.0.tgz#448e5109a313a3527f5a3ab2119ec4cf0e0e2950"
302 | integrity sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==
303 |
304 | fsevents@~2.3.2:
305 | version "2.3.2"
306 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a"
307 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==
308 |
309 | function-bind@^1.1.1:
310 | version "1.1.1"
311 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
312 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
313 |
314 | glob-parent@^5.1.2, glob-parent@~5.1.2:
315 | version "5.1.2"
316 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
317 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
318 | dependencies:
319 | is-glob "^4.0.1"
320 |
321 | glob-parent@^6.0.2:
322 | version "6.0.2"
323 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
324 | integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
325 | dependencies:
326 | is-glob "^4.0.3"
327 |
328 | has@^1.0.3:
329 | version "1.0.3"
330 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
331 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
332 | dependencies:
333 | function-bind "^1.1.1"
334 |
335 | is-binary-path@~2.1.0:
336 | version "2.1.0"
337 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
338 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
339 | dependencies:
340 | binary-extensions "^2.0.0"
341 |
342 | is-core-module@^2.9.0:
343 | version "2.10.0"
344 | resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed"
345 | integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==
346 | dependencies:
347 | has "^1.0.3"
348 |
349 | is-extglob@^2.1.1:
350 | version "2.1.1"
351 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
352 | integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
353 |
354 | is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:
355 | version "4.0.3"
356 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
357 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
358 | dependencies:
359 | is-extglob "^2.1.1"
360 |
361 | is-number@^7.0.0:
362 | version "7.0.0"
363 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
364 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
365 |
366 | "js-tokens@^3.0.0 || ^4.0.0":
367 | version "4.0.0"
368 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
369 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
370 |
371 | lilconfig@^2.0.5, lilconfig@^2.0.6:
372 | version "2.0.6"
373 | resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-2.0.6.tgz#32a384558bd58af3d4c6e077dd1ad1d397bc69d4"
374 | integrity sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==
375 |
376 | loose-envify@^1.1.0:
377 | version "1.4.0"
378 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
379 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
380 | dependencies:
381 | js-tokens "^3.0.0 || ^4.0.0"
382 |
383 | merge2@^1.3.0:
384 | version "1.4.1"
385 | resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
386 | integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
387 |
388 | micromatch@^4.0.4:
389 | version "4.0.5"
390 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6"
391 | integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==
392 | dependencies:
393 | braces "^3.0.2"
394 | picomatch "^2.3.1"
395 |
396 | minimist@^1.2.6:
397 | version "1.2.6"
398 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44"
399 | integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==
400 |
401 | nanoid@^3.3.4:
402 | version "3.3.4"
403 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab"
404 | integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
405 |
406 | next@^12.2.5:
407 | version "12.2.5"
408 | resolved "https://registry.yarnpkg.com/next/-/next-12.2.5.tgz#14fb5975e8841fad09553b8ef41fe1393602b717"
409 | integrity sha512-tBdjqX5XC/oFs/6gxrZhjmiq90YWizUYU6qOWAfat7zJwrwapJ+BYgX2PmiacunXMaRpeVT4vz5MSPSLgNkrpA==
410 | dependencies:
411 | "@next/env" "12.2.5"
412 | "@swc/helpers" "0.4.3"
413 | caniuse-lite "^1.0.30001332"
414 | postcss "8.4.14"
415 | styled-jsx "5.0.4"
416 | use-sync-external-store "1.2.0"
417 | optionalDependencies:
418 | "@next/swc-android-arm-eabi" "12.2.5"
419 | "@next/swc-android-arm64" "12.2.5"
420 | "@next/swc-darwin-arm64" "12.2.5"
421 | "@next/swc-darwin-x64" "12.2.5"
422 | "@next/swc-freebsd-x64" "12.2.5"
423 | "@next/swc-linux-arm-gnueabihf" "12.2.5"
424 | "@next/swc-linux-arm64-gnu" "12.2.5"
425 | "@next/swc-linux-arm64-musl" "12.2.5"
426 | "@next/swc-linux-x64-gnu" "12.2.5"
427 | "@next/swc-linux-x64-musl" "12.2.5"
428 | "@next/swc-win32-arm64-msvc" "12.2.5"
429 | "@next/swc-win32-ia32-msvc" "12.2.5"
430 | "@next/swc-win32-x64-msvc" "12.2.5"
431 |
432 | node-releases@^2.0.6:
433 | version "2.0.6"
434 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.6.tgz#8a7088c63a55e493845683ebf3c828d8c51c5503"
435 | integrity sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==
436 |
437 | normalize-path@^3.0.0, normalize-path@~3.0.0:
438 | version "3.0.0"
439 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
440 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
441 |
442 | normalize-range@^0.1.2:
443 | version "0.1.2"
444 | resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
445 | integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==
446 |
447 | object-hash@^3.0.0:
448 | version "3.0.0"
449 | resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9"
450 | integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==
451 |
452 | path-parse@^1.0.7:
453 | version "1.0.7"
454 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
455 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
456 |
457 | picocolors@^1.0.0:
458 | version "1.0.0"
459 | resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
460 | integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
461 |
462 | picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1:
463 | version "2.3.1"
464 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
465 | integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
466 |
467 | pify@^2.3.0:
468 | version "2.3.0"
469 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
470 | integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==
471 |
472 | postcss-import@^14.1.0:
473 | version "14.1.0"
474 | resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-14.1.0.tgz#a7333ffe32f0b8795303ee9e40215dac922781f0"
475 | integrity sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==
476 | dependencies:
477 | postcss-value-parser "^4.0.0"
478 | read-cache "^1.0.0"
479 | resolve "^1.1.7"
480 |
481 | postcss-js@^4.0.0:
482 | version "4.0.0"
483 | resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.0.tgz#31db79889531b80dc7bc9b0ad283e418dce0ac00"
484 | integrity sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==
485 | dependencies:
486 | camelcase-css "^2.0.1"
487 |
488 | postcss-load-config@^3.1.4:
489 | version "3.1.4"
490 | resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-3.1.4.tgz#1ab2571faf84bb078877e1d07905eabe9ebda855"
491 | integrity sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==
492 | dependencies:
493 | lilconfig "^2.0.5"
494 | yaml "^1.10.2"
495 |
496 | postcss-nested@5.0.6:
497 | version "5.0.6"
498 | resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-5.0.6.tgz#466343f7fc8d3d46af3e7dba3fcd47d052a945bc"
499 | integrity sha512-rKqm2Fk0KbA8Vt3AdGN0FB9OBOMDVajMG6ZCf/GoHgdxUJ4sBFp0A/uMIRm+MJUdo33YXEtjqIz8u7DAp8B7DA==
500 | dependencies:
501 | postcss-selector-parser "^6.0.6"
502 |
503 | postcss-selector-parser@^6.0.10, postcss-selector-parser@^6.0.6:
504 | version "6.0.10"
505 | resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz#79b61e2c0d1bfc2602d549e11d0876256f8df88d"
506 | integrity sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==
507 | dependencies:
508 | cssesc "^3.0.0"
509 | util-deprecate "^1.0.2"
510 |
511 | postcss-value-parser@^4.0.0, postcss-value-parser@^4.2.0:
512 | version "4.2.0"
513 | resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
514 | integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
515 |
516 | postcss@8.4.14:
517 | version "8.4.14"
518 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.14.tgz#ee9274d5622b4858c1007a74d76e42e56fd21caf"
519 | integrity sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==
520 | dependencies:
521 | nanoid "^3.3.4"
522 | picocolors "^1.0.0"
523 | source-map-js "^1.0.2"
524 |
525 | postcss@^8.4.14, postcss@^8.4.16:
526 | version "8.4.16"
527 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.16.tgz#33a1d675fac39941f5f445db0de4db2b6e01d43c"
528 | integrity sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==
529 | dependencies:
530 | nanoid "^3.3.4"
531 | picocolors "^1.0.0"
532 | source-map-js "^1.0.2"
533 |
534 | queue-microtask@^1.2.2:
535 | version "1.2.3"
536 | resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
537 | integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
538 |
539 | quick-lru@^5.1.1:
540 | version "5.1.1"
541 | resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"
542 | integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==
543 |
544 | react-dom@^18.2.0:
545 | version "18.2.0"
546 | resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d"
547 | integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==
548 | dependencies:
549 | loose-envify "^1.1.0"
550 | scheduler "^0.23.0"
551 |
552 | react-spinners@^0.13.4:
553 | version "0.13.4"
554 | resolved "https://registry.yarnpkg.com/react-spinners/-/react-spinners-0.13.4.tgz#20f7435e5cb3a2bde23110efa8b7dfbe485373e9"
555 | integrity sha512-V6IURjYOwomhdngMfuVxBp4utCF6v21sjQ6r4K2JoKl8fwXZp1UeHMBLf+2SU+cts8hAVj9rHOJ8kdT5UqqaJw==
556 |
557 | react@^18.2.0:
558 | version "18.2.0"
559 | resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5"
560 | integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
561 | dependencies:
562 | loose-envify "^1.1.0"
563 |
564 | read-cache@^1.0.0:
565 | version "1.0.0"
566 | resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774"
567 | integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==
568 | dependencies:
569 | pify "^2.3.0"
570 |
571 | readdirp@~3.6.0:
572 | version "3.6.0"
573 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
574 | integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
575 | dependencies:
576 | picomatch "^2.2.1"
577 |
578 | resolve@^1.1.7, resolve@^1.22.1:
579 | version "1.22.1"
580 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177"
581 | integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==
582 | dependencies:
583 | is-core-module "^2.9.0"
584 | path-parse "^1.0.7"
585 | supports-preserve-symlinks-flag "^1.0.0"
586 |
587 | reusify@^1.0.4:
588 | version "1.0.4"
589 | resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
590 | integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
591 |
592 | run-parallel@^1.1.9:
593 | version "1.2.0"
594 | resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
595 | integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
596 | dependencies:
597 | queue-microtask "^1.2.2"
598 |
599 | scheduler@^0.23.0:
600 | version "0.23.0"
601 | resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe"
602 | integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==
603 | dependencies:
604 | loose-envify "^1.1.0"
605 |
606 | source-map-js@^1.0.2:
607 | version "1.0.2"
608 | resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
609 | integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
610 |
611 | styled-jsx@5.0.4:
612 | version "5.0.4"
613 | resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.0.4.tgz#5b1bd0b9ab44caae3dd1361295559706e044aa53"
614 | integrity sha512-sDFWLbg4zR+UkNzfk5lPilyIgtpddfxXEULxhujorr5jtePTUqiPDc5BC0v1NRqTr/WaFBGQQUoYToGlF4B2KQ==
615 |
616 | supports-preserve-symlinks-flag@^1.0.0:
617 | version "1.0.0"
618 | resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
619 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
620 |
621 | swr@^1.3.0:
622 | version "1.3.0"
623 | resolved "https://registry.yarnpkg.com/swr/-/swr-1.3.0.tgz#c6531866a35b4db37b38b72c45a63171faf9f4e8"
624 | integrity sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==
625 |
626 | tailwindcss@^3.1.8:
627 | version "3.1.8"
628 | resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.1.8.tgz#4f8520550d67a835d32f2f4021580f9fddb7b741"
629 | integrity sha512-YSneUCZSFDYMwk+TGq8qYFdCA3yfBRdBlS7txSq0LUmzyeqRe3a8fBQzbz9M3WS/iFT4BNf/nmw9mEzrnSaC0g==
630 | dependencies:
631 | arg "^5.0.2"
632 | chokidar "^3.5.3"
633 | color-name "^1.1.4"
634 | detective "^5.2.1"
635 | didyoumean "^1.2.2"
636 | dlv "^1.1.3"
637 | fast-glob "^3.2.11"
638 | glob-parent "^6.0.2"
639 | is-glob "^4.0.3"
640 | lilconfig "^2.0.6"
641 | normalize-path "^3.0.0"
642 | object-hash "^3.0.0"
643 | picocolors "^1.0.0"
644 | postcss "^8.4.14"
645 | postcss-import "^14.1.0"
646 | postcss-js "^4.0.0"
647 | postcss-load-config "^3.1.4"
648 | postcss-nested "5.0.6"
649 | postcss-selector-parser "^6.0.10"
650 | postcss-value-parser "^4.2.0"
651 | quick-lru "^5.1.1"
652 | resolve "^1.22.1"
653 |
654 | to-regex-range@^5.0.1:
655 | version "5.0.1"
656 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
657 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
658 | dependencies:
659 | is-number "^7.0.0"
660 |
661 | tslib@^2.4.0:
662 | version "2.4.0"
663 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3"
664 | integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==
665 |
666 | typescript@^4.8.2:
667 | version "4.8.2"
668 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.2.tgz#e3b33d5ccfb5914e4eeab6699cf208adee3fd790"
669 | integrity sha512-C0I1UsrrDHo2fYI5oaCGbSejwX4ch+9Y5jTQELvovfmFkK3HHSZJB8MSJcWLmCUBzQBchCrZ9rMRV6GuNrvGtw==
670 |
671 | update-browserslist-db@^1.0.5:
672 | version "1.0.7"
673 | resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.7.tgz#16279639cff1d0f800b14792de43d97df2d11b7d"
674 | integrity sha512-iN/XYesmZ2RmmWAiI4Z5rq0YqSiv0brj9Ce9CfhNE4xIW2h+MFxcgkxIzZ+ShkFPUkjU3gQ+3oypadD3RAMtrg==
675 | dependencies:
676 | escalade "^3.1.1"
677 | picocolors "^1.0.0"
678 |
679 | use-lanyard@^1.2.0:
680 | version "1.2.0"
681 | resolved "https://registry.yarnpkg.com/use-lanyard/-/use-lanyard-1.2.0.tgz#672193fe2e9c46d66c08a6037cd21f67295cb498"
682 | integrity sha512-cFGuRhQx1K7Mh3jAR+7GdNdQ/zRCp1FRg8b/ROPGXRKNptFdEXw1V1I3144WkDORXzkEQnJg6YSx1iq/7cLuCQ==
683 | dependencies:
684 | swr "^1.3.0"
685 |
686 | use-sync-external-store@1.2.0:
687 | version "1.2.0"
688 | resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a"
689 | integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==
690 |
691 | util-deprecate@^1.0.2:
692 | version "1.0.2"
693 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
694 | integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
695 |
696 | xtend@^4.0.2:
697 | version "4.0.2"
698 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
699 | integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
700 |
701 | yaml@^1.10.2:
702 | version "1.10.2"
703 | resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
704 | integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
705 |
706 | zod@^3.19.0:
707 | version "3.19.0"
708 | resolved "https://registry.yarnpkg.com/zod/-/zod-3.19.0.tgz#a9303fcaed0950a3dc57bf35cc11f6282d4f52f2"
709 | integrity sha512-Yw0qvUsCNGBe5YacikdMt5gVYeUuaEFVDIHKMfElrGSaBhwR3CQK6vOzgfAJOjTdGIhEeoaj8GtT+NDZrepZbw==
710 |
--------------------------------------------------------------------------------