├── .dockerignore ├── .editorconfig ├── .gitignore ├── .results ├── Dockerfile ├── LICENSE ├── README.md ├── docker-compose.yml ├── package-lock.json ├── package.json ├── pages ├── about.js └── index.js ├── prettier.config.js └── scripts ├── bench.sh ├── chmod.sh ├── prod.bat └── prod.sh /.dockerignore: -------------------------------------------------------------------------------- 1 | # add git-ignore syntax here of things you don't want copied into docker image 2 | 3 | .git 4 | .results 5 | scripts 6 | *Dockerfile* 7 | node_modules 8 | .env 9 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | end_of_line = lf 5 | insert_final_newline = true 6 | charset = utf-8 7 | indent_style = space 8 | indent_size = 2 9 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Created by https://www.gitignore.io/api/node,osx 3 | 4 | ### Node ### 5 | # Logs 6 | logs 7 | *.log 8 | npm-debug.log* 9 | 10 | # Runtime data 11 | pids 12 | *.pid 13 | *.seed 14 | 15 | # Directory for instrumented libs generated by jscoverage/JSCover 16 | lib-cov 17 | 18 | # Coverage directory used by tools like istanbul 19 | coverage 20 | 21 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 22 | .grunt 23 | 24 | # node-waf configuration 25 | .lock-wscript 26 | 27 | # Compiled binary addons (http://nodejs.org/api/addons.html) 28 | build/Release 29 | 30 | # Dependency directories 31 | node_modules 32 | jspm_packages 33 | 34 | # Optional npm cache directory 35 | .npm 36 | 37 | # Optional REPL history 38 | .node_repl_history 39 | 40 | 41 | ### OSX ### 42 | .DS_Store 43 | .AppleDouble 44 | .LSOverride 45 | 46 | # Icon must end with two \r 47 | Icon 48 | 49 | 50 | # Thumbnails 51 | ._* 52 | 53 | # Files that might appear in the root of a volume 54 | .DocumentRevisions-V100 55 | .fseventsd 56 | .Spotlight-V100 57 | .TemporaryItems 58 | .Trashes 59 | .VolumeIcon.icns 60 | 61 | # Directories potentially created on remote AFP share 62 | .AppleDB 63 | .AppleDesktop 64 | Network Trash Folder 65 | Temporary Items 66 | .apdisk 67 | 68 | .vscode 69 | .next 70 | .env 71 | -------------------------------------------------------------------------------- /.results: -------------------------------------------------------------------------------- 1 | This is ApacheBench, Version 2.3 <$Revision: 1843412 $> 2 | Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ 3 | Licensed to The Apache Software Foundation, http://www.apache.org/ 4 | 5 | Benchmarking localhost (be patient) 6 | 7 | 8 | Server Software: 9 | Server Hostname: localhost 10 | Server Port: 3000 11 | 12 | Document Path: / 13 | Document Length: 1848 bytes 14 | 15 | Concurrency Level: 50 16 | Time taken for tests: 21.318 seconds 17 | Complete requests: 100000 18 | Failed requests: 0 19 | Keep-Alive requests: 100000 20 | Total transferred: 210000000 bytes 21 | HTML transferred: 184800000 bytes 22 | Requests per second: 4690.92 [#/sec] (mean) 23 | Time per request: 10.659 [ms] (mean) 24 | Time per request: 0.213 [ms] (mean, across all concurrent requests) 25 | Transfer rate: 9620.06 [Kbytes/sec] received 26 | 27 | Connection Times (ms) 28 | min mean[+/-sd] median max 29 | Connect: 0 0 0.0 0 1 30 | Processing: 6 11 3.5 10 159 31 | Waiting: 6 11 3.5 10 159 32 | Total: 6 11 3.5 10 160 33 | 34 | Percentage of the requests served within a certain time (ms) 35 | 50% 10 36 | 66% 10 37 | 75% 11 38 | 80% 12 39 | 90% 12 40 | 95% 14 41 | 98% 18 42 | 99% 20 43 | 100% 160 (longest request) 44 | -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:16.17.0-alpine3.15 2 | 3 | RUN apk add --no-cache libc6-compat 4 | RUN npm i -g npm 5 | 6 | EXPOSE 3000 7 | 8 | ENV PORT 3000 9 | ENV NODE_ENV production 10 | 11 | WORKDIR /home/nextjs/app 12 | 13 | COPY package.json . 14 | COPY package-lock.json . 15 | 16 | RUN npm install --omit=optional 17 | RUN npx browserslist@latest --update-db 18 | RUN npx next telemetry disable 19 | 20 | # need to install linux specific swc builds 21 | RUN npm install -D @swc/cli @swc/core 22 | 23 | COPY . . 24 | 25 | RUN npm run build 26 | 27 | RUN addgroup -g 1001 -S nodejs 28 | RUN adduser -S nextjs -u 1001 29 | 30 | USER nextjs 31 | 32 | CMD [ "npm", "start" ] 33 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Regis Boudinot 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # NextJS and Docker 2 | 3 | - node: v16.17.0 4 | - npm: 8.19.2 5 | - rootfs: alpine 3.15 6 | - docker: 20.10.12, build e91ed57 7 | 8 | A note about [alpine and node](https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine) which explains: 9 | 10 | ```Dockerfile 11 | RUN apk add --no-cache libc6-compat 12 | ``` 13 | 14 | Enjoy! 15 | 16 | ### Local 17 | 18 | #### Dev 19 | 20 | `npm i && npm run dev` 21 | 22 | ### Docker Compose 23 | 24 | `docker-compose up --build` 25 | 26 | This will build and run your container locally :rocket: 27 | 28 | ### Traditional Docker Route 29 | 30 | Build your containers for deploys: 31 | 32 | MacOS/Linux 33 | 34 | `./scripts/prod.sh` 35 | 36 | Windows 37 | 38 | `./scripts/prod.bat` 39 | 40 | Now that your container is built, you can test it locally: 41 | 42 | `docker run -p 3000:3000 nextjs-docker` 43 | 44 | Now deploy :rocket: 45 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3.1' 2 | 3 | services: 4 | nextjs: 5 | ports: 6 | - 3000:3000 7 | build: 8 | context: . 9 | dockerfile: Dockerfile 10 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nextjs-docker", 3 | "version": "1.0.0", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "nextjs-docker", 9 | "version": "1.0.0", 10 | "hasInstallScript": true, 11 | "dependencies": { 12 | "next": "^12.1.0", 13 | "react": "^17.0.0", 14 | "react-dom": "^17.0.2" 15 | }, 16 | "devDependencies": { 17 | "@swc/cli": "^0.1.57", 18 | "@swc/core": "^1.3.1" 19 | } 20 | }, 21 | "node_modules/@next/env": { 22 | "version": "12.3.0", 23 | "resolved": "https://registry.npmjs.org/@next/env/-/env-12.3.0.tgz", 24 | "integrity": "sha512-PTJpjAFVbzBQ9xXpzMTroShvD5YDIIy46jQ7d4LrWpY+/5a8H90Tm8hE3Hvkc5RBRspVo7kvEOnqQms0A+2Q6w==" 25 | }, 26 | "node_modules/@next/swc-android-arm-eabi": { 27 | "version": "12.3.0", 28 | "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.3.0.tgz", 29 | "integrity": "sha512-/PuirPnAKsYBw93w/7Q9hqy+KGOU9mjYprZ/faxMUJh/dc6v3rYLxkZKNG9nFPIW4QKNTCnhP40xF9hLnxO+xg==", 30 | "cpu": [ 31 | "arm" 32 | ], 33 | "optional": true, 34 | "os": [ 35 | "android" 36 | ], 37 | "engines": { 38 | "node": ">= 10" 39 | } 40 | }, 41 | "node_modules/@next/swc-android-arm64": { 42 | "version": "12.3.0", 43 | "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.3.0.tgz", 44 | "integrity": "sha512-OaI+FhAM6P9B6Ybwbn0Zl8YwWido0lLwhDBi9WiYCh4RQmIXAyVIoIJPHo4fP05+mXaJ/k1trvDvuURvHOq2qw==", 45 | "cpu": [ 46 | "arm64" 47 | ], 48 | "optional": true, 49 | "os": [ 50 | "android" 51 | ], 52 | "engines": { 53 | "node": ">= 10" 54 | } 55 | }, 56 | "node_modules/@next/swc-darwin-arm64": { 57 | "version": "12.3.0", 58 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.3.0.tgz", 59 | "integrity": "sha512-9s4d3Mhii+WFce8o8Jok7WC3Bawkr9wEUU++SJRptjU1L5tsfYJMrSYCACHLhZujziNDLyExe4Hwwsccps1sfg==", 60 | "cpu": [ 61 | "arm64" 62 | ], 63 | "optional": true, 64 | "os": [ 65 | "darwin" 66 | ], 67 | "engines": { 68 | "node": ">= 10" 69 | } 70 | }, 71 | "node_modules/@next/swc-darwin-x64": { 72 | "version": "12.3.0", 73 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.3.0.tgz", 74 | "integrity": "sha512-2scC4MqUTwGwok+wpVxP+zWp7WcCAVOtutki2E1n99rBOTnUOX6qXkgxSy083yBN6GqwuC/dzHeN7hIKjavfRA==", 75 | "cpu": [ 76 | "x64" 77 | ], 78 | "optional": true, 79 | "os": [ 80 | "darwin" 81 | ], 82 | "engines": { 83 | "node": ">= 10" 84 | } 85 | }, 86 | "node_modules/@next/swc-freebsd-x64": { 87 | "version": "12.3.0", 88 | "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.3.0.tgz", 89 | "integrity": "sha512-xAlruUREij/bFa+qsE1tmsP28t7vz02N4ZDHt2lh3uJUniE0Ne9idyIDLc1Ed0IF2RjfgOp4ZVunuS3OM0sngw==", 90 | "cpu": [ 91 | "x64" 92 | ], 93 | "optional": true, 94 | "os": [ 95 | "freebsd" 96 | ], 97 | "engines": { 98 | "node": ">= 10" 99 | } 100 | }, 101 | "node_modules/@next/swc-linux-arm-gnueabihf": { 102 | "version": "12.3.0", 103 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.3.0.tgz", 104 | "integrity": "sha512-jin2S4VT/cugc2dSZEUIabhYDJNgrUh7fufbdsaAezgcQzqfdfJqfxl4E9GuafzB4cbRPTaqA0V5uqbp0IyGkQ==", 105 | "cpu": [ 106 | "arm" 107 | ], 108 | "optional": true, 109 | "os": [ 110 | "linux" 111 | ], 112 | "engines": { 113 | "node": ">= 10" 114 | } 115 | }, 116 | "node_modules/@next/swc-linux-arm64-gnu": { 117 | "version": "12.3.0", 118 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.3.0.tgz", 119 | "integrity": "sha512-RqJHDKe0WImeUrdR0kayTkRWgp4vD/MS7g0r6Xuf8+ellOFH7JAAJffDW3ayuVZeMYOa7RvgNFcOoWnrTUl9Nw==", 120 | "cpu": [ 121 | "arm64" 122 | ], 123 | "optional": true, 124 | "os": [ 125 | "linux" 126 | ], 127 | "engines": { 128 | "node": ">= 10" 129 | } 130 | }, 131 | "node_modules/@next/swc-linux-arm64-musl": { 132 | "version": "12.3.0", 133 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.3.0.tgz", 134 | "integrity": "sha512-nvNWoUieMjvDjpYJ/4SQe9lQs2xMj6ZRs8N+bmTrVu9leY2Fg3WD6W9p/1uU9hGO8u+OdF13wc4iRShu/WYIHg==", 135 | "cpu": [ 136 | "arm64" 137 | ], 138 | "optional": true, 139 | "os": [ 140 | "linux" 141 | ], 142 | "engines": { 143 | "node": ">= 10" 144 | } 145 | }, 146 | "node_modules/@next/swc-linux-x64-gnu": { 147 | "version": "12.3.0", 148 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.3.0.tgz", 149 | "integrity": "sha512-4ajhIuVU9PeQCMMhdDgZTLrHmjbOUFuIyg6J19hZqwEwDTSqQyrSLkbJs2Nd7IRiM6Ul/XyrtEFCpk4k+xD2+w==", 150 | "cpu": [ 151 | "x64" 152 | ], 153 | "optional": true, 154 | "os": [ 155 | "linux" 156 | ], 157 | "engines": { 158 | "node": ">= 10" 159 | } 160 | }, 161 | "node_modules/@next/swc-linux-x64-musl": { 162 | "version": "12.3.0", 163 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.3.0.tgz", 164 | "integrity": "sha512-U092RBYbaGxoMAwpauePJEu2PuZSEoUCGJBvsptQr2/2XIMwAJDYM4c/M5NfYEsBr+yjvsYNsOpYfeQ88D82Yg==", 165 | "cpu": [ 166 | "x64" 167 | ], 168 | "optional": true, 169 | "os": [ 170 | "linux" 171 | ], 172 | "engines": { 173 | "node": ">= 10" 174 | } 175 | }, 176 | "node_modules/@next/swc-win32-arm64-msvc": { 177 | "version": "12.3.0", 178 | "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.3.0.tgz", 179 | "integrity": "sha512-pzSzaxjDEJe67bUok9Nxf9rykbJfHXW0owICFsPBsqHyc+cr8vpF7g9e2APTCddtVhvjkga9ILoZJ9NxWS7Yiw==", 180 | "cpu": [ 181 | "arm64" 182 | ], 183 | "optional": true, 184 | "os": [ 185 | "win32" 186 | ], 187 | "engines": { 188 | "node": ">= 10" 189 | } 190 | }, 191 | "node_modules/@next/swc-win32-ia32-msvc": { 192 | "version": "12.3.0", 193 | "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.3.0.tgz", 194 | "integrity": "sha512-MQGUpMbYhQmTZ06a9e0hPQJnxFMwETo2WtyAotY3GEzbNCQVbCGhsvqEKcl+ZEHgShlHXUWvSffq1ZscY6gK7A==", 195 | "cpu": [ 196 | "ia32" 197 | ], 198 | "optional": true, 199 | "os": [ 200 | "win32" 201 | ], 202 | "engines": { 203 | "node": ">= 10" 204 | } 205 | }, 206 | "node_modules/@next/swc-win32-x64-msvc": { 207 | "version": "12.3.0", 208 | "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.3.0.tgz", 209 | "integrity": "sha512-C/nw6OgQpEULWqs+wgMHXGvlJLguPRFFGqR2TAqWBerQ8J+Sg3z1ZTqwelkSi4FoqStGuZ2UdFHIDN1ySmR1xA==", 210 | "cpu": [ 211 | "x64" 212 | ], 213 | "optional": true, 214 | "os": [ 215 | "win32" 216 | ], 217 | "engines": { 218 | "node": ">= 10" 219 | } 220 | }, 221 | "node_modules/@nodelib/fs.scandir": { 222 | "version": "2.1.5", 223 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 224 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 225 | "dev": true, 226 | "dependencies": { 227 | "@nodelib/fs.stat": "2.0.5", 228 | "run-parallel": "^1.1.9" 229 | }, 230 | "engines": { 231 | "node": ">= 8" 232 | } 233 | }, 234 | "node_modules/@nodelib/fs.stat": { 235 | "version": "2.0.5", 236 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 237 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 238 | "dev": true, 239 | "engines": { 240 | "node": ">= 8" 241 | } 242 | }, 243 | "node_modules/@nodelib/fs.walk": { 244 | "version": "1.2.8", 245 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 246 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 247 | "dev": true, 248 | "dependencies": { 249 | "@nodelib/fs.scandir": "2.1.5", 250 | "fastq": "^1.6.0" 251 | }, 252 | "engines": { 253 | "node": ">= 8" 254 | } 255 | }, 256 | "node_modules/@swc/cli": { 257 | "version": "0.1.57", 258 | "resolved": "https://registry.npmjs.org/@swc/cli/-/cli-0.1.57.tgz", 259 | "integrity": "sha512-HxM8TqYHhAg+zp7+RdTU69bnkl4MWdt1ygyp6BDIPjTiaJVH6Dizn2ezbgDS8mnFZI1FyhKvxU/bbaUs8XhzQg==", 260 | "dev": true, 261 | "dependencies": { 262 | "commander": "^7.1.0", 263 | "fast-glob": "^3.2.5", 264 | "slash": "3.0.0", 265 | "source-map": "^0.7.3" 266 | }, 267 | "bin": { 268 | "spack": "bin/spack.js", 269 | "swc": "bin/swc.js" 270 | }, 271 | "engines": { 272 | "node": ">= 12.13" 273 | }, 274 | "peerDependencies": { 275 | "@swc/core": "^1.2.66", 276 | "chokidar": "^3.5.1" 277 | }, 278 | "peerDependenciesMeta": { 279 | "chokidar": { 280 | "optional": true 281 | } 282 | } 283 | }, 284 | "node_modules/@swc/core": { 285 | "version": "1.3.1", 286 | "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.1.tgz", 287 | "integrity": "sha512-ztB5N63UGLIOM60Vg+deHVigEnDAEAttiTQk4T91/i11SoOO65P9z8Bey01XFTxF0Alc2OJxkt8TBcq+n5mMYQ==", 288 | "dev": true, 289 | "hasInstallScript": true, 290 | "bin": { 291 | "swcx": "run_swcx.js" 292 | }, 293 | "engines": { 294 | "node": ">=10" 295 | }, 296 | "funding": { 297 | "type": "opencollective", 298 | "url": "https://opencollective.com/swc" 299 | }, 300 | "optionalDependencies": { 301 | "@swc/core-android-arm-eabi": "1.3.1", 302 | "@swc/core-android-arm64": "1.3.1", 303 | "@swc/core-darwin-arm64": "1.3.1", 304 | "@swc/core-darwin-x64": "1.3.1", 305 | "@swc/core-freebsd-x64": "1.3.1", 306 | "@swc/core-linux-arm-gnueabihf": "1.3.1", 307 | "@swc/core-linux-arm64-gnu": "1.3.1", 308 | "@swc/core-linux-arm64-musl": "1.3.1", 309 | "@swc/core-linux-x64-gnu": "1.3.1", 310 | "@swc/core-linux-x64-musl": "1.3.1", 311 | "@swc/core-win32-arm64-msvc": "1.3.1", 312 | "@swc/core-win32-ia32-msvc": "1.3.1", 313 | "@swc/core-win32-x64-msvc": "1.3.1" 314 | } 315 | }, 316 | "node_modules/@swc/core-android-arm-eabi": { 317 | "version": "1.3.1", 318 | "resolved": "https://registry.npmjs.org/@swc/core-android-arm-eabi/-/core-android-arm-eabi-1.3.1.tgz", 319 | "integrity": "sha512-fZ6nTalHWYn1OHfU87yF8s24edgQ4COHydLlPcpU/pwSH90hCwy/fgna5PpUBw0rfzGBttX0/0yMorC7ZSar4Q==", 320 | "cpu": [ 321 | "arm" 322 | ], 323 | "dev": true, 324 | "optional": true, 325 | "os": [ 326 | "android" 327 | ], 328 | "dependencies": { 329 | "@swc/wasm": "1.2.122" 330 | }, 331 | "engines": { 332 | "node": ">=10" 333 | } 334 | }, 335 | "node_modules/@swc/core-android-arm64": { 336 | "version": "1.3.1", 337 | "resolved": "https://registry.npmjs.org/@swc/core-android-arm64/-/core-android-arm64-1.3.1.tgz", 338 | "integrity": "sha512-aDrV22ajQ4NYOwxEWvipPpdhHaLqU5W1rxRap5N1KSetzwGIk6NMd31o6Jotoxf7tB8qtLlo5VyNok4adJRVYg==", 339 | "cpu": [ 340 | "arm64" 341 | ], 342 | "dev": true, 343 | "optional": true, 344 | "os": [ 345 | "android" 346 | ], 347 | "dependencies": { 348 | "@swc/wasm": "1.2.130" 349 | }, 350 | "engines": { 351 | "node": ">=10" 352 | } 353 | }, 354 | "node_modules/@swc/core-android-arm64/node_modules/@swc/wasm": { 355 | "version": "1.2.130", 356 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 357 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 358 | "dev": true, 359 | "optional": true 360 | }, 361 | "node_modules/@swc/core-darwin-arm64": { 362 | "version": "1.3.1", 363 | "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.1.tgz", 364 | "integrity": "sha512-yom8pqaDhsncQaqp+NdXk1YEtWoqPrfsyKJP3RriTbUjXS/20q/WNfkkJjxUuaFZC6PH/MuvrLzD6Z6ZuZvLaA==", 365 | "cpu": [ 366 | "arm64" 367 | ], 368 | "dev": true, 369 | "optional": true, 370 | "os": [ 371 | "darwin" 372 | ], 373 | "engines": { 374 | "node": ">=10" 375 | } 376 | }, 377 | "node_modules/@swc/core-darwin-x64": { 378 | "version": "1.3.1", 379 | "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.1.tgz", 380 | "integrity": "sha512-Q2kH2i5pS0dvauOiRR4s7atH+Qrhe1LmiCv1D2U+AghZMfDcxi3DBTxrae/YqmDYm3GxHH3ZSAFHR3E0SeiSSg==", 381 | "cpu": [ 382 | "x64" 383 | ], 384 | "dev": true, 385 | "optional": true, 386 | "os": [ 387 | "darwin" 388 | ], 389 | "engines": { 390 | "node": ">=10" 391 | } 392 | }, 393 | "node_modules/@swc/core-freebsd-x64": { 394 | "version": "1.3.1", 395 | "resolved": "https://registry.npmjs.org/@swc/core-freebsd-x64/-/core-freebsd-x64-1.3.1.tgz", 396 | "integrity": "sha512-f2a+rPGrhAICF+Du/nHWZlYzltX1/fWyt+v0IP+r0Zh4drgTrt5G3sMYrQVTjsKvI8R6tV2Q7BfYvDIQXwE1pw==", 397 | "cpu": [ 398 | "x64" 399 | ], 400 | "dev": true, 401 | "optional": true, 402 | "os": [ 403 | "freebsd" 404 | ], 405 | "dependencies": { 406 | "@swc/wasm": "1.2.130" 407 | }, 408 | "engines": { 409 | "node": ">=10" 410 | } 411 | }, 412 | "node_modules/@swc/core-freebsd-x64/node_modules/@swc/wasm": { 413 | "version": "1.2.130", 414 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 415 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 416 | "dev": true, 417 | "optional": true 418 | }, 419 | "node_modules/@swc/core-linux-arm-gnueabihf": { 420 | "version": "1.3.1", 421 | "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.1.tgz", 422 | "integrity": "sha512-Q1zGHJMvAEkFdW7A2dthFrswf/HezhC2kOSoOmitz+KxWBZ0YSj8k9ImLYGFf7S8Vi0KVzLUaE1jCGK2oePx/A==", 423 | "cpu": [ 424 | "arm" 425 | ], 426 | "dev": true, 427 | "optional": true, 428 | "os": [ 429 | "linux" 430 | ], 431 | "dependencies": { 432 | "@swc/wasm": "1.2.130" 433 | }, 434 | "engines": { 435 | "node": ">=10" 436 | } 437 | }, 438 | "node_modules/@swc/core-linux-arm-gnueabihf/node_modules/@swc/wasm": { 439 | "version": "1.2.130", 440 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 441 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 442 | "dev": true, 443 | "optional": true 444 | }, 445 | "node_modules/@swc/core-linux-arm64-gnu": { 446 | "version": "1.3.1", 447 | "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.1.tgz", 448 | "integrity": "sha512-5OPkiU2A4Ijt2cRzi2FCGPkAC+wRvAb0TmUkL4Lj2PXPzM5RtEd2AoYmpQhV+YEOXO4XdnKwgBmdeiQV5K8eXA==", 449 | "cpu": [ 450 | "arm64" 451 | ], 452 | "dev": true, 453 | "optional": true, 454 | "os": [ 455 | "linux" 456 | ], 457 | "engines": { 458 | "node": ">=10" 459 | } 460 | }, 461 | "node_modules/@swc/core-linux-arm64-musl": { 462 | "version": "1.3.1", 463 | "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.1.tgz", 464 | "integrity": "sha512-oTIeS7kEKSUrTxavYBEfqjqoIiHtbwSdgp/rrn2hz7CDG1B1imRHnsjwdh4YaYLsm8RcCH9+GABnHxJd3Nd6qg==", 465 | "cpu": [ 466 | "arm64" 467 | ], 468 | "dev": true, 469 | "optional": true, 470 | "os": [ 471 | "linux" 472 | ], 473 | "engines": { 474 | "node": ">=10" 475 | } 476 | }, 477 | "node_modules/@swc/core-linux-x64-gnu": { 478 | "version": "1.3.1", 479 | "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.1.tgz", 480 | "integrity": "sha512-gNojY1qIKksK9kNdY4pqrlUILTxfqSWtXjX0qV2mlxgwRpnOATJnMx585q09cOZnkN2/QB+33pXnT8z/wxuGzQ==", 481 | "cpu": [ 482 | "x64" 483 | ], 484 | "dev": true, 485 | "optional": true, 486 | "os": [ 487 | "linux" 488 | ], 489 | "engines": { 490 | "node": ">=10" 491 | } 492 | }, 493 | "node_modules/@swc/core-linux-x64-musl": { 494 | "version": "1.3.1", 495 | "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.1.tgz", 496 | "integrity": "sha512-WXNagCsjul7U9uYYP1JkUUVtvqXRDDWjvdegqrtQ99/De+HoWr+fCPgvENgOsSwb0clPTBuiGm2PTnK6kDQ0Sw==", 497 | "cpu": [ 498 | "x64" 499 | ], 500 | "dev": true, 501 | "optional": true, 502 | "os": [ 503 | "linux" 504 | ], 505 | "engines": { 506 | "node": ">=10" 507 | } 508 | }, 509 | "node_modules/@swc/core-win32-arm64-msvc": { 510 | "version": "1.3.1", 511 | "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.1.tgz", 512 | "integrity": "sha512-3LSDJtpYNgN4N/pd/YzHAWKaF2Y/1P9t83vHfPos77hQ+KzFaiyT7YIG1qfYy1AD8MGC28l2bJNH2gia3bcERA==", 513 | "cpu": [ 514 | "arm64" 515 | ], 516 | "dev": true, 517 | "optional": true, 518 | "os": [ 519 | "win32" 520 | ], 521 | "dependencies": { 522 | "@swc/wasm": "1.2.130" 523 | }, 524 | "engines": { 525 | "node": ">=10" 526 | } 527 | }, 528 | "node_modules/@swc/core-win32-arm64-msvc/node_modules/@swc/wasm": { 529 | "version": "1.2.130", 530 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 531 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 532 | "dev": true, 533 | "optional": true 534 | }, 535 | "node_modules/@swc/core-win32-ia32-msvc": { 536 | "version": "1.3.1", 537 | "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.1.tgz", 538 | "integrity": "sha512-0VfPVkQx7jV7k71tTQY5HchDrALWjrHF8AcaaCojXQpb9ftktLxaCUdTWlQ+Y958GkgG7QX+HEo95ImZ+cYRHQ==", 539 | "cpu": [ 540 | "ia32" 541 | ], 542 | "dev": true, 543 | "optional": true, 544 | "os": [ 545 | "win32" 546 | ], 547 | "dependencies": { 548 | "@swc/wasm": "1.2.130" 549 | }, 550 | "engines": { 551 | "node": ">=10" 552 | } 553 | }, 554 | "node_modules/@swc/core-win32-ia32-msvc/node_modules/@swc/wasm": { 555 | "version": "1.2.130", 556 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 557 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 558 | "dev": true, 559 | "optional": true 560 | }, 561 | "node_modules/@swc/core-win32-x64-msvc": { 562 | "version": "1.3.1", 563 | "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.1.tgz", 564 | "integrity": "sha512-jSeqI8+1PGp+lHtyQCieDQxSszOF6UlA3bC2cmC9LAD84xcvsqpt0hsg3GFaw6RR7FsVjMNl/St6y1EEW0mm6Q==", 565 | "cpu": [ 566 | "x64" 567 | ], 568 | "dev": true, 569 | "optional": true, 570 | "os": [ 571 | "win32" 572 | ], 573 | "engines": { 574 | "node": ">=10" 575 | } 576 | }, 577 | "node_modules/@swc/helpers": { 578 | "version": "0.4.11", 579 | "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.4.11.tgz", 580 | "integrity": "sha512-rEUrBSGIoSFuYxwBYtlUFMlE2CwGhmW+w9355/5oduSw8e5h2+Tj4UrAGNNgP9915++wj5vkQo0UuOBqOAq4nw==", 581 | "dependencies": { 582 | "tslib": "^2.4.0" 583 | } 584 | }, 585 | "node_modules/@swc/wasm": { 586 | "version": "1.2.122", 587 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.122.tgz", 588 | "integrity": "sha512-sM1VCWQxmNhFtdxME+8UXNyPNhxNu7zdb6ikWpz0YKAQQFRGT5ThZgJrubEpah335SUToNg8pkdDF7ibVCjxbQ==", 589 | "dev": true, 590 | "optional": true 591 | }, 592 | "node_modules/braces": { 593 | "version": "3.0.2", 594 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 595 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 596 | "dev": true, 597 | "dependencies": { 598 | "fill-range": "^7.0.1" 599 | }, 600 | "engines": { 601 | "node": ">=8" 602 | } 603 | }, 604 | "node_modules/caniuse-lite": { 605 | "version": "1.0.30001402", 606 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001402.tgz", 607 | "integrity": "sha512-Mx4MlhXO5NwuvXGgVb+hg65HZ+bhUYsz8QtDGDo2QmaJS2GBX47Xfi2koL86lc8K+l+htXeTEB/Aeqvezoo6Ew==", 608 | "funding": [ 609 | { 610 | "type": "opencollective", 611 | "url": "https://opencollective.com/browserslist" 612 | }, 613 | { 614 | "type": "tidelift", 615 | "url": "https://tidelift.com/funding/github/npm/caniuse-lite" 616 | } 617 | ] 618 | }, 619 | "node_modules/commander": { 620 | "version": "7.2.0", 621 | "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", 622 | "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", 623 | "dev": true, 624 | "engines": { 625 | "node": ">= 10" 626 | } 627 | }, 628 | "node_modules/fast-glob": { 629 | "version": "3.2.12", 630 | "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", 631 | "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", 632 | "dev": true, 633 | "dependencies": { 634 | "@nodelib/fs.stat": "^2.0.2", 635 | "@nodelib/fs.walk": "^1.2.3", 636 | "glob-parent": "^5.1.2", 637 | "merge2": "^1.3.0", 638 | "micromatch": "^4.0.4" 639 | }, 640 | "engines": { 641 | "node": ">=8.6.0" 642 | } 643 | }, 644 | "node_modules/fastq": { 645 | "version": "1.13.0", 646 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", 647 | "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", 648 | "dev": true, 649 | "dependencies": { 650 | "reusify": "^1.0.4" 651 | } 652 | }, 653 | "node_modules/fill-range": { 654 | "version": "7.0.1", 655 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 656 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 657 | "dev": true, 658 | "dependencies": { 659 | "to-regex-range": "^5.0.1" 660 | }, 661 | "engines": { 662 | "node": ">=8" 663 | } 664 | }, 665 | "node_modules/glob-parent": { 666 | "version": "5.1.2", 667 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 668 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 669 | "dev": true, 670 | "dependencies": { 671 | "is-glob": "^4.0.1" 672 | }, 673 | "engines": { 674 | "node": ">= 6" 675 | } 676 | }, 677 | "node_modules/is-extglob": { 678 | "version": "2.1.1", 679 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 680 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 681 | "dev": true, 682 | "engines": { 683 | "node": ">=0.10.0" 684 | } 685 | }, 686 | "node_modules/is-glob": { 687 | "version": "4.0.3", 688 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 689 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 690 | "dev": true, 691 | "dependencies": { 692 | "is-extglob": "^2.1.1" 693 | }, 694 | "engines": { 695 | "node": ">=0.10.0" 696 | } 697 | }, 698 | "node_modules/is-number": { 699 | "version": "7.0.0", 700 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 701 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 702 | "dev": true, 703 | "engines": { 704 | "node": ">=0.12.0" 705 | } 706 | }, 707 | "node_modules/js-tokens": { 708 | "version": "4.0.0", 709 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 710 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" 711 | }, 712 | "node_modules/loose-envify": { 713 | "version": "1.4.0", 714 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 715 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 716 | "dependencies": { 717 | "js-tokens": "^3.0.0 || ^4.0.0" 718 | }, 719 | "bin": { 720 | "loose-envify": "cli.js" 721 | } 722 | }, 723 | "node_modules/merge2": { 724 | "version": "1.4.1", 725 | "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 726 | "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 727 | "dev": true, 728 | "engines": { 729 | "node": ">= 8" 730 | } 731 | }, 732 | "node_modules/micromatch": { 733 | "version": "4.0.5", 734 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", 735 | "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", 736 | "dev": true, 737 | "dependencies": { 738 | "braces": "^3.0.2", 739 | "picomatch": "^2.3.1" 740 | }, 741 | "engines": { 742 | "node": ">=8.6" 743 | } 744 | }, 745 | "node_modules/nanoid": { 746 | "version": "3.3.4", 747 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", 748 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", 749 | "bin": { 750 | "nanoid": "bin/nanoid.cjs" 751 | }, 752 | "engines": { 753 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 754 | } 755 | }, 756 | "node_modules/next": { 757 | "version": "12.3.0", 758 | "resolved": "https://registry.npmjs.org/next/-/next-12.3.0.tgz", 759 | "integrity": "sha512-GpzI6me9V1+XYtfK0Ae9WD0mKqHyzQlGq1xH1rzNIYMASo4Tkl4rTe9jSqtBpXFhOS33KohXs9ZY38Akkhdciw==", 760 | "dependencies": { 761 | "@next/env": "12.3.0", 762 | "@swc/helpers": "0.4.11", 763 | "caniuse-lite": "^1.0.30001332", 764 | "postcss": "8.4.14", 765 | "styled-jsx": "5.0.6", 766 | "use-sync-external-store": "1.2.0" 767 | }, 768 | "bin": { 769 | "next": "dist/bin/next" 770 | }, 771 | "engines": { 772 | "node": ">=12.22.0" 773 | }, 774 | "optionalDependencies": { 775 | "@next/swc-android-arm-eabi": "12.3.0", 776 | "@next/swc-android-arm64": "12.3.0", 777 | "@next/swc-darwin-arm64": "12.3.0", 778 | "@next/swc-darwin-x64": "12.3.0", 779 | "@next/swc-freebsd-x64": "12.3.0", 780 | "@next/swc-linux-arm-gnueabihf": "12.3.0", 781 | "@next/swc-linux-arm64-gnu": "12.3.0", 782 | "@next/swc-linux-arm64-musl": "12.3.0", 783 | "@next/swc-linux-x64-gnu": "12.3.0", 784 | "@next/swc-linux-x64-musl": "12.3.0", 785 | "@next/swc-win32-arm64-msvc": "12.3.0", 786 | "@next/swc-win32-ia32-msvc": "12.3.0", 787 | "@next/swc-win32-x64-msvc": "12.3.0" 788 | }, 789 | "peerDependencies": { 790 | "fibers": ">= 3.1.0", 791 | "node-sass": "^6.0.0 || ^7.0.0", 792 | "react": "^17.0.2 || ^18.0.0-0", 793 | "react-dom": "^17.0.2 || ^18.0.0-0", 794 | "sass": "^1.3.0" 795 | }, 796 | "peerDependenciesMeta": { 797 | "fibers": { 798 | "optional": true 799 | }, 800 | "node-sass": { 801 | "optional": true 802 | }, 803 | "sass": { 804 | "optional": true 805 | } 806 | } 807 | }, 808 | "node_modules/object-assign": { 809 | "version": "4.1.1", 810 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 811 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", 812 | "engines": { 813 | "node": ">=0.10.0" 814 | } 815 | }, 816 | "node_modules/picocolors": { 817 | "version": "1.0.0", 818 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", 819 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" 820 | }, 821 | "node_modules/picomatch": { 822 | "version": "2.3.1", 823 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 824 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 825 | "dev": true, 826 | "engines": { 827 | "node": ">=8.6" 828 | }, 829 | "funding": { 830 | "url": "https://github.com/sponsors/jonschlinkert" 831 | } 832 | }, 833 | "node_modules/postcss": { 834 | "version": "8.4.14", 835 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", 836 | "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", 837 | "funding": [ 838 | { 839 | "type": "opencollective", 840 | "url": "https://opencollective.com/postcss/" 841 | }, 842 | { 843 | "type": "tidelift", 844 | "url": "https://tidelift.com/funding/github/npm/postcss" 845 | } 846 | ], 847 | "dependencies": { 848 | "nanoid": "^3.3.4", 849 | "picocolors": "^1.0.0", 850 | "source-map-js": "^1.0.2" 851 | }, 852 | "engines": { 853 | "node": "^10 || ^12 || >=14" 854 | } 855 | }, 856 | "node_modules/queue-microtask": { 857 | "version": "1.2.3", 858 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 859 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 860 | "dev": true, 861 | "funding": [ 862 | { 863 | "type": "github", 864 | "url": "https://github.com/sponsors/feross" 865 | }, 866 | { 867 | "type": "patreon", 868 | "url": "https://www.patreon.com/feross" 869 | }, 870 | { 871 | "type": "consulting", 872 | "url": "https://feross.org/support" 873 | } 874 | ] 875 | }, 876 | "node_modules/react": { 877 | "version": "17.0.2", 878 | "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", 879 | "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", 880 | "dependencies": { 881 | "loose-envify": "^1.1.0", 882 | "object-assign": "^4.1.1" 883 | }, 884 | "engines": { 885 | "node": ">=0.10.0" 886 | } 887 | }, 888 | "node_modules/react-dom": { 889 | "version": "17.0.2", 890 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", 891 | "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", 892 | "dependencies": { 893 | "loose-envify": "^1.1.0", 894 | "object-assign": "^4.1.1", 895 | "scheduler": "^0.20.2" 896 | }, 897 | "peerDependencies": { 898 | "react": "17.0.2" 899 | } 900 | }, 901 | "node_modules/reusify": { 902 | "version": "1.0.4", 903 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", 904 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 905 | "dev": true, 906 | "engines": { 907 | "iojs": ">=1.0.0", 908 | "node": ">=0.10.0" 909 | } 910 | }, 911 | "node_modules/run-parallel": { 912 | "version": "1.2.0", 913 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 914 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 915 | "dev": true, 916 | "funding": [ 917 | { 918 | "type": "github", 919 | "url": "https://github.com/sponsors/feross" 920 | }, 921 | { 922 | "type": "patreon", 923 | "url": "https://www.patreon.com/feross" 924 | }, 925 | { 926 | "type": "consulting", 927 | "url": "https://feross.org/support" 928 | } 929 | ], 930 | "dependencies": { 931 | "queue-microtask": "^1.2.2" 932 | } 933 | }, 934 | "node_modules/scheduler": { 935 | "version": "0.20.2", 936 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", 937 | "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", 938 | "dependencies": { 939 | "loose-envify": "^1.1.0", 940 | "object-assign": "^4.1.1" 941 | } 942 | }, 943 | "node_modules/slash": { 944 | "version": "3.0.0", 945 | "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", 946 | "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", 947 | "dev": true, 948 | "engines": { 949 | "node": ">=8" 950 | } 951 | }, 952 | "node_modules/source-map": { 953 | "version": "0.7.4", 954 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", 955 | "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", 956 | "dev": true, 957 | "engines": { 958 | "node": ">= 8" 959 | } 960 | }, 961 | "node_modules/source-map-js": { 962 | "version": "1.0.2", 963 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", 964 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", 965 | "engines": { 966 | "node": ">=0.10.0" 967 | } 968 | }, 969 | "node_modules/styled-jsx": { 970 | "version": "5.0.6", 971 | "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.6.tgz", 972 | "integrity": "sha512-xOeROtkK5MGMDimBQ3J6iPId8q0t/BDoG5XN6oKkZClVz9ISF/hihN8OCn2LggMU6N32aXnrXBdn3auSqNS9fA==", 973 | "engines": { 974 | "node": ">= 12.0.0" 975 | }, 976 | "peerDependencies": { 977 | "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" 978 | }, 979 | "peerDependenciesMeta": { 980 | "@babel/core": { 981 | "optional": true 982 | }, 983 | "babel-plugin-macros": { 984 | "optional": true 985 | } 986 | } 987 | }, 988 | "node_modules/to-regex-range": { 989 | "version": "5.0.1", 990 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 991 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 992 | "dev": true, 993 | "dependencies": { 994 | "is-number": "^7.0.0" 995 | }, 996 | "engines": { 997 | "node": ">=8.0" 998 | } 999 | }, 1000 | "node_modules/tslib": { 1001 | "version": "2.4.0", 1002 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", 1003 | "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" 1004 | }, 1005 | "node_modules/use-sync-external-store": { 1006 | "version": "1.2.0", 1007 | "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", 1008 | "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", 1009 | "peerDependencies": { 1010 | "react": "^16.8.0 || ^17.0.0 || ^18.0.0" 1011 | } 1012 | } 1013 | }, 1014 | "dependencies": { 1015 | "@next/env": { 1016 | "version": "12.3.0", 1017 | "resolved": "https://registry.npmjs.org/@next/env/-/env-12.3.0.tgz", 1018 | "integrity": "sha512-PTJpjAFVbzBQ9xXpzMTroShvD5YDIIy46jQ7d4LrWpY+/5a8H90Tm8hE3Hvkc5RBRspVo7kvEOnqQms0A+2Q6w==" 1019 | }, 1020 | "@next/swc-android-arm-eabi": { 1021 | "version": "12.3.0", 1022 | "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.3.0.tgz", 1023 | "integrity": "sha512-/PuirPnAKsYBw93w/7Q9hqy+KGOU9mjYprZ/faxMUJh/dc6v3rYLxkZKNG9nFPIW4QKNTCnhP40xF9hLnxO+xg==", 1024 | "optional": true 1025 | }, 1026 | "@next/swc-android-arm64": { 1027 | "version": "12.3.0", 1028 | "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.3.0.tgz", 1029 | "integrity": "sha512-OaI+FhAM6P9B6Ybwbn0Zl8YwWido0lLwhDBi9WiYCh4RQmIXAyVIoIJPHo4fP05+mXaJ/k1trvDvuURvHOq2qw==", 1030 | "optional": true 1031 | }, 1032 | "@next/swc-darwin-arm64": { 1033 | "version": "12.3.0", 1034 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.3.0.tgz", 1035 | "integrity": "sha512-9s4d3Mhii+WFce8o8Jok7WC3Bawkr9wEUU++SJRptjU1L5tsfYJMrSYCACHLhZujziNDLyExe4Hwwsccps1sfg==", 1036 | "optional": true 1037 | }, 1038 | "@next/swc-darwin-x64": { 1039 | "version": "12.3.0", 1040 | "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.3.0.tgz", 1041 | "integrity": "sha512-2scC4MqUTwGwok+wpVxP+zWp7WcCAVOtutki2E1n99rBOTnUOX6qXkgxSy083yBN6GqwuC/dzHeN7hIKjavfRA==", 1042 | "optional": true 1043 | }, 1044 | "@next/swc-freebsd-x64": { 1045 | "version": "12.3.0", 1046 | "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.3.0.tgz", 1047 | "integrity": "sha512-xAlruUREij/bFa+qsE1tmsP28t7vz02N4ZDHt2lh3uJUniE0Ne9idyIDLc1Ed0IF2RjfgOp4ZVunuS3OM0sngw==", 1048 | "optional": true 1049 | }, 1050 | "@next/swc-linux-arm-gnueabihf": { 1051 | "version": "12.3.0", 1052 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.3.0.tgz", 1053 | "integrity": "sha512-jin2S4VT/cugc2dSZEUIabhYDJNgrUh7fufbdsaAezgcQzqfdfJqfxl4E9GuafzB4cbRPTaqA0V5uqbp0IyGkQ==", 1054 | "optional": true 1055 | }, 1056 | "@next/swc-linux-arm64-gnu": { 1057 | "version": "12.3.0", 1058 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.3.0.tgz", 1059 | "integrity": "sha512-RqJHDKe0WImeUrdR0kayTkRWgp4vD/MS7g0r6Xuf8+ellOFH7JAAJffDW3ayuVZeMYOa7RvgNFcOoWnrTUl9Nw==", 1060 | "optional": true 1061 | }, 1062 | "@next/swc-linux-arm64-musl": { 1063 | "version": "12.3.0", 1064 | "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.3.0.tgz", 1065 | "integrity": "sha512-nvNWoUieMjvDjpYJ/4SQe9lQs2xMj6ZRs8N+bmTrVu9leY2Fg3WD6W9p/1uU9hGO8u+OdF13wc4iRShu/WYIHg==", 1066 | "optional": true 1067 | }, 1068 | "@next/swc-linux-x64-gnu": { 1069 | "version": "12.3.0", 1070 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.3.0.tgz", 1071 | "integrity": "sha512-4ajhIuVU9PeQCMMhdDgZTLrHmjbOUFuIyg6J19hZqwEwDTSqQyrSLkbJs2Nd7IRiM6Ul/XyrtEFCpk4k+xD2+w==", 1072 | "optional": true 1073 | }, 1074 | "@next/swc-linux-x64-musl": { 1075 | "version": "12.3.0", 1076 | "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.3.0.tgz", 1077 | "integrity": "sha512-U092RBYbaGxoMAwpauePJEu2PuZSEoUCGJBvsptQr2/2XIMwAJDYM4c/M5NfYEsBr+yjvsYNsOpYfeQ88D82Yg==", 1078 | "optional": true 1079 | }, 1080 | "@next/swc-win32-arm64-msvc": { 1081 | "version": "12.3.0", 1082 | "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.3.0.tgz", 1083 | "integrity": "sha512-pzSzaxjDEJe67bUok9Nxf9rykbJfHXW0owICFsPBsqHyc+cr8vpF7g9e2APTCddtVhvjkga9ILoZJ9NxWS7Yiw==", 1084 | "optional": true 1085 | }, 1086 | "@next/swc-win32-ia32-msvc": { 1087 | "version": "12.3.0", 1088 | "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.3.0.tgz", 1089 | "integrity": "sha512-MQGUpMbYhQmTZ06a9e0hPQJnxFMwETo2WtyAotY3GEzbNCQVbCGhsvqEKcl+ZEHgShlHXUWvSffq1ZscY6gK7A==", 1090 | "optional": true 1091 | }, 1092 | "@next/swc-win32-x64-msvc": { 1093 | "version": "12.3.0", 1094 | "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.3.0.tgz", 1095 | "integrity": "sha512-C/nw6OgQpEULWqs+wgMHXGvlJLguPRFFGqR2TAqWBerQ8J+Sg3z1ZTqwelkSi4FoqStGuZ2UdFHIDN1ySmR1xA==", 1096 | "optional": true 1097 | }, 1098 | "@nodelib/fs.scandir": { 1099 | "version": "2.1.5", 1100 | "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 1101 | "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 1102 | "dev": true, 1103 | "requires": { 1104 | "@nodelib/fs.stat": "2.0.5", 1105 | "run-parallel": "^1.1.9" 1106 | } 1107 | }, 1108 | "@nodelib/fs.stat": { 1109 | "version": "2.0.5", 1110 | "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 1111 | "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 1112 | "dev": true 1113 | }, 1114 | "@nodelib/fs.walk": { 1115 | "version": "1.2.8", 1116 | "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 1117 | "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 1118 | "dev": true, 1119 | "requires": { 1120 | "@nodelib/fs.scandir": "2.1.5", 1121 | "fastq": "^1.6.0" 1122 | } 1123 | }, 1124 | "@swc/cli": { 1125 | "version": "0.1.57", 1126 | "resolved": "https://registry.npmjs.org/@swc/cli/-/cli-0.1.57.tgz", 1127 | "integrity": "sha512-HxM8TqYHhAg+zp7+RdTU69bnkl4MWdt1ygyp6BDIPjTiaJVH6Dizn2ezbgDS8mnFZI1FyhKvxU/bbaUs8XhzQg==", 1128 | "dev": true, 1129 | "requires": { 1130 | "commander": "^7.1.0", 1131 | "fast-glob": "^3.2.5", 1132 | "slash": "3.0.0", 1133 | "source-map": "^0.7.3" 1134 | } 1135 | }, 1136 | "@swc/core": { 1137 | "version": "1.3.1", 1138 | "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.1.tgz", 1139 | "integrity": "sha512-ztB5N63UGLIOM60Vg+deHVigEnDAEAttiTQk4T91/i11SoOO65P9z8Bey01XFTxF0Alc2OJxkt8TBcq+n5mMYQ==", 1140 | "dev": true, 1141 | "requires": { 1142 | "@swc/core-android-arm-eabi": "1.3.1", 1143 | "@swc/core-android-arm64": "1.3.1", 1144 | "@swc/core-darwin-arm64": "1.3.1", 1145 | "@swc/core-darwin-x64": "1.3.1", 1146 | "@swc/core-freebsd-x64": "1.3.1", 1147 | "@swc/core-linux-arm-gnueabihf": "1.3.1", 1148 | "@swc/core-linux-arm64-gnu": "1.3.1", 1149 | "@swc/core-linux-arm64-musl": "1.3.1", 1150 | "@swc/core-linux-x64-gnu": "1.3.1", 1151 | "@swc/core-linux-x64-musl": "1.3.1", 1152 | "@swc/core-win32-arm64-msvc": "1.3.1", 1153 | "@swc/core-win32-ia32-msvc": "1.3.1", 1154 | "@swc/core-win32-x64-msvc": "1.3.1" 1155 | } 1156 | }, 1157 | "@swc/core-android-arm-eabi": { 1158 | "version": "1.3.1", 1159 | "resolved": "https://registry.npmjs.org/@swc/core-android-arm-eabi/-/core-android-arm-eabi-1.3.1.tgz", 1160 | "integrity": "sha512-fZ6nTalHWYn1OHfU87yF8s24edgQ4COHydLlPcpU/pwSH90hCwy/fgna5PpUBw0rfzGBttX0/0yMorC7ZSar4Q==", 1161 | "dev": true, 1162 | "optional": true, 1163 | "requires": { 1164 | "@swc/wasm": "1.2.122" 1165 | } 1166 | }, 1167 | "@swc/core-android-arm64": { 1168 | "version": "1.3.1", 1169 | "resolved": "https://registry.npmjs.org/@swc/core-android-arm64/-/core-android-arm64-1.3.1.tgz", 1170 | "integrity": "sha512-aDrV22ajQ4NYOwxEWvipPpdhHaLqU5W1rxRap5N1KSetzwGIk6NMd31o6Jotoxf7tB8qtLlo5VyNok4adJRVYg==", 1171 | "dev": true, 1172 | "optional": true, 1173 | "requires": { 1174 | "@swc/wasm": "1.2.130" 1175 | }, 1176 | "dependencies": { 1177 | "@swc/wasm": { 1178 | "version": "1.2.130", 1179 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 1180 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 1181 | "dev": true, 1182 | "optional": true 1183 | } 1184 | } 1185 | }, 1186 | "@swc/core-darwin-arm64": { 1187 | "version": "1.3.1", 1188 | "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.1.tgz", 1189 | "integrity": "sha512-yom8pqaDhsncQaqp+NdXk1YEtWoqPrfsyKJP3RriTbUjXS/20q/WNfkkJjxUuaFZC6PH/MuvrLzD6Z6ZuZvLaA==", 1190 | "dev": true, 1191 | "optional": true 1192 | }, 1193 | "@swc/core-darwin-x64": { 1194 | "version": "1.3.1", 1195 | "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.1.tgz", 1196 | "integrity": "sha512-Q2kH2i5pS0dvauOiRR4s7atH+Qrhe1LmiCv1D2U+AghZMfDcxi3DBTxrae/YqmDYm3GxHH3ZSAFHR3E0SeiSSg==", 1197 | "dev": true, 1198 | "optional": true 1199 | }, 1200 | "@swc/core-freebsd-x64": { 1201 | "version": "1.3.1", 1202 | "resolved": "https://registry.npmjs.org/@swc/core-freebsd-x64/-/core-freebsd-x64-1.3.1.tgz", 1203 | "integrity": "sha512-f2a+rPGrhAICF+Du/nHWZlYzltX1/fWyt+v0IP+r0Zh4drgTrt5G3sMYrQVTjsKvI8R6tV2Q7BfYvDIQXwE1pw==", 1204 | "dev": true, 1205 | "optional": true, 1206 | "requires": { 1207 | "@swc/wasm": "1.2.130" 1208 | }, 1209 | "dependencies": { 1210 | "@swc/wasm": { 1211 | "version": "1.2.130", 1212 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 1213 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 1214 | "dev": true, 1215 | "optional": true 1216 | } 1217 | } 1218 | }, 1219 | "@swc/core-linux-arm-gnueabihf": { 1220 | "version": "1.3.1", 1221 | "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.1.tgz", 1222 | "integrity": "sha512-Q1zGHJMvAEkFdW7A2dthFrswf/HezhC2kOSoOmitz+KxWBZ0YSj8k9ImLYGFf7S8Vi0KVzLUaE1jCGK2oePx/A==", 1223 | "dev": true, 1224 | "optional": true, 1225 | "requires": { 1226 | "@swc/wasm": "1.2.130" 1227 | }, 1228 | "dependencies": { 1229 | "@swc/wasm": { 1230 | "version": "1.2.130", 1231 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 1232 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 1233 | "dev": true, 1234 | "optional": true 1235 | } 1236 | } 1237 | }, 1238 | "@swc/core-linux-arm64-gnu": { 1239 | "version": "1.3.1", 1240 | "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.1.tgz", 1241 | "integrity": "sha512-5OPkiU2A4Ijt2cRzi2FCGPkAC+wRvAb0TmUkL4Lj2PXPzM5RtEd2AoYmpQhV+YEOXO4XdnKwgBmdeiQV5K8eXA==", 1242 | "dev": true, 1243 | "optional": true 1244 | }, 1245 | "@swc/core-linux-arm64-musl": { 1246 | "version": "1.3.1", 1247 | "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.1.tgz", 1248 | "integrity": "sha512-oTIeS7kEKSUrTxavYBEfqjqoIiHtbwSdgp/rrn2hz7CDG1B1imRHnsjwdh4YaYLsm8RcCH9+GABnHxJd3Nd6qg==", 1249 | "dev": true, 1250 | "optional": true 1251 | }, 1252 | "@swc/core-linux-x64-gnu": { 1253 | "version": "1.3.1", 1254 | "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.1.tgz", 1255 | "integrity": "sha512-gNojY1qIKksK9kNdY4pqrlUILTxfqSWtXjX0qV2mlxgwRpnOATJnMx585q09cOZnkN2/QB+33pXnT8z/wxuGzQ==", 1256 | "dev": true, 1257 | "optional": true 1258 | }, 1259 | "@swc/core-linux-x64-musl": { 1260 | "version": "1.3.1", 1261 | "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.1.tgz", 1262 | "integrity": "sha512-WXNagCsjul7U9uYYP1JkUUVtvqXRDDWjvdegqrtQ99/De+HoWr+fCPgvENgOsSwb0clPTBuiGm2PTnK6kDQ0Sw==", 1263 | "dev": true, 1264 | "optional": true 1265 | }, 1266 | "@swc/core-win32-arm64-msvc": { 1267 | "version": "1.3.1", 1268 | "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.1.tgz", 1269 | "integrity": "sha512-3LSDJtpYNgN4N/pd/YzHAWKaF2Y/1P9t83vHfPos77hQ+KzFaiyT7YIG1qfYy1AD8MGC28l2bJNH2gia3bcERA==", 1270 | "dev": true, 1271 | "optional": true, 1272 | "requires": { 1273 | "@swc/wasm": "1.2.130" 1274 | }, 1275 | "dependencies": { 1276 | "@swc/wasm": { 1277 | "version": "1.2.130", 1278 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 1279 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 1280 | "dev": true, 1281 | "optional": true 1282 | } 1283 | } 1284 | }, 1285 | "@swc/core-win32-ia32-msvc": { 1286 | "version": "1.3.1", 1287 | "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.1.tgz", 1288 | "integrity": "sha512-0VfPVkQx7jV7k71tTQY5HchDrALWjrHF8AcaaCojXQpb9ftktLxaCUdTWlQ+Y958GkgG7QX+HEo95ImZ+cYRHQ==", 1289 | "dev": true, 1290 | "optional": true, 1291 | "requires": { 1292 | "@swc/wasm": "1.2.130" 1293 | }, 1294 | "dependencies": { 1295 | "@swc/wasm": { 1296 | "version": "1.2.130", 1297 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.130.tgz", 1298 | "integrity": "sha512-rNcJsBxS70+pv8YUWwf5fRlWX6JoY/HJc25HD/F8m6Kv7XhJdqPPMhyX6TKkUBPAG7TWlZYoxa+rHAjPy4Cj3Q==", 1299 | "dev": true, 1300 | "optional": true 1301 | } 1302 | } 1303 | }, 1304 | "@swc/core-win32-x64-msvc": { 1305 | "version": "1.3.1", 1306 | "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.1.tgz", 1307 | "integrity": "sha512-jSeqI8+1PGp+lHtyQCieDQxSszOF6UlA3bC2cmC9LAD84xcvsqpt0hsg3GFaw6RR7FsVjMNl/St6y1EEW0mm6Q==", 1308 | "dev": true, 1309 | "optional": true 1310 | }, 1311 | "@swc/helpers": { 1312 | "version": "0.4.11", 1313 | "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.4.11.tgz", 1314 | "integrity": "sha512-rEUrBSGIoSFuYxwBYtlUFMlE2CwGhmW+w9355/5oduSw8e5h2+Tj4UrAGNNgP9915++wj5vkQo0UuOBqOAq4nw==", 1315 | "requires": { 1316 | "tslib": "^2.4.0" 1317 | } 1318 | }, 1319 | "@swc/wasm": { 1320 | "version": "1.2.122", 1321 | "resolved": "https://registry.npmjs.org/@swc/wasm/-/wasm-1.2.122.tgz", 1322 | "integrity": "sha512-sM1VCWQxmNhFtdxME+8UXNyPNhxNu7zdb6ikWpz0YKAQQFRGT5ThZgJrubEpah335SUToNg8pkdDF7ibVCjxbQ==", 1323 | "dev": true, 1324 | "optional": true 1325 | }, 1326 | "braces": { 1327 | "version": "3.0.2", 1328 | "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", 1329 | "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", 1330 | "dev": true, 1331 | "requires": { 1332 | "fill-range": "^7.0.1" 1333 | } 1334 | }, 1335 | "caniuse-lite": { 1336 | "version": "1.0.30001402", 1337 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001402.tgz", 1338 | "integrity": "sha512-Mx4MlhXO5NwuvXGgVb+hg65HZ+bhUYsz8QtDGDo2QmaJS2GBX47Xfi2koL86lc8K+l+htXeTEB/Aeqvezoo6Ew==" 1339 | }, 1340 | "commander": { 1341 | "version": "7.2.0", 1342 | "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", 1343 | "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", 1344 | "dev": true 1345 | }, 1346 | "fast-glob": { 1347 | "version": "3.2.12", 1348 | "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", 1349 | "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", 1350 | "dev": true, 1351 | "requires": { 1352 | "@nodelib/fs.stat": "^2.0.2", 1353 | "@nodelib/fs.walk": "^1.2.3", 1354 | "glob-parent": "^5.1.2", 1355 | "merge2": "^1.3.0", 1356 | "micromatch": "^4.0.4" 1357 | } 1358 | }, 1359 | "fastq": { 1360 | "version": "1.13.0", 1361 | "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", 1362 | "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", 1363 | "dev": true, 1364 | "requires": { 1365 | "reusify": "^1.0.4" 1366 | } 1367 | }, 1368 | "fill-range": { 1369 | "version": "7.0.1", 1370 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", 1371 | "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", 1372 | "dev": true, 1373 | "requires": { 1374 | "to-regex-range": "^5.0.1" 1375 | } 1376 | }, 1377 | "glob-parent": { 1378 | "version": "5.1.2", 1379 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 1380 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 1381 | "dev": true, 1382 | "requires": { 1383 | "is-glob": "^4.0.1" 1384 | } 1385 | }, 1386 | "is-extglob": { 1387 | "version": "2.1.1", 1388 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1389 | "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1390 | "dev": true 1391 | }, 1392 | "is-glob": { 1393 | "version": "4.0.3", 1394 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 1395 | "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1396 | "dev": true, 1397 | "requires": { 1398 | "is-extglob": "^2.1.1" 1399 | } 1400 | }, 1401 | "is-number": { 1402 | "version": "7.0.0", 1403 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1404 | "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 1405 | "dev": true 1406 | }, 1407 | "js-tokens": { 1408 | "version": "4.0.0", 1409 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 1410 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" 1411 | }, 1412 | "loose-envify": { 1413 | "version": "1.4.0", 1414 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 1415 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 1416 | "requires": { 1417 | "js-tokens": "^3.0.0 || ^4.0.0" 1418 | } 1419 | }, 1420 | "merge2": { 1421 | "version": "1.4.1", 1422 | "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 1423 | "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 1424 | "dev": true 1425 | }, 1426 | "micromatch": { 1427 | "version": "4.0.5", 1428 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", 1429 | "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", 1430 | "dev": true, 1431 | "requires": { 1432 | "braces": "^3.0.2", 1433 | "picomatch": "^2.3.1" 1434 | } 1435 | }, 1436 | "nanoid": { 1437 | "version": "3.3.4", 1438 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", 1439 | "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" 1440 | }, 1441 | "next": { 1442 | "version": "12.3.0", 1443 | "resolved": "https://registry.npmjs.org/next/-/next-12.3.0.tgz", 1444 | "integrity": "sha512-GpzI6me9V1+XYtfK0Ae9WD0mKqHyzQlGq1xH1rzNIYMASo4Tkl4rTe9jSqtBpXFhOS33KohXs9ZY38Akkhdciw==", 1445 | "requires": { 1446 | "@next/env": "12.3.0", 1447 | "@next/swc-android-arm-eabi": "12.3.0", 1448 | "@next/swc-android-arm64": "12.3.0", 1449 | "@next/swc-darwin-arm64": "12.3.0", 1450 | "@next/swc-darwin-x64": "12.3.0", 1451 | "@next/swc-freebsd-x64": "12.3.0", 1452 | "@next/swc-linux-arm-gnueabihf": "12.3.0", 1453 | "@next/swc-linux-arm64-gnu": "12.3.0", 1454 | "@next/swc-linux-arm64-musl": "12.3.0", 1455 | "@next/swc-linux-x64-gnu": "12.3.0", 1456 | "@next/swc-linux-x64-musl": "12.3.0", 1457 | "@next/swc-win32-arm64-msvc": "12.3.0", 1458 | "@next/swc-win32-ia32-msvc": "12.3.0", 1459 | "@next/swc-win32-x64-msvc": "12.3.0", 1460 | "@swc/helpers": "0.4.11", 1461 | "caniuse-lite": "^1.0.30001332", 1462 | "postcss": "8.4.14", 1463 | "styled-jsx": "5.0.6", 1464 | "use-sync-external-store": "1.2.0" 1465 | } 1466 | }, 1467 | "object-assign": { 1468 | "version": "4.1.1", 1469 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 1470 | "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" 1471 | }, 1472 | "picocolors": { 1473 | "version": "1.0.0", 1474 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", 1475 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" 1476 | }, 1477 | "picomatch": { 1478 | "version": "2.3.1", 1479 | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 1480 | "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 1481 | "dev": true 1482 | }, 1483 | "postcss": { 1484 | "version": "8.4.14", 1485 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", 1486 | "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", 1487 | "requires": { 1488 | "nanoid": "^3.3.4", 1489 | "picocolors": "^1.0.0", 1490 | "source-map-js": "^1.0.2" 1491 | } 1492 | }, 1493 | "queue-microtask": { 1494 | "version": "1.2.3", 1495 | "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 1496 | "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 1497 | "dev": true 1498 | }, 1499 | "react": { 1500 | "version": "17.0.2", 1501 | "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", 1502 | "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", 1503 | "requires": { 1504 | "loose-envify": "^1.1.0", 1505 | "object-assign": "^4.1.1" 1506 | } 1507 | }, 1508 | "react-dom": { 1509 | "version": "17.0.2", 1510 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", 1511 | "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", 1512 | "requires": { 1513 | "loose-envify": "^1.1.0", 1514 | "object-assign": "^4.1.1", 1515 | "scheduler": "^0.20.2" 1516 | } 1517 | }, 1518 | "reusify": { 1519 | "version": "1.0.4", 1520 | "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", 1521 | "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 1522 | "dev": true 1523 | }, 1524 | "run-parallel": { 1525 | "version": "1.2.0", 1526 | "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 1527 | "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 1528 | "dev": true, 1529 | "requires": { 1530 | "queue-microtask": "^1.2.2" 1531 | } 1532 | }, 1533 | "scheduler": { 1534 | "version": "0.20.2", 1535 | "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", 1536 | "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", 1537 | "requires": { 1538 | "loose-envify": "^1.1.0", 1539 | "object-assign": "^4.1.1" 1540 | } 1541 | }, 1542 | "slash": { 1543 | "version": "3.0.0", 1544 | "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", 1545 | "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", 1546 | "dev": true 1547 | }, 1548 | "source-map": { 1549 | "version": "0.7.4", 1550 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", 1551 | "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", 1552 | "dev": true 1553 | }, 1554 | "source-map-js": { 1555 | "version": "1.0.2", 1556 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", 1557 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" 1558 | }, 1559 | "styled-jsx": { 1560 | "version": "5.0.6", 1561 | "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.6.tgz", 1562 | "integrity": "sha512-xOeROtkK5MGMDimBQ3J6iPId8q0t/BDoG5XN6oKkZClVz9ISF/hihN8OCn2LggMU6N32aXnrXBdn3auSqNS9fA==", 1563 | "requires": {} 1564 | }, 1565 | "to-regex-range": { 1566 | "version": "5.0.1", 1567 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 1568 | "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 1569 | "dev": true, 1570 | "requires": { 1571 | "is-number": "^7.0.0" 1572 | } 1573 | }, 1574 | "tslib": { 1575 | "version": "2.4.0", 1576 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", 1577 | "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" 1578 | }, 1579 | "use-sync-external-store": { 1580 | "version": "1.2.0", 1581 | "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", 1582 | "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", 1583 | "requires": {} 1584 | } 1585 | } 1586 | } 1587 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "nextjs-docker", 3 | "version": "1.0.0", 4 | "description": "Node - Next.js - Next - React - SSR - Docker", 5 | "author": "Regis Boudinot (selfup)", 6 | "scripts": { 7 | "postinstall": "npx next telemetry disable", 8 | "dev": "next", 9 | "start": "next start", 10 | "build": "next build" 11 | }, 12 | "dependencies": { 13 | "next": "^12.1.0", 14 | "react": "^17.0.0", 15 | "react-dom": "^17.0.2" 16 | }, 17 | "devDependencies": { 18 | "@swc/cli": "^0.1.57", 19 | "@swc/core": "^1.3.1" 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /pages/about.js: -------------------------------------------------------------------------------- 1 | import Link from 'next/link'; 2 | 3 | export default () => ( 4 |