├── .all-contributorsrc ├── .gitignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── index.html ├── package-lock.json ├── package.json ├── postcss.config.cjs ├── public └── vite.svg ├── readME.md ├── src ├── App.css ├── App.jsx ├── assets │ ├── Female.png │ ├── FpfpRandom.png │ ├── Male.png │ ├── MpfpRandom.png │ └── tag.js ├── components │ ├── home.jsx │ ├── portfolio.jsx │ ├── projectCard.jsx │ └── skills.jsx ├── data.js ├── index.css └── main.jsx ├── tailwind.config.cjs ├── vercel.json └── vite.config.js /.all-contributorsrc: -------------------------------------------------------------------------------- 1 | { 2 | "projectName": "dev-landing-page", 3 | "projectOwner": "rohitranjan-2702", 4 | "repoType": "github", 5 | "repoHost": "https://github.com", 6 | "files": ["readME.md"], 7 | "imageSize": 100, 8 | "commit": false, 9 | "contributorsPerLine": 7, 10 | "contributorsSortAlphabetically": false, 11 | "badgeTemplate": "[![All Contributors](https://img.shields.io/github/all-contributors/<%= projectOwner %>/<%= projectName %>?color=ee8449&style=flat-square)](#contributors)", 12 | "contributorTemplate": "\">\" width=\"<%= options.imageSize %>px;\" alt=\"\"/>
<%= contributor.name %>
", 13 | "types": { 14 | "custom": { 15 | "symbol": "🔭", 16 | "description": "A custom contribution type.", 17 | "link": "[<%= symbol %>](<%= url %> \"<%= description %>\")," 18 | } 19 | }, 20 | "linkToUsage": true, 21 | "skipCi": true, 22 | "contributors": [] 23 | } 24 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | todo.txt 12 | dist 13 | dist-ssr 14 | *.local 15 | 16 | # Editor directories and files 17 | .vscode/* 18 | !.vscode/extensions.json 19 | .idea 20 | .DS_Store 21 | *.suo 22 | *.ntvs* 23 | *.njsproj 24 | *.sln 25 | *.sw? 26 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | We as members, contributors, and leaders pledge to make participation in our 6 | community a harassment-free experience for everyone, regardless of age, body 7 | size, visible or invisible disability, ethnicity, sex characteristics, gender 8 | identity and expression, level of experience, education, socio-economic status, 9 | nationality, personal appearance, race, religion, or sexual identity 10 | and orientation. 11 | 12 | We pledge to act and interact in ways that contribute to an open, welcoming, 13 | diverse, inclusive, and healthy community. 14 | 15 | ## Our Standards 16 | 17 | Examples of behavior that contributes to a positive environment for our 18 | community include: 19 | 20 | - Demonstrating empathy and kindness toward other people 21 | - Being respectful of differing opinions, viewpoints, and experiences 22 | - Giving and gracefully accepting constructive feedback 23 | - Accepting responsibility and apologizing to those affected by our mistakes, 24 | and learning from the experience 25 | - Focusing on what is best not just for us as individuals, but for the 26 | overall community 27 | 28 | Examples of unacceptable behaviour include: 29 | 30 | - The use of sexualized language or imagery, and sexual attention or 31 | advances of any kind 32 | - Trolling, insulting or derogatory comments, and personal or political attacks 33 | - Public or private harassment 34 | - Publishing others' private information, such as a physical or email 35 | address, without their explicit permission 36 | - Other conduct which could reasonably be considered inappropriate in a 37 | professional setting 38 | 39 | ## Enforcement Responsibilities 40 | 41 | Community leaders are responsible for clarifying and enforcing our standards of 42 | acceptable behaviour and will take appropriate and fair corrective action in 43 | response to any behaviour that they deem inappropriate, threatening, offensive, 44 | or harmful. 45 | 46 | Community leaders have the right and responsibility to remove, edit, or reject 47 | comments, commits, code, wiki edits, issues, and other contributions that are 48 | not aligned to this Code of Conduct, and will communicate reasons for moderation 49 | decisions when appropriate. 50 | 51 | ## Scope 52 | 53 | This Code of Conduct applies within all community spaces, and also applies when 54 | an individual is officially representing the community in public spaces. 55 | Examples of representing our community include using an official e-mail address, 56 | posting via an official social media account, or acting as an appointed 57 | representative at an online or offline event. 58 | 59 | ## Enforcement 60 | 61 | Instances of abusive, harassing, or otherwise unacceptable behaviour may be 62 | reported to the community leaders responsible for enforcement at 63 | . 64 | All complaints will be reviewed and investigated promptly and fairly. 65 | 66 | All community leaders are obligated to respect the privacy and security of the 67 | reporter of any incident. 68 | 69 | ## Enforcement Guidelines 70 | 71 | Community leaders will follow these Community Impact Guidelines in determining 72 | the consequences for any action they deem in violation of this Code of Conduct: 73 | 74 | ### 1. Correction 75 | 76 | **Community Impact**: Use of inappropriate language or other behavior deemed 77 | unprofessional or unwelcome in the community. 78 | 79 | **Consequence**: A private, written warning from community leaders, providing 80 | clarity around the nature of the violation and an explanation of why the 81 | behavior was inappropriate. A public apology may be requested. 82 | 83 | ### 2. Warning 84 | 85 | **Community Impact**: A violation through a single incident or series 86 | of actions. 87 | 88 | **Consequence**: A warning with consequences for continued behavior. No 89 | interaction with the people involved, including unsolicited interaction with 90 | those enforcing the Code of Conduct, for a specified period of time. This 91 | includes avoiding interactions in community spaces as well as external channels 92 | like social media. Violating these terms may lead to a temporary or 93 | permanent ban. 94 | 95 | ### 3. Temporary Ban 96 | 97 | **Community Impact**: A serious violation of community standards, including 98 | sustained inappropriate behavior. 99 | 100 | **Consequence**: A temporary ban from any sort of interaction or public 101 | communication with the community for a specified period of time. No public or 102 | private interaction with the people involved, including unsolicited interaction 103 | with those enforcing the Code of Conduct, is allowed during this period. 104 | Violating these terms may lead to a permanent ban. 105 | 106 | ### 4. Permanent Ban 107 | 108 | **Community Impact**: Demonstrating a pattern of violation of community 109 | standards, including sustained inappropriate behavior, harassment of an 110 | individual, or aggression toward or disparagement of classes of individuals. 111 | 112 | **Consequence**: A permanent ban from any sort of public interaction within 113 | the community. 114 | 115 | ## Attribution 116 | 117 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], 118 | version 2.0, available at 119 | https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. 120 | 121 | Community Impact Guidelines were inspired by [Mozilla's code of conduct 122 | enforcement ladder](https://github.com/mozilla/diversity). 123 | 124 | [homepage]: https://www.contributor-covenant.org 125 | 126 | For answers to common questions about this code of conduct, see the FAQ at 127 | https://www.contributor-covenant.org/faq. Translations are available at 128 | https://www.contributor-covenant.org/translations. 129 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # 🪛 Want to contribute? 2 | 3 | We welcome you to join us! 4 | 5 | - **Dev Landing Page** is an open-source project, and we are excited to hear your thoughts and ideas. 6 | 7 | - Fork this repository, add your contributions and submit a PR. 8 | 9 | - Found a bug? Accessibility issue? Or do you want to add a new tool to our database? Then go right ahead and create an issue. 10 | 11 | # 🛠️ Tech Stack 12 | 13 | This project uses:

14 | ![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB) 15 | ![TailwindCSS](https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=for-the-badge&logo=tailwind-css&logoColor=white) 16 | ![JavaScript](https://img.shields.io/badge/javascript-%23323330.svg?style=for-the-badge&logo=javascript&logoColor=%23F7DF1E) 17 | ![Vite](https://img.shields.io/badge/vite-%23646CFF.svg?style=for-the-badge&logo=vite&logoColor=white) 18 | ![Vercel](https://img.shields.io/badge/vercel-%23000000.svg?style=for-the-badge&logo=vercel&logoColor=white) 19 | 20 | ## Prerequisites 21 | 22 | Before installation, you need to have installed/knowledge of the following: 23 |

24 | ![NodeJS](https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge&logo=node.js&logoColor=white) 25 | ![Git](https://img.shields.io/badge/git-%23F05033.svg?style=for-the-badge&logo=git&logoColor=white) 26 | 27 | ## STAR THE REPO 28 | 29 | ### How to Contribute to this repository 30 | 31 | 1. Fork the repository (Click the Fork button in the top right of this page, and click your Profile Image) 32 | 33 | 2. Clone the forked repository to your local machine. 34 | 35 | ```markdown 36 | git clone https://github.com/your-username/dev-landing-page.git 37 | ``` 38 | 39 | 3. change the present working directory 40 | 41 | ```markdown 42 | cd dev-landing-page.git 43 | ``` 44 | 45 | 4. Open CMD in your current directory and install node packages using command.[If node js is not installed, you can install it by clicking on this link to [node js](https://nodejs.org/en)] 46 | 47 | ```markdown 48 | npm i 49 | ``` 50 | 51 | > Run it locally using 52 | 53 | ``` 54 | npm start 55 | ``` 56 | 57 | 6. Make changes to the project. 58 | E.g. Adding the URL of your GitHub Projects in the Skill Sections 59 | 60 | ``` 61 | - To ensure that your URLs are short, it is recommended to use **[bitly](https://bitly.com/)** for URL shortening. 62 | - Description should not exceed **10-12 words** 63 | ``` 64 | 65 | 7. Add, Commit and push the project by creating a new branch using the following commands: 66 | 67 | > Set upstream command to create a PR 68 | 69 | ```diff 70 | git remote add upstream https://github.com/rohitranjan-2702/dev-landing-page.git 71 | ``` 72 | 73 | > Create a new branch 74 | 75 | ```diff 76 | git branch -M 77 | ``` 78 | 79 | > Add all files 80 | 81 | ```markdown 82 | git add . 83 | ``` 84 | 85 | > Commit the changes 86 | 87 | ```markdown 88 | git commit -m "Write Your commit Message" 89 | ``` 90 | 91 | > Push the branch 92 | 93 | ```markdown 94 | git push origin 95 | ``` 96 | 97 | 8. Go to https://github.com/rohitranjan-2702/dev-landing-page where you will see a request to create a PR (Pull Request), add your comments and open the PR. 98 | 99 | ### NOTE 100 | 101 | - Make Sure you commit your changes in a new branch. 102 | - Make Sure you Give the proper name to your files describing the addition. 103 | - Also Make Sure you comment on your code wherever necessary. 104 | 105 |
106 | Show some ❤️ by starring this awesome repository! 107 |
108 | 109 | ## ✨ Contributors 110 | 111 | [![All Contributors](https://img.shields.io/github/all-contributors/rohitranjan-2702/dev-landing-page?color=ee8449&style=flat-square)](#contributors) 112 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | DEV 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dev-landing-page", 3 | "version": "0.0.0", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "dev-landing-page", 9 | "version": "0.0.0", 10 | "dependencies": { 11 | "@vercel/analytics": "^1.0.0", 12 | "react": "^18.2.0", 13 | "react-dom": "^18.2.0", 14 | "react-icons": "^4.7.1", 15 | "react-router-dom": "^6.8.1" 16 | }, 17 | "devDependencies": { 18 | "@types/react": "^18.0.27", 19 | "@types/react-dom": "^18.0.10", 20 | "@vitejs/plugin-react": "^3.1.0", 21 | "autoprefixer": "^10.4.13", 22 | "postcss": "^8.4.21", 23 | "tailwindcss": "^3.2.6", 24 | "vite": "^4.3.7" 25 | } 26 | }, 27 | "node_modules/@ampproject/remapping": { 28 | "version": "2.2.0", 29 | "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", 30 | "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", 31 | "dev": true, 32 | "dependencies": { 33 | "@jridgewell/gen-mapping": "^0.1.0", 34 | "@jridgewell/trace-mapping": "^0.3.9" 35 | }, 36 | "engines": { 37 | "node": ">=6.0.0" 38 | } 39 | }, 40 | "node_modules/@babel/code-frame": { 41 | "version": "7.18.6", 42 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", 43 | "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", 44 | "dev": true, 45 | "dependencies": { 46 | "@babel/highlight": "^7.18.6" 47 | }, 48 | "engines": { 49 | "node": ">=6.9.0" 50 | } 51 | }, 52 | "node_modules/@babel/compat-data": { 53 | "version": "7.20.14", 54 | "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", 55 | "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", 56 | "dev": true, 57 | "engines": { 58 | "node": ">=6.9.0" 59 | } 60 | }, 61 | "node_modules/@babel/core": { 62 | "version": "7.20.12", 63 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", 64 | "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", 65 | "dev": true, 66 | "dependencies": { 67 | "@ampproject/remapping": "^2.1.0", 68 | "@babel/code-frame": "^7.18.6", 69 | "@babel/generator": "^7.20.7", 70 | "@babel/helper-compilation-targets": "^7.20.7", 71 | "@babel/helper-module-transforms": "^7.20.11", 72 | "@babel/helpers": "^7.20.7", 73 | "@babel/parser": "^7.20.7", 74 | "@babel/template": "^7.20.7", 75 | "@babel/traverse": "^7.20.12", 76 | "@babel/types": "^7.20.7", 77 | "convert-source-map": "^1.7.0", 78 | "debug": "^4.1.0", 79 | "gensync": "^1.0.0-beta.2", 80 | "json5": "^2.2.2", 81 | "semver": "^6.3.0" 82 | }, 83 | "engines": { 84 | "node": ">=6.9.0" 85 | }, 86 | "funding": { 87 | "type": "opencollective", 88 | "url": "https://opencollective.com/babel" 89 | } 90 | }, 91 | "node_modules/@babel/generator": { 92 | "version": "7.20.14", 93 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", 94 | "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", 95 | "dev": true, 96 | "dependencies": { 97 | "@babel/types": "^7.20.7", 98 | "@jridgewell/gen-mapping": "^0.3.2", 99 | "jsesc": "^2.5.1" 100 | }, 101 | "engines": { 102 | "node": ">=6.9.0" 103 | } 104 | }, 105 | "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { 106 | "version": "0.3.2", 107 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", 108 | "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", 109 | "dev": true, 110 | "dependencies": { 111 | "@jridgewell/set-array": "^1.0.1", 112 | "@jridgewell/sourcemap-codec": "^1.4.10", 113 | "@jridgewell/trace-mapping": "^0.3.9" 114 | }, 115 | "engines": { 116 | "node": ">=6.0.0" 117 | } 118 | }, 119 | "node_modules/@babel/helper-compilation-targets": { 120 | "version": "7.20.7", 121 | "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", 122 | "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", 123 | "dev": true, 124 | "dependencies": { 125 | "@babel/compat-data": "^7.20.5", 126 | "@babel/helper-validator-option": "^7.18.6", 127 | "browserslist": "^4.21.3", 128 | "lru-cache": "^5.1.1", 129 | "semver": "^6.3.0" 130 | }, 131 | "engines": { 132 | "node": ">=6.9.0" 133 | }, 134 | "peerDependencies": { 135 | "@babel/core": "^7.0.0" 136 | } 137 | }, 138 | "node_modules/@babel/helper-environment-visitor": { 139 | "version": "7.18.9", 140 | "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", 141 | "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", 142 | "dev": true, 143 | "engines": { 144 | "node": ">=6.9.0" 145 | } 146 | }, 147 | "node_modules/@babel/helper-function-name": { 148 | "version": "7.19.0", 149 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", 150 | "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", 151 | "dev": true, 152 | "dependencies": { 153 | "@babel/template": "^7.18.10", 154 | "@babel/types": "^7.19.0" 155 | }, 156 | "engines": { 157 | "node": ">=6.9.0" 158 | } 159 | }, 160 | "node_modules/@babel/helper-hoist-variables": { 161 | "version": "7.18.6", 162 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", 163 | "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", 164 | "dev": true, 165 | "dependencies": { 166 | "@babel/types": "^7.18.6" 167 | }, 168 | "engines": { 169 | "node": ">=6.9.0" 170 | } 171 | }, 172 | "node_modules/@babel/helper-module-imports": { 173 | "version": "7.18.6", 174 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", 175 | "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", 176 | "dev": true, 177 | "dependencies": { 178 | "@babel/types": "^7.18.6" 179 | }, 180 | "engines": { 181 | "node": ">=6.9.0" 182 | } 183 | }, 184 | "node_modules/@babel/helper-module-transforms": { 185 | "version": "7.20.11", 186 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", 187 | "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", 188 | "dev": true, 189 | "dependencies": { 190 | "@babel/helper-environment-visitor": "^7.18.9", 191 | "@babel/helper-module-imports": "^7.18.6", 192 | "@babel/helper-simple-access": "^7.20.2", 193 | "@babel/helper-split-export-declaration": "^7.18.6", 194 | "@babel/helper-validator-identifier": "^7.19.1", 195 | "@babel/template": "^7.20.7", 196 | "@babel/traverse": "^7.20.10", 197 | "@babel/types": "^7.20.7" 198 | }, 199 | "engines": { 200 | "node": ">=6.9.0" 201 | } 202 | }, 203 | "node_modules/@babel/helper-plugin-utils": { 204 | "version": "7.20.2", 205 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", 206 | "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", 207 | "dev": true, 208 | "engines": { 209 | "node": ">=6.9.0" 210 | } 211 | }, 212 | "node_modules/@babel/helper-simple-access": { 213 | "version": "7.20.2", 214 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", 215 | "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", 216 | "dev": true, 217 | "dependencies": { 218 | "@babel/types": "^7.20.2" 219 | }, 220 | "engines": { 221 | "node": ">=6.9.0" 222 | } 223 | }, 224 | "node_modules/@babel/helper-split-export-declaration": { 225 | "version": "7.18.6", 226 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", 227 | "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", 228 | "dev": true, 229 | "dependencies": { 230 | "@babel/types": "^7.18.6" 231 | }, 232 | "engines": { 233 | "node": ">=6.9.0" 234 | } 235 | }, 236 | "node_modules/@babel/helper-string-parser": { 237 | "version": "7.19.4", 238 | "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", 239 | "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", 240 | "dev": true, 241 | "engines": { 242 | "node": ">=6.9.0" 243 | } 244 | }, 245 | "node_modules/@babel/helper-validator-identifier": { 246 | "version": "7.19.1", 247 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", 248 | "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", 249 | "dev": true, 250 | "engines": { 251 | "node": ">=6.9.0" 252 | } 253 | }, 254 | "node_modules/@babel/helper-validator-option": { 255 | "version": "7.18.6", 256 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", 257 | "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", 258 | "dev": true, 259 | "engines": { 260 | "node": ">=6.9.0" 261 | } 262 | }, 263 | "node_modules/@babel/helpers": { 264 | "version": "7.20.13", 265 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", 266 | "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", 267 | "dev": true, 268 | "dependencies": { 269 | "@babel/template": "^7.20.7", 270 | "@babel/traverse": "^7.20.13", 271 | "@babel/types": "^7.20.7" 272 | }, 273 | "engines": { 274 | "node": ">=6.9.0" 275 | } 276 | }, 277 | "node_modules/@babel/highlight": { 278 | "version": "7.18.6", 279 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", 280 | "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", 281 | "dev": true, 282 | "dependencies": { 283 | "@babel/helper-validator-identifier": "^7.18.6", 284 | "chalk": "^2.0.0", 285 | "js-tokens": "^4.0.0" 286 | }, 287 | "engines": { 288 | "node": ">=6.9.0" 289 | } 290 | }, 291 | "node_modules/@babel/parser": { 292 | "version": "7.20.15", 293 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", 294 | "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==", 295 | "dev": true, 296 | "bin": { 297 | "parser": "bin/babel-parser.js" 298 | }, 299 | "engines": { 300 | "node": ">=6.0.0" 301 | } 302 | }, 303 | "node_modules/@babel/plugin-transform-react-jsx-self": { 304 | "version": "7.18.6", 305 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz", 306 | "integrity": "sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig==", 307 | "dev": true, 308 | "dependencies": { 309 | "@babel/helper-plugin-utils": "^7.18.6" 310 | }, 311 | "engines": { 312 | "node": ">=6.9.0" 313 | }, 314 | "peerDependencies": { 315 | "@babel/core": "^7.0.0-0" 316 | } 317 | }, 318 | "node_modules/@babel/plugin-transform-react-jsx-source": { 319 | "version": "7.19.6", 320 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.19.6.tgz", 321 | "integrity": "sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ==", 322 | "dev": true, 323 | "dependencies": { 324 | "@babel/helper-plugin-utils": "^7.19.0" 325 | }, 326 | "engines": { 327 | "node": ">=6.9.0" 328 | }, 329 | "peerDependencies": { 330 | "@babel/core": "^7.0.0-0" 331 | } 332 | }, 333 | "node_modules/@babel/template": { 334 | "version": "7.20.7", 335 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", 336 | "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", 337 | "dev": true, 338 | "dependencies": { 339 | "@babel/code-frame": "^7.18.6", 340 | "@babel/parser": "^7.20.7", 341 | "@babel/types": "^7.20.7" 342 | }, 343 | "engines": { 344 | "node": ">=6.9.0" 345 | } 346 | }, 347 | "node_modules/@babel/traverse": { 348 | "version": "7.20.13", 349 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", 350 | "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", 351 | "dev": true, 352 | "dependencies": { 353 | "@babel/code-frame": "^7.18.6", 354 | "@babel/generator": "^7.20.7", 355 | "@babel/helper-environment-visitor": "^7.18.9", 356 | "@babel/helper-function-name": "^7.19.0", 357 | "@babel/helper-hoist-variables": "^7.18.6", 358 | "@babel/helper-split-export-declaration": "^7.18.6", 359 | "@babel/parser": "^7.20.13", 360 | "@babel/types": "^7.20.7", 361 | "debug": "^4.1.0", 362 | "globals": "^11.1.0" 363 | }, 364 | "engines": { 365 | "node": ">=6.9.0" 366 | } 367 | }, 368 | "node_modules/@babel/types": { 369 | "version": "7.20.7", 370 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", 371 | "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", 372 | "dev": true, 373 | "dependencies": { 374 | "@babel/helper-string-parser": "^7.19.4", 375 | "@babel/helper-validator-identifier": "^7.19.1", 376 | "to-fast-properties": "^2.0.0" 377 | }, 378 | "engines": { 379 | "node": ">=6.9.0" 380 | } 381 | }, 382 | "node_modules/@esbuild/android-arm": { 383 | "version": "0.17.19", 384 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", 385 | "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", 386 | "cpu": [ 387 | "arm" 388 | ], 389 | "dev": true, 390 | "optional": true, 391 | "os": [ 392 | "android" 393 | ], 394 | "engines": { 395 | "node": ">=12" 396 | } 397 | }, 398 | "node_modules/@esbuild/android-arm64": { 399 | "version": "0.17.19", 400 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", 401 | "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", 402 | "cpu": [ 403 | "arm64" 404 | ], 405 | "dev": true, 406 | "optional": true, 407 | "os": [ 408 | "android" 409 | ], 410 | "engines": { 411 | "node": ">=12" 412 | } 413 | }, 414 | "node_modules/@esbuild/android-x64": { 415 | "version": "0.17.19", 416 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", 417 | "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", 418 | "cpu": [ 419 | "x64" 420 | ], 421 | "dev": true, 422 | "optional": true, 423 | "os": [ 424 | "android" 425 | ], 426 | "engines": { 427 | "node": ">=12" 428 | } 429 | }, 430 | "node_modules/@esbuild/darwin-arm64": { 431 | "version": "0.17.19", 432 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", 433 | "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", 434 | "cpu": [ 435 | "arm64" 436 | ], 437 | "dev": true, 438 | "optional": true, 439 | "os": [ 440 | "darwin" 441 | ], 442 | "engines": { 443 | "node": ">=12" 444 | } 445 | }, 446 | "node_modules/@esbuild/darwin-x64": { 447 | "version": "0.17.19", 448 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", 449 | "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", 450 | "cpu": [ 451 | "x64" 452 | ], 453 | "dev": true, 454 | "optional": true, 455 | "os": [ 456 | "darwin" 457 | ], 458 | "engines": { 459 | "node": ">=12" 460 | } 461 | }, 462 | "node_modules/@esbuild/freebsd-arm64": { 463 | "version": "0.17.19", 464 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", 465 | "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", 466 | "cpu": [ 467 | "arm64" 468 | ], 469 | "dev": true, 470 | "optional": true, 471 | "os": [ 472 | "freebsd" 473 | ], 474 | "engines": { 475 | "node": ">=12" 476 | } 477 | }, 478 | "node_modules/@esbuild/freebsd-x64": { 479 | "version": "0.17.19", 480 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", 481 | "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", 482 | "cpu": [ 483 | "x64" 484 | ], 485 | "dev": true, 486 | "optional": true, 487 | "os": [ 488 | "freebsd" 489 | ], 490 | "engines": { 491 | "node": ">=12" 492 | } 493 | }, 494 | "node_modules/@esbuild/linux-arm": { 495 | "version": "0.17.19", 496 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", 497 | "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", 498 | "cpu": [ 499 | "arm" 500 | ], 501 | "dev": true, 502 | "optional": true, 503 | "os": [ 504 | "linux" 505 | ], 506 | "engines": { 507 | "node": ">=12" 508 | } 509 | }, 510 | "node_modules/@esbuild/linux-arm64": { 511 | "version": "0.17.19", 512 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", 513 | "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", 514 | "cpu": [ 515 | "arm64" 516 | ], 517 | "dev": true, 518 | "optional": true, 519 | "os": [ 520 | "linux" 521 | ], 522 | "engines": { 523 | "node": ">=12" 524 | } 525 | }, 526 | "node_modules/@esbuild/linux-ia32": { 527 | "version": "0.17.19", 528 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", 529 | "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", 530 | "cpu": [ 531 | "ia32" 532 | ], 533 | "dev": true, 534 | "optional": true, 535 | "os": [ 536 | "linux" 537 | ], 538 | "engines": { 539 | "node": ">=12" 540 | } 541 | }, 542 | "node_modules/@esbuild/linux-loong64": { 543 | "version": "0.17.19", 544 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", 545 | "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", 546 | "cpu": [ 547 | "loong64" 548 | ], 549 | "dev": true, 550 | "optional": true, 551 | "os": [ 552 | "linux" 553 | ], 554 | "engines": { 555 | "node": ">=12" 556 | } 557 | }, 558 | "node_modules/@esbuild/linux-mips64el": { 559 | "version": "0.17.19", 560 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", 561 | "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", 562 | "cpu": [ 563 | "mips64el" 564 | ], 565 | "dev": true, 566 | "optional": true, 567 | "os": [ 568 | "linux" 569 | ], 570 | "engines": { 571 | "node": ">=12" 572 | } 573 | }, 574 | "node_modules/@esbuild/linux-ppc64": { 575 | "version": "0.17.19", 576 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", 577 | "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", 578 | "cpu": [ 579 | "ppc64" 580 | ], 581 | "dev": true, 582 | "optional": true, 583 | "os": [ 584 | "linux" 585 | ], 586 | "engines": { 587 | "node": ">=12" 588 | } 589 | }, 590 | "node_modules/@esbuild/linux-riscv64": { 591 | "version": "0.17.19", 592 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", 593 | "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", 594 | "cpu": [ 595 | "riscv64" 596 | ], 597 | "dev": true, 598 | "optional": true, 599 | "os": [ 600 | "linux" 601 | ], 602 | "engines": { 603 | "node": ">=12" 604 | } 605 | }, 606 | "node_modules/@esbuild/linux-s390x": { 607 | "version": "0.17.19", 608 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", 609 | "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", 610 | "cpu": [ 611 | "s390x" 612 | ], 613 | "dev": true, 614 | "optional": true, 615 | "os": [ 616 | "linux" 617 | ], 618 | "engines": { 619 | "node": ">=12" 620 | } 621 | }, 622 | "node_modules/@esbuild/linux-x64": { 623 | "version": "0.17.19", 624 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", 625 | "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", 626 | "cpu": [ 627 | "x64" 628 | ], 629 | "dev": true, 630 | "optional": true, 631 | "os": [ 632 | "linux" 633 | ], 634 | "engines": { 635 | "node": ">=12" 636 | } 637 | }, 638 | "node_modules/@esbuild/netbsd-x64": { 639 | "version": "0.17.19", 640 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", 641 | "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", 642 | "cpu": [ 643 | "x64" 644 | ], 645 | "dev": true, 646 | "optional": true, 647 | "os": [ 648 | "netbsd" 649 | ], 650 | "engines": { 651 | "node": ">=12" 652 | } 653 | }, 654 | "node_modules/@esbuild/openbsd-x64": { 655 | "version": "0.17.19", 656 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", 657 | "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", 658 | "cpu": [ 659 | "x64" 660 | ], 661 | "dev": true, 662 | "optional": true, 663 | "os": [ 664 | "openbsd" 665 | ], 666 | "engines": { 667 | "node": ">=12" 668 | } 669 | }, 670 | "node_modules/@esbuild/sunos-x64": { 671 | "version": "0.17.19", 672 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", 673 | "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", 674 | "cpu": [ 675 | "x64" 676 | ], 677 | "dev": true, 678 | "optional": true, 679 | "os": [ 680 | "sunos" 681 | ], 682 | "engines": { 683 | "node": ">=12" 684 | } 685 | }, 686 | "node_modules/@esbuild/win32-arm64": { 687 | "version": "0.17.19", 688 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", 689 | "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", 690 | "cpu": [ 691 | "arm64" 692 | ], 693 | "dev": true, 694 | "optional": true, 695 | "os": [ 696 | "win32" 697 | ], 698 | "engines": { 699 | "node": ">=12" 700 | } 701 | }, 702 | "node_modules/@esbuild/win32-ia32": { 703 | "version": "0.17.19", 704 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", 705 | "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", 706 | "cpu": [ 707 | "ia32" 708 | ], 709 | "dev": true, 710 | "optional": true, 711 | "os": [ 712 | "win32" 713 | ], 714 | "engines": { 715 | "node": ">=12" 716 | } 717 | }, 718 | "node_modules/@esbuild/win32-x64": { 719 | "version": "0.17.19", 720 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", 721 | "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", 722 | "cpu": [ 723 | "x64" 724 | ], 725 | "dev": true, 726 | "optional": true, 727 | "os": [ 728 | "win32" 729 | ], 730 | "engines": { 731 | "node": ">=12" 732 | } 733 | }, 734 | "node_modules/@jridgewell/gen-mapping": { 735 | "version": "0.1.1", 736 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", 737 | "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", 738 | "dev": true, 739 | "dependencies": { 740 | "@jridgewell/set-array": "^1.0.0", 741 | "@jridgewell/sourcemap-codec": "^1.4.10" 742 | }, 743 | "engines": { 744 | "node": ">=6.0.0" 745 | } 746 | }, 747 | "node_modules/@jridgewell/resolve-uri": { 748 | "version": "3.1.0", 749 | "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", 750 | "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", 751 | "dev": true, 752 | "engines": { 753 | "node": ">=6.0.0" 754 | } 755 | }, 756 | "node_modules/@jridgewell/set-array": { 757 | "version": "1.1.2", 758 | "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", 759 | "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", 760 | "dev": true, 761 | "engines": { 762 | "node": ">=6.0.0" 763 | } 764 | }, 765 | "node_modules/@jridgewell/sourcemap-codec": { 766 | "version": "1.4.14", 767 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", 768 | "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", 769 | "dev": true 770 | }, 771 | "node_modules/@jridgewell/trace-mapping": { 772 | "version": "0.3.17", 773 | "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", 774 | "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", 775 | "dev": true, 776 | "dependencies": { 777 | "@jridgewell/resolve-uri": "3.1.0", 778 | "@jridgewell/sourcemap-codec": "1.4.14" 779 | } 780 | }, 781 | "node_modules/@nodelib/fs.scandir": { 782 | "version": "2.1.5", 783 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 784 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 785 | "dev": true, 786 | "dependencies": { 787 | "@nodelib/fs.stat": "2.0.5", 788 | "run-parallel": "^1.1.9" 789 | }, 790 | "engines": { 791 | "node": ">= 8" 792 | } 793 | }, 794 | "node_modules/@nodelib/fs.stat": { 795 | "version": "2.0.5", 796 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 797 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 798 | "dev": true, 799 | "engines": { 800 | "node": ">= 8" 801 | } 802 | }, 803 | "node_modules/@nodelib/fs.walk": { 804 | "version": "1.2.8", 805 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 806 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 807 | "dev": true, 808 | "dependencies": { 809 | "@nodelib/fs.scandir": "2.1.5", 810 | "fastq": "^1.6.0" 811 | }, 812 | "engines": { 813 | "node": ">= 8" 814 | } 815 | }, 816 | "node_modules/@remix-run/router": { 817 | "version": "1.3.2", 818 | "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.3.2.tgz", 819 | "integrity": "sha512-t54ONhl/h75X94SWsHGQ4G/ZrCEguKSRQr7DrjTciJXW0YU1QhlwYeycvK5JgkzlxmvrK7wq1NB/PLtHxoiDcA==", 820 | "engines": { 821 | "node": ">=14" 822 | } 823 | }, 824 | "node_modules/@types/prop-types": { 825 | "version": "15.7.5", 826 | "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", 827 | "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", 828 | "dev": true 829 | }, 830 | "node_modules/@types/react": { 831 | "version": "18.0.27", 832 | "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", 833 | "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", 834 | "dev": true, 835 | "dependencies": { 836 | "@types/prop-types": "*", 837 | "@types/scheduler": "*", 838 | "csstype": "^3.0.2" 839 | } 840 | }, 841 | "node_modules/@types/react-dom": { 842 | "version": "18.0.10", 843 | "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz", 844 | "integrity": "sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==", 845 | "dev": true, 846 | "dependencies": { 847 | "@types/react": "*" 848 | } 849 | }, 850 | "node_modules/@types/scheduler": { 851 | "version": "0.16.2", 852 | "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", 853 | "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", 854 | "dev": true 855 | }, 856 | "node_modules/@vercel/analytics": { 857 | "version": "1.0.0", 858 | "resolved": "https://registry.npmjs.org/@vercel/analytics/-/analytics-1.0.0.tgz", 859 | "integrity": "sha512-RQmj7pv82JwGDHrnKeRc6TtSw2U7rWNubc2IH0ernTzWTj02yr9zvIYiYJeztsBzrJtWv7m8Nz6vxxb+cdEtJw==", 860 | "peerDependencies": { 861 | "react": "^16.8||^17||^18" 862 | } 863 | }, 864 | "node_modules/@vitejs/plugin-react": { 865 | "version": "3.1.0", 866 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-3.1.0.tgz", 867 | "integrity": "sha512-AfgcRL8ZBhAlc3BFdigClmTUMISmmzHn7sB2h9U1odvc5U/MjWXsAaz18b/WoppUTDBzxOJwo2VdClfUcItu9g==", 868 | "dev": true, 869 | "dependencies": { 870 | "@babel/core": "^7.20.12", 871 | "@babel/plugin-transform-react-jsx-self": "^7.18.6", 872 | "@babel/plugin-transform-react-jsx-source": "^7.19.6", 873 | "magic-string": "^0.27.0", 874 | "react-refresh": "^0.14.0" 875 | }, 876 | "engines": { 877 | "node": "^14.18.0 || >=16.0.0" 878 | }, 879 | "peerDependencies": { 880 | "vite": "^4.1.0-beta.0" 881 | } 882 | }, 883 | "node_modules/acorn": { 884 | "version": "7.4.1", 885 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", 886 | "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", 887 | "dev": true, 888 | "bin": { 889 | "acorn": "bin/acorn" 890 | }, 891 | "engines": { 892 | "node": ">=0.4.0" 893 | } 894 | }, 895 | "node_modules/acorn-node": { 896 | "version": "1.8.2", 897 | "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", 898 | "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", 899 | "dev": true, 900 | "dependencies": { 901 | "acorn": "^7.0.0", 902 | "acorn-walk": "^7.0.0", 903 | "xtend": "^4.0.2" 904 | } 905 | }, 906 | "node_modules/acorn-walk": { 907 | "version": "7.2.0", 908 | "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", 909 | "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", 910 | "dev": true, 911 | "engines": { 912 | "node": ">=0.4.0" 913 | } 914 | }, 915 | "node_modules/ansi-styles": { 916 | "version": "3.2.1", 917 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 918 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 919 | "dev": true, 920 | "dependencies": { 921 | "color-convert": "^1.9.0" 922 | }, 923 | "engines": { 924 | "node": ">=4" 925 | } 926 | }, 927 | "node_modules/anymatch": { 928 | "version": "3.1.3", 929 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", 930 | "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", 931 | "dev": true, 932 | "dependencies": { 933 | "normalize-path": "^3.0.0", 934 | "picomatch": "^2.0.4" 935 | }, 936 | "engines": { 937 | "node": ">= 8" 938 | } 939 | }, 940 | "node_modules/arg": { 941 | "version": "5.0.2", 942 | "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", 943 | "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", 944 | "dev": true 945 | }, 946 | "node_modules/autoprefixer": { 947 | "version": "10.4.13", 948 | "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz", 949 | "integrity": "sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==", 950 | "dev": true, 951 | "funding": [ 952 | { 953 | "type": "opencollective", 954 | "url": "https://opencollective.com/postcss/" 955 | }, 956 | { 957 | "type": "tidelift", 958 | "url": "https://tidelift.com/funding/github/npm/autoprefixer" 959 | } 960 | ], 961 | "dependencies": { 962 | "browserslist": "^4.21.4", 963 | "caniuse-lite": "^1.0.30001426", 964 | "fraction.js": "^4.2.0", 965 | "normalize-range": "^0.1.2", 966 | "picocolors": "^1.0.0", 967 | "postcss-value-parser": "^4.2.0" 968 | }, 969 | "bin": { 970 | "autoprefixer": "bin/autoprefixer" 971 | }, 972 | "engines": { 973 | "node": "^10 || ^12 || >=14" 974 | }, 975 | "peerDependencies": { 976 | "postcss": "^8.1.0" 977 | } 978 | }, 979 | "node_modules/binary-extensions": { 980 | "version": "2.2.0", 981 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 982 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 983 | "dev": true, 984 | "engines": { 985 | "node": ">=8" 986 | } 987 | }, 988 | "node_modules/braces": { 989 | "version": "3.0.2", 990 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 991 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 992 | "dev": true, 993 | "dependencies": { 994 | "fill-range": "^7.0.1" 995 | }, 996 | "engines": { 997 | "node": ">=8" 998 | } 999 | }, 1000 | "node_modules/browserslist": { 1001 | "version": "4.21.5", 1002 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", 1003 | "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", 1004 | "dev": true, 1005 | "funding": [ 1006 | { 1007 | "type": "opencollective", 1008 | "url": "https://opencollective.com/browserslist" 1009 | }, 1010 | { 1011 | "type": "tidelift", 1012 | "url": "https://tidelift.com/funding/github/npm/browserslist" 1013 | } 1014 | ], 1015 | "dependencies": { 1016 | "caniuse-lite": "^1.0.30001449", 1017 | "electron-to-chromium": "^1.4.284", 1018 | "node-releases": "^2.0.8", 1019 | "update-browserslist-db": "^1.0.10" 1020 | }, 1021 | "bin": { 1022 | "browserslist": "cli.js" 1023 | }, 1024 | "engines": { 1025 | "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" 1026 | } 1027 | }, 1028 | "node_modules/camelcase-css": { 1029 | "version": "2.0.1", 1030 | "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", 1031 | "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", 1032 | "dev": true, 1033 | "engines": { 1034 | "node": ">= 6" 1035 | } 1036 | }, 1037 | "node_modules/caniuse-lite": { 1038 | "version": "1.0.30001451", 1039 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001451.tgz", 1040 | "integrity": "sha512-XY7UbUpGRatZzoRft//5xOa69/1iGJRBlrieH6QYrkKLIFn3m7OVEJ81dSrKoy2BnKsdbX5cLrOispZNYo9v2w==", 1041 | "dev": true, 1042 | "funding": [ 1043 | { 1044 | "type": "opencollective", 1045 | "url": "https://opencollective.com/browserslist" 1046 | }, 1047 | { 1048 | "type": "tidelift", 1049 | "url": "https://tidelift.com/funding/github/npm/caniuse-lite" 1050 | } 1051 | ] 1052 | }, 1053 | "node_modules/chalk": { 1054 | "version": "2.4.2", 1055 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 1056 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 1057 | "dev": true, 1058 | "dependencies": { 1059 | "ansi-styles": "^3.2.1", 1060 | "escape-string-regexp": "^1.0.5", 1061 | "supports-color": "^5.3.0" 1062 | }, 1063 | "engines": { 1064 | "node": ">=4" 1065 | } 1066 | }, 1067 | "node_modules/chokidar": { 1068 | "version": "3.5.3", 1069 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", 1070 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", 1071 | "dev": true, 1072 | "funding": [ 1073 | { 1074 | "type": "individual", 1075 | "url": "https://paulmillr.com/funding/" 1076 | } 1077 | ], 1078 | "dependencies": { 1079 | "anymatch": "~3.1.2", 1080 | "braces": "~3.0.2", 1081 | "glob-parent": "~5.1.2", 1082 | "is-binary-path": "~2.1.0", 1083 | "is-glob": "~4.0.1", 1084 | "normalize-path": "~3.0.0", 1085 | "readdirp": "~3.6.0" 1086 | }, 1087 | "engines": { 1088 | "node": ">= 8.10.0" 1089 | }, 1090 | "optionalDependencies": { 1091 | "fsevents": "~2.3.2" 1092 | } 1093 | }, 1094 | "node_modules/chokidar/node_modules/glob-parent": { 1095 | "version": "5.1.2", 1096 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 1097 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 1098 | "dev": true, 1099 | "dependencies": { 1100 | "is-glob": "^4.0.1" 1101 | }, 1102 | "engines": { 1103 | "node": ">= 6" 1104 | } 1105 | }, 1106 | "node_modules/color-convert": { 1107 | "version": "1.9.3", 1108 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 1109 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 1110 | "dev": true, 1111 | "dependencies": { 1112 | "color-name": "1.1.3" 1113 | } 1114 | }, 1115 | "node_modules/color-name": { 1116 | "version": "1.1.3", 1117 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 1118 | "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", 1119 | "dev": true 1120 | }, 1121 | "node_modules/convert-source-map": { 1122 | "version": "1.9.0", 1123 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", 1124 | "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", 1125 | "dev": true 1126 | }, 1127 | "node_modules/cssesc": { 1128 | "version": "3.0.0", 1129 | "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", 1130 | "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", 1131 | "dev": true, 1132 | "bin": { 1133 | "cssesc": "bin/cssesc" 1134 | }, 1135 | "engines": { 1136 | "node": ">=4" 1137 | } 1138 | }, 1139 | "node_modules/csstype": { 1140 | "version": "3.1.1", 1141 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", 1142 | "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", 1143 | "dev": true 1144 | }, 1145 | "node_modules/debug": { 1146 | "version": "4.3.4", 1147 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", 1148 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", 1149 | "dev": true, 1150 | "dependencies": { 1151 | "ms": "2.1.2" 1152 | }, 1153 | "engines": { 1154 | "node": ">=6.0" 1155 | }, 1156 | "peerDependenciesMeta": { 1157 | "supports-color": { 1158 | "optional": true 1159 | } 1160 | } 1161 | }, 1162 | "node_modules/defined": { 1163 | "version": "1.0.1", 1164 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", 1165 | "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", 1166 | "dev": true, 1167 | "funding": { 1168 | "url": "https://github.com/sponsors/ljharb" 1169 | } 1170 | }, 1171 | "node_modules/detective": { 1172 | "version": "5.2.1", 1173 | "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", 1174 | "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", 1175 | "dev": true, 1176 | "dependencies": { 1177 | "acorn-node": "^1.8.2", 1178 | "defined": "^1.0.0", 1179 | "minimist": "^1.2.6" 1180 | }, 1181 | "bin": { 1182 | "detective": "bin/detective.js" 1183 | }, 1184 | "engines": { 1185 | "node": ">=0.8.0" 1186 | } 1187 | }, 1188 | "node_modules/didyoumean": { 1189 | "version": "1.2.2", 1190 | "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", 1191 | "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", 1192 | "dev": true 1193 | }, 1194 | "node_modules/dlv": { 1195 | "version": "1.1.3", 1196 | "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", 1197 | "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", 1198 | "dev": true 1199 | }, 1200 | "node_modules/electron-to-chromium": { 1201 | "version": "1.4.295", 1202 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.295.tgz", 1203 | "integrity": "sha512-lEO94zqf1bDA3aepxwnWoHUjA8sZ+2owgcSZjYQy0+uOSEclJX0VieZC+r+wLpSxUHRd6gG32znTWmr+5iGzFw==", 1204 | "dev": true 1205 | }, 1206 | "node_modules/esbuild": { 1207 | "version": "0.17.19", 1208 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", 1209 | "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", 1210 | "dev": true, 1211 | "hasInstallScript": true, 1212 | "bin": { 1213 | "esbuild": "bin/esbuild" 1214 | }, 1215 | "engines": { 1216 | "node": ">=12" 1217 | }, 1218 | "optionalDependencies": { 1219 | "@esbuild/android-arm": "0.17.19", 1220 | "@esbuild/android-arm64": "0.17.19", 1221 | "@esbuild/android-x64": "0.17.19", 1222 | "@esbuild/darwin-arm64": "0.17.19", 1223 | "@esbuild/darwin-x64": "0.17.19", 1224 | "@esbuild/freebsd-arm64": "0.17.19", 1225 | "@esbuild/freebsd-x64": "0.17.19", 1226 | "@esbuild/linux-arm": "0.17.19", 1227 | "@esbuild/linux-arm64": "0.17.19", 1228 | "@esbuild/linux-ia32": "0.17.19", 1229 | "@esbuild/linux-loong64": "0.17.19", 1230 | "@esbuild/linux-mips64el": "0.17.19", 1231 | "@esbuild/linux-ppc64": "0.17.19", 1232 | "@esbuild/linux-riscv64": "0.17.19", 1233 | "@esbuild/linux-s390x": "0.17.19", 1234 | "@esbuild/linux-x64": "0.17.19", 1235 | "@esbuild/netbsd-x64": "0.17.19", 1236 | "@esbuild/openbsd-x64": "0.17.19", 1237 | "@esbuild/sunos-x64": "0.17.19", 1238 | "@esbuild/win32-arm64": "0.17.19", 1239 | "@esbuild/win32-ia32": "0.17.19", 1240 | "@esbuild/win32-x64": "0.17.19" 1241 | } 1242 | }, 1243 | "node_modules/escalade": { 1244 | "version": "3.1.1", 1245 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", 1246 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", 1247 | "dev": true, 1248 | "engines": { 1249 | "node": ">=6" 1250 | } 1251 | }, 1252 | "node_modules/escape-string-regexp": { 1253 | "version": "1.0.5", 1254 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1255 | "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", 1256 | "dev": true, 1257 | "engines": { 1258 | "node": ">=0.8.0" 1259 | } 1260 | }, 1261 | "node_modules/fast-glob": { 1262 | "version": "3.2.12", 1263 | "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", 1264 | "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", 1265 | "dev": true, 1266 | "dependencies": { 1267 | "@nodelib/fs.stat": "^2.0.2", 1268 | "@nodelib/fs.walk": "^1.2.3", 1269 | "glob-parent": "^5.1.2", 1270 | "merge2": "^1.3.0", 1271 | "micromatch": "^4.0.4" 1272 | }, 1273 | "engines": { 1274 | "node": ">=8.6.0" 1275 | } 1276 | }, 1277 | "node_modules/fast-glob/node_modules/glob-parent": { 1278 | "version": "5.1.2", 1279 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 1280 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 1281 | "dev": true, 1282 | "dependencies": { 1283 | "is-glob": "^4.0.1" 1284 | }, 1285 | "engines": { 1286 | "node": ">= 6" 1287 | } 1288 | }, 1289 | "node_modules/fastq": { 1290 | "version": "1.15.0", 1291 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", 1292 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", 1293 | "dev": true, 1294 | "dependencies": { 1295 | "reusify": "^1.0.4" 1296 | } 1297 | }, 1298 | "node_modules/fill-range": { 1299 | "version": "7.0.1", 1300 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 1301 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 1302 | "dev": true, 1303 | "dependencies": { 1304 | "to-regex-range": "^5.0.1" 1305 | }, 1306 | "engines": { 1307 | "node": ">=8" 1308 | } 1309 | }, 1310 | "node_modules/fraction.js": { 1311 | "version": "4.2.0", 1312 | "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", 1313 | "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", 1314 | "dev": true, 1315 | "engines": { 1316 | "node": "*" 1317 | }, 1318 | "funding": { 1319 | "type": "patreon", 1320 | "url": "https://www.patreon.com/infusion" 1321 | } 1322 | }, 1323 | "node_modules/fsevents": { 1324 | "version": "2.3.2", 1325 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 1326 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 1327 | "dev": true, 1328 | "hasInstallScript": true, 1329 | "optional": true, 1330 | "os": [ 1331 | "darwin" 1332 | ], 1333 | "engines": { 1334 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 1335 | } 1336 | }, 1337 | "node_modules/function-bind": { 1338 | "version": "1.1.1", 1339 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 1340 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 1341 | "dev": true 1342 | }, 1343 | "node_modules/gensync": { 1344 | "version": "1.0.0-beta.2", 1345 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", 1346 | "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", 1347 | "dev": true, 1348 | "engines": { 1349 | "node": ">=6.9.0" 1350 | } 1351 | }, 1352 | "node_modules/glob-parent": { 1353 | "version": "6.0.2", 1354 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", 1355 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 1356 | "dev": true, 1357 | "dependencies": { 1358 | "is-glob": "^4.0.3" 1359 | }, 1360 | "engines": { 1361 | "node": ">=10.13.0" 1362 | } 1363 | }, 1364 | "node_modules/globals": { 1365 | "version": "11.12.0", 1366 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 1367 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 1368 | "dev": true, 1369 | "engines": { 1370 | "node": ">=4" 1371 | } 1372 | }, 1373 | "node_modules/has": { 1374 | "version": "1.0.3", 1375 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 1376 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 1377 | "dev": true, 1378 | "dependencies": { 1379 | "function-bind": "^1.1.1" 1380 | }, 1381 | "engines": { 1382 | "node": ">= 0.4.0" 1383 | } 1384 | }, 1385 | "node_modules/has-flag": { 1386 | "version": "3.0.0", 1387 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 1388 | "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", 1389 | "dev": true, 1390 | "engines": { 1391 | "node": ">=4" 1392 | } 1393 | }, 1394 | "node_modules/is-binary-path": { 1395 | "version": "2.1.0", 1396 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 1397 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 1398 | "dev": true, 1399 | "dependencies": { 1400 | "binary-extensions": "^2.0.0" 1401 | }, 1402 | "engines": { 1403 | "node": ">=8" 1404 | } 1405 | }, 1406 | "node_modules/is-core-module": { 1407 | "version": "2.11.0", 1408 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", 1409 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", 1410 | "dev": true, 1411 | "dependencies": { 1412 | "has": "^1.0.3" 1413 | }, 1414 | "funding": { 1415 | "url": "https://github.com/sponsors/ljharb" 1416 | } 1417 | }, 1418 | "node_modules/is-extglob": { 1419 | "version": "2.1.1", 1420 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1421 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1422 | "dev": true, 1423 | "engines": { 1424 | "node": ">=0.10.0" 1425 | } 1426 | }, 1427 | "node_modules/is-glob": { 1428 | "version": "4.0.3", 1429 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 1430 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1431 | "dev": true, 1432 | "dependencies": { 1433 | "is-extglob": "^2.1.1" 1434 | }, 1435 | "engines": { 1436 | "node": ">=0.10.0" 1437 | } 1438 | }, 1439 | "node_modules/is-number": { 1440 | "version": "7.0.0", 1441 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1442 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 1443 | "dev": true, 1444 | "engines": { 1445 | "node": ">=0.12.0" 1446 | } 1447 | }, 1448 | "node_modules/js-tokens": { 1449 | "version": "4.0.0", 1450 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 1451 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" 1452 | }, 1453 | "node_modules/jsesc": { 1454 | "version": "2.5.2", 1455 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", 1456 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", 1457 | "dev": true, 1458 | "bin": { 1459 | "jsesc": "bin/jsesc" 1460 | }, 1461 | "engines": { 1462 | "node": ">=4" 1463 | } 1464 | }, 1465 | "node_modules/json5": { 1466 | "version": "2.2.3", 1467 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", 1468 | "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", 1469 | "dev": true, 1470 | "bin": { 1471 | "json5": "lib/cli.js" 1472 | }, 1473 | "engines": { 1474 | "node": ">=6" 1475 | } 1476 | }, 1477 | "node_modules/lilconfig": { 1478 | "version": "2.0.6", 1479 | "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", 1480 | "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", 1481 | "dev": true, 1482 | "engines": { 1483 | "node": ">=10" 1484 | } 1485 | }, 1486 | "node_modules/loose-envify": { 1487 | "version": "1.4.0", 1488 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 1489 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 1490 | "dependencies": { 1491 | "js-tokens": "^3.0.0 || ^4.0.0" 1492 | }, 1493 | "bin": { 1494 | "loose-envify": "cli.js" 1495 | } 1496 | }, 1497 | "node_modules/lru-cache": { 1498 | "version": "5.1.1", 1499 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", 1500 | "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", 1501 | "dev": true, 1502 | "dependencies": { 1503 | "yallist": "^3.0.2" 1504 | } 1505 | }, 1506 | "node_modules/magic-string": { 1507 | "version": "0.27.0", 1508 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", 1509 | "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", 1510 | "dev": true, 1511 | "dependencies": { 1512 | "@jridgewell/sourcemap-codec": "^1.4.13" 1513 | }, 1514 | "engines": { 1515 | "node": ">=12" 1516 | } 1517 | }, 1518 | "node_modules/merge2": { 1519 | "version": "1.4.1", 1520 | "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 1521 | "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 1522 | "dev": true, 1523 | "engines": { 1524 | "node": ">= 8" 1525 | } 1526 | }, 1527 | "node_modules/micromatch": { 1528 | "version": "4.0.5", 1529 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", 1530 | "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", 1531 | "dev": true, 1532 | "dependencies": { 1533 | "braces": "^3.0.2", 1534 | "picomatch": "^2.3.1" 1535 | }, 1536 | "engines": { 1537 | "node": ">=8.6" 1538 | } 1539 | }, 1540 | "node_modules/minimist": { 1541 | "version": "1.2.8", 1542 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", 1543 | "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", 1544 | "dev": true, 1545 | "funding": { 1546 | "url": "https://github.com/sponsors/ljharb" 1547 | } 1548 | }, 1549 | "node_modules/ms": { 1550 | "version": "2.1.2", 1551 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 1552 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 1553 | "dev": true 1554 | }, 1555 | "node_modules/nanoid": { 1556 | "version": "3.3.6", 1557 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", 1558 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", 1559 | "dev": true, 1560 | "funding": [ 1561 | { 1562 | "type": "github", 1563 | "url": "https://github.com/sponsors/ai" 1564 | } 1565 | ], 1566 | "bin": { 1567 | "nanoid": "bin/nanoid.cjs" 1568 | }, 1569 | "engines": { 1570 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 1571 | } 1572 | }, 1573 | "node_modules/node-releases": { 1574 | "version": "2.0.10", 1575 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", 1576 | "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", 1577 | "dev": true 1578 | }, 1579 | "node_modules/normalize-path": { 1580 | "version": "3.0.0", 1581 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1582 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 1583 | "dev": true, 1584 | "engines": { 1585 | "node": ">=0.10.0" 1586 | } 1587 | }, 1588 | "node_modules/normalize-range": { 1589 | "version": "0.1.2", 1590 | "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", 1591 | "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", 1592 | "dev": true, 1593 | "engines": { 1594 | "node": ">=0.10.0" 1595 | } 1596 | }, 1597 | "node_modules/object-hash": { 1598 | "version": "3.0.0", 1599 | "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", 1600 | "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", 1601 | "dev": true, 1602 | "engines": { 1603 | "node": ">= 6" 1604 | } 1605 | }, 1606 | "node_modules/path-parse": { 1607 | "version": "1.0.7", 1608 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 1609 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 1610 | "dev": true 1611 | }, 1612 | "node_modules/picocolors": { 1613 | "version": "1.0.0", 1614 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", 1615 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", 1616 | "dev": true 1617 | }, 1618 | "node_modules/picomatch": { 1619 | "version": "2.3.1", 1620 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 1621 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 1622 | "dev": true, 1623 | "engines": { 1624 | "node": ">=8.6" 1625 | }, 1626 | "funding": { 1627 | "url": "https://github.com/sponsors/jonschlinkert" 1628 | } 1629 | }, 1630 | "node_modules/pify": { 1631 | "version": "2.3.0", 1632 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 1633 | "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", 1634 | "dev": true, 1635 | "engines": { 1636 | "node": ">=0.10.0" 1637 | } 1638 | }, 1639 | "node_modules/postcss": { 1640 | "version": "8.4.23", 1641 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz", 1642 | "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==", 1643 | "dev": true, 1644 | "funding": [ 1645 | { 1646 | "type": "opencollective", 1647 | "url": "https://opencollective.com/postcss/" 1648 | }, 1649 | { 1650 | "type": "tidelift", 1651 | "url": "https://tidelift.com/funding/github/npm/postcss" 1652 | }, 1653 | { 1654 | "type": "github", 1655 | "url": "https://github.com/sponsors/ai" 1656 | } 1657 | ], 1658 | "dependencies": { 1659 | "nanoid": "^3.3.6", 1660 | "picocolors": "^1.0.0", 1661 | "source-map-js": "^1.0.2" 1662 | }, 1663 | "engines": { 1664 | "node": "^10 || ^12 || >=14" 1665 | } 1666 | }, 1667 | "node_modules/postcss-import": { 1668 | "version": "14.1.0", 1669 | "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", 1670 | "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", 1671 | "dev": true, 1672 | "dependencies": { 1673 | "postcss-value-parser": "^4.0.0", 1674 | "read-cache": "^1.0.0", 1675 | "resolve": "^1.1.7" 1676 | }, 1677 | "engines": { 1678 | "node": ">=10.0.0" 1679 | }, 1680 | "peerDependencies": { 1681 | "postcss": "^8.0.0" 1682 | } 1683 | }, 1684 | "node_modules/postcss-js": { 1685 | "version": "4.0.1", 1686 | "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", 1687 | "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", 1688 | "dev": true, 1689 | "dependencies": { 1690 | "camelcase-css": "^2.0.1" 1691 | }, 1692 | "engines": { 1693 | "node": "^12 || ^14 || >= 16" 1694 | }, 1695 | "funding": { 1696 | "type": "opencollective", 1697 | "url": "https://opencollective.com/postcss/" 1698 | }, 1699 | "peerDependencies": { 1700 | "postcss": "^8.4.21" 1701 | } 1702 | }, 1703 | "node_modules/postcss-load-config": { 1704 | "version": "3.1.4", 1705 | "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", 1706 | "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", 1707 | "dev": true, 1708 | "dependencies": { 1709 | "lilconfig": "^2.0.5", 1710 | "yaml": "^1.10.2" 1711 | }, 1712 | "engines": { 1713 | "node": ">= 10" 1714 | }, 1715 | "funding": { 1716 | "type": "opencollective", 1717 | "url": "https://opencollective.com/postcss/" 1718 | }, 1719 | "peerDependencies": { 1720 | "postcss": ">=8.0.9", 1721 | "ts-node": ">=9.0.0" 1722 | }, 1723 | "peerDependenciesMeta": { 1724 | "postcss": { 1725 | "optional": true 1726 | }, 1727 | "ts-node": { 1728 | "optional": true 1729 | } 1730 | } 1731 | }, 1732 | "node_modules/postcss-nested": { 1733 | "version": "6.0.0", 1734 | "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", 1735 | "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", 1736 | "dev": true, 1737 | "dependencies": { 1738 | "postcss-selector-parser": "^6.0.10" 1739 | }, 1740 | "engines": { 1741 | "node": ">=12.0" 1742 | }, 1743 | "funding": { 1744 | "type": "opencollective", 1745 | "url": "https://opencollective.com/postcss/" 1746 | }, 1747 | "peerDependencies": { 1748 | "postcss": "^8.2.14" 1749 | } 1750 | }, 1751 | "node_modules/postcss-selector-parser": { 1752 | "version": "6.0.11", 1753 | "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", 1754 | "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", 1755 | "dev": true, 1756 | "dependencies": { 1757 | "cssesc": "^3.0.0", 1758 | "util-deprecate": "^1.0.2" 1759 | }, 1760 | "engines": { 1761 | "node": ">=4" 1762 | } 1763 | }, 1764 | "node_modules/postcss-value-parser": { 1765 | "version": "4.2.0", 1766 | "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", 1767 | "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", 1768 | "dev": true 1769 | }, 1770 | "node_modules/queue-microtask": { 1771 | "version": "1.2.3", 1772 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 1773 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 1774 | "dev": true, 1775 | "funding": [ 1776 | { 1777 | "type": "github", 1778 | "url": "https://github.com/sponsors/feross" 1779 | }, 1780 | { 1781 | "type": "patreon", 1782 | "url": "https://www.patreon.com/feross" 1783 | }, 1784 | { 1785 | "type": "consulting", 1786 | "url": "https://feross.org/support" 1787 | } 1788 | ] 1789 | }, 1790 | "node_modules/quick-lru": { 1791 | "version": "5.1.1", 1792 | "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", 1793 | "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", 1794 | "dev": true, 1795 | "engines": { 1796 | "node": ">=10" 1797 | }, 1798 | "funding": { 1799 | "url": "https://github.com/sponsors/sindresorhus" 1800 | } 1801 | }, 1802 | "node_modules/react": { 1803 | "version": "18.2.0", 1804 | "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", 1805 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", 1806 | "dependencies": { 1807 | "loose-envify": "^1.1.0" 1808 | }, 1809 | "engines": { 1810 | "node": ">=0.10.0" 1811 | } 1812 | }, 1813 | "node_modules/react-dom": { 1814 | "version": "18.2.0", 1815 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", 1816 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", 1817 | "dependencies": { 1818 | "loose-envify": "^1.1.0", 1819 | "scheduler": "^0.23.0" 1820 | }, 1821 | "peerDependencies": { 1822 | "react": "^18.2.0" 1823 | } 1824 | }, 1825 | "node_modules/react-icons": { 1826 | "version": "4.7.1", 1827 | "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.7.1.tgz", 1828 | "integrity": "sha512-yHd3oKGMgm7zxo3EA7H2n7vxSoiGmHk5t6Ou4bXsfcgWyhfDKMpyKfhHR6Bjnn63c+YXBLBPUql9H4wPJM6sXw==", 1829 | "peerDependencies": { 1830 | "react": "*" 1831 | } 1832 | }, 1833 | "node_modules/react-refresh": { 1834 | "version": "0.14.0", 1835 | "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", 1836 | "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", 1837 | "dev": true, 1838 | "engines": { 1839 | "node": ">=0.10.0" 1840 | } 1841 | }, 1842 | "node_modules/react-router": { 1843 | "version": "6.8.1", 1844 | "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.8.1.tgz", 1845 | "integrity": "sha512-Jgi8BzAJQ8MkPt8ipXnR73rnD7EmZ0HFFb7jdQU24TynGW1Ooqin2KVDN9voSC+7xhqbbCd2cjGUepb6RObnyg==", 1846 | "dependencies": { 1847 | "@remix-run/router": "1.3.2" 1848 | }, 1849 | "engines": { 1850 | "node": ">=14" 1851 | }, 1852 | "peerDependencies": { 1853 | "react": ">=16.8" 1854 | } 1855 | }, 1856 | "node_modules/react-router-dom": { 1857 | "version": "6.8.1", 1858 | "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.8.1.tgz", 1859 | "integrity": "sha512-67EXNfkQgf34P7+PSb6VlBuaacGhkKn3kpE51+P6zYSG2kiRoumXEL6e27zTa9+PGF2MNXbgIUHTVlleLbIcHQ==", 1860 | "dependencies": { 1861 | "@remix-run/router": "1.3.2", 1862 | "react-router": "6.8.1" 1863 | }, 1864 | "engines": { 1865 | "node": ">=14" 1866 | }, 1867 | "peerDependencies": { 1868 | "react": ">=16.8", 1869 | "react-dom": ">=16.8" 1870 | } 1871 | }, 1872 | "node_modules/read-cache": { 1873 | "version": "1.0.0", 1874 | "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", 1875 | "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", 1876 | "dev": true, 1877 | "dependencies": { 1878 | "pify": "^2.3.0" 1879 | } 1880 | }, 1881 | "node_modules/readdirp": { 1882 | "version": "3.6.0", 1883 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 1884 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 1885 | "dev": true, 1886 | "dependencies": { 1887 | "picomatch": "^2.2.1" 1888 | }, 1889 | "engines": { 1890 | "node": ">=8.10.0" 1891 | } 1892 | }, 1893 | "node_modules/resolve": { 1894 | "version": "1.22.1", 1895 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", 1896 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", 1897 | "dev": true, 1898 | "dependencies": { 1899 | "is-core-module": "^2.9.0", 1900 | "path-parse": "^1.0.7", 1901 | "supports-preserve-symlinks-flag": "^1.0.0" 1902 | }, 1903 | "bin": { 1904 | "resolve": "bin/resolve" 1905 | }, 1906 | "funding": { 1907 | "url": "https://github.com/sponsors/ljharb" 1908 | } 1909 | }, 1910 | "node_modules/reusify": { 1911 | "version": "1.0.4", 1912 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", 1913 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 1914 | "dev": true, 1915 | "engines": { 1916 | "iojs": ">=1.0.0", 1917 | "node": ">=0.10.0" 1918 | } 1919 | }, 1920 | "node_modules/rollup": { 1921 | "version": "3.22.0", 1922 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.22.0.tgz", 1923 | "integrity": "sha512-imsigcWor5Y/dC0rz2q0bBt9PabcL3TORry2hAa6O6BuMvY71bqHyfReAz5qyAqiQATD1m70qdntqBfBQjVWpQ==", 1924 | "dev": true, 1925 | "bin": { 1926 | "rollup": "dist/bin/rollup" 1927 | }, 1928 | "engines": { 1929 | "node": ">=14.18.0", 1930 | "npm": ">=8.0.0" 1931 | }, 1932 | "optionalDependencies": { 1933 | "fsevents": "~2.3.2" 1934 | } 1935 | }, 1936 | "node_modules/run-parallel": { 1937 | "version": "1.2.0", 1938 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 1939 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 1940 | "dev": true, 1941 | "funding": [ 1942 | { 1943 | "type": "github", 1944 | "url": "https://github.com/sponsors/feross" 1945 | }, 1946 | { 1947 | "type": "patreon", 1948 | "url": "https://www.patreon.com/feross" 1949 | }, 1950 | { 1951 | "type": "consulting", 1952 | "url": "https://feross.org/support" 1953 | } 1954 | ], 1955 | "dependencies": { 1956 | "queue-microtask": "^1.2.2" 1957 | } 1958 | }, 1959 | "node_modules/scheduler": { 1960 | "version": "0.23.0", 1961 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", 1962 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", 1963 | "dependencies": { 1964 | "loose-envify": "^1.1.0" 1965 | } 1966 | }, 1967 | "node_modules/semver": { 1968 | "version": "6.3.0", 1969 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 1970 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 1971 | "dev": true, 1972 | "bin": { 1973 | "semver": "bin/semver.js" 1974 | } 1975 | }, 1976 | "node_modules/source-map-js": { 1977 | "version": "1.0.2", 1978 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", 1979 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", 1980 | "dev": true, 1981 | "engines": { 1982 | "node": ">=0.10.0" 1983 | } 1984 | }, 1985 | "node_modules/supports-color": { 1986 | "version": "5.5.0", 1987 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 1988 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 1989 | "dev": true, 1990 | "dependencies": { 1991 | "has-flag": "^3.0.0" 1992 | }, 1993 | "engines": { 1994 | "node": ">=4" 1995 | } 1996 | }, 1997 | "node_modules/supports-preserve-symlinks-flag": { 1998 | "version": "1.0.0", 1999 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 2000 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 2001 | "dev": true, 2002 | "engines": { 2003 | "node": ">= 0.4" 2004 | }, 2005 | "funding": { 2006 | "url": "https://github.com/sponsors/ljharb" 2007 | } 2008 | }, 2009 | "node_modules/tailwindcss": { 2010 | "version": "3.2.6", 2011 | "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.6.tgz", 2012 | "integrity": "sha512-BfgQWZrtqowOQMC2bwaSNe7xcIjdDEgixWGYOd6AL0CbKHJlvhfdbINeAW76l1sO+1ov/MJ93ODJ9yluRituIw==", 2013 | "dev": true, 2014 | "dependencies": { 2015 | "arg": "^5.0.2", 2016 | "chokidar": "^3.5.3", 2017 | "color-name": "^1.1.4", 2018 | "detective": "^5.2.1", 2019 | "didyoumean": "^1.2.2", 2020 | "dlv": "^1.1.3", 2021 | "fast-glob": "^3.2.12", 2022 | "glob-parent": "^6.0.2", 2023 | "is-glob": "^4.0.3", 2024 | "lilconfig": "^2.0.6", 2025 | "micromatch": "^4.0.5", 2026 | "normalize-path": "^3.0.0", 2027 | "object-hash": "^3.0.0", 2028 | "picocolors": "^1.0.0", 2029 | "postcss": "^8.0.9", 2030 | "postcss-import": "^14.1.0", 2031 | "postcss-js": "^4.0.0", 2032 | "postcss-load-config": "^3.1.4", 2033 | "postcss-nested": "6.0.0", 2034 | "postcss-selector-parser": "^6.0.11", 2035 | "postcss-value-parser": "^4.2.0", 2036 | "quick-lru": "^5.1.1", 2037 | "resolve": "^1.22.1" 2038 | }, 2039 | "bin": { 2040 | "tailwind": "lib/cli.js", 2041 | "tailwindcss": "lib/cli.js" 2042 | }, 2043 | "engines": { 2044 | "node": ">=12.13.0" 2045 | }, 2046 | "peerDependencies": { 2047 | "postcss": "^8.0.9" 2048 | } 2049 | }, 2050 | "node_modules/tailwindcss/node_modules/color-name": { 2051 | "version": "1.1.4", 2052 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 2053 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 2054 | "dev": true 2055 | }, 2056 | "node_modules/to-fast-properties": { 2057 | "version": "2.0.0", 2058 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", 2059 | "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", 2060 | "dev": true, 2061 | "engines": { 2062 | "node": ">=4" 2063 | } 2064 | }, 2065 | "node_modules/to-regex-range": { 2066 | "version": "5.0.1", 2067 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 2068 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 2069 | "dev": true, 2070 | "dependencies": { 2071 | "is-number": "^7.0.0" 2072 | }, 2073 | "engines": { 2074 | "node": ">=8.0" 2075 | } 2076 | }, 2077 | "node_modules/update-browserslist-db": { 2078 | "version": "1.0.10", 2079 | "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", 2080 | "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", 2081 | "dev": true, 2082 | "funding": [ 2083 | { 2084 | "type": "opencollective", 2085 | "url": "https://opencollective.com/browserslist" 2086 | }, 2087 | { 2088 | "type": "tidelift", 2089 | "url": "https://tidelift.com/funding/github/npm/browserslist" 2090 | } 2091 | ], 2092 | "dependencies": { 2093 | "escalade": "^3.1.1", 2094 | "picocolors": "^1.0.0" 2095 | }, 2096 | "bin": { 2097 | "browserslist-lint": "cli.js" 2098 | }, 2099 | "peerDependencies": { 2100 | "browserslist": ">= 4.21.0" 2101 | } 2102 | }, 2103 | "node_modules/util-deprecate": { 2104 | "version": "1.0.2", 2105 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 2106 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", 2107 | "dev": true 2108 | }, 2109 | "node_modules/vite": { 2110 | "version": "4.3.7", 2111 | "resolved": "https://registry.npmjs.org/vite/-/vite-4.3.7.tgz", 2112 | "integrity": "sha512-MTIFpbIm9v7Hh5b0wSBgkcWzSBz7SAa6K/cBTwS4kUiQJfQLFlZZRJRQgqunCVzhTPCk674tW+0Qaqh3Q00dBg==", 2113 | "dev": true, 2114 | "dependencies": { 2115 | "esbuild": "^0.17.5", 2116 | "postcss": "^8.4.23", 2117 | "rollup": "^3.21.0" 2118 | }, 2119 | "bin": { 2120 | "vite": "bin/vite.js" 2121 | }, 2122 | "engines": { 2123 | "node": "^14.18.0 || >=16.0.0" 2124 | }, 2125 | "optionalDependencies": { 2126 | "fsevents": "~2.3.2" 2127 | }, 2128 | "peerDependencies": { 2129 | "@types/node": ">= 14", 2130 | "less": "*", 2131 | "sass": "*", 2132 | "stylus": "*", 2133 | "sugarss": "*", 2134 | "terser": "^5.4.0" 2135 | }, 2136 | "peerDependenciesMeta": { 2137 | "@types/node": { 2138 | "optional": true 2139 | }, 2140 | "less": { 2141 | "optional": true 2142 | }, 2143 | "sass": { 2144 | "optional": true 2145 | }, 2146 | "stylus": { 2147 | "optional": true 2148 | }, 2149 | "sugarss": { 2150 | "optional": true 2151 | }, 2152 | "terser": { 2153 | "optional": true 2154 | } 2155 | } 2156 | }, 2157 | "node_modules/xtend": { 2158 | "version": "4.0.2", 2159 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 2160 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", 2161 | "dev": true, 2162 | "engines": { 2163 | "node": ">=0.4" 2164 | } 2165 | }, 2166 | "node_modules/yallist": { 2167 | "version": "3.1.1", 2168 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", 2169 | "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", 2170 | "dev": true 2171 | }, 2172 | "node_modules/yaml": { 2173 | "version": "1.10.2", 2174 | "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", 2175 | "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", 2176 | "dev": true, 2177 | "engines": { 2178 | "node": ">= 6" 2179 | } 2180 | } 2181 | }, 2182 | "dependencies": { 2183 | "@ampproject/remapping": { 2184 | "version": "2.2.0", 2185 | "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", 2186 | "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", 2187 | "dev": true, 2188 | "requires": { 2189 | "@jridgewell/gen-mapping": "^0.1.0", 2190 | "@jridgewell/trace-mapping": "^0.3.9" 2191 | } 2192 | }, 2193 | "@babel/code-frame": { 2194 | "version": "7.18.6", 2195 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", 2196 | "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", 2197 | "dev": true, 2198 | "requires": { 2199 | "@babel/highlight": "^7.18.6" 2200 | } 2201 | }, 2202 | "@babel/compat-data": { 2203 | "version": "7.20.14", 2204 | "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", 2205 | "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==", 2206 | "dev": true 2207 | }, 2208 | "@babel/core": { 2209 | "version": "7.20.12", 2210 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", 2211 | "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", 2212 | "dev": true, 2213 | "requires": { 2214 | "@ampproject/remapping": "^2.1.0", 2215 | "@babel/code-frame": "^7.18.6", 2216 | "@babel/generator": "^7.20.7", 2217 | "@babel/helper-compilation-targets": "^7.20.7", 2218 | "@babel/helper-module-transforms": "^7.20.11", 2219 | "@babel/helpers": "^7.20.7", 2220 | "@babel/parser": "^7.20.7", 2221 | "@babel/template": "^7.20.7", 2222 | "@babel/traverse": "^7.20.12", 2223 | "@babel/types": "^7.20.7", 2224 | "convert-source-map": "^1.7.0", 2225 | "debug": "^4.1.0", 2226 | "gensync": "^1.0.0-beta.2", 2227 | "json5": "^2.2.2", 2228 | "semver": "^6.3.0" 2229 | } 2230 | }, 2231 | "@babel/generator": { 2232 | "version": "7.20.14", 2233 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", 2234 | "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", 2235 | "dev": true, 2236 | "requires": { 2237 | "@babel/types": "^7.20.7", 2238 | "@jridgewell/gen-mapping": "^0.3.2", 2239 | "jsesc": "^2.5.1" 2240 | }, 2241 | "dependencies": { 2242 | "@jridgewell/gen-mapping": { 2243 | "version": "0.3.2", 2244 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", 2245 | "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", 2246 | "dev": true, 2247 | "requires": { 2248 | "@jridgewell/set-array": "^1.0.1", 2249 | "@jridgewell/sourcemap-codec": "^1.4.10", 2250 | "@jridgewell/trace-mapping": "^0.3.9" 2251 | } 2252 | } 2253 | } 2254 | }, 2255 | "@babel/helper-compilation-targets": { 2256 | "version": "7.20.7", 2257 | "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", 2258 | "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", 2259 | "dev": true, 2260 | "requires": { 2261 | "@babel/compat-data": "^7.20.5", 2262 | "@babel/helper-validator-option": "^7.18.6", 2263 | "browserslist": "^4.21.3", 2264 | "lru-cache": "^5.1.1", 2265 | "semver": "^6.3.0" 2266 | } 2267 | }, 2268 | "@babel/helper-environment-visitor": { 2269 | "version": "7.18.9", 2270 | "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", 2271 | "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", 2272 | "dev": true 2273 | }, 2274 | "@babel/helper-function-name": { 2275 | "version": "7.19.0", 2276 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", 2277 | "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", 2278 | "dev": true, 2279 | "requires": { 2280 | "@babel/template": "^7.18.10", 2281 | "@babel/types": "^7.19.0" 2282 | } 2283 | }, 2284 | "@babel/helper-hoist-variables": { 2285 | "version": "7.18.6", 2286 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", 2287 | "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", 2288 | "dev": true, 2289 | "requires": { 2290 | "@babel/types": "^7.18.6" 2291 | } 2292 | }, 2293 | "@babel/helper-module-imports": { 2294 | "version": "7.18.6", 2295 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", 2296 | "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", 2297 | "dev": true, 2298 | "requires": { 2299 | "@babel/types": "^7.18.6" 2300 | } 2301 | }, 2302 | "@babel/helper-module-transforms": { 2303 | "version": "7.20.11", 2304 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", 2305 | "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", 2306 | "dev": true, 2307 | "requires": { 2308 | "@babel/helper-environment-visitor": "^7.18.9", 2309 | "@babel/helper-module-imports": "^7.18.6", 2310 | "@babel/helper-simple-access": "^7.20.2", 2311 | "@babel/helper-split-export-declaration": "^7.18.6", 2312 | "@babel/helper-validator-identifier": "^7.19.1", 2313 | "@babel/template": "^7.20.7", 2314 | "@babel/traverse": "^7.20.10", 2315 | "@babel/types": "^7.20.7" 2316 | } 2317 | }, 2318 | "@babel/helper-plugin-utils": { 2319 | "version": "7.20.2", 2320 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", 2321 | "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", 2322 | "dev": true 2323 | }, 2324 | "@babel/helper-simple-access": { 2325 | "version": "7.20.2", 2326 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", 2327 | "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", 2328 | "dev": true, 2329 | "requires": { 2330 | "@babel/types": "^7.20.2" 2331 | } 2332 | }, 2333 | "@babel/helper-split-export-declaration": { 2334 | "version": "7.18.6", 2335 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", 2336 | "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", 2337 | "dev": true, 2338 | "requires": { 2339 | "@babel/types": "^7.18.6" 2340 | } 2341 | }, 2342 | "@babel/helper-string-parser": { 2343 | "version": "7.19.4", 2344 | "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", 2345 | "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", 2346 | "dev": true 2347 | }, 2348 | "@babel/helper-validator-identifier": { 2349 | "version": "7.19.1", 2350 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", 2351 | "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", 2352 | "dev": true 2353 | }, 2354 | "@babel/helper-validator-option": { 2355 | "version": "7.18.6", 2356 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", 2357 | "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", 2358 | "dev": true 2359 | }, 2360 | "@babel/helpers": { 2361 | "version": "7.20.13", 2362 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", 2363 | "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", 2364 | "dev": true, 2365 | "requires": { 2366 | "@babel/template": "^7.20.7", 2367 | "@babel/traverse": "^7.20.13", 2368 | "@babel/types": "^7.20.7" 2369 | } 2370 | }, 2371 | "@babel/highlight": { 2372 | "version": "7.18.6", 2373 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", 2374 | "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", 2375 | "dev": true, 2376 | "requires": { 2377 | "@babel/helper-validator-identifier": "^7.18.6", 2378 | "chalk": "^2.0.0", 2379 | "js-tokens": "^4.0.0" 2380 | } 2381 | }, 2382 | "@babel/parser": { 2383 | "version": "7.20.15", 2384 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", 2385 | "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==", 2386 | "dev": true 2387 | }, 2388 | "@babel/plugin-transform-react-jsx-self": { 2389 | "version": "7.18.6", 2390 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.18.6.tgz", 2391 | "integrity": "sha512-A0LQGx4+4Jv7u/tWzoJF7alZwnBDQd6cGLh9P+Ttk4dpiL+J5p7NSNv/9tlEFFJDq3kjxOavWmbm6t0Gk+A3Ig==", 2392 | "dev": true, 2393 | "requires": { 2394 | "@babel/helper-plugin-utils": "^7.18.6" 2395 | } 2396 | }, 2397 | "@babel/plugin-transform-react-jsx-source": { 2398 | "version": "7.19.6", 2399 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.19.6.tgz", 2400 | "integrity": "sha512-RpAi004QyMNisst/pvSanoRdJ4q+jMCWyk9zdw/CyLB9j8RXEahodR6l2GyttDRyEVWZtbN+TpLiHJ3t34LbsQ==", 2401 | "dev": true, 2402 | "requires": { 2403 | "@babel/helper-plugin-utils": "^7.19.0" 2404 | } 2405 | }, 2406 | "@babel/template": { 2407 | "version": "7.20.7", 2408 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", 2409 | "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", 2410 | "dev": true, 2411 | "requires": { 2412 | "@babel/code-frame": "^7.18.6", 2413 | "@babel/parser": "^7.20.7", 2414 | "@babel/types": "^7.20.7" 2415 | } 2416 | }, 2417 | "@babel/traverse": { 2418 | "version": "7.20.13", 2419 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", 2420 | "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", 2421 | "dev": true, 2422 | "requires": { 2423 | "@babel/code-frame": "^7.18.6", 2424 | "@babel/generator": "^7.20.7", 2425 | "@babel/helper-environment-visitor": "^7.18.9", 2426 | "@babel/helper-function-name": "^7.19.0", 2427 | "@babel/helper-hoist-variables": "^7.18.6", 2428 | "@babel/helper-split-export-declaration": "^7.18.6", 2429 | "@babel/parser": "^7.20.13", 2430 | "@babel/types": "^7.20.7", 2431 | "debug": "^4.1.0", 2432 | "globals": "^11.1.0" 2433 | } 2434 | }, 2435 | "@babel/types": { 2436 | "version": "7.20.7", 2437 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", 2438 | "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", 2439 | "dev": true, 2440 | "requires": { 2441 | "@babel/helper-string-parser": "^7.19.4", 2442 | "@babel/helper-validator-identifier": "^7.19.1", 2443 | "to-fast-properties": "^2.0.0" 2444 | } 2445 | }, 2446 | "@esbuild/android-arm": { 2447 | "version": "0.17.19", 2448 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", 2449 | "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", 2450 | "dev": true, 2451 | "optional": true 2452 | }, 2453 | "@esbuild/android-arm64": { 2454 | "version": "0.17.19", 2455 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", 2456 | "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", 2457 | "dev": true, 2458 | "optional": true 2459 | }, 2460 | "@esbuild/android-x64": { 2461 | "version": "0.17.19", 2462 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", 2463 | "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", 2464 | "dev": true, 2465 | "optional": true 2466 | }, 2467 | "@esbuild/darwin-arm64": { 2468 | "version": "0.17.19", 2469 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", 2470 | "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", 2471 | "dev": true, 2472 | "optional": true 2473 | }, 2474 | "@esbuild/darwin-x64": { 2475 | "version": "0.17.19", 2476 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", 2477 | "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", 2478 | "dev": true, 2479 | "optional": true 2480 | }, 2481 | "@esbuild/freebsd-arm64": { 2482 | "version": "0.17.19", 2483 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", 2484 | "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", 2485 | "dev": true, 2486 | "optional": true 2487 | }, 2488 | "@esbuild/freebsd-x64": { 2489 | "version": "0.17.19", 2490 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", 2491 | "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", 2492 | "dev": true, 2493 | "optional": true 2494 | }, 2495 | "@esbuild/linux-arm": { 2496 | "version": "0.17.19", 2497 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", 2498 | "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", 2499 | "dev": true, 2500 | "optional": true 2501 | }, 2502 | "@esbuild/linux-arm64": { 2503 | "version": "0.17.19", 2504 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", 2505 | "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", 2506 | "dev": true, 2507 | "optional": true 2508 | }, 2509 | "@esbuild/linux-ia32": { 2510 | "version": "0.17.19", 2511 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", 2512 | "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", 2513 | "dev": true, 2514 | "optional": true 2515 | }, 2516 | "@esbuild/linux-loong64": { 2517 | "version": "0.17.19", 2518 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", 2519 | "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", 2520 | "dev": true, 2521 | "optional": true 2522 | }, 2523 | "@esbuild/linux-mips64el": { 2524 | "version": "0.17.19", 2525 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", 2526 | "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", 2527 | "dev": true, 2528 | "optional": true 2529 | }, 2530 | "@esbuild/linux-ppc64": { 2531 | "version": "0.17.19", 2532 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", 2533 | "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", 2534 | "dev": true, 2535 | "optional": true 2536 | }, 2537 | "@esbuild/linux-riscv64": { 2538 | "version": "0.17.19", 2539 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", 2540 | "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", 2541 | "dev": true, 2542 | "optional": true 2543 | }, 2544 | "@esbuild/linux-s390x": { 2545 | "version": "0.17.19", 2546 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", 2547 | "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", 2548 | "dev": true, 2549 | "optional": true 2550 | }, 2551 | "@esbuild/linux-x64": { 2552 | "version": "0.17.19", 2553 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", 2554 | "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", 2555 | "dev": true, 2556 | "optional": true 2557 | }, 2558 | "@esbuild/netbsd-x64": { 2559 | "version": "0.17.19", 2560 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", 2561 | "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", 2562 | "dev": true, 2563 | "optional": true 2564 | }, 2565 | "@esbuild/openbsd-x64": { 2566 | "version": "0.17.19", 2567 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", 2568 | "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", 2569 | "dev": true, 2570 | "optional": true 2571 | }, 2572 | "@esbuild/sunos-x64": { 2573 | "version": "0.17.19", 2574 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", 2575 | "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", 2576 | "dev": true, 2577 | "optional": true 2578 | }, 2579 | "@esbuild/win32-arm64": { 2580 | "version": "0.17.19", 2581 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", 2582 | "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", 2583 | "dev": true, 2584 | "optional": true 2585 | }, 2586 | "@esbuild/win32-ia32": { 2587 | "version": "0.17.19", 2588 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", 2589 | "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", 2590 | "dev": true, 2591 | "optional": true 2592 | }, 2593 | "@esbuild/win32-x64": { 2594 | "version": "0.17.19", 2595 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", 2596 | "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", 2597 | "dev": true, 2598 | "optional": true 2599 | }, 2600 | "@jridgewell/gen-mapping": { 2601 | "version": "0.1.1", 2602 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", 2603 | "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", 2604 | "dev": true, 2605 | "requires": { 2606 | "@jridgewell/set-array": "^1.0.0", 2607 | "@jridgewell/sourcemap-codec": "^1.4.10" 2608 | } 2609 | }, 2610 | "@jridgewell/resolve-uri": { 2611 | "version": "3.1.0", 2612 | "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", 2613 | "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", 2614 | "dev": true 2615 | }, 2616 | "@jridgewell/set-array": { 2617 | "version": "1.1.2", 2618 | "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", 2619 | "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", 2620 | "dev": true 2621 | }, 2622 | "@jridgewell/sourcemap-codec": { 2623 | "version": "1.4.14", 2624 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", 2625 | "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", 2626 | "dev": true 2627 | }, 2628 | "@jridgewell/trace-mapping": { 2629 | "version": "0.3.17", 2630 | "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", 2631 | "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", 2632 | "dev": true, 2633 | "requires": { 2634 | "@jridgewell/resolve-uri": "3.1.0", 2635 | "@jridgewell/sourcemap-codec": "1.4.14" 2636 | } 2637 | }, 2638 | "@nodelib/fs.scandir": { 2639 | "version": "2.1.5", 2640 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 2641 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 2642 | "dev": true, 2643 | "requires": { 2644 | "@nodelib/fs.stat": "2.0.5", 2645 | "run-parallel": "^1.1.9" 2646 | } 2647 | }, 2648 | "@nodelib/fs.stat": { 2649 | "version": "2.0.5", 2650 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 2651 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 2652 | "dev": true 2653 | }, 2654 | "@nodelib/fs.walk": { 2655 | "version": "1.2.8", 2656 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 2657 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 2658 | "dev": true, 2659 | "requires": { 2660 | "@nodelib/fs.scandir": "2.1.5", 2661 | "fastq": "^1.6.0" 2662 | } 2663 | }, 2664 | "@remix-run/router": { 2665 | "version": "1.3.2", 2666 | "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.3.2.tgz", 2667 | "integrity": "sha512-t54ONhl/h75X94SWsHGQ4G/ZrCEguKSRQr7DrjTciJXW0YU1QhlwYeycvK5JgkzlxmvrK7wq1NB/PLtHxoiDcA==" 2668 | }, 2669 | "@types/prop-types": { 2670 | "version": "15.7.5", 2671 | "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", 2672 | "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", 2673 | "dev": true 2674 | }, 2675 | "@types/react": { 2676 | "version": "18.0.27", 2677 | "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.27.tgz", 2678 | "integrity": "sha512-3vtRKHgVxu3Jp9t718R9BuzoD4NcQ8YJ5XRzsSKxNDiDonD2MXIT1TmSkenxuCycZJoQT5d2vE8LwWJxBC1gmA==", 2679 | "dev": true, 2680 | "requires": { 2681 | "@types/prop-types": "*", 2682 | "@types/scheduler": "*", 2683 | "csstype": "^3.0.2" 2684 | } 2685 | }, 2686 | "@types/react-dom": { 2687 | "version": "18.0.10", 2688 | "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.10.tgz", 2689 | "integrity": "sha512-E42GW/JA4Qv15wQdqJq8DL4JhNpB3prJgjgapN3qJT9K2zO5IIAQh4VXvCEDupoqAwnz0cY4RlXeC/ajX5SFHg==", 2690 | "dev": true, 2691 | "requires": { 2692 | "@types/react": "*" 2693 | } 2694 | }, 2695 | "@types/scheduler": { 2696 | "version": "0.16.2", 2697 | "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", 2698 | "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", 2699 | "dev": true 2700 | }, 2701 | "@vercel/analytics": { 2702 | "version": "1.0.0", 2703 | "resolved": "https://registry.npmjs.org/@vercel/analytics/-/analytics-1.0.0.tgz", 2704 | "integrity": "sha512-RQmj7pv82JwGDHrnKeRc6TtSw2U7rWNubc2IH0ernTzWTj02yr9zvIYiYJeztsBzrJtWv7m8Nz6vxxb+cdEtJw==", 2705 | "requires": {} 2706 | }, 2707 | "@vitejs/plugin-react": { 2708 | "version": "3.1.0", 2709 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-3.1.0.tgz", 2710 | "integrity": "sha512-AfgcRL8ZBhAlc3BFdigClmTUMISmmzHn7sB2h9U1odvc5U/MjWXsAaz18b/WoppUTDBzxOJwo2VdClfUcItu9g==", 2711 | "dev": true, 2712 | "requires": { 2713 | "@babel/core": "^7.20.12", 2714 | "@babel/plugin-transform-react-jsx-self": "^7.18.6", 2715 | "@babel/plugin-transform-react-jsx-source": "^7.19.6", 2716 | "magic-string": "^0.27.0", 2717 | "react-refresh": "^0.14.0" 2718 | } 2719 | }, 2720 | "acorn": { 2721 | "version": "7.4.1", 2722 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", 2723 | "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", 2724 | "dev": true 2725 | }, 2726 | "acorn-node": { 2727 | "version": "1.8.2", 2728 | "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz", 2729 | "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==", 2730 | "dev": true, 2731 | "requires": { 2732 | "acorn": "^7.0.0", 2733 | "acorn-walk": "^7.0.0", 2734 | "xtend": "^4.0.2" 2735 | } 2736 | }, 2737 | "acorn-walk": { 2738 | "version": "7.2.0", 2739 | "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", 2740 | "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", 2741 | "dev": true 2742 | }, 2743 | "ansi-styles": { 2744 | "version": "3.2.1", 2745 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 2746 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 2747 | "dev": true, 2748 | "requires": { 2749 | "color-convert": "^1.9.0" 2750 | } 2751 | }, 2752 | "anymatch": { 2753 | "version": "3.1.3", 2754 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", 2755 | "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", 2756 | "dev": true, 2757 | "requires": { 2758 | "normalize-path": "^3.0.0", 2759 | "picomatch": "^2.0.4" 2760 | } 2761 | }, 2762 | "arg": { 2763 | "version": "5.0.2", 2764 | "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", 2765 | "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", 2766 | "dev": true 2767 | }, 2768 | "autoprefixer": { 2769 | "version": "10.4.13", 2770 | "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz", 2771 | "integrity": "sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==", 2772 | "dev": true, 2773 | "requires": { 2774 | "browserslist": "^4.21.4", 2775 | "caniuse-lite": "^1.0.30001426", 2776 | "fraction.js": "^4.2.0", 2777 | "normalize-range": "^0.1.2", 2778 | "picocolors": "^1.0.0", 2779 | "postcss-value-parser": "^4.2.0" 2780 | } 2781 | }, 2782 | "binary-extensions": { 2783 | "version": "2.2.0", 2784 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", 2785 | "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", 2786 | "dev": true 2787 | }, 2788 | "braces": { 2789 | "version": "3.0.2", 2790 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 2791 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 2792 | "dev": true, 2793 | "requires": { 2794 | "fill-range": "^7.0.1" 2795 | } 2796 | }, 2797 | "browserslist": { 2798 | "version": "4.21.5", 2799 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", 2800 | "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", 2801 | "dev": true, 2802 | "requires": { 2803 | "caniuse-lite": "^1.0.30001449", 2804 | "electron-to-chromium": "^1.4.284", 2805 | "node-releases": "^2.0.8", 2806 | "update-browserslist-db": "^1.0.10" 2807 | } 2808 | }, 2809 | "camelcase-css": { 2810 | "version": "2.0.1", 2811 | "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", 2812 | "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", 2813 | "dev": true 2814 | }, 2815 | "caniuse-lite": { 2816 | "version": "1.0.30001451", 2817 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001451.tgz", 2818 | "integrity": "sha512-XY7UbUpGRatZzoRft//5xOa69/1iGJRBlrieH6QYrkKLIFn3m7OVEJ81dSrKoy2BnKsdbX5cLrOispZNYo9v2w==", 2819 | "dev": true 2820 | }, 2821 | "chalk": { 2822 | "version": "2.4.2", 2823 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 2824 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 2825 | "dev": true, 2826 | "requires": { 2827 | "ansi-styles": "^3.2.1", 2828 | "escape-string-regexp": "^1.0.5", 2829 | "supports-color": "^5.3.0" 2830 | } 2831 | }, 2832 | "chokidar": { 2833 | "version": "3.5.3", 2834 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", 2835 | "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", 2836 | "dev": true, 2837 | "requires": { 2838 | "anymatch": "~3.1.2", 2839 | "braces": "~3.0.2", 2840 | "fsevents": "~2.3.2", 2841 | "glob-parent": "~5.1.2", 2842 | "is-binary-path": "~2.1.0", 2843 | "is-glob": "~4.0.1", 2844 | "normalize-path": "~3.0.0", 2845 | "readdirp": "~3.6.0" 2846 | }, 2847 | "dependencies": { 2848 | "glob-parent": { 2849 | "version": "5.1.2", 2850 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 2851 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 2852 | "dev": true, 2853 | "requires": { 2854 | "is-glob": "^4.0.1" 2855 | } 2856 | } 2857 | } 2858 | }, 2859 | "color-convert": { 2860 | "version": "1.9.3", 2861 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 2862 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 2863 | "dev": true, 2864 | "requires": { 2865 | "color-name": "1.1.3" 2866 | } 2867 | }, 2868 | "color-name": { 2869 | "version": "1.1.3", 2870 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 2871 | "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", 2872 | "dev": true 2873 | }, 2874 | "convert-source-map": { 2875 | "version": "1.9.0", 2876 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", 2877 | "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", 2878 | "dev": true 2879 | }, 2880 | "cssesc": { 2881 | "version": "3.0.0", 2882 | "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", 2883 | "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", 2884 | "dev": true 2885 | }, 2886 | "csstype": { 2887 | "version": "3.1.1", 2888 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", 2889 | "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==", 2890 | "dev": true 2891 | }, 2892 | "debug": { 2893 | "version": "4.3.4", 2894 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", 2895 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", 2896 | "dev": true, 2897 | "requires": { 2898 | "ms": "2.1.2" 2899 | } 2900 | }, 2901 | "defined": { 2902 | "version": "1.0.1", 2903 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz", 2904 | "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==", 2905 | "dev": true 2906 | }, 2907 | "detective": { 2908 | "version": "5.2.1", 2909 | "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz", 2910 | "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==", 2911 | "dev": true, 2912 | "requires": { 2913 | "acorn-node": "^1.8.2", 2914 | "defined": "^1.0.0", 2915 | "minimist": "^1.2.6" 2916 | } 2917 | }, 2918 | "didyoumean": { 2919 | "version": "1.2.2", 2920 | "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", 2921 | "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", 2922 | "dev": true 2923 | }, 2924 | "dlv": { 2925 | "version": "1.1.3", 2926 | "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", 2927 | "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", 2928 | "dev": true 2929 | }, 2930 | "electron-to-chromium": { 2931 | "version": "1.4.295", 2932 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.295.tgz", 2933 | "integrity": "sha512-lEO94zqf1bDA3aepxwnWoHUjA8sZ+2owgcSZjYQy0+uOSEclJX0VieZC+r+wLpSxUHRd6gG32znTWmr+5iGzFw==", 2934 | "dev": true 2935 | }, 2936 | "esbuild": { 2937 | "version": "0.17.19", 2938 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", 2939 | "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", 2940 | "dev": true, 2941 | "requires": { 2942 | "@esbuild/android-arm": "0.17.19", 2943 | "@esbuild/android-arm64": "0.17.19", 2944 | "@esbuild/android-x64": "0.17.19", 2945 | "@esbuild/darwin-arm64": "0.17.19", 2946 | "@esbuild/darwin-x64": "0.17.19", 2947 | "@esbuild/freebsd-arm64": "0.17.19", 2948 | "@esbuild/freebsd-x64": "0.17.19", 2949 | "@esbuild/linux-arm": "0.17.19", 2950 | "@esbuild/linux-arm64": "0.17.19", 2951 | "@esbuild/linux-ia32": "0.17.19", 2952 | "@esbuild/linux-loong64": "0.17.19", 2953 | "@esbuild/linux-mips64el": "0.17.19", 2954 | "@esbuild/linux-ppc64": "0.17.19", 2955 | "@esbuild/linux-riscv64": "0.17.19", 2956 | "@esbuild/linux-s390x": "0.17.19", 2957 | "@esbuild/linux-x64": "0.17.19", 2958 | "@esbuild/netbsd-x64": "0.17.19", 2959 | "@esbuild/openbsd-x64": "0.17.19", 2960 | "@esbuild/sunos-x64": "0.17.19", 2961 | "@esbuild/win32-arm64": "0.17.19", 2962 | "@esbuild/win32-ia32": "0.17.19", 2963 | "@esbuild/win32-x64": "0.17.19" 2964 | } 2965 | }, 2966 | "escalade": { 2967 | "version": "3.1.1", 2968 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", 2969 | "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", 2970 | "dev": true 2971 | }, 2972 | "escape-string-regexp": { 2973 | "version": "1.0.5", 2974 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 2975 | "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", 2976 | "dev": true 2977 | }, 2978 | "fast-glob": { 2979 | "version": "3.2.12", 2980 | "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", 2981 | "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", 2982 | "dev": true, 2983 | "requires": { 2984 | "@nodelib/fs.stat": "^2.0.2", 2985 | "@nodelib/fs.walk": "^1.2.3", 2986 | "glob-parent": "^5.1.2", 2987 | "merge2": "^1.3.0", 2988 | "micromatch": "^4.0.4" 2989 | }, 2990 | "dependencies": { 2991 | "glob-parent": { 2992 | "version": "5.1.2", 2993 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 2994 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 2995 | "dev": true, 2996 | "requires": { 2997 | "is-glob": "^4.0.1" 2998 | } 2999 | } 3000 | } 3001 | }, 3002 | "fastq": { 3003 | "version": "1.15.0", 3004 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", 3005 | "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", 3006 | "dev": true, 3007 | "requires": { 3008 | "reusify": "^1.0.4" 3009 | } 3010 | }, 3011 | "fill-range": { 3012 | "version": "7.0.1", 3013 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 3014 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 3015 | "dev": true, 3016 | "requires": { 3017 | "to-regex-range": "^5.0.1" 3018 | } 3019 | }, 3020 | "fraction.js": { 3021 | "version": "4.2.0", 3022 | "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", 3023 | "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", 3024 | "dev": true 3025 | }, 3026 | "fsevents": { 3027 | "version": "2.3.2", 3028 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", 3029 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", 3030 | "dev": true, 3031 | "optional": true 3032 | }, 3033 | "function-bind": { 3034 | "version": "1.1.1", 3035 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 3036 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 3037 | "dev": true 3038 | }, 3039 | "gensync": { 3040 | "version": "1.0.0-beta.2", 3041 | "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", 3042 | "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", 3043 | "dev": true 3044 | }, 3045 | "glob-parent": { 3046 | "version": "6.0.2", 3047 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", 3048 | "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 3049 | "dev": true, 3050 | "requires": { 3051 | "is-glob": "^4.0.3" 3052 | } 3053 | }, 3054 | "globals": { 3055 | "version": "11.12.0", 3056 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 3057 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 3058 | "dev": true 3059 | }, 3060 | "has": { 3061 | "version": "1.0.3", 3062 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 3063 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 3064 | "dev": true, 3065 | "requires": { 3066 | "function-bind": "^1.1.1" 3067 | } 3068 | }, 3069 | "has-flag": { 3070 | "version": "3.0.0", 3071 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 3072 | "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", 3073 | "dev": true 3074 | }, 3075 | "is-binary-path": { 3076 | "version": "2.1.0", 3077 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 3078 | "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 3079 | "dev": true, 3080 | "requires": { 3081 | "binary-extensions": "^2.0.0" 3082 | } 3083 | }, 3084 | "is-core-module": { 3085 | "version": "2.11.0", 3086 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", 3087 | "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", 3088 | "dev": true, 3089 | "requires": { 3090 | "has": "^1.0.3" 3091 | } 3092 | }, 3093 | "is-extglob": { 3094 | "version": "2.1.1", 3095 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 3096 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 3097 | "dev": true 3098 | }, 3099 | "is-glob": { 3100 | "version": "4.0.3", 3101 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 3102 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 3103 | "dev": true, 3104 | "requires": { 3105 | "is-extglob": "^2.1.1" 3106 | } 3107 | }, 3108 | "is-number": { 3109 | "version": "7.0.0", 3110 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 3111 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 3112 | "dev": true 3113 | }, 3114 | "js-tokens": { 3115 | "version": "4.0.0", 3116 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 3117 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" 3118 | }, 3119 | "jsesc": { 3120 | "version": "2.5.2", 3121 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", 3122 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", 3123 | "dev": true 3124 | }, 3125 | "json5": { 3126 | "version": "2.2.3", 3127 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", 3128 | "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", 3129 | "dev": true 3130 | }, 3131 | "lilconfig": { 3132 | "version": "2.0.6", 3133 | "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", 3134 | "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", 3135 | "dev": true 3136 | }, 3137 | "loose-envify": { 3138 | "version": "1.4.0", 3139 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 3140 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 3141 | "requires": { 3142 | "js-tokens": "^3.0.0 || ^4.0.0" 3143 | } 3144 | }, 3145 | "lru-cache": { 3146 | "version": "5.1.1", 3147 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", 3148 | "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", 3149 | "dev": true, 3150 | "requires": { 3151 | "yallist": "^3.0.2" 3152 | } 3153 | }, 3154 | "magic-string": { 3155 | "version": "0.27.0", 3156 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.27.0.tgz", 3157 | "integrity": "sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==", 3158 | "dev": true, 3159 | "requires": { 3160 | "@jridgewell/sourcemap-codec": "^1.4.13" 3161 | } 3162 | }, 3163 | "merge2": { 3164 | "version": "1.4.1", 3165 | "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 3166 | "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 3167 | "dev": true 3168 | }, 3169 | "micromatch": { 3170 | "version": "4.0.5", 3171 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", 3172 | "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", 3173 | "dev": true, 3174 | "requires": { 3175 | "braces": "^3.0.2", 3176 | "picomatch": "^2.3.1" 3177 | } 3178 | }, 3179 | "minimist": { 3180 | "version": "1.2.8", 3181 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", 3182 | "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", 3183 | "dev": true 3184 | }, 3185 | "ms": { 3186 | "version": "2.1.2", 3187 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 3188 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 3189 | "dev": true 3190 | }, 3191 | "nanoid": { 3192 | "version": "3.3.6", 3193 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", 3194 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", 3195 | "dev": true 3196 | }, 3197 | "node-releases": { 3198 | "version": "2.0.10", 3199 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", 3200 | "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", 3201 | "dev": true 3202 | }, 3203 | "normalize-path": { 3204 | "version": "3.0.0", 3205 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 3206 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 3207 | "dev": true 3208 | }, 3209 | "normalize-range": { 3210 | "version": "0.1.2", 3211 | "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", 3212 | "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", 3213 | "dev": true 3214 | }, 3215 | "object-hash": { 3216 | "version": "3.0.0", 3217 | "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", 3218 | "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", 3219 | "dev": true 3220 | }, 3221 | "path-parse": { 3222 | "version": "1.0.7", 3223 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 3224 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 3225 | "dev": true 3226 | }, 3227 | "picocolors": { 3228 | "version": "1.0.0", 3229 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", 3230 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", 3231 | "dev": true 3232 | }, 3233 | "picomatch": { 3234 | "version": "2.3.1", 3235 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 3236 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 3237 | "dev": true 3238 | }, 3239 | "pify": { 3240 | "version": "2.3.0", 3241 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 3242 | "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", 3243 | "dev": true 3244 | }, 3245 | "postcss": { 3246 | "version": "8.4.23", 3247 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz", 3248 | "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==", 3249 | "dev": true, 3250 | "requires": { 3251 | "nanoid": "^3.3.6", 3252 | "picocolors": "^1.0.0", 3253 | "source-map-js": "^1.0.2" 3254 | } 3255 | }, 3256 | "postcss-import": { 3257 | "version": "14.1.0", 3258 | "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", 3259 | "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", 3260 | "dev": true, 3261 | "requires": { 3262 | "postcss-value-parser": "^4.0.0", 3263 | "read-cache": "^1.0.0", 3264 | "resolve": "^1.1.7" 3265 | } 3266 | }, 3267 | "postcss-js": { 3268 | "version": "4.0.1", 3269 | "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", 3270 | "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", 3271 | "dev": true, 3272 | "requires": { 3273 | "camelcase-css": "^2.0.1" 3274 | } 3275 | }, 3276 | "postcss-load-config": { 3277 | "version": "3.1.4", 3278 | "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", 3279 | "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", 3280 | "dev": true, 3281 | "requires": { 3282 | "lilconfig": "^2.0.5", 3283 | "yaml": "^1.10.2" 3284 | } 3285 | }, 3286 | "postcss-nested": { 3287 | "version": "6.0.0", 3288 | "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", 3289 | "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", 3290 | "dev": true, 3291 | "requires": { 3292 | "postcss-selector-parser": "^6.0.10" 3293 | } 3294 | }, 3295 | "postcss-selector-parser": { 3296 | "version": "6.0.11", 3297 | "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", 3298 | "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", 3299 | "dev": true, 3300 | "requires": { 3301 | "cssesc": "^3.0.0", 3302 | "util-deprecate": "^1.0.2" 3303 | } 3304 | }, 3305 | "postcss-value-parser": { 3306 | "version": "4.2.0", 3307 | "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", 3308 | "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", 3309 | "dev": true 3310 | }, 3311 | "queue-microtask": { 3312 | "version": "1.2.3", 3313 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 3314 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 3315 | "dev": true 3316 | }, 3317 | "quick-lru": { 3318 | "version": "5.1.1", 3319 | "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", 3320 | "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", 3321 | "dev": true 3322 | }, 3323 | "react": { 3324 | "version": "18.2.0", 3325 | "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", 3326 | "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", 3327 | "requires": { 3328 | "loose-envify": "^1.1.0" 3329 | } 3330 | }, 3331 | "react-dom": { 3332 | "version": "18.2.0", 3333 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", 3334 | "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", 3335 | "requires": { 3336 | "loose-envify": "^1.1.0", 3337 | "scheduler": "^0.23.0" 3338 | } 3339 | }, 3340 | "react-icons": { 3341 | "version": "4.7.1", 3342 | "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.7.1.tgz", 3343 | "integrity": "sha512-yHd3oKGMgm7zxo3EA7H2n7vxSoiGmHk5t6Ou4bXsfcgWyhfDKMpyKfhHR6Bjnn63c+YXBLBPUql9H4wPJM6sXw==", 3344 | "requires": {} 3345 | }, 3346 | "react-refresh": { 3347 | "version": "0.14.0", 3348 | "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.0.tgz", 3349 | "integrity": "sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==", 3350 | "dev": true 3351 | }, 3352 | "react-router": { 3353 | "version": "6.8.1", 3354 | "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.8.1.tgz", 3355 | "integrity": "sha512-Jgi8BzAJQ8MkPt8ipXnR73rnD7EmZ0HFFb7jdQU24TynGW1Ooqin2KVDN9voSC+7xhqbbCd2cjGUepb6RObnyg==", 3356 | "requires": { 3357 | "@remix-run/router": "1.3.2" 3358 | } 3359 | }, 3360 | "react-router-dom": { 3361 | "version": "6.8.1", 3362 | "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.8.1.tgz", 3363 | "integrity": "sha512-67EXNfkQgf34P7+PSb6VlBuaacGhkKn3kpE51+P6zYSG2kiRoumXEL6e27zTa9+PGF2MNXbgIUHTVlleLbIcHQ==", 3364 | "requires": { 3365 | "@remix-run/router": "1.3.2", 3366 | "react-router": "6.8.1" 3367 | } 3368 | }, 3369 | "read-cache": { 3370 | "version": "1.0.0", 3371 | "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", 3372 | "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", 3373 | "dev": true, 3374 | "requires": { 3375 | "pify": "^2.3.0" 3376 | } 3377 | }, 3378 | "readdirp": { 3379 | "version": "3.6.0", 3380 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 3381 | "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 3382 | "dev": true, 3383 | "requires": { 3384 | "picomatch": "^2.2.1" 3385 | } 3386 | }, 3387 | "resolve": { 3388 | "version": "1.22.1", 3389 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", 3390 | "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", 3391 | "dev": true, 3392 | "requires": { 3393 | "is-core-module": "^2.9.0", 3394 | "path-parse": "^1.0.7", 3395 | "supports-preserve-symlinks-flag": "^1.0.0" 3396 | } 3397 | }, 3398 | "reusify": { 3399 | "version": "1.0.4", 3400 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", 3401 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 3402 | "dev": true 3403 | }, 3404 | "rollup": { 3405 | "version": "3.22.0", 3406 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.22.0.tgz", 3407 | "integrity": "sha512-imsigcWor5Y/dC0rz2q0bBt9PabcL3TORry2hAa6O6BuMvY71bqHyfReAz5qyAqiQATD1m70qdntqBfBQjVWpQ==", 3408 | "dev": true, 3409 | "requires": { 3410 | "fsevents": "~2.3.2" 3411 | } 3412 | }, 3413 | "run-parallel": { 3414 | "version": "1.2.0", 3415 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 3416 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 3417 | "dev": true, 3418 | "requires": { 3419 | "queue-microtask": "^1.2.2" 3420 | } 3421 | }, 3422 | "scheduler": { 3423 | "version": "0.23.0", 3424 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", 3425 | "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", 3426 | "requires": { 3427 | "loose-envify": "^1.1.0" 3428 | } 3429 | }, 3430 | "semver": { 3431 | "version": "6.3.0", 3432 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 3433 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 3434 | "dev": true 3435 | }, 3436 | "source-map-js": { 3437 | "version": "1.0.2", 3438 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", 3439 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", 3440 | "dev": true 3441 | }, 3442 | "supports-color": { 3443 | "version": "5.5.0", 3444 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 3445 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 3446 | "dev": true, 3447 | "requires": { 3448 | "has-flag": "^3.0.0" 3449 | } 3450 | }, 3451 | "supports-preserve-symlinks-flag": { 3452 | "version": "1.0.0", 3453 | "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 3454 | "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 3455 | "dev": true 3456 | }, 3457 | "tailwindcss": { 3458 | "version": "3.2.6", 3459 | "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.6.tgz", 3460 | "integrity": "sha512-BfgQWZrtqowOQMC2bwaSNe7xcIjdDEgixWGYOd6AL0CbKHJlvhfdbINeAW76l1sO+1ov/MJ93ODJ9yluRituIw==", 3461 | "dev": true, 3462 | "requires": { 3463 | "arg": "^5.0.2", 3464 | "chokidar": "^3.5.3", 3465 | "color-name": "^1.1.4", 3466 | "detective": "^5.2.1", 3467 | "didyoumean": "^1.2.2", 3468 | "dlv": "^1.1.3", 3469 | "fast-glob": "^3.2.12", 3470 | "glob-parent": "^6.0.2", 3471 | "is-glob": "^4.0.3", 3472 | "lilconfig": "^2.0.6", 3473 | "micromatch": "^4.0.5", 3474 | "normalize-path": "^3.0.0", 3475 | "object-hash": "^3.0.0", 3476 | "picocolors": "^1.0.0", 3477 | "postcss": "^8.0.9", 3478 | "postcss-import": "^14.1.0", 3479 | "postcss-js": "^4.0.0", 3480 | "postcss-load-config": "^3.1.4", 3481 | "postcss-nested": "6.0.0", 3482 | "postcss-selector-parser": "^6.0.11", 3483 | "postcss-value-parser": "^4.2.0", 3484 | "quick-lru": "^5.1.1", 3485 | "resolve": "^1.22.1" 3486 | }, 3487 | "dependencies": { 3488 | "color-name": { 3489 | "version": "1.1.4", 3490 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 3491 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 3492 | "dev": true 3493 | } 3494 | } 3495 | }, 3496 | "to-fast-properties": { 3497 | "version": "2.0.0", 3498 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", 3499 | "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", 3500 | "dev": true 3501 | }, 3502 | "to-regex-range": { 3503 | "version": "5.0.1", 3504 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 3505 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 3506 | "dev": true, 3507 | "requires": { 3508 | "is-number": "^7.0.0" 3509 | } 3510 | }, 3511 | "update-browserslist-db": { 3512 | "version": "1.0.10", 3513 | "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", 3514 | "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", 3515 | "dev": true, 3516 | "requires": { 3517 | "escalade": "^3.1.1", 3518 | "picocolors": "^1.0.0" 3519 | } 3520 | }, 3521 | "util-deprecate": { 3522 | "version": "1.0.2", 3523 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 3524 | "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", 3525 | "dev": true 3526 | }, 3527 | "vite": { 3528 | "version": "4.3.7", 3529 | "resolved": "https://registry.npmjs.org/vite/-/vite-4.3.7.tgz", 3530 | "integrity": "sha512-MTIFpbIm9v7Hh5b0wSBgkcWzSBz7SAa6K/cBTwS4kUiQJfQLFlZZRJRQgqunCVzhTPCk674tW+0Qaqh3Q00dBg==", 3531 | "dev": true, 3532 | "requires": { 3533 | "esbuild": "^0.17.5", 3534 | "fsevents": "~2.3.2", 3535 | "postcss": "^8.4.23", 3536 | "rollup": "^3.21.0" 3537 | } 3538 | }, 3539 | "xtend": { 3540 | "version": "4.0.2", 3541 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", 3542 | "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", 3543 | "dev": true 3544 | }, 3545 | "yallist": { 3546 | "version": "3.1.1", 3547 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", 3548 | "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", 3549 | "dev": true 3550 | }, 3551 | "yaml": { 3552 | "version": "1.10.2", 3553 | "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", 3554 | "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", 3555 | "dev": true 3556 | } 3557 | } 3558 | } 3559 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dev-landing-page", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "dependencies": { 12 | "@vercel/analytics": "^1.0.0", 13 | "react": "^18.2.0", 14 | "react-dom": "^18.2.0", 15 | "react-icons": "^4.7.1", 16 | "react-router-dom": "^6.8.1" 17 | }, 18 | "devDependencies": { 19 | "@types/react": "^18.0.27", 20 | "@types/react-dom": "^18.0.10", 21 | "@vitejs/plugin-react": "^3.1.0", 22 | "autoprefixer": "^10.4.13", 23 | "postcss": "^8.4.21", 24 | "tailwindcss": "^3.2.6", 25 | "vite": "^4.3.7" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /postcss.config.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /public/vite.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /readME.md: -------------------------------------------------------------------------------- 1 |
10 | 11 | # 🙌 Welcome to Dev Landing Page 12 | 13 | - As we all prefer open-source software for our daily use, it can be difficult to find tools that are specific to our needs. This is where **Dev Landing Page** comes in. 14 | 15 | - Dev Landing Page is a Modern UI Portfolio used to display your projects and share them with the World. 16 | 17 | - We all spend hours and weeks creating our own personal Portfolio. Now with Dev Landing Page, it's a few code lines away. 18 | 19 | - Although Dev Landing Page is your stop for your personal portfolio, we recognize that it is still evolving. It will take time for us to add all the projects, resources and additional content that our users want. 20 | 21 | - That's why, we encourage contributions from everyone interested in making Dev Landing Page even more attractive and useful. 22 | 23 | # 🚀 About 24 | 25 | - If you're a developer or a tech enthusiast, you can help us create a better experience for everyone. 26 | 27 | - Dev Landing Page is more than just a tool to create your portfolio. It's also a treasure of useful skills and projects that can help you in many ways. 28 | 29 | - For example, we have curated a list of skill sections which allows you to display a wide range of projects depending on your tech stack. 30 | 31 | - But that's not all – we have big plans for the future. We are working hard to add more useful content that can make your life easier and more productive. 32 | - Stay tuned for updates! 33 | 34 |
35 |

Dev Landing Page can be used by anyone, from casual internet users to professionals!

36 |
37 | 38 | # 🎥 Project Overview 39 | 40 | You can check out the live project [here](https://open-source-dev-landing-page.vercel.app/) 41 | 42 | # 🔍 How to Customize 43 | 44 | 1. Fork the repository. 45 | 46 | 2. Make changes in the file `src/data.js` 47 | 48 | 49 | 50 | ![https://res.cloudinary.com/dlmgrochr/image/upload/v1677820786/Screenshot_2023-03-03_104802_f7o0at.png](https://res.cloudinary.com/dlmgrochr/image/upload/v1677820786/Screenshot_2023-03-03_104802_f7o0at.png) 51 | 52 | `src/data.js` 53 | 54 | ![https://res.cloudinary.com/dlmgrochr/image/upload/v1677820786/Screenshot_2023-03-03_104840_tby0df.png](https://res.cloudinary.com/dlmgrochr/image/upload/v1677820786/Screenshot_2023-03-03_104840_tby0df.png) 55 | 56 | 4. Boom! Your landing page is ready !!! 57 | 58 | # 🪛 Want to contribute? 59 | 60 | We welcome you to join us! 61 | 62 | - **Dev Landing Page** is an open-source project, and we are excited to hear your thoughts and ideas. 63 | 64 | - Fork this repository, add your contributions and submit a PR. 65 | 66 | - Found a bug? Accessibility issue? Or do you want to add a new tool to our database? Then go right ahead and create an issue. 67 | 68 | # 🛠️ Tech Stack 69 | 70 | This project uses:

71 | ![React](https://img.shields.io/badge/react-%2320232a.svg?style=for-the-badge&logo=react&logoColor=%2361DAFB) 72 | ![TailwindCSS](https://img.shields.io/badge/tailwindcss-%2338B2AC.svg?style=for-the-badge&logo=tailwind-css&logoColor=white) 73 | ![JavaScript](https://img.shields.io/badge/javascript-%23323330.svg?style=for-the-badge&logo=javascript&logoColor=%23F7DF1E) 74 | ![Vite](https://img.shields.io/badge/vite-%23646CFF.svg?style=for-the-badge&logo=vite&logoColor=white) 75 | ![Vercel](https://img.shields.io/badge/vercel-%23000000.svg?style=for-the-badge&logo=vercel&logoColor=white) 76 | 77 | 78 | ## Prerequisites 79 | 80 | Before installation, you need to have installed/knowledge of the following: 81 |

82 | ![NodeJS](https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge&logo=node.js&logoColor=white) 83 | ![Git](https://img.shields.io/badge/git-%23F05033.svg?style=for-the-badge&logo=git&logoColor=white) 84 | 85 | ## 🤝 Contributing 86 | 87 | Follow the link to contribute to Dev Landing Page - [CONTRIBUTING.md](./CONTRIBUTING.md) 88 | 89 | ## ✨ Project Maintainers 90 | 91 | 92 | 93 | 100 | 107 | 108 |
94 | 95 | Rohit 96 |
97 | Rohit Ranjan Singh 98 |
99 |
101 | 102 | Shaad 103 |
104 | Md. Shaad 105 |
106 |
109 | 110 |

111 | # All Contributors 112 | [![All Contributors](https://img.shields.io/github/all-contributors/rohitranjan-2702/dev-landing-page?color=ee8449&style=flat-square)](#contributors) 113 | 114 |

115 | # ❤️ Support 116 | 117 | A simple star to this Project Repo is enough to keep us motivated on this project for days. If you find yourself very much excited about this project let us know with a tweet. 118 | 119 | If you have any questions, feel free to reach out to the Maintainers on [Twitter](https://twitter.com/rohit_ranjan2 120 | -------------------------------------------------------------------------------- /src/App.css: -------------------------------------------------------------------------------- 1 | /* #root { 2 | max-width: 1280px; 3 | margin: 0 auto; 4 | padding: 2rem; 5 | text-align: center; 6 | } 7 | 8 | .logo { 9 | height: 6em; 10 | padding: 1.5em; 11 | will-change: filter; 12 | transition: filter 300ms; 13 | } 14 | .logo:hover { 15 | filter: drop-shadow(0 0 2em #646cffaa); 16 | } 17 | .logo.react:hover { 18 | filter: drop-shadow(0 0 2em #61dafbaa); 19 | } 20 | 21 | @keyframes logo-spin { 22 | from { 23 | transform: rotate(0deg); 24 | } 25 | to { 26 | transform: rotate(360deg); 27 | } 28 | } 29 | 30 | @media (prefers-reduced-motion: no-preference) { 31 | a:nth-of-type(2) .logo { 32 | animation: logo-spin infinite 20s linear; 33 | } 34 | } 35 | 36 | .card { 37 | padding: 2em; 38 | } 39 | 40 | .read-the-docs { 41 | color: #888; 42 | } */ 43 | -------------------------------------------------------------------------------- /src/App.jsx: -------------------------------------------------------------------------------- 1 | import { useState } from "react"; 2 | import Home from "./components/home"; 3 | import Portfolio from "./components/portfolio"; 4 | import { BrowserRouter, Routes, Route } from "react-router-dom"; 5 | 6 | import "./App.css"; 7 | 8 | function App() { 9 | return ( 10 | <> 11 | 12 | 13 | } /> 14 | } /> 15 | 16 | 17 | {/* */} 18 | 19 | ); 20 | } 21 | 22 | export default App; 23 | -------------------------------------------------------------------------------- /src/assets/Female.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rohitranjan-2702/dev-landing-page/50131a2f6059debc2a400e4c4a7d83f7e1207839/src/assets/Female.png -------------------------------------------------------------------------------- /src/assets/FpfpRandom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rohitranjan-2702/dev-landing-page/50131a2f6059debc2a400e4c4a7d83f7e1207839/src/assets/FpfpRandom.png -------------------------------------------------------------------------------- /src/assets/Male.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rohitranjan-2702/dev-landing-page/50131a2f6059debc2a400e4c4a7d83f7e1207839/src/assets/Male.png -------------------------------------------------------------------------------- /src/assets/MpfpRandom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/rohitranjan-2702/dev-landing-page/50131a2f6059debc2a400e4c4a7d83f7e1207839/src/assets/MpfpRandom.png -------------------------------------------------------------------------------- /src/assets/tag.js: -------------------------------------------------------------------------------- 1 | export const tag = { 2 | HTML: "https://cdn-icons-png.flaticon.com/512/732/732212.png", 3 | CSS: "https://upload.wikimedia.org/wikipedia/commons/thumb/6/62/CSS3_logo.svg/800px-CSS3_logo.svg.png", 4 | REACTJS: 5 | "https://upload.wikimedia.org/wikipedia/commons/thumb/a/a7/React-icon.svg/2300px-React-icon.svg.png", 6 | FIGMA: "https://upload.wikimedia.org/wikipedia/commons/3/33/Figma-logo.svg", 7 | 8 | FIREBASE: "https://assets.stickpng.com/images/5847f40ecef1014c0b5e488a.png", 9 | 10 | PYTHON: 11 | "https://upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Python-logo-notext.svg/1869px-Python-logo-notext.svg.png", 12 | 13 | DJANGO: "https://cdn.worldvectorlogo.com/logos/django.svg", 14 | 15 | REACTJS: "https://cdn-icons-png.flaticon.com/512/732/732212.png", 16 | 17 | GRAPHQL: 18 | "https://upload.wikimedia.org/wikipedia/commons/thumb/1/17/GraphQL_Logo.svg/2048px-GraphQL_Logo.svg.png", 19 | 20 | MONGODB: 21 | "https://cdn.icon-icons.com/icons2/2415/PNG/512/mongodb_original_logo_icon_146424.png", 22 | 23 | NODEJS: "https://cdn.freebiesupply.com/logos/thumbs/2x/nodejs-1-logo.png", 24 | }; 25 | -------------------------------------------------------------------------------- /src/components/home.jsx: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import MpfpRandom from "../assets/Male.png"; 3 | import FpfpRandom from "../assets/Female.png"; 4 | import { useNavigate } from "react-router-dom"; 5 | import { about, resumeLink, links } from "../data"; 6 | 7 | const Home = () => { 8 | const navigate = useNavigate(); 9 | return ( 10 | <> 11 |
12 |
13 | 43 |
44 | 45 |
46 |
47 |
48 |
49 | logo 54 | 55 | {/* if (about.gender === "male") { 56 | logo 57 | } else { 58 | logo 59 | } */} 60 | 61 | {/* {about.gender === "male" ? ( 62 | 63 | logo 64 | 65 | ) : ( 66 | logo 67 | )} */} 68 |
69 |
70 |

71 | {about[0].name} 72 |

73 |

74 | {about[0].bio} 75 |

76 |

77 | {about[0].about}{" "} 78 |

79 | 80 | 87 | 88 |
89 |
90 |
91 |
92 | 93 |
94 |
95 | 108 | 109 | 123 | 124 | 138 | 139 | 153 | 154 | {/* */} 161 |
162 |
163 | 164 | 182 |
183 | 184 | ); 185 | }; 186 | 187 | export default Home; 188 | -------------------------------------------------------------------------------- /src/components/portfolio.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import ProjectCard from './projectCard' 3 | import Skills from './skills' 4 | 5 | const Project = () => { 6 | return ( 7 | <> 8 |
9 | 10 |
11 |
12 | 19 |
20 |
21 | 22 | 23 |
24 | 25 | 26 | 27 |
28 | 29 |
30 | 31 | ) 32 | } 33 | 34 | export default Project -------------------------------------------------------------------------------- /src/components/projectCard.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | 3 | const projectCard = () => { 4 | return ( 5 | <> 6 | 7 |
8 |
9 | Project ALPHA 10 |
11 |
Use justify-evenly to justify items along the container’s main axis such that there is an equal amount of space around each item, but also accounting for the doubling of space you would normally see between each item when using justify-around: Use justify-evenly to justify items along the container’s main axis such that there is an equal amount of space around each item
12 | 13 |
14 |
18 | 23 | HTML 24 |
25 |
29 | 34 | HTML 35 |
36 |
37 | 38 |
39 |
40 | 41 | 42 | 43 |
44 |
45 | 46 | 47 | 48 | 49 |
50 |
51 |
52 | 53 | 54 | 55 | ) 56 | } 57 | 58 | export default projectCard -------------------------------------------------------------------------------- /src/components/skills.jsx: -------------------------------------------------------------------------------- 1 | import React, { useEffect, useState } from "react"; 2 | import { tag } from "../assets/tag"; 3 | import { techstack } from "../data"; 4 | 5 | function skills() { 6 | // const [icon, setIcon] = useState(""); 7 | 8 | // useEffect(() => { 9 | // renderIcon(); 10 | // }, [icon]); 11 | 12 | // ternary operator 13 | 14 | return ( 15 | <> 16 |
17 |
18 |

Skills:

19 |
20 |
21 | {techstack.map((dataObj, index) => { 22 | const url = tag[dataObj]; 23 | console.log(url); 24 | return ( 25 |
29 | 30 | 31 | {dataObj} 32 |
33 | ); 34 | })} 35 |
36 |
37 |
38 | 39 | ); 40 | } 41 | 42 | export default skills; 43 | -------------------------------------------------------------------------------- /src/data.js: -------------------------------------------------------------------------------- 1 | // Add about yourself here 2 | export const about = [ 3 | { 4 | name: "Rohit Ranjan Singh", 5 | gender: "male", //use lowercase "male" or "female" 6 | bio: "DevRel at ClueLess | Hacktoberfest’22 ", 7 | about: 8 | "Passionate full-stack developer and UI designer. Love to explore new techs and make cool websites. ", 9 | }, 10 | ]; 11 | 12 | // Add your G-drive pdf link here 13 | export const resumeLink = 14 | "https://drive.google.com/file/d/1aXbWKtmzCEnZenQsYxtb-ha_VFSERefS/view?usp=share_link"; 15 | 16 | // Dont change the order, add your social links here 17 | export const links = [ 18 | { 19 | name: "github", 20 | url: "https://github.com/rohitranjan-2702", 21 | }, 22 | { 23 | name: "twitter", 24 | url: "https://twitter.com/rohit_ranjan27", 25 | }, 26 | { 27 | name: "linkedin", 28 | url: "https://linkedin.com/in/rohit-ranjan-singh-6133901b6/", 29 | }, 30 | { 31 | name: "website", 32 | url: "https://beacons.ai/rohitranjan", 33 | }, 34 | { 35 | name: "behance", 36 | url: "https://fueler.io/rohitranjan", 37 | }, 38 | ]; 39 | 40 | export const techstack = [ 41 | "HTML", 42 | "CSS", 43 | "REACTJS", 44 | "GRAPHQL", 45 | "FIGMA", 46 | "FIREBASE", 47 | "MONGODB", 48 | "NODEJS", 49 | "ADOBEXD", 50 | "PYTHON", 51 | ]; 52 | 53 | export const projects = [ 54 | { 55 | projectNumber: 1, 56 | title: "Project ALPHA", 57 | description: "lorem Ips", 58 | demoLink: "#", 59 | repoLink: "#", 60 | }, 61 | ]; 62 | -------------------------------------------------------------------------------- /src/index.css: -------------------------------------------------------------------------------- 1 | @import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap"); 2 | 3 | @tailwind base; 4 | @tailwind components; 5 | @tailwind utilities; 6 | 7 | * { 8 | scroll-behavior: smooth; 9 | } 10 | 11 | /* Hide scrollbar for Chrome, Safari and Opera */ 12 | *::-webkit-scrollbar { 13 | display: none; 14 | } 15 | 16 | /* Hide scrollbar for IE, Edge and Firefox */ 17 | *{ 18 | -ms-overflow-style: none; /* IE and Edge */ 19 | scrollbar-width: none; /* Firefox */ 20 | } -------------------------------------------------------------------------------- /src/main.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import ReactDOM from 'react-dom/client' 3 | import App from './App' 4 | import './index.css' 5 | 6 | ReactDOM.createRoot(document.getElementById('root')).render( 7 | 8 | 9 | , 10 | ) 11 | -------------------------------------------------------------------------------- /tailwind.config.cjs: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | module.exports = { 3 | content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"], 4 | theme: { 5 | extend: { 6 | fontSize: {}, 7 | scale: { 8 | 115: "1.15", 9 | }, 10 | colors: { 11 | skillbg: "#ACACAC", 12 | blackk: "#000814", 13 | bluee: "#012852", 14 | greyy: "#858585", 15 | gray: "#C6C6C6", 16 | twIcon1: "#0582CA", 17 | gtIcon1: "#212529", 18 | linkIcon1: "#0466C8", 19 | webIcon1: "#C9184A", 20 | beIcon1: "#072AC8", 21 | }, 22 | fontFamily: { 23 | poppins: ["Poppins", "sans-serif"], 24 | }, 25 | }, 26 | }, 27 | plugins: [], 28 | }; 29 | -------------------------------------------------------------------------------- /vercel.json: -------------------------------------------------------------------------------- 1 | { 2 | "rewrites": [ 3 | {"source": "/(.*)", "destination": "/"} 4 | ] 5 | } -------------------------------------------------------------------------------- /vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite' 2 | import react from '@vitejs/plugin-react' 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [react()], 7 | }) 8 | --------------------------------------------------------------------------------