├── .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 | ![1677720587273](image/README/1677720587273.png) 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 |
139 |
噪聲
140 |
時代
141 |
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 | 238 | 243 | 244 | 245 | 246 | 247 | 248 | 249 |
250 |
251 | 252 |
253 |
重塑
254 |
未来
255 |
256 |
257 | 258 |
264 |
265 | 266 |
272 |
273 |
274 |
275 | 276 |
282 | 283 |
289 |
290 |
291 |
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 | 5 | 10 | 11 | 12 | 13 | 14 | 18 | 19 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 30 | 38 | 39 | 40 | 41 | 42 | 44 | 45 | 46 | 47 | 48 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /public/images/danger.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/images/global.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /public/images/label.svg: -------------------------------------------------------------------------------- 1 | MODEL: GT-D3R4-001DEADRABBIT -------------------------------------------------------------------------------- /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 | --------------------------------------------------------------------------------