├── .eslintrc.json
├── .gitignore
├── README.md
├── components
├── box.tsx
└── radar.tsx
├── hooks
├── use-device.ts
├── use-isomorphic-layout-effect.ts
└── use-match-mediea.ts
├── image
└── README
│ └── 1677720587273.png
├── next.config.js
├── package-lock.json
├── package.json
├── pages
├── _app.tsx
├── _document.tsx
├── api
│ └── hello.ts
└── index.tsx
├── postcss.config.js
├── public
├── favicon.ico
├── images
│ ├── circle.svg
│ ├── circles.svg
│ ├── cube.svg
│ ├── d3r4.svg
│ ├── danger.svg
│ ├── global.svg
│ ├── label.svg
│ ├── mission.svg
│ ├── png
│ │ ├── circle.png
│ │ ├── circles.png
│ │ ├── d3r4.png
│ │ ├── danger.png
│ │ ├── global.png
│ │ ├── label.png
│ │ ├── mission.png
│ │ ├── rabbit-2.png
│ │ ├── rabbit.png
│ │ ├── rects.png
│ │ ├── round-text.png
│ │ ├── stack.png
│ │ ├── triangle-1.png
│ │ └── triangle-2.png
│ ├── rabbit-2.svg
│ ├── rabbit.svg
│ ├── rects.svg
│ ├── round-text.svg
│ ├── stack.svg
│ ├── triangle-1.svg
│ └── triangle-2.svg
├── next.svg
├── thirteen.svg
└── vercel.svg
├── styles
└── globals.css
├── tailwind.config.js
├── tsconfig.json
├── utils
├── loop.d.ts
└── loop.js
└── yarn.lock
/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "next/core-web-vitals"
3 | }
4 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # next.js
12 | /.next/
13 | /out/
14 |
15 | # production
16 | /build
17 |
18 | # misc
19 | .DS_Store
20 | *.pem
21 |
22 | # debug
23 | npm-debug.log*
24 | yarn-debug.log*
25 | yarn-error.log*
26 | .pnpm-debug.log*
27 |
28 | # local env files
29 | .env*.local
30 |
31 | # vercel
32 | .vercel
33 |
34 | # typescript
35 | *.tsbuildinfo
36 | next-env.d.ts
37 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | This is a project about grid desigin and animation.
2 |
3 | ## Getting Started
4 |
5 | First, run the development server:
6 |
7 | ```bash
8 | npm run dev
9 | # or
10 | yarn dev
11 | # or
12 | pnpm dev
13 | ```
14 |
15 | Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
16 |
17 | 
18 |
--------------------------------------------------------------------------------
/components/box.tsx:
--------------------------------------------------------------------------------
1 | import clsx from "clsx";
2 |
3 | export interface IBoxProps {
4 | width?: number;
5 | height?: number;
6 | className?: string;
7 | style?: React.CSSProperties;
8 | border?: boolean;
9 | children?: React.ReactNode;
10 | }
11 |
12 | export default function Box({ style, className, children }: IBoxProps) {
13 | return (
14 |
21 | {children}
22 |
23 | );
24 | }
25 |
--------------------------------------------------------------------------------
/components/radar.tsx:
--------------------------------------------------------------------------------
1 | import clsx from "clsx";
2 | import { useIsomorphicLayoutEffect } from "@/hooks/use-isomorphic-layout-effect";
3 | import { useRef } from "react";
4 | import { gsap } from "gsap";
5 | import useMediaQuery from "@/hooks/use-match-mediea";
6 |
7 | export interface IBoxProps {
8 | className?: string;
9 | style?: React.CSSProperties;
10 | border?: boolean;
11 | children?: React.ReactNode;
12 | }
13 |
14 | export default function Radar({ style, className, children }: IBoxProps) {
15 | const mainRef = useRef(null);
16 |
17 | useIsomorphicLayoutEffect(() => {
18 | const ctx = gsap.context(() => {
19 | gsap.to("[data-scale]", {
20 | keyframes: [
21 | {
22 | opacity: 0,
23 | },
24 | {
25 | opacity: 0.8,
26 | scale: 1.5,
27 | },
28 | {
29 | opacity: 0,
30 | scale: 2,
31 | },
32 | ],
33 |
34 | duration: 2.5,
35 | stagger: {
36 | each: 0.5,
37 | repeat: -1,
38 | },
39 | });
40 | }, mainRef);
41 |
42 | return () => ctx.revert();
43 | }, []);
44 |
45 | return (
46 |
47 | {Array(6)
48 | .fill(0)
49 | .map((_, index) => {
50 | return (
51 |
62 | );
63 | })}
64 |
65 | );
66 | }
67 |
--------------------------------------------------------------------------------
/hooks/use-device.ts:
--------------------------------------------------------------------------------
1 | import React from "react";
2 |
3 | export default function useDevice() {
4 | const [isMobile, setMobile] = React.useState(false);
5 |
6 | React.useEffect(() => {
7 | const userAgent =
8 | typeof window.navigator === "undefined" ? "" : navigator.userAgent;
9 | const mobile = Boolean(
10 | userAgent.match(
11 | /Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile|WPDesktop/i
12 | )
13 | );
14 | setMobile(mobile);
15 | }, []);
16 |
17 | return { isMobile };
18 | }
19 |
--------------------------------------------------------------------------------
/hooks/use-isomorphic-layout-effect.ts:
--------------------------------------------------------------------------------
1 | import { useEffect, useLayoutEffect } from "react";
2 |
3 | export const useIsomorphicLayoutEffect =
4 | typeof window !== "undefined" ? useLayoutEffect : useEffect;
5 |
--------------------------------------------------------------------------------
/hooks/use-match-mediea.ts:
--------------------------------------------------------------------------------
1 | import { useState, useEffect } from "react";
2 |
3 | const useMediaQuery = (query: string) => {
4 | const [matches, setMatches] = useState(false);
5 |
6 | useEffect(() => {
7 | const media = window.matchMedia(query);
8 | if (media.matches !== matches) {
9 | setMatches(media.matches);
10 | }
11 | const listener = () => setMatches(media.matches);
12 | window.addEventListener("resize", listener);
13 | return () => window.removeEventListener("resize", listener);
14 | }, [matches, query]);
15 |
16 | return matches;
17 | };
18 |
19 | export default useMediaQuery;
20 |
--------------------------------------------------------------------------------
/image/README/1677720587273.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/image/README/1677720587273.png
--------------------------------------------------------------------------------
/next.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('next').NextConfig} */
2 | const nextConfig = {
3 | reactStrictMode: true,
4 | }
5 |
6 | module.exports = nextConfig
7 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "to-kill-a-rabbit",
3 | "version": "0.1.0",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "@babel/runtime": {
8 | "version": "7.20.13",
9 | "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.20.13.tgz",
10 | "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==",
11 | "requires": {
12 | "regenerator-runtime": "^0.13.11"
13 | }
14 | },
15 | "@eslint/eslintrc": {
16 | "version": "1.4.1",
17 | "resolved": "https://registry.npmmirror.com/@eslint/eslintrc/-/eslintrc-1.4.1.tgz",
18 | "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==",
19 | "requires": {
20 | "ajv": "^6.12.4",
21 | "debug": "^4.3.2",
22 | "espree": "^9.4.0",
23 | "globals": "^13.19.0",
24 | "ignore": "^5.2.0",
25 | "import-fresh": "^3.2.1",
26 | "js-yaml": "^4.1.0",
27 | "minimatch": "^3.1.2",
28 | "strip-json-comments": "^3.1.1"
29 | }
30 | },
31 | "@humanwhocodes/config-array": {
32 | "version": "0.11.8",
33 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz",
34 | "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==",
35 | "requires": {
36 | "@humanwhocodes/object-schema": "^1.2.1",
37 | "debug": "^4.1.1",
38 | "minimatch": "^3.0.5"
39 | }
40 | },
41 | "@humanwhocodes/module-importer": {
42 | "version": "1.0.1",
43 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
44 | "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA=="
45 | },
46 | "@humanwhocodes/object-schema": {
47 | "version": "1.2.1",
48 | "resolved": "https://registry.npmmirror.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
49 | "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA=="
50 | },
51 | "@next/env": {
52 | "version": "13.1.6",
53 | "resolved": "https://registry.npmmirror.com/@next/env/-/env-13.1.6.tgz",
54 | "integrity": "sha512-s+W9Fdqh5MFk6ECrbnVmmAOwxKQuhGMT7xXHrkYIBMBcTiOqNWhv5KbJIboKR5STXxNXl32hllnvKaffzFaWQg=="
55 | },
56 | "@next/eslint-plugin-next": {
57 | "version": "13.1.6",
58 | "resolved": "https://registry.npmmirror.com/@next/eslint-plugin-next/-/eslint-plugin-next-13.1.6.tgz",
59 | "integrity": "sha512-o7cauUYsXjzSJkay8wKjpKJf2uLzlggCsGUkPu3lP09Pv97jYlekTC20KJrjQKmSv5DXV0R/uks2ZXhqjNkqAw==",
60 | "requires": {
61 | "glob": "7.1.7"
62 | },
63 | "dependencies": {
64 | "glob": {
65 | "version": "7.1.7",
66 | "resolved": "https://registry.npmmirror.com/glob/-/glob-7.1.7.tgz",
67 | "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==",
68 | "requires": {
69 | "fs.realpath": "^1.0.0",
70 | "inflight": "^1.0.4",
71 | "inherits": "2",
72 | "minimatch": "^3.0.4",
73 | "once": "^1.3.0",
74 | "path-is-absolute": "^1.0.0"
75 | }
76 | }
77 | }
78 | },
79 | "@next/font": {
80 | "version": "13.1.6",
81 | "resolved": "https://registry.npmmirror.com/@next/font/-/font-13.1.6.tgz",
82 | "integrity": "sha512-AITjmeb1RgX1HKMCiA39ztx2mxeAyxl4ljv2UoSBUGAbFFMg8MO7YAvjHCgFhD39hL7YTbFjol04e/BPBH5RzQ=="
83 | },
84 | "@next/swc-android-arm-eabi": {
85 | "version": "13.1.6",
86 | "resolved": "https://registry.npmmirror.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.1.6.tgz",
87 | "integrity": "sha512-F3/6Z8LH/pGlPzR1AcjPFxx35mPqjE5xZcf+IL+KgbW9tMkp7CYi1y7qKrEWU7W4AumxX/8OINnDQWLiwLasLQ==",
88 | "optional": true
89 | },
90 | "@next/swc-android-arm64": {
91 | "version": "13.1.6",
92 | "resolved": "https://registry.npmmirror.com/@next/swc-android-arm64/-/swc-android-arm64-13.1.6.tgz",
93 | "integrity": "sha512-cMwQjnB8vrYkWyK/H0Rf2c2pKIH4RGjpKUDvbjVAit6SbwPDpmaijLio0LWFV3/tOnY6kvzbL62lndVA0mkYpw==",
94 | "optional": true
95 | },
96 | "@next/swc-darwin-arm64": {
97 | "version": "13.1.6",
98 | "resolved": "https://registry.npmmirror.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.1.6.tgz",
99 | "integrity": "sha512-KKRQH4DDE4kONXCvFMNBZGDb499Hs+xcFAwvj+rfSUssIDrZOlyfJNy55rH5t2Qxed1e4K80KEJgsxKQN1/fyw==",
100 | "optional": true
101 | },
102 | "@next/swc-darwin-x64": {
103 | "version": "13.1.6",
104 | "resolved": "https://registry.npmmirror.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.1.6.tgz",
105 | "integrity": "sha512-/uOky5PaZDoaU99ohjtNcDTJ6ks/gZ5ykTQDvNZDjIoCxFe3+t06bxsTPY6tAO6uEAw5f6vVFX5H5KLwhrkZCA==",
106 | "optional": true
107 | },
108 | "@next/swc-freebsd-x64": {
109 | "version": "13.1.6",
110 | "resolved": "https://registry.npmmirror.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.1.6.tgz",
111 | "integrity": "sha512-qaEALZeV7to6weSXk3Br80wtFQ7cFTpos/q+m9XVRFggu+8Ib895XhMWdJBzew6aaOcMvYR6KQ6JmHA2/eMzWw==",
112 | "optional": true
113 | },
114 | "@next/swc-linux-arm-gnueabihf": {
115 | "version": "13.1.6",
116 | "resolved": "https://registry.npmmirror.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.1.6.tgz",
117 | "integrity": "sha512-OybkbC58A1wJ+JrJSOjGDvZzrVEQA4sprJejGqMwiZyLqhr9Eo8FXF0y6HL+m1CPCpPhXEHz/2xKoYsl16kNqw==",
118 | "optional": true
119 | },
120 | "@next/swc-linux-arm64-gnu": {
121 | "version": "13.1.6",
122 | "resolved": "https://registry.npmmirror.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.1.6.tgz",
123 | "integrity": "sha512-yCH+yDr7/4FDuWv6+GiYrPI9kcTAO3y48UmaIbrKy8ZJpi7RehJe3vIBRUmLrLaNDH3rY1rwoHi471NvR5J5NQ==",
124 | "optional": true
125 | },
126 | "@next/swc-linux-arm64-musl": {
127 | "version": "13.1.6",
128 | "resolved": "https://registry.npmmirror.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.1.6.tgz",
129 | "integrity": "sha512-ECagB8LGX25P9Mrmlc7Q/TQBb9rGScxHbv/kLqqIWs2fIXy6Y/EiBBiM72NTwuXUFCNrWR4sjUPSooVBJJ3ESQ==",
130 | "optional": true
131 | },
132 | "@next/swc-linux-x64-gnu": {
133 | "version": "13.1.6",
134 | "resolved": "https://registry.npmmirror.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.1.6.tgz",
135 | "integrity": "sha512-GT5w2mruk90V/I5g6ScuueE7fqj/d8Bui2qxdw6lFxmuTgMeol5rnzAv4uAoVQgClOUO/MULilzlODg9Ib3Y4Q==",
136 | "optional": true
137 | },
138 | "@next/swc-linux-x64-musl": {
139 | "version": "13.1.6",
140 | "resolved": "https://registry.npmmirror.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.1.6.tgz",
141 | "integrity": "sha512-keFD6KvwOPzmat4TCnlnuxJCQepPN+8j3Nw876FtULxo8005Y9Ghcl7ACcR8GoiKoddAq8gxNBrpjoxjQRHeAQ==",
142 | "optional": true
143 | },
144 | "@next/swc-win32-arm64-msvc": {
145 | "version": "13.1.6",
146 | "resolved": "https://registry.npmmirror.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.1.6.tgz",
147 | "integrity": "sha512-OwertslIiGQluFvHyRDzBCIB07qJjqabAmINlXUYt7/sY7Q7QPE8xVi5beBxX/rxTGPIbtyIe3faBE6Z2KywhQ==",
148 | "optional": true
149 | },
150 | "@next/swc-win32-ia32-msvc": {
151 | "version": "13.1.6",
152 | "resolved": "https://registry.npmmirror.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.1.6.tgz",
153 | "integrity": "sha512-g8zowiuP8FxUR9zslPmlju7qYbs2XBtTLVSxVikPtUDQedhcls39uKYLvOOd1JZg0ehyhopobRoH1q+MHlIN/w==",
154 | "optional": true
155 | },
156 | "@next/swc-win32-x64-msvc": {
157 | "version": "13.1.6",
158 | "resolved": "https://registry.npmmirror.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.1.6.tgz",
159 | "integrity": "sha512-Ls2OL9hi3YlJKGNdKv8k3X/lLgc3VmLG3a/DeTkAd+lAituJp8ZHmRmm9f9SL84fT3CotlzcgbdaCDfFwFA6bA==",
160 | "optional": true
161 | },
162 | "@nodelib/fs.scandir": {
163 | "version": "2.1.5",
164 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
165 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
166 | "requires": {
167 | "@nodelib/fs.stat": "2.0.5",
168 | "run-parallel": "^1.1.9"
169 | }
170 | },
171 | "@nodelib/fs.stat": {
172 | "version": "2.0.5",
173 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
174 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A=="
175 | },
176 | "@nodelib/fs.walk": {
177 | "version": "1.2.8",
178 | "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
179 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
180 | "requires": {
181 | "@nodelib/fs.scandir": "2.1.5",
182 | "fastq": "^1.6.0"
183 | }
184 | },
185 | "@pkgr/utils": {
186 | "version": "2.3.1",
187 | "resolved": "https://registry.npmmirror.com/@pkgr/utils/-/utils-2.3.1.tgz",
188 | "integrity": "sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==",
189 | "requires": {
190 | "cross-spawn": "^7.0.3",
191 | "is-glob": "^4.0.3",
192 | "open": "^8.4.0",
193 | "picocolors": "^1.0.0",
194 | "tiny-glob": "^0.2.9",
195 | "tslib": "^2.4.0"
196 | },
197 | "dependencies": {
198 | "tslib": {
199 | "version": "2.5.0",
200 | "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.5.0.tgz",
201 | "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg=="
202 | }
203 | }
204 | },
205 | "@rushstack/eslint-patch": {
206 | "version": "1.2.0",
207 | "resolved": "https://registry.npmmirror.com/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz",
208 | "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg=="
209 | },
210 | "@swc/helpers": {
211 | "version": "0.4.14",
212 | "resolved": "https://registry.npmmirror.com/@swc/helpers/-/helpers-0.4.14.tgz",
213 | "integrity": "sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==",
214 | "requires": {
215 | "tslib": "^2.4.0"
216 | },
217 | "dependencies": {
218 | "tslib": {
219 | "version": "2.5.0",
220 | "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.5.0.tgz",
221 | "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg=="
222 | }
223 | }
224 | },
225 | "@types/json5": {
226 | "version": "0.0.29",
227 | "resolved": "https://registry.npmmirror.com/@types/json5/-/json5-0.0.29.tgz",
228 | "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ=="
229 | },
230 | "@types/node": {
231 | "version": "18.14.0",
232 | "resolved": "https://registry.npmmirror.com/@types/node/-/node-18.14.0.tgz",
233 | "integrity": "sha512-5EWrvLmglK+imbCJY0+INViFWUHg1AHel1sq4ZVSfdcNqGy9Edv3UB9IIzzg+xPaUcAgZYcfVs2fBcwDeZzU0A=="
234 | },
235 | "@types/prop-types": {
236 | "version": "15.7.5",
237 | "resolved": "https://registry.npmmirror.com/@types/prop-types/-/prop-types-15.7.5.tgz",
238 | "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w=="
239 | },
240 | "@types/react": {
241 | "version": "18.0.28",
242 | "resolved": "https://registry.npmmirror.com/@types/react/-/react-18.0.28.tgz",
243 | "integrity": "sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew==",
244 | "requires": {
245 | "@types/prop-types": "*",
246 | "@types/scheduler": "*",
247 | "csstype": "^3.0.2"
248 | }
249 | },
250 | "@types/react-dom": {
251 | "version": "18.0.11",
252 | "resolved": "https://registry.npmmirror.com/@types/react-dom/-/react-dom-18.0.11.tgz",
253 | "integrity": "sha512-O38bPbI2CWtgw/OoQoY+BRelw7uysmXbWvw3nLWO21H1HSh+GOlqPuXshJfjmpNlKiiSDG9cc1JZAaMmVdcTlw==",
254 | "requires": {
255 | "@types/react": "*"
256 | }
257 | },
258 | "@types/scheduler": {
259 | "version": "0.16.2",
260 | "resolved": "https://registry.npmmirror.com/@types/scheduler/-/scheduler-0.16.2.tgz",
261 | "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
262 | },
263 | "@typescript-eslint/parser": {
264 | "version": "5.52.0",
265 | "resolved": "https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-5.52.0.tgz",
266 | "integrity": "sha512-e2KiLQOZRo4Y0D/b+3y08i3jsekoSkOYStROYmPUnGMEoA0h+k2qOH5H6tcjIc68WDvGwH+PaOrP1XRzLJ6QlA==",
267 | "requires": {
268 | "@typescript-eslint/scope-manager": "5.52.0",
269 | "@typescript-eslint/types": "5.52.0",
270 | "@typescript-eslint/typescript-estree": "5.52.0",
271 | "debug": "^4.3.4"
272 | }
273 | },
274 | "@typescript-eslint/scope-manager": {
275 | "version": "5.52.0",
276 | "resolved": "https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-5.52.0.tgz",
277 | "integrity": "sha512-AR7sxxfBKiNV0FWBSARxM8DmNxrwgnYMPwmpkC1Pl1n+eT8/I2NAUPuwDy/FmDcC6F8pBfmOcaxcxRHspgOBMw==",
278 | "requires": {
279 | "@typescript-eslint/types": "5.52.0",
280 | "@typescript-eslint/visitor-keys": "5.52.0"
281 | }
282 | },
283 | "@typescript-eslint/types": {
284 | "version": "5.52.0",
285 | "resolved": "https://registry.npmmirror.com/@typescript-eslint/types/-/types-5.52.0.tgz",
286 | "integrity": "sha512-oV7XU4CHYfBhk78fS7tkum+/Dpgsfi91IIDy7fjCyq2k6KB63M6gMC0YIvy+iABzmXThCRI6xpCEyVObBdWSDQ=="
287 | },
288 | "@typescript-eslint/typescript-estree": {
289 | "version": "5.52.0",
290 | "resolved": "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.52.0.tgz",
291 | "integrity": "sha512-WeWnjanyEwt6+fVrSR0MYgEpUAuROxuAH516WPjUblIrClzYJj0kBbjdnbQXLpgAN8qbEuGywiQsXUVDiAoEuQ==",
292 | "requires": {
293 | "@typescript-eslint/types": "5.52.0",
294 | "@typescript-eslint/visitor-keys": "5.52.0",
295 | "debug": "^4.3.4",
296 | "globby": "^11.1.0",
297 | "is-glob": "^4.0.3",
298 | "semver": "^7.3.7",
299 | "tsutils": "^3.21.0"
300 | }
301 | },
302 | "@typescript-eslint/visitor-keys": {
303 | "version": "5.52.0",
304 | "resolved": "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.52.0.tgz",
305 | "integrity": "sha512-qMwpw6SU5VHCPr99y274xhbm+PRViK/NATY6qzt+Et7+mThGuFSl/ompj2/hrBlRP/kq+BFdgagnOSgw9TB0eA==",
306 | "requires": {
307 | "@typescript-eslint/types": "5.52.0",
308 | "eslint-visitor-keys": "^3.3.0"
309 | }
310 | },
311 | "acorn": {
312 | "version": "8.8.2",
313 | "resolved": "https://registry.npmmirror.com/acorn/-/acorn-8.8.2.tgz",
314 | "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw=="
315 | },
316 | "acorn-jsx": {
317 | "version": "5.3.2",
318 | "resolved": "https://registry.npmmirror.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
319 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ=="
320 | },
321 | "ajv": {
322 | "version": "6.12.6",
323 | "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz",
324 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
325 | "requires": {
326 | "fast-deep-equal": "^3.1.1",
327 | "fast-json-stable-stringify": "^2.0.0",
328 | "json-schema-traverse": "^0.4.1",
329 | "uri-js": "^4.2.2"
330 | }
331 | },
332 | "ansi-regex": {
333 | "version": "5.0.1",
334 | "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz",
335 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="
336 | },
337 | "ansi-styles": {
338 | "version": "4.3.0",
339 | "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz",
340 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
341 | "requires": {
342 | "color-convert": "^2.0.1"
343 | }
344 | },
345 | "argparse": {
346 | "version": "2.0.1",
347 | "resolved": "https://registry.npmmirror.com/argparse/-/argparse-2.0.1.tgz",
348 | "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
349 | },
350 | "aria-query": {
351 | "version": "5.1.3",
352 | "resolved": "https://registry.npmmirror.com/aria-query/-/aria-query-5.1.3.tgz",
353 | "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==",
354 | "requires": {
355 | "deep-equal": "^2.0.5"
356 | }
357 | },
358 | "array-includes": {
359 | "version": "3.1.6",
360 | "resolved": "https://registry.npmmirror.com/array-includes/-/array-includes-3.1.6.tgz",
361 | "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==",
362 | "requires": {
363 | "call-bind": "^1.0.2",
364 | "define-properties": "^1.1.4",
365 | "es-abstract": "^1.20.4",
366 | "get-intrinsic": "^1.1.3",
367 | "is-string": "^1.0.7"
368 | }
369 | },
370 | "array-union": {
371 | "version": "2.1.0",
372 | "resolved": "https://registry.npmmirror.com/array-union/-/array-union-2.1.0.tgz",
373 | "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="
374 | },
375 | "array.prototype.flat": {
376 | "version": "1.3.1",
377 | "resolved": "https://registry.npmmirror.com/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz",
378 | "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==",
379 | "requires": {
380 | "call-bind": "^1.0.2",
381 | "define-properties": "^1.1.4",
382 | "es-abstract": "^1.20.4",
383 | "es-shim-unscopables": "^1.0.0"
384 | }
385 | },
386 | "array.prototype.flatmap": {
387 | "version": "1.3.1",
388 | "resolved": "https://registry.npmmirror.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz",
389 | "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==",
390 | "requires": {
391 | "call-bind": "^1.0.2",
392 | "define-properties": "^1.1.4",
393 | "es-abstract": "^1.20.4",
394 | "es-shim-unscopables": "^1.0.0"
395 | }
396 | },
397 | "array.prototype.tosorted": {
398 | "version": "1.1.1",
399 | "resolved": "https://registry.npmmirror.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz",
400 | "integrity": "sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==",
401 | "requires": {
402 | "call-bind": "^1.0.2",
403 | "define-properties": "^1.1.4",
404 | "es-abstract": "^1.20.4",
405 | "es-shim-unscopables": "^1.0.0",
406 | "get-intrinsic": "^1.1.3"
407 | }
408 | },
409 | "ast-types-flow": {
410 | "version": "0.0.7",
411 | "resolved": "https://registry.npmmirror.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
412 | "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag=="
413 | },
414 | "available-typed-arrays": {
415 | "version": "1.0.5",
416 | "resolved": "https://registry.npmmirror.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
417 | "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw=="
418 | },
419 | "axe-core": {
420 | "version": "4.6.3",
421 | "resolved": "https://registry.npmmirror.com/axe-core/-/axe-core-4.6.3.tgz",
422 | "integrity": "sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg=="
423 | },
424 | "axobject-query": {
425 | "version": "3.1.1",
426 | "resolved": "https://registry.npmmirror.com/axobject-query/-/axobject-query-3.1.1.tgz",
427 | "integrity": "sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==",
428 | "requires": {
429 | "deep-equal": "^2.0.5"
430 | }
431 | },
432 | "balanced-match": {
433 | "version": "1.0.2",
434 | "resolved": "https://registry.npmmirror.com/balanced-match/-/balanced-match-1.0.2.tgz",
435 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="
436 | },
437 | "brace-expansion": {
438 | "version": "1.1.11",
439 | "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-1.1.11.tgz",
440 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
441 | "requires": {
442 | "balanced-match": "^1.0.0",
443 | "concat-map": "0.0.1"
444 | }
445 | },
446 | "braces": {
447 | "version": "3.0.2",
448 | "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.2.tgz",
449 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
450 | "requires": {
451 | "fill-range": "^7.0.1"
452 | }
453 | },
454 | "call-bind": {
455 | "version": "1.0.2",
456 | "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.2.tgz",
457 | "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
458 | "requires": {
459 | "function-bind": "^1.1.1",
460 | "get-intrinsic": "^1.0.2"
461 | }
462 | },
463 | "callsites": {
464 | "version": "3.1.0",
465 | "resolved": "https://registry.npmmirror.com/callsites/-/callsites-3.1.0.tgz",
466 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
467 | },
468 | "caniuse-lite": {
469 | "version": "1.0.30001457",
470 | "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001457.tgz",
471 | "integrity": "sha512-SDIV6bgE1aVbK6XyxdURbUE89zY7+k1BBBaOwYwkNCglXlel/E7mELiHC64HQ+W0xSKlqWhV9Wh7iHxUjMs4fA=="
472 | },
473 | "chalk": {
474 | "version": "4.1.2",
475 | "resolved": "https://registry.npmmirror.com/chalk/-/chalk-4.1.2.tgz",
476 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
477 | "requires": {
478 | "ansi-styles": "^4.1.0",
479 | "supports-color": "^7.1.0"
480 | }
481 | },
482 | "client-only": {
483 | "version": "0.0.1",
484 | "resolved": "https://registry.npmmirror.com/client-only/-/client-only-0.0.1.tgz",
485 | "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
486 | },
487 | "color-convert": {
488 | "version": "2.0.1",
489 | "resolved": "https://registry.npmmirror.com/color-convert/-/color-convert-2.0.1.tgz",
490 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
491 | "requires": {
492 | "color-name": "~1.1.4"
493 | }
494 | },
495 | "color-name": {
496 | "version": "1.1.4",
497 | "resolved": "https://registry.npmmirror.com/color-name/-/color-name-1.1.4.tgz",
498 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
499 | },
500 | "concat-map": {
501 | "version": "0.0.1",
502 | "resolved": "https://registry.npmmirror.com/concat-map/-/concat-map-0.0.1.tgz",
503 | "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="
504 | },
505 | "cross-spawn": {
506 | "version": "7.0.3",
507 | "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz",
508 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
509 | "requires": {
510 | "path-key": "^3.1.0",
511 | "shebang-command": "^2.0.0",
512 | "which": "^2.0.1"
513 | }
514 | },
515 | "csstype": {
516 | "version": "3.1.1",
517 | "resolved": "https://registry.npmmirror.com/csstype/-/csstype-3.1.1.tgz",
518 | "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw=="
519 | },
520 | "damerau-levenshtein": {
521 | "version": "1.0.8",
522 | "resolved": "https://registry.npmmirror.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz",
523 | "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA=="
524 | },
525 | "debug": {
526 | "version": "4.3.4",
527 | "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz",
528 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
529 | "requires": {
530 | "ms": "2.1.2"
531 | }
532 | },
533 | "deep-equal": {
534 | "version": "2.2.0",
535 | "resolved": "https://registry.npmmirror.com/deep-equal/-/deep-equal-2.2.0.tgz",
536 | "integrity": "sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==",
537 | "requires": {
538 | "call-bind": "^1.0.2",
539 | "es-get-iterator": "^1.1.2",
540 | "get-intrinsic": "^1.1.3",
541 | "is-arguments": "^1.1.1",
542 | "is-array-buffer": "^3.0.1",
543 | "is-date-object": "^1.0.5",
544 | "is-regex": "^1.1.4",
545 | "is-shared-array-buffer": "^1.0.2",
546 | "isarray": "^2.0.5",
547 | "object-is": "^1.1.5",
548 | "object-keys": "^1.1.1",
549 | "object.assign": "^4.1.4",
550 | "regexp.prototype.flags": "^1.4.3",
551 | "side-channel": "^1.0.4",
552 | "which-boxed-primitive": "^1.0.2",
553 | "which-collection": "^1.0.1",
554 | "which-typed-array": "^1.1.9"
555 | }
556 | },
557 | "deep-is": {
558 | "version": "0.1.4",
559 | "resolved": "https://registry.npmmirror.com/deep-is/-/deep-is-0.1.4.tgz",
560 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ=="
561 | },
562 | "define-lazy-prop": {
563 | "version": "2.0.0",
564 | "resolved": "https://registry.npmmirror.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
565 | "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og=="
566 | },
567 | "define-properties": {
568 | "version": "1.2.0",
569 | "resolved": "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.0.tgz",
570 | "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==",
571 | "requires": {
572 | "has-property-descriptors": "^1.0.0",
573 | "object-keys": "^1.1.1"
574 | }
575 | },
576 | "dir-glob": {
577 | "version": "3.0.1",
578 | "resolved": "https://registry.npmmirror.com/dir-glob/-/dir-glob-3.0.1.tgz",
579 | "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
580 | "requires": {
581 | "path-type": "^4.0.0"
582 | }
583 | },
584 | "doctrine": {
585 | "version": "3.0.0",
586 | "resolved": "https://registry.npmmirror.com/doctrine/-/doctrine-3.0.0.tgz",
587 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
588 | "requires": {
589 | "esutils": "^2.0.2"
590 | }
591 | },
592 | "emoji-regex": {
593 | "version": "9.2.2",
594 | "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-9.2.2.tgz",
595 | "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="
596 | },
597 | "enhanced-resolve": {
598 | "version": "5.12.0",
599 | "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz",
600 | "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==",
601 | "requires": {
602 | "graceful-fs": "^4.2.4",
603 | "tapable": "^2.2.0"
604 | }
605 | },
606 | "es-abstract": {
607 | "version": "1.21.1",
608 | "resolved": "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.21.1.tgz",
609 | "integrity": "sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==",
610 | "requires": {
611 | "available-typed-arrays": "^1.0.5",
612 | "call-bind": "^1.0.2",
613 | "es-set-tostringtag": "^2.0.1",
614 | "es-to-primitive": "^1.2.1",
615 | "function-bind": "^1.1.1",
616 | "function.prototype.name": "^1.1.5",
617 | "get-intrinsic": "^1.1.3",
618 | "get-symbol-description": "^1.0.0",
619 | "globalthis": "^1.0.3",
620 | "gopd": "^1.0.1",
621 | "has": "^1.0.3",
622 | "has-property-descriptors": "^1.0.0",
623 | "has-proto": "^1.0.1",
624 | "has-symbols": "^1.0.3",
625 | "internal-slot": "^1.0.4",
626 | "is-array-buffer": "^3.0.1",
627 | "is-callable": "^1.2.7",
628 | "is-negative-zero": "^2.0.2",
629 | "is-regex": "^1.1.4",
630 | "is-shared-array-buffer": "^1.0.2",
631 | "is-string": "^1.0.7",
632 | "is-typed-array": "^1.1.10",
633 | "is-weakref": "^1.0.2",
634 | "object-inspect": "^1.12.2",
635 | "object-keys": "^1.1.1",
636 | "object.assign": "^4.1.4",
637 | "regexp.prototype.flags": "^1.4.3",
638 | "safe-regex-test": "^1.0.0",
639 | "string.prototype.trimend": "^1.0.6",
640 | "string.prototype.trimstart": "^1.0.6",
641 | "typed-array-length": "^1.0.4",
642 | "unbox-primitive": "^1.0.2",
643 | "which-typed-array": "^1.1.9"
644 | }
645 | },
646 | "es-get-iterator": {
647 | "version": "1.1.3",
648 | "resolved": "https://registry.npmmirror.com/es-get-iterator/-/es-get-iterator-1.1.3.tgz",
649 | "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==",
650 | "requires": {
651 | "call-bind": "^1.0.2",
652 | "get-intrinsic": "^1.1.3",
653 | "has-symbols": "^1.0.3",
654 | "is-arguments": "^1.1.1",
655 | "is-map": "^2.0.2",
656 | "is-set": "^2.0.2",
657 | "is-string": "^1.0.7",
658 | "isarray": "^2.0.5",
659 | "stop-iteration-iterator": "^1.0.0"
660 | }
661 | },
662 | "es-set-tostringtag": {
663 | "version": "2.0.1",
664 | "resolved": "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz",
665 | "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==",
666 | "requires": {
667 | "get-intrinsic": "^1.1.3",
668 | "has": "^1.0.3",
669 | "has-tostringtag": "^1.0.0"
670 | }
671 | },
672 | "es-shim-unscopables": {
673 | "version": "1.0.0",
674 | "resolved": "https://registry.npmmirror.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz",
675 | "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==",
676 | "requires": {
677 | "has": "^1.0.3"
678 | }
679 | },
680 | "es-to-primitive": {
681 | "version": "1.2.1",
682 | "resolved": "https://registry.npmmirror.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
683 | "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
684 | "requires": {
685 | "is-callable": "^1.1.4",
686 | "is-date-object": "^1.0.1",
687 | "is-symbol": "^1.0.2"
688 | }
689 | },
690 | "escape-string-regexp": {
691 | "version": "4.0.0",
692 | "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
693 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
694 | },
695 | "eslint": {
696 | "version": "8.34.0",
697 | "resolved": "https://registry.npmmirror.com/eslint/-/eslint-8.34.0.tgz",
698 | "integrity": "sha512-1Z8iFsucw+7kSqXNZVslXS8Ioa4u2KM7GPwuKtkTFAqZ/cHMcEaR+1+Br0wLlot49cNxIiZk5wp8EAbPcYZxTg==",
699 | "requires": {
700 | "@eslint/eslintrc": "^1.4.1",
701 | "@humanwhocodes/config-array": "^0.11.8",
702 | "@humanwhocodes/module-importer": "^1.0.1",
703 | "@nodelib/fs.walk": "^1.2.8",
704 | "ajv": "^6.10.0",
705 | "chalk": "^4.0.0",
706 | "cross-spawn": "^7.0.2",
707 | "debug": "^4.3.2",
708 | "doctrine": "^3.0.0",
709 | "escape-string-regexp": "^4.0.0",
710 | "eslint-scope": "^7.1.1",
711 | "eslint-utils": "^3.0.0",
712 | "eslint-visitor-keys": "^3.3.0",
713 | "espree": "^9.4.0",
714 | "esquery": "^1.4.0",
715 | "esutils": "^2.0.2",
716 | "fast-deep-equal": "^3.1.3",
717 | "file-entry-cache": "^6.0.1",
718 | "find-up": "^5.0.0",
719 | "glob-parent": "^6.0.2",
720 | "globals": "^13.19.0",
721 | "grapheme-splitter": "^1.0.4",
722 | "ignore": "^5.2.0",
723 | "import-fresh": "^3.0.0",
724 | "imurmurhash": "^0.1.4",
725 | "is-glob": "^4.0.0",
726 | "is-path-inside": "^3.0.3",
727 | "js-sdsl": "^4.1.4",
728 | "js-yaml": "^4.1.0",
729 | "json-stable-stringify-without-jsonify": "^1.0.1",
730 | "levn": "^0.4.1",
731 | "lodash.merge": "^4.6.2",
732 | "minimatch": "^3.1.2",
733 | "natural-compare": "^1.4.0",
734 | "optionator": "^0.9.1",
735 | "regexpp": "^3.2.0",
736 | "strip-ansi": "^6.0.1",
737 | "strip-json-comments": "^3.1.0",
738 | "text-table": "^0.2.0"
739 | }
740 | },
741 | "eslint-config-next": {
742 | "version": "13.1.6",
743 | "resolved": "https://registry.npmmirror.com/eslint-config-next/-/eslint-config-next-13.1.6.tgz",
744 | "integrity": "sha512-0cg7h5wztg/SoLAlxljZ0ZPUQ7i6QKqRiP4M2+MgTZtxWwNKb2JSwNc18nJ6/kXBI6xYvPraTbQSIhAuVw6czw==",
745 | "requires": {
746 | "@next/eslint-plugin-next": "13.1.6",
747 | "@rushstack/eslint-patch": "^1.1.3",
748 | "@typescript-eslint/parser": "^5.42.0",
749 | "eslint-import-resolver-node": "^0.3.6",
750 | "eslint-import-resolver-typescript": "^3.5.2",
751 | "eslint-plugin-import": "^2.26.0",
752 | "eslint-plugin-jsx-a11y": "^6.5.1",
753 | "eslint-plugin-react": "^7.31.7",
754 | "eslint-plugin-react-hooks": "^4.5.0"
755 | }
756 | },
757 | "eslint-import-resolver-node": {
758 | "version": "0.3.7",
759 | "resolved": "https://registry.npmmirror.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz",
760 | "integrity": "sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==",
761 | "requires": {
762 | "debug": "^3.2.7",
763 | "is-core-module": "^2.11.0",
764 | "resolve": "^1.22.1"
765 | },
766 | "dependencies": {
767 | "debug": {
768 | "version": "3.2.7",
769 | "resolved": "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz",
770 | "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
771 | "requires": {
772 | "ms": "^2.1.1"
773 | }
774 | }
775 | }
776 | },
777 | "eslint-import-resolver-typescript": {
778 | "version": "3.5.3",
779 | "resolved": "https://registry.npmmirror.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.5.3.tgz",
780 | "integrity": "sha512-njRcKYBc3isE42LaTcJNVANR3R99H9bAxBDMNDr2W7yq5gYPxbU3MkdhsQukxZ/Xg9C2vcyLlDsbKfRDg0QvCQ==",
781 | "requires": {
782 | "debug": "^4.3.4",
783 | "enhanced-resolve": "^5.10.0",
784 | "get-tsconfig": "^4.2.0",
785 | "globby": "^13.1.2",
786 | "is-core-module": "^2.10.0",
787 | "is-glob": "^4.0.3",
788 | "synckit": "^0.8.4"
789 | },
790 | "dependencies": {
791 | "globby": {
792 | "version": "13.1.3",
793 | "resolved": "https://registry.npmmirror.com/globby/-/globby-13.1.3.tgz",
794 | "integrity": "sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==",
795 | "requires": {
796 | "dir-glob": "^3.0.1",
797 | "fast-glob": "^3.2.11",
798 | "ignore": "^5.2.0",
799 | "merge2": "^1.4.1",
800 | "slash": "^4.0.0"
801 | }
802 | },
803 | "slash": {
804 | "version": "4.0.0",
805 | "resolved": "https://registry.npmmirror.com/slash/-/slash-4.0.0.tgz",
806 | "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew=="
807 | }
808 | }
809 | },
810 | "eslint-module-utils": {
811 | "version": "2.7.4",
812 | "resolved": "https://registry.npmmirror.com/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz",
813 | "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==",
814 | "requires": {
815 | "debug": "^3.2.7"
816 | },
817 | "dependencies": {
818 | "debug": {
819 | "version": "3.2.7",
820 | "resolved": "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz",
821 | "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
822 | "requires": {
823 | "ms": "^2.1.1"
824 | }
825 | }
826 | }
827 | },
828 | "eslint-plugin-import": {
829 | "version": "2.27.5",
830 | "resolved": "https://registry.npmmirror.com/eslint-plugin-import/-/eslint-plugin-import-2.27.5.tgz",
831 | "integrity": "sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==",
832 | "requires": {
833 | "array-includes": "^3.1.6",
834 | "array.prototype.flat": "^1.3.1",
835 | "array.prototype.flatmap": "^1.3.1",
836 | "debug": "^3.2.7",
837 | "doctrine": "^2.1.0",
838 | "eslint-import-resolver-node": "^0.3.7",
839 | "eslint-module-utils": "^2.7.4",
840 | "has": "^1.0.3",
841 | "is-core-module": "^2.11.0",
842 | "is-glob": "^4.0.3",
843 | "minimatch": "^3.1.2",
844 | "object.values": "^1.1.6",
845 | "resolve": "^1.22.1",
846 | "semver": "^6.3.0",
847 | "tsconfig-paths": "^3.14.1"
848 | },
849 | "dependencies": {
850 | "debug": {
851 | "version": "3.2.7",
852 | "resolved": "https://registry.npmmirror.com/debug/-/debug-3.2.7.tgz",
853 | "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
854 | "requires": {
855 | "ms": "^2.1.1"
856 | }
857 | },
858 | "doctrine": {
859 | "version": "2.1.0",
860 | "resolved": "https://registry.npmmirror.com/doctrine/-/doctrine-2.1.0.tgz",
861 | "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
862 | "requires": {
863 | "esutils": "^2.0.2"
864 | }
865 | },
866 | "semver": {
867 | "version": "6.3.0",
868 | "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.0.tgz",
869 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
870 | }
871 | }
872 | },
873 | "eslint-plugin-jsx-a11y": {
874 | "version": "6.7.1",
875 | "resolved": "https://registry.npmmirror.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.7.1.tgz",
876 | "integrity": "sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==",
877 | "requires": {
878 | "@babel/runtime": "^7.20.7",
879 | "aria-query": "^5.1.3",
880 | "array-includes": "^3.1.6",
881 | "array.prototype.flatmap": "^1.3.1",
882 | "ast-types-flow": "^0.0.7",
883 | "axe-core": "^4.6.2",
884 | "axobject-query": "^3.1.1",
885 | "damerau-levenshtein": "^1.0.8",
886 | "emoji-regex": "^9.2.2",
887 | "has": "^1.0.3",
888 | "jsx-ast-utils": "^3.3.3",
889 | "language-tags": "=1.0.5",
890 | "minimatch": "^3.1.2",
891 | "object.entries": "^1.1.6",
892 | "object.fromentries": "^2.0.6",
893 | "semver": "^6.3.0"
894 | },
895 | "dependencies": {
896 | "semver": {
897 | "version": "6.3.0",
898 | "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.0.tgz",
899 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
900 | }
901 | }
902 | },
903 | "eslint-plugin-react": {
904 | "version": "7.32.2",
905 | "resolved": "https://registry.npmmirror.com/eslint-plugin-react/-/eslint-plugin-react-7.32.2.tgz",
906 | "integrity": "sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==",
907 | "requires": {
908 | "array-includes": "^3.1.6",
909 | "array.prototype.flatmap": "^1.3.1",
910 | "array.prototype.tosorted": "^1.1.1",
911 | "doctrine": "^2.1.0",
912 | "estraverse": "^5.3.0",
913 | "jsx-ast-utils": "^2.4.1 || ^3.0.0",
914 | "minimatch": "^3.1.2",
915 | "object.entries": "^1.1.6",
916 | "object.fromentries": "^2.0.6",
917 | "object.hasown": "^1.1.2",
918 | "object.values": "^1.1.6",
919 | "prop-types": "^15.8.1",
920 | "resolve": "^2.0.0-next.4",
921 | "semver": "^6.3.0",
922 | "string.prototype.matchall": "^4.0.8"
923 | },
924 | "dependencies": {
925 | "doctrine": {
926 | "version": "2.1.0",
927 | "resolved": "https://registry.npmmirror.com/doctrine/-/doctrine-2.1.0.tgz",
928 | "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
929 | "requires": {
930 | "esutils": "^2.0.2"
931 | }
932 | },
933 | "resolve": {
934 | "version": "2.0.0-next.4",
935 | "resolved": "https://registry.npmmirror.com/resolve/-/resolve-2.0.0-next.4.tgz",
936 | "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==",
937 | "requires": {
938 | "is-core-module": "^2.9.0",
939 | "path-parse": "^1.0.7",
940 | "supports-preserve-symlinks-flag": "^1.0.0"
941 | }
942 | },
943 | "semver": {
944 | "version": "6.3.0",
945 | "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.0.tgz",
946 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw=="
947 | }
948 | }
949 | },
950 | "eslint-plugin-react-hooks": {
951 | "version": "4.6.0",
952 | "resolved": "https://registry.npmmirror.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz",
953 | "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g=="
954 | },
955 | "eslint-scope": {
956 | "version": "7.1.1",
957 | "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-7.1.1.tgz",
958 | "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
959 | "requires": {
960 | "esrecurse": "^4.3.0",
961 | "estraverse": "^5.2.0"
962 | }
963 | },
964 | "eslint-utils": {
965 | "version": "3.0.0",
966 | "resolved": "https://registry.npmmirror.com/eslint-utils/-/eslint-utils-3.0.0.tgz",
967 | "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==",
968 | "requires": {
969 | "eslint-visitor-keys": "^2.0.0"
970 | },
971 | "dependencies": {
972 | "eslint-visitor-keys": {
973 | "version": "2.1.0",
974 | "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
975 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw=="
976 | }
977 | }
978 | },
979 | "eslint-visitor-keys": {
980 | "version": "3.3.0",
981 | "resolved": "https://registry.npmmirror.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
982 | "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA=="
983 | },
984 | "espree": {
985 | "version": "9.4.1",
986 | "resolved": "https://registry.npmmirror.com/espree/-/espree-9.4.1.tgz",
987 | "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==",
988 | "requires": {
989 | "acorn": "^8.8.0",
990 | "acorn-jsx": "^5.3.2",
991 | "eslint-visitor-keys": "^3.3.0"
992 | }
993 | },
994 | "esquery": {
995 | "version": "1.4.2",
996 | "resolved": "https://registry.npmmirror.com/esquery/-/esquery-1.4.2.tgz",
997 | "integrity": "sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==",
998 | "requires": {
999 | "estraverse": "^5.1.0"
1000 | }
1001 | },
1002 | "esrecurse": {
1003 | "version": "4.3.0",
1004 | "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz",
1005 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
1006 | "requires": {
1007 | "estraverse": "^5.2.0"
1008 | }
1009 | },
1010 | "estraverse": {
1011 | "version": "5.3.0",
1012 | "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz",
1013 | "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="
1014 | },
1015 | "esutils": {
1016 | "version": "2.0.3",
1017 | "resolved": "https://registry.npmmirror.com/esutils/-/esutils-2.0.3.tgz",
1018 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="
1019 | },
1020 | "fast-deep-equal": {
1021 | "version": "3.1.3",
1022 | "resolved": "https://registry.npmmirror.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
1023 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
1024 | },
1025 | "fast-glob": {
1026 | "version": "3.2.12",
1027 | "resolved": "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.2.12.tgz",
1028 | "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
1029 | "requires": {
1030 | "@nodelib/fs.stat": "^2.0.2",
1031 | "@nodelib/fs.walk": "^1.2.3",
1032 | "glob-parent": "^5.1.2",
1033 | "merge2": "^1.3.0",
1034 | "micromatch": "^4.0.4"
1035 | },
1036 | "dependencies": {
1037 | "glob-parent": {
1038 | "version": "5.1.2",
1039 | "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz",
1040 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
1041 | "requires": {
1042 | "is-glob": "^4.0.1"
1043 | }
1044 | }
1045 | }
1046 | },
1047 | "fast-json-stable-stringify": {
1048 | "version": "2.1.0",
1049 | "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
1050 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
1051 | },
1052 | "fast-levenshtein": {
1053 | "version": "2.0.6",
1054 | "resolved": "https://registry.npmmirror.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
1055 | "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw=="
1056 | },
1057 | "fastq": {
1058 | "version": "1.15.0",
1059 | "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.15.0.tgz",
1060 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==",
1061 | "requires": {
1062 | "reusify": "^1.0.4"
1063 | }
1064 | },
1065 | "file-entry-cache": {
1066 | "version": "6.0.1",
1067 | "resolved": "https://registry.npmmirror.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
1068 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
1069 | "requires": {
1070 | "flat-cache": "^3.0.4"
1071 | }
1072 | },
1073 | "fill-range": {
1074 | "version": "7.0.1",
1075 | "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.0.1.tgz",
1076 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
1077 | "requires": {
1078 | "to-regex-range": "^5.0.1"
1079 | }
1080 | },
1081 | "find-up": {
1082 | "version": "5.0.0",
1083 | "resolved": "https://registry.npmmirror.com/find-up/-/find-up-5.0.0.tgz",
1084 | "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
1085 | "requires": {
1086 | "locate-path": "^6.0.0",
1087 | "path-exists": "^4.0.0"
1088 | }
1089 | },
1090 | "flat-cache": {
1091 | "version": "3.0.4",
1092 | "resolved": "https://registry.npmmirror.com/flat-cache/-/flat-cache-3.0.4.tgz",
1093 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
1094 | "requires": {
1095 | "flatted": "^3.1.0",
1096 | "rimraf": "^3.0.2"
1097 | }
1098 | },
1099 | "flatted": {
1100 | "version": "3.2.7",
1101 | "resolved": "https://registry.npmmirror.com/flatted/-/flatted-3.2.7.tgz",
1102 | "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ=="
1103 | },
1104 | "for-each": {
1105 | "version": "0.3.3",
1106 | "resolved": "https://registry.npmmirror.com/for-each/-/for-each-0.3.3.tgz",
1107 | "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
1108 | "requires": {
1109 | "is-callable": "^1.1.3"
1110 | }
1111 | },
1112 | "fs.realpath": {
1113 | "version": "1.0.0",
1114 | "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz",
1115 | "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw=="
1116 | },
1117 | "function-bind": {
1118 | "version": "1.1.1",
1119 | "resolved": "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.1.tgz",
1120 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
1121 | },
1122 | "function.prototype.name": {
1123 | "version": "1.1.5",
1124 | "resolved": "https://registry.npmmirror.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz",
1125 | "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==",
1126 | "requires": {
1127 | "call-bind": "^1.0.2",
1128 | "define-properties": "^1.1.3",
1129 | "es-abstract": "^1.19.0",
1130 | "functions-have-names": "^1.2.2"
1131 | }
1132 | },
1133 | "functions-have-names": {
1134 | "version": "1.2.3",
1135 | "resolved": "https://registry.npmmirror.com/functions-have-names/-/functions-have-names-1.2.3.tgz",
1136 | "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ=="
1137 | },
1138 | "get-intrinsic": {
1139 | "version": "1.2.0",
1140 | "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz",
1141 | "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==",
1142 | "requires": {
1143 | "function-bind": "^1.1.1",
1144 | "has": "^1.0.3",
1145 | "has-symbols": "^1.0.3"
1146 | }
1147 | },
1148 | "get-symbol-description": {
1149 | "version": "1.0.0",
1150 | "resolved": "https://registry.npmmirror.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
1151 | "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
1152 | "requires": {
1153 | "call-bind": "^1.0.2",
1154 | "get-intrinsic": "^1.1.1"
1155 | }
1156 | },
1157 | "get-tsconfig": {
1158 | "version": "4.4.0",
1159 | "resolved": "https://registry.npmmirror.com/get-tsconfig/-/get-tsconfig-4.4.0.tgz",
1160 | "integrity": "sha512-0Gdjo/9+FzsYhXCEFueo2aY1z1tpXrxWZzP7k8ul9qt1U5o8rYJwTJYmaeHdrVosYIVYkOy2iwCJ9FdpocJhPQ=="
1161 | },
1162 | "glob": {
1163 | "version": "7.2.3",
1164 | "resolved": "https://registry.npmmirror.com/glob/-/glob-7.2.3.tgz",
1165 | "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
1166 | "requires": {
1167 | "fs.realpath": "^1.0.0",
1168 | "inflight": "^1.0.4",
1169 | "inherits": "2",
1170 | "minimatch": "^3.1.1",
1171 | "once": "^1.3.0",
1172 | "path-is-absolute": "^1.0.0"
1173 | }
1174 | },
1175 | "glob-parent": {
1176 | "version": "6.0.2",
1177 | "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-6.0.2.tgz",
1178 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
1179 | "requires": {
1180 | "is-glob": "^4.0.3"
1181 | }
1182 | },
1183 | "globals": {
1184 | "version": "13.20.0",
1185 | "resolved": "https://registry.npmmirror.com/globals/-/globals-13.20.0.tgz",
1186 | "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==",
1187 | "requires": {
1188 | "type-fest": "^0.20.2"
1189 | }
1190 | },
1191 | "globalthis": {
1192 | "version": "1.0.3",
1193 | "resolved": "https://registry.npmmirror.com/globalthis/-/globalthis-1.0.3.tgz",
1194 | "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==",
1195 | "requires": {
1196 | "define-properties": "^1.1.3"
1197 | }
1198 | },
1199 | "globalyzer": {
1200 | "version": "0.1.0",
1201 | "resolved": "https://registry.npmmirror.com/globalyzer/-/globalyzer-0.1.0.tgz",
1202 | "integrity": "sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q=="
1203 | },
1204 | "globby": {
1205 | "version": "11.1.0",
1206 | "resolved": "https://registry.npmmirror.com/globby/-/globby-11.1.0.tgz",
1207 | "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
1208 | "requires": {
1209 | "array-union": "^2.1.0",
1210 | "dir-glob": "^3.0.1",
1211 | "fast-glob": "^3.2.9",
1212 | "ignore": "^5.2.0",
1213 | "merge2": "^1.4.1",
1214 | "slash": "^3.0.0"
1215 | }
1216 | },
1217 | "globrex": {
1218 | "version": "0.1.2",
1219 | "resolved": "https://registry.npmmirror.com/globrex/-/globrex-0.1.2.tgz",
1220 | "integrity": "sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg=="
1221 | },
1222 | "gopd": {
1223 | "version": "1.0.1",
1224 | "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.0.1.tgz",
1225 | "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
1226 | "requires": {
1227 | "get-intrinsic": "^1.1.3"
1228 | }
1229 | },
1230 | "graceful-fs": {
1231 | "version": "4.2.10",
1232 | "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz",
1233 | "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA=="
1234 | },
1235 | "grapheme-splitter": {
1236 | "version": "1.0.4",
1237 | "resolved": "https://registry.npmmirror.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
1238 | "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ=="
1239 | },
1240 | "has": {
1241 | "version": "1.0.3",
1242 | "resolved": "https://registry.npmmirror.com/has/-/has-1.0.3.tgz",
1243 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
1244 | "requires": {
1245 | "function-bind": "^1.1.1"
1246 | }
1247 | },
1248 | "has-bigints": {
1249 | "version": "1.0.2",
1250 | "resolved": "https://registry.npmmirror.com/has-bigints/-/has-bigints-1.0.2.tgz",
1251 | "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ=="
1252 | },
1253 | "has-flag": {
1254 | "version": "4.0.0",
1255 | "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-4.0.0.tgz",
1256 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
1257 | },
1258 | "has-property-descriptors": {
1259 | "version": "1.0.0",
1260 | "resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz",
1261 | "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==",
1262 | "requires": {
1263 | "get-intrinsic": "^1.1.1"
1264 | }
1265 | },
1266 | "has-proto": {
1267 | "version": "1.0.1",
1268 | "resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.0.1.tgz",
1269 | "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg=="
1270 | },
1271 | "has-symbols": {
1272 | "version": "1.0.3",
1273 | "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.0.3.tgz",
1274 | "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A=="
1275 | },
1276 | "has-tostringtag": {
1277 | "version": "1.0.0",
1278 | "resolved": "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
1279 | "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
1280 | "requires": {
1281 | "has-symbols": "^1.0.2"
1282 | }
1283 | },
1284 | "ignore": {
1285 | "version": "5.2.4",
1286 | "resolved": "https://registry.npmmirror.com/ignore/-/ignore-5.2.4.tgz",
1287 | "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ=="
1288 | },
1289 | "import-fresh": {
1290 | "version": "3.3.0",
1291 | "resolved": "https://registry.npmmirror.com/import-fresh/-/import-fresh-3.3.0.tgz",
1292 | "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
1293 | "requires": {
1294 | "parent-module": "^1.0.0",
1295 | "resolve-from": "^4.0.0"
1296 | }
1297 | },
1298 | "imurmurhash": {
1299 | "version": "0.1.4",
1300 | "resolved": "https://registry.npmmirror.com/imurmurhash/-/imurmurhash-0.1.4.tgz",
1301 | "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="
1302 | },
1303 | "inflight": {
1304 | "version": "1.0.6",
1305 | "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz",
1306 | "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
1307 | "requires": {
1308 | "once": "^1.3.0",
1309 | "wrappy": "1"
1310 | }
1311 | },
1312 | "inherits": {
1313 | "version": "2.0.4",
1314 | "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz",
1315 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
1316 | },
1317 | "internal-slot": {
1318 | "version": "1.0.5",
1319 | "resolved": "https://registry.npmmirror.com/internal-slot/-/internal-slot-1.0.5.tgz",
1320 | "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==",
1321 | "requires": {
1322 | "get-intrinsic": "^1.2.0",
1323 | "has": "^1.0.3",
1324 | "side-channel": "^1.0.4"
1325 | }
1326 | },
1327 | "is-arguments": {
1328 | "version": "1.1.1",
1329 | "resolved": "https://registry.npmmirror.com/is-arguments/-/is-arguments-1.1.1.tgz",
1330 | "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
1331 | "requires": {
1332 | "call-bind": "^1.0.2",
1333 | "has-tostringtag": "^1.0.0"
1334 | }
1335 | },
1336 | "is-array-buffer": {
1337 | "version": "3.0.1",
1338 | "resolved": "https://registry.npmmirror.com/is-array-buffer/-/is-array-buffer-3.0.1.tgz",
1339 | "integrity": "sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==",
1340 | "requires": {
1341 | "call-bind": "^1.0.2",
1342 | "get-intrinsic": "^1.1.3",
1343 | "is-typed-array": "^1.1.10"
1344 | }
1345 | },
1346 | "is-bigint": {
1347 | "version": "1.0.4",
1348 | "resolved": "https://registry.npmmirror.com/is-bigint/-/is-bigint-1.0.4.tgz",
1349 | "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
1350 | "requires": {
1351 | "has-bigints": "^1.0.1"
1352 | }
1353 | },
1354 | "is-boolean-object": {
1355 | "version": "1.1.2",
1356 | "resolved": "https://registry.npmmirror.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
1357 | "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
1358 | "requires": {
1359 | "call-bind": "^1.0.2",
1360 | "has-tostringtag": "^1.0.0"
1361 | }
1362 | },
1363 | "is-callable": {
1364 | "version": "1.2.7",
1365 | "resolved": "https://registry.npmmirror.com/is-callable/-/is-callable-1.2.7.tgz",
1366 | "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA=="
1367 | },
1368 | "is-core-module": {
1369 | "version": "2.11.0",
1370 | "resolved": "https://registry.npmmirror.com/is-core-module/-/is-core-module-2.11.0.tgz",
1371 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==",
1372 | "requires": {
1373 | "has": "^1.0.3"
1374 | }
1375 | },
1376 | "is-date-object": {
1377 | "version": "1.0.5",
1378 | "resolved": "https://registry.npmmirror.com/is-date-object/-/is-date-object-1.0.5.tgz",
1379 | "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
1380 | "requires": {
1381 | "has-tostringtag": "^1.0.0"
1382 | }
1383 | },
1384 | "is-docker": {
1385 | "version": "2.2.1",
1386 | "resolved": "https://registry.npmmirror.com/is-docker/-/is-docker-2.2.1.tgz",
1387 | "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ=="
1388 | },
1389 | "is-extglob": {
1390 | "version": "2.1.1",
1391 | "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz",
1392 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="
1393 | },
1394 | "is-glob": {
1395 | "version": "4.0.3",
1396 | "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz",
1397 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
1398 | "requires": {
1399 | "is-extglob": "^2.1.1"
1400 | }
1401 | },
1402 | "is-map": {
1403 | "version": "2.0.2",
1404 | "resolved": "https://registry.npmmirror.com/is-map/-/is-map-2.0.2.tgz",
1405 | "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg=="
1406 | },
1407 | "is-negative-zero": {
1408 | "version": "2.0.2",
1409 | "resolved": "https://registry.npmmirror.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
1410 | "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA=="
1411 | },
1412 | "is-number": {
1413 | "version": "7.0.0",
1414 | "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz",
1415 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
1416 | },
1417 | "is-number-object": {
1418 | "version": "1.0.7",
1419 | "resolved": "https://registry.npmmirror.com/is-number-object/-/is-number-object-1.0.7.tgz",
1420 | "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
1421 | "requires": {
1422 | "has-tostringtag": "^1.0.0"
1423 | }
1424 | },
1425 | "is-path-inside": {
1426 | "version": "3.0.3",
1427 | "resolved": "https://registry.npmmirror.com/is-path-inside/-/is-path-inside-3.0.3.tgz",
1428 | "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ=="
1429 | },
1430 | "is-regex": {
1431 | "version": "1.1.4",
1432 | "resolved": "https://registry.npmmirror.com/is-regex/-/is-regex-1.1.4.tgz",
1433 | "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
1434 | "requires": {
1435 | "call-bind": "^1.0.2",
1436 | "has-tostringtag": "^1.0.0"
1437 | }
1438 | },
1439 | "is-set": {
1440 | "version": "2.0.2",
1441 | "resolved": "https://registry.npmmirror.com/is-set/-/is-set-2.0.2.tgz",
1442 | "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g=="
1443 | },
1444 | "is-shared-array-buffer": {
1445 | "version": "1.0.2",
1446 | "resolved": "https://registry.npmmirror.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
1447 | "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==",
1448 | "requires": {
1449 | "call-bind": "^1.0.2"
1450 | }
1451 | },
1452 | "is-string": {
1453 | "version": "1.0.7",
1454 | "resolved": "https://registry.npmmirror.com/is-string/-/is-string-1.0.7.tgz",
1455 | "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
1456 | "requires": {
1457 | "has-tostringtag": "^1.0.0"
1458 | }
1459 | },
1460 | "is-symbol": {
1461 | "version": "1.0.4",
1462 | "resolved": "https://registry.npmmirror.com/is-symbol/-/is-symbol-1.0.4.tgz",
1463 | "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
1464 | "requires": {
1465 | "has-symbols": "^1.0.2"
1466 | }
1467 | },
1468 | "is-typed-array": {
1469 | "version": "1.1.10",
1470 | "resolved": "https://registry.npmmirror.com/is-typed-array/-/is-typed-array-1.1.10.tgz",
1471 | "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==",
1472 | "requires": {
1473 | "available-typed-arrays": "^1.0.5",
1474 | "call-bind": "^1.0.2",
1475 | "for-each": "^0.3.3",
1476 | "gopd": "^1.0.1",
1477 | "has-tostringtag": "^1.0.0"
1478 | }
1479 | },
1480 | "is-weakmap": {
1481 | "version": "2.0.1",
1482 | "resolved": "https://registry.npmmirror.com/is-weakmap/-/is-weakmap-2.0.1.tgz",
1483 | "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA=="
1484 | },
1485 | "is-weakref": {
1486 | "version": "1.0.2",
1487 | "resolved": "https://registry.npmmirror.com/is-weakref/-/is-weakref-1.0.2.tgz",
1488 | "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
1489 | "requires": {
1490 | "call-bind": "^1.0.2"
1491 | }
1492 | },
1493 | "is-weakset": {
1494 | "version": "2.0.2",
1495 | "resolved": "https://registry.npmmirror.com/is-weakset/-/is-weakset-2.0.2.tgz",
1496 | "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==",
1497 | "requires": {
1498 | "call-bind": "^1.0.2",
1499 | "get-intrinsic": "^1.1.1"
1500 | }
1501 | },
1502 | "is-wsl": {
1503 | "version": "2.2.0",
1504 | "resolved": "https://registry.npmmirror.com/is-wsl/-/is-wsl-2.2.0.tgz",
1505 | "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
1506 | "requires": {
1507 | "is-docker": "^2.0.0"
1508 | }
1509 | },
1510 | "isarray": {
1511 | "version": "2.0.5",
1512 | "resolved": "https://registry.npmmirror.com/isarray/-/isarray-2.0.5.tgz",
1513 | "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw=="
1514 | },
1515 | "isexe": {
1516 | "version": "2.0.0",
1517 | "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz",
1518 | "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
1519 | },
1520 | "js-sdsl": {
1521 | "version": "4.3.0",
1522 | "resolved": "https://registry.npmmirror.com/js-sdsl/-/js-sdsl-4.3.0.tgz",
1523 | "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ=="
1524 | },
1525 | "js-tokens": {
1526 | "version": "4.0.0",
1527 | "resolved": "https://registry.npmmirror.com/js-tokens/-/js-tokens-4.0.0.tgz",
1528 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
1529 | },
1530 | "js-yaml": {
1531 | "version": "4.1.0",
1532 | "resolved": "https://registry.npmmirror.com/js-yaml/-/js-yaml-4.1.0.tgz",
1533 | "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
1534 | "requires": {
1535 | "argparse": "^2.0.1"
1536 | }
1537 | },
1538 | "json-schema-traverse": {
1539 | "version": "0.4.1",
1540 | "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
1541 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg=="
1542 | },
1543 | "json-stable-stringify-without-jsonify": {
1544 | "version": "1.0.1",
1545 | "resolved": "https://registry.npmmirror.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
1546 | "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw=="
1547 | },
1548 | "json5": {
1549 | "version": "1.0.2",
1550 | "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz",
1551 | "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
1552 | "requires": {
1553 | "minimist": "^1.2.0"
1554 | }
1555 | },
1556 | "jsx-ast-utils": {
1557 | "version": "3.3.3",
1558 | "resolved": "https://registry.npmmirror.com/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz",
1559 | "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==",
1560 | "requires": {
1561 | "array-includes": "^3.1.5",
1562 | "object.assign": "^4.1.3"
1563 | }
1564 | },
1565 | "language-subtag-registry": {
1566 | "version": "0.3.22",
1567 | "resolved": "https://registry.npmmirror.com/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz",
1568 | "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w=="
1569 | },
1570 | "language-tags": {
1571 | "version": "1.0.5",
1572 | "resolved": "https://registry.npmmirror.com/language-tags/-/language-tags-1.0.5.tgz",
1573 | "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==",
1574 | "requires": {
1575 | "language-subtag-registry": "~0.3.2"
1576 | }
1577 | },
1578 | "levn": {
1579 | "version": "0.4.1",
1580 | "resolved": "https://registry.npmmirror.com/levn/-/levn-0.4.1.tgz",
1581 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
1582 | "requires": {
1583 | "prelude-ls": "^1.2.1",
1584 | "type-check": "~0.4.0"
1585 | }
1586 | },
1587 | "locate-path": {
1588 | "version": "6.0.0",
1589 | "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-6.0.0.tgz",
1590 | "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
1591 | "requires": {
1592 | "p-locate": "^5.0.0"
1593 | }
1594 | },
1595 | "lodash.merge": {
1596 | "version": "4.6.2",
1597 | "resolved": "https://registry.npmmirror.com/lodash.merge/-/lodash.merge-4.6.2.tgz",
1598 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
1599 | },
1600 | "loose-envify": {
1601 | "version": "1.4.0",
1602 | "resolved": "https://registry.npmmirror.com/loose-envify/-/loose-envify-1.4.0.tgz",
1603 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
1604 | "requires": {
1605 | "js-tokens": "^3.0.0 || ^4.0.0"
1606 | }
1607 | },
1608 | "lru-cache": {
1609 | "version": "6.0.0",
1610 | "resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-6.0.0.tgz",
1611 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
1612 | "requires": {
1613 | "yallist": "^4.0.0"
1614 | }
1615 | },
1616 | "merge2": {
1617 | "version": "1.4.1",
1618 | "resolved": "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz",
1619 | "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg=="
1620 | },
1621 | "micromatch": {
1622 | "version": "4.0.5",
1623 | "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz",
1624 | "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
1625 | "requires": {
1626 | "braces": "^3.0.2",
1627 | "picomatch": "^2.3.1"
1628 | }
1629 | },
1630 | "minimatch": {
1631 | "version": "3.1.2",
1632 | "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz",
1633 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
1634 | "requires": {
1635 | "brace-expansion": "^1.1.7"
1636 | }
1637 | },
1638 | "minimist": {
1639 | "version": "1.2.8",
1640 | "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz",
1641 | "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
1642 | },
1643 | "ms": {
1644 | "version": "2.1.2",
1645 | "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz",
1646 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
1647 | },
1648 | "nanoid": {
1649 | "version": "3.3.4",
1650 | "resolved": "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.4.tgz",
1651 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw=="
1652 | },
1653 | "natural-compare": {
1654 | "version": "1.4.0",
1655 | "resolved": "https://registry.npmmirror.com/natural-compare/-/natural-compare-1.4.0.tgz",
1656 | "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="
1657 | },
1658 | "next": {
1659 | "version": "13.1.6",
1660 | "resolved": "https://registry.npmmirror.com/next/-/next-13.1.6.tgz",
1661 | "integrity": "sha512-hHlbhKPj9pW+Cymvfzc15lvhaOZ54l+8sXDXJWm3OBNBzgrVj6hwGPmqqsXg40xO1Leq+kXpllzRPuncpC0Phw==",
1662 | "requires": {
1663 | "@next/env": "13.1.6",
1664 | "@next/swc-android-arm-eabi": "13.1.6",
1665 | "@next/swc-android-arm64": "13.1.6",
1666 | "@next/swc-darwin-arm64": "13.1.6",
1667 | "@next/swc-darwin-x64": "13.1.6",
1668 | "@next/swc-freebsd-x64": "13.1.6",
1669 | "@next/swc-linux-arm-gnueabihf": "13.1.6",
1670 | "@next/swc-linux-arm64-gnu": "13.1.6",
1671 | "@next/swc-linux-arm64-musl": "13.1.6",
1672 | "@next/swc-linux-x64-gnu": "13.1.6",
1673 | "@next/swc-linux-x64-musl": "13.1.6",
1674 | "@next/swc-win32-arm64-msvc": "13.1.6",
1675 | "@next/swc-win32-ia32-msvc": "13.1.6",
1676 | "@next/swc-win32-x64-msvc": "13.1.6",
1677 | "@swc/helpers": "0.4.14",
1678 | "caniuse-lite": "^1.0.30001406",
1679 | "postcss": "8.4.14",
1680 | "styled-jsx": "5.1.1"
1681 | }
1682 | },
1683 | "object-assign": {
1684 | "version": "4.1.1",
1685 | "resolved": "https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz",
1686 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="
1687 | },
1688 | "object-inspect": {
1689 | "version": "1.12.3",
1690 | "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.12.3.tgz",
1691 | "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g=="
1692 | },
1693 | "object-is": {
1694 | "version": "1.1.5",
1695 | "resolved": "https://registry.npmmirror.com/object-is/-/object-is-1.1.5.tgz",
1696 | "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==",
1697 | "requires": {
1698 | "call-bind": "^1.0.2",
1699 | "define-properties": "^1.1.3"
1700 | }
1701 | },
1702 | "object-keys": {
1703 | "version": "1.1.1",
1704 | "resolved": "https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz",
1705 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="
1706 | },
1707 | "object.assign": {
1708 | "version": "4.1.4",
1709 | "resolved": "https://registry.npmmirror.com/object.assign/-/object.assign-4.1.4.tgz",
1710 | "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==",
1711 | "requires": {
1712 | "call-bind": "^1.0.2",
1713 | "define-properties": "^1.1.4",
1714 | "has-symbols": "^1.0.3",
1715 | "object-keys": "^1.1.1"
1716 | }
1717 | },
1718 | "object.entries": {
1719 | "version": "1.1.6",
1720 | "resolved": "https://registry.npmmirror.com/object.entries/-/object.entries-1.1.6.tgz",
1721 | "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==",
1722 | "requires": {
1723 | "call-bind": "^1.0.2",
1724 | "define-properties": "^1.1.4",
1725 | "es-abstract": "^1.20.4"
1726 | }
1727 | },
1728 | "object.fromentries": {
1729 | "version": "2.0.6",
1730 | "resolved": "https://registry.npmmirror.com/object.fromentries/-/object.fromentries-2.0.6.tgz",
1731 | "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==",
1732 | "requires": {
1733 | "call-bind": "^1.0.2",
1734 | "define-properties": "^1.1.4",
1735 | "es-abstract": "^1.20.4"
1736 | }
1737 | },
1738 | "object.hasown": {
1739 | "version": "1.1.2",
1740 | "resolved": "https://registry.npmmirror.com/object.hasown/-/object.hasown-1.1.2.tgz",
1741 | "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==",
1742 | "requires": {
1743 | "define-properties": "^1.1.4",
1744 | "es-abstract": "^1.20.4"
1745 | }
1746 | },
1747 | "object.values": {
1748 | "version": "1.1.6",
1749 | "resolved": "https://registry.npmmirror.com/object.values/-/object.values-1.1.6.tgz",
1750 | "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==",
1751 | "requires": {
1752 | "call-bind": "^1.0.2",
1753 | "define-properties": "^1.1.4",
1754 | "es-abstract": "^1.20.4"
1755 | }
1756 | },
1757 | "once": {
1758 | "version": "1.4.0",
1759 | "resolved": "https://registry.npmmirror.com/once/-/once-1.4.0.tgz",
1760 | "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
1761 | "requires": {
1762 | "wrappy": "1"
1763 | }
1764 | },
1765 | "open": {
1766 | "version": "8.4.1",
1767 | "resolved": "https://registry.npmmirror.com/open/-/open-8.4.1.tgz",
1768 | "integrity": "sha512-/4b7qZNhv6Uhd7jjnREh1NjnPxlTq+XNWPG88Ydkj5AILcA5m3ajvcg57pB24EQjKv0dK62XnDqk9c/hkIG5Kg==",
1769 | "requires": {
1770 | "define-lazy-prop": "^2.0.0",
1771 | "is-docker": "^2.1.1",
1772 | "is-wsl": "^2.2.0"
1773 | }
1774 | },
1775 | "optionator": {
1776 | "version": "0.9.1",
1777 | "resolved": "https://registry.npmmirror.com/optionator/-/optionator-0.9.1.tgz",
1778 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
1779 | "requires": {
1780 | "deep-is": "^0.1.3",
1781 | "fast-levenshtein": "^2.0.6",
1782 | "levn": "^0.4.1",
1783 | "prelude-ls": "^1.2.1",
1784 | "type-check": "^0.4.0",
1785 | "word-wrap": "^1.2.3"
1786 | }
1787 | },
1788 | "p-limit": {
1789 | "version": "3.1.0",
1790 | "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-3.1.0.tgz",
1791 | "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
1792 | "requires": {
1793 | "yocto-queue": "^0.1.0"
1794 | }
1795 | },
1796 | "p-locate": {
1797 | "version": "5.0.0",
1798 | "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-5.0.0.tgz",
1799 | "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
1800 | "requires": {
1801 | "p-limit": "^3.0.2"
1802 | }
1803 | },
1804 | "parent-module": {
1805 | "version": "1.0.1",
1806 | "resolved": "https://registry.npmmirror.com/parent-module/-/parent-module-1.0.1.tgz",
1807 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
1808 | "requires": {
1809 | "callsites": "^3.0.0"
1810 | }
1811 | },
1812 | "path-exists": {
1813 | "version": "4.0.0",
1814 | "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz",
1815 | "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
1816 | },
1817 | "path-is-absolute": {
1818 | "version": "1.0.1",
1819 | "resolved": "https://registry.npmmirror.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
1820 | "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg=="
1821 | },
1822 | "path-key": {
1823 | "version": "3.1.1",
1824 | "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz",
1825 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
1826 | },
1827 | "path-parse": {
1828 | "version": "1.0.7",
1829 | "resolved": "https://registry.npmmirror.com/path-parse/-/path-parse-1.0.7.tgz",
1830 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
1831 | },
1832 | "path-type": {
1833 | "version": "4.0.0",
1834 | "resolved": "https://registry.npmmirror.com/path-type/-/path-type-4.0.0.tgz",
1835 | "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
1836 | },
1837 | "picocolors": {
1838 | "version": "1.0.0",
1839 | "resolved": "https://registry.npmmirror.com/picocolors/-/picocolors-1.0.0.tgz",
1840 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
1841 | },
1842 | "picomatch": {
1843 | "version": "2.3.1",
1844 | "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz",
1845 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
1846 | },
1847 | "postcss": {
1848 | "version": "8.4.14",
1849 | "resolved": "https://registry.npmmirror.com/postcss/-/postcss-8.4.14.tgz",
1850 | "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
1851 | "requires": {
1852 | "nanoid": "^3.3.4",
1853 | "picocolors": "^1.0.0",
1854 | "source-map-js": "^1.0.2"
1855 | }
1856 | },
1857 | "prelude-ls": {
1858 | "version": "1.2.1",
1859 | "resolved": "https://registry.npmmirror.com/prelude-ls/-/prelude-ls-1.2.1.tgz",
1860 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="
1861 | },
1862 | "prop-types": {
1863 | "version": "15.8.1",
1864 | "resolved": "https://registry.npmmirror.com/prop-types/-/prop-types-15.8.1.tgz",
1865 | "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
1866 | "requires": {
1867 | "loose-envify": "^1.4.0",
1868 | "object-assign": "^4.1.1",
1869 | "react-is": "^16.13.1"
1870 | }
1871 | },
1872 | "punycode": {
1873 | "version": "2.3.0",
1874 | "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.0.tgz",
1875 | "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA=="
1876 | },
1877 | "queue-microtask": {
1878 | "version": "1.2.3",
1879 | "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz",
1880 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="
1881 | },
1882 | "react": {
1883 | "version": "18.2.0",
1884 | "resolved": "https://registry.npmmirror.com/react/-/react-18.2.0.tgz",
1885 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==",
1886 | "requires": {
1887 | "loose-envify": "^1.1.0"
1888 | }
1889 | },
1890 | "react-dom": {
1891 | "version": "18.2.0",
1892 | "resolved": "https://registry.npmmirror.com/react-dom/-/react-dom-18.2.0.tgz",
1893 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==",
1894 | "requires": {
1895 | "loose-envify": "^1.1.0",
1896 | "scheduler": "^0.23.0"
1897 | }
1898 | },
1899 | "react-is": {
1900 | "version": "16.13.1",
1901 | "resolved": "https://registry.npmmirror.com/react-is/-/react-is-16.13.1.tgz",
1902 | "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
1903 | },
1904 | "regenerator-runtime": {
1905 | "version": "0.13.11",
1906 | "resolved": "https://registry.npmmirror.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz",
1907 | "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg=="
1908 | },
1909 | "regexp.prototype.flags": {
1910 | "version": "1.4.3",
1911 | "resolved": "https://registry.npmmirror.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz",
1912 | "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==",
1913 | "requires": {
1914 | "call-bind": "^1.0.2",
1915 | "define-properties": "^1.1.3",
1916 | "functions-have-names": "^1.2.2"
1917 | }
1918 | },
1919 | "regexpp": {
1920 | "version": "3.2.0",
1921 | "resolved": "https://registry.npmmirror.com/regexpp/-/regexpp-3.2.0.tgz",
1922 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg=="
1923 | },
1924 | "resolve": {
1925 | "version": "1.22.1",
1926 | "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.1.tgz",
1927 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==",
1928 | "requires": {
1929 | "is-core-module": "^2.9.0",
1930 | "path-parse": "^1.0.7",
1931 | "supports-preserve-symlinks-flag": "^1.0.0"
1932 | }
1933 | },
1934 | "resolve-from": {
1935 | "version": "4.0.0",
1936 | "resolved": "https://registry.npmmirror.com/resolve-from/-/resolve-from-4.0.0.tgz",
1937 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
1938 | },
1939 | "reusify": {
1940 | "version": "1.0.4",
1941 | "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz",
1942 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw=="
1943 | },
1944 | "rimraf": {
1945 | "version": "3.0.2",
1946 | "resolved": "https://registry.npmmirror.com/rimraf/-/rimraf-3.0.2.tgz",
1947 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
1948 | "requires": {
1949 | "glob": "^7.1.3"
1950 | }
1951 | },
1952 | "run-parallel": {
1953 | "version": "1.2.0",
1954 | "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz",
1955 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
1956 | "requires": {
1957 | "queue-microtask": "^1.2.2"
1958 | }
1959 | },
1960 | "safe-regex-test": {
1961 | "version": "1.0.0",
1962 | "resolved": "https://registry.npmmirror.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
1963 | "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==",
1964 | "requires": {
1965 | "call-bind": "^1.0.2",
1966 | "get-intrinsic": "^1.1.3",
1967 | "is-regex": "^1.1.4"
1968 | }
1969 | },
1970 | "scheduler": {
1971 | "version": "0.23.0",
1972 | "resolved": "https://registry.npmmirror.com/scheduler/-/scheduler-0.23.0.tgz",
1973 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==",
1974 | "requires": {
1975 | "loose-envify": "^1.1.0"
1976 | }
1977 | },
1978 | "semver": {
1979 | "version": "7.3.8",
1980 | "resolved": "https://registry.npmmirror.com/semver/-/semver-7.3.8.tgz",
1981 | "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
1982 | "requires": {
1983 | "lru-cache": "^6.0.0"
1984 | }
1985 | },
1986 | "shebang-command": {
1987 | "version": "2.0.0",
1988 | "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz",
1989 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1990 | "requires": {
1991 | "shebang-regex": "^3.0.0"
1992 | }
1993 | },
1994 | "shebang-regex": {
1995 | "version": "3.0.0",
1996 | "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz",
1997 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
1998 | },
1999 | "side-channel": {
2000 | "version": "1.0.4",
2001 | "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.4.tgz",
2002 | "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
2003 | "requires": {
2004 | "call-bind": "^1.0.0",
2005 | "get-intrinsic": "^1.0.2",
2006 | "object-inspect": "^1.9.0"
2007 | }
2008 | },
2009 | "slash": {
2010 | "version": "3.0.0",
2011 | "resolved": "https://registry.npmmirror.com/slash/-/slash-3.0.0.tgz",
2012 | "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q=="
2013 | },
2014 | "source-map-js": {
2015 | "version": "1.0.2",
2016 | "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.0.2.tgz",
2017 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
2018 | },
2019 | "stop-iteration-iterator": {
2020 | "version": "1.0.0",
2021 | "resolved": "https://registry.npmmirror.com/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz",
2022 | "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==",
2023 | "requires": {
2024 | "internal-slot": "^1.0.4"
2025 | }
2026 | },
2027 | "string.prototype.matchall": {
2028 | "version": "4.0.8",
2029 | "resolved": "https://registry.npmmirror.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz",
2030 | "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==",
2031 | "requires": {
2032 | "call-bind": "^1.0.2",
2033 | "define-properties": "^1.1.4",
2034 | "es-abstract": "^1.20.4",
2035 | "get-intrinsic": "^1.1.3",
2036 | "has-symbols": "^1.0.3",
2037 | "internal-slot": "^1.0.3",
2038 | "regexp.prototype.flags": "^1.4.3",
2039 | "side-channel": "^1.0.4"
2040 | }
2041 | },
2042 | "string.prototype.trimend": {
2043 | "version": "1.0.6",
2044 | "resolved": "https://registry.npmmirror.com/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz",
2045 | "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==",
2046 | "requires": {
2047 | "call-bind": "^1.0.2",
2048 | "define-properties": "^1.1.4",
2049 | "es-abstract": "^1.20.4"
2050 | }
2051 | },
2052 | "string.prototype.trimstart": {
2053 | "version": "1.0.6",
2054 | "resolved": "https://registry.npmmirror.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz",
2055 | "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==",
2056 | "requires": {
2057 | "call-bind": "^1.0.2",
2058 | "define-properties": "^1.1.4",
2059 | "es-abstract": "^1.20.4"
2060 | }
2061 | },
2062 | "strip-ansi": {
2063 | "version": "6.0.1",
2064 | "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz",
2065 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
2066 | "requires": {
2067 | "ansi-regex": "^5.0.1"
2068 | }
2069 | },
2070 | "strip-bom": {
2071 | "version": "3.0.0",
2072 | "resolved": "https://registry.npmmirror.com/strip-bom/-/strip-bom-3.0.0.tgz",
2073 | "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA=="
2074 | },
2075 | "strip-json-comments": {
2076 | "version": "3.1.1",
2077 | "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
2078 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig=="
2079 | },
2080 | "styled-jsx": {
2081 | "version": "5.1.1",
2082 | "resolved": "https://registry.npmmirror.com/styled-jsx/-/styled-jsx-5.1.1.tgz",
2083 | "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
2084 | "requires": {
2085 | "client-only": "0.0.1"
2086 | }
2087 | },
2088 | "supports-color": {
2089 | "version": "7.2.0",
2090 | "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-7.2.0.tgz",
2091 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
2092 | "requires": {
2093 | "has-flag": "^4.0.0"
2094 | }
2095 | },
2096 | "supports-preserve-symlinks-flag": {
2097 | "version": "1.0.0",
2098 | "resolved": "https://registry.npmmirror.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
2099 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
2100 | },
2101 | "synckit": {
2102 | "version": "0.8.5",
2103 | "resolved": "https://registry.npmmirror.com/synckit/-/synckit-0.8.5.tgz",
2104 | "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==",
2105 | "requires": {
2106 | "@pkgr/utils": "^2.3.1",
2107 | "tslib": "^2.5.0"
2108 | },
2109 | "dependencies": {
2110 | "tslib": {
2111 | "version": "2.5.0",
2112 | "resolved": "https://registry.npmmirror.com/tslib/-/tslib-2.5.0.tgz",
2113 | "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg=="
2114 | }
2115 | }
2116 | },
2117 | "tapable": {
2118 | "version": "2.2.1",
2119 | "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz",
2120 | "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ=="
2121 | },
2122 | "text-table": {
2123 | "version": "0.2.0",
2124 | "resolved": "https://registry.npmmirror.com/text-table/-/text-table-0.2.0.tgz",
2125 | "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw=="
2126 | },
2127 | "tiny-glob": {
2128 | "version": "0.2.9",
2129 | "resolved": "https://registry.npmmirror.com/tiny-glob/-/tiny-glob-0.2.9.tgz",
2130 | "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==",
2131 | "requires": {
2132 | "globalyzer": "0.1.0",
2133 | "globrex": "^0.1.2"
2134 | }
2135 | },
2136 | "to-regex-range": {
2137 | "version": "5.0.1",
2138 | "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz",
2139 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
2140 | "requires": {
2141 | "is-number": "^7.0.0"
2142 | }
2143 | },
2144 | "tsconfig-paths": {
2145 | "version": "3.14.1",
2146 | "resolved": "https://registry.npmmirror.com/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz",
2147 | "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==",
2148 | "requires": {
2149 | "@types/json5": "^0.0.29",
2150 | "json5": "^1.0.1",
2151 | "minimist": "^1.2.6",
2152 | "strip-bom": "^3.0.0"
2153 | }
2154 | },
2155 | "tslib": {
2156 | "version": "1.14.1",
2157 | "resolved": "https://registry.npmmirror.com/tslib/-/tslib-1.14.1.tgz",
2158 | "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg=="
2159 | },
2160 | "tsutils": {
2161 | "version": "3.21.0",
2162 | "resolved": "https://registry.npmmirror.com/tsutils/-/tsutils-3.21.0.tgz",
2163 | "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
2164 | "requires": {
2165 | "tslib": "^1.8.1"
2166 | }
2167 | },
2168 | "type-check": {
2169 | "version": "0.4.0",
2170 | "resolved": "https://registry.npmmirror.com/type-check/-/type-check-0.4.0.tgz",
2171 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
2172 | "requires": {
2173 | "prelude-ls": "^1.2.1"
2174 | }
2175 | },
2176 | "type-fest": {
2177 | "version": "0.20.2",
2178 | "resolved": "https://registry.npmmirror.com/type-fest/-/type-fest-0.20.2.tgz",
2179 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ=="
2180 | },
2181 | "typed-array-length": {
2182 | "version": "1.0.4",
2183 | "resolved": "https://registry.npmmirror.com/typed-array-length/-/typed-array-length-1.0.4.tgz",
2184 | "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==",
2185 | "requires": {
2186 | "call-bind": "^1.0.2",
2187 | "for-each": "^0.3.3",
2188 | "is-typed-array": "^1.1.9"
2189 | }
2190 | },
2191 | "typescript": {
2192 | "version": "4.9.5",
2193 | "resolved": "https://registry.npmmirror.com/typescript/-/typescript-4.9.5.tgz",
2194 | "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g=="
2195 | },
2196 | "unbox-primitive": {
2197 | "version": "1.0.2",
2198 | "resolved": "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
2199 | "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
2200 | "requires": {
2201 | "call-bind": "^1.0.2",
2202 | "has-bigints": "^1.0.2",
2203 | "has-symbols": "^1.0.3",
2204 | "which-boxed-primitive": "^1.0.2"
2205 | }
2206 | },
2207 | "uri-js": {
2208 | "version": "4.4.1",
2209 | "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz",
2210 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
2211 | "requires": {
2212 | "punycode": "^2.1.0"
2213 | }
2214 | },
2215 | "which": {
2216 | "version": "2.0.2",
2217 | "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz",
2218 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
2219 | "requires": {
2220 | "isexe": "^2.0.0"
2221 | }
2222 | },
2223 | "which-boxed-primitive": {
2224 | "version": "1.0.2",
2225 | "resolved": "https://registry.npmmirror.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
2226 | "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
2227 | "requires": {
2228 | "is-bigint": "^1.0.1",
2229 | "is-boolean-object": "^1.1.0",
2230 | "is-number-object": "^1.0.4",
2231 | "is-string": "^1.0.5",
2232 | "is-symbol": "^1.0.3"
2233 | }
2234 | },
2235 | "which-collection": {
2236 | "version": "1.0.1",
2237 | "resolved": "https://registry.npmmirror.com/which-collection/-/which-collection-1.0.1.tgz",
2238 | "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==",
2239 | "requires": {
2240 | "is-map": "^2.0.1",
2241 | "is-set": "^2.0.1",
2242 | "is-weakmap": "^2.0.1",
2243 | "is-weakset": "^2.0.1"
2244 | }
2245 | },
2246 | "which-typed-array": {
2247 | "version": "1.1.9",
2248 | "resolved": "https://registry.npmmirror.com/which-typed-array/-/which-typed-array-1.1.9.tgz",
2249 | "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==",
2250 | "requires": {
2251 | "available-typed-arrays": "^1.0.5",
2252 | "call-bind": "^1.0.2",
2253 | "for-each": "^0.3.3",
2254 | "gopd": "^1.0.1",
2255 | "has-tostringtag": "^1.0.0",
2256 | "is-typed-array": "^1.1.10"
2257 | }
2258 | },
2259 | "word-wrap": {
2260 | "version": "1.2.3",
2261 | "resolved": "https://registry.npmmirror.com/word-wrap/-/word-wrap-1.2.3.tgz",
2262 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ=="
2263 | },
2264 | "wrappy": {
2265 | "version": "1.0.2",
2266 | "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz",
2267 | "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
2268 | },
2269 | "yallist": {
2270 | "version": "4.0.0",
2271 | "resolved": "https://registry.npmmirror.com/yallist/-/yallist-4.0.0.tgz",
2272 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
2273 | },
2274 | "yocto-queue": {
2275 | "version": "0.1.0",
2276 | "resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz",
2277 | "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q=="
2278 | }
2279 | }
2280 | }
2281 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "to-kill-a-rabbit",
3 | "version": "0.1.0",
4 | "private": true,
5 | "scripts": {
6 | "dev": "next dev",
7 | "build": "next build && next export",
8 | "start": "next start",
9 | "lint": "next lint"
10 | },
11 | "dependencies": {
12 | "@next/font": "13.1.6",
13 | "@react-three/drei": "^9.56.25",
14 | "@react-three/fiber": "^8.11.2",
15 | "@react-three/postprocessing": "^2.7.0",
16 | "@types/node": "18.14.0",
17 | "@types/react": "18.0.28",
18 | "@types/react-dom": "18.0.11",
19 | "@types/three": "^0.149.0",
20 | "clsx": "^1.2.1",
21 | "eslint": "8.34.0",
22 | "eslint-config-next": "13.1.6",
23 | "gsap": "^3.11.4",
24 | "next": "13.1.6",
25 | "react": "18.2.0",
26 | "react-dom": "18.2.0",
27 | "three": "^0.149.0",
28 | "typed.js": "^2.0.12",
29 | "typescript": "4.9.5"
30 | },
31 | "devDependencies": {
32 | "autoprefixer": "^10.4.13",
33 | "postcss": "^8.4.21",
34 | "tailwindcss": "^3.2.7"
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/pages/_app.tsx:
--------------------------------------------------------------------------------
1 | import '@/styles/globals.css'
2 | import type { AppProps } from 'next/app'
3 |
4 | export default function App({ Component, pageProps }: AppProps) {
5 | return
6 | }
7 |
--------------------------------------------------------------------------------
/pages/_document.tsx:
--------------------------------------------------------------------------------
1 | import { Html, Head, Main, NextScript } from "next/document";
2 |
3 | export default function Document() {
4 | return (
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | );
13 | }
14 |
--------------------------------------------------------------------------------
/pages/api/hello.ts:
--------------------------------------------------------------------------------
1 | // Next.js API route support: https://nextjs.org/docs/api-routes/introduction
2 | import type { NextApiRequest, NextApiResponse } from 'next'
3 |
4 | type Data = {
5 | name: string
6 | }
7 |
8 | export default function handler(
9 | req: NextApiRequest,
10 | res: NextApiResponse
11 | ) {
12 | res.status(200).json({ name: 'John Doe' })
13 | }
14 |
--------------------------------------------------------------------------------
/pages/index.tsx:
--------------------------------------------------------------------------------
1 | import Head from "next/head";
2 | import { Inter } from "@next/font/google";
3 | import clsx from "clsx";
4 | import { gsap } from "gsap";
5 | import { ReactNode, Suspense, useRef } from "react";
6 | import { horizontalLoop } from "@/utils/loop";
7 | import Box from "@/components/box";
8 | import Radar from "@/components/radar";
9 | import { useIsomorphicLayoutEffect } from "@/hooks/use-isomorphic-layout-effect";
10 | import { Canvas, useFrame } from "@react-three/fiber";
11 | import { Octahedron, OrthographicCamera } from "@react-three/drei";
12 | import { Mesh } from "three";
13 | import useMediaQuery from "@/hooks/use-match-mediea";
14 | import Typed, { TypedOptions } from "typed.js";
15 |
16 | const inter = Inter({ subsets: ["latin"], weight: ["400", "500", "700"] });
17 |
18 | const Animation = () => {
19 | const cubeRef = useRef(null);
20 | useFrame(({ clock }) => {
21 | const t = clock.getElapsedTime();
22 | if (cubeRef.current) {
23 | cubeRef.current.rotation.x = t;
24 | cubeRef.current.rotation.y = t;
25 | }
26 | });
27 | return (
28 |
29 |
30 |
31 |
32 |
33 | );
34 | };
35 |
36 | const Circle = ({
37 | background,
38 | className,
39 | children,
40 | }: {
41 | background?: string;
42 | className?: string;
43 | children?: ReactNode;
44 | }) => {
45 | return (
46 |
60 | {children}
61 |
62 | );
63 | };
64 |
65 | export default function Home() {
66 | const mainRef = useRef(null);
67 |
68 | const isTablet = useMediaQuery("(min-width: 768px)");
69 | const isDesktop = useMediaQuery("(min-width: 960px)");
70 |
71 | const cubeSize = isDesktop ? 40 : isTablet ? 30 : 20;
72 |
73 | useIsomorphicLayoutEffect(() => {
74 | const ctx = gsap.context(() => {
75 | horizontalLoop("[data-loop-text]", {
76 | repeat: -1,
77 | });
78 |
79 | gsap.to(".rotate", {
80 | rotate: -360,
81 | repeat: -1,
82 | duration: 5,
83 | ease: "none",
84 | });
85 | }, mainRef);
86 |
87 | return () => ctx.revert();
88 | }, []);
89 |
90 | const typedEl = useRef(null);
91 | const typed = useRef();
92 |
93 | useIsomorphicLayoutEffect(() => {
94 | const options: TypedOptions = {
95 | strings: [
96 | `
97 | $ My program data bank boots up...
98 | $ ■■■■■■■■■ 100%
99 | $ It tells me what to do...
100 | $ I'm D3-R4.
101 | $ Now, how can I help you?
102 | $ Waiting...
103 | `,
104 | ],
105 | typeSpeed: 30,
106 | showCursor: true,
107 | loop: false,
108 | };
109 |
110 | if (typedEl.current) {
111 | typed.current = new Typed(typedEl.current, options);
112 | }
113 |
114 | return () => {
115 | typed.current?.destroy();
116 | };
117 | }, []);
118 |
119 | return (
120 | <>
121 |
122 | To Kill A Rabbit
123 |
124 |
125 |
126 |
127 |
131 |
135 |
136 |
137 |
138 |
142 |
143 |
144 |
150 |
151 |
152 |
158 |
159 |
160 |
161 | {new Array(3).fill(0).map((_, index) => {
162 | return (
163 |
164 |
165 |
D3ADR4BBIT
166 |
172 |
戴拉比特
173 |
179 |
180 |
181 | );
182 | })}
183 |
184 |
185 |
186 |
192 |
196 |
197 |
198 |
199 |
200 |
201 |
207 |
208 |
214 |
215 |
216 |
217 |
218 |
219 |
220 |
226 |
227 |
228 |
229 |
230 |
231 |
237 |
247 |
248 |
249 |
250 |
251 |
252 |
256 |
257 |
258 |
264 |
265 |
266 |
272 |
273 |
274 |
292 |
293 |
294 |
to-kill-a-rabbit.deadrabbit.online
295 |
deadrabbbbit@gmail.com
296 |
297 |
298 |
299 |
303 |
304 |
305 |
312 |
313 |
314 |
315 |
316 | >
317 | );
318 | }
319 |
--------------------------------------------------------------------------------
/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | plugins: {
3 | tailwindcss: {},
4 | autoprefixer: {},
5 | },
6 | }
7 |
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/favicon.ico
--------------------------------------------------------------------------------
/public/images/circle.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/circles.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/cube.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/d3r4.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
53 |
--------------------------------------------------------------------------------
/public/images/danger.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/global.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/label.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/mission.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/png/circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/circle.png
--------------------------------------------------------------------------------
/public/images/png/circles.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/circles.png
--------------------------------------------------------------------------------
/public/images/png/d3r4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/d3r4.png
--------------------------------------------------------------------------------
/public/images/png/danger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/danger.png
--------------------------------------------------------------------------------
/public/images/png/global.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/global.png
--------------------------------------------------------------------------------
/public/images/png/label.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/label.png
--------------------------------------------------------------------------------
/public/images/png/mission.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/mission.png
--------------------------------------------------------------------------------
/public/images/png/rabbit-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/rabbit-2.png
--------------------------------------------------------------------------------
/public/images/png/rabbit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/rabbit.png
--------------------------------------------------------------------------------
/public/images/png/rects.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/rects.png
--------------------------------------------------------------------------------
/public/images/png/round-text.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/round-text.png
--------------------------------------------------------------------------------
/public/images/png/stack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/stack.png
--------------------------------------------------------------------------------
/public/images/png/triangle-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/triangle-1.png
--------------------------------------------------------------------------------
/public/images/png/triangle-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/d3adrabbit/to-kill-a-rabbit/3fd866013d5827a12f44b4ca7f41228fdb10627a/public/images/png/triangle-2.png
--------------------------------------------------------------------------------
/public/images/rabbit-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/rabbit.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/rects.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/round-text.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/stack.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/triangle-1.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/images/triangle-2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/next.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/thirteen.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/vercel.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/styles/globals.css:
--------------------------------------------------------------------------------
1 | @tailwind base;
2 | @tailwind components;
3 | @tailwind utilities;
4 |
5 | * {
6 | box-sizing: border-box;
7 | }
8 |
--------------------------------------------------------------------------------
/tailwind.config.js:
--------------------------------------------------------------------------------
1 | /** @type {import('tailwindcss').Config} */
2 | module.exports = {
3 | content: [
4 | "./pages/**/*.{js,ts,jsx,tsx}",
5 | "./components/**/*.{js,ts,jsx,tsx}",
6 | ],
7 | theme: {
8 | extend: {},
9 | },
10 | plugins: [],
11 | };
12 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "lib": ["dom", "dom.iterable", "esnext"],
5 | "allowJs": true,
6 | "skipLibCheck": true,
7 | "strict": true,
8 | "forceConsistentCasingInFileNames": true,
9 | "noEmit": true,
10 | "esModuleInterop": true,
11 | "module": "esnext",
12 | "moduleResolution": "node",
13 | "resolveJsonModule": true,
14 | "isolatedModules": true,
15 | "jsx": "preserve",
16 | "incremental": true,
17 | "baseUrl": ".",
18 | "paths": {
19 | "@/*": ["./*"]
20 | }
21 | },
22 | "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
23 | "exclude": ["node_modules"]
24 | }
25 |
--------------------------------------------------------------------------------
/utils/loop.d.ts:
--------------------------------------------------------------------------------
1 | import { gsap } from "gsap";
2 |
3 | declare function horizontalLoop(items: any, config: any): gsap.core.Timeline;
4 |
--------------------------------------------------------------------------------
/utils/loop.js:
--------------------------------------------------------------------------------
1 | import { gsap } from "gsap";
2 |
3 | export function horizontalLoop(items, config) {
4 | items = gsap.utils.toArray(items);
5 | config = config || {};
6 | let tl = gsap.timeline({
7 | repeat: config.repeat,
8 | paused: config.paused,
9 | defaults: { ease: "none" },
10 | onReverseComplete: () => tl.totalTime(tl.rawTime() + tl.duration() * 100),
11 | }),
12 | length = items.length,
13 | startX = items[0].offsetLeft,
14 | times = [],
15 | widths = [],
16 | xPercents = [],
17 | curIndex = 0,
18 | pixelsPerSecond = (config.speed || 1) * 100,
19 | snap = config.snap === false ? (v) => v : gsap.utils.snap(config.snap || 1), // some browsers shift by a pixel to accommodate flex layouts, so for example if width is 20% the first element's width might be 242px, and the next 243px, alternating back and forth. So we snap to 5 percentage points to make things look more natural
20 | totalWidth,
21 | curX,
22 | distanceToStart,
23 | distanceToLoop,
24 | item,
25 | i;
26 | gsap.set(items, {
27 | // convert "x" to "xPercent" to make things responsive, and populate the widths/xPercents Arrays to make lookups faster.
28 | xPercent: (i, el) => {
29 | let w = (widths[i] = parseFloat(gsap.getProperty(el, "width", "px")));
30 | xPercents[i] = snap(
31 | (parseFloat(gsap.getProperty(el, "x", "px")) / w) * 100 +
32 | gsap.getProperty(el, "xPercent")
33 | );
34 | return xPercents[i];
35 | },
36 | });
37 | gsap.set(items, { x: 0 });
38 | totalWidth =
39 | items[length - 1].offsetLeft +
40 | (xPercents[length - 1] / 100) * widths[length - 1] -
41 | startX +
42 | items[length - 1].offsetWidth *
43 | gsap.getProperty(items[length - 1], "scaleX") +
44 | (parseFloat(config.paddingRight) || 0);
45 | for (i = 0; i < length; i++) {
46 | item = items[i];
47 | curX = (xPercents[i] / 100) * widths[i];
48 | distanceToStart = item.offsetLeft + curX - startX;
49 | distanceToLoop =
50 | distanceToStart + widths[i] * gsap.getProperty(item, "scaleX");
51 | tl.to(
52 | item,
53 | {
54 | xPercent: snap(((curX - distanceToLoop) / widths[i]) * 100),
55 | duration: distanceToLoop / pixelsPerSecond,
56 | },
57 | 0
58 | )
59 | .fromTo(
60 | item,
61 | {
62 | xPercent: snap(
63 | ((curX - distanceToLoop + totalWidth) / widths[i]) * 100
64 | ),
65 | },
66 | {
67 | xPercent: xPercents[i],
68 | duration:
69 | (curX - distanceToLoop + totalWidth - curX) / pixelsPerSecond,
70 | immediateRender: false,
71 | },
72 | distanceToLoop / pixelsPerSecond
73 | )
74 | .add("label" + i, distanceToStart / pixelsPerSecond);
75 | times[i] = distanceToStart / pixelsPerSecond;
76 | }
77 | function toIndex(index, vars) {
78 | vars = vars || {};
79 | Math.abs(index - curIndex) > length / 2 &&
80 | (index += index > curIndex ? -length : length); // always go in the shortest direction
81 | let newIndex = gsap.utils.wrap(0, length, index),
82 | time = times[newIndex];
83 | if (time > tl.time() !== index > curIndex) {
84 | // if we're wrapping the timeline's playhead, make the proper adjustments
85 | vars.modifiers = { time: gsap.utils.wrap(0, tl.duration()) };
86 | time += tl.duration() * (index > curIndex ? 1 : -1);
87 | }
88 | curIndex = newIndex;
89 | vars.overwrite = true;
90 | return tl.tweenTo(time, vars);
91 | }
92 | tl.next = (vars) => toIndex(curIndex + 1, vars);
93 | tl.previous = (vars) => toIndex(curIndex - 1, vars);
94 | tl.current = () => curIndex;
95 | tl.toIndex = (index, vars) => toIndex(index, vars);
96 | tl.times = times;
97 | tl.progress(1, true).progress(0, true); // pre-render for performance
98 | if (config.reversed) {
99 | tl.vars.onReverseComplete();
100 | tl.reverse();
101 | }
102 | return tl;
103 | }
104 |
--------------------------------------------------------------------------------