From 0722d1d53335f7f9a800e84fdf904fabb5a22646 Mon Sep 17 00:00:00 2001 From: seondal Date: Tue, 8 Nov 2022 18:19:19 +0900 Subject: [PATCH 01/57] [Set] create-next-app --- .eslintrc.json | 3 + .gitignore | 36 + README.md | 52 +- next.config.js | 7 + package-lock.json | 4823 ++++++++++++++++++++++++++++++++++++++++ package.json | 22 + pages/_app.tsx | 6 + pages/api/hello.ts | 13 + pages/index.tsx | 71 + public/favicon.ico | Bin 0 -> 25931 bytes public/vercel.svg | 4 + styles/Home.module.css | 129 ++ styles/globals.css | 26 + tsconfig.json | 20 + 14 files changed, 5180 insertions(+), 32 deletions(-) create mode 100644 .eslintrc.json create mode 100644 .gitignore create mode 100644 next.config.js create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 pages/_app.tsx create mode 100644 pages/api/hello.ts create mode 100644 pages/index.tsx create mode 100644 public/favicon.ico create mode 100644 public/vercel.svg create mode 100644 styles/Home.module.css create mode 100644 styles/globals.css create mode 100644 tsconfig.json diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 0000000..bffb357 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,3 @@ +{ + "extends": "next/core-web-vitals" +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c87c9b3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,36 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/README.md b/README.md index dac6198..c87e042 100644 --- a/README.md +++ b/README.md @@ -1,46 +1,34 @@ -# 5주차 미션: Next-Netflix +This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app). -## 서론 +## Getting Started -안녕하세요, 프론트 파트장 주효정입니다🙌 +First, run the development server: -이번주부터는 새 프로젝트인 **Netflix 클론코딩**을 진행합니다. 이번 미션은 Next.js를 사용해 보며 SSR을 학습하고 figma로 주어지는 디자인을 활용해 스타일링 하는 방법을 이해하는 것을 목표로 합니다. +```bash +npm run dev +# or +yarn dev +``` -또한 이번주부터는 프론트 페어와 함께하는 과제인 만큼 각 팀별로 미리 호흡을 맞춰 보는 좋은 기회가 될 것 같습니다. 모두 화이팅입니다🔥 +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. -## 미션 +You can start editing the page by modifying `pages/index.tsx`. The page auto-updates as you edit the file. -### 미션 목표 +[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.ts`. -- Next.js 사용법을 공부해봅니다. -- Figma로 주어지는 디자인으로 스타일링 하는 방식에 익숙해집니다. -- Git을 이용한 협업 방식에 익숙해집니다. +The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages. -### 기한 +## Learn More -- 2022년 11월 11일 (기한 엄수) +To learn more about Next.js, take a look at the following resources: -### 필수 요건 +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. -- [결과화면](https://next-netflix-16th.vercel.app/)의 렌딩 페이지(로고 애니메이션)와 메인 페이지를 구현합니다. -- [Figma](https://www.figma.com/file/UqdXDovIczt1Gl0IjknHQf/Netflix?node-id=0%3A1)의 디자인을 그대로 구현합니다. -- SSR(Server Side Rendering)을 적용해서 구현합니다. -- Open api를 사용해서 데이터 패칭을 진행합니다. (ex. [themoviedb API](https://developers.themoviedb.org/3/getting-started/introduction)) +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! -### 선택 사항 +## Deploy on Vercel -- 웹 폰트를 사용합니다. -- 반응형을 고려합니다. +The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. -## Key Questions - -- Server Side Rendering과 Client Side Rendering의 차이 -- SEO란 -- 전반적인 협업 과정 - -## 링크 및 참고자료 - -- [Next.js Docs](https://beta.nextjs.org/docs) -- [Next.js 13에서 변한 것들](https://velog.io/@hang_kem_0531/Next.js-13%EC%9D%B4-%EB%82%98%EC%99%80%EB%B2%84%EB%A0%B8%EB%8B%A4) -- [Git 협업 가이드](https://velog.io/@jinuku/Git-%ED%98%91%EC%97%85-%EA%B0%80%EC%9D%B4%EB%93%9C) -- [디자이너와 개발자가 협업하기 위한 피그마 기본 기능](https://chingguhl.tistory.com/entry/%EA%B0%9C%EB%B0%9C%EC%9E%90%EA%B0%80-%EA%BC%AD-%EC%95%8C%EC%95%84%EC%95%BC-%ED%95%A0-%ED%94%BC%EA%B7%B8%EB%A7%88-10%EA%B0%80%EC%A7%80-%EA%B8%B0%EB%8A%A5-%EB%94%94%EC%9E%90%EC%9D%B4%EB%84%88%EC%99%80-%EA%B0%9C%EB%B0%9C%EC%9E%90%EA%B0%80-%ED%98%91%EC%97%85%ED%95%98%EA%B8%B0-%EC%9C%84%ED%95%9C-%ED%94%BC%EA%B7%B8%EB%A7%88-%EA%B8%B0%EB%B3%B8-%EA%B8%B0%EB%8A%A5) +Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. diff --git a/next.config.js b/next.config.js new file mode 100644 index 0000000..ae88795 --- /dev/null +++ b/next.config.js @@ -0,0 +1,7 @@ +/** @type {import('next').NextConfig} */ +const nextConfig = { + reactStrictMode: true, + swcMinify: true, +} + +module.exports = nextConfig diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..151fcc6 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,4823 @@ +{ + "name": "next-netflix-16th", + "version": "0.1.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "next-netflix-16th", + "version": "0.1.0", + "dependencies": { + "@types/node": "18.11.9", + "@types/react": "18.0.25", + "@types/react-dom": "18.0.8", + "eslint": "8.27.0", + "eslint-config-next": "13.0.2", + "next": "13.0.2", + "react": "18.2.0", + "react-dom": "18.2.0", + "typescript": "4.8.4" + } + }, + "node_modules/@babel/runtime": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz", + "integrity": "sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==", + "dependencies": { + "regenerator-runtime": "^0.13.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.1.tgz", + "integrity": "sha512-CGulbEDcg/ND1Im7fUNRZdGXmX2MTWVVZacQi/6DiKE5HNwZ3aVTm5PV4lO8HHz0B2h8WQyvKKjbX5XgTtydsg==", + "dependencies": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", + "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.15.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.7", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", + "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==" + }, + "node_modules/@next/env": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/env/-/env-13.0.2.tgz", + "integrity": "sha512-Qb6WPuRriGIQ19qd6NBxpcrFOfj8ziN7l9eZUfwff5gl4zLXluqtuZPddYZM/oWjN53ZYcuRXzL+oowKyJeYtA==" + }, + "node_modules/@next/eslint-plugin-next": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.0.2.tgz", + "integrity": "sha512-W+fIIIaFU7Kct7Okx91C7XDRGolv/w2RUenX2yZFeeNVcuVzDIKUcNmckrYbYcwrNQUSXmtwrs3g8xwast0YtA==", + "dependencies": { + "glob": "7.1.7" + } + }, + "node_modules/@next/swc-android-arm-eabi": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.0.2.tgz", + "integrity": "sha512-X54UQCTFyOGnJP//Z71dPPlp4BCYcQL2ncikKXQcPzVpqPs4C3m+tKC8ivBNH6edAXkppwsLRz1/yQwgSZ9Swg==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-android-arm64": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-13.0.2.tgz", + "integrity": "sha512-1P00Kv8uKaLubqo7JzPrTqgFAzSOmfb8iwqJrOb9in5IvTRtNGlkR4hU0sXzqbQNM/+SaYxze6Z5ry1IDyb/cQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.0.2.tgz", + "integrity": "sha512-1zGIOkInkOLRv0QQGZ+3wffYsyKI4vIy62LYTvDWUn7TAYqnmXwougp9NSLqDeagLwgsv2URrykyAFixA/YqxA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.0.2.tgz", + "integrity": "sha512-ECDAjoMP1Y90cARaelS6X+k6BQx+MikAYJ8f/eaJrLur44NIOYc9HA/dgcTp5jenguY4yT8V+HCquLjAVle6fA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-freebsd-x64": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.0.2.tgz", + "integrity": "sha512-2DcL/ofQdBnQX3IoI9sjlIAyLCD1oZoUBuhrhWbejvBQjutWrI0JTEv9uG69WcxWhVMm3BCsjv8GK2/68OKp7A==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm-gnueabihf": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.0.2.tgz", + "integrity": "sha512-Y3OQF1CSBSWW2vGkmvOIuOUNqOq8qX7f1ZpcKUVWP3/Uq++DZmVi9d18lgnSe1I3QFqc+nXWyun9ljsN83j0sw==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.0.2.tgz", + "integrity": "sha512-mNyzwsFF6kwZYEjnGicx9ksDZYEZvyzEc1BtCu8vdZi/v8UeixQwCiAT6FyYX9uxMPEkzk8qiU0t0u9gvltsKw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.0.2.tgz", + "integrity": "sha512-M6SdYjWgRrY3tJBxz0663zCRPTu5BRONmxlftKWWHv9LjAJ59neTLaGj4rp0A08DkJglZIoCkLOzLrzST6TGag==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.0.2.tgz", + "integrity": "sha512-pi63RoxvG4ES1KS06Zpm0MATVIXTs/TIbLbdckeLoM40u1d3mQl/+hSSrLRSxzc2OtyL8fh92sM4gkJrQXAMAw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.0.2.tgz", + "integrity": "sha512-9Pv91gfYnDONgjtRm78n64b/c54+azeHtlnqBLTnIFWSMBDRl1/WDkhKWIj3fBGPLimtK7Tko3ULR3og9RRUPw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.0.2.tgz", + "integrity": "sha512-Nvewe6YZaizAkGHHprbMkYqQulBjZCHKBGKeFPwoPtOA+a2Qi4pZzc/qXFyC5/2A6Z0mr2U1zg9rd04WBYMwBw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.0.2.tgz", + "integrity": "sha512-ZUBYGZw5G3QrqDpRq1EWi3aHmvPZM8ijK5TFL6UbH16cYQ0JpANmuG2P66KB93Qe/lWWzbeAZk/tj1XqwoCuPA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.0.2.tgz", + "integrity": "sha512-fA9uW1dm7C0mEYGcKlbmLcVm2sKcye+1kPxh2cM4jVR+kQQMtHWsjIzeSpe2grQLSDan06z4n6hbr8b1c3hA8w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rushstack/eslint-patch": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz", + "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==" + }, + "node_modules/@swc/helpers": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.4.11.tgz", + "integrity": "sha512-rEUrBSGIoSFuYxwBYtlUFMlE2CwGhmW+w9355/5oduSw8e5h2+Tj4UrAGNNgP9915++wj5vkQo0UuOBqOAq4nw==", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" + }, + "node_modules/@types/node": { + "version": "18.11.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz", + "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==" + }, + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "node_modules/@types/react": { + "version": "18.0.25", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.25.tgz", + "integrity": "sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g==", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.0.8", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.8.tgz", + "integrity": "sha512-C3GYO0HLaOkk9dDAz3Dl4sbe4AKUGTCfFIZsz3n/82dPNN8Du533HzKatDxeUYWu24wJgMP1xICqkWk1YOLOIw==", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.42.1.tgz", + "integrity": "sha512-kAV+NiNBWVQDY9gDJDToTE/NO8BHi4f6b7zTsVAJoTkmB/zlfOpiEVBzHOKtlgTndCKe8vj9F/PuolemZSh50Q==", + "dependencies": { + "@typescript-eslint/scope-manager": "5.42.1", + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/typescript-estree": "5.42.1", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.42.1.tgz", + "integrity": "sha512-QAZY/CBP1Emx4rzxurgqj3rUinfsh/6mvuKbLNMfJMMKYLRBfweus8brgXF8f64ABkIZ3zdj2/rYYtF8eiuksQ==", + "dependencies": { + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/visitor-keys": "5.42.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.42.1.tgz", + "integrity": "sha512-Qrco9dsFF5lhalz+lLFtxs3ui1/YfC6NdXu+RAGBa8uSfn01cjO7ssCsjIsUs484vny9Xm699FSKwpkCcqwWwA==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.42.1.tgz", + "integrity": "sha512-qElc0bDOuO0B8wDhhW4mYVgi/LZL+igPwXtV87n69/kYC/7NG3MES0jHxJNCr4EP7kY1XVsRy8C/u3DYeTKQmw==", + "dependencies": { + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/visitor-keys": "5.42.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.42.1.tgz", + "integrity": "sha512-LOQtSF4z+hejmpUvitPlc4hA7ERGoj2BVkesOcG91HCn8edLGUXbTrErmutmPbl8Bo9HjAvOO/zBKQHExXNA2A==", + "dependencies": { + "@typescript-eslint/types": "5.42.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/aria-query": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "dependencies": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", + "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==" + }, + "node_modules/axe-core": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.5.1.tgz", + "integrity": "sha512-1exVbW0X1O/HSr/WMwnaweyqcWOgZgLiVxdLG34pvSQk4NlYQr9OUy0JLwuhFfuVNQzzqgH57eYzkFBCb3bIsQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/core-js-pure": { + "version": "3.26.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.26.0.tgz", + "integrity": "sha512-LiN6fylpVBVwT8twhhluD9TzXmZQQsr2I2eIKtWNbZI1XMfBT7CV18itaN6RA7EtQd/SDdRx/wzvAShX2HvhQA==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/es-abstract": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "dependencies": { + "has": "^1.0.3" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.27.0.tgz", + "integrity": "sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==", + "dependencies": { + "@eslint/eslintrc": "^1.3.3", + "@humanwhocodes/config-array": "^0.11.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.15.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-next": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.0.2.tgz", + "integrity": "sha512-SrrHp+zBDYLjOFZdM5b9aW/pliK687Xxfa+qpDuL08Z04ReHhmz3L+maXaAqgrEVZHQximP7nh0El4yNDJW+CA==", + "dependencies": { + "@next/eslint-plugin-next": "13.0.2", + "@rushstack/eslint-patch": "^1.1.3", + "@typescript-eslint/parser": "^5.21.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^2.7.1", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsx-a11y": "^6.5.1", + "eslint-plugin-react": "^7.31.7", + "eslint-plugin-react-hooks": "^4.5.0" + }, + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "dependencies": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-import-resolver-typescript": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.7.1.tgz", + "integrity": "sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==", + "dependencies": { + "debug": "^4.3.4", + "glob": "^7.2.0", + "is-glob": "^4.0.3", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*" + } + }, + "node_modules/eslint-import-resolver-typescript/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", + "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", + "dependencies": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + } + }, + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz", + "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==", + "dependencies": { + "@babel/runtime": "^7.18.9", + "aria-query": "^4.2.2", + "array-includes": "^3.1.5", + "ast-types-flow": "^0.0.7", + "axe-core": "^4.4.3", + "axobject-query": "^2.2.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "has": "^1.0.3", + "jsx-ast-utils": "^3.3.2", + "language-tags": "^1.0.5", + "minimatch": "^3.1.2", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-jsx-a11y/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.31.10", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.10.tgz", + "integrity": "sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==", + "dependencies": { + "array-includes": "^3.1.5", + "array.prototype.flatmap": "^1.3.0", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.5", + "object.fromentries": "^2.0.5", + "object.hasown": "^1.1.1", + "object.values": "^1.1.5", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "dependencies": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "node_modules/fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/js-sdsl": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", + "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" + }, + "node_modules/json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "dependencies": { + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==" + }, + "node_modules/language-tags": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz", + "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==", + "dependencies": { + "language-subtag-registry": "~0.3.2" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "node_modules/next": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/next/-/next-13.0.2.tgz", + "integrity": "sha512-uQ5z5e4D9mOe8+upy6bQdYYjo/kk1v3jMW87kTy2TgAyAsEO+CkwRnMgyZ4JoHEnhPZLHwh7dk0XymRNLe1gFw==", + "dependencies": { + "@next/env": "13.0.2", + "@swc/helpers": "0.4.11", + "caniuse-lite": "^1.0.30001406", + "postcss": "8.4.14", + "styled-jsx": "5.1.0", + "use-sync-external-store": "1.2.0" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=14.6.0" + }, + "optionalDependencies": { + "@next/swc-android-arm-eabi": "13.0.2", + "@next/swc-android-arm64": "13.0.2", + "@next/swc-darwin-arm64": "13.0.2", + "@next/swc-darwin-x64": "13.0.2", + "@next/swc-freebsd-x64": "13.0.2", + "@next/swc-linux-arm-gnueabihf": "13.0.2", + "@next/swc-linux-arm64-gnu": "13.0.2", + "@next/swc-linux-arm64-musl": "13.0.2", + "@next/swc-linux-x64-gnu": "13.0.2", + "@next/swc-linux-x64-musl": "13.0.2", + "@next/swc-win32-arm64-msvc": "13.0.2", + "@next/swc-win32-ia32-msvc": "13.0.2", + "@next/swc-win32-x64-msvc": "13.0.2" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^6.0.0 || ^7.0.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "dependencies": { + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.4.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", + "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + } + ], + "dependencies": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + }, + "peerDependencies": { + "react": "^18.2.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/regenerator-runtime": { + "version": "0.13.10", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz", + "integrity": "sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.0.tgz", + "integrity": "sha512-/iHaRJt9U7T+5tp6TRelLnqBqiaIT0HsO0+vgyj8hK2KUk7aejFqRrumqPUlAqDwAj8IbS/1hk3IhBAAK/FCUQ==", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "node_modules/tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dependencies": { + "tslib": "^1.8.1" + }, + "engines": { + "node": ">= 6" + }, + "peerDependencies": { + "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", + "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, + "dependencies": { + "@babel/runtime": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz", + "integrity": "sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==", + "requires": { + "regenerator-runtime": "^0.13.10" + } + }, + "@babel/runtime-corejs3": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.20.1.tgz", + "integrity": "sha512-CGulbEDcg/ND1Im7fUNRZdGXmX2MTWVVZacQi/6DiKE5HNwZ3aVTm5PV4lO8HHz0B2h8WQyvKKjbX5XgTtydsg==", + "requires": { + "core-js-pure": "^3.25.1", + "regenerator-runtime": "^0.13.10" + } + }, + "@eslint/eslintrc": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", + "integrity": "sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==", + "requires": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.15.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + } + }, + "@humanwhocodes/config-array": { + "version": "0.11.7", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.7.tgz", + "integrity": "sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==", + "requires": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + } + }, + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==" + }, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==" + }, + "@next/env": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/env/-/env-13.0.2.tgz", + "integrity": "sha512-Qb6WPuRriGIQ19qd6NBxpcrFOfj8ziN7l9eZUfwff5gl4zLXluqtuZPddYZM/oWjN53ZYcuRXzL+oowKyJeYtA==" + }, + "@next/eslint-plugin-next": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.0.2.tgz", + "integrity": "sha512-W+fIIIaFU7Kct7Okx91C7XDRGolv/w2RUenX2yZFeeNVcuVzDIKUcNmckrYbYcwrNQUSXmtwrs3g8xwast0YtA==", + "requires": { + "glob": "7.1.7" + } + }, + "@next/swc-android-arm-eabi": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.0.2.tgz", + "integrity": "sha512-X54UQCTFyOGnJP//Z71dPPlp4BCYcQL2ncikKXQcPzVpqPs4C3m+tKC8ivBNH6edAXkppwsLRz1/yQwgSZ9Swg==", + "optional": true + }, + "@next/swc-android-arm64": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-13.0.2.tgz", + "integrity": "sha512-1P00Kv8uKaLubqo7JzPrTqgFAzSOmfb8iwqJrOb9in5IvTRtNGlkR4hU0sXzqbQNM/+SaYxze6Z5ry1IDyb/cQ==", + "optional": true + }, + "@next/swc-darwin-arm64": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.0.2.tgz", + "integrity": "sha512-1zGIOkInkOLRv0QQGZ+3wffYsyKI4vIy62LYTvDWUn7TAYqnmXwougp9NSLqDeagLwgsv2URrykyAFixA/YqxA==", + "optional": true + }, + "@next/swc-darwin-x64": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.0.2.tgz", + "integrity": "sha512-ECDAjoMP1Y90cARaelS6X+k6BQx+MikAYJ8f/eaJrLur44NIOYc9HA/dgcTp5jenguY4yT8V+HCquLjAVle6fA==", + "optional": true + }, + "@next/swc-freebsd-x64": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.0.2.tgz", + "integrity": "sha512-2DcL/ofQdBnQX3IoI9sjlIAyLCD1oZoUBuhrhWbejvBQjutWrI0JTEv9uG69WcxWhVMm3BCsjv8GK2/68OKp7A==", + "optional": true + }, + "@next/swc-linux-arm-gnueabihf": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.0.2.tgz", + "integrity": "sha512-Y3OQF1CSBSWW2vGkmvOIuOUNqOq8qX7f1ZpcKUVWP3/Uq++DZmVi9d18lgnSe1I3QFqc+nXWyun9ljsN83j0sw==", + "optional": true + }, + "@next/swc-linux-arm64-gnu": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.0.2.tgz", + "integrity": "sha512-mNyzwsFF6kwZYEjnGicx9ksDZYEZvyzEc1BtCu8vdZi/v8UeixQwCiAT6FyYX9uxMPEkzk8qiU0t0u9gvltsKw==", + "optional": true + }, + "@next/swc-linux-arm64-musl": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.0.2.tgz", + "integrity": "sha512-M6SdYjWgRrY3tJBxz0663zCRPTu5BRONmxlftKWWHv9LjAJ59neTLaGj4rp0A08DkJglZIoCkLOzLrzST6TGag==", + "optional": true + }, + "@next/swc-linux-x64-gnu": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.0.2.tgz", + "integrity": "sha512-pi63RoxvG4ES1KS06Zpm0MATVIXTs/TIbLbdckeLoM40u1d3mQl/+hSSrLRSxzc2OtyL8fh92sM4gkJrQXAMAw==", + "optional": true + }, + "@next/swc-linux-x64-musl": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.0.2.tgz", + "integrity": "sha512-9Pv91gfYnDONgjtRm78n64b/c54+azeHtlnqBLTnIFWSMBDRl1/WDkhKWIj3fBGPLimtK7Tko3ULR3og9RRUPw==", + "optional": true + }, + "@next/swc-win32-arm64-msvc": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.0.2.tgz", + "integrity": "sha512-Nvewe6YZaizAkGHHprbMkYqQulBjZCHKBGKeFPwoPtOA+a2Qi4pZzc/qXFyC5/2A6Z0mr2U1zg9rd04WBYMwBw==", + "optional": true + }, + "@next/swc-win32-ia32-msvc": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.0.2.tgz", + "integrity": "sha512-ZUBYGZw5G3QrqDpRq1EWi3aHmvPZM8ijK5TFL6UbH16cYQ0JpANmuG2P66KB93Qe/lWWzbeAZk/tj1XqwoCuPA==", + "optional": true + }, + "@next/swc-win32-x64-msvc": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.0.2.tgz", + "integrity": "sha512-fA9uW1dm7C0mEYGcKlbmLcVm2sKcye+1kPxh2cM4jVR+kQQMtHWsjIzeSpe2grQLSDan06z4n6hbr8b1c3hA8w==", + "optional": true + }, + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "requires": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" + }, + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "requires": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + } + }, + "@rushstack/eslint-patch": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz", + "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==" + }, + "@swc/helpers": { + "version": "0.4.11", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.4.11.tgz", + "integrity": "sha512-rEUrBSGIoSFuYxwBYtlUFMlE2CwGhmW+w9355/5oduSw8e5h2+Tj4UrAGNNgP9915++wj5vkQo0UuOBqOAq4nw==", + "requires": { + "tslib": "^2.4.0" + } + }, + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" + }, + "@types/node": { + "version": "18.11.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.9.tgz", + "integrity": "sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==" + }, + "@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "@types/react": { + "version": "18.0.25", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.25.tgz", + "integrity": "sha512-xD6c0KDT4m7n9uD4ZHi02lzskaiqcBxf4zi+tXZY98a04wvc0hi/TcCPC2FOESZi51Nd7tlUeOJY8RofL799/g==", + "requires": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "@types/react-dom": { + "version": "18.0.8", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.8.tgz", + "integrity": "sha512-C3GYO0HLaOkk9dDAz3Dl4sbe4AKUGTCfFIZsz3n/82dPNN8Du533HzKatDxeUYWu24wJgMP1xICqkWk1YOLOIw==", + "requires": { + "@types/react": "*" + } + }, + "@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" + }, + "@typescript-eslint/parser": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.42.1.tgz", + "integrity": "sha512-kAV+NiNBWVQDY9gDJDToTE/NO8BHi4f6b7zTsVAJoTkmB/zlfOpiEVBzHOKtlgTndCKe8vj9F/PuolemZSh50Q==", + "requires": { + "@typescript-eslint/scope-manager": "5.42.1", + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/typescript-estree": "5.42.1", + "debug": "^4.3.4" + } + }, + "@typescript-eslint/scope-manager": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.42.1.tgz", + "integrity": "sha512-QAZY/CBP1Emx4rzxurgqj3rUinfsh/6mvuKbLNMfJMMKYLRBfweus8brgXF8f64ABkIZ3zdj2/rYYtF8eiuksQ==", + "requires": { + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/visitor-keys": "5.42.1" + } + }, + "@typescript-eslint/types": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.42.1.tgz", + "integrity": "sha512-Qrco9dsFF5lhalz+lLFtxs3ui1/YfC6NdXu+RAGBa8uSfn01cjO7ssCsjIsUs484vny9Xm699FSKwpkCcqwWwA==" + }, + "@typescript-eslint/typescript-estree": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.42.1.tgz", + "integrity": "sha512-qElc0bDOuO0B8wDhhW4mYVgi/LZL+igPwXtV87n69/kYC/7NG3MES0jHxJNCr4EP7kY1XVsRy8C/u3DYeTKQmw==", + "requires": { + "@typescript-eslint/types": "5.42.1", + "@typescript-eslint/visitor-keys": "5.42.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + } + }, + "@typescript-eslint/visitor-keys": { + "version": "5.42.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.42.1.tgz", + "integrity": "sha512-LOQtSF4z+hejmpUvitPlc4hA7ERGoj2BVkesOcG91HCn8edLGUXbTrErmutmPbl8Bo9HjAvOO/zBKQHExXNA2A==", + "requires": { + "@typescript-eslint/types": "5.42.1", + "eslint-visitor-keys": "^3.3.0" + } + }, + "acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==" + }, + "acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "requires": {} + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "aria-query": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz", + "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==", + "requires": { + "@babel/runtime": "^7.10.2", + "@babel/runtime-corejs3": "^7.10.2" + } + }, + "array-includes": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.6.tgz", + "integrity": "sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "is-string": "^1.0.7" + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" + }, + "array.prototype.flat": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", + "integrity": "sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + } + }, + "array.prototype.flatmap": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", + "integrity": "sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "es-shim-unscopables": "^1.0.0" + } + }, + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==" + }, + "axe-core": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.5.1.tgz", + "integrity": "sha512-1exVbW0X1O/HSr/WMwnaweyqcWOgZgLiVxdLG34pvSQk4NlYQr9OUy0JLwuhFfuVNQzzqgH57eYzkFBCb3bIsQ==" + }, + "axobject-query": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", + "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" + }, + "caniuse-lite": { + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==" + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "core-js-pure": { + "version": "3.26.0", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.26.0.tgz", + "integrity": "sha512-LiN6fylpVBVwT8twhhluD9TzXmZQQsr2I2eIKtWNbZI1XMfBT7CV18itaN6RA7EtQd/SDdRx/wzvAShX2HvhQA==" + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "csstype": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", + "integrity": "sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==" + }, + "damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==" + }, + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" + }, + "define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "requires": { + "path-type": "^4.0.0" + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "requires": { + "esutils": "^2.0.2" + } + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "es-abstract": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + } + }, + "es-shim-unscopables": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", + "integrity": "sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "requires": { + "has": "^1.0.3" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" + }, + "eslint": { + "version": "8.27.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.27.0.tgz", + "integrity": "sha512-0y1bfG2ho7mty+SiILVf9PfuRA49ek4Nc60Wmmu62QlobNR+CeXa4xXIJgcuwSQgZiWaPH+5BDsctpIW0PR/wQ==", + "requires": { + "@eslint/eslintrc": "^1.3.3", + "@humanwhocodes/config-array": "^0.11.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.15.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + } + }, + "eslint-config-next": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.0.2.tgz", + "integrity": "sha512-SrrHp+zBDYLjOFZdM5b9aW/pliK687Xxfa+qpDuL08Z04ReHhmz3L+maXaAqgrEVZHQximP7nh0El4yNDJW+CA==", + "requires": { + "@next/eslint-plugin-next": "13.0.2", + "@rushstack/eslint-patch": "^1.1.3", + "@typescript-eslint/parser": "^5.21.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^2.7.1", + "eslint-plugin-import": "^2.26.0", + "eslint-plugin-jsx-a11y": "^6.5.1", + "eslint-plugin-react": "^7.31.7", + "eslint-plugin-react-hooks": "^4.5.0" + } + }, + "eslint-import-resolver-node": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz", + "integrity": "sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==", + "requires": { + "debug": "^3.2.7", + "resolve": "^1.20.0" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-import-resolver-typescript": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.7.1.tgz", + "integrity": "sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==", + "requires": { + "debug": "^4.3.4", + "glob": "^7.2.0", + "is-glob": "^4.0.3", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "dependencies": { + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } + } + }, + "eslint-module-utils": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.4.tgz", + "integrity": "sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==", + "requires": { + "debug": "^3.2.7" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "eslint-plugin-import": { + "version": "2.26.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.26.0.tgz", + "integrity": "sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==", + "requires": { + "array-includes": "^3.1.4", + "array.prototype.flat": "^1.2.5", + "debug": "^2.6.9", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-module-utils": "^2.7.3", + "has": "^1.0.3", + "is-core-module": "^2.8.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.values": "^1.1.5", + "resolve": "^1.22.0", + "tsconfig-paths": "^3.14.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "requires": { + "esutils": "^2.0.2" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, + "eslint-plugin-jsx-a11y": { + "version": "6.6.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz", + "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==", + "requires": { + "@babel/runtime": "^7.18.9", + "aria-query": "^4.2.2", + "array-includes": "^3.1.5", + "ast-types-flow": "^0.0.7", + "axe-core": "^4.4.3", + "axobject-query": "^2.2.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "has": "^1.0.3", + "jsx-ast-utils": "^3.3.2", + "language-tags": "^1.0.5", + "minimatch": "^3.1.2", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "eslint-plugin-react": { + "version": "7.31.10", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.31.10.tgz", + "integrity": "sha512-e4N/nc6AAlg4UKW/mXeYWd3R++qUano5/o+t+wnWxIf+bLsOaH3a4q74kX3nDjYym3VBN4HyO9nEn1GcAqgQOA==", + "requires": { + "array-includes": "^3.1.5", + "array.prototype.flatmap": "^1.3.0", + "doctrine": "^2.1.0", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.5", + "object.fromentries": "^2.0.5", + "object.hasown": "^1.1.1", + "object.values": "^1.1.5", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.3", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.7" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "requires": { + "esutils": "^2.0.2" + } + }, + "resolve": { + "version": "2.0.0-next.4", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.4.tgz", + "integrity": "sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, + "eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "requires": {} + }, + "eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + } + }, + "eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "requires": { + "eslint-visitor-keys": "^2.0.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" + } + } + }, + "eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==" + }, + "espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "requires": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + } + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "requires": { + "estraverse": "^5.1.0" + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "requires": { + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "dependencies": { + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "requires": { + "is-glob": "^4.0.1" + } + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" + }, + "fastq": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", + "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "requires": { + "reusify": "^1.0.4" + } + }, + "file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "requires": { + "flat-cache": "^3.0.4" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + } + }, + "flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" + }, + "get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "requires": { + "is-glob": "^4.0.3" + } + }, + "globals": { + "version": "13.17.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.17.0.tgz", + "integrity": "sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==", + "requires": { + "type-fest": "^0.20.2" + } + }, + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + } + }, + "grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "ignore": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", + "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==" + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" + }, + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "requires": { + "call-bind": "^1.0.2" + } + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "js-sdsl": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", + "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==" + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "requires": { + "argparse": "^2.0.1" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.0" + } + }, + "jsx-ast-utils": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", + "integrity": "sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "requires": { + "array-includes": "^3.1.5", + "object.assign": "^4.1.3" + } + }, + "language-subtag-registry": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==" + }, + "language-tags": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz", + "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==", + "requires": { + "language-subtag-registry": "~0.3.2" + } + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "requires": { + "p-locate": "^5.0.0" + } + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" + }, + "micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" + }, + "next": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/next/-/next-13.0.2.tgz", + "integrity": "sha512-uQ5z5e4D9mOe8+upy6bQdYYjo/kk1v3jMW87kTy2TgAyAsEO+CkwRnMgyZ4JoHEnhPZLHwh7dk0XymRNLe1gFw==", + "requires": { + "@next/env": "13.0.2", + "@next/swc-android-arm-eabi": "13.0.2", + "@next/swc-android-arm64": "13.0.2", + "@next/swc-darwin-arm64": "13.0.2", + "@next/swc-darwin-x64": "13.0.2", + "@next/swc-freebsd-x64": "13.0.2", + "@next/swc-linux-arm-gnueabihf": "13.0.2", + "@next/swc-linux-arm64-gnu": "13.0.2", + "@next/swc-linux-arm64-musl": "13.0.2", + "@next/swc-linux-x64-gnu": "13.0.2", + "@next/swc-linux-x64-musl": "13.0.2", + "@next/swc-win32-arm64-msvc": "13.0.2", + "@next/swc-win32-ia32-msvc": "13.0.2", + "@next/swc-win32-x64-msvc": "13.0.2", + "@swc/helpers": "0.4.11", + "caniuse-lite": "^1.0.30001406", + "postcss": "8.4.14", + "styled-jsx": "5.1.0", + "use-sync-external-store": "1.2.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "requires": { + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "requires": { + "p-limit": "^3.0.2" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "requires": { + "callsites": "^3.0.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + }, + "postcss": { + "version": "8.4.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", + "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" + }, + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" + }, + "react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "requires": { + "loose-envify": "^1.1.0" + } + }, + "react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "requires": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + } + }, + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "regenerator-runtime": { + "version": "0.13.10", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz", + "integrity": "sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==" + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "requires": { + "glob": "^7.1.3" + } + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "requires": { + "loose-envify": "^1.1.0" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + }, + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" + }, + "string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" + } + }, + "string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==" + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" + }, + "styled-jsx": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.0.tgz", + "integrity": "sha512-/iHaRJt9U7T+5tp6TRelLnqBqiaIT0HsO0+vgyj8hK2KUk7aejFqRrumqPUlAqDwAj8IbS/1hk3IhBAAK/FCUQ==", + "requires": { + "client-only": "0.0.1" + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "requires": { + "is-number": "^7.0.0" + } + }, + "tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } + }, + "tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + }, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "requires": { + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "requires": { + "prelude-ls": "^1.2.1" + } + }, + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" + }, + "typescript": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", + "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==" + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "requires": {} + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "requires": { + "isexe": "^2.0.0" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..9573983 --- /dev/null +++ b/package.json @@ -0,0 +1,22 @@ +{ + "name": "next-netflix-16th", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start", + "lint": "next lint" + }, + "dependencies": { + "@types/node": "18.11.9", + "@types/react": "18.0.25", + "@types/react-dom": "18.0.8", + "eslint": "8.27.0", + "eslint-config-next": "13.0.2", + "next": "13.0.2", + "react": "18.2.0", + "react-dom": "18.2.0", + "typescript": "4.8.4" + } +} diff --git a/pages/_app.tsx b/pages/_app.tsx new file mode 100644 index 0000000..c055f25 --- /dev/null +++ b/pages/_app.tsx @@ -0,0 +1,6 @@ +import '../styles/globals.css' +import type { AppProps } from 'next/app' + +export default function App({ Component, pageProps }: AppProps) { + return +} diff --git a/pages/api/hello.ts b/pages/api/hello.ts new file mode 100644 index 0000000..f8bcc7e --- /dev/null +++ b/pages/api/hello.ts @@ -0,0 +1,13 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next' + +type Data = { + name: string +} + +export default function handler( + req: NextApiRequest, + res: NextApiResponse +) { + res.status(200).json({ name: 'John Doe' }) +} diff --git a/pages/index.tsx b/pages/index.tsx new file mode 100644 index 0000000..cdffa57 --- /dev/null +++ b/pages/index.tsx @@ -0,0 +1,71 @@ +import Head from 'next/head' +import Image from 'next/image' +import styles from '../styles/Home.module.css' + +export default function Home() { + return ( +
+ + Create Next App + + + + +
+

+ Welcome to Next.js! +

+ +

+ Get started by editing{' '} + pages/index.tsx +

+ + +
+ + +
+ ) +} diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..718d6fea4835ec2d246af9800eddb7ffb276240c GIT binary patch literal 25931 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 LrJugUA?W`A8`#=m literal 0 HcmV?d00001 diff --git a/public/vercel.svg b/public/vercel.svg new file mode 100644 index 0000000..fbf0e25 --- /dev/null +++ b/public/vercel.svg @@ -0,0 +1,4 @@ + + + \ No newline at end of file diff --git a/styles/Home.module.css b/styles/Home.module.css new file mode 100644 index 0000000..bd50f42 --- /dev/null +++ b/styles/Home.module.css @@ -0,0 +1,129 @@ +.container { + padding: 0 2rem; +} + +.main { + min-height: 100vh; + padding: 4rem 0; + flex: 1; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} + +.footer { + display: flex; + flex: 1; + padding: 2rem 0; + border-top: 1px solid #eaeaea; + justify-content: center; + align-items: center; +} + +.footer a { + display: flex; + justify-content: center; + align-items: center; + flex-grow: 1; +} + +.title a { + color: #0070f3; + text-decoration: none; +} + +.title a:hover, +.title a:focus, +.title a:active { + text-decoration: underline; +} + +.title { + margin: 0; + line-height: 1.15; + font-size: 4rem; +} + +.title, +.description { + text-align: center; +} + +.description { + margin: 4rem 0; + line-height: 1.5; + font-size: 1.5rem; +} + +.code { + background: #fafafa; + border-radius: 5px; + padding: 0.75rem; + font-size: 1.1rem; + font-family: Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, + Bitstream Vera Sans Mono, Courier New, monospace; +} + +.grid { + display: flex; + align-items: center; + justify-content: center; + flex-wrap: wrap; + max-width: 800px; +} + +.card { + margin: 1rem; + padding: 1.5rem; + text-align: left; + color: inherit; + text-decoration: none; + border: 1px solid #eaeaea; + border-radius: 10px; + transition: color 0.15s ease, border-color 0.15s ease; + max-width: 300px; +} + +.card:hover, +.card:focus, +.card:active { + color: #0070f3; + border-color: #0070f3; +} + +.card h2 { + margin: 0 0 1rem 0; + font-size: 1.5rem; +} + +.card p { + margin: 0; + font-size: 1.25rem; + line-height: 1.5; +} + +.logo { + height: 1em; + margin-left: 0.5rem; +} + +@media (max-width: 600px) { + .grid { + width: 100%; + flex-direction: column; + } +} + +@media (prefers-color-scheme: dark) { + .card, + .footer { + border-color: #222; + } + .code { + background: #111; + } + .logo img { + filter: invert(1); + } +} diff --git a/styles/globals.css b/styles/globals.css new file mode 100644 index 0000000..4f18421 --- /dev/null +++ b/styles/globals.css @@ -0,0 +1,26 @@ +html, +body { + padding: 0; + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, + Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif; +} + +a { + color: inherit; + text-decoration: none; +} + +* { + box-sizing: border-box; +} + +@media (prefers-color-scheme: dark) { + html { + color-scheme: dark; + } + body { + color: white; + background: black; + } +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..99710e8 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "target": "es5", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "node", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], + "exclude": ["node_modules"] +} From e7aa6c5edf39d0969651dfaf5696f76463f7b8fb Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Thu, 10 Nov 2022 08:20:54 +0900 Subject: [PATCH 02/57] =?UTF-8?q?chore=20:=20=ED=8F=B4=EB=8D=94=20?= =?UTF-8?q?=EA=B5=AC=EC=A1=B0=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 63 +++++++++++++++ package.json | 3 + pages/index.tsx | 71 ---------------- public/img/Netflix_Logo_CMYK.png | Bin 0 -> 16491 bytes public/img/Netflix_Symbol_RGB.png | Bin 0 -> 57272 bytes public/img/netflix_5.gif | Bin 0 -> 234946 bytes {pages => src/pages}/_app.tsx | 2 +- {pages => src/pages}/api/hello.ts | 0 src/pages/home/index.tsx | 7 ++ src/pages/index.tsx | 35 ++++++++ styles/Home.module.css | 129 ------------------------------ styles/globals.css | 6 ++ 12 files changed, 115 insertions(+), 201 deletions(-) delete mode 100644 pages/index.tsx create mode 100644 public/img/Netflix_Logo_CMYK.png create mode 100644 public/img/Netflix_Symbol_RGB.png create mode 100644 public/img/netflix_5.gif rename {pages => src/pages}/_app.tsx (81%) rename {pages => src/pages}/api/hello.ts (100%) create mode 100644 src/pages/home/index.tsx create mode 100644 src/pages/index.tsx diff --git a/package-lock.json b/package-lock.json index 151fcc6..4fd5fd3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,6 +17,9 @@ "react": "18.2.0", "react-dom": "18.2.0", "typescript": "4.8.4" + }, + "devDependencies": { + "@types/styled-components": "^5.1.26" } }, "node_modules/@babel/runtime": { @@ -347,6 +350,16 @@ "tslib": "^2.4.0" } }, + "node_modules/@types/hoist-non-react-statics": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", + "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", + "dev": true, + "dependencies": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -385,6 +398,17 @@ "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" }, + "node_modules/@types/styled-components": { + "version": "5.1.26", + "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.26.tgz", + "integrity": "sha512-KuKJ9Z6xb93uJiIyxo/+ksS7yLjS1KzG6iv5i78dhVg/X3u5t1H7juRWqVmodIdz6wGVaIApo1u01kmFRdJHVw==", + "dev": true, + "dependencies": { + "@types/hoist-non-react-statics": "*", + "@types/react": "*", + "csstype": "^3.0.2" + } + }, "node_modules/@typescript-eslint/parser": { "version": "5.42.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.42.1.tgz", @@ -1613,6 +1637,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dev": true, + "dependencies": { + "react-is": "^16.7.0" + } + }, "node_modules/ignore": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", @@ -3062,6 +3095,16 @@ "tslib": "^2.4.0" } }, + "@types/hoist-non-react-statics": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", + "integrity": "sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==", + "dev": true, + "requires": { + "@types/react": "*", + "hoist-non-react-statics": "^3.3.0" + } + }, "@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -3100,6 +3143,17 @@ "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" }, + "@types/styled-components": { + "version": "5.1.26", + "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.26.tgz", + "integrity": "sha512-KuKJ9Z6xb93uJiIyxo/+ksS7yLjS1KzG6iv5i78dhVg/X3u5t1H7juRWqVmodIdz6wGVaIApo1u01kmFRdJHVw==", + "dev": true, + "requires": { + "@types/hoist-non-react-statics": "*", + "@types/react": "*", + "csstype": "^3.0.2" + } + }, "@typescript-eslint/parser": { "version": "5.42.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.42.1.tgz", @@ -3974,6 +4028,15 @@ "has-symbols": "^1.0.2" } }, + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dev": true, + "requires": { + "react-is": "^16.7.0" + } + }, "ignore": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", diff --git a/package.json b/package.json index 9573983..fe53e03 100644 --- a/package.json +++ b/package.json @@ -18,5 +18,8 @@ "react": "18.2.0", "react-dom": "18.2.0", "typescript": "4.8.4" + }, + "devDependencies": { + "@types/styled-components": "^5.1.26" } } diff --git a/pages/index.tsx b/pages/index.tsx deleted file mode 100644 index cdffa57..0000000 --- a/pages/index.tsx +++ /dev/null @@ -1,71 +0,0 @@ -import Head from 'next/head' -import Image from 'next/image' -import styles from '../styles/Home.module.css' - -export default function Home() { - return ( - - ) -} diff --git a/public/img/Netflix_Logo_CMYK.png b/public/img/Netflix_Logo_CMYK.png new file mode 100644 index 0000000000000000000000000000000000000000..4afe4978b4d839a79e7faf73fd3b0af3cfdfcd0f GIT binary patch literal 16491 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 b3}65-{$(m8^!t%#C}TPr`p0tA$$|d|_PdoX literal 0 HcmV?d00001 diff --git a/public/img/Netflix_Symbol_RGB.png b/public/img/Netflix_Symbol_RGB.png new file mode 100644 index 0000000000000000000000000000000000000000..032e621ac9f4e334d0fb020c408037cdeb5f5c22 GIT binary patch literal 57272 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�^Ys39%dFsCJH z$;vro8)r2z{*uKrE0!L|(_M4a7yW8VPvR~`BbQ6Fo(}0C?p2MM0TT92*cboIb)#lk za~w*7*kSFjzBp0s+g~~g;Vt@ib1=6*F%r+{zBnlp5xD*aBjm|{ zJ$m=Bff5gZr`6jbd&Nip_|r%{Y@Mv)7<=~O6dsPYe-E3W^RpFmZ34?vl^TA?B;d`D z@`YbV!dl*eozrKssBJdwtQ})YA+W5_lt18?ML#?#(KOCg4;->~*JAt3U7gml&yQP} zIK6o%lkt=1_q*=(m6`i6a^dd_k!x@mtY6z;;;Ss(*z`8(eh=;O5Vz854$~ zf##QkI8#-m*OpFCsnwde-F&8*#nR6^d=*~?4<4V7>+*SrAgbOfC;{eZL3Hn2Y+SS< zW-it~sUH4mQ1*<>)NG5uCMuSj949%!DYJ67_(g{xr5@Wgr!O1 zd{^2ppZ&(|NaVONB+i;wDfFjQ>+lCTwb`bm1^JB>-RM%O=8G&%p9_&OC{xpXQMS*J zvGb(M1?4FeI^pOSO0bkR)oo%=aIz)kutP;L%u1_w3#{=3L4t9k&!Sx3szE%9?^&$V9&W (AdceqC? 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 z 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 + ) +} diff --git a/styles/Home.module.css b/styles/Home.module.css index bd50f42..e69de29 100644 --- a/styles/Home.module.css +++ b/styles/Home.module.css @@ -1,129 +0,0 @@ -.container { - padding: 0 2rem; -} - -.main { - min-height: 100vh; - padding: 4rem 0; - flex: 1; - display: flex; - flex-direction: column; - justify-content: center; - align-items: center; -} - -.footer { - display: flex; - flex: 1; - padding: 2rem 0; - border-top: 1px solid #eaeaea; - justify-content: center; - align-items: center; -} - -.footer a { - display: flex; - justify-content: center; - align-items: center; - flex-grow: 1; -} - -.title a { - color: #0070f3; - text-decoration: none; -} - -.title a:hover, -.title a:focus, -.title a:active { - text-decoration: underline; -} - -.title { - margin: 0; - line-height: 1.15; - font-size: 4rem; -} - -.title, -.description { - text-align: center; -} - -.description { - margin: 4rem 0; - line-height: 1.5; - font-size: 1.5rem; -} - -.code { - background: #fafafa; - border-radius: 5px; - padding: 0.75rem; - font-size: 1.1rem; - font-family: Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, - Bitstream Vera Sans Mono, Courier New, monospace; -} - -.grid { - display: flex; - align-items: center; - justify-content: center; - flex-wrap: wrap; - max-width: 800px; -} - -.card { - margin: 1rem; - padding: 1.5rem; - text-align: left; - color: inherit; - text-decoration: none; - border: 1px solid #eaeaea; - border-radius: 10px; - transition: color 0.15s ease, border-color 0.15s ease; - max-width: 300px; -} - -.card:hover, -.card:focus, -.card:active { - color: #0070f3; - border-color: #0070f3; -} - -.card h2 { - margin: 0 0 1rem 0; - font-size: 1.5rem; -} - -.card p { - margin: 0; - font-size: 1.25rem; - line-height: 1.5; -} - -.logo { - height: 1em; - margin-left: 0.5rem; -} - -@media (max-width: 600px) { - .grid { - width: 100%; - flex-direction: column; - } -} - -@media (prefers-color-scheme: dark) { - .card, - .footer { - border-color: #222; - } - .code { - background: #111; - } - .logo img { - filter: invert(1); - } -} diff --git a/styles/globals.css b/styles/globals.css index 4f18421..c66e510 100644 --- a/styles/globals.css +++ b/styles/globals.css @@ -1,5 +1,11 @@ html, body { + display: flex; + height: 100vh; + justify-content: center; + align-items: center; + background-color: black; + color: white; padding: 0; margin: 0; font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, From 718b2ef71c8cae37d73777b5444ba4b113dd5c0e Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Thu, 10 Nov 2022 17:39:08 +0900 Subject: [PATCH 03/57] =?UTF-8?q?feat=20:=20footer=20=EA=B8=B0=EB=8A=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 779 ++++++++++++++++++++++++++- package.json | 1 + public/img/Footer/Comingsoon-2.png | Bin 0 -> 344 bytes public/img/Footer/Comingsoon.png | Bin 0 -> 337 bytes public/img/Footer/Downloads-2.png | Bin 0 -> 286 bytes public/img/Footer/Downloads.png | Bin 0 -> 305 bytes public/img/Footer/Home-2.png | Bin 0 -> 370 bytes public/img/Footer/Home.png | Bin 0 -> 390 bytes public/img/Footer/More-2.png | Bin 0 -> 211 bytes public/img/Footer/More.png | Bin 0 -> 199 bytes public/img/Footer/Search-2.png | Bin 0 -> 481 bytes public/img/Footer/Search.png | Bin 0 -> 476 bytes src/assets/FooterInfo.json | 27 + src/components/common/Footer.tsx | 43 ++ src/components/common/FooterItem.tsx | 50 ++ src/interfaces/interface.tsx | 5 + src/pages/home/index.tsx | 19 +- 17 files changed, 919 insertions(+), 5 deletions(-) create mode 100644 public/img/Footer/Comingsoon-2.png create mode 100644 public/img/Footer/Comingsoon.png create mode 100644 public/img/Footer/Downloads-2.png create mode 100644 public/img/Footer/Downloads.png create mode 100644 public/img/Footer/Home-2.png create mode 100644 public/img/Footer/Home.png create mode 100644 public/img/Footer/More-2.png create mode 100644 public/img/Footer/More.png create mode 100644 public/img/Footer/Search-2.png create mode 100644 public/img/Footer/Search.png create mode 100644 src/assets/FooterInfo.json create mode 100644 src/components/common/Footer.tsx create mode 100644 src/components/common/FooterItem.tsx create mode 100644 src/interfaces/interface.tsx diff --git a/package-lock.json b/package-lock.json index 4fd5fd3..cd849ff 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,12 +16,205 @@ "next": "13.0.2", "react": "18.2.0", "react-dom": "18.2.0", + "styled-components": "^5.3.6", "typescript": "4.8.4" }, "devDependencies": { "@types/styled-components": "^5.1.26" } }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "dependencies": { + "@babel/types": "^7.20.2", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "dependencies": { + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", + "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/runtime": { "version": "7.20.1", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz", @@ -45,6 +238,83 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/template": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz", + "integrity": "sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==", + "dependencies": { + "@emotion/memoize": "^0.8.0" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz", + "integrity": "sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==" + }, + "node_modules/@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "node_modules/@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, "node_modules/@eslint/eslintrc": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", @@ -97,6 +367,49 @@ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==" }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, "node_modules/@next/env": { "version": "13.0.2", "resolved": "https://registry.npmjs.org/@next/env/-/env-13.0.2.tgz", @@ -656,6 +969,26 @@ "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" }, + "node_modules/babel-plugin-styled-components": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", + "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + }, + "peerDependencies": { + "styled-components": ">= 2" + } + }, + "node_modules/babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -701,6 +1034,14 @@ "node": ">=6" } }, + "node_modules/camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/caniuse-lite": { "version": "1.0.30001431", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", @@ -780,6 +1121,24 @@ "node": ">= 8" } }, + "node_modules/css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/css-to-react-native": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.0.0.tgz", + "integrity": "sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ==", + "dependencies": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, "node_modules/csstype": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", @@ -1641,7 +2000,6 @@ "version": "3.3.2", "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "dev": true, "dependencies": { "react-is": "^16.7.0" } @@ -1917,6 +2275,17 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -1989,6 +2358,11 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", @@ -2365,6 +2739,11 @@ "node": "^10 || ^12 || >=14" } }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -2574,6 +2953,11 @@ "node": ">=10" } }, + "node_modules/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -2696,6 +3080,55 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/styled-components": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.6.tgz", + "integrity": "sha512-hGTZquGAaTqhGWldX7hhfzjnIYBZ0IXQXkCYdvF1Sq3DsUaLx6+NTHC5Jj1ooM2F68sBiVz3lvhfwQs/S3l6qg==", + "hasInstallScript": true, + "dependencies": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^1.1.0", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/styled-components" + }, + "peerDependencies": { + "react": ">= 16.8.0", + "react-dom": ">= 16.8.0", + "react-is": ">= 16.8.0" + } + }, + "node_modules/styled-components/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/styled-components/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/styled-jsx": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.0.tgz", @@ -2745,6 +3178,14 @@ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -2915,6 +3356,146 @@ } }, "dependencies": { + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/generator": { + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "requires": { + "@babel/types": "^7.20.2", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" + }, + "@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "requires": { + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "@babel/parser": { + "version": "7.20.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.3.tgz", + "integrity": "sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==" + }, "@babel/runtime": { "version": "7.20.1", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.1.tgz", @@ -2932,6 +3513,73 @@ "regenerator-runtime": "^0.13.10" } }, + "@babel/template": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + } + }, + "@babel/traverse": { + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + } + } + }, + "@babel/types": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + }, + "@emotion/is-prop-valid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz", + "integrity": "sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==", + "requires": { + "@emotion/memoize": "^0.8.0" + } + }, + "@emotion/memoize": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz", + "integrity": "sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==" + }, + "@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, "@eslint/eslintrc": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.3.3.tgz", @@ -2968,6 +3616,40 @@ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==" }, + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, "@next/env": { "version": "13.0.2", "resolved": "https://registry.npmjs.org/@next/env/-/env-13.0.2.tgz", @@ -3305,6 +3987,23 @@ "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA==" }, + "babel-plugin-styled-components": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.7.tgz", + "integrity": "sha512-i7YhvPgVqRKfoQ66toiZ06jPNA3p6ierpfUuEWxNF+fV27Uv5gxBkf8KZLHUCc1nFA9j6+80pYoIpqCeyW3/bA==", + "requires": { + "@babel/helper-annotate-as-pure": "^7.16.0", + "@babel/helper-module-imports": "^7.16.0", + "babel-plugin-syntax-jsx": "^6.18.0", + "lodash": "^4.17.11", + "picomatch": "^2.3.0" + } + }, + "babel-plugin-syntax-jsx": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "integrity": "sha512-qrPaCSo9c8RHNRHIotaufGbuOBN8rtdC4QrrFFc43vyWCCz7Kl7GL1PGaXtMGQZUXrkCjNEgxDfmAuAabr/rlw==" + }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -3341,6 +4040,11 @@ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" }, + "camelize": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", + "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==" + }, "caniuse-lite": { "version": "1.0.30001431", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", @@ -3393,6 +4097,21 @@ "which": "^2.0.1" } }, + "css-color-keywords": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", + "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==" + }, + "css-to-react-native": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.0.0.tgz", + "integrity": "sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ==", + "requires": { + "camelize": "^1.0.0", + "css-color-keywords": "^1.0.0", + "postcss-value-parser": "^4.0.2" + } + }, "csstype": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.1.tgz", @@ -4032,7 +4751,6 @@ "version": "3.3.2", "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "dev": true, "requires": { "react-is": "^16.7.0" } @@ -4218,6 +4936,11 @@ "argparse": "^2.0.1" } }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" + }, "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -4275,6 +4998,11 @@ "p-locate": "^5.0.0" } }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, "lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", @@ -4519,6 +5247,11 @@ "source-map-js": "^1.0.2" } }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, "prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -4648,6 +5381,11 @@ "lru-cache": "^6.0.0" } }, + "shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, "shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -4734,6 +5472,38 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, + "styled-components": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.6.tgz", + "integrity": "sha512-hGTZquGAaTqhGWldX7hhfzjnIYBZ0IXQXkCYdvF1Sq3DsUaLx6+NTHC5Jj1ooM2F68sBiVz3lvhfwQs/S3l6qg==", + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^1.1.0", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" + }, + "dependencies": { + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, "styled-jsx": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.0.tgz", @@ -4760,6 +5530,11 @@ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" + }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", diff --git a/package.json b/package.json index fe53e03..6f1994d 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "next": "13.0.2", "react": "18.2.0", "react-dom": "18.2.0", + "styled-components": "^5.3.6", "typescript": "4.8.4" }, "devDependencies": { diff --git a/public/img/Footer/Comingsoon-2.png b/public/img/Footer/Comingsoon-2.png new file mode 100644 index 0000000000000000000000000000000000000000..1fb350c7a4cfa1baa34daf513106895319101aa0 GIT binary patch literal 344 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85kt5fiR=Q#ZzyAf^R)t978<3w@z{7YIfjpjlHFOW2tS^7d5A9 z&epPri&$fK6kN9U_kHSYR2Mzx90&iC|MOXltZx3`mrjq`3#p^R~wO;X9 z`zlqsIo+XH!8t_#wuHi&J^2%?q#2@_`&>6(GMUX>)68PubNIoz(5;skS3YLrl=>TV z{oRD;v-e%v;n?IRp69zcN)jwC+f$n##uj_EpqZtY?~ifgx-77Qce%6kT(5_;&-r8Q z`)~2zrYnWcVT`%@MS+XX^T;cN=bh-)GX1j4%|UWwMBF6)AL-AVvR-W7)ACMcMVnnn f52vW|#GU3xu9aMiwVJse=y3*5S3j3^P6!~%L6SnA_-u=|> zo50LcxgLd6`#6tS|7U3YK6}~D3M~PBz6Pn>+tYTf+x>&%NH_C>Z*}*-uUz-Ke`iG@ z!|8PiHraM literal 0 HcmV?d00001 diff --git a/public/img/Footer/Downloads-2.png b/public/img/Footer/Downloads-2.png new file mode 100644 index 0000000000000000000000000000000000000000..b32c91c68d68f5598a38dcda3d2f57c42927a780 GIT binary patch literal 286 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85kt5fiR=Q#ZzyAf}1^E978<3-%fVqYBmsXjlK2RBVWO`u{+Lb z;og?n_bktf^GyD+f^E5VEBmw5Xa8Go98v!xIc44g7rW1U9Lnt-I%8OO1JMq#JGadC z95cMLTW{wkhw@n$-@Ia&^6=t!%>vzxtVORQHBts$KabUuTptDnm{r-UW|9OrI& literal 0 HcmV?d00001 diff --git a/public/img/Footer/Downloads.png b/public/img/Footer/Downloads.png new file mode 100644 index 0000000000000000000000000000000000000000..67034aa7fa5a46ea7290062c4b508dbf62adb803 GIT binary patch literal 305 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85kt5fiR=Q#ZzyAg2y~v978<3w@z;4Y%vgE(LE@ndo<{chqcw+ zdh;U|GN+!4vz6%GWIp)NJ= literal 0 HcmV?d00001 diff --git a/public/img/Footer/Home-2.png b/public/img/Footer/Home-2.png new file mode 100644 index 0000000000000000000000000000000000000000..7058f72d5c30cb318505e0c55db65c1e5eb4a986 GIT binary patch literal 370 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85kt5fiR=Q#ZzyA8rVHu978<3-%fGlYcddUjeI2df#Zm@fWL!M z=cE^`5fzLP6C4^?%V^lJ)ZOpX>(T5LyUl3`{xiV#G%;Z@Y zQhY1UNHL3ka9M8fr^4&^TLa^dX6sq`^v@f~&iZUW`}0AaV#Z@`DJOj$*U#L__w0af zUnip>&*lxE!!H)Eu$-`brQ8yu6%S%U{9+m2SYDaO9L)TyjJd|_H|Mfm?~2Kb57jd- zb8G$2=F`hndpqm1)SEgctrh-XqztmZ3-`3FO+2a#M!f|O80DCle{tKY>;r}qgQu&X J%Q~loCIGlDkI(=B literal 0 HcmV?d00001 diff --git a/public/img/Footer/Home.png b/public/img/Footer/Home.png new file mode 100644 index 0000000000000000000000000000000000000000..78a451cf83975625d1d68de892d8354ccf191548 GIT binary patch literal 390 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85kt5fiR=Q#ZzyA8l*j4978<3w@x|O+iW1wmwlQ1r>NC-av+Jh@0C<@UA(b!o=pmo7wH-&(P1 z)uPQVQf!}XrYB1D>AK$9#>@1!q-|~Ql7&-JHBWD9>AhCUd%ke_%tgk9?pqr71zt8u z+-TINT>6BT^zB@AM?9o2Jdcn5;U1@@aLcx^ntiLSp<$tgGAkFwPhoNSk(1der z2cB!<<$MVLQ@7jf!2J*T7q-^zzZ?8vi%Ct8l$|E8ywPO&d$ZR+lq8s=X!JX%{Oy5 zcZW5;{FA9%47Q^ z-Z#<*?l>q!PV&34Kc8ocbb$M=sW~7;n_5JEGq7)%&vawg|2IH889ZJ6T-G@yGywo5 Cx=N`4 literal 0 HcmV?d00001 diff --git a/public/img/Footer/More.png b/public/img/Footer/More.png new file mode 100644 index 0000000000000000000000000000000000000000..dd3003d3491b6f553a0c081ea6192353d44aa8d4 GIT binary patch literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`GjjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCij$3p^r=85kt5fiR=Q#ZzyAf-#;hjv*f2cP|@qF&J<#ANc1}zs!ESuAkGf z6vG0ANTVt9rVBNz3hT^FIC-UA=`@?sKX0D1H2Y orJ$oJn@FUY0*kj=#H2a9ZXCUEuE}kF8PFaEPgg&ebxsLQ00U`0x&QzG literal 0 HcmV?d00001 diff --git a/public/img/Footer/Search-2.png b/public/img/Footer/Search-2.png new file mode 100644 index 0000000000000000000000000000000000000000..70e28e057dec114f158bbd892ffda7a622c85cb1 GIT binary patch literal 481 zcmV<70UrK|P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGt)&Kw*)&UsN%IyFE0d`45K~zXfwUjY$ z!Y~kp8R>-5jc&kC0kMGEg`opTEDRk0wW=6e35FnOCI0i(pDhzRaV%02q$i#4-o5jk zFSOK88b;7rCxT9mLBB8K;ZWXID@pfz4QzbGLOB5xoe%A{Ea!8%oX=6ffg93r;5(kW zUHRJWv_N_|$jfx9Z;KGX#zzbeTypX{4zdFRR-92hCW%Y*Kn#v866qv6EEkKbxa*I> z7GYeWxPmcg9U`sAZk`8RJFb$4H^z80(j?~V1aAU48_NHU7x<7R<5onyQ>g_u1h;AKK@3E0@zrUT3plTp>H~ zSl<=?Dzv!b{-miSolcOa;5+!^vPEe9c`}hfucwOxYgK=4qvpP^*JT@6aA=|( zR}74Wn}2LJ`dm`PJ9yyH*bK(Sjst9b?t>y4DUu1^1Gh+SNqpixutgdxP=cVdCbZ-a X0SWGPx#1ZP1_K>z@;j|==^1poj532;bRa{vGt)&Kw*)&UsN%IyFE0dYx0K~zXfwUphl zfj?Z*@b1Vj*yu%W>5Y$+2E=bSr|cb zP6SECZnu;DelJ;;$@BSCpu=Gc#RM=WlO&PLs;jkh25;M%>pg)knlIM9Y>-E}o^neW?gqTPt{o#7OY5;*QAA=QPTp@dlPN8*# z)?+sx0$&@~#KU*W;c!qV=Ia~@K(RPZp`N7(aKn%in60mp5 z90kY`uy@MhBU=2C?H0`O+chNyndrVh*oVd+n#;%Vcsw-bd_D*5E&2nGRaKP+P$bp~ zw)_3AzD?6enx;X&7CylrmldJ)-Ey#+wC^Bfg?g4ZCo*7EZn>( z3O!F0@eUq%G&Y0vW5)qHoco|8jTGq<{sOniU`c$(UtmQBADr*B0D|O9SjivLE{Jlp Sp)PX(0000 + { + footerInfo.map((f)=>{ + const select = router.pathname === '/'+f.alt; + return ( + + ) + }) + } + + ); +}; + +const Container = styled.div` + position : fixed; + + // 중앙 정렬 + left: 50%; + transform: translate(-50%, 0); + + bottom: 0; + + width: 375px; + height: 48px; + + display: flex; + justify-content: space-evenly; +` diff --git a/src/components/common/FooterItem.tsx b/src/components/common/FooterItem.tsx new file mode 100644 index 0000000..2282bbd --- /dev/null +++ b/src/components/common/FooterItem.tsx @@ -0,0 +1,50 @@ +import { IFooter } from "../../interfaces/interface" +import Image from 'next/image'; +import styled from 'styled-components'; +import { useRouter } from "next/router"; +import { useEffect, useState } from "react"; + +export default function FooterItem({alt,name,selected}:IFooter){ + let src = ''; + if (selected){ + src = '/img/Footer/'+name+'.png' + }else{ + src = '/img/Footer/'+name+'-2.png' + } + + return ( + + + {alt} + + {name} + + + + ) +} + +const Container = styled.div` + display: flex; + flex-direction: column; + align-items: center; +` + +const StyledFont = styled.div` + font-size: 8.2px; +` + +const StyledButton = styled.button<{select : boolean}>` + border: 0; + outline: 0; + background: black; + color: #8C8787; + color: ${ + ({select}) => (select? 'white' : '#8C8787') + } +` \ No newline at end of file diff --git a/src/interfaces/interface.tsx b/src/interfaces/interface.tsx new file mode 100644 index 0000000..f34aaca --- /dev/null +++ b/src/interfaces/interface.tsx @@ -0,0 +1,5 @@ +export interface IFooter{ + alt: string; + name: string; + selected: boolean; +} \ No newline at end of file diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index 802c564..ac046c0 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -1,7 +1,20 @@ +import Footer from "../../components/common/Footer" +import styled from 'styled-components' + export default function Home(){ return ( - <> + home - +
+ ) -}; \ No newline at end of file +}; + +const Container = styled.div` + background: blue; + display: flex; + justify-content: center; + align-items: center; + width: 375px; + +` \ No newline at end of file From 26cb3e08ea9d8226555f2066264cf97a768b4fe7 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Thu, 10 Nov 2022 23:16:06 +0900 Subject: [PATCH 04/57] =?UTF-8?q?feat=20:=20footer=EC=97=90=20router=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Footer.tsx | 25 +++++++++++++++++++------ src/components/common/FooterItem.tsx | 1 + src/pages/search/index.tsx | 9 +++++++++ 3 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 src/pages/search/index.tsx diff --git a/src/components/common/Footer.tsx b/src/components/common/Footer.tsx index 71476a1..30c9508 100644 --- a/src/components/common/Footer.tsx +++ b/src/components/common/Footer.tsx @@ -7,18 +7,28 @@ export default function Footer(){ const router = useRouter(); const footerInfo = FooterInfo; + const handleClick = (name:string) => { + if(name === 'Home'){ + router.push('/home'); + }else if (name === 'Search'){ + router.push('/search'); + } + } + return( { footerInfo.map((f)=>{ const select = router.pathname === '/'+f.alt; return ( - + handleClick(f.name)}> + + ) }) } @@ -41,3 +51,6 @@ const Container = styled.div` display: flex; justify-content: space-evenly; ` +const ItemButton = styled.div` + +` \ No newline at end of file diff --git a/src/components/common/FooterItem.tsx b/src/components/common/FooterItem.tsx index 2282bbd..0880a5e 100644 --- a/src/components/common/FooterItem.tsx +++ b/src/components/common/FooterItem.tsx @@ -12,6 +12,7 @@ export default function FooterItem({alt,name,selected}:IFooter){ src = '/img/Footer/'+name+'-2.png' } + return ( diff --git a/src/pages/search/index.tsx b/src/pages/search/index.tsx new file mode 100644 index 0000000..7a359ba --- /dev/null +++ b/src/pages/search/index.tsx @@ -0,0 +1,9 @@ +import Footer from "../../components/common/Footer" +export default function Search(){ + return( + <> + Search +
+ + ) +} \ No newline at end of file From 86f634d0cacd8a5ae15d4bfce07dfc95085e67f4 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 01:21:11 +0900 Subject: [PATCH 05/57] =?UTF-8?q?test=20:=20home=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=EC=97=90=20movie=20api=20=EC=A0=81=EC=9A=A9=ED=95=B4?= =?UTF-8?q?=EB=B3=B4=EA=B8=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 152 +++++++++++++++++++++++++++++++++++ package.json | 1 + src/interfaces/interface.tsx | 24 ++++++ src/pages/home/index.tsx | 16 +++- 4 files changed, 192 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index cd849ff..fb6f791 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "@types/node": "18.11.9", "@types/react": "18.0.25", "@types/react-dom": "18.0.8", + "axios": "^1.1.3", "eslint": "8.27.0", "eslint-config-next": "13.0.2", "next": "13.0.2", @@ -956,6 +957,11 @@ "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==" }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, "node_modules/axe-core": { "version": "4.5.1", "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.5.1.tgz", @@ -964,6 +970,16 @@ "node": ">=4" } }, + "node_modules/axios": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.1.3.tgz", + "integrity": "sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==", + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, "node_modules/axobject-query": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", @@ -1093,6 +1109,17 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -1185,6 +1212,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -1802,6 +1837,38 @@ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -2410,6 +2477,25 @@ "node": ">=8.6" } }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -2762,6 +2848,11 @@ "react-is": "^16.13.1" } }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "node_modules/punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -3977,11 +4068,26 @@ "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==" }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, "axe-core": { "version": "4.5.1", "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.5.1.tgz", "integrity": "sha512-1exVbW0X1O/HSr/WMwnaweyqcWOgZgLiVxdLG34pvSQk4NlYQr9OUy0JLwuhFfuVNQzzqgH57eYzkFBCb3bIsQ==" }, + "axios": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.1.3.tgz", + "integrity": "sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==", + "requires": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, "axobject-query": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz", @@ -4077,6 +4183,14 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "requires": { + "delayed-stream": "~1.0.0" + } + }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -4144,6 +4258,11 @@ "object-keys": "^1.1.1" } }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" + }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -4616,6 +4735,21 @@ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==" }, + "follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" + }, + "form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -5038,6 +5172,19 @@ "picomatch": "^2.3.1" } }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, "minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -5267,6 +5414,11 @@ "react-is": "^16.13.1" } }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", diff --git a/package.json b/package.json index 6f1994d..ff6a432 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "@types/node": "18.11.9", "@types/react": "18.0.25", "@types/react-dom": "18.0.8", + "axios": "^1.1.3", "eslint": "8.27.0", "eslint-config-next": "13.0.2", "next": "13.0.2", diff --git a/src/interfaces/interface.tsx b/src/interfaces/interface.tsx index f34aaca..8b5cf15 100644 --- a/src/interfaces/interface.tsx +++ b/src/interfaces/interface.tsx @@ -2,4 +2,28 @@ export interface IFooter{ alt: string; name: string; selected: boolean; +} + +export interface IMovieInfo{ + adult: boolean; + backdrop_path: string; + genre_ids: number[]; + id: number; + original_language: string; + original_title: string; + overview: string; + poster_path: string; + release_date: string; + title: string; + video: boolean; + vote_average: number; + vote_count: number; + popularity: number; +} + +export interface IData{ + page: number; + results: IMovieInfo[]; + total_pages: number; + total_results: number; } \ No newline at end of file diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index ac046c0..1f671e4 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -1,7 +1,10 @@ import Footer from "../../components/common/Footer" import styled from 'styled-components' +import axios from 'axios'; +import { IData } from "../../interfaces/interface"; -export default function Home(){ +export default function Home(data:IData){ + console.log(data); return ( home @@ -10,6 +13,17 @@ export default function Home(){ ) }; +export async function getServerSideProps(){ + // Fetch data from external API + const res = await axios.get(`https://api.themoviedb.org/3/trending/all/day?api_key=0c75b9faeb39691a7d8e7af98ee5f303`) + const data = res.data; + + console.log(data); + + // Pass data to the page via props + return { props: { data } } +} + const Container = styled.div` background: blue; display: flex; From b6bd0bedbb9f32d3fbc78aca28880c11201036d0 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 11:00:48 +0900 Subject: [PATCH 06/57] =?UTF-8?q?feat=20:=20nowPlayingMovies=20api=20data?= =?UTF-8?q?=20=EB=B6=88=EB=9F=AC=EC=98=A4=EA=B8=B0=20=ED=85=8C=EC=8A=A4?= =?UTF-8?q?=ED=8A=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 231 ++++++++++++++++++++++++++++++ package.json | 2 + src/api/Movies.tsx | 6 + src/components/home/MovieList.tsx | 10 ++ src/hooks/api/movie.tsx | 6 + src/pages/_app.tsx | 12 +- src/pages/home/index.tsx | 54 +++++-- 7 files changed, 311 insertions(+), 10 deletions(-) create mode 100644 src/api/Movies.tsx create mode 100644 src/components/home/MovieList.tsx create mode 100644 src/hooks/api/movie.tsx diff --git a/package-lock.json b/package-lock.json index fb6f791..8294abc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "next-netflix-16th", "version": "0.1.0", "dependencies": { + "@tanstack/react-query": "^4.14.5", "@types/node": "18.11.9", "@types/react": "18.0.25", "@types/react-dom": "18.0.8", @@ -17,6 +18,7 @@ "next": "13.0.2", "react": "18.2.0", "react-dom": "18.2.0", + "react-query": "^3.39.2", "styled-components": "^5.3.6", "typescript": "4.8.4" }, @@ -664,6 +666,41 @@ "tslib": "^2.4.0" } }, + "node_modules/@tanstack/query-core": { + "version": "4.14.5", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-4.14.5.tgz", + "integrity": "sha512-Su1AyrPb6xnm7wXTvpN5tt+B7LViYSh9k04vvuc6+eMVH0HkE9ktZTXibRrTvV83BI1KP5MG7v/k90ne/4zQzw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/@tanstack/react-query": { + "version": "4.14.5", + "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-4.14.5.tgz", + "integrity": "sha512-CuWl/SxSB0zHhHaTja8LNhy9Vdk+vk9IkW3Oiq3lo4gPnTguHmbUzfjEA1x3RfvPeHfPMuq/pYMSbV+CX4aDQA==", + "dependencies": { + "@tanstack/query-core": "4.14.5", + "use-sync-external-store": "^1.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0", + "react-native": "*" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, "node_modules/@types/hoist-non-react-statics": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", @@ -1010,6 +1047,14 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "engines": { + "node": ">=0.6" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1030,6 +1075,21 @@ "node": ">=8" } }, + "node_modules/broadcast-channel": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", + "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", + "dependencies": { + "@babel/runtime": "^7.7.2", + "detect-node": "^2.1.0", + "js-sha3": "0.8.0", + "microseconds": "0.2.0", + "nano-time": "1.0.0", + "oblivious-set": "1.0.0", + "rimraf": "3.0.2", + "unload": "2.2.0" + } + }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -1220,6 +1280,11 @@ "node": ">=0.4.0" } }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -2326,6 +2391,11 @@ "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==" }, + "node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -2457,6 +2527,15 @@ "node": ">=10" } }, + "node_modules/match-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", + "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "remove-accents": "0.4.2" + } + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -2477,6 +2556,11 @@ "node": ">=8.6" } }, + "node_modules/microseconds": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", + "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" + }, "node_modules/mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", @@ -2520,6 +2604,14 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, + "node_modules/nano-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", + "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", + "dependencies": { + "big-integer": "^1.6.16" + } + }, "node_modules/nanoid": { "version": "3.3.4", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", @@ -2686,6 +2778,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/oblivious-set": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", + "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" + }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -2908,6 +3005,31 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, + "node_modules/react-query": { + "version": "3.39.2", + "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.2.tgz", + "integrity": "sha512-F6hYDKyNgDQfQOuR1Rsp3VRzJnWHx6aRnnIZHMNGGgbL3SBgpZTDg8MQwmxOgpCAoqZJA+JSNCydF1xGJqKOCA==", + "dependencies": { + "@babel/runtime": "^7.5.5", + "broadcast-channel": "^3.4.1", + "match-sorter": "^6.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, "node_modules/regenerator-runtime": { "version": "0.13.10", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz", @@ -2940,6 +3062,11 @@ "url": "https://github.com/sponsors/mysticatea" } }, + "node_modules/remove-accents": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", + "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" + }, "node_modules/resolve": { "version": "1.22.1", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", @@ -3371,6 +3498,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/unload": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", + "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", + "dependencies": { + "@babel/runtime": "^7.6.2", + "detect-node": "^2.0.4" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -3868,6 +4004,20 @@ "tslib": "^2.4.0" } }, + "@tanstack/query-core": { + "version": "4.14.5", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-4.14.5.tgz", + "integrity": "sha512-Su1AyrPb6xnm7wXTvpN5tt+B7LViYSh9k04vvuc6+eMVH0HkE9ktZTXibRrTvV83BI1KP5MG7v/k90ne/4zQzw==" + }, + "@tanstack/react-query": { + "version": "4.14.5", + "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-4.14.5.tgz", + "integrity": "sha512-CuWl/SxSB0zHhHaTja8LNhy9Vdk+vk9IkW3Oiq3lo4gPnTguHmbUzfjEA1x3RfvPeHfPMuq/pYMSbV+CX4aDQA==", + "requires": { + "@tanstack/query-core": "4.14.5", + "use-sync-external-store": "^1.2.0" + } + }, "@types/hoist-non-react-statics": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", @@ -4115,6 +4265,11 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==" + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -4132,6 +4287,21 @@ "fill-range": "^7.0.1" } }, + "broadcast-channel": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/broadcast-channel/-/broadcast-channel-3.7.0.tgz", + "integrity": "sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==", + "requires": { + "@babel/runtime": "^7.7.2", + "detect-node": "^2.1.0", + "js-sha3": "0.8.0", + "microseconds": "0.2.0", + "nano-time": "1.0.0", + "oblivious-set": "1.0.0", + "rimraf": "3.0.2", + "unload": "2.2.0" + } + }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -4263,6 +4433,11 @@ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" }, + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -5057,6 +5232,11 @@ "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.1.5.tgz", "integrity": "sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==" }, + "js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -5158,6 +5338,15 @@ "yallist": "^4.0.0" } }, + "match-sorter": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/match-sorter/-/match-sorter-6.3.1.tgz", + "integrity": "sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==", + "requires": { + "@babel/runtime": "^7.12.5", + "remove-accents": "0.4.2" + } + }, "merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -5172,6 +5361,11 @@ "picomatch": "^2.3.1" } }, + "microseconds": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/microseconds/-/microseconds-0.2.0.tgz", + "integrity": "sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==" + }, "mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", @@ -5203,6 +5397,14 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, + "nano-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nano-time/-/nano-time-1.0.0.tgz", + "integrity": "sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==", + "requires": { + "big-integer": "^1.6.16" + } + }, "nanoid": { "version": "3.3.4", "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", @@ -5304,6 +5506,11 @@ "es-abstract": "^1.20.4" } }, + "oblivious-set": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.0.0.tgz", + "integrity": "sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==" + }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -5451,6 +5658,16 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, + "react-query": { + "version": "3.39.2", + "resolved": "https://registry.npmjs.org/react-query/-/react-query-3.39.2.tgz", + "integrity": "sha512-F6hYDKyNgDQfQOuR1Rsp3VRzJnWHx6aRnnIZHMNGGgbL3SBgpZTDg8MQwmxOgpCAoqZJA+JSNCydF1xGJqKOCA==", + "requires": { + "@babel/runtime": "^7.5.5", + "broadcast-channel": "^3.4.1", + "match-sorter": "^6.0.2" + } + }, "regenerator-runtime": { "version": "0.13.10", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz", @@ -5471,6 +5688,11 @@ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" }, + "remove-accents": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/remove-accents/-/remove-accents-0.4.2.tgz", + "integrity": "sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==" + }, "resolve": { "version": "1.22.1", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", @@ -5755,6 +5977,15 @@ "which-boxed-primitive": "^1.0.2" } }, + "unload": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unload/-/unload-2.2.0.tgz", + "integrity": "sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==", + "requires": { + "@babel/runtime": "^7.6.2", + "detect-node": "^2.0.4" + } + }, "uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", diff --git a/package.json b/package.json index ff6a432..1633da6 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "lint": "next lint" }, "dependencies": { + "@tanstack/react-query": "^4.14.5", "@types/node": "18.11.9", "@types/react": "18.0.25", "@types/react-dom": "18.0.8", @@ -18,6 +19,7 @@ "next": "13.0.2", "react": "18.2.0", "react-dom": "18.2.0", + "react-query": "^3.39.2", "styled-components": "^5.3.6", "typescript": "4.8.4" }, diff --git a/src/api/Movies.tsx b/src/api/Movies.tsx new file mode 100644 index 0000000..edea067 --- /dev/null +++ b/src/api/Movies.tsx @@ -0,0 +1,6 @@ +import axios from 'axios'; + +export const getNowPlaying = async () => { + const { data } = await axios.get(`https://api.themoviedb.org/3/movie/now_playing?api_key=0c75b9faeb39691a7d8e7af98ee5f303&language=en-US&page=1`); + return data; +} \ No newline at end of file diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx new file mode 100644 index 0000000..044a5a1 --- /dev/null +++ b/src/components/home/MovieList.tsx @@ -0,0 +1,10 @@ + + +export default function MovieList({movies}:any){ + console.log('movieList:',movies); + return( + <> + + + ) +} \ No newline at end of file diff --git a/src/hooks/api/movie.tsx b/src/hooks/api/movie.tsx new file mode 100644 index 0000000..cb6a410 --- /dev/null +++ b/src/hooks/api/movie.tsx @@ -0,0 +1,6 @@ +import { useQuery } from '@tanstack/react-query'; +import * as api from '../../api/Movies'; + +export const useNowPlaying = () => { + return useQuery(['NowPlaying'], () => api.getNowPlaying()); +} \ No newline at end of file diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index fbcd497..f0ee5a2 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,6 +1,16 @@ import '../../styles/globals.css' import type { AppProps } from 'next/app' +import { Hydrate, QueryClient, QueryClientProvider} from '@tanstack/react-query' +import React from 'react'; export default function App({ Component, pageProps }: AppProps) { - return + const [queryClient] = React.useState(() => new QueryClient()); + + return ( + + + + + + ) } diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index 1f671e4..e6dab61 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -2,28 +2,64 @@ import Footer from "../../components/common/Footer" import styled from 'styled-components' import axios from 'axios'; import { IData } from "../../interfaces/interface"; +import { getNowPlaying } from "../../api/Movies"; +import { use } from "react"; +import { useNowPlaying } from "../../hooks/api/movie"; +import { dehydrate, QueryClient } from '@tanstack/react-query'; +import MovieList from '../../components/home/MovieList' + +export default function Home(){ + + // const {data:IData} = await getData(); + // console.log(data); + + const { data : nowPlayingMovies, isLoading } = useNowPlaying(); + + if (isLoading) return null; -export default function Home(data:IData){ - console.log(data); return ( home +
) }; -export async function getServerSideProps(){ - // Fetch data from external API - const res = await axios.get(`https://api.themoviedb.org/3/trending/all/day?api_key=0c75b9faeb39691a7d8e7af98ee5f303`) - const data = res.data; +export const getServerSideProps = async () => { - console.log(data); + const queryClient = new QueryClient() - // Pass data to the page via props - return { props: { data } } + // prefetch data on the server + await queryClient.fetchQuery(['NowPlaying'], () => getNowPlaying()) + + return { + props: { + // dehydrate query cache + dehydratedState: dehydrate(queryClient), + }, + } } +// next 13 +// export async function getData(){ +// const res = await fetch("https://api.themoviedb.org/3/trending/all/day?api_key=0c75b9faeb39691a7d8e7af98ee5f303",{ +// cache: "no-store" +// }); +// const data = await res.json(); +// return data; +// } + +// 이전 방식 +// export async function getServerSideProps(){ +// // Fetch data from external API +// const res = await axios.get(`https://api.themoviedb.org/3/trending/all/day?api_key=0c75b9faeb39691a7d8e7af98ee5f303`) +// const data = res.data; + +// // Pass data to the page via props +// return { props: { data } } +// } + const Container = styled.div` background: blue; display: flex; From e2b59311e15539a440e34a6b45b3ed1526a3538f Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 12:29:14 +0900 Subject: [PATCH 07/57] =?UTF-8?q?feat=20:=20nowPlaying=EC=97=90=20movie=20?= =?UTF-8?q?image=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/home/MovieList.tsx | 36 ++++++++++++++++++++++++++----- src/components/home/TextInfo.tsx | 10 +++++++++ src/pages/home/index.tsx | 9 +++----- 3 files changed, 44 insertions(+), 11 deletions(-) create mode 100644 src/components/home/TextInfo.tsx diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index 044a5a1..885626e 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -1,10 +1,36 @@ - +import styled from 'styled-components'; +import Image from 'next/image' export default function MovieList({movies}:any){ console.log('movieList:',movies); return( - <> - - + + { + movies.map((m:any) => ( + <> + + + )) + } + ) -} \ No newline at end of file +} + +const Container = styled.div` + display: flex; + width: 375px; + overflow-y: auto; +` + +const ImageMovie = styled.img` + object-fit: cover; + width: 103px; + height: 161px; + margin-right: 7px; +` \ No newline at end of file diff --git a/src/components/home/TextInfo.tsx b/src/components/home/TextInfo.tsx new file mode 100644 index 0000000..9918837 --- /dev/null +++ b/src/components/home/TextInfo.tsx @@ -0,0 +1,10 @@ + + +export default function TextInfo({name}:any){ + return( + <> + {name} + + ) + +} \ No newline at end of file diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index e6dab61..c28e396 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -7,19 +7,17 @@ import { use } from "react"; import { useNowPlaying } from "../../hooks/api/movie"; import { dehydrate, QueryClient } from '@tanstack/react-query'; import MovieList from '../../components/home/MovieList' +import TextInfo from "../../components/home/TextInfo"; export default function Home(){ - // const {data:IData} = await getData(); - // console.log(data); - const { data : nowPlayingMovies, isLoading } = useNowPlaying(); if (isLoading) return null; return ( - home +
@@ -61,10 +59,9 @@ export const getServerSideProps = async () => { // } const Container = styled.div` - background: blue; display: flex; + flex-direction: column; justify-content: center; align-items: center; width: 375px; - ` \ No newline at end of file From cbe7100193cf2bfc92738412d70502ee86a1cef6 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 12:39:36 +0900 Subject: [PATCH 08/57] =?UTF-8?q?feat=20:=20home=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=EC=97=90=20top=20rated=20movie=20list=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/Movies.tsx | 8 +++++++- src/assets/config.tsx | 1 + src/components/home/MovieList.tsx | 4 +--- src/hooks/api/movie.tsx | 4 ++++ src/pages/home/index.tsx | 18 +++++++++++------- 5 files changed, 24 insertions(+), 11 deletions(-) create mode 100644 src/assets/config.tsx diff --git a/src/api/Movies.tsx b/src/api/Movies.tsx index edea067..6e445c1 100644 --- a/src/api/Movies.tsx +++ b/src/api/Movies.tsx @@ -1,6 +1,12 @@ import axios from 'axios'; +import {API_KEY} from '../assets/config'; export const getNowPlaying = async () => { - const { data } = await axios.get(`https://api.themoviedb.org/3/movie/now_playing?api_key=0c75b9faeb39691a7d8e7af98ee5f303&language=en-US&page=1`); + const { data } = await axios.get(`https://api.themoviedb.org/3/movie/now_playing?api_key=${API_KEY}&language=en-US&page=1`); + return data; +} + +export const getTopRated = async () => { + const {data} = await axios.get(`https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1`); return data; } \ No newline at end of file diff --git a/src/assets/config.tsx b/src/assets/config.tsx new file mode 100644 index 0000000..c93603a --- /dev/null +++ b/src/assets/config.tsx @@ -0,0 +1 @@ +export const API_KEY = '0c75b9faeb39691a7d8e7af98ee5f303'; \ No newline at end of file diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index 885626e..c9ff6c7 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -2,20 +2,18 @@ import styled from 'styled-components'; import Image from 'next/image' export default function MovieList({movies}:any){ - console.log('movieList:',movies); return( { movies.map((m:any) => ( - <> - )) } diff --git a/src/hooks/api/movie.tsx b/src/hooks/api/movie.tsx index cb6a410..a3d6c9e 100644 --- a/src/hooks/api/movie.tsx +++ b/src/hooks/api/movie.tsx @@ -3,4 +3,8 @@ import * as api from '../../api/Movies'; export const useNowPlaying = () => { return useQuery(['NowPlaying'], () => api.getNowPlaying()); +} + +export const useTopRated = () => { + return useQuery(['TopRated'], () => api.getTopRated()); } \ No newline at end of file diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index c28e396..fedb0fc 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -2,23 +2,25 @@ import Footer from "../../components/common/Footer" import styled from 'styled-components' import axios from 'axios'; import { IData } from "../../interfaces/interface"; -import { getNowPlaying } from "../../api/Movies"; -import { use } from "react"; -import { useNowPlaying } from "../../hooks/api/movie"; +import { getNowPlaying, getTopRated } from "../../api/Movies"; +import { useNowPlaying, useTopRated } from "../../hooks/api/movie"; import { dehydrate, QueryClient } from '@tanstack/react-query'; import MovieList from '../../components/home/MovieList' import TextInfo from "../../components/home/TextInfo"; export default function Home(){ - const { data : nowPlayingMovies, isLoading } = useNowPlaying(); + const { data : nowPlayingMovies } = useNowPlaying(); + + const { data : topRatedMovies} = useTopRated(); - if (isLoading) return null; return ( - + + +
) @@ -29,7 +31,9 @@ export const getServerSideProps = async () => { const queryClient = new QueryClient() // prefetch data on the server - await queryClient.fetchQuery(['NowPlaying'], () => getNowPlaying()) + await queryClient.fetchQuery(['NowPlaying'], () => getNowPlaying()); + + await queryClient.fetchQuery(['TopRated'], ()=> getTopRated()); return { props: { From d8891188e872a2824114454e89f294ac2b7c26da Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 12:46:53 +0900 Subject: [PATCH 09/57] =?UTF-8?q?feat=20:=20popular=20movie=20=ED=99=88?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=EC=97=90=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/Movies.tsx | 5 +++++ src/components/common/Footer.tsx | 1 + src/hooks/api/movie.tsx | 4 ++++ src/pages/home/index.tsx | 10 ++++++++-- 4 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/api/Movies.tsx b/src/api/Movies.tsx index 6e445c1..30264c8 100644 --- a/src/api/Movies.tsx +++ b/src/api/Movies.tsx @@ -9,4 +9,9 @@ export const getNowPlaying = async () => { export const getTopRated = async () => { const {data} = await axios.get(`https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1`); return data; +} + +export const getPopular = async () => { + const {data} = await axios.get(`https://api.themoviedb.org/3/movie/popular?api_key=${API_KEY}&language=en-US&page=1`); + return data; } \ No newline at end of file diff --git a/src/components/common/Footer.tsx b/src/components/common/Footer.tsx index 30c9508..d562991 100644 --- a/src/components/common/Footer.tsx +++ b/src/components/common/Footer.tsx @@ -38,6 +38,7 @@ export default function Footer(){ const Container = styled.div` position : fixed; + background: black; // 중앙 정렬 left: 50%; diff --git a/src/hooks/api/movie.tsx b/src/hooks/api/movie.tsx index a3d6c9e..2f4b2ee 100644 --- a/src/hooks/api/movie.tsx +++ b/src/hooks/api/movie.tsx @@ -7,4 +7,8 @@ export const useNowPlaying = () => { export const useTopRated = () => { return useQuery(['TopRated'], () => api.getTopRated()); +} + +export const usePopular = () => { + return useQuery(['Popular'], () => api.getPopular()); } \ No newline at end of file diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index fedb0fc..57aa084 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -2,8 +2,8 @@ import Footer from "../../components/common/Footer" import styled from 'styled-components' import axios from 'axios'; import { IData } from "../../interfaces/interface"; -import { getNowPlaying, getTopRated } from "../../api/Movies"; -import { useNowPlaying, useTopRated } from "../../hooks/api/movie"; +import { getNowPlaying, getTopRated, getPopular } from "../../api/Movies"; +import { useNowPlaying, useTopRated, usePopular } from "../../hooks/api/movie"; import { dehydrate, QueryClient } from '@tanstack/react-query'; import MovieList from '../../components/home/MovieList' import TextInfo from "../../components/home/TextInfo"; @@ -14,6 +14,8 @@ export default function Home(){ const { data : topRatedMovies} = useTopRated(); + const { data : popularMovies } = usePopular(); + return ( @@ -21,6 +23,8 @@ export default function Home(){ + +
) @@ -35,6 +39,8 @@ export const getServerSideProps = async () => { await queryClient.fetchQuery(['TopRated'], ()=> getTopRated()); + await queryClient.fetchQuery(['Popular'], () => getPopular()); + return { props: { // dehydrate query cache From eab70b339a45daa71eca47cec0d46f0bf437ae85 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 14:04:31 +0900 Subject: [PATCH 10/57] =?UTF-8?q?chore=20:=20home=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=20=EC=8A=A4=ED=83=80=EC=9D=BC=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/Movies.tsx | 5 +++++ src/components/common/Header.tsx | 13 +++++++++++++ src/components/home/MovieList.tsx | 30 +++++++++++++++++++++++------- src/components/home/TextInfo.tsx | 21 ++++++++++++++++----- src/hooks/api/movie.tsx | 5 +++++ src/pages/home/index.tsx | 28 ++++++++++++++++++---------- 6 files changed, 80 insertions(+), 22 deletions(-) create mode 100644 src/components/common/Header.tsx diff --git a/src/api/Movies.tsx b/src/api/Movies.tsx index 30264c8..97a5500 100644 --- a/src/api/Movies.tsx +++ b/src/api/Movies.tsx @@ -14,4 +14,9 @@ export const getTopRated = async () => { export const getPopular = async () => { const {data} = await axios.get(`https://api.themoviedb.org/3/movie/popular?api_key=${API_KEY}&language=en-US&page=1`); return data; +} + +export const getUpComing = async () => { + const {data} = await axios.get(`https://api.themoviedb.org/3/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1`); + return data; } \ No newline at end of file diff --git a/src/components/common/Header.tsx b/src/components/common/Header.tsx new file mode 100644 index 0000000..eda57e5 --- /dev/null +++ b/src/components/common/Header.tsx @@ -0,0 +1,13 @@ +import styled from 'styled-components'; + +export default function Header(){ + return( + + header + + ) +} + +const Container = styled.div` + margin-top: 415px; +` \ No newline at end of file diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index c9ff6c7..cfaa853 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -1,18 +1,17 @@ -import styled from 'styled-components'; +import styled, { css } from 'styled-components'; import Image from 'next/image' -export default function MovieList({movies}:any){ +export default function MovieList({movies, isPreview}:any){ + console.log(isPreview); return( { movies.map((m:any) => ( )) } @@ -24,11 +23,28 @@ const Container = styled.div` display: flex; width: 375px; overflow-y: auto; + &::-webkit-scrollbar { + display: none; + } ` +interface ImageProps { + isCircle: boolean; +} -const ImageMovie = styled.img` +const ImageMovie = styled.img` object-fit: cover; width: 103px; height: 161px; margin-right: 7px; -` \ No newline at end of file + margin-bottom: 52px; + + ${(props) => + props.isCircle === true && + css` + width: 102px; + height: 102px; + border-radius: 50%; + margin-bottom: 66px; + `}; + +` diff --git a/src/components/home/TextInfo.tsx b/src/components/home/TextInfo.tsx index 9918837..96ef9b6 100644 --- a/src/components/home/TextInfo.tsx +++ b/src/components/home/TextInfo.tsx @@ -1,10 +1,21 @@ +import styled, { css } from 'styled-components'; - -export default function TextInfo({name}:any){ +export default function TextInfo({name, isPreview}:any){ + console.log(isPreview) return( - <> + {name} - + ) -} \ No newline at end of file +} + +interface Props { + isPreview: boolean; +} + +const Container = styled.div` + font-weight: 700; + margin-bottom: 14px; + font-size: ${props => props.isPreview ? "26.75px" : "20.92px"} +` \ No newline at end of file diff --git a/src/hooks/api/movie.tsx b/src/hooks/api/movie.tsx index 2f4b2ee..c553ccf 100644 --- a/src/hooks/api/movie.tsx +++ b/src/hooks/api/movie.tsx @@ -1,4 +1,5 @@ import { useQuery } from '@tanstack/react-query'; +import { appendFile } from 'fs'; import * as api from '../../api/Movies'; export const useNowPlaying = () => { @@ -11,4 +12,8 @@ export const useTopRated = () => { export const usePopular = () => { return useQuery(['Popular'], () => api.getPopular()); +} + +export const useUpComing = () => { + return useQuery(['UpComing'], () => api.getUpComing()); } \ No newline at end of file diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index 57aa084..a4a3d88 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -2,11 +2,12 @@ import Footer from "../../components/common/Footer" import styled from 'styled-components' import axios from 'axios'; import { IData } from "../../interfaces/interface"; -import { getNowPlaying, getTopRated, getPopular } from "../../api/Movies"; -import { useNowPlaying, useTopRated, usePopular } from "../../hooks/api/movie"; +import { getNowPlaying, getTopRated, getPopular, getUpComing } from "../../api/Movies"; +import { useNowPlaying, useTopRated, usePopular, useUpComing } from "../../hooks/api/movie"; import { dehydrate, QueryClient } from '@tanstack/react-query'; import MovieList from '../../components/home/MovieList' import TextInfo from "../../components/home/TextInfo"; +import Header from "../../components/common/Header"; export default function Home(){ @@ -16,15 +17,20 @@ export default function Home(){ const { data : popularMovies } = usePopular(); + const { data : upComingMovies } = useUpComing(); + return ( - - - - - - +
+ + + + + + + +
) @@ -41,6 +47,8 @@ export const getServerSideProps = async () => { await queryClient.fetchQuery(['Popular'], () => getPopular()); + await queryClient.fetchQuery(['UpComing'], () => getUpComing()); + return { props: { // dehydrate query cache @@ -71,7 +79,7 @@ export const getServerSideProps = async () => { const Container = styled.div` display: flex; flex-direction: column; - justify-content: center; - align-items: center; width: 375px; + // overflow:visible + // margin-top: 300px; ` \ No newline at end of file From 1d51cca0d376bcc73b1bf9cd42cdd352b5a970cd Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 15:03:46 +0900 Subject: [PATCH 11/57] =?UTF-8?q?feat=20:=20home=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=20=EC=A4=91=EA=B0=84=20=EB=B0=94=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/img/Header/Info.png | Bin 0 -> 904 bytes public/img/Header/MyList.png | Bin 0 -> 244 bytes public/img/Header/Play.png | Bin 0 -> 1806 bytes src/components/home/FirstMovie.tsx | 72 +++++++++++++++++++++++++++++ src/components/home/MovieList.tsx | 1 - src/components/home/TextInfo.tsx | 4 +- src/interfaces/interface.tsx | 5 ++ src/pages/home/index.tsx | 2 + styles/globals.css | 3 +- 9 files changed, 82 insertions(+), 5 deletions(-) create mode 100644 public/img/Header/Info.png create mode 100644 public/img/Header/MyList.png create mode 100644 public/img/Header/Play.png create mode 100644 src/components/home/FirstMovie.tsx diff --git a/public/img/Header/Info.png b/public/img/Header/Info.png new file mode 100644 index 0000000000000000000000000000000000000000..a87402e6adbfeef8aa1a9f93c94097210975f872 GIT binary patch literal 904 zcmV;319$w1P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGt)&Kw*)&UsN%IyFE106|3K~z{r#hHOo z>o5>RQvw}?5-1@h&;fKnI!HQz4nhae0VPlZC8Pv@o)SCf&Dxf1<+C$8qllAqI<4-M zu=+(amv?t}&Ew-^^ZNSQe0+Q~KR-Xs@px=n(Ek4ZZoa<0k`1Wc8+qh*(4{T zb0uJNIPd1ppzX9|5u#WN%=P^IY}Xp0?dVHYizgM-r57Sor$~M?mXQ!4u?b1vKu!>Ht_!bexBtTtm(!D z+Ri~|kw(Gs4U##A9G`Idy3;vZaAZYfPA9n$r~4gfR)O|7O0}&;qV4oO5TMHk2I_8^ zsD=cl=$ytEv-af!=_O)dz|F`hYQVTNVs~ngmK3+p>=ap3Ayx6z(BmL&1*2>}Jw2r; zF&}MbGes>@%oYBAD!GceQivPJac46{)>ed^ze@YxOi3tHdwMoJ3#Q);UH{QPWIS}bl^ zf=j8{BFQ!0YOwS>SB*T}QWFC6uFmZaZeR)HMM(=7n-VIjJFIXvB~(b6(n>;e z-Fm&YgLA2HHn}7LM35j>T9%hoC#Y~XxzwVT%5&|)p>Q_2w7%6Y%?f9eOOaK18IleEQq9j?G!lvI6;>1s;*b3=ERjK$ubD;;FYl!A?&X$B+p3w-*m`9#G(EO>{3{F)wFvFA#Ar zXxYNH*QSUgY(=~Hj|D88_9lCjryESqTPl*dcIBMSKaZV^*>yE4_3V#r_bg_5o3|;z z;ey4AhHkc-7Js)hcG+f1!PsY)dKEk1@P&`Z1a|EY WOtU1+&j8)Tz~JfX=d#Wzp$P!uXjI<- literal 0 HcmV?d00001 diff --git a/public/img/Header/Play.png b/public/img/Header/Play.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0413b4c7cd0979785b5f67a49e77e5889e6399 GIT binary patch literal 1806 zcmah~`#;l*8=u>lRhvxaHk*;0A*?8tv8LQZau&xma+#etlNMi!FPhsZGVCMCWykls^ACK#uh;WD@8@~HpXd4MdA*)&FVD04Rkc+?Akcmn zXR?nBr)2K00+z+`GheRDK#uNnmIUJV>n_O(#YjgFM-Yft0F{O+$!bWP^F=xcq&4=B z%OQu}u7E(`N*A)DFC%EBY{>hw1;WYXru?UJgoB(!U-c14W?Q%9kH{z@!XY?_ONnSM zpaxj79ve@Woy5CI=T7ho5@^Poed8Uh_@tx>T8n5E0C>sC$;fm zu++E;Bj)#=9am@uymv+_ZMO?mmt|PpMIMC2{EPuIj@%TeSAY(lW6C=dFskVPOL#Ri zw$iw%T1Wk>Vt~#9rH*H9ZIvULk{l=iTJ7JENF0_kBw0FuK~8yv(qy)#w-mvS$DzEW zh@g10ATn^CQ3(MIsLXO<$g|TI%xgNHKUeKTbLgGtE5w9^-QMkJSHfVDG($y9U$iPd zVDT5<`(b(cf*`j^n|K3+vqa}ihsKfIJf~t*~%9s&tjpr zWsPYbDT*UvsnL{G9jV(nk7m}Y+8 z+uN%&bB;JcCJ?6T*MvOSXu$U7KrVicP(&2Jst#P;Ig%}Klfa2LuqZN*CYLCs6yZ>F zS~~MPuaZ2c)h*I~u{|vUGn_3B7I@L6bw)8(-e?2Qu}?l{2vc3-f5z%H`mE@mdwBD^ zGu2f5HLv-JQnrmlKJe9M*7Av%Rf0v?8U=J2gc~j*xkrDVxNT|FQdFasZ9}2~^rwti zawv_Sc-eY5&rBirvEOJTzC_#fntxF`?b7lofjb(odJ?f==iAO08{*5w-hHc9P}X^l zgTL>)IR`O#TF=A&lA+gNF!uX|_H73C5vPY$njE+!v;fS_%{#N2Vy#Q{n@wVmo%H)x z*Sc`qAAsXl-Y`2ZPKIN*blC=EU@Vv$F9a|f_;Dn5&g!XH;dW_wB?Sfsm zeBPbcf-V=O1Y{n=!>k40rv|fYtcz3-035nYJ z2CVwt(*lJ}dc~=rNS^~AIDWD-v~Rja={sVEYGbhJe~SxiAcH0oNe`QwEJrWNHXIxX zs0+V)Xss}JQthxBa^jHqR|MriGHv)D5k5ez3m-)ur+KKh4eDtvD|Yoi7!`G-jkB7r z0}{CxJ+5b>0f%Xuu-T6n@^Y9NOD^zal470<-q1{M1`}dms6= zzMgspm3fbanYeZk35liUw^Vkv7pwoYS$PwxIZi7 zzUIEmWLwGS%(!0T{8W;=a;5I7k`DKyTJOt8N5N<`iafJ@+nHpl1jcQJ>A&ADDq4kc Y%f}9V$$a&*?1zC|oIJ@~Qb_uL0Vv)_0ssI2 literal 0 HcmV?d00001 diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx new file mode 100644 index 0000000..525e872 --- /dev/null +++ b/src/components/home/FirstMovie.tsx @@ -0,0 +1,72 @@ +import styled, { css } from 'styled-components'; +import Image from 'next/image' +import Play from '../../../public/img/Header/Play.png' +import Info from '../../../public/img/Header/Info.png' +import MyList from '../../../public/img/Header/MyList.png' + +export default function FirstMovie({movies}:any){ + const len_movies = movies.length; + const rand_0_len = Math.floor(Math.random()*len_movies) + + return( + + firstmovie + + + + {"list"} +
+ My List +
+ + {"Play"} + + + {"Info"} +
+ Info +
+
+
+ ) +} + +const Container = styled.div` + display: flex; + flex-direction: column; +` + +const MiddleItem = styled.div` + display: flex; + justify-content: space-evenly; + margin-bottom: 43px; +` + +const Item = styled.div` + align-items: center; + text-align: center; +` +const ImageMovie = styled.img` + object-fit: cover; + height: 415px; + margin-bottom: 13px; + margin-top: 415px; + +` diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index cfaa853..f0eb9d5 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -2,7 +2,6 @@ import styled, { css } from 'styled-components'; import Image from 'next/image' export default function MovieList({movies, isPreview}:any){ - console.log(isPreview); return( { diff --git a/src/components/home/TextInfo.tsx b/src/components/home/TextInfo.tsx index 96ef9b6..eef5acf 100644 --- a/src/components/home/TextInfo.tsx +++ b/src/components/home/TextInfo.tsx @@ -1,7 +1,7 @@ import styled, { css } from 'styled-components'; +import {ITextInfo} from '../../interfaces/interface' -export default function TextInfo({name, isPreview}:any){ - console.log(isPreview) +export default function TextInfo({name, isPreview}:ITextInfo){ return( {name} diff --git a/src/interfaces/interface.tsx b/src/interfaces/interface.tsx index 8b5cf15..b72c7e1 100644 --- a/src/interfaces/interface.tsx +++ b/src/interfaces/interface.tsx @@ -26,4 +26,9 @@ export interface IData{ results: IMovieInfo[]; total_pages: number; total_results: number; +} + +export interface ITextInfo{ + name: string; + isPreview: boolean; } \ No newline at end of file diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index a4a3d88..c8ad47d 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -8,6 +8,7 @@ import { dehydrate, QueryClient } from '@tanstack/react-query'; import MovieList from '../../components/home/MovieList' import TextInfo from "../../components/home/TextInfo"; import Header from "../../components/common/Header"; +import FirstMovie from "../../components/home/FirstMovie"; export default function Home(){ @@ -23,6 +24,7 @@ export default function Home(){ return (
+ diff --git a/styles/globals.css b/styles/globals.css index c66e510..fa0ac05 100644 --- a/styles/globals.css +++ b/styles/globals.css @@ -8,8 +8,7 @@ body { color: white; padding: 0; margin: 0; - font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, - Ubuntu, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif; + font-family: SF Pro Display; } a { From 208ff67ec889b1cb4f5ad91bc9a8dc889b207200 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 16:22:54 +0900 Subject: [PATCH 12/57] =?UTF-8?q?feat=20:=20header=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/img/Netflix_Symbol.png | Bin 0 -> 18796 bytes public/img/Netflix_Symbol_RGB.png | Bin 57272 -> 0 bytes src/components/common/Footer.tsx | 2 +- src/components/common/Header.tsx | 37 +++++++++++++++- src/components/home/FirstMovie.tsx | 69 ++++++++++++++--------------- src/pages/home/index.tsx | 4 +- 6 files changed, 72 insertions(+), 40 deletions(-) create mode 100644 public/img/Netflix_Symbol.png delete mode 100644 public/img/Netflix_Symbol_RGB.png diff --git a/public/img/Netflix_Symbol.png b/public/img/Netflix_Symbol.png new file mode 100644 index 0000000000000000000000000000000000000000..682bf00edd47b21aad6b03fad53bef56822ab4f3 GIT binary patch literal 18796 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 OM@>abxk~Z%yZ-}Wl2gh6 literal 0 HcmV?d00001 diff --git a/public/img/Netflix_Symbol_RGB.png b/public/img/Netflix_Symbol_RGB.png deleted file mode 100644 index 032e621ac9f4e334d0fb020c408037cdeb5f5c22..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57272 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 - header + { + ItemsList.map((i) => ( + i.id === 0 ? + + : + + {i.info} + + )) + } ) } const Container = styled.div` - margin-top: 415px; + display: flex; + justify-content: space-evenly; + background: transparent; + position: relative; + align-items: center; +` + +const Item = styled.div` + +` + +const StyledImage = styled.img` + object-fit: cover; + width: 50px; ` \ No newline at end of file diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index 525e872..07d4852 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -10,40 +10,39 @@ export default function FirstMovie({movies}:any){ return( - firstmovie - - - - {"list"} -
- My List -
- - {"Play"} - - - {"Info"} -
- Info -
-
+ + + + {"list"} +
+ My List +
+ + {"Play"} + + + {"Info"} +
+ Info +
+
) } @@ -51,6 +50,7 @@ export default function FirstMovie({movies}:any){ const Container = styled.div` display: flex; flex-direction: column; + position: relative; ` const MiddleItem = styled.div` @@ -67,6 +67,5 @@ const ImageMovie = styled.img` object-fit: cover; height: 415px; margin-bottom: 13px; - margin-top: 415px; ` diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index c8ad47d..f6f3335 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -82,6 +82,6 @@ const Container = styled.div` display: flex; flex-direction: column; width: 375px; - // overflow:visible - // margin-top: 300px; + justify-contents: flex-start; + position: relative; ` \ No newline at end of file From 88bc19dac74e4c3d2b9a05cf59bdc5a26e0d2035 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 17:11:57 +0900 Subject: [PATCH 13/57] =?UTF-8?q?fix=20:=20=ED=99=94=EB=A9=B4=20=EC=83=81?= =?UTF-8?q?=EB=8B=A8=20=EB=A7=9E=EC=B6=94=EA=B8=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Header.tsx | 6 ++-- src/components/home/FirstMovie.tsx | 1 + src/pages/home/index.tsx | 50 +++++++++++------------------- 3 files changed, 23 insertions(+), 34 deletions(-) diff --git a/src/components/common/Header.tsx b/src/components/common/Header.tsx index 4a1f231..22c6aeb 100644 --- a/src/components/common/Header.tsx +++ b/src/components/common/Header.tsx @@ -1,5 +1,5 @@ import styled from 'styled-components'; -import Image from 'next/image'; + const ItemsList = [ {id: 0, info: '/img/Netflix_Symbol.png'}, {id: 1, info: 'TV Shows'}, @@ -37,7 +37,9 @@ const Container = styled.div` ` const Item = styled.div` - + font-style: normal; + font-weight: 400; + font-size: 17.1968px; ` const StyledImage = styled.img` diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index 07d4852..4016f1d 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -3,6 +3,7 @@ import Image from 'next/image' import Play from '../../../public/img/Header/Play.png' import Info from '../../../public/img/Header/Info.png' import MyList from '../../../public/img/Header/MyList.png' +import { IData } from '../../interfaces/interface'; export default function FirstMovie({movies}:any){ const len_movies = movies.length; diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index f6f3335..d589cd7 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -22,19 +22,21 @@ export default function Home(){ return ( - -
- - - - - - - - - -
- + + +
+ + + + + + + + + +
+ + ) }; @@ -59,25 +61,9 @@ export const getServerSideProps = async () => { } } -// next 13 -// export async function getData(){ -// const res = await fetch("https://api.themoviedb.org/3/trending/all/day?api_key=0c75b9faeb39691a7d8e7af98ee5f303",{ -// cache: "no-store" -// }); -// const data = await res.json(); -// return data; -// } - -// 이전 방식 -// export async function getServerSideProps(){ -// // Fetch data from external API -// const res = await axios.get(`https://api.themoviedb.org/3/trending/all/day?api_key=0c75b9faeb39691a7d8e7af98ee5f303`) -// const data = res.data; - -// // Pass data to the page via props -// return { props: { data } } -// } - +const Body = styled.div` + height: 100vh; +` const Container = styled.div` display: flex; flex-direction: column; From 9d574c03ea4c9e1b557b06c0fcb4b5d3b218ad3c Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 11 Nov 2022 18:33:47 +0900 Subject: [PATCH 14/57] =?UTF-8?q?fix=20:=20=EC=82=AC=EC=A7=84=20=EB=B0=B0?= =?UTF-8?q?=EA=B2=BD=EC=9C=BC=EB=A1=9C=20=EC=98=AE=EA=B9=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/home/FirstMovie.tsx | 17 +++++++++++++---- src/pages/home/index.tsx | 2 -- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index 4016f1d..356c4ab 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -3,6 +3,7 @@ import Image from 'next/image' import Play from '../../../public/img/Header/Play.png' import Info from '../../../public/img/Header/Info.png' import MyList from '../../../public/img/Header/MyList.png' +import Header from '../common/Header'; import { IData } from '../../interfaces/interface'; export default function FirstMovie({movies}:any){ @@ -11,9 +12,9 @@ export default function FirstMovie({movies}:any){ return( - + +
+ ` object-fit: cover; height: 415px; + width: 375px; margin-bottom: 13px; + background-size: cover; + background-position: center; + background-image : ${props => `linear-gradient(180deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 87.26%, #000000 100%), url(${props.path})`} ` diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index d589cd7..ce463de 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -7,7 +7,6 @@ import { useNowPlaying, useTopRated, usePopular, useUpComing } from "../../hooks import { dehydrate, QueryClient } from '@tanstack/react-query'; import MovieList from '../../components/home/MovieList' import TextInfo from "../../components/home/TextInfo"; -import Header from "../../components/common/Header"; import FirstMovie from "../../components/home/FirstMovie"; export default function Home(){ @@ -24,7 +23,6 @@ export default function Home(){ return ( -
From 52bf31738a7bbb294735443077bf236f876af2f9 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 11 Nov 2022 20:02:59 +0900 Subject: [PATCH 15/57] feat : get top rated movies --- src/api/Movies.tsx | 38 ++++++++++++++++++++++------------- src/pages/search/index.tsx | 41 +++++++++++++++++++++++++++++--------- 2 files changed, 56 insertions(+), 23 deletions(-) diff --git a/src/api/Movies.tsx b/src/api/Movies.tsx index 97a5500..3a5f827 100644 --- a/src/api/Movies.tsx +++ b/src/api/Movies.tsx @@ -1,22 +1,32 @@ -import axios from 'axios'; -import {API_KEY} from '../assets/config'; +import axios from "axios"; +import { API_KEY } from "../assets/config"; export const getNowPlaying = async () => { - const { data } = await axios.get(`https://api.themoviedb.org/3/movie/now_playing?api_key=${API_KEY}&language=en-US&page=1`); - return data; -} + const { data } = await axios.get( + `https://api.themoviedb.org/3/movie/now_playing?api_key=${API_KEY}&language=en-US&page=1` + ); + return data; +}; export const getTopRated = async () => { - const {data} = await axios.get(`https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1`); - return data; -} + const { data } = await axios.get( + `https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1` + ); + return data; +}; export const getPopular = async () => { - const {data} = await axios.get(`https://api.themoviedb.org/3/movie/popular?api_key=${API_KEY}&language=en-US&page=1`); - return data; -} + const { data } = await axios.get( + `https://api.themoviedb.org/3/movie/popular?api_key=${API_KEY}&language=en-US&page=1` + ); + return data; +}; export const getUpComing = async () => { - const {data} = await axios.get(`https://api.themoviedb.org/3/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1`); - return data; -} \ No newline at end of file + const { data } = await axios.get( + `https://api.themoviedb.org/3/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1` + ); + return data; +}; + +export const getTopSearches = `https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}`; diff --git a/src/pages/search/index.tsx b/src/pages/search/index.tsx index 7a359ba..5ae482e 100644 --- a/src/pages/search/index.tsx +++ b/src/pages/search/index.tsx @@ -1,9 +1,32 @@ -import Footer from "../../components/common/Footer" -export default function Search(){ - return( - <> - Search -
- - ) -} \ No newline at end of file +import Footer from "../../components/common/Footer"; +import { useState, useEffect } from "react"; +import { getTopSearches } from "../../api/Movies"; +import { IMovieInfo } from "../../interfaces/interface"; +import Link from "next/link"; + +export default function Search() { + const [movies, setMovies] = useState([]); + useEffect(() => { + (async () => { + const { results } = await (await fetch(getTopSearches)).json(); + setMovies(results); + })(); + }, []); + return ( + <> + +

Top Searches

+ {!movies &&

Loading...

} + {movies?.map((movie) => ( +
+ +

{movie.original_title}

+
+ ))} +
+ + ); +} From b7750ac073730908c1bc97f03dcf3b3630835c54 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 11 Nov 2022 20:11:59 +0900 Subject: [PATCH 16/57] =?UTF-8?q?feat=20:=20=EA=B2=80=EC=83=89=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=20->=20=EC=83=81=EC=84=B8=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=20=EC=97=B0=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/movies/[movieId].js | 11 ++++++++++ src/pages/search.tsx | 41 +++++++++++++++++++++++++++++++++++ src/pages/search/index.tsx | 32 --------------------------- 3 files changed, 52 insertions(+), 32 deletions(-) create mode 100644 src/pages/movies/[movieId].js create mode 100644 src/pages/search.tsx delete mode 100644 src/pages/search/index.tsx diff --git a/src/pages/movies/[movieId].js b/src/pages/movies/[movieId].js new file mode 100644 index 0000000..6a8a834 --- /dev/null +++ b/src/pages/movies/[movieId].js @@ -0,0 +1,11 @@ +import { useRouter } from "next/router"; + +export default function Detail() { + const router = useRouter(); + + return ( +
+

{router.query.title}

+
+ ); +} diff --git a/src/pages/search.tsx b/src/pages/search.tsx new file mode 100644 index 0000000..b10b02e --- /dev/null +++ b/src/pages/search.tsx @@ -0,0 +1,41 @@ +import Footer from "../components/common/Footer"; +import { useState, useEffect } from "react"; +import { getTopSearches } from "../api/Movies"; +import { IMovieInfo } from "../interfaces/interface"; +import Link from "next/link"; + +export default function Search() { + const [movies, setMovies] = useState([]); + useEffect(() => { + (async () => { + const { results } = await (await fetch(getTopSearches)).json(); + setMovies(results); + })(); + }, []); + return ( + <> + +

Top Searches

+ {!movies &&

Loading...

} + {movies?.map((movie) => ( + +
+ +

{movie.original_title}

+
+ + ))} +
+ + ); +} diff --git a/src/pages/search/index.tsx b/src/pages/search/index.tsx deleted file mode 100644 index 5ae482e..0000000 --- a/src/pages/search/index.tsx +++ /dev/null @@ -1,32 +0,0 @@ -import Footer from "../../components/common/Footer"; -import { useState, useEffect } from "react"; -import { getTopSearches } from "../../api/Movies"; -import { IMovieInfo } from "../../interfaces/interface"; -import Link from "next/link"; - -export default function Search() { - const [movies, setMovies] = useState([]); - useEffect(() => { - (async () => { - const { results } = await (await fetch(getTopSearches)).json(); - setMovies(results); - })(); - }, []); - return ( - <> - -

Top Searches

- {!movies &&

Loading...

} - {movies?.map((movie) => ( -
- -

{movie.original_title}

-
- ))} -
- - ); -} From dd7bfa4e6e5c77a2e8893a52910a547a408560b1 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 11 Nov 2022 20:32:34 +0900 Subject: [PATCH 17/57] =?UTF-8?q?feat=20:=20=EC=83=81=EC=84=B8=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=20=EA=B5=AC=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/movies/[...movieData].tsx | 15 +++++++++++++++ src/pages/movies/[movieId].js | 11 ----------- src/pages/search.tsx | 6 +++++- 3 files changed, 20 insertions(+), 12 deletions(-) create mode 100644 src/pages/movies/[...movieData].tsx delete mode 100644 src/pages/movies/[movieId].js diff --git a/src/pages/movies/[...movieData].tsx b/src/pages/movies/[...movieData].tsx new file mode 100644 index 0000000..89899df --- /dev/null +++ b/src/pages/movies/[...movieData].tsx @@ -0,0 +1,15 @@ +import { useRouter } from "next/router"; + +export default function MovieDetail() { + const router = useRouter(); + const { title, poster, overview } = router.query; + + return ( +
+ + +

{title}

+
{overview}
+
+ ); +} diff --git a/src/pages/movies/[movieId].js b/src/pages/movies/[movieId].js deleted file mode 100644 index 6a8a834..0000000 --- a/src/pages/movies/[movieId].js +++ /dev/null @@ -1,11 +0,0 @@ -import { useRouter } from "next/router"; - -export default function Detail() { - const router = useRouter(); - - return ( -
-

{router.query.title}

-
- ); -} diff --git a/src/pages/search.tsx b/src/pages/search.tsx index b10b02e..3bccce8 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -21,7 +21,11 @@ export default function Search() { Date: Fri, 11 Nov 2022 22:49:04 +0900 Subject: [PATCH 18/57] =?UTF-8?q?refact=20:=20search=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=20getServerSideProps()?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/search.tsx | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/src/pages/search.tsx b/src/pages/search.tsx index 3bccce8..e1e4c8b 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -4,20 +4,17 @@ import { getTopSearches } from "../api/Movies"; import { IMovieInfo } from "../interfaces/interface"; import Link from "next/link"; -export default function Search() { - const [movies, setMovies] = useState([]); - useEffect(() => { - (async () => { - const { results } = await (await fetch(getTopSearches)).json(); - setMovies(results); - })(); - }, []); +interface SearchProps { + topSearchesMovies: IMovieInfo[]; +} + +export default function Search({ topSearchesMovies }: SearchProps) { return ( <>

Top Searches

- {!movies &&

Loading...

} - {movies?.map((movie) => ( + {!topSearchesMovies &&

Loading...

} + {topSearchesMovies?.map((movie) => ( ); } + +export async function getServerSideProps() { + const topSearchesMoviesResponse = await (await fetch(getTopSearches)).json(); + const topSearchesMovies = topSearchesMoviesResponse.results; + + return { + props: { + topSearchesMovies, + }, + }; +} From da0101be8ef01f9755bf38cc1ad26e810d8a8c92 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 11 Nov 2022 22:53:04 +0900 Subject: [PATCH 19/57] refact : movies api --- src/api/Movies.tsx | 51 ++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/src/api/Movies.tsx b/src/api/Movies.tsx index 3a5f827..e430d34 100644 --- a/src/api/Movies.tsx +++ b/src/api/Movies.tsx @@ -1,32 +1,29 @@ import axios from "axios"; import { API_KEY } from "../assets/config"; -export const getNowPlaying = async () => { - const { data } = await axios.get( - `https://api.themoviedb.org/3/movie/now_playing?api_key=${API_KEY}&language=en-US&page=1` - ); - return data; -}; +const BASE_URL = `https://api.themoviedb.org/3/movie/`; -export const getTopRated = async () => { - const { data } = await axios.get( - `https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1` - ); - return data; -}; +export const getNowPlaying = `${BASE_URL}/now_playing?api_key=${API_KEY}&language=en-US&page=1`; +export const getTopRated = `${BASE_URL}/top_rated?api_key=${API_KEY}&language=en-US&page=1`; +export const getPopular = `${BASE_URL}/popular?api_key=${API_KEY}&language=en-US&page=1`; +export const getUpComing = `${BASE_URL}/upcoming?api_key=${API_KEY}&language=en-US&page=1`; +export const getTopSearches = `${BASE_URL}/top_rated?api_key=${API_KEY}`; -export const getPopular = async () => { - const { data } = await axios.get( - `https://api.themoviedb.org/3/movie/popular?api_key=${API_KEY}&language=en-US&page=1` - ); - return data; -}; - -export const getUpComing = async () => { - const { data } = await axios.get( - `https://api.themoviedb.org/3/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1` - ); - return data; -}; - -export const getTopSearches = `https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}`; +// const { data } = await axios.get( +// `https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1` +// ); +// return data; +// }; +// export const getPopular = async () => { +// const { data } = await axios.get( +// `https://api.themoviedb.org/3/movie/popular?api_key=${API_KEY}&language=en-US&page=1` +// ); +// return data; +// }; +// export const getUpComing = async () => { +// const { data } = await axios.get( +// `https://api.themoviedb.org/3/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1` +// ); +// return data; +// }; +// export const getTopSearches = `https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}`; From 137a2703730383bb596182fe14a0f30cf165ccd1 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 11 Nov 2022 23:00:03 +0900 Subject: [PATCH 20/57] =?UTF-8?q?refact=20:=20home=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=20getServerSideProps=20=EB=B0=A9=EC=8B=9D=20=EB=B3=80?= =?UTF-8?q?=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/home/index.tsx | 124 ++++++++++++++++++++------------------- 1 file changed, 64 insertions(+), 60 deletions(-) diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx index ce463de..497f874 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home/index.tsx @@ -1,71 +1,75 @@ -import Footer from "../../components/common/Footer" -import styled from 'styled-components' -import axios from 'axios'; -import { IData } from "../../interfaces/interface"; -import { getNowPlaying, getTopRated, getPopular, getUpComing } from "../../api/Movies"; -import { useNowPlaying, useTopRated, usePopular, useUpComing } from "../../hooks/api/movie"; -import { dehydrate, QueryClient } from '@tanstack/react-query'; -import MovieList from '../../components/home/MovieList' +import Footer from "../../components/common/Footer"; +import styled from "styled-components"; +import { IMovieInfo } from "../../interfaces/interface"; +import { + getNowPlaying, + getTopRated, + getPopular, + getUpComing, +} from "../../api/Movies"; +import MovieList from "../../components/home/MovieList"; import TextInfo from "../../components/home/TextInfo"; import FirstMovie from "../../components/home/FirstMovie"; -export default function Home(){ - - const { data : nowPlayingMovies } = useNowPlaying(); - - const { data : topRatedMovies} = useTopRated(); - - const { data : popularMovies } = usePopular(); - - const { data : upComingMovies } = useUpComing(); - - - return ( - - - - - - - - - - - -
- - - ) -}; +interface HomeProps { + nowPlayingMovies: IMovieInfo[]; + topRatedMovies: IMovieInfo[]; + popularMovies: IMovieInfo[]; + upComingMovies: IMovieInfo[]; +} +export default function Home({ + nowPlayingMovies, + topRatedMovies, + popularMovies, + upComingMovies, +}: HomeProps) { + return ( + + + + + + + + + + + +
+ + + ); +} export const getServerSideProps = async () => { + const nowPlayingResponse = await (await fetch(getNowPlaying)).json(); + const nowPlayingMovies = nowPlayingResponse.results; - const queryClient = new QueryClient() - - // prefetch data on the server - await queryClient.fetchQuery(['NowPlaying'], () => getNowPlaying()); - - await queryClient.fetchQuery(['TopRated'], ()=> getTopRated()); + const topRatedResponse = await (await fetch(getTopRated)).json(); + const topRatedMovies = topRatedResponse.results; - await queryClient.fetchQuery(['Popular'], () => getPopular()); + const popularResponse = await (await fetch(getPopular)).json(); + const popularMovies = popularResponse.results; - await queryClient.fetchQuery(['UpComing'], () => getUpComing()); - - return { - props: { - // dehydrate query cache - dehydratedState: dehydrate(queryClient), - }, - } -} + const upComingResponse = await (await fetch(getUpComing)).json(); + const upComingMovies = upComingResponse.results; + return { + props: { + nowPlayingMovies, + topRatedMovies, + popularMovies, + upComingMovies, + }, + }; +}; const Body = styled.div` - height: 100vh; -` + height: 100vh; +`; const Container = styled.div` - display: flex; - flex-direction: column; - width: 375px; - justify-contents: flex-start; - position: relative; -` \ No newline at end of file + display: flex; + flex-direction: column; + width: 375px; + justify-contents: flex-start; + position: relative; +`; From 8a14858715c138ef46232b7323debd4cd740c045 Mon Sep 17 00:00:00 2001 From: seondal Date: Sat, 12 Nov 2022 00:17:12 +0900 Subject: [PATCH 21/57] =?UTF-8?q?refact=20:=20=ED=8F=B4=EB=8D=94=20?= =?UTF-8?q?=EA=B5=AC=EC=A1=B0=20=EB=B3=80=EA=B2=BD=20&=20fix=20:=20?= =?UTF-8?q?=ED=91=B8=ED=84=B0=20=EC=83=88=EB=A1=9C=EA=B3=A0=EC=B9=A8?= =?UTF-8?q?=EC=8B=9C=20=EC=8A=A4=ED=83=80=EC=9D=BC=20=EC=A0=81=EC=9A=A9=20?= =?UTF-8?q?=EC=95=88=EB=90=98=EB=8A=94=20=EC=98=A4=EB=A5=98=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api.tsx | 10 +++ src/api/Movies.tsx | 29 ------- src/components/common/Footer.tsx | 105 ++++++++++++------------- src/components/common/FooterItem.tsx | 72 ++++++++--------- src/components/common/Layout.tsx | 10 +++ src/components/home/FirstMovie.tsx | 2 +- src/components/home/TextInfo.tsx | 23 +++--- src/hooks/api/movie.tsx | 19 ----- src/interface.tsx | 34 ++++++++ src/interfaces/interface.tsx | 34 -------- src/pages/_app.tsx | 27 ++++--- src/pages/api/hello.ts | 13 --- src/pages/{home/index.tsx => home.tsx} | 18 ++--- src/pages/index.tsx | 32 +++----- src/pages/search.tsx | 5 +- 15 files changed, 184 insertions(+), 249 deletions(-) create mode 100644 src/api.tsx delete mode 100644 src/api/Movies.tsx create mode 100644 src/components/common/Layout.tsx delete mode 100644 src/hooks/api/movie.tsx create mode 100644 src/interface.tsx delete mode 100644 src/interfaces/interface.tsx delete mode 100644 src/pages/api/hello.ts rename src/pages/{home/index.tsx => home.tsx} (81%) diff --git a/src/api.tsx b/src/api.tsx new file mode 100644 index 0000000..a5599bb --- /dev/null +++ b/src/api.tsx @@ -0,0 +1,10 @@ +import axios from "axios"; +import { API_KEY } from "./assets/config"; + +const BASE_URL = `https://api.themoviedb.org/3/movie/`; + +export const getNowPlaying = `${BASE_URL}/now_playing?api_key=${API_KEY}&language=en-US&page=1`; +export const getTopRated = `${BASE_URL}/top_rated?api_key=${API_KEY}&language=en-US&page=1`; +export const getPopular = `${BASE_URL}/popular?api_key=${API_KEY}&language=en-US&page=1`; +export const getUpComing = `${BASE_URL}/upcoming?api_key=${API_KEY}&language=en-US&page=1`; +export const getTopSearches = `${BASE_URL}/top_rated?api_key=${API_KEY}`; diff --git a/src/api/Movies.tsx b/src/api/Movies.tsx deleted file mode 100644 index e430d34..0000000 --- a/src/api/Movies.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import axios from "axios"; -import { API_KEY } from "../assets/config"; - -const BASE_URL = `https://api.themoviedb.org/3/movie/`; - -export const getNowPlaying = `${BASE_URL}/now_playing?api_key=${API_KEY}&language=en-US&page=1`; -export const getTopRated = `${BASE_URL}/top_rated?api_key=${API_KEY}&language=en-US&page=1`; -export const getPopular = `${BASE_URL}/popular?api_key=${API_KEY}&language=en-US&page=1`; -export const getUpComing = `${BASE_URL}/upcoming?api_key=${API_KEY}&language=en-US&page=1`; -export const getTopSearches = `${BASE_URL}/top_rated?api_key=${API_KEY}`; - -// const { data } = await axios.get( -// `https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1` -// ); -// return data; -// }; -// export const getPopular = async () => { -// const { data } = await axios.get( -// `https://api.themoviedb.org/3/movie/popular?api_key=${API_KEY}&language=en-US&page=1` -// ); -// return data; -// }; -// export const getUpComing = async () => { -// const { data } = await axios.get( -// `https://api.themoviedb.org/3/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1` -// ); -// return data; -// }; -// export const getTopSearches = `https://api.themoviedb.org/3/movie/top_rated?api_key=${API_KEY}`; diff --git a/src/components/common/Footer.tsx b/src/components/common/Footer.tsx index 935fb08..789b801 100644 --- a/src/components/common/Footer.tsx +++ b/src/components/common/Footer.tsx @@ -1,57 +1,56 @@ -import styled from 'styled-components'; -import FooterItem from './FooterItem'; -import FooterInfo from "../../assets/FooterInfo.json" +import styled from "styled-components"; +import FooterItem from "./FooterItem"; +import FooterInfo from "../../assets/FooterInfo.json"; import { useRouter } from "next/router"; -export default function Footer(){ - const router = useRouter(); - const footerInfo = FooterInfo; +export default function Footer() { + const router = useRouter(); + const footerInfo = FooterInfo; - const handleClick = (name:string) => { - if(name === 'Home'){ - router.push('/home'); - }else if (name === 'Search'){ - router.push('/search'); - } + const handleClick = (name: string) => { + if (name === "Home") { + router.push("/home"); + } else if (name === "Search") { + router.push("/search"); } - - return( - - { - footerInfo.map((f)=>{ - const select = router.pathname === '/'+f.alt; - return ( - handleClick(f.name)}> - - - ) - }) - } - - ); -}; - -const Container = styled.div` - position : fixed; - background: black; - - // 중앙 정렬 - left: 50%; - transform: translate(-50%, 0); - - bottom: 0; - - width: 377px; - height: 48px; - - display: flex; - justify-content: space-evenly; -` -const ItemButton = styled.div` - -` \ No newline at end of file + }; + + return ( +
+ {footerInfo.map((f) => { + const select = router.pathname === "/" + f.alt; + return ( + handleClick(f.name)}> + + + ); + })} + +
+ ); +} +const ItemButton = styled.div``; diff --git a/src/components/common/FooterItem.tsx b/src/components/common/FooterItem.tsx index 0880a5e..f328c1b 100644 --- a/src/components/common/FooterItem.tsx +++ b/src/components/common/FooterItem.tsx @@ -1,51 +1,41 @@ -import { IFooter } from "../../interfaces/interface" -import Image from 'next/image'; -import styled from 'styled-components'; +import { IFooter } from "../../interface"; +import Image from "next/image"; +import styled from "styled-components"; import { useRouter } from "next/router"; import { useEffect, useState } from "react"; -export default function FooterItem({alt,name,selected}:IFooter){ - let src = ''; - if (selected){ - src = '/img/Footer/'+name+'.png' - }else{ - src = '/img/Footer/'+name+'-2.png' - } +export default function FooterItem({ alt, name, selected }: IFooter) { + let src = ""; + if (selected) { + src = "/img/Footer/" + name + ".png"; + } else { + src = "/img/Footer/" + name + "-2.png"; + } - - return ( - - - {alt} - - {name} - - - - ) + return ( + + + {alt} + {name} + + + ); } const Container = styled.div` - display: flex; - flex-direction: column; - align-items: center; -` + display: flex; + flex-direction: column; + align-items: center; +`; const StyledFont = styled.div` - font-size: 8.2px; -` + font-size: 8.2px; +`; -const StyledButton = styled.button<{select : boolean}>` - border: 0; - outline: 0; - background: black; - color: #8C8787; - color: ${ - ({select}) => (select? 'white' : '#8C8787') - } -` \ No newline at end of file +const StyledButton = styled.button<{ select: boolean }>` + border: 0; + outline: 0; + background: black; + color: #8c8787; + color: ${({ select }) => (select ? "white" : "#8C8787")}; +`; diff --git a/src/components/common/Layout.tsx b/src/components/common/Layout.tsx new file mode 100644 index 0000000..d1def90 --- /dev/null +++ b/src/components/common/Layout.tsx @@ -0,0 +1,10 @@ +import Footer from "./Footer"; + +export default function Layout({ children }) { + return ( + <> + {children} +
+ + ); +} diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index 356c4ab..552f809 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -4,7 +4,7 @@ import Play from '../../../public/img/Header/Play.png' import Info from '../../../public/img/Header/Info.png' import MyList from '../../../public/img/Header/MyList.png' import Header from '../common/Header'; -import { IData } from '../../interfaces/interface'; +import { IData } from '../../interface'; export default function FirstMovie({movies}:any){ const len_movies = movies.length; diff --git a/src/components/home/TextInfo.tsx b/src/components/home/TextInfo.tsx index eef5acf..a161064 100644 --- a/src/components/home/TextInfo.tsx +++ b/src/components/home/TextInfo.tsx @@ -1,21 +1,16 @@ -import styled, { css } from 'styled-components'; -import {ITextInfo} from '../../interfaces/interface' - -export default function TextInfo({name, isPreview}:ITextInfo){ - return( - - {name} - - ) +import styled, { css } from "styled-components"; +import { ITextInfo } from "../../interface"; +export default function TextInfo({ name, isPreview }: ITextInfo) { + return {name}; } interface Props { - isPreview: boolean; + isPreview: boolean; } const Container = styled.div` - font-weight: 700; - margin-bottom: 14px; - font-size: ${props => props.isPreview ? "26.75px" : "20.92px"} -` \ No newline at end of file + font-weight: 700; + margin-bottom: 14px; + font-size: ${(props) => (props.isPreview ? "26.75px" : "20.92px")}; +`; diff --git a/src/hooks/api/movie.tsx b/src/hooks/api/movie.tsx deleted file mode 100644 index c553ccf..0000000 --- a/src/hooks/api/movie.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { useQuery } from '@tanstack/react-query'; -import { appendFile } from 'fs'; -import * as api from '../../api/Movies'; - -export const useNowPlaying = () => { - return useQuery(['NowPlaying'], () => api.getNowPlaying()); -} - -export const useTopRated = () => { - return useQuery(['TopRated'], () => api.getTopRated()); -} - -export const usePopular = () => { - return useQuery(['Popular'], () => api.getPopular()); -} - -export const useUpComing = () => { - return useQuery(['UpComing'], () => api.getUpComing()); -} \ No newline at end of file diff --git a/src/interface.tsx b/src/interface.tsx new file mode 100644 index 0000000..153354b --- /dev/null +++ b/src/interface.tsx @@ -0,0 +1,34 @@ +export interface IFooter { + alt: string; + name: string; + selected: boolean; +} + +export interface IMovieInfo { + adult: boolean; + backdrop_path: string; + genre_ids: number[]; + id: number; + original_language: string; + original_title: string; + overview: string; + poster_path: string; + release_date: string; + title: string; + video: boolean; + vote_average: number; + vote_count: number; + popularity: number; +} + +export interface IData { + page: number; + results: IMovieInfo[]; + total_pages: number; + total_results: number; +} + +export interface ITextInfo { + name: string; + isPreview: boolean; +} diff --git a/src/interfaces/interface.tsx b/src/interfaces/interface.tsx deleted file mode 100644 index b72c7e1..0000000 --- a/src/interfaces/interface.tsx +++ /dev/null @@ -1,34 +0,0 @@ -export interface IFooter{ - alt: string; - name: string; - selected: boolean; -} - -export interface IMovieInfo{ - adult: boolean; - backdrop_path: string; - genre_ids: number[]; - id: number; - original_language: string; - original_title: string; - overview: string; - poster_path: string; - release_date: string; - title: string; - video: boolean; - vote_average: number; - vote_count: number; - popularity: number; -} - -export interface IData{ - page: number; - results: IMovieInfo[]; - total_pages: number; - total_results: number; -} - -export interface ITextInfo{ - name: string; - isPreview: boolean; -} \ No newline at end of file diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index f0ee5a2..151f570 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,16 +1,23 @@ -import '../../styles/globals.css' -import type { AppProps } from 'next/app' -import { Hydrate, QueryClient, QueryClientProvider} from '@tanstack/react-query' -import React from 'react'; +import "../../styles/globals.css"; +import type { AppProps } from "next/app"; +import { + Hydrate, + QueryClient, + QueryClientProvider, +} from "@tanstack/react-query"; +import React from "react"; +import Layout from "../components/common/Layout"; export default function App({ Component, pageProps }: AppProps) { const [queryClient] = React.useState(() => new QueryClient()); return ( - - - - - - ) + + + + + + + + ); } diff --git a/src/pages/api/hello.ts b/src/pages/api/hello.ts deleted file mode 100644 index f8bcc7e..0000000 --- a/src/pages/api/hello.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Next.js API route support: https://nextjs.org/docs/api-routes/introduction -import type { NextApiRequest, NextApiResponse } from 'next' - -type Data = { - name: string -} - -export default function handler( - req: NextApiRequest, - res: NextApiResponse -) { - res.status(200).json({ name: 'John Doe' }) -} diff --git a/src/pages/home/index.tsx b/src/pages/home.tsx similarity index 81% rename from src/pages/home/index.tsx rename to src/pages/home.tsx index 497f874..0048c8c 100644 --- a/src/pages/home/index.tsx +++ b/src/pages/home.tsx @@ -1,15 +1,10 @@ -import Footer from "../../components/common/Footer"; +import Footer from "../components/common/Footer"; import styled from "styled-components"; -import { IMovieInfo } from "../../interfaces/interface"; -import { - getNowPlaying, - getTopRated, - getPopular, - getUpComing, -} from "../../api/Movies"; -import MovieList from "../../components/home/MovieList"; -import TextInfo from "../../components/home/TextInfo"; -import FirstMovie from "../../components/home/FirstMovie"; +import { IMovieInfo } from "../interface"; +import { getNowPlaying, getTopRated, getPopular, getUpComing } from "../api"; +import MovieList from "../components/home/MovieList"; +import TextInfo from "../components/home/TextInfo"; +import FirstMovie from "../components/home/FirstMovie"; interface HomeProps { nowPlayingMovies: IMovieInfo[]; @@ -35,7 +30,6 @@ export default function Home({ -
); diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 867fb3b..149134f 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -1,35 +1,27 @@ -import styled from 'styled-components' -import { useRouter } from 'next/router' -import Head from 'next/head' -import Image from 'next/image' -import Logo from '../../public/img/netflix_5.gif' -import styles from '../../styles/Home.module.css' -import { useEffect } from 'react' +import styled from "styled-components"; +import { useRouter } from "next/router"; +import Head from "next/head"; +import Image from "next/image"; +import Logo from "../../public/img/netflix_5.gif"; +import styles from "../../styles/Home.module.css"; +import { useEffect } from "react"; export default function Home() { const router = useRouter(); useEffect(() => { - const timer = setTimeout(() => { - router.push('/home'); - },3100); + router.push("/home"); + }, 3100); return () => { clearTimeout(timer); }; - - },[]); + }, []); return (
- - Logo of Netflix - + Logo of Netflix
- ) + ); } diff --git a/src/pages/search.tsx b/src/pages/search.tsx index e1e4c8b..71f3b7a 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -1,7 +1,7 @@ import Footer from "../components/common/Footer"; import { useState, useEffect } from "react"; -import { getTopSearches } from "../api/Movies"; -import { IMovieInfo } from "../interfaces/interface"; +import { getTopSearches } from "../api"; +import { IMovieInfo } from "../interface"; import Link from "next/link"; interface SearchProps { @@ -36,7 +36,6 @@ export default function Search({ topSearchesMovies }: SearchProps) { ))} -
); } From b39d18b16eb5ccbf65c8ba6bf870e54787b84228 Mon Sep 17 00:00:00 2001 From: seondal Date: Sat, 12 Nov 2022 00:19:57 +0900 Subject: [PATCH 22/57] =?UTF-8?q?del=20:=20=EB=B6=88=ED=95=84=EC=9A=94?= =?UTF-8?q?=ED=95=9C=20import=20=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/_app.tsx | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 151f570..42bd4ee 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,23 +1,12 @@ import "../../styles/globals.css"; import type { AppProps } from "next/app"; -import { - Hydrate, - QueryClient, - QueryClientProvider, -} from "@tanstack/react-query"; import React from "react"; import Layout from "../components/common/Layout"; export default function App({ Component, pageProps }: AppProps) { - const [queryClient] = React.useState(() => new QueryClient()); - return ( - - - - - - - + + + ); } From 9e44cd5ec9abbe2b576982cd68538f9839930928 Mon Sep 17 00:00:00 2001 From: seondal Date: Sat, 12 Nov 2022 00:34:14 +0900 Subject: [PATCH 23/57] del Layout.tsx --- src/components/common/Layout.tsx | 10 ---------- src/interface.tsx | 2 ++ src/pages/_app.tsx | 13 +++++++++---- 3 files changed, 11 insertions(+), 14 deletions(-) delete mode 100644 src/components/common/Layout.tsx diff --git a/src/components/common/Layout.tsx b/src/components/common/Layout.tsx deleted file mode 100644 index d1def90..0000000 --- a/src/components/common/Layout.tsx +++ /dev/null @@ -1,10 +0,0 @@ -import Footer from "./Footer"; - -export default function Layout({ children }) { - return ( - <> - {children} -
- - ); -} diff --git a/src/interface.tsx b/src/interface.tsx index 153354b..8b8a769 100644 --- a/src/interface.tsx +++ b/src/interface.tsx @@ -1,3 +1,5 @@ +export interface CustomPageProps {} + export interface IFooter { alt: string; name: string; diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 42bd4ee..3e3bb65 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,12 +1,17 @@ import "../../styles/globals.css"; import type { AppProps } from "next/app"; import React from "react"; -import Layout from "../components/common/Layout"; +import { CustomPageProps } from "../interface"; +import Footer from "../components/common/Footer"; -export default function App({ Component, pageProps }: AppProps) { +export default function App({ + Component, + pageProps, +}: AppProps) { return ( - + <> - +
+ ); } From a5f50751944559538ab1689ace9955859cbc5e9f Mon Sep 17 00:00:00 2001 From: seondal Date: Sat, 12 Nov 2022 01:25:32 +0900 Subject: [PATCH 24/57] =?UTF-8?q?fix=20:=20=EB=A1=9C=EA=B3=A0=20=ED=99=94?= =?UTF-8?q?=EB=A9=B4=EC=97=90=EC=84=9C=20=ED=91=B8=ED=84=B0=EA=B0=80=20?= =?UTF-8?q?=EB=B3=B4=EC=9D=B4=EB=8A=94=20=ED=98=84=EC=83=81=20=EC=A0=9C?= =?UTF-8?q?=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Layout.tsx | 16 ++++++++++++++++ src/interface.tsx | 2 -- src/pages/_app.tsx | 13 +++++-------- src/pages/index.tsx | 1 - 4 files changed, 21 insertions(+), 11 deletions(-) create mode 100644 src/components/common/Layout.tsx diff --git a/src/components/common/Layout.tsx b/src/components/common/Layout.tsx new file mode 100644 index 0000000..67588f7 --- /dev/null +++ b/src/components/common/Layout.tsx @@ -0,0 +1,16 @@ +import { useRouter } from "next/router"; +import Footer from "./Footer"; + +interface LayoutProps { + children?: JSX.Element; +} + +export default function Layout({ children }: LayoutProps) { + const router = useRouter(); + return ( + <> + {children} + {router.pathname !== "/" &&
} + + ); +} diff --git a/src/interface.tsx b/src/interface.tsx index 8b8a769..153354b 100644 --- a/src/interface.tsx +++ b/src/interface.tsx @@ -1,5 +1,3 @@ -export interface CustomPageProps {} - export interface IFooter { alt: string; name: string; diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 3e3bb65..c040b7f 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,17 +1,14 @@ import "../../styles/globals.css"; import type { AppProps } from "next/app"; import React from "react"; -import { CustomPageProps } from "../interface"; -import Footer from "../components/common/Footer"; +import Layout from "../components/common/Layout"; -export default function App({ - Component, - pageProps, -}: AppProps) { +export default function App({ Component, pageProps }: AppProps) { return ( <> - -
+ + + ); } diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 149134f..5b2c16c 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -13,7 +13,6 @@ export default function Home() { const timer = setTimeout(() => { router.push("/home"); }, 3100); - return () => { clearTimeout(timer); }; From 86a466b3fa3081a582ee210a28a2ddd478889338 Mon Sep 17 00:00:00 2001 From: seondal Date: Sat, 12 Nov 2022 02:09:40 +0900 Subject: [PATCH 25/57] =?UTF-8?q?refact=20:=20styled-component=20=EC=A0=84?= =?UTF-8?q?=EB=B6=80=20=EC=82=AD=EC=A0=9C=20->=20=20?= =?UTF-8?q?=ED=98=95=EC=8B=9D=EC=9C=BC=EB=A1=9C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api.tsx | 1 - src/components/common/FooterItem.tsx | 55 +++++------ src/components/common/Header.tsx | 82 +++++++-------- src/components/common/Layout.tsx | 11 ++- src/components/home/FirstMovie.tsx | 143 +++++++++++++-------------- src/components/home/MovieList.tsx | 87 ++++++++-------- src/components/home/TextInfo.tsx | 27 ++--- src/pages/home.tsx | 31 +++--- src/pages/index.tsx | 2 - src/pages/search.tsx | 2 - 10 files changed, 212 insertions(+), 229 deletions(-) diff --git a/src/api.tsx b/src/api.tsx index a5599bb..4c05e79 100644 --- a/src/api.tsx +++ b/src/api.tsx @@ -1,4 +1,3 @@ -import axios from "axios"; import { API_KEY } from "./assets/config"; const BASE_URL = `https://api.themoviedb.org/3/movie/`; diff --git a/src/components/common/FooterItem.tsx b/src/components/common/FooterItem.tsx index f328c1b..f357877 100644 --- a/src/components/common/FooterItem.tsx +++ b/src/components/common/FooterItem.tsx @@ -1,8 +1,4 @@ import { IFooter } from "../../interface"; -import Image from "next/image"; -import styled from "styled-components"; -import { useRouter } from "next/router"; -import { useEffect, useState } from "react"; export default function FooterItem({ alt, name, selected }: IFooter) { let src = ""; @@ -13,29 +9,32 @@ export default function FooterItem({ alt, name, selected }: IFooter) { } return ( - - - {alt} - {name} - - + <> +
+ +
+ + ); } - -const Container = styled.div` - display: flex; - flex-direction: column; - align-items: center; -`; - -const StyledFont = styled.div` - font-size: 8.2px; -`; - -const StyledButton = styled.button<{ select: boolean }>` - border: 0; - outline: 0; - background: black; - color: #8c8787; - color: ${({ select }) => (select ? "white" : "#8C8787")}; -`; diff --git a/src/components/common/Header.tsx b/src/components/common/Header.tsx index 22c6aeb..c7696aa 100644 --- a/src/components/common/Header.tsx +++ b/src/components/common/Header.tsx @@ -1,48 +1,42 @@ -import styled from 'styled-components'; - const ItemsList = [ - {id: 0, info: '/img/Netflix_Symbol.png'}, - {id: 1, info: 'TV Shows'}, - {id: 2, info: 'Movies'}, - {id: 3, info: 'My List'} + { id: 0, info: "/img/Netflix_Symbol.png" }, + { id: 1, info: "TV Shows" }, + { id: 2, info: "Movies" }, + { id: 3, info: "My List" }, ]; -export default function Header(){ - return( - - { - ItemsList.map((i) => ( - i.id === 0 ? - - : - - {i.info} - - )) - } - - ) +export default function Header() { + return ( + <> +
+ {ItemsList.map((i) => + i.id === 0 ? ( + {"Logo"} + ) : ( +
+ {i.info} +
+ ) + )} +
+ + + ); } - -const Container = styled.div` - display: flex; - justify-content: space-evenly; - background: transparent; - position: relative; - align-items: center; -` - -const Item = styled.div` - font-style: normal; - font-weight: 400; - font-size: 17.1968px; -` - -const StyledImage = styled.img` - object-fit: cover; - width: 50px; -` \ No newline at end of file diff --git a/src/components/common/Layout.tsx b/src/components/common/Layout.tsx index 67588f7..150a49e 100644 --- a/src/components/common/Layout.tsx +++ b/src/components/common/Layout.tsx @@ -9,8 +9,15 @@ export default function Layout({ children }: LayoutProps) { const router = useRouter(); return ( <> - {children} - {router.pathname !== "/" &&
} +
+ {children} + {router.pathname !== "/" &&
} +
+ ); } diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index 552f809..a540be6 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -1,81 +1,72 @@ -import styled, { css } from 'styled-components'; -import Image from 'next/image' -import Play from '../../../public/img/Header/Play.png' -import Info from '../../../public/img/Header/Info.png' -import MyList from '../../../public/img/Header/MyList.png' -import Header from '../common/Header'; -import { IData } from '../../interface'; +import Image from "next/image"; +import Play from "../../../public/img/Header/Play.png"; +import Info from "../../../public/img/Header/Info.png"; +import MyList from "../../../public/img/Header/MyList.png"; +import Header from "../common/Header"; -export default function FirstMovie({movies}:any){ - const len_movies = movies.length; - const rand_0_len = Math.floor(Math.random()*len_movies) - - return( - - -
- - - - {"list"} -
- My List -
- - {"Play"} - - - {"Info"} -
- Info -
-
- - ) +interface Props { + path: string; } -const Container = styled.div` - display: flex; - flex-direction: column; - position: relative; -` - -const MiddleItem = styled.div` - display: flex; - justify-content: space-evenly; - margin-bottom: 43px; -` +export default function FirstMovie({ movies }: any) { + const len_movies = movies.length; + const rand_0_len = Math.floor(Math.random() * len_movies); + const backgroundImage = + "http://image.tmdb.org/t/p/w500" + movies[rand_0_len].backdrop_path; -const Item = styled.div` - align-items: center; - text-align: center; -` -interface Props{ - path: string + return ( + <> +
+
+
+
+
+
+ {"list"} +
+ My List +
+
+ {"Play"} +
+
+ {"Info"} +
+ Info +
+
+
+ + + ); } - -const ImageBox = styled.div` - object-fit: cover; - height: 415px; - width: 375px; - margin-bottom: 13px; - background-size: cover; - background-position: center; - background-image : ${props => `linear-gradient(180deg, rgba(0, 0, 0, 0.45) 0%, rgba(0, 0, 0, 0) 87.26%, #000000 100%), url(${props.path})`} - -` diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index f0eb9d5..42d1252 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -1,49 +1,46 @@ -import styled, { css } from 'styled-components'; -import Image from 'next/image' +import { IMovieInfo } from "../../interface"; -export default function MovieList({movies, isPreview}:any){ - return( - - { - movies.map((m:any) => ( - - )) - } - - ) +interface MovieListProps { + movies: IMovieInfo[]; + isPreview: boolean; } -const Container = styled.div` - display: flex; - width: 375px; - overflow-y: auto; - &::-webkit-scrollbar { - display: none; - } -` -interface ImageProps { - isCircle: boolean; +export default function MovieList({ movies, isPreview }: MovieListProps) { + return ( +
+ {movies.map((m: any) => ( + <> + {m.title} + + ))} + +
+ ); } - -const ImageMovie = styled.img` - object-fit: cover; - width: 103px; - height: 161px; - margin-right: 7px; - margin-bottom: 52px; - - ${(props) => - props.isCircle === true && - css` - width: 102px; - height: 102px; - border-radius: 50%; - margin-bottom: 66px; - `}; - -` diff --git a/src/components/home/TextInfo.tsx b/src/components/home/TextInfo.tsx index a161064..3a9b6de 100644 --- a/src/components/home/TextInfo.tsx +++ b/src/components/home/TextInfo.tsx @@ -1,16 +1,19 @@ -import styled, { css } from "styled-components"; import { ITextInfo } from "../../interface"; export default function TextInfo({ name, isPreview }: ITextInfo) { - return {name}; + return ( + <> +
{name}
+ + + ); } - -interface Props { - isPreview: boolean; -} - -const Container = styled.div` - font-weight: 700; - margin-bottom: 14px; - font-size: ${(props) => (props.isPreview ? "26.75px" : "20.92px")}; -`; diff --git a/src/pages/home.tsx b/src/pages/home.tsx index 0048c8c..7dfc16a 100644 --- a/src/pages/home.tsx +++ b/src/pages/home.tsx @@ -1,5 +1,3 @@ -import Footer from "../components/common/Footer"; -import styled from "styled-components"; import { IMovieInfo } from "../interface"; import { getNowPlaying, getTopRated, getPopular, getUpComing } from "../api"; import MovieList from "../components/home/MovieList"; @@ -12,6 +10,7 @@ interface HomeProps { popularMovies: IMovieInfo[]; upComingMovies: IMovieInfo[]; } + export default function Home({ nowPlayingMovies, topRatedMovies, @@ -19,8 +18,8 @@ export default function Home({ upComingMovies, }: HomeProps) { return ( - - + <> +
@@ -30,8 +29,17 @@ export default function Home({ - - +
+ + ); } @@ -56,14 +64,3 @@ export const getServerSideProps = async () => { }, }; }; - -const Body = styled.div` - height: 100vh; -`; -const Container = styled.div` - display: flex; - flex-direction: column; - width: 375px; - justify-contents: flex-start; - position: relative; -`; diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 5b2c16c..0a0f029 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -1,6 +1,4 @@ -import styled from "styled-components"; import { useRouter } from "next/router"; -import Head from "next/head"; import Image from "next/image"; import Logo from "../../public/img/netflix_5.gif"; import styles from "../../styles/Home.module.css"; diff --git a/src/pages/search.tsx b/src/pages/search.tsx index 71f3b7a..8295e9a 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -1,5 +1,3 @@ -import Footer from "../components/common/Footer"; -import { useState, useEffect } from "react"; import { getTopSearches } from "../api"; import { IMovieInfo } from "../interface"; import Link from "next/link"; From 133e534eb63c9f92c4f3ad71637142445456d7b2 Mon Sep 17 00:00:00 2001 From: seondal Date: Sat, 12 Nov 2022 02:24:08 +0900 Subject: [PATCH 26/57] =?UTF-8?q?style=20:=20Layout=20style=20=EC=84=A4?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Layout.tsx | 9 +++++++-- src/pages/home.tsx | 11 +---------- src/pages/index.tsx | 5 ++--- 3 files changed, 10 insertions(+), 15 deletions(-) diff --git a/src/components/common/Layout.tsx b/src/components/common/Layout.tsx index 150a49e..4a8deaf 100644 --- a/src/components/common/Layout.tsx +++ b/src/components/common/Layout.tsx @@ -9,13 +9,18 @@ export default function Layout({ children }: LayoutProps) { const router = useRouter(); return ( <> -
+
{children} {router.pathname !== "/" &&
}
diff --git a/src/pages/home.tsx b/src/pages/home.tsx index 7dfc16a..95c99d7 100644 --- a/src/pages/home.tsx +++ b/src/pages/home.tsx @@ -19,7 +19,7 @@ export default function Home({ }: HomeProps) { return ( <> -
+
@@ -30,15 +30,6 @@ export default function Home({
- ); } diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 0a0f029..32edb08 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -1,7 +1,6 @@ import { useRouter } from "next/router"; import Image from "next/image"; import Logo from "../../public/img/netflix_5.gif"; -import styles from "../../styles/Home.module.css"; import { useEffect } from "react"; export default function Home() { @@ -17,8 +16,8 @@ export default function Home() { }, []); return ( -
- Logo of Netflix +
+ Logo of Netflix
); } From ca9643621e6bd4bf4670208a67869eff8fe61332 Mon Sep 17 00:00:00 2001 From: seondal Date: Sat, 12 Nov 2022 02:37:02 +0900 Subject: [PATCH 27/57] =?UTF-8?q?edit=20:=20footer=20styled-components=20?= =?UTF-8?q?=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Footer.tsx | 72 ++++++++++++++------------------ 1 file changed, 31 insertions(+), 41 deletions(-) diff --git a/src/components/common/Footer.tsx b/src/components/common/Footer.tsx index 789b801..81665ab 100644 --- a/src/components/common/Footer.tsx +++ b/src/components/common/Footer.tsx @@ -1,56 +1,46 @@ -import styled from "styled-components"; import FooterItem from "./FooterItem"; import FooterInfo from "../../assets/FooterInfo.json"; import { useRouter } from "next/router"; +import Link from "next/link"; export default function Footer() { const router = useRouter(); const footerInfo = FooterInfo; - const handleClick = (name: string) => { - if (name === "Home") { - router.push("/home"); - } else if (name === "Search") { - router.push("/search"); - } - }; - return ( -
- {footerInfo.map((f) => { - const select = router.pathname === "/" + f.alt; - return ( - handleClick(f.name)}> - - - ); - })} - -
+ display: flex; + justify-content: space-evenly; + } + `} + ); } -const ItemButton = styled.div``; From 190afadd2c1d5e12305d66de9817204e51a0c73a Mon Sep 17 00:00:00 2001 From: seondal Date: Sat, 12 Nov 2022 02:51:53 +0900 Subject: [PATCH 28/57] =?UTF-8?q?Feat=20:=20=EB=A9=94=EC=9D=B8=ED=8E=98?= =?UTF-8?q?=EC=9D=B4=EC=A7=80=20->=20=EC=98=81=ED=99=94=20=EC=83=81?= =?UTF-8?q?=EC=84=B8=20=ED=8E=98=EC=9D=B4=EC=A7=80=20=EC=97=B0=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/home/FirstMovie.tsx | 4 ---- src/components/home/MovieList.tsx | 17 ++++++++++++++--- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index a540be6..2ba77ef 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -4,10 +4,6 @@ import Info from "../../../public/img/Header/Info.png"; import MyList from "../../../public/img/Header/MyList.png"; import Header from "../common/Header"; -interface Props { - path: string; -} - export default function FirstMovie({ movies }: any) { const len_movies = movies.length; const rand_0_len = Math.floor(Math.random() * len_movies); diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index 42d1252..20edd7e 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -1,3 +1,4 @@ +import Link from "next/link"; import { IMovieInfo } from "../../interface"; interface MovieListProps { @@ -9,14 +10,24 @@ export default function MovieList({ movies, isPreview }: MovieListProps) { return (
{movies.map((m: any) => ( - <> + {m.title} - + ))} + ); } From b23435dbc6d42942f5a7b8285621b1c5a23479f6 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Wed, 16 Nov 2022 14:59:36 +0900 Subject: [PATCH 32/57] =?UTF-8?q?feat=20:=20head=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Layout.tsx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/components/common/Layout.tsx b/src/components/common/Layout.tsx index 4a8deaf..a67580f 100644 --- a/src/components/common/Layout.tsx +++ b/src/components/common/Layout.tsx @@ -1,5 +1,6 @@ import { useRouter } from "next/router"; import Footer from "./Footer"; +import Head from "next/head"; interface LayoutProps { children?: JSX.Element; @@ -9,6 +10,11 @@ export default function Layout({ children }: LayoutProps) { const router = useRouter(); return ( <> + + + Netflix + +
{children} {router.pathname !== "/" &&
} From 82cf435ed9fe6e0682687dcd43b0295c6bc82afd Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Wed, 16 Nov 2022 16:06:04 +0900 Subject: [PATCH 33/57] =?UTF-8?q?feat=20:=20=EA=B2=80=EC=83=89=20=EA=B8=B0?= =?UTF-8?q?=EB=8A=A5=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/search/SearchList.tsx | 37 ++++++++++++++++++++++++++++ src/pages/search.tsx | 24 +++++++++++++++--- 2 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 src/components/search/SearchList.tsx diff --git a/src/components/search/SearchList.tsx b/src/components/search/SearchList.tsx new file mode 100644 index 0000000..d112d79 --- /dev/null +++ b/src/components/search/SearchList.tsx @@ -0,0 +1,37 @@ +import Link from "next/link"; +import { IMovieInfo } from "../../interface"; + +interface SearchListProps { + movies: IMovieInfo[]; +} + + +export default function SearchList(movies : SearchListProps){ + return( + <> + {!movies &&

Loading...

} + {/* {movies?.map((movie : any) => ( + +
+ +

{movie.original_title}

+
+ + ))} */} + + ) +} \ No newline at end of file diff --git a/src/pages/search.tsx b/src/pages/search.tsx index 8295e9a..ee276cf 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -1,18 +1,36 @@ import { getTopSearches } from "../api"; import { IMovieInfo } from "../interface"; import Link from "next/link"; +import SearchList from "../components/search/SearchList"; +import {useState, useEffect} from 'react'; interface SearchProps { topSearchesMovies: IMovieInfo[]; } export default function Search({ topSearchesMovies }: SearchProps) { + + const [searchData, setSearchData] = useState(topSearchesMovies); + const [search, setSearch] = useState(""); + + const onChange = (e:React.ChangeEvent) => { + setSearch(e.target.value); + } + + const filterData = searchData.filter((movie) => { + let result = movie.title.replace(" ","").toLocaleLowerCase().includes(search.replace(" ","").toLocaleLowerCase()); + return result; + }) + return ( <> - +

Top Searches

- {!topSearchesMovies &&

Loading...

} - {topSearchesMovies?.map((movie) => ( + + {!filterData &&

Loading...

} + {filterData?.map((movie) => ( Date: Wed, 16 Nov 2022 16:19:37 +0900 Subject: [PATCH 34/57] =?UTF-8?q?chore=20:=20searchList=20component=20?= =?UTF-8?q?=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/search/SearchList.tsx | 7 ++++--- src/pages/search.tsx | 31 +++++----------------------- 2 files changed, 9 insertions(+), 29 deletions(-) diff --git a/src/components/search/SearchList.tsx b/src/components/search/SearchList.tsx index d112d79..407d51e 100644 --- a/src/components/search/SearchList.tsx +++ b/src/components/search/SearchList.tsx @@ -6,11 +6,12 @@ interface SearchListProps { } -export default function SearchList(movies : SearchListProps){ +export default function SearchList({movies} : SearchListProps){ + return( <> {!movies &&

Loading...

} - {/* {movies?.map((movie : any) => ( + {movies.map((movie : IMovieInfo) => ( {movie.original_title}
- ))} */} + ))} ) } \ No newline at end of file diff --git a/src/pages/search.tsx b/src/pages/search.tsx index ee276cf..d7a56ea 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -17,8 +17,10 @@ export default function Search({ topSearchesMovies }: SearchProps) { setSearch(e.target.value); } - const filterData = searchData.filter((movie) => { - let result = movie.title.replace(" ","").toLocaleLowerCase().includes(search.replace(" ","").toLocaleLowerCase()); + const filterData : IMovieInfo[] = searchData.filter((movie) => { + // console.log('m:', movie.title.replace(" ","").toLocaleLowerCase()); + // console.log('se:',search.replace(" ","").toLocaleLowerCase()); + let result = movie.title.replace(" ","").toLocaleLowerCase().includes(search.toLocaleLowerCase()); return result; }) @@ -28,30 +30,7 @@ export default function Search({ topSearchesMovies }: SearchProps) { type="text" value={search} onChange={onChange} placeholder="Search for a show, movie, genre, e.t.c." />

Top Searches

- - {!filterData &&

Loading...

} - {filterData?.map((movie) => ( - -
- -

{movie.original_title}

-
- - ))} + ); } From cb3cb45049e90df5dc0ff37ec0c0339a1dc3668e Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Wed, 16 Nov 2022 17:20:57 +0900 Subject: [PATCH 35/57] =?UTF-8?q?fix=20:=20search=20api=20=EC=97=B0?= =?UTF-8?q?=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 38 ++++++++++++++++++++++++++++++++++++++ package.json | 1 + src/api.tsx | 19 +++++++++++++------ src/atom.tsx | 8 ++++++++ src/pages/_app.tsx | 5 +++-- src/pages/search.tsx | 25 ++++++++++++++++--------- 6 files changed, 79 insertions(+), 17 deletions(-) create mode 100644 src/atom.tsx diff --git a/package-lock.json b/package-lock.json index af38c49..d487e9d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,6 +20,7 @@ "react": "18.2.0", "react-dom": "18.2.0", "react-query": "^3.39.2", + "recoil": "^0.7.6", "styled-components": "^5.3.6", "typescript": "4.8.4" }, @@ -2066,6 +2067,11 @@ "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" }, + "node_modules/hamt_plus": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hamt_plus/-/hamt_plus-1.0.2.tgz", + "integrity": "sha512-t2JXKaehnMb9paaYA7J0BX8QQAY8lwfQ9Gjf4pg/mk4krt+cmwmU652HOoWonf+7+EQV97ARPMhhVgU1ra2GhA==" + }, "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -3036,6 +3042,25 @@ } } }, + "node_modules/recoil": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/recoil/-/recoil-0.7.6.tgz", + "integrity": "sha512-hsBEw7jFdpBCY/tu2GweiyaqHKxVj6EqF2/SfrglbKvJHhpN57SANWvPW+gE90i3Awi+A5gssOd3u+vWlT+g7g==", + "dependencies": { + "hamt_plus": "1.0.2" + }, + "peerDependencies": { + "react": ">=16.13.1" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + }, + "react-native": { + "optional": true + } + } + }, "node_modules/regenerator-runtime": { "version": "0.13.10", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz", @@ -5023,6 +5048,11 @@ "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" }, + "hamt_plus": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hamt_plus/-/hamt_plus-1.0.2.tgz", + "integrity": "sha512-t2JXKaehnMb9paaYA7J0BX8QQAY8lwfQ9Gjf4pg/mk4krt+cmwmU652HOoWonf+7+EQV97ARPMhhVgU1ra2GhA==" + }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -5679,6 +5709,14 @@ "match-sorter": "^6.0.2" } }, + "recoil": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/recoil/-/recoil-0.7.6.tgz", + "integrity": "sha512-hsBEw7jFdpBCY/tu2GweiyaqHKxVj6EqF2/SfrglbKvJHhpN57SANWvPW+gE90i3Awi+A5gssOd3u+vWlT+g7g==", + "requires": { + "hamt_plus": "1.0.2" + } + }, "regenerator-runtime": { "version": "0.13.10", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz", diff --git a/package.json b/package.json index d9b7580..7c21852 100644 --- a/package.json +++ b/package.json @@ -21,6 +21,7 @@ "react": "18.2.0", "react-dom": "18.2.0", "react-query": "^3.39.2", + "recoil": "^0.7.6", "styled-components": "^5.3.6", "typescript": "4.8.4" }, diff --git a/src/api.tsx b/src/api.tsx index 4c05e79..8a18228 100644 --- a/src/api.tsx +++ b/src/api.tsx @@ -1,9 +1,16 @@ import { API_KEY } from "./assets/config"; +export const API_KEY_TEST = '0c75b9faeb39691a7d8e7af98ee5f303'; +const BASE_URL = `https://api.themoviedb.org/3/`; -const BASE_URL = `https://api.themoviedb.org/3/movie/`; -export const getNowPlaying = `${BASE_URL}/now_playing?api_key=${API_KEY}&language=en-US&page=1`; -export const getTopRated = `${BASE_URL}/top_rated?api_key=${API_KEY}&language=en-US&page=1`; -export const getPopular = `${BASE_URL}/popular?api_key=${API_KEY}&language=en-US&page=1`; -export const getUpComing = `${BASE_URL}/upcoming?api_key=${API_KEY}&language=en-US&page=1`; -export const getTopSearches = `${BASE_URL}/top_rated?api_key=${API_KEY}`; +export const getNowPlaying = `${BASE_URL}/movie/now_playing?api_key=${API_KEY}&language=en-US&page=1`; +export const getTopRated = `${BASE_URL}/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1`; +export const getPopular = `${BASE_URL}/movie/popular?api_key=${API_KEY}&language=en-US&page=1`; +export const getUpComing = `${BASE_URL}/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1`; +export const getTopSearches = `${BASE_URL}/movie/top_rated?api_key=${API_KEY}`; +export const getSearchMovies_test = `${BASE_URL}/movie/top_rated?api_key=${API_KEY}`; + +export function getSearchMovies(search : string){ + const result = `${BASE_URL}/search/movie?api_key=${API_KEY_TEST}&language=en-US&page=1&include_adult=false&query=${search}`; + return result; +} diff --git a/src/atom.tsx b/src/atom.tsx new file mode 100644 index 0000000..740bc07 --- /dev/null +++ b/src/atom.tsx @@ -0,0 +1,8 @@ +import {atom} from "recoil"; + +const searchState = atom({ + key: 'searchState', + default: '', +}); + +export { searchState }; \ No newline at end of file diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index c040b7f..b6614f2 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -2,13 +2,14 @@ import "../../styles/globals.css"; import type { AppProps } from "next/app"; import React from "react"; import Layout from "../components/common/Layout"; +import { RecoilRoot } from "recoil"; export default function App({ Component, pageProps }: AppProps) { return ( - <> + - + ); } diff --git a/src/pages/search.tsx b/src/pages/search.tsx index d7a56ea..06a3da3 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -1,8 +1,10 @@ -import { getTopSearches } from "../api"; +import { getSearchMovies, getSearchMovies_test } from "../api"; import { IMovieInfo } from "../interface"; import Link from "next/link"; import SearchList from "../components/search/SearchList"; import {useState, useEffect} from 'react'; +import { useRecoilState } from 'recoil'; +import { searchState } from '../atom'; interface SearchProps { topSearchesMovies: IMovieInfo[]; @@ -17,12 +19,17 @@ export default function Search({ topSearchesMovies }: SearchProps) { setSearch(e.target.value); } - const filterData : IMovieInfo[] = searchData.filter((movie) => { - // console.log('m:', movie.title.replace(" ","").toLocaleLowerCase()); - // console.log('se:',search.replace(" ","").toLocaleLowerCase()); - let result = movie.title.replace(" ","").toLocaleLowerCase().includes(search.toLocaleLowerCase()); - return result; - }) + useEffect(() => { + async function fetchData() { + // You can await here + const response = await (await fetch(getSearchMovies(search))).json(); + const data = response.results; + setSearchData(data); + } + if(search){ + fetchData(); + } + }, [search]); return ( <> @@ -30,13 +37,13 @@ export default function Search({ topSearchesMovies }: SearchProps) { type="text" value={search} onChange={onChange} placeholder="Search for a show, movie, genre, e.t.c." />

Top Searches

- + ); } export async function getServerSideProps() { - const topSearchesMoviesResponse = await (await fetch(getTopSearches)).json(); + const topSearchesMoviesResponse = await (await fetch(getSearchMovies_test)).json(); const topSearchesMovies = topSearchesMoviesResponse.results; return { From 2e45c7a56aeb3346e02959578aa610952ee19963 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Wed, 16 Nov 2022 17:21:35 +0900 Subject: [PATCH 36/57] =?UTF-8?q?fix=20:=20recoil=20=EC=82=AD=EC=A0=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/atom.tsx | 8 -------- src/pages/_app.tsx | 3 --- src/pages/search.tsx | 2 -- 3 files changed, 13 deletions(-) delete mode 100644 src/atom.tsx diff --git a/src/atom.tsx b/src/atom.tsx deleted file mode 100644 index 740bc07..0000000 --- a/src/atom.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import {atom} from "recoil"; - -const searchState = atom({ - key: 'searchState', - default: '', -}); - -export { searchState }; \ No newline at end of file diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index b6614f2..2e212b8 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -2,14 +2,11 @@ import "../../styles/globals.css"; import type { AppProps } from "next/app"; import React from "react"; import Layout from "../components/common/Layout"; -import { RecoilRoot } from "recoil"; export default function App({ Component, pageProps }: AppProps) { return ( - - ); } diff --git a/src/pages/search.tsx b/src/pages/search.tsx index 06a3da3..d9321b6 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -3,8 +3,6 @@ import { IMovieInfo } from "../interface"; import Link from "next/link"; import SearchList from "../components/search/SearchList"; import {useState, useEffect} from 'react'; -import { useRecoilState } from 'recoil'; -import { searchState } from '../atom'; interface SearchProps { topSearchesMovies: IMovieInfo[]; From 596f1c861e69dd70c4f42df054af2738a0843aa3 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Wed, 16 Nov 2022 17:24:24 +0900 Subject: [PATCH 37/57] =?UTF-8?q?chore=20:=20api=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api.tsx | 4 +--- src/pages/search.tsx | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/api.tsx b/src/api.tsx index 8a18228..b63672e 100644 --- a/src/api.tsx +++ b/src/api.tsx @@ -1,5 +1,4 @@ import { API_KEY } from "./assets/config"; -export const API_KEY_TEST = '0c75b9faeb39691a7d8e7af98ee5f303'; const BASE_URL = `https://api.themoviedb.org/3/`; @@ -8,9 +7,8 @@ export const getTopRated = `${BASE_URL}/movie/top_rated?api_key=${API_KEY}&langu export const getPopular = `${BASE_URL}/movie/popular?api_key=${API_KEY}&language=en-US&page=1`; export const getUpComing = `${BASE_URL}/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1`; export const getTopSearches = `${BASE_URL}/movie/top_rated?api_key=${API_KEY}`; -export const getSearchMovies_test = `${BASE_URL}/movie/top_rated?api_key=${API_KEY}`; export function getSearchMovies(search : string){ - const result = `${BASE_URL}/search/movie?api_key=${API_KEY_TEST}&language=en-US&page=1&include_adult=false&query=${search}`; + const result = `${BASE_URL}/search/movie?api_key=${API_KEY}&language=en-US&page=1&include_adult=false&query=${search}`; return result; } diff --git a/src/pages/search.tsx b/src/pages/search.tsx index d9321b6..76fb6e6 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -1,4 +1,4 @@ -import { getSearchMovies, getSearchMovies_test } from "../api"; +import { getSearchMovies, getTopSearches } from "../api"; import { IMovieInfo } from "../interface"; import Link from "next/link"; import SearchList from "../components/search/SearchList"; @@ -41,7 +41,7 @@ export default function Search({ topSearchesMovies }: SearchProps) { } export async function getServerSideProps() { - const topSearchesMoviesResponse = await (await fetch(getSearchMovies_test)).json(); + const topSearchesMoviesResponse = await (await fetch(getTopSearches)).json(); const topSearchesMovies = topSearchesMoviesResponse.results; return { From e285cb5b2048dacabb0b7aaa2b38e60e88927679 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Wed, 16 Nov 2022 20:24:20 +0900 Subject: [PATCH 38/57] =?UTF-8?q?fix=20:=20=EC=8B=A4=EC=8B=9C=EA=B0=84=20?= =?UTF-8?q?=EA=B2=80=EC=83=89=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 15 ++++++++ package.json | 1 + public/img/play.png | Bin 0 -> 960 bytes src/api.tsx | 2 +- src/components/search/SearchList.tsx | 50 +++++++++++++++++++++++---- 5 files changed, 60 insertions(+), 8 deletions(-) create mode 100644 public/img/play.png diff --git a/package-lock.json b/package-lock.json index d487e9d..0ed12cd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,6 +19,7 @@ "next": "13.0.2", "react": "18.2.0", "react-dom": "18.2.0", + "react-icons": "^4.6.0", "react-query": "^3.39.2", "recoil": "^0.7.6", "styled-components": "^5.3.6", @@ -3012,6 +3013,14 @@ "react": "^18.2.0" } }, + "node_modules/react-icons": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.6.0.tgz", + "integrity": "sha512-rR/L9m9340yO8yv1QT1QurxWQvWpbNHqVX0fzMln2HEb9TEIrQRGsqiNFQfiv9/JEUbyHmHPlNTB2LWm2Ttz0g==", + "peerDependencies": { + "react": "*" + } + }, "node_modules/react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -5694,6 +5703,12 @@ "scheduler": "^0.23.0" } }, + "react-icons": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.6.0.tgz", + "integrity": "sha512-rR/L9m9340yO8yv1QT1QurxWQvWpbNHqVX0fzMln2HEb9TEIrQRGsqiNFQfiv9/JEUbyHmHPlNTB2LWm2Ttz0g==", + "requires": {} + }, "react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", diff --git a/package.json b/package.json index 7c21852..ee23413 100644 --- a/package.json +++ b/package.json @@ -20,6 +20,7 @@ "next": "13.0.2", "react": "18.2.0", "react-dom": "18.2.0", + "react-icons": "^4.6.0", "react-query": "^3.39.2", "recoil": "^0.7.6", "styled-components": "^5.3.6", diff --git a/public/img/play.png b/public/img/play.png new file mode 100644 index 0000000000000000000000000000000000000000..05d8beb36b457a5de2dee908ed88ffc62809ed5d GIT binary patch literal 960 zcmV;x13&zUP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGt)&Kw*)&UsN%IyFE164^xK~!i%&6x|a z>Oc@gk$?k`fCMBU0SDmV;s6|g18{&8Bp@O0o+Jy&ruQ?+!hK!URWR&tK0O;?_KT_{ z=ks~BTCJ+}dR=X|+nT(Fe5U41q%>xeL+$tb>UzCakH@1*fiaB5vE_0p*ECWZlO&?| z`@KEZc(4Y}s68?%jX{<=xDPTj(h+GKkaU0I;6Bdhv$eFOu}7l*d_LPP!XSzq;BYv+ z1nh{-qLa;LBhMlzjW6zYyLMR(9OH17sL`dElXB+g=SR->D2+8)AcP4u+aqhl9LaD( z8l#6lolZr2I%~0J2()Q6ujSB4{V7l`hT1ffY=pFi4%M7r_6^jsN+~vK*B@V+q5W|z zptHV#F5)9H`6DDyDigGEG5-CA6e^^|T0+b|LuD*V>HS8f4smtIC<1zX=`1N>i!3xR zRP=Eur`vRq*}JpI-YTeG7Md68F(J1!e3TTt3apofM)^KCL}yTxA&hvgkyL{2REGAF ztKKb;VhjXgs>nHukIv;bs|D!8QUW=cB63wBx7*EqKI}f0@_`nN6?yQC)RK>mcUiQ8 z&8;H8TrTbGH)J=lowB z;Bp$}z+aaTmsHMv%7MCs5Q2|yiP-YZPKmg7K($f2gIXj+D-dqIxmYVib=kJgfA1or zT&&r3jGR$>w^%HC3&fa%lt^P#W!`&~;K9g;B~mfuiZn)5|D83PFAhG~*e#G^2&I00 z@yiEvve^tO{e{LV(hybq9DJdH>OSBgIT3W2B2q>6R?+tY`<|e(a6BHngC)Tfk%q|L zK04jU@%=_+0i=G7n<`R8RXRZI)q5keKxtT?-=~mFvZs&01=}}-CX>3-C89{6RNY7R z9~gqAgkzs57e`7}1rJ2ZSQ_Q!=76|L^mj+rQi63zbT( {!movies &&

Loading...

} - {movies.map((movie : IMovieInfo) => ( + {movies?.map((movie : IMovieInfo) => ( + movie.backdrop_path == null + ? +
+ :
- -

{movie.original_title}

+
+ +
+
+ {movie.original_title} +
+
+ +
+
+
))} + ) } \ No newline at end of file From de6184855dca037e4c8c183159acac9ad8ae1cc4 Mon Sep 17 00:00:00 2001 From: seondal Date: Thu, 17 Nov 2022 01:27:54 +0900 Subject: [PATCH 39/57] =?UTF-8?q?[Docs]=20api.tsx=20=EC=A3=BC=EC=84=9D=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api.tsx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/api.tsx b/src/api.tsx index bf79bc4..f670288 100644 --- a/src/api.tsx +++ b/src/api.tsx @@ -1,14 +1,15 @@ import { API_KEY } from "./assets/config"; -const BASE_URL = `https://api.themoviedb.org/3/`; +const BASE_URL = `https://api.themoviedb.org/3/`; +// movie export const getNowPlaying = `${BASE_URL}/movie/now_playing?api_key=${API_KEY}&language=en-US&page=1`; export const getTopRated = `${BASE_URL}/movie/top_rated?api_key=${API_KEY}&language=en-US&page=1`; export const getPopular = `${BASE_URL}/movie/popular?api_key=${API_KEY}&language=en-US&page=1`; export const getUpComing = `${BASE_URL}/movie/upcoming?api_key=${API_KEY}&language=en-US&page=1`; export const getTopSearches = `${BASE_URL}/movie/popular?api_key=${API_KEY}&language=en-US&page=1`; -export function getSearchMovies(search : string){ - const result = `${BASE_URL}/search/movie?api_key=${API_KEY}&language=en-US&page=1&include_adult=false&query=${search}`; - return result; +// search +export function getSearchMovies(search: string) { + return `${BASE_URL}/search/movie?api_key=${API_KEY}&language=en-US&page=1&include_adult=false&query=${search}`; } From 123bb2b5fe275a46d55ba02a4a0ff73986a4172e Mon Sep 17 00:00:00 2001 From: seondal Date: Thu, 17 Nov 2022 01:34:02 +0900 Subject: [PATCH 40/57] =?UTF-8?q?style=20:=20footer=20=EB=94=94=EC=9E=90?= =?UTF-8?q?=EC=9D=B8=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/Footer.tsx | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/components/common/Footer.tsx b/src/components/common/Footer.tsx index 81665ab..a586fe3 100644 --- a/src/components/common/Footer.tsx +++ b/src/components/common/Footer.tsx @@ -27,18 +27,12 @@ export default function Footer() { .container { position: fixed; background: black; - - // 중앙 정렬 - left: 50%; - transform: translate(-50%, 0); - bottom: 0; - width: 377px; height: 48px; - display: flex; justify-content: space-evenly; + padding: 8px 0px; } `} From 93b85cddd4a140f17c3a395ff590f24ab3c851a8 Mon Sep 17 00:00:00 2001 From: seondal Date: Thu, 17 Nov 2022 02:05:52 +0900 Subject: [PATCH 41/57] =?UTF-8?q?style=20:=20=EC=98=81=ED=99=94=20?= =?UTF-8?q?=EC=83=81=EC=84=B8=ED=8E=98=EC=9D=B4=EC=A7=80=20=EC=8A=A4?= =?UTF-8?q?=ED=83=80=EC=9D=BC=20=EC=A7=80=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/home/MovieList.tsx | 2 +- src/pages/movies/[...movieData].tsx | 55 +++++++++++++++++++++++++---- 2 files changed, 49 insertions(+), 8 deletions(-) diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index 20edd7e..9ec95c4 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -15,7 +15,7 @@ export default function MovieList({ movies, isPreview }: MovieListProps) { pathname: `/movies/${m.id}`, query: { title: m.original_title, - poster: m.poster_path, + poster: m.backdrop_path, overview: m.overview, }, }} diff --git a/src/pages/movies/[...movieData].tsx b/src/pages/movies/[...movieData].tsx index 89899df..1e53550 100644 --- a/src/pages/movies/[...movieData].tsx +++ b/src/pages/movies/[...movieData].tsx @@ -3,13 +3,54 @@ import { useRouter } from "next/router"; export default function MovieDetail() { const router = useRouter(); const { title, poster, overview } = router.query; - + const backdropURL = `https://image.tmdb.org/t/p/w500/${poster}`; return ( -
- - -

{title}

-
{overview}
-
+ <> +
+
+
+ +

{title}

+
{overview}
+
+
+ + ); } From 0c4be9486c279770cc188a80757230b9fb104211 Mon Sep 17 00:00:00 2001 From: seondal Date: Thu, 17 Nov 2022 02:22:43 +0900 Subject: [PATCH 42/57] =?UTF-8?q?refact=20:=20=08FirstMovie=20=EC=BB=B4?= =?UTF-8?q?=ED=8F=AC=EB=84=8C=ED=8A=B8=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api.tsx | 5 +++ src/components/common/BackgroundPoster.tsx | 36 ++++++++++++++++++++++ src/components/home/FirstMovie.tsx | 22 ++----------- src/pages/movies/[...movieData].tsx | 21 +++---------- 4 files changed, 48 insertions(+), 36 deletions(-) create mode 100644 src/components/common/BackgroundPoster.tsx diff --git a/src/api.tsx b/src/api.tsx index f670288..82cc40e 100644 --- a/src/api.tsx +++ b/src/api.tsx @@ -13,3 +13,8 @@ export const getTopSearches = `${BASE_URL}/movie/popular?api_key=${API_KEY}&lang export function getSearchMovies(search: string) { return `${BASE_URL}/search/movie?api_key=${API_KEY}&language=en-US&page=1&include_adult=false&query=${search}`; } + +// image +export function getImage(url: string) { + return `http://image.tmdb.org/t/p/w500${url}`; +} diff --git a/src/components/common/BackgroundPoster.tsx b/src/components/common/BackgroundPoster.tsx new file mode 100644 index 0000000..a1c51c2 --- /dev/null +++ b/src/components/common/BackgroundPoster.tsx @@ -0,0 +1,36 @@ +import { getImage } from "../../api"; + +interface BackgroundPosterProps { + children?: JSX.Element; + url: string; +} + +export default function BackgroundPoster({ + children, + url, +}: BackgroundPosterProps) { + const backgroundImage = getImage(url); + + return ( + <> +
{children}
+ + + ); +} diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index 2ba77ef..7d7af15 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -3,19 +3,18 @@ import Play from "../../../public/img/Header/Play.png"; import Info from "../../../public/img/Header/Info.png"; import MyList from "../../../public/img/Header/MyList.png"; import Header from "../common/Header"; +import BackgroundPoster from "../common/BackgroundPoster"; export default function FirstMovie({ movies }: any) { const len_movies = movies.length; const rand_0_len = Math.floor(Math.random() * len_movies); - const backgroundImage = - "http://image.tmdb.org/t/p/w500" + movies[rand_0_len].backdrop_path; return ( <>
-
+
-
+
{"list"} @@ -38,21 +37,6 @@ export default function FirstMovie({ movies }: any) { flex-direction: column; position: relative; } - .image-box { - object-fit: cover; - height: 415px; - width: 375px; - margin-bottom: 13px; - background-size: cover; - background-position: center; - background-image: linear-gradient( - 180deg, - rgba(0, 0, 0, 0.45) 0%, - rgba(0, 0, 0, 0) 87.26%, - #000000 100% - ), - url(${backgroundImage}); - } .middle-item { display: flex; justify-content: space-evenly; diff --git a/src/pages/movies/[...movieData].tsx b/src/pages/movies/[...movieData].tsx index 1e53550..c36637b 100644 --- a/src/pages/movies/[...movieData].tsx +++ b/src/pages/movies/[...movieData].tsx @@ -1,13 +1,15 @@ import { useRouter } from "next/router"; +import BackgroundPoster from "../../components/common/BackgroundPoster"; export default function MovieDetail() { const router = useRouter(); const { title, poster, overview } = router.query; - const backdropURL = `https://image.tmdb.org/t/p/w500/${poster}`; + const backdropURL = `${poster}`; + return ( <>
-
+

{title}

@@ -19,21 +21,6 @@ export default function MovieDetail() { display: flex; flex-direction: column; } - .backdrop { - object-fit: cover; - height: 415px; - width: 375px; - margin-bottom: 13px; - background-size: cover; - background-position: center; - background-image: linear-gradient( - 180deg, - rgba(0, 0, 0, 0.45) 0%, - rgba(0, 0, 0, 0) 87.26%, - #000000 100% - ), - url(${backdropURL}); - } .contents { padding: 13px 36px; min-height: 300px; From 9fe98ca2166cefa15b2db3056806983b1b19fd42 Mon Sep 17 00:00:00 2001 From: seondal Date: Thu, 17 Nov 2022 02:28:52 +0900 Subject: [PATCH 43/57] =?UTF-8?q?edit=20:=20getImage()=EB=A1=9C=20?= =?UTF-8?q?=EA=B5=90=EC=B2=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/home/FirstMovie.tsx | 2 +- src/components/home/MovieList.tsx | 5 +- src/components/search/SearchList.tsx | 128 +++++++++++++-------------- src/pages/movies/[...movieData].tsx | 4 +- 4 files changed, 68 insertions(+), 71 deletions(-) diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index 7d7af15..8e5c439 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -12,7 +12,7 @@ export default function FirstMovie({ movies }: any) { return ( <>
- +
diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index 9ec95c4..5b436cc 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -1,4 +1,5 @@ import Link from "next/link"; +import { getImage } from "../../api"; import { IMovieInfo } from "../../interface"; interface MovieListProps { @@ -15,7 +16,7 @@ export default function MovieList({ movies, isPreview }: MovieListProps) { pathname: `/movies/${m.id}`, query: { title: m.original_title, - poster: m.backdrop_path, + backdrop: m.backdrop_path, overview: m.overview, }, }} @@ -24,7 +25,7 @@ export default function MovieList({ movies, isPreview }: MovieListProps) { > {m.title} diff --git a/src/components/search/SearchList.tsx b/src/components/search/SearchList.tsx index 36e5b83..81d6749 100644 --- a/src/components/search/SearchList.tsx +++ b/src/components/search/SearchList.tsx @@ -1,74 +1,70 @@ import Link from "next/link"; import { IMovieInfo } from "../../interface"; import { GrCirclePlay } from "react-icons/gr"; +import { getImage } from "../../api"; interface SearchListProps { - movies: IMovieInfo[]; + movies: IMovieInfo[]; } - -export default function SearchList({movies} : SearchListProps){ - return( - <> - {!movies &&

Loading...

} - {movies?.map((movie : IMovieInfo) => ( - movie.backdrop_path == null - ? -
- : - -
-
- -
-
- {movie.original_title} -
-
- -
-
-
+export default function SearchList({ movies }: SearchListProps) { + return ( + <> + {!movies &&

Loading...

} + {movies?.map((movie: IMovieInfo) => + movie.backdrop_path == null ? ( +
+ ) : ( + +
+
+ +
+
{movie.original_title}
+
+ +
- - ))} - - - ) -} \ No newline at end of file +
+
+ + ) + )} + + + ); +} diff --git a/src/pages/movies/[...movieData].tsx b/src/pages/movies/[...movieData].tsx index c36637b..d5157ee 100644 --- a/src/pages/movies/[...movieData].tsx +++ b/src/pages/movies/[...movieData].tsx @@ -3,8 +3,8 @@ import BackgroundPoster from "../../components/common/BackgroundPoster"; export default function MovieDetail() { const router = useRouter(); - const { title, poster, overview } = router.query; - const backdropURL = `${poster}`; + const { title, backdrop, overview } = router.query; + const backdropURL = `${backdrop}`; return ( <> From 6da53de9f8bad0379adbd9a27469acde8400c8ef Mon Sep 17 00:00:00 2001 From: seondal Date: Thu, 17 Nov 2022 02:49:54 +0900 Subject: [PATCH 44/57] =?UTF-8?q?refact=20:=20LinkToMovieData=20=EC=BB=B4?= =?UTF-8?q?=ED=8F=AC=EB=84=8C=ED=8A=B8=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/common/LinktoMovieData.tsx | 34 +++++++++++++++++ src/components/home/MovieList.tsx | 20 ++++------ src/components/search/SearchList.tsx | 46 +++++++++-------------- src/pages/search.tsx | 23 ++++++------ 4 files changed, 71 insertions(+), 52 deletions(-) create mode 100644 src/components/common/LinktoMovieData.tsx diff --git a/src/components/common/LinktoMovieData.tsx b/src/components/common/LinktoMovieData.tsx new file mode 100644 index 0000000..7f507a5 --- /dev/null +++ b/src/components/common/LinktoMovieData.tsx @@ -0,0 +1,34 @@ +import Link from "next/link"; + +interface LinktoMovieDataProps { + children?: JSX.Element; + id: number; + original_title: string; + backdrop_path: string; + overview: string; +} + +export default function LinktoMovieData({ + children, + id, + original_title, + backdrop_path, + overview, +}: LinktoMovieDataProps) { + return ( + + {children} + + ); +} diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index 5b436cc..25d1205 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -1,6 +1,6 @@ -import Link from "next/link"; import { getImage } from "../../api"; import { IMovieInfo } from "../../interface"; +import LinktoMovieData from "../common/LinkToMovieData"; interface MovieListProps { movies: IMovieInfo[]; @@ -11,24 +11,18 @@ export default function MovieList({ movies, isPreview }: MovieListProps) { return (
{movies.map((m: any) => ( - {m.title} - + ))} diff --git a/src/components/home/TextInfo.tsx b/src/components/home/TextInfo.tsx index 069e90a..679adb8 100644 --- a/src/components/home/TextInfo.tsx +++ b/src/components/home/TextInfo.tsx @@ -7,9 +7,8 @@ export default function TextInfo({ name, isPreview }: ITextInfo) {
From d22c1114c1081508e7e65639b66e4871b6c7b536 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 18 Nov 2022 03:23:43 +0900 Subject: [PATCH 49/57] =?UTF-8?q?folder=20:=20component=20>=20layout=20?= =?UTF-8?q?=ED=8F=B4=EB=8D=94=EC=A0=95=EB=A6=AC=20+=20=ED=91=B8=ED=84=B0?= =?UTF-8?q?=20=EC=84=B8=EC=84=B8=ED=95=9C=20=EC=8A=A4=ED=83=80=EC=9D=BC=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/home/FirstMovie.tsx | 2 +- src/components/{common => home}/Header.tsx | 0 src/components/{common => layout}/Footer.tsx | 0 src/components/{common => layout}/FooterItem.tsx | 2 +- src/components/{common => layout}/Layout.tsx | 0 src/pages/_app.tsx | 8 ++++---- 6 files changed, 6 insertions(+), 6 deletions(-) rename src/components/{common => home}/Header.tsx (100%) rename src/components/{common => layout}/Footer.tsx (100%) rename src/components/{common => layout}/FooterItem.tsx (93%) rename src/components/{common => layout}/Layout.tsx (100%) diff --git a/src/components/home/FirstMovie.tsx b/src/components/home/FirstMovie.tsx index be793d9..ae026f9 100644 --- a/src/components/home/FirstMovie.tsx +++ b/src/components/home/FirstMovie.tsx @@ -2,7 +2,7 @@ import Image from "next/image"; import Play from "../../../public/img/Header/Play.png"; import Info from "../../../public/img/Header/Info.png"; import MyList from "../../../public/img/Header/MyList.png"; -import Header from "../common/Header"; +import Header from "./Header"; import BackgroundPoster from "../common/BackgroundPoster"; import { IMovieInfo } from "../../interface"; diff --git a/src/components/common/Header.tsx b/src/components/home/Header.tsx similarity index 100% rename from src/components/common/Header.tsx rename to src/components/home/Header.tsx diff --git a/src/components/common/Footer.tsx b/src/components/layout/Footer.tsx similarity index 100% rename from src/components/common/Footer.tsx rename to src/components/layout/Footer.tsx diff --git a/src/components/common/FooterItem.tsx b/src/components/layout/FooterItem.tsx similarity index 93% rename from src/components/common/FooterItem.tsx rename to src/components/layout/FooterItem.tsx index f357877..4aa6923 100644 --- a/src/components/common/FooterItem.tsx +++ b/src/components/layout/FooterItem.tsx @@ -12,7 +12,7 @@ export default function FooterItem({ alt, name, selected }: IFooter) { <>
diff --git a/src/components/common/Layout.tsx b/src/components/layout/Layout.tsx similarity index 100% rename from src/components/common/Layout.tsx rename to src/components/layout/Layout.tsx diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index 2e212b8..d45fc70 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,12 +1,12 @@ import "../../styles/globals.css"; import type { AppProps } from "next/app"; import React from "react"; -import Layout from "../components/common/Layout"; +import Layout from "../components/layout/Layout"; export default function App({ Component, pageProps }: AppProps) { return ( - - - + + + ); } From f49226cae9232f6d02c617af65b761f60a75b635 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 18 Nov 2022 03:41:58 +0900 Subject: [PATCH 50/57] =?UTF-8?q?style=20:=20searchList=20=EC=8A=A4?= =?UTF-8?q?=ED=83=80=EC=9D=BC=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/search/SearchList.tsx | 13 ++++++------- src/pages/search.tsx | 3 ++- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/components/search/SearchList.tsx b/src/components/search/SearchList.tsx index 859bf9a..fa9c3ae 100644 --- a/src/components/search/SearchList.tsx +++ b/src/components/search/SearchList.tsx @@ -1,5 +1,5 @@ import { IMovieInfo } from "../../interface"; -import { GrCirclePlay } from "react-icons/gr"; +import { BiPlayCircle } from "react-icons/bi"; import { getImage } from "../../api"; import LinktoMovieData from "../common/LinkToMovieData"; @@ -24,9 +24,7 @@ export default function SearchList({ movies }: SearchListProps) {
{movie.original_title}
-
- -
+
@@ -45,17 +43,18 @@ export default function SearchList({ movies }: SearchListProps) { height: 76px; } .title-box { + display: flex; + align-items: center; + justify-content: space-between; background: #424242; width: 229px; height: 76px; + padding-left: 20px; } .title { font-weight: 400; font-size: 14.7222px; } - .play { - size: "25"; - } `} ); diff --git a/src/pages/search.tsx b/src/pages/search.tsx index 8ba1cc5..c6f7051 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -2,6 +2,7 @@ import { getSearchMovies, getTopSearches } from "../api"; import { IMovieInfo } from "../interface"; import SearchList from "../components/search/SearchList"; import { useState, useEffect } from "react"; +import TextInfo from "../components/home/TextInfo"; interface SearchProps { topSearchesMovies: IMovieInfo[]; @@ -35,7 +36,7 @@ export default function Search({ topSearchesMovies }: SearchProps) { onChange={onChange} placeholder="Search for a show, movie, genre, e.t.c." /> -

Top Searches

+ ); From 08744125951869dd7bd7978f4497793b78797759 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 18 Nov 2022 04:01:09 +0900 Subject: [PATCH 51/57] =?UTF-8?q?style=20:=20input-box=20=EC=8A=A4?= =?UTF-8?q?=ED=83=80=EC=9D=BC=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/search/SearchList.tsx | 2 +- src/pages/search.tsx | 42 ++++++++++++++++++++++------ 2 files changed, 35 insertions(+), 9 deletions(-) diff --git a/src/components/search/SearchList.tsx b/src/components/search/SearchList.tsx index fa9c3ae..2eaf9bf 100644 --- a/src/components/search/SearchList.tsx +++ b/src/components/search/SearchList.tsx @@ -49,7 +49,7 @@ export default function SearchList({ movies }: SearchListProps) { background: #424242; width: 229px; height: 76px; - padding-left: 20px; + padding: 0px 11px 0px 25px; } .title { font-weight: 400; diff --git a/src/pages/search.tsx b/src/pages/search.tsx index c6f7051..5bdca4f 100644 --- a/src/pages/search.tsx +++ b/src/pages/search.tsx @@ -1,3 +1,4 @@ +import { BiSearch, BiX } from "react-icons/bi"; import { getSearchMovies, getTopSearches } from "../api"; import { IMovieInfo } from "../interface"; import SearchList from "../components/search/SearchList"; @@ -30,14 +31,39 @@ export default function Search({ topSearchesMovies }: SearchProps) { return ( <> - - - +
+
+ + + +
+ + +
+ ); } From d2ea807dc178f306fcb781395027bfc49f51d0dc Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 18 Nov 2022 05:14:46 +0900 Subject: [PATCH 52/57] =?UTF-8?q?feat=20:=20=EA=B8=B0=EA=B8=B0=20=ED=99=94?= =?UTF-8?q?=EB=A9=B4=20=ED=81=AC=EA=B8=B0=EC=97=90=EB=94=B0=EB=9D=BC=20?= =?UTF-8?q?=ED=99=94=EB=A9=B4=20=ED=81=AC=EA=B8=B0=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/getScreenWidth.tsx | 11 ++++++++++ src/components/common/BackgroundPoster.tsx | 1 - src/components/home/MovieList.tsx | 3 +-- src/components/layout/Footer.tsx | 9 +++++--- src/components/layout/Layout.tsx | 7 ++++--- src/components/search/SearchList.tsx | 6 ++++-- src/pages/home.tsx | 24 ++++++++++++++-------- src/pages/index.tsx | 16 +++++++-------- src/pages/movies/[...movieData].tsx | 17 +++++++++++---- 9 files changed, 63 insertions(+), 31 deletions(-) create mode 100644 src/assets/getScreenWidth.tsx diff --git a/src/assets/getScreenWidth.tsx b/src/assets/getScreenWidth.tsx new file mode 100644 index 0000000..03ba897 --- /dev/null +++ b/src/assets/getScreenWidth.tsx @@ -0,0 +1,11 @@ +// 반응형? 을 위해 화면크기를 받아오는 함수입니다 + +import { useState, useEffect } from "react"; + +export function getScreenWidth() { + const [screenWidth, setScreenWidth] = useState(375); + useEffect(() => { + setScreenWidth(window.screen.width); + }, []); + return screenWidth; +} diff --git a/src/components/common/BackgroundPoster.tsx b/src/components/common/BackgroundPoster.tsx index 57d063b..8e4f94e 100644 --- a/src/components/common/BackgroundPoster.tsx +++ b/src/components/common/BackgroundPoster.tsx @@ -18,7 +18,6 @@ export default function BackgroundPoster({ div { object-fit: cover; height: 415px; - width: 375px; margin-bottom: 13px; background-size: cover; background-position: center; diff --git a/src/components/home/MovieList.tsx b/src/components/home/MovieList.tsx index 6d27011..b0e00b8 100644 --- a/src/components/home/MovieList.tsx +++ b/src/components/home/MovieList.tsx @@ -1,6 +1,6 @@ import { getImage } from "../../api"; import { IMovieInfo } from "../../interface"; -import LinktoMovieData from "../common/LinkToMovieData"; +import LinktoMovieData from "../common/LinktoMovieData"; interface MovieListProps { movies: IMovieInfo[]; @@ -29,7 +29,6 @@ export default function MovieList({ movies, isPreview }: MovieListProps) { ); } diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 40fc536..ff34fab 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -1,22 +1,22 @@ import { useRouter } from "next/router"; import { useEffect, useRef } from "react"; import lottie from "lottie-web"; +import { getScreenWidth } from "../assets/getScreenWidth"; export default function Home() { + const screenWidth = getScreenWidth(); const router = useRouter(); const netflixContainer = useRef(null); useEffect(() => { - lottie.loadAnimation({ container: netflixContainer.current as HTMLDivElement, - renderer: 'svg', + renderer: "svg", loop: false, - autoplay:true, - animationData:require("../../public/img/netflix-logo.json") - - }) + autoplay: true, + animationData: require("../../public/img/netflix-logo.json"), + }); const timer = setTimeout(() => { router.push("/home"); @@ -36,8 +36,8 @@ export default function Home() { justify-content: center; align-items: center; } - .item{ - width: 375px; + .item { + width: ${screenWidth}; height: 100%; position: fixed; z-index: 1000; diff --git a/src/pages/movies/[...movieData].tsx b/src/pages/movies/[...movieData].tsx index d579e2d..953d0b4 100644 --- a/src/pages/movies/[...movieData].tsx +++ b/src/pages/movies/[...movieData].tsx @@ -13,7 +13,9 @@ export default function MovieDetail() {
- +
+ +
{overview}
@@ -22,18 +24,25 @@ export default function MovieDetail() { .container { display: flex; flex-direction: column; + justify-content: center; + margin-bottom: 20px; } - .contents { - padding: 13px 36px; + .button-box { + display: flex; + justify-content: center; } button { - width: 303px; + width: 100%; height: 45px; border-radius: 5.625px; background: #c4c4c4; color: black; font-size: 20.4624px; } + .contents { + padding: 13px 36px; + } + .overview { font-size: 11px; color: rgba(255, 255, 255, 0.83); From 294682ab973398aaa8365baddca1b702f3e83075 Mon Sep 17 00:00:00 2001 From: seondal Date: Fri, 18 Nov 2022 05:25:48 +0900 Subject: [PATCH 53/57] =?UTF-8?q?fix=20:=20=EC=98=A4=ED=83=80=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/search/SearchList.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/search/SearchList.tsx b/src/components/search/SearchList.tsx index 26a2c22..33f3350 100644 --- a/src/components/search/SearchList.tsx +++ b/src/components/search/SearchList.tsx @@ -1,7 +1,7 @@ import { IMovieInfo } from "../../interface"; import { BiPlayCircle } from "react-icons/bi"; import { getImage } from "../../api"; -import LinktoMovieData from "../common/LinkToMovieData"; +import LinktoMovieData from "../common/LinktoMovieData"; import { getScreenWidth } from "../../assets/getScreenWidth"; interface SearchListProps { From 158c87b72eaf30337f0abd464db48bdaa8756d22 Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 18 Nov 2022 14:33:44 +0900 Subject: [PATCH 54/57] =?UTF-8?q?fix=20:=20search=EC=97=90=EC=84=9C=20movi?= =?UTF-8?q?e=20image=20null=20=EC=97=90=EB=9F=AC=20=EC=B2=98=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/search/SearchList.tsx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/components/search/SearchList.tsx b/src/components/search/SearchList.tsx index 33f3350..947053d 100644 --- a/src/components/search/SearchList.tsx +++ b/src/components/search/SearchList.tsx @@ -15,6 +15,10 @@ export default function SearchList({ movies }: SearchListProps) { <> {!movies &&

Loading...

} {movies?.map((movie: IMovieInfo) => ( + movie.poster_path === null + ? +
+ :
Date: Fri, 18 Nov 2022 14:38:19 +0900 Subject: [PATCH 55/57] =?UTF-8?q?fix=20:=20footer=EC=97=90=20=EB=B2=84?= =?UTF-8?q?=ED=8A=BC=20=EB=88=84=EB=A5=B4=EB=A9=B4=20font=EB=8F=84=20?= =?UTF-8?q?=ED=9D=B0=EC=83=89=EC=9C=BC=EB=A1=9C=20=EB=B3=80=ED=95=98?= =?UTF-8?q?=EA=B2=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/layout/FooterItem.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/layout/FooterItem.tsx b/src/components/layout/FooterItem.tsx index 4aa6923..e0164ef 100644 --- a/src/components/layout/FooterItem.tsx +++ b/src/components/layout/FooterItem.tsx @@ -29,7 +29,7 @@ export default function FooterItem({ alt, name, selected }: IFooter) { color: #8c8787; } .selected { - color: "white"; + color: white; } .font { font-size: 8.2px; From 89cf90cc9ed4cd54f9c9fac85fb9b0028773000b Mon Sep 17 00:00:00 2001 From: heesoo <11junghs@gmail.com> Date: Fri, 18 Nov 2022 14:48:12 +0900 Subject: [PATCH 56/57] =?UTF-8?q?fix=20:=20margin=20=EC=A1=B0=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/home/TextInfo.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/home/TextInfo.tsx b/src/components/home/TextInfo.tsx index 679adb8..e49cedc 100644 --- a/src/components/home/TextInfo.tsx +++ b/src/components/home/TextInfo.tsx @@ -7,8 +7,8 @@ export default function TextInfo({ name, isPreview }: ITextInfo) {

f=_8K))LHuw`B+|8wRpt- zguU>DpA>)2dY&y+#3TDxQUk3yB;;HK+7Zw{DL7M_a`|vWJCLCk+8OdAf&V*Mtbj!{Bgbd z&%{zEc2HEK>Q4cKsTMGOb4dX*#0_2dV?AkBg)&l`bXCoB<&yYw;2i~>w=${2Rq4B< zrYcaoM3+yu8nTC1KGsyti{sYAd5XdM@)yPhMv*Lb$F0H2?O!VC{PJ6^OfmwGncsYD z-;GE^vhhugcqi?KmiM!fciqGtlY;td>-!Hf9}a|_xrl8syOM3tnnX!iaXXI)IzE$v z2D4NuY&u#*V-mC4%Y2|CqNEk+t*CVN04r$8hGyk~os@GcL;SEyLJvCa(_6D7HK(R} zrin~7mbsYFrDT({Q=sfn-VrC?cQ$6QgNM{L>^IWUcPrbm&EAmiBi=XVwZ7XS9Mb*E zsRc8zeNwj{hl83~q|{)zXEwME^(PHpXC#eNY4_?2Tv2w^Xf24BQ3{t9!OFmufgX-C z_Sf=0*OmUxpEMcp>gYCY=8Zo5LC9@Uq$UgnpT+CNNjDBXxSpkey-bUwco+w4eTNxk zk3X`?IE-V8EPO2c+Qv?IqwZ;t*mq?psk@GJ%HYe71r#TpmesvmhxGDi?JZw1?7FR@ zc^~&K7(&r=&M>3}dBw*Dn1Bii7bw=r77+1)tw(plAcICpLD{SG~(cl&+ngo zH&u2bq$`DFUOnNhKM>XBZGk^nPY|}(#T>mcPEkJkMRLsQ3%cAd;zqic4eT@B+`azD zkEzjV63QuCN>uUPsh-1UE+41YD94E}yOk3`yC`9!MdNXSvt>gwb3bJ)C(){7z0@t_^_<7|F{SM$u;3-P~Z z@|O6do-gv}Ow@*9M@BF9b-&{OmTuhE-#YYRx$OPJac!7lDjU^O8{d+^Z<##8#V^&Y z%^ij=YR_<SnQ9Ha%G( zP)_oPug*-C`u9L^TL&H8FazN4i-lu#0K8XwVAe;5ip$5fy~4x>W<3MD{p?CSL$8U) z>~+MNIm22u7Q8&+j)o5@En1DNf>{7?p%GC08!Gw%#IOZ^N($NAK+DR<=rqQfb}Xi7 zM8_l&>L-1}Hur2GXLD`3~|I02;rKpFr_2OdiYK^Xv$0e~_AAQJ#(0YDZ2$_9XJ0F(m&IRGdZ0CE9P9suM$ zMn3=`9{?2qKmh-!O=bd+z$Z%K&1b3 zVE1v=V+a60!qGduEK;xnqEvFYg+(@BNP z(35+4hU^T}J*Kb;2ZI@KBiIK2Jx`rN;iM9aub>T_N#{4&*;vajd!4f_vwH!lg$WjZ zj%L=HBs~0!r^@As#QYmiWzH}QS6LDDya@Sv)H16h3>!&&)z$ho@PFymXg(DuObK(XuCuJnyR5~3d0&}2 zp7N|nyGP_vR1FnmJRnfEe&nesr_e{9nl=&}h-$gn+3vLC!}n#IkF)J^!^>Owi3ho` z?etKn0Zpw*;F{_CyRZk6_cu#FK50MJNXGg3pnh*2oBC|?#n)Fks^5p&}OzB1ee*&*iJ(1)*qXUDq#da zVY%K;Bj|Vb5D|I>?K?r=SljhIEYI;7qF+39!;H~CgcT=Ho)#2`OM=%(h-6C5w-Ypv z(ilx=gjhdEtL2)Tg$Zd}y^BgZEd1)(>3aAsmaTDOE5&=<2_5#zx}sF^Z4hf|)<(i1 zDZg9pnkK79B40@^qP2rM`!fm~R0EArB)u@1e(Zoeed7vd|5ib1GsfgpZ=)noqTMRL z*fZ0z#OK0ujl)&sfvpPBA5D8$S*?A@_RdlPd{EKW;$%}>Ky0v9JAlo5TvS2qUEWX_ zduVKCS3Q7H-^OGX)HEz-qYHUZvyr21Fs&k_+6bB~>s;ox)+M)gZ9VCh#PPE9K4GqW z7BJ4!8b(@~to*(E(0$6f?|V?70^gp1*I3Ud_oy=y^Y(4CA-{|==H6pD4m&5JqCxCY zzlnOMv7h*uwfbpZbPB1AQMY3gtUl2PC>Zq|86@X8C%YVcA32yI!cCA-k}R|hM=T>} z!^;J>TH7C1nfGEljIZ`Fzb%vDKVNn{^ER=Vrc)t(Mkt?v7y4jOU zs?ksP?2E5r;oY7*aV_tv7VI43@a3Je_pY6GJz16=4YyZ z8u>Egln#!PUdylS3L9QpNDwy+)xHLNgWb#X=1 zjq#z6`b>gw%iL0wpyjoZdlRk5TrfYMR~8h_)whj9TN2xQn#x!*4C`u|g<50|C4o0r z^G6wJg?uytr9w7d3l1`5ODa+v#Nh6!Cih$;EJ><4j^m1!yj}GJi(#~Pe*NLAh1PjH zCGO(qXG^5)$nRrYOUp%=N@S}9H2Sz&Dpc&SGy_Rcbxj%3`yKOpRLmD+?TM_7a!h62 z^A}G8X}K6}t;9PR;Em22xqq5<`M0fC+{N>2?HY@4iqlk#TY~DGTi!MQvF_EOcCCqS z4@2^jSRS@W@r7eolXxpZdflFh@Oxt_5n+;zYFnil4@=@%7xhk>rZj8u*lCiGg@!$B zs>>T#Ulb9ywHsN&bQdR=L&Iql!X4}2V*P3f5AEYopw zL~>TtkxA~E#9P}j5C?Q*>31va256&uB5$xKsO*#oT(tN90G*+s=1(JcQ>VmfDSN)M zP$GXcdN-(o@tvv8mn3>q>8goA3+>oLk}v{!Ot1>ObTJr}ClWmvjg%PY%y0(NSgnA# zK#*42|MgNx@-O2wj8R9Rx@z;=tT9^YMZFqYXd-n8=cshcJ0zuU7BlT;h!C2rJsB#T z`nzVxZz@>WYs{W!FE4v}=c-~;<|~r2FW)*hoG_MEn{+#`lwG?vl5hEJqfksdfMlLt zlEh6fYaF#}zj-3lG<7#AG~Q_0W=P1l>y@CocgefGp<|VKH`=Pp-Gqa^$JKQ= z<4OK%wP77cAR?Bd$oo5oXu(Tz%9Xh&2XH%IuF~9mf~a1MCp8l znplXIg1&0?Rx9Z>$2TJSuJvEs7cP1^XcLK=_6$xStQDg}_W+8Qi?OSvhrVhzk;Nz@ z1pM9IoMZ3+pP?KTm)^IT?GG{Y%V}X2?Kxf6jQfFeOIf$QYdJ=X!r8i752NnSB|l*+ zAbc~4``Qb`JDfmoDJt+#uLt(^oD!piJ^9-@ghlC*LPfYxL>-C;35+i8EDm-*Db-Cf z*$2@=&6i(4z3yW|x-u-uo^@OHLa$aiFR}4E*2ngagouAHEPK?#D5O8Z^?0E58{36 zcjo@&Vj1T}dsZ-2QOGhwRUd|nzWiNSsvvaFYv#lS^9V&S>=*cI<9nVC^^zu}*v>3o z9CYn{8g$cfFtGWfzwtM%Ut3SALWB3F2gMhdAl6}Mt4F<$ci81#$HSWC)8=muMxX2i zk$B1D!Z(_zk8Q7S`eq#J>sFSJ6k_dC9U76=#c&hcZN0CG|QvSmq`w(qMVkw z{*m{JBJza#c7TYMCEoqM}>Frz>!z|h!F6k zC3u3M|Ct;U$7+yz=)2J&XCGXoCBa~~8*c-T;5U{5b1XqIZAd&&uhko$9kUQrm~nIx z)*IuX2@>zA{lNYkOJPz!(%aw~78ib)w9J8pIY{|N-c?CJPTAAXK!Nq0&|60n_#Z~t ziDf8-g69m00S)5K1rjVU%xq~lSjjW!3^gzkKOECN>_{sx<6$@~H#|t{fYXZveufg$U={ z@JK<_x%!9-XvC{=wod5VtmROJJ&*cebmR1JBmS^t#>gVlC?GM!?l!`woc?h@>~)x( zem-{pYV?!xAj#&K0TO{vApyM>uiHr?_*MgV8Di4XJQv%&qKA-Lg{&PAR&zpu2df&E ztNb7)=CH;nz)A?7TKq0e%rJlX}px3wB%vWG=T{Z`g2qU1#I*F6dY(0UU}-&Wwcj>D(YC8 zL?U`|MDoR0oGB~GLpw4PJw5|#nizV5DL5maRej-sKc->;V?b@=M; z+FgPu>wCI-aD*rA8iLWpzJ(Ogn2|U(n$h{tnz_yYNS%UvCLEg&v%?he+4Aj*kuU<$ zyzbLOS0<95>f*1==e#gRWM&|CSXJ036neKax#s<`SCdkl^HwY3#kBAV98(w8BDCwX zp%b~S!cxrVHk(BuRW~_U#Q9%XUwby1J1zv1wI>v=WRrTEvNSw;gBZw)d8J+jocC@l z+)=+2afv%+u_E(CTae#42QCJqX$!?lj=~t+BU+YCnL%KDh^8BwhRIeI2V)__Ju;MA z9ceAECduuhq*z%$U3AH;U;?e7!!a;}#*{qc{Kqp^5HD>T=3z%EpHv}E){RVNVy&3X~Ze5s&_lFow@rfEqqt+xh;w;rsZj8)BHtisj!PE(i7a)+s` zivc%067n8aWOmQ54JV@P6zyRsZ%PyYlRc4hadVyeYhv=gGW3E5N zCZY@*gY?IO=jC;YQ+-X2z6G2P_1d$rBQjH8_f0pLbW0?tqCa3=DaA@KYeHWp&3V$WK#IyU4srQX&piE8;o+3iaJ6K zI%XvS|Fg>C&Qdy`$|?|~_@RJ<(?E-=N*`UPh*h~MG(jq8z|%m{-7-F?ny^mOomPEZ z2$rb>jZ#+f(J#SELtGG9E?!96rcGRNQ=y0$Wi%13l6S zvl(I1r*|49Z=?28QnOH4nmUQ8uaz z3E=$uL`}A~;exK-2b9hR9m9Yqgyb$A{_ugO7dGL!zlxbMaYK1)n zVy%W{uV}C)62ue+K2jIG>{GjN%Ausr`$aKHG}UzU!e|~GDQ40Dw7Y&C2bVE#koAu+ z*oFC4W>N}~iz?T3Gt|0{BQ~Z+&&tKVkWWPqjAqwYHO`oMKeNf2ew`u*sb(gfYxaCO zn`1W1pq&@HiU|>ji>Itr&^kR zm6TqQHp8*goqjT>HV-l*=r5(9fIK&?-Wayj=l;F%0s9-Ppz4$^GGupTuH}%`(W{De zeE!>y53~=@gMzu9CaAq%jMjeo8*xHDN-#8&+gMref;GX!pR2sU&slAgPpt52^r_#x zDN%sU(8%-O?bZ5o!@gEZJ&TbU#3DVT&ug+Ys93bHmvpcfJRO%!pD*VhN-$k7+HEed z;MN*Iuq>#a-WbZ8apI%dEO_89i*mm5dqssCGhdK^;YGXPf2(Vk24=q4oR%g{GkAuNG@QFMuP9T$y#U-fWHNzj|cap zqMS*gJ<`@nF3e8HK5bjKQ6rKt+|CRCo zUnc$k0apK=f%>mW|G&l40pPE>Z=QPJIAdcqN)f1Zdm9;z+XV~fWOiJReMVJ&n6;kr);QW5 zxEeq0aJbpq?imvl%jFjSad@d=`dP2z*WH=dJ_Q}(W%%bnH_4&TZ~lO8^L&voz*Am# zTCg>5OqH*>!QY>c=e(VBDp3?b(}$%oky)crhjYx5?9l4cnVCk^5hc-UQSXs{isI^Y zriqaNkBr1H*_E3`mB>O7Oe@I33>ulZiirvG+KQjSX6GTvNq1BXUlp(+u&=>N_n^tt z*QIwOX>BnPjOJqE%h+jrql3%}ChoV)8M?6oSUG&mjx2B4Pb*kLF!Gru4Xm6aM)N1g z*bYsd@XHZ_@SPisVohohR)=?)SD2w0*2~jq!R|-Qi3OwE5rQQ<50>(krr!651t}Oj zW3;owk-0e@dwRz;=O*z7Ft_PImq&P-_9grWXSht$A2GgIy=(T~;pF zhWpQg8Xb3(&y;q_EVZ^Y^%d652h7?QE;cfQ*iFAmo4%!8W=?IiSx(&6TC9S6PwT;g za*h;MbLu!1zxTp}2eEx_&&Xo=yd2#kjkCFc9bX(WnziRzB=McRvU^HUvXx8s2`oPg<_2!xPjg9KbtGWWi zvKd+G?MOR1mav`ld5+$6Lj;2n zh+8wd)nsTE74RVKEk#@qqjYSuwVY`WF4^!RTNyt^_P3XmdBb<;xa#TyX*b`T`?j2#Uui&@h&7 zMw&3ilL(FWjJt@cR$tiG-sBf=(LVc&_f_{*j69#@C`p#5aqanx4#I?V zl^Z_xnI==07TqoG^G9*fXUvA8V67LvLJ8JL?bJYnW0|Q^>5ry}^A(E{6@Vv7NZ5QA zOJ)5k6~fOd@gnmpQOqmfQ`5rh*DuOF%EQzzO|=R{5~_uUl-y;V6PENn7yJ)z>t#6moe4to{AJ|;xlfY_1a%Ol|fS7nBpW3+5O6) znCxiWveDE7NjdiP0Z=cW{=h)7(D9%+DTQ$9s^cYZ;nuR7B*gRRp{ZCRarqV#N^iGF zz(U2Gh~emQyid%xpE17T*v0yOog=1jtZ#HO-K4AA!uau-zpPd2xk)N27ZI20AHl?s zNTKmID)tzgleeq-%^e437gzl+cV5r5Ka5+-!W@*X=ATlWPdVCeWf5((unp;;M%tds zlPkB04!0+r%v?H;J1!lL?bFKCHlooAFT z(uJyGqotiV#MefrouJ!gj}`N0L7#y;EZA~CqgKClgougY7s-P>q%t2ky{sw9~Rr&zBD;59?#NPCs2br*&^K=y^bOmJ@lt|8hW~ z#9X)}0>V*dt!IoyalrTJa8`GPg!n;tfVU!6uR{opsg z!H-kPP<>qzzu0AR(d(xJ`AD(E@K4u1KN9`%p}xecE(9Jv<2rh#WquAkc4RK@C;R^C zrZ2H{g9pNbg?ECUl(2}Eo6hS5F{8n0cj2MSfo7&5M`dD4tN!TY3YN5wE6H9m2u96x z*B8XWq)-JzgdfLkP$XVh0gKx!X2-UD292-CmZY9<%EK^+!ivXWpT=<01%oAp0;C`J za;^f2+MQpXIbE2c3*`s)JrIYQ-OzZihABdW#Bg7`kRnudT|#sb39D~^hQp_sj7{bc z0XGN_DA%or&@pPbGAzvP781M~6y}LA7sALuHJp?P{)%diCuG|K)2vB%^U231^NeIK z_x;@(2{!ZkvhV4=VpzC^C`U8zLyI0*5luM=k1KsQ0Y}M%!rvayPOnD4M}3>I=dzK6 zS_%z$FBcKU9icrKj`|}SnZ$Tw2txojs+QU3Zbf7O26ylb?PztgC5ioZ9sAM4|3TM# z9~wD!>pdY9JE0kyA|HonSGYq2?drt*5n?6o2sdzb()RQchuiC~#`cs)UlasO5k_9O zzrbTf(C9JIu_lTM`TIq&>tlUK+Vs#bdjq?+Y(<0A2lUmwhkOW1~!jtpl z6LJTWUkN88>-m0akIT3Uc_IWy5G4y2y3&ouSdKo|q)oBqilSvr#Sx6YRzQ(M3i+j* z6#gzn$IAP<9p@#BSf4};fu5;7YkcCU|F;tF@AD9AVJl_f^g*GpS|~0PlX0eM8dinA zr(UQoncp!jXml$;VHs{?>>qO%Aw(uQCm&87h$c6Y@&-MkB2I+Yl05C60z$JujPm7EBcL)<@^cD zUV4{f$c0S%(7=(gnov}ctRa{qwDvNTIM=ffnO0{ ztmLT2R}}9{T)L=OxWa3~mB|^MUicQhuzb5TzSx-wBxfL8G?5nkDzb>lsdOeIe=eeo zAU&q^p%ev0Anhkv?5HA7aAbknIm_3zk{@GP(pNgt>gBDhPaWrC`N(awjMn_ zepW$>N$e%$d5%&}GQ%;W6ujv`@!mD=A{8SS4avvdEQ zQ@#W?4IvGXoIs<1$_nNx$sUVLk*Ox1z^L%`#^0-@P#@{vcnZmSjeU4W^+vn+smdOKOz_(x3lW9tKX)RBBGNX!uI|lN_L&S zbuf!{Q8mu-EUBKnS0w7GuMNfUN^1jV{`9WgcLNF@T5NrvwsoC8hsO&B9j4r!`{(0s ztFCY!8Tn+OOU5i_%f&Q3i;5mI^Tm310`kB(MZfuR&)a(v$Kg)W=4x>_bmU)+e?InZ zJN1nfeD}vbU9!wntzDI9;7+&p<*bfla@Z-8^SJ$O=%(J zTTQmpCXPHj`$3$xn^r+}2tJtC7>ufPqA7~iPbMY0b0bg1F*5gYnBoMbF+IE^Wk55# zJ@XQyb4tx{W8}9R!-s>kdeos1(cZO$P<0Xh;C&HPTTkC;O1Z7FML`$a2ext7lMz;R z9sPEcz!l!;UwxG&gC~;eXDp*6V&fL_jO<)E+S5$kTZ1%GqdV+Oeyn1VFDH(NM_CIe zs@H96PbM5#nfQRwClp-eCo<{NG`nOIDI-)VVk4qoMtM*$bX9wb5`*yrE(X0vTXjd>tuDtuX}9mfpE((z*k zagkXq!2!#I?@w(fG~DONz{o|0-0k^uTbgqmD6E6R!TR0vJ}2{e54Z)<@uOUWbNeUr z(zqpe2N0`s&aX%F&t??zQTaH2Ysz4w^BuEiNuWLnS^OSd7r%paaFnJ3;V0jG`8dM! zbY(^ndq&xAL9%qI_v6x}NH&+n^61HYRd<~Z-IBo!1>-Bm%q$~ax)nQYR;X%Qn-ZuWx$q5thmoQe{ZxlfM4_@=l{m&-)f>x#ndPK_`MmN!kR-cNA<~e9-x&#N;AhO z-o(16pj>hUi#$g7>qU2-f8M47)yQuq{7p|${(qvU)&TIo0jQ7qsT%-t2Y~+#J^g2j z|DW76=&yRzf7g)uw}%@3e^x{4fACPN0B|(`R0E(I0H^^#wE$52S3~MwJ*od|74`o@ zr~hb3eRNX6e>bH5gPVf>C9@Aaa?`(K`;USBzZ+5?h15rGItcvLiuzAz`X8eD|5-@= z*TDW`H|h)k{_jUm5mKS~NkK~aQ1eE{iGeU&G9_Qqa|Nkz!e{uBro{|HB**`*8}%YE z1dY>7$}yiO@Kpwef|$8DBD!Y&sIu#1Rwsluo(=5 zO>Uh}r#;ojG4|y~&(m^#idIeoOd^#C7bTsF%`VU5#|Xd9W=`efTo9HSLbYHBfyea5 zHr?sVU_7dD>`D3%Nb$q{(dM*X)4ppfa#XHTdgIPm*{iBIoEdJ`6OTgq&b!*CZ|~bh zk;rDUc1c(2f{{qXHylsIogLWU_iUWzeVSWI$$i-)a&%l{MB|a%A$h5cr^wIW2n3;E5Xhv_1Ras`$8X{BBsqx^k8@0fTC0FCLEuG7JGy=#EmKBDY z*-f5DB>0W$K#Jyxl*)_LA%!gOu$bA7@}ehip=C#Yk)+hk5t-)bC4~>`hozOW_i`-0 z+SXRpjdB%7CQiusl~w*1>&MY#P+Dzkr&X!y*rj5iJinRRpsKO7#YsW9(|vrbxoq;@ z#>8>@gHhX)Ad07DU;facQnZLE@1eS8R$8?jzd_iw#@Plx_4Hq~;cWb=-U_L@a7IM+ zBh{^)Qll;m+705UBn4+&3t*Wy2A~PblSLX{K7%8Sv+IgT8R5icX5ErlBj@L)jiWdC zna+`rG|9>F&)fCyMsMe{$;Xm9)Tm3ud`c(Y^XF9`&J3p*j81U{lVC4MirP^vX8HdL zg%YrQ%Xlviu5pV&K}`#bUeLt;#Qf6!!;iH=y?h=U^&9$Y%OT?jRe?>teXkp9r{oVP zP=)V3X#@e7IiFD)xBcXZJ+iBA-zX2k1h$N+;V!KPAqi0*53NsyV%$AAyoh5AYstRQ zPEtJzyk)24RAEJQJlUr2O-1&b^0Wi@+g|&R92E23h@Kr{*Lg46g{VXX)E*Q6JaiF# z>r1LJ95|h@#4gJg*!bSMw=TgTT#hJwh4_!rw1TYo^}d=!_x-%b>Fxxe1ABupg+4{#%M7jOp^=fmJ*6DB0C5!|mYFWhSggF?)AqST)?i=L7M$XsqACL#Ik-aT(#LPc^d6~{n z7a8jzw8!4S`8 z56I3vKZFl~cB->iX`sw@5RYLq(mJ70rs{19*Trc%F#4#9Vm^Q*Mt3UE9-{pTfsrn4fyCTGIHTQ`M4xJCETwaatPu=Afxl-i zj8A-ho2#005ml~46n3-CiuHO@#n5hvl>zPLje5m`Btol#_uY})G|Ce06=8K#aplX; zp(B|`F@@GfYidU1+C8-q)h`ad=y?znb^RewdV&TwjU9=b%rOWfuJZuugU;J!SgCU*DeDw zxzwhd0JawX?FvX6+dL7I-a>4B0yNo316Vo=&5F-j2 zZ9<9T8grWG>5BE64FvqU?KKH(gIY;zGp1yWPZwtgSI=G@G5x2==Z{4=$Sc6kysp`)U=Onl? z@l#tyKHO^_CwWV*J#QoBP@X4`P@FmRf@ZqiO`>?AgBKRQjjc7LU+^(Js<_u9LPX!~d%974CD zGwMu%;=d}j?}OS1`?|#T>HEa*u2qi*=i4CyTNvf9fsXICposxL=a{^gU$3ukgW}|! zh>T^{9gLm)kscp08ubU5AVI9gzh_ORv-dCsd5PklpL!AeYLm)u7??mOjAQg&C1Vks zl;?1&wBv7MHZB|apn7C&R)0`BqZgkPE41ytdHg5Vd*jBQyi%0&F_~dZ^UuZeG6yih1?q$Hel8ucJP6zB5nyLlEEAMhRG{wv&iHO+4w;*7nF*)-;FIp;3z;et61rx`>0 zBB27&_0dj+UzSpzxA|PIIQLpu;UT;h_5((^gD%1y_5|Svg_w2W9t2Q(^&4rDausOQS3+p9R zJtL?pTs{EQjtXfpaV~eyc+d%ariBnkkq-^ApOW*EDnYkc^?xno@Wq289yNGc5M$Ou zbuu0~W)(MXJV<0bGGy1uz8sY;H0ZcZ$qg2Md=b$DCT2o}>bYsOD1_^$2UiwE<;WW# zR(%Z!{q9LPXw$NS#QLCpesBo*G5wf3PzhjHP$?i#7CdZhkwLGjni#Oe$>SYBpE^$7&R zCXYX~1-VcufiSLzA~d`V6cYKspSq;H8R7VC2t^S=2mWYXkn+JNu4_o zQC0}bTEzHRau{i(u6YEQJIc3QD0ME-)GO9kG0sUg=9mj4l_1?cXQ8l`Dw>l1N;vcf z34Z8SqQ@a*aW7KBDnni2jqZxQYX(=I1QM&RO?-P=O^367N6IB0{%rG$>Hbuz44=Y@ zFqK0j`UKSMjDR+Uj1XhX2R=*wHORWTo^vsO1WXlZ)LyNr5|Ng zcp!DUC4sIyv}*Pq&f99Pr<;t8gDy6LJZE|Q*U0%S% z7K3bwPe*HP5Q^D+gF-qMBqQ=_!4tm(H~aCOfdRin9Yg-WEz?g5{ocygU8;}*!wEgK zklr%aqO@d`(CkXKL|fmvt&Q1Szto1IOS)BRDDxA=d4)<$X4+&HiHHy- zaHZEin59XT#?;;=Nm#sfY|nS$&t`}$k5nY;JANf0IBmc@J17IhZ9 zl^|k~@O;0Bp%GDmJzT23UYYG}c4if2iow{*R$;6A=#*Cqu8U>f`?re_vG@Bav*klF zNENDi$O`x#lgCvA*2j%JLzyqiC~q7}ttWlZ zY8-Nc6wxsgin67W7I*G7KKn^7;?sDcBv)YlS}5yvQ37&J2u_AXlVVl_{jm^bR}&3I z;fa2R_gZOp0eZBzunBI+7Kw+{NA0RX3R#Kz+6DCEwnmGt=C%cj0oiha`|1IwR+uQ7 zjwpH7U5$BE%{Tp){)M(eC*%gf_#MJVi=Sq)k;ZdsZ8WZt*83SoKS{~>n{5CpgYclr z+w7|^?b4VWbAe#$-CUD$$5J9tp(w(Ph$?teN=m4H+|bKI%KPwk_ia><5RO6+)M(9KFTil(X0%Uj_%?wZ)pny^?l&3*ZbL(cH9fA>Z?CaJi(;g zkLm+sDc9>i5A9I$JZ8O#>P5$*I&O`AwN-qH-fzc0(1WMBZV z`rc8T9$BfnP+`hk4r_!99|YD*=EO*TjWsNusNUJd5HHcE-UGF7Ll&^LVe1OVp44ys7&IIlCov8EGsKR2sL7K1#0MKKF4j1G{d~Do@v2?r6;C7wL(qL z68GGg1u8jfxaWQvs*_M5^GuDgO7R^;ji%36pw-L~Z5og~Pg8n;qJAowr}{RxM5`|~ z#xFbr^|6h-2aggzUkFfEv!t8vi)Llc&xc|UaNDsw!4i4s0^|simPsGEh;==4W!yL}XdcUP||7DS52P-OnAh`q?bnu8#!K_30 zVKY#IEfC`wIB_3EvJEXW9;2-vGv(FF^f|hs7FBbLVW8i7uTkgod}O>Y7(I@&*1k9$ zv=ZE%cpS8==w~12u%VA7r>Am|Fjb7iO{|*(8uf;CDgrLC4^*G#I6;rW{FhtxDfOVo IJ#x|i0Zr7}od5s; literal 0 HcmV?d00001 diff --git a/pages/_app.tsx b/src/pages/_app.tsx similarity index 81% rename from pages/_app.tsx rename to src/pages/_app.tsx index c055f25..fbcd497 100644 --- a/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,4 +1,4 @@ -import '../styles/globals.css' +import '../../styles/globals.css' import type { AppProps } from 'next/app' export default function App({ Component, pageProps }: AppProps) { diff --git a/pages/api/hello.ts b/src/pages/api/hello.ts similarity index 100% rename from pages/api/hello.ts rename to src/pages/api/hello.ts diff --git a/src/pages/home/index.tsx b/src/pages/home/index.tsx new file mode 100644 index 0000000..802c564 --- /dev/null +++ b/src/pages/home/index.tsx @@ -0,0 +1,7 @@ +export default function Home(){ + return ( + <> + home + + ) +}; \ No newline at end of file diff --git a/src/pages/index.tsx b/src/pages/index.tsx new file mode 100644 index 0000000..867fb3b --- /dev/null +++ b/src/pages/index.tsx @@ -0,0 +1,35 @@ +import styled from 'styled-components' +import { useRouter } from 'next/router' +import Head from 'next/head' +import Image from 'next/image' +import Logo from '../../public/img/netflix_5.gif' +import styles from '../../styles/Home.module.css' +import { useEffect } from 'react' + +export default function Home() { + const router = useRouter(); + + useEffect(() => { + + const timer = setTimeout(() => { + router.push('/home'); + },3100); + + return () => { + clearTimeout(timer); + }; + + },[]); + + return ( +