diff --git a/.github/workflows/close-old-issue.yml b/.github/workflows/close-old-issue.yml new file mode 100644 index 0000000..2984191 --- /dev/null +++ b/.github/workflows/close-old-issue.yml @@ -0,0 +1,37 @@ +name: Close Old Issues +on: + schedule: + - cron: "0 0 * * *" + +jobs: + close-issues: + runs-on: ubuntu-latest + + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + + - name: Close Old Issues + run: | + open_issues=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ + "https://api.github.com/repos/${{ github.repository }}/issues?state=open" \ + | jq -r '.[] | .number') + for issue in $open_issues; do + # Get the last updated timestamp of the issue + last_updated=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ + "https://api.github.com/repos/${{ github.repository }}/issues/$issue" \ + | jq -r '.updated_at') + days_since_update=$(( ( $(date +%s) - $(date -d "$last_updated" +%s) ) / 86400 )) + if [ $days_since_update -gt 30 ]; then + curl -s -X PATCH -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ + -H "Accept: application/vnd.github.v3+json" \ + -d '{"state":"closed"}' \ + "https://api.github.com/repos/${{ github.repository }}/issues/$issue" + + # Add a comment explaining when the issue will be closed + curl -s -X POST -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ + -H "Accept: application/vnd.github.v3+json" \ + -d '{"body":"This issue has been automatically closed because it has been inactive for more than 30 days. If you believe this is still relevant, feel free to reopen it or create a new one. Thank you!"}' \ + "https://api.github.com/repos/${{ github.repository }}/issues/$issue/comments" + fi + done diff --git a/.github/workflows/close-old-pr.yml b/.github/workflows/close-old-pr.yml new file mode 100644 index 0000000..e8c4c18 --- /dev/null +++ b/.github/workflows/close-old-pr.yml @@ -0,0 +1,34 @@ +name: Close Stale PRs + +on: + schedule: + - cron: '0 0 * * *' # Runs daily at midnight + pull_request: + types: + - opened + - reopened + - synchronize + +permissions: + pull-requests: write + issues: write + +jobs: + close_stale_prs: + runs-on: ubuntu-latest + permissions: + pull-requests: write + + steps: + - uses: actions/stale@v7 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + stale-pr-message: 'This PR has been automatically closed due to inactivity from the owner for 15 days.' + days-before-pr-stale: 15 + days-before-pr-close: 0 + exempt-pr-author: false + exempt-pr-labels: '' + only-labels: '' + operations-per-run: 30 + remove-stale-when-updated: true + debug-only: false diff --git a/CONTRIBUTION.md b/CONTRIBUTION.md new file mode 100644 index 0000000..759c03b --- /dev/null +++ b/CONTRIBUTION.md @@ -0,0 +1,139 @@ +# πŸ“œ **Contributing Guidelines** + +This document will guide you through the process of contributing to our repository. +We value the time and effort of our contributors, and we strive to create an inclusive and collaborative community. +We are happy to welcome all the contributions from anyone willing to improve/add new scripts to this project. +Thank you for helping out and remember, **no contribution is too small.** + +Please note we have a [code of conduct](CODE_OF_CONDUCT.md) please follow it in all your interactions with the project. + +
+ +## πŸ” Ways to Contribute (!Important) + +So by now you understood what this project is about but what exactly we would be doing in these 3 months? +The goal of this repo is to create multiple games (we are not focused on one game but we would be making many small-big adventure games with their own stories) +To acheive this task we need to follow these steps. +1. Fork the repo +2. Create a new folder (IMP) and start creating your gaming files +3. Issues would be sub divided meaning, a game can be divided into sub parts, one issue for making prompts, one for creating gaming assets like characters and last one for creating actual game python file +4. After doing your task make a pull request +5. Make sure you do not change someone else file. +6. Plagiarism is big no and doing so may result in lost of ranks and ban from repo. +7. Based on efforts levels will be given +8. If any issue contact Project Admin + +
+ +### Alternatively contribute using GitHub Desktop + +1. **Open GitHub Desktop:** + Launch GitHub Desktop and log in to your GitHub account if you haven't already. + +2. **Clone the Repository:** + - If you haven't cloned the SuperpeechSaga repository yet, you can do so by clicking on the "File" menu and selecting "Clone Repository." + - Choose the SuperpeechSaga repository from the list of repositories on GitHub and clone it to your local machine. + +3. **Switch to the Correct Branch:** + - Ensure you are on the branch that you want to submit a pull request for. + - If you need to switch branches, you can do so by clicking on the "Current Branch" dropdown menu and selecting the desired branch. + +4. **Make Changes:** + Make your changes to the code or files in the repository using your preferred code editor. + +5. **Commit Changes:** + - In GitHub Desktop, you'll see a list of the files you've changed. Check the box next to each file you want to include in the commit. + - Enter a summary and description for your changes in the "Summary" and "Description" fields, respectively. Click the "Commit to " button to commit your changes to the local branch. + +6. **Push Changes to GitHub:** + After committing your changes, click the "Push origin" button in the top right corner of GitHub Desktop to push your changes to your forked repository on GitHub. + +7. **Create a Pull Request:** + - Go to the GitHub website and navigate to your fork of the SuperpeechSaga repository. + - You should see a button to "Compare & pull request" between your fork and the original repository. Click on it. + +8. **Review and Submit:** + - On the pull request page, review your changes and add any additional information, such as a title and description, that you want to include with your pull request. + - Once you're satisfied, click the "Create pull request" button to submit your pull request. + +9. **Wait for Review:** + Your pull request will now be available for review by the project maintainers. They may provide feedback or ask for changes before merging your pull request into the main branch of the SuperpeechSaga repository. + +## πŸ“ˆ Development Workflow + +When working on the project, please follow these guidelines: + +1. Always work on a new branch for each separate issue or feature. +2. Keep your branch up to date with the main repository's `master` branch. +3. Write clear and descriptive commit messages. +4. Test your changes thoroughly before submitting a pull request. +5. Keep discussions polite and respectful. + + +
+ +## 🚩 **Issue Report Process** + +1. Go to the project's issues. +2. Select the template that better fits your issue. +3. Give proper description for the issues. +4. Don't spam to get the assignment of the issue. +5. Wait for till someone is looking into it !. +6. Start working on issue only after you got assigned that issue. + +
+ +## **Need Help regarding some basics? πŸ€”** + + +You can refer to the following articles on basics of Git and Github and also contact the Project Mentors, +in case you are stuck: + +- [Forking a Repo](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) +- [Cloning a Repo](https://help.github.com/en/desktop/contributing-to-projects/creating-an-issue-or-pull-request) +- [How to create a Pull Request](https://opensource.com/article/19/7/create-pull-request-github) +- [Getting started with Git and GitHub](https://towardsdatascience.com/getting-started-with-git-and-github-6fcd0f2d4ac6) +- [Learn GitHub from Scratch](https://docs.github.com/en/get-started/start-your-journey/git-and-github-learning-resources) + +
+ +## **Pull Request Process πŸš€** + +1. Ensure that you have self reviewed your code. +2. Make sure you have added the proper description for the functionality of the code. +3. I have commented my code, particularly in hard-to-understand areas. +4. Add screenshot it help in review. +5. Submit your PR by giving the necesarry information in PR template and hang tight we will review it really soon. + +
+ +## 🀝 Community Guidelines + +We expect all contributors to adhere to the following community guidelines: + +1. Be respectful and considerate towards others. +2. Use inclusive language and promote a welcoming environment. +3. Avoid personal attacks, harassment, or discrimination. +4. Keep discussions on-topic and constructive. +5. Help others and contribute positively to the community. + +
+ +## Documentation πŸ“‘ +- Document any significant changes or additions to the codebase. +- Provide clear and concise explanations of the functionality, usage, and any relevant considerations. + +## βœ… Code Reviews +- Be open to feedback and constructive criticism from other contributors. +- Participate in code reviews by reviewing and providing feedback. + +## πŸš€πŸš€Feature Requests +- Suggest new features or improvements that you believe would enhance the project. + +## ☘️ Spread the Word +- Share your experience and the project with others. +- Spread the word about the project on social media, developer forums, or any relevant community platforms. +- Thank you for your valuable contribution and for being a part of the Clueless Community! Together, we can make a difference. πŸš€ + + +## **Happy Contributing πŸ”₯** diff --git a/backend/package.json b/backend/package.json new file mode 100644 index 0000000..ea7e359 --- /dev/null +++ b/backend/package.json @@ -0,0 +1,12 @@ +{ + "name": "backend", + "version": "1.0.0", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "description": "" +} diff --git a/src/components/page3/2Year.css b/backend/src/server.js similarity index 100% rename from src/components/page3/2Year.css rename to backend/src/server.js diff --git a/.gitignore b/frontend/.gitignore similarity index 100% rename from .gitignore rename to frontend/.gitignore diff --git a/package-lock.json b/frontend/package-lock.json similarity index 96% rename from package-lock.json rename to frontend/package-lock.json index beabbaf..322f822 100644 --- a/package-lock.json +++ b/frontend/package-lock.json @@ -15,9 +15,16 @@ "@testing-library/jest-dom": "^5.17.0", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", - "autoprefixer": "^10.4.19", + "bcrypt": "^5.1.1", "bootstrap": "^5.3.3", - "postcss": "^8.4.38", + "cors": "^2.8.5", + "express": "^4.19.2", + "express-session": "^1.18.0", + "jsonwebtoken": "^9.0.2", + "mongoose": "^8.4.0", + "passport": "^0.7.0", + "passport-google-oauth20": "^2.0.0", + "path": "^0.12.7", "react": "^18.2.0", "react-bootstrap": "^2.10.1", "react-dom": "^18.2.0", @@ -3438,6 +3445,33 @@ "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" }, + "node_modules/@mapbox/node-pre-gyp": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", + "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", + "dependencies": { + "detect-libc": "^2.0.0", + "https-proxy-agent": "^5.0.0", + "make-dir": "^3.1.0", + "node-fetch": "^2.6.7", + "nopt": "^5.0.0", + "npmlog": "^5.0.1", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.11" + }, + "bin": { + "node-pre-gyp": "bin/node-pre-gyp" + } + }, + "node_modules/@mongodb-js/saslprep": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.7.tgz", + "integrity": "sha512-dCHW/oEX0KJ4NjDULBo3JiOaK5+6axtpBbS+ao2ZInoAL9/YRQLhXzSNAFz7hP4nzLkIqsfYAK/PDE3+XHny0Q==", + "dependencies": { + "sparse-bitfield": "^3.0.3" + } + }, "node_modules/@mui/base": { "version": "5.0.0-beta.37", "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.37.tgz", @@ -5097,6 +5131,19 @@ "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.3.tgz", "integrity": "sha512-D1XC7WK8K+zZEveUPY+cf4+kgauk8N4eHr/XIHXGlGYkHLud6hK9lYfZk1ry1TNh798cZUCgb6MqGEG8DkJt6Q==" }, + "node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==" + }, + "node_modules/@types/whatwg-url": { + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-11.0.5.tgz", + "integrity": "sha512-coYR071JRaHa+xoEvvYqvnIHaVqaYrLPbsufM9BF63HkwI5Lgmy2QR8Q5K/lYDYo5AK82wOvSOS0UsLTpTG7uQ==", + "dependencies": { + "@types/webidl-conversions": "*" + } + }, "node_modules/@types/ws": { "version": "8.5.10", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", @@ -5488,6 +5535,11 @@ "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", "deprecated": "Use your platform's native atob() and btoa() methods instead" }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -5706,6 +5758,24 @@ "node": ">= 8" } }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + }, + "node_modules/are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "deprecated": "This package is no longer supported.", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/arg": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", @@ -6281,11 +6351,32 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" }, + "node_modules/bcrypt": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/bcrypt/-/bcrypt-5.1.1.tgz", + "integrity": "sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==", + "hasInstallScript": true, + "dependencies": { + "@mapbox/node-pre-gyp": "^1.0.11", + "node-addon-api": "^5.0.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/bfj": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/bfj/-/bfj-7.1.0.tgz", @@ -6473,6 +6564,19 @@ "node-int64": "^0.4.0" } }, + "node_modules/bson": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-6.7.0.tgz", + "integrity": "sha512-w2IquM5mYzYZv6rs3uN2DZTOBe2a0zXLj53TGDqwF4l6Sz/XsISrisXOJihArF9+BZ6Cq/GjVht7Sjfmri7ytQ==", + "engines": { + "node": ">=16.20.1" + } + }, + "node_modules/buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" + }, "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -6649,6 +6753,14 @@ "node": ">= 6" } }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, "node_modules/chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", @@ -6758,6 +6870,14 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "bin": { + "color-support": "bin.js" + } + }, "node_modules/colord": { "version": "2.9.3", "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", @@ -6869,6 +6989,11 @@ "node": ">=0.8" } }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" + }, "node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -6894,9 +7019,9 @@ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" }, "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", "engines": { "node": ">= 0.6" } @@ -6943,6 +7068,18 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/cosmiconfig": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", @@ -7530,6 +7667,11 @@ "node": ">=0.4.0" } }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" + }, "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -7555,6 +7697,14 @@ "npm": "1.2.8000 || >= 1.4.16" } }, + "node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "engines": { + "node": ">=8" + } + }, "node_modules/detect-newline": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", @@ -7773,6 +7923,14 @@ "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, + "node_modules/ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -8804,16 +8962,16 @@ } }, "node_modules/express": { - "version": "4.18.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.3.tgz", - "integrity": "sha512-6VyCijWQ+9O7WuVMTRBTl+cjNNIzD5cY5mQ1WM8r/LEkI2u8EYpOotESNwzNlyCn3g+dmjKYI6BmNneSr/FSRw==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -8844,6 +9002,42 @@ "node": ">= 0.10.0" } }, + "node_modules/express-session": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.0.tgz", + "integrity": "sha512-m93QLWr0ju+rOwApSsyso838LQwgfs44QtOP/WBiwtAgPIo/SAh1a5c6nn2BR6mFNZehTpqKDESzP+fRHVbxwQ==", + "dependencies": { + "cookie": "0.6.0", + "cookie-signature": "1.0.7", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express-session/node_modules/cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==" + }, + "node_modules/express-session/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/express-session/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, "node_modules/express/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -9348,6 +9542,33 @@ "node": ">=12" } }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-minipass/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/fs-monkey": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", @@ -9404,6 +9625,26 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "deprecated": "This package is no longer supported.", + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -9697,6 +9938,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" + }, "node_modules/hasown": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz", @@ -12826,6 +13072,27 @@ "node": ">=0.10.0" } }, + "node_modules/jsonwebtoken": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", + "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", + "dependencies": { + "jws": "^3.2.2", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + } + }, "node_modules/jsx-ast-utils": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", @@ -12840,6 +13107,33 @@ "node": ">=4.0" } }, + "node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "dependencies": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/kareem": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.6.3.tgz", + "integrity": "sha512-C3iHfuGUXK2u8/ipq9LfjFfXFxAZMQJJq7vLS45r3D9Y2xQ/m4S8zaR4zMLFWh9AsNPXmcFfUDhTEO8UIC/V6Q==", + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -12975,6 +13269,36 @@ "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, + "node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==" + }, + "node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==" + }, + "node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==" + }, + "node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" + }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" + }, "node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -12985,6 +13309,11 @@ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==" + }, "node_modules/lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", @@ -13092,6 +13421,11 @@ "node": ">= 4.0.0" } }, + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==" + }, "node_modules/merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -13276,6 +13610,34 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/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/mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", @@ -13287,6 +13649,136 @@ "mkdirp": "bin/cmd.js" } }, + "node_modules/mongodb": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.6.2.tgz", + "integrity": "sha512-ZF9Ugo2JCG/GfR7DEb4ypfyJJyiKbg5qBYKRintebj8+DNS33CyGMkWbrS9lara+u+h+yEOGSRiLhFO/g1s1aw==", + "dependencies": { + "@mongodb-js/saslprep": "^1.1.5", + "bson": "^6.7.0", + "mongodb-connection-string-url": "^3.0.0" + }, + "engines": { + "node": ">=16.20.1" + }, + "peerDependencies": { + "@aws-sdk/credential-providers": "^3.188.0", + "@mongodb-js/zstd": "^1.1.0", + "gcp-metadata": "^5.2.0", + "kerberos": "^2.0.1", + "mongodb-client-encryption": ">=6.0.0 <7", + "snappy": "^7.2.2", + "socks": "^2.7.1" + }, + "peerDependenciesMeta": { + "@aws-sdk/credential-providers": { + "optional": true + }, + "@mongodb-js/zstd": { + "optional": true + }, + "gcp-metadata": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "snappy": { + "optional": true + }, + "socks": { + "optional": true + } + } + }, + "node_modules/mongodb-connection-string-url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-3.0.1.tgz", + "integrity": "sha512-XqMGwRX0Lgn05TDB4PyG2h2kKO/FfWJyCzYQbIhXUxz7ETt0I/FqHjUeqj37irJ+Dl1ZtU82uYyj14u2XsZKfg==", + "dependencies": { + "@types/whatwg-url": "^11.0.2", + "whatwg-url": "^13.0.0" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/tr46": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz", + "integrity": "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==", + "dependencies": { + "punycode": "^2.3.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/whatwg-url": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-13.0.0.tgz", + "integrity": "sha512-9WWbymnqj57+XEuqADHrCJ2eSXzn8WXIW/YSGaZtb2WKAInQ6CHfaUUcTyyver0p8BDg5StLQq8h1vtZuwmOig==", + "dependencies": { + "tr46": "^4.1.1", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/mongoose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-8.4.0.tgz", + "integrity": "sha512-fgqRMwVEP1qgRYfh+tUe2YBBFnPO35FIg2lfFH+w9IhRGg1/ataWGIqvf/MjwM29cZ60D5vSnqtN2b8Qp0sOZA==", + "dependencies": { + "bson": "^6.7.0", + "kareem": "2.6.3", + "mongodb": "6.6.2", + "mpath": "0.9.0", + "mquery": "5.0.0", + "ms": "2.1.3", + "sift": "17.1.3" + }, + "engines": { + "node": ">=16.20.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-5.0.0.tgz", + "integrity": "sha512-iQMncpmEK8R8ncT8HJGsGc9Dsp8xcgYMVSbs5jgnm1lFHTZqMJTUWTDx1LBO8+mK3tPNZWFLBghQEIOULSTHZg==", + "dependencies": { + "debug": "4.x" + }, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -13363,6 +13855,49 @@ "tslib": "^2.0.3" } }, + "node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", @@ -13381,6 +13916,20 @@ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" }, + "node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -13419,6 +13968,18 @@ "node": ">=8" } }, + "node_modules/npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "deprecated": "This package is no longer supported.", + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -13435,6 +13996,11 @@ "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==" }, + "node_modules/oauth": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.0.tgz", + "integrity": "sha512-1orQ9MT1vHFGQxhuy7E/0gECD3fd2fCC+PIX+/jgmU/gI3EpRocXtmtvxCO5x3WZ443FLTLFWNDjl5MPJf9u+Q==" + }, "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -13771,6 +14337,70 @@ "tslib": "^2.0.3" } }, + "node_modules/passport": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.7.0.tgz", + "integrity": "sha512-cPLl+qZpSc+ireUvt+IzqbED1cHHkDoVYMo30jbJIdOOjQ1MQYZBPiNvmi8UM6lJuOpTPXJGZQk0DtC4y61MYQ==", + "dependencies": { + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, + "node_modules/passport-google-oauth20": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/passport-google-oauth20/-/passport-google-oauth20-2.0.0.tgz", + "integrity": "sha512-KSk6IJ15RoxuGq7D1UKK/8qKhNfzbLeLrG3gkLZ7p4A6DBCcv7xpyQwuXtWdpyR0+E0mwkpjY1VfPOhxQrKzdQ==", + "dependencies": { + "passport-oauth2": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/passport-oauth2": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.8.0.tgz", + "integrity": "sha512-cjsQbOrXIDE4P8nNb3FQRCCmJJ/utnFKEz2NX209f7KOHPoX18gF7gBzBbLLsj2/je4KrgiwLLGjf0lm9rtTBA==", + "dependencies": { + "base64url": "3.x.x", + "oauth": "0.10.x", + "passport-strategy": "1.x.x", + "uid2": "0.0.x", + "utils-merge": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, + "node_modules/passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==", + "dependencies": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -13836,6 +14466,11 @@ "node": ">=8" } }, + "node_modules/pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==" + }, "node_modules/performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -15258,6 +15893,14 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -15403,6 +16046,14 @@ "performance-now": "^2.1.0" } }, + "node_modules/random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -16538,6 +17189,11 @@ "node": ">= 0.8.0" } }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + }, "node_modules/set-function-length": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.1.tgz", @@ -16617,6 +17273,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/sift": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/sift/-/sift-17.1.3.tgz", + "integrity": "sha512-Rtlj66/b0ICeFzYTuNvX/EF1igRbbnGSvEyT79McoZa/DeGhMyC5pWKOEsZKnpkqtSeovd5FL/bjHWC3CIIvCQ==" + }, "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -16709,6 +17370,14 @@ "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", "deprecated": "Please use @jridgewell/sourcemap-codec instead" }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "dependencies": { + "memory-pager": "^1.0.2" + } + }, "node_modules/spdy": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", @@ -17383,6 +18052,46 @@ "node": ">=6" } }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/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/temp-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", @@ -17797,6 +18506,22 @@ "node": ">=4.2.0" } }, + "node_modules/uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "dependencies": { + "random-bytes": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/uid2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", + "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==" + }, "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -17958,6 +18683,14 @@ "requires-port": "^1.0.0" } }, + "node_modules/util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dependencies": { + "inherits": "2.0.3" + } + }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -17977,6 +18710,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/util/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, "node_modules/utila": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", @@ -18549,6 +19287,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, "node_modules/word-wrap": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", @@ -21351,6 +22097,30 @@ "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" }, + "@mapbox/node-pre-gyp": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz", + "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==", + "requires": { + "detect-libc": "^2.0.0", + "https-proxy-agent": "^5.0.0", + "make-dir": "^3.1.0", + "node-fetch": "^2.6.7", + "nopt": "^5.0.0", + "npmlog": "^5.0.1", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.11" + } + }, + "@mongodb-js/saslprep": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.7.tgz", + "integrity": "sha512-dCHW/oEX0KJ4NjDULBo3JiOaK5+6axtpBbS+ao2ZInoAL9/YRQLhXzSNAFz7hP4nzLkIqsfYAK/PDE3+XHny0Q==", + "requires": { + "sparse-bitfield": "^3.0.3" + } + }, "@mui/base": { "version": "5.0.0-beta.37", "resolved": "https://registry.npmjs.org/@mui/base/-/base-5.0.0-beta.37.tgz", @@ -22537,6 +23307,19 @@ "resolved": "https://registry.npmjs.org/@types/warning/-/warning-3.0.3.tgz", "integrity": "sha512-D1XC7WK8K+zZEveUPY+cf4+kgauk8N4eHr/XIHXGlGYkHLud6hK9lYfZk1ry1TNh798cZUCgb6MqGEG8DkJt6Q==" }, + "@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==" + }, + "@types/whatwg-url": { + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-11.0.5.tgz", + "integrity": "sha512-coYR071JRaHa+xoEvvYqvnIHaVqaYrLPbsufM9BF63HkwI5Lgmy2QR8Q5K/lYDYo5AK82wOvSOS0UsLTpTG7uQ==", + "requires": { + "@types/webidl-conversions": "*" + } + }, "@types/ws": { "version": "8.5.10", "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.10.tgz", @@ -22824,6 +23607,11 @@ "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==" }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, "accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -22976,6 +23764,20 @@ "picomatch": "^2.0.4" } }, + "aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==" + }, + "are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + } + }, "arg": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", @@ -23397,11 +24199,25 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, + "base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==" + }, "batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" }, + "bcrypt": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/bcrypt/-/bcrypt-5.1.1.tgz", + "integrity": "sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww==", + "requires": { + "@mapbox/node-pre-gyp": "^1.0.11", + "node-addon-api": "^5.0.0" + } + }, "bfj": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/bfj/-/bfj-7.1.0.tgz", @@ -23537,6 +24353,16 @@ "node-int64": "^0.4.0" } }, + "bson": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-6.7.0.tgz", + "integrity": "sha512-w2IquM5mYzYZv6rs3uN2DZTOBe2a0zXLj53TGDqwF4l6Sz/XsISrisXOJihArF9+BZ6Cq/GjVht7Sjfmri7ytQ==" + }, + "buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" + }, "buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", @@ -23654,6 +24480,11 @@ } } }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" + }, "chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", @@ -23737,6 +24568,11 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" + }, "colord": { "version": "2.9.3", "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", @@ -23832,6 +24668,11 @@ "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==" }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" + }, "content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -23851,9 +24692,9 @@ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" }, "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==" }, "cookie-signature": { "version": "1.0.6", @@ -23883,6 +24724,15 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, "cosmiconfig": { "version": "7.1.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", @@ -24273,6 +25123,11 @@ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" + }, "depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -24288,6 +25143,11 @@ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" }, + "detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==" + }, "detect-newline": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", @@ -24460,6 +25320,14 @@ "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, + "ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -25208,16 +26076,16 @@ } }, "express": { - "version": "4.18.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.3.tgz", - "integrity": "sha512-6VyCijWQ+9O7WuVMTRBTl+cjNNIzD5cY5mQ1WM8r/LEkI2u8EYpOotESNwzNlyCn3g+dmjKYI6BmNneSr/FSRw==", + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", "body-parser": "1.20.2", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.6.0", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", @@ -25260,6 +26128,41 @@ } } }, + "express-session": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.0.tgz", + "integrity": "sha512-m93QLWr0ju+rOwApSsyso838LQwgfs44QtOP/WBiwtAgPIo/SAh1a5c6nn2BR6mFNZehTpqKDESzP+fRHVbxwQ==", + "requires": { + "cookie": "0.6.0", + "cookie-signature": "1.0.7", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "dependencies": { + "cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==" + }, + "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" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + } + } + }, "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", @@ -25612,6 +26515,29 @@ "universalify": "^2.0.0" } }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, "fs-monkey": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.5.tgz", @@ -25649,6 +26575,22 @@ "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" }, + "gauge": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", + "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==", + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "object-assign": "^4.1.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + } + }, "gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -25848,6 +26790,11 @@ "has-symbols": "^1.0.3" } }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" + }, "hasown": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz", @@ -28088,6 +29035,23 @@ "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", "integrity": "sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==" }, + "jsonwebtoken": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", + "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", + "requires": { + "jws": "^3.2.2", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "semver": "^7.5.4" + } + }, "jsx-ast-utils": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", @@ -28099,6 +29063,30 @@ "object.values": "^1.1.6" } }, + "jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "requires": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "requires": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "kareem": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.6.3.tgz", + "integrity": "sha512-C3iHfuGUXK2u8/ipq9LfjFfXFxAZMQJJq7vLS45r3D9Y2xQ/m4S8zaR4zMLFWh9AsNPXmcFfUDhTEO8UIC/V6Q==" + }, "keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -28201,6 +29189,36 @@ "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, + "lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==" + }, + "lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==" + }, + "lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==" + }, + "lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==" + }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" + }, + "lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" + }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", @@ -28211,6 +29229,11 @@ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" }, + "lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==" + }, "lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", @@ -28299,6 +29322,11 @@ "fs-monkey": "^1.0.4" } }, + "memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==" + }, "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", @@ -28425,6 +29453,30 @@ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==" }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, "mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", @@ -28433,6 +29485,83 @@ "minimist": "^1.2.6" } }, + "mongodb": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.6.2.tgz", + "integrity": "sha512-ZF9Ugo2JCG/GfR7DEb4ypfyJJyiKbg5qBYKRintebj8+DNS33CyGMkWbrS9lara+u+h+yEOGSRiLhFO/g1s1aw==", + "requires": { + "@mongodb-js/saslprep": "^1.1.5", + "bson": "^6.7.0", + "mongodb-connection-string-url": "^3.0.0" + } + }, + "mongodb-connection-string-url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-3.0.1.tgz", + "integrity": "sha512-XqMGwRX0Lgn05TDB4PyG2h2kKO/FfWJyCzYQbIhXUxz7ETt0I/FqHjUeqj37irJ+Dl1ZtU82uYyj14u2XsZKfg==", + "requires": { + "@types/whatwg-url": "^11.0.2", + "whatwg-url": "^13.0.0" + }, + "dependencies": { + "tr46": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz", + "integrity": "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==", + "requires": { + "punycode": "^2.3.0" + } + }, + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" + }, + "whatwg-url": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-13.0.0.tgz", + "integrity": "sha512-9WWbymnqj57+XEuqADHrCJ2eSXzn8WXIW/YSGaZtb2WKAInQ6CHfaUUcTyyver0p8BDg5StLQq8h1vtZuwmOig==", + "requires": { + "tr46": "^4.1.1", + "webidl-conversions": "^7.0.0" + } + } + } + }, + "mongoose": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-8.4.0.tgz", + "integrity": "sha512-fgqRMwVEP1qgRYfh+tUe2YBBFnPO35FIg2lfFH+w9IhRGg1/ataWGIqvf/MjwM29cZ60D5vSnqtN2b8Qp0sOZA==", + "requires": { + "bson": "^6.7.0", + "kareem": "2.6.3", + "mongodb": "6.6.2", + "mpath": "0.9.0", + "mquery": "5.0.0", + "ms": "2.1.3", + "sift": "17.1.3" + }, + "dependencies": { + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==" + }, + "mquery": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-5.0.0.tgz", + "integrity": "sha512-iQMncpmEK8R8ncT8HJGsGc9Dsp8xcgYMVSbs5jgnm1lFHTZqMJTUWTDx1LBO8+mK3tPNZWFLBghQEIOULSTHZg==", + "requires": { + "debug": "4.x" + } + }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -28491,6 +29620,40 @@ "tslib": "^2.0.3" } }, + "node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, + "node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "requires": { + "whatwg-url": "^5.0.0" + }, + "dependencies": { + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + } + } + }, "node-forge": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", @@ -28506,6 +29669,14 @@ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" }, + "nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "requires": { + "abbrev": "1" + } + }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -28529,6 +29700,17 @@ "path-key": "^3.0.0" } }, + "npmlog": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz", + "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==", + "requires": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^3.0.0", + "set-blocking": "^2.0.0" + } + }, "nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -28542,6 +29724,11 @@ "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==" }, + "oauth": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.0.tgz", + "integrity": "sha512-1orQ9MT1vHFGQxhuy7E/0gECD3fd2fCC+PIX+/jgmU/gI3EpRocXtmtvxCO5x3WZ443FLTLFWNDjl5MPJf9u+Q==" + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -28779,6 +29966,50 @@ "tslib": "^2.0.3" } }, + "passport": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.7.0.tgz", + "integrity": "sha512-cPLl+qZpSc+ireUvt+IzqbED1cHHkDoVYMo30jbJIdOOjQ1MQYZBPiNvmi8UM6lJuOpTPXJGZQk0DtC4y61MYQ==", + "requires": { + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" + } + }, + "passport-google-oauth20": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/passport-google-oauth20/-/passport-google-oauth20-2.0.0.tgz", + "integrity": "sha512-KSk6IJ15RoxuGq7D1UKK/8qKhNfzbLeLrG3gkLZ7p4A6DBCcv7xpyQwuXtWdpyR0+E0mwkpjY1VfPOhxQrKzdQ==", + "requires": { + "passport-oauth2": "1.x.x" + } + }, + "passport-oauth2": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.8.0.tgz", + "integrity": "sha512-cjsQbOrXIDE4P8nNb3FQRCCmJJ/utnFKEz2NX209f7KOHPoX18gF7gBzBbLLsj2/je4KrgiwLLGjf0lm9rtTBA==", + "requires": { + "base64url": "3.x.x", + "oauth": "0.10.x", + "passport-strategy": "1.x.x", + "uid2": "0.0.x", + "utils-merge": "1.x.x" + } + }, + "passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==" + }, + "path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==", + "requires": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, "path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -28825,6 +30056,11 @@ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, + "pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==" + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -29648,6 +30884,11 @@ } } }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -29760,6 +31001,11 @@ "performance-now": "^2.1.0" } }, + "random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==" + }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", @@ -30587,6 +31833,11 @@ "send": "0.18.0" } }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" + }, "set-function-length": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.1.tgz", @@ -30645,6 +31896,11 @@ "object-inspect": "^1.13.1" } }, + "sift": { + "version": "17.1.3", + "resolved": "https://registry.npmjs.org/sift/-/sift-17.1.3.tgz", + "integrity": "sha512-Rtlj66/b0ICeFzYTuNvX/EF1igRbbnGSvEyT79McoZa/DeGhMyC5pWKOEsZKnpkqtSeovd5FL/bjHWC3CIIvCQ==" + }, "signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -30716,6 +31972,14 @@ "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==" }, + "sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "requires": { + "memory-pager": "^1.0.2" + } + }, "spdy": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", @@ -31229,6 +32493,36 @@ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" }, + "tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==" + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, "temp-dir": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", @@ -31526,6 +32820,19 @@ "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", "peer": true }, + "uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "requires": { + "random-bytes": "~1.0.0" + } + }, + "uid2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", + "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==" + }, "unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -31636,6 +32943,21 @@ "requires-port": "^1.0.0" } }, + "util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + } + } + }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -32069,6 +33391,14 @@ "has-tostringtag": "^1.0.1" } }, + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "requires": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, "word-wrap": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", diff --git a/package.json b/frontend/package.json similarity index 81% rename from package.json rename to frontend/package.json index 8c698bd..f4f9a37 100644 --- a/package.json +++ b/frontend/package.json @@ -10,9 +10,16 @@ "@testing-library/jest-dom": "^5.17.0", "@testing-library/react": "^13.4.0", "@testing-library/user-event": "^13.5.0", - "autoprefixer": "^10.4.19", + "bcrypt": "^5.1.1", "bootstrap": "^5.3.3", - "postcss": "^8.4.38", + "cors": "^2.8.5", + "express": "^4.19.2", + "express-session": "^1.18.0", + "jsonwebtoken": "^9.0.2", + "mongoose": "^8.4.0", + "passport": "^0.7.0", + "passport-google-oauth20": "^2.0.0", + "path": "^0.12.7", "react": "^18.2.0", "react-bootstrap": "^2.10.1", "react-dom": "^18.2.0", diff --git a/public/75perc.jpg b/frontend/public/75perc.jpg similarity index 100% rename from public/75perc.jpg rename to frontend/public/75perc.jpg diff --git a/public/fav.ico b/frontend/public/fav.ico similarity index 100% rename from public/fav.ico rename to frontend/public/fav.ico diff --git a/public/index.html b/frontend/public/index.html similarity index 100% rename from public/index.html rename to frontend/public/index.html diff --git a/public/logo192.png b/frontend/public/logo192.png similarity index 100% rename from public/logo192.png rename to frontend/public/logo192.png diff --git a/public/logo512.png b/frontend/public/logo512.png similarity index 100% rename from public/logo512.png rename to frontend/public/logo512.png diff --git a/public/manifest.json b/frontend/public/manifest.json similarity index 100% rename from public/manifest.json rename to frontend/public/manifest.json diff --git a/public/quantum/BasicElectricalEngineering.pdf b/frontend/public/quantum/BasicElectricalEngineering.pdf similarity index 100% rename from public/quantum/BasicElectricalEngineering.pdf rename to frontend/public/quantum/BasicElectricalEngineering.pdf diff --git a/public/quantum/Chemistry.pdf b/frontend/public/quantum/Chemistry.pdf similarity index 100% rename from public/quantum/Chemistry.pdf rename to frontend/public/quantum/Chemistry.pdf diff --git a/public/quantum/ComputerNetwork.pdf b/frontend/public/quantum/ComputerNetwork.pdf similarity index 100% rename from public/quantum/ComputerNetwork.pdf rename to frontend/public/quantum/ComputerNetwork.pdf diff --git a/public/quantum/ComputerOrganizationArchitecture.pdf b/frontend/public/quantum/ComputerOrganizationArchitecture.pdf similarity index 100% rename from public/quantum/ComputerOrganizationArchitecture.pdf rename to frontend/public/quantum/ComputerOrganizationArchitecture.pdf diff --git a/public/quantum/DataAnalytics.pdf b/frontend/public/quantum/DataAnalytics.pdf similarity index 100% rename from public/quantum/DataAnalytics.pdf rename to frontend/public/quantum/DataAnalytics.pdf diff --git a/public/quantum/DatabaseManagementSystem.pdf b/frontend/public/quantum/DatabaseManagementSystem.pdf similarity index 100% rename from public/quantum/DatabaseManagementSystem.pdf rename to frontend/public/quantum/DatabaseManagementSystem.pdf diff --git a/public/quantum/Design&AnalysisOfAlgorithms.pdf b/frontend/public/quantum/Design&AnalysisOfAlgorithms.pdf similarity index 100% rename from public/quantum/Design&AnalysisOfAlgorithms.pdf rename to frontend/public/quantum/Design&AnalysisOfAlgorithms.pdf diff --git a/public/quantum/DiscreteStructureTheoryofLogic.pdf b/frontend/public/quantum/DiscreteStructureTheoryofLogic.pdf similarity index 100% rename from public/quantum/DiscreteStructureTheoryofLogic.pdf rename to frontend/public/quantum/DiscreteStructureTheoryofLogic.pdf diff --git a/public/quantum/Energy Science and Engineering.pdf b/frontend/public/quantum/Energy Science and Engineering.pdf similarity index 100% rename from public/quantum/Energy Science and Engineering.pdf rename to frontend/public/quantum/Energy Science and Engineering.pdf diff --git a/public/quantum/FundamentalsofMechanicalEnggMechatronics.pdf b/frontend/public/quantum/FundamentalsofMechanicalEnggMechatronics.pdf similarity index 100% rename from public/quantum/FundamentalsofMechanicalEnggMechatronics.pdf rename to frontend/public/quantum/FundamentalsofMechanicalEnggMechatronics.pdf diff --git a/public/quantum/Machine learning techniques.pdf b/frontend/public/quantum/Machine learning techniques.pdf similarity index 100% rename from public/quantum/Machine learning techniques.pdf rename to frontend/public/quantum/Machine learning techniques.pdf diff --git a/public/quantum/Mathematics1.pdf b/frontend/public/quantum/Mathematics1.pdf similarity index 100% rename from public/quantum/Mathematics1.pdf rename to frontend/public/quantum/Mathematics1.pdf diff --git a/public/quantum/Mathematics2.pdf b/frontend/public/quantum/Mathematics2.pdf similarity index 100% rename from public/quantum/Mathematics2.pdf rename to frontend/public/quantum/Mathematics2.pdf diff --git a/public/quantum/Mathematics4.pdf b/frontend/public/quantum/Mathematics4.pdf similarity index 100% rename from public/quantum/Mathematics4.pdf rename to frontend/public/quantum/Mathematics4.pdf diff --git a/public/quantum/OperatingSystems.pdf b/frontend/public/quantum/OperatingSystems.pdf similarity index 100% rename from public/quantum/OperatingSystems.pdf rename to frontend/public/quantum/OperatingSystems.pdf diff --git a/public/quantum/Physics.pdf b/frontend/public/quantum/Physics.pdf similarity index 100% rename from public/quantum/Physics.pdf rename to frontend/public/quantum/Physics.pdf diff --git a/public/quantum/ProgrammingforProblemSolving.pdf b/frontend/public/quantum/ProgrammingforProblemSolving.pdf similarity index 100% rename from public/quantum/ProgrammingforProblemSolving.pdf rename to frontend/public/quantum/ProgrammingforProblemSolving.pdf diff --git a/public/quantum/Python Programming.pdf b/frontend/public/quantum/Python Programming.pdf similarity index 100% rename from public/quantum/Python Programming.pdf rename to frontend/public/quantum/Python Programming.pdf diff --git a/public/quantum/SoftSkills1.pdf b/frontend/public/quantum/SoftSkills1.pdf similarity index 100% rename from public/quantum/SoftSkills1.pdf rename to frontend/public/quantum/SoftSkills1.pdf diff --git a/public/quantum/TAFL.pdf b/frontend/public/quantum/TAFL.pdf similarity index 100% rename from public/quantum/TAFL.pdf rename to frontend/public/quantum/TAFL.pdf diff --git a/public/quantum/TechnicalCommunication.pdf b/frontend/public/quantum/TechnicalCommunication.pdf similarity index 100% rename from public/quantum/TechnicalCommunication.pdf rename to frontend/public/quantum/TechnicalCommunication.pdf diff --git a/public/quantum/UniversalHumanValuesProfessionalEthics.pdf b/frontend/public/quantum/UniversalHumanValuesProfessionalEthics.pdf similarity index 100% rename from public/quantum/UniversalHumanValuesProfessionalEthics.pdf rename to frontend/public/quantum/UniversalHumanValuesProfessionalEthics.pdf diff --git a/public/quantum/WEB TECH QUANTUM.pdf b/frontend/public/quantum/WEB TECH QUANTUM.pdf similarity index 100% rename from public/quantum/WEB TECH QUANTUM.pdf rename to frontend/public/quantum/WEB TECH QUANTUM.pdf diff --git a/public/quantum/cd.pdf b/frontend/public/quantum/cd.pdf similarity index 100% rename from public/quantum/cd.pdf rename to frontend/public/quantum/cd.pdf diff --git a/public/quantum/cyber security.pdf b/frontend/public/quantum/cyber security.pdf similarity index 100% rename from public/quantum/cyber security.pdf rename to frontend/public/quantum/cyber security.pdf diff --git a/public/quantum/dsa.pdf b/frontend/public/quantum/dsa.pdf similarity index 100% rename from public/quantum/dsa.pdf rename to frontend/public/quantum/dsa.pdf diff --git a/public/quantum/electronics.pdf b/frontend/public/quantum/electronics.pdf similarity index 100% rename from public/quantum/electronics.pdf rename to frontend/public/quantum/electronics.pdf diff --git a/public/quantum/oopsquantum.pdf b/frontend/public/quantum/oopsquantum.pdf similarity index 100% rename from public/quantum/oopsquantum.pdf rename to frontend/public/quantum/oopsquantum.pdf diff --git a/public/quantum/sequantum.pdf b/frontend/public/quantum/sequantum.pdf similarity index 100% rename from public/quantum/sequantum.pdf rename to frontend/public/quantum/sequantum.pdf diff --git a/public/robots.txt b/frontend/public/robots.txt similarity index 100% rename from public/robots.txt rename to frontend/public/robots.txt diff --git a/public/syllabus/1.pdf b/frontend/public/syllabus/1.pdf similarity index 100% rename from public/syllabus/1.pdf rename to frontend/public/syllabus/1.pdf diff --git a/public/syllabus/1stsem.pdf b/frontend/public/syllabus/1stsem.pdf similarity index 100% rename from public/syllabus/1stsem.pdf rename to frontend/public/syllabus/1stsem.pdf diff --git a/public/syllabus/1styrsyllabus.pdf b/frontend/public/syllabus/1styrsyllabus.pdf similarity index 100% rename from public/syllabus/1styrsyllabus.pdf rename to frontend/public/syllabus/1styrsyllabus.pdf diff --git a/public/syllabus/2ndsem.pdf b/frontend/public/syllabus/2ndsem.pdf similarity index 100% rename from public/syllabus/2ndsem.pdf rename to frontend/public/syllabus/2ndsem.pdf diff --git a/public/syllabus/2ndyrsyllabus.pdf b/frontend/public/syllabus/2ndyrsyllabus.pdf similarity index 100% rename from public/syllabus/2ndyrsyllabus.pdf rename to frontend/public/syllabus/2ndyrsyllabus.pdf diff --git a/public/syllabus/3rdsem.pdf b/frontend/public/syllabus/3rdsem.pdf similarity index 100% rename from public/syllabus/3rdsem.pdf rename to frontend/public/syllabus/3rdsem.pdf diff --git a/public/syllabus/3rdyrsyllabus.pdf b/frontend/public/syllabus/3rdyrsyllabus.pdf similarity index 100% rename from public/syllabus/3rdyrsyllabus.pdf rename to frontend/public/syllabus/3rdyrsyllabus.pdf diff --git a/public/syllabus/4thsem.pdf b/frontend/public/syllabus/4thsem.pdf similarity index 100% rename from public/syllabus/4thsem.pdf rename to frontend/public/syllabus/4thsem.pdf diff --git a/public/syllabus/4thyrsyllabus.pdf b/frontend/public/syllabus/4thyrsyllabus.pdf similarity index 100% rename from public/syllabus/4thyrsyllabus.pdf rename to frontend/public/syllabus/4thyrsyllabus.pdf diff --git a/public/syllabus/5thsem.pdf b/frontend/public/syllabus/5thsem.pdf similarity index 100% rename from public/syllabus/5thsem.pdf rename to frontend/public/syllabus/5thsem.pdf diff --git a/public/syllabus/6thsem.pdf b/frontend/public/syllabus/6thsem.pdf similarity index 100% rename from public/syllabus/6thsem.pdf rename to frontend/public/syllabus/6thsem.pdf diff --git a/public/timetables/sec-1A.jpg b/frontend/public/timetables/sec-1A.jpg similarity index 100% rename from public/timetables/sec-1A.jpg rename to frontend/public/timetables/sec-1A.jpg diff --git a/public/timetables/sec-3A.jpg b/frontend/public/timetables/sec-3A.jpg similarity index 100% rename from public/timetables/sec-3A.jpg rename to frontend/public/timetables/sec-3A.jpg diff --git a/public/timetables/sec-3B.jpg b/frontend/public/timetables/sec-3B.jpg similarity index 100% rename from public/timetables/sec-3B.jpg rename to frontend/public/timetables/sec-3B.jpg diff --git a/public/timetables/sec-3C.jpg b/frontend/public/timetables/sec-3C.jpg similarity index 100% rename from public/timetables/sec-3C.jpg rename to frontend/public/timetables/sec-3C.jpg diff --git a/public/timetables/sec-3D(IT).jpg b/frontend/public/timetables/sec-3D(IT).jpg similarity index 100% rename from public/timetables/sec-3D(IT).jpg rename to frontend/public/timetables/sec-3D(IT).jpg diff --git a/src/App.css b/frontend/src/App.css similarity index 100% rename from src/App.css rename to frontend/src/App.css diff --git a/src/App.js b/frontend/src/App.js similarity index 92% rename from src/App.js rename to frontend/src/App.js index 68bf519..f0724d7 100644 --- a/src/App.js +++ b/frontend/src/App.js @@ -5,6 +5,8 @@ import Timetable from './components/page4/timetable'; import Footer from "./pages/footer"; import Home from "./components/page1/Home"; import Notice from "./components/page2/notice"; +import LoginSignup from './components/login/LoginSignup'; + // import { ThemeProvider } from './components/ThemeContext'; // const ThemeContext = createContext(); @@ -24,9 +26,11 @@ function App() { {/*
*/}
+ {/* */}
+ {/*
*/} {/* */} diff --git a/src/App.test.js b/frontend/src/App.test.js similarity index 100% rename from src/App.test.js rename to frontend/src/App.test.js diff --git a/src/assets/0ea60e02e5dbad89e04710fab40d7b21.jpg b/frontend/src/assets/0ea60e02e5dbad89e04710fab40d7b21.jpg similarity index 100% rename from src/assets/0ea60e02e5dbad89e04710fab40d7b21.jpg rename to frontend/src/assets/0ea60e02e5dbad89e04710fab40d7b21.jpg diff --git a/src/assets/5th.png b/frontend/src/assets/5th.png similarity index 100% rename from src/assets/5th.png rename to frontend/src/assets/5th.png diff --git a/src/assets/ai.jpg b/frontend/src/assets/ai.jpg similarity index 100% rename from src/assets/ai.jpg rename to frontend/src/assets/ai.jpg diff --git a/src/assets/autometa.png b/frontend/src/assets/autometa.png similarity index 100% rename from src/assets/autometa.png rename to frontend/src/assets/autometa.png diff --git a/src/assets/bd.jpg b/frontend/src/assets/bd.jpg similarity index 100% rename from src/assets/bd.jpg rename to frontend/src/assets/bd.jpg diff --git a/src/assets/cd.jpg b/frontend/src/assets/cd.jpg similarity index 100% rename from src/assets/cd.jpg rename to frontend/src/assets/cd.jpg diff --git a/src/assets/chemistry.webp b/frontend/src/assets/chemistry.webp similarity index 100% rename from src/assets/chemistry.webp rename to frontend/src/assets/chemistry.webp diff --git a/src/assets/cn.webp b/frontend/src/assets/cn.webp similarity index 100% rename from src/assets/cn.webp rename to frontend/src/assets/cn.webp diff --git a/src/assets/coa.jpeg b/frontend/src/assets/coa.jpeg similarity index 100% rename from src/assets/coa.jpeg rename to frontend/src/assets/coa.jpeg diff --git a/src/assets/comingsoon.webp b/frontend/src/assets/comingsoon.webp similarity index 100% rename from src/assets/comingsoon.webp rename to frontend/src/assets/comingsoon.webp diff --git a/src/assets/compilerdesign.jpg b/frontend/src/assets/compilerdesign.jpg similarity index 100% rename from src/assets/compilerdesign.jpg rename to frontend/src/assets/compilerdesign.jpg diff --git a/src/assets/computerNetwork.jpg b/frontend/src/assets/computerNetwork.jpg similarity index 100% rename from src/assets/computerNetwork.jpg rename to frontend/src/assets/computerNetwork.jpg diff --git a/src/assets/css.jpeg b/frontend/src/assets/css.jpeg similarity index 100% rename from src/assets/css.jpeg rename to frontend/src/assets/css.jpeg diff --git a/src/assets/da.png b/frontend/src/assets/da.png similarity index 100% rename from src/assets/da.png rename to frontend/src/assets/da.png diff --git a/src/assets/daa.jpg b/frontend/src/assets/daa.jpg similarity index 100% rename from src/assets/daa.jpg rename to frontend/src/assets/daa.jpg diff --git a/src/assets/daa1.jpg b/frontend/src/assets/daa1.jpg similarity index 100% rename from src/assets/daa1.jpg rename to frontend/src/assets/daa1.jpg diff --git a/src/assets/dataAnalytics.jpg b/frontend/src/assets/dataAnalytics.jpg similarity index 100% rename from src/assets/dataAnalytics.jpg rename to frontend/src/assets/dataAnalytics.jpg diff --git a/src/assets/dbms.jpg b/frontend/src/assets/dbms.jpg similarity index 100% rename from src/assets/dbms.jpg rename to frontend/src/assets/dbms.jpg diff --git a/src/assets/dbms.png b/frontend/src/assets/dbms.png similarity index 100% rename from src/assets/dbms.png rename to frontend/src/assets/dbms.png diff --git a/src/assets/dsa.jpeg b/frontend/src/assets/dsa.jpeg similarity index 100% rename from src/assets/dsa.jpeg rename to frontend/src/assets/dsa.jpeg diff --git a/src/assets/dstl.jpeg b/frontend/src/assets/dstl.jpeg similarity index 100% rename from src/assets/dstl.jpeg rename to frontend/src/assets/dstl.jpeg diff --git a/src/assets/ec.jpg b/frontend/src/assets/ec.jpg similarity index 100% rename from src/assets/ec.jpg rename to frontend/src/assets/ec.jpg diff --git a/src/assets/ecleng.jpg b/frontend/src/assets/ecleng.jpg similarity index 100% rename from src/assets/ecleng.jpg rename to frontend/src/assets/ecleng.jpg diff --git a/src/assets/eicseng.jpg b/frontend/src/assets/eicseng.jpg similarity index 100% rename from src/assets/eicseng.jpg rename to frontend/src/assets/eicseng.jpg diff --git a/src/assets/electrical.jpg b/frontend/src/assets/electrical.jpg similarity index 100% rename from src/assets/electrical.jpg rename to frontend/src/assets/electrical.jpg diff --git a/src/assets/electronics.png b/frontend/src/assets/electronics.png similarity index 100% rename from src/assets/electronics.png rename to frontend/src/assets/electronics.png diff --git a/src/assets/ep.jpg b/frontend/src/assets/ep.jpg similarity index 100% rename from src/assets/ep.jpg rename to frontend/src/assets/ep.jpg diff --git a/src/assets/es.jpeg b/frontend/src/assets/es.jpeg similarity index 100% rename from src/assets/es.jpeg rename to frontend/src/assets/es.jpeg diff --git a/src/assets/et.jpg b/frontend/src/assets/et.jpg similarity index 100% rename from src/assets/et.jpg rename to frontend/src/assets/et.jpg diff --git a/src/assets/icons8-book-64.png b/frontend/src/assets/icons8-book-64.png similarity index 100% rename from src/assets/icons8-book-64.png rename to frontend/src/assets/icons8-book-64.png diff --git a/src/assets/icons8-minus-1-year-80.png b/frontend/src/assets/icons8-minus-1-year-80.png similarity index 100% rename from src/assets/icons8-minus-1-year-80.png rename to frontend/src/assets/icons8-minus-1-year-80.png diff --git a/src/assets/icons8-notes-80.png b/frontend/src/assets/icons8-notes-80.png similarity index 100% rename from src/assets/icons8-notes-80.png rename to frontend/src/assets/icons8-notes-80.png diff --git a/src/assets/icons8-syllabus-80 (1).png b/frontend/src/assets/icons8-syllabus-80 (1).png similarity index 100% rename from src/assets/icons8-syllabus-80 (1).png rename to frontend/src/assets/icons8-syllabus-80 (1).png diff --git a/src/assets/icons8-timetable-64.png b/frontend/src/assets/icons8-timetable-64.png similarity index 100% rename from src/assets/icons8-timetable-64.png rename to frontend/src/assets/icons8-timetable-64.png diff --git a/src/assets/icons8-youtube-64.png b/frontend/src/assets/icons8-youtube-64.png similarity index 100% rename from src/assets/icons8-youtube-64.png rename to frontend/src/assets/icons8-youtube-64.png diff --git a/src/assets/lcoa.jpg b/frontend/src/assets/lcoa.jpg similarity index 100% rename from src/assets/lcoa.jpg rename to frontend/src/assets/lcoa.jpg diff --git a/src/assets/lcss.jpg b/frontend/src/assets/lcss.jpg similarity index 100% rename from src/assets/lcss.jpg rename to frontend/src/assets/lcss.jpg diff --git a/src/assets/ldsa.jpg b/frontend/src/assets/ldsa.jpg similarity index 100% rename from src/assets/ldsa.jpg rename to frontend/src/assets/ldsa.jpg diff --git a/src/assets/ldstl.jpg b/frontend/src/assets/ldstl.jpg similarity index 100% rename from src/assets/ldstl.jpg rename to frontend/src/assets/ldstl.jpg diff --git a/src/assets/les.jpg b/frontend/src/assets/les.jpg similarity index 100% rename from src/assets/les.jpg rename to frontend/src/assets/les.jpg diff --git a/src/assets/lmath4.jpg b/frontend/src/assets/lmath4.jpg similarity index 100% rename from src/assets/lmath4.jpg rename to frontend/src/assets/lmath4.jpg diff --git a/src/assets/los.jpg b/frontend/src/assets/los.jpg similarity index 100% rename from src/assets/los.jpg rename to frontend/src/assets/los.jpg diff --git a/src/assets/lpy.jpg b/frontend/src/assets/lpy.jpg similarity index 100% rename from src/assets/lpy.jpg rename to frontend/src/assets/lpy.jpg diff --git a/src/assets/ltafl.jpg b/frontend/src/assets/ltafl.jpg similarity index 100% rename from src/assets/ltafl.jpg rename to frontend/src/assets/ltafl.jpg diff --git a/src/assets/ltc.jpg b/frontend/src/assets/ltc.jpg similarity index 100% rename from src/assets/ltc.jpg rename to frontend/src/assets/ltc.jpg diff --git a/src/assets/luhv.jpg b/frontend/src/assets/luhv.jpg similarity index 100% rename from src/assets/luhv.jpg rename to frontend/src/assets/luhv.jpg diff --git a/src/assets/math1.jpg b/frontend/src/assets/math1.jpg similarity index 100% rename from src/assets/math1.jpg rename to frontend/src/assets/math1.jpg diff --git a/src/assets/math2.jpg b/frontend/src/assets/math2.jpg similarity index 100% rename from src/assets/math2.jpg rename to frontend/src/assets/math2.jpg diff --git a/src/assets/math4.png b/frontend/src/assets/math4.png similarity index 100% rename from src/assets/math4.png rename to frontend/src/assets/math4.png diff --git a/src/assets/me.jpg b/frontend/src/assets/me.jpg similarity index 100% rename from src/assets/me.jpg rename to frontend/src/assets/me.jpg diff --git a/src/assets/mechanical.jpg b/frontend/src/assets/mechanical.jpg similarity index 100% rename from src/assets/mechanical.jpg rename to frontend/src/assets/mechanical.jpg diff --git a/src/assets/mlt.jpg b/frontend/src/assets/mlt.jpg similarity index 100% rename from src/assets/mlt.jpg rename to frontend/src/assets/mlt.jpg diff --git a/src/assets/mone.jpg b/frontend/src/assets/mone.jpg similarity index 100% rename from src/assets/mone.jpg rename to frontend/src/assets/mone.jpg diff --git a/src/assets/mtwo.jpg b/frontend/src/assets/mtwo.jpg similarity index 100% rename from src/assets/mtwo.jpg rename to frontend/src/assets/mtwo.jpg diff --git a/src/assets/oops.jpg b/frontend/src/assets/oops.jpg similarity index 100% rename from src/assets/oops.jpg rename to frontend/src/assets/oops.jpg diff --git a/src/assets/os.jpg b/frontend/src/assets/os.jpg similarity index 100% rename from src/assets/os.jpg rename to frontend/src/assets/os.jpg diff --git a/src/assets/physics.webp b/frontend/src/assets/physics.webp similarity index 100% rename from src/assets/physics.webp rename to frontend/src/assets/physics.webp diff --git a/src/assets/pps.jpg b/frontend/src/assets/pps.jpg similarity index 100% rename from src/assets/pps.jpg rename to frontend/src/assets/pps.jpg diff --git a/src/assets/pps1.jpg b/frontend/src/assets/pps1.jpg similarity index 100% rename from src/assets/pps1.jpg rename to frontend/src/assets/pps1.jpg diff --git a/src/assets/python.jpeg b/frontend/src/assets/python.jpeg similarity index 100% rename from src/assets/python.jpeg rename to frontend/src/assets/python.jpeg diff --git a/src/assets/se.jpg b/frontend/src/assets/se.jpg similarity index 100% rename from src/assets/se.jpg rename to frontend/src/assets/se.jpg diff --git a/src/assets/sec-3A.jpg b/frontend/src/assets/sec-3A.jpg similarity index 100% rename from src/assets/sec-3A.jpg rename to frontend/src/assets/sec-3A.jpg diff --git a/src/assets/softskills1.webp b/frontend/src/assets/softskills1.webp similarity index 100% rename from src/assets/softskills1.webp rename to frontend/src/assets/softskills1.webp diff --git a/src/assets/ssi.jpg b/frontend/src/assets/ssi.jpg similarity index 100% rename from src/assets/ssi.jpg rename to frontend/src/assets/ssi.jpg diff --git a/src/assets/ssii.jpg b/frontend/src/assets/ssii.jpg similarity index 100% rename from src/assets/ssii.jpg rename to frontend/src/assets/ssii.jpg diff --git a/src/assets/syllabuswt.jpg b/frontend/src/assets/syllabuswt.jpg similarity index 100% rename from src/assets/syllabuswt.jpg rename to frontend/src/assets/syllabuswt.jpg diff --git a/src/assets/tc.jpeg b/frontend/src/assets/tc.jpeg similarity index 100% rename from src/assets/tc.jpeg rename to frontend/src/assets/tc.jpeg diff --git a/src/assets/uhv.jpg b/frontend/src/assets/uhv.jpg similarity index 100% rename from src/assets/uhv.jpg rename to frontend/src/assets/uhv.jpg diff --git a/src/assets/webd.jpg b/frontend/src/assets/webd.jpg similarity index 100% rename from src/assets/webd.jpg rename to frontend/src/assets/webd.jpg diff --git a/src/assets/wt.jpg b/frontend/src/assets/wt.jpg similarity index 100% rename from src/assets/wt.jpg rename to frontend/src/assets/wt.jpg diff --git a/src/assets/wt.png b/frontend/src/assets/wt.png similarity index 100% rename from src/assets/wt.png rename to frontend/src/assets/wt.png diff --git a/src/assets/ytt.png b/frontend/src/assets/ytt.png similarity index 100% rename from src/assets/ytt.png rename to frontend/src/assets/ytt.png diff --git a/src/components/imgdata.css b/frontend/src/components/imgdata.css similarity index 100% rename from src/components/imgdata.css rename to frontend/src/components/imgdata.css diff --git a/src/components/imgdata.js b/frontend/src/components/imgdata.js similarity index 100% rename from src/components/imgdata.js rename to frontend/src/components/imgdata.js diff --git a/src/components/layout.css b/frontend/src/components/layout.css similarity index 100% rename from src/components/layout.css rename to frontend/src/components/layout.css diff --git a/src/components/layout.js b/frontend/src/components/layout.js similarity index 100% rename from src/components/layout.js rename to frontend/src/components/layout.js diff --git a/frontend/src/components/login/LoginSignup.css b/frontend/src/components/login/LoginSignup.css new file mode 100644 index 0000000..3fd6d45 --- /dev/null +++ b/frontend/src/components/login/LoginSignup.css @@ -0,0 +1,120 @@ +.loginsignup{ + width: 100%; + height: 110vh; + background: #fce3fe; + padding-top: 100px; +} +.loginsignup-cointainer{ + width: 580px; + height: 700px; + background: white; + margin: auto; + padding: 40px 60px; +} +.loginsignup-cointainer h1{ + margin: 20px 0px; +} +.loginsignup-fields{ + display: flex; + flex-direction: column; + gap: 29px; + margin-top: 30px; + +} +.loginsignup-fields input{ + height: 72px; + width: 100%; + padding-left: 20px; + border: 1px solid #c9c9c9; + outline: none; + color: #5c5c5c; + font-size: 18px; +} +.loginsignup-cointainer button{ + width: 580px; + height: 72px; + color: white; + background: #ff4141; + margin-top: 30px; + border: none; + font-size: 24px; + font-weight: 500; + cursor: pointer; +} +.loginsignup-login{ + margin-top: 20px; + color: #5c5c5c; + font-size: 18px; + font-weight: 500; + text-align: inherit; + display: block; + width: auto; +} +.loginsignup-login span{ + color: #ff4141; + font-weight: 600; +} +.loginsignup-agree{ + display: flex; + align-items: center; + margin-top: 25px; + gap: 20px; + color: #5c5c5c; + font-size: 18px; + font-weight: 500; +} + +@media (max-width:1280px){ + + .loginsignup{ + padding-top: 50px; + } + .loginsignup-cointainer{ + width: auto; + max-width: 500px; + max-height: 600px; + } + .loginsignup-cointainer h1{ + margin: 10px 0px; + } + .loginsignup-fields{ + gap: 20px; + margin-top: 20px; + } + .loginsignup-fields input{ + height: 65px; + width: 93%; + } + .loginsignup-cointainer button{ + width: 100%; + } + .loginsignup-login{ + font-size: 16px; + + } + .loginsignup-agree{ + font-size: 14px; + gap: 10px; + } +} + +@media (max-width:800px){ + .loginsignup-cointainer{ + padding: 20px 30px; + } + .loginsignup-cointainer h1{ + font-size: 24px; +} +.loginsignup-fields{ + margin-top: 20px; +} + +.loginsignup-fields input{ + height: 50px; +} +.loginsignup-cointainer button{ + height: 50px; + font-size: 16px; +} + +} \ No newline at end of file diff --git a/frontend/src/components/login/LoginSignup.jsx b/frontend/src/components/login/LoginSignup.jsx new file mode 100644 index 0000000..b69d872 --- /dev/null +++ b/frontend/src/components/login/LoginSignup.jsx @@ -0,0 +1,112 @@ +import React, { useState } from "react"; +import "./LoginSignup.css"; + +const LoginSignup = () => { + + + const [state, setState] = useState("Sign Up"); + const [formData, setFormData] = useState({ + username: "", + password: "", + email: "", + }); + const handleSignInWithGoogle = () => { + window.location.href = 'http://localhost:4000/auth/google'; // Redirect to the server route for Google OAuth login + }; + + const ChangeHandler=(e)=>{ + setFormData({...formData,[e.target.name]:e.target.value}) + } + const login = async () => { + console.log("logim"); + let responseData; + await fetch("http://localhost:4000/login",{ + method: "POST", + headers:{ + Accept:'application/form-data', + 'content-Type':'application/json' + }, + body: JSON.stringify(formData) + }).then((response)=>response.json()).then((data)=>responseData=data) + if(responseData.success){ + localStorage.setItem('auth-token',responseData.token); + window.location.replace("/") + } + else{ + alert(responseData.errors); + } + }; + const signup = async () => { + console.log("Sign up"); + let responseData; + await fetch("http://localhost:4000/signup",{ + method: "POST", + headers:{ + Accept:'application/form-data', + 'content-Type':'application/json' + }, + body: JSON.stringify(formData) + }).then((response)=>response.json()).then((data)=>responseData=data) + if(responseData.success){ + localStorage.setItem('auth-token',responseData.token); + window.location.replace("/") + } + else{ + alert(responseData.errors); + } + }; + + return ( +
+
+

{state}

+
+ {state === "Sign Up" ? ( + + ) : ( + <> + )} + + +
+ + {state === "Sign Up" ? ( +

+ Already have an account?{" "} + { + setState("Login"); + }} + > + Login Here + +

+ ) : ( +

+ Create an account?{" "} + { + setState("Sign Up"); + }} + > + Click Here + +

+ )} +
+ {state === "Sign Up" ? + : + } +
+ +
+
+ ); +}; +export default LoginSignup; diff --git a/src/components/page1/Home.css b/frontend/src/components/page1/Home.css similarity index 100% rename from src/components/page1/Home.css rename to frontend/src/components/page1/Home.css diff --git a/src/components/page1/Home.js b/frontend/src/components/page1/Home.js similarity index 95% rename from src/components/page1/Home.js rename to frontend/src/components/page1/Home.js index ac0b1cc..1f8274a 100644 --- a/src/components/page1/Home.js +++ b/frontend/src/components/page1/Home.js @@ -5,7 +5,7 @@ function Home() { return (
-

Visite your year

+

Visit your year

diff --git a/src/components/page2/notice.css b/frontend/src/components/page2/notice.css similarity index 100% rename from src/components/page2/notice.css rename to frontend/src/components/page2/notice.css diff --git a/src/components/page2/notice.js b/frontend/src/components/page2/notice.js similarity index 100% rename from src/components/page2/notice.js rename to frontend/src/components/page2/notice.js diff --git a/src/components/page3/1Year.css b/frontend/src/components/page3/1Year.css similarity index 100% rename from src/components/page3/1Year.css rename to frontend/src/components/page3/1Year.css diff --git a/src/components/page3/1Year.js b/frontend/src/components/page3/1Year.js similarity index 97% rename from src/components/page3/1Year.js rename to frontend/src/components/page3/1Year.js index b0bdba5..b5259c8 100644 --- a/src/components/page3/1Year.js +++ b/frontend/src/components/page3/1Year.js @@ -36,7 +36,7 @@ function fstYear() {
- +

Syllabus

diff --git a/src/components/page5(1st)/5notes.js b/frontend/src/components/page3/2Year.css similarity index 100% rename from src/components/page5(1st)/5notes.js rename to frontend/src/components/page3/2Year.css diff --git a/src/components/page3/2Year.js b/frontend/src/components/page3/2Year.js similarity index 97% rename from src/components/page3/2Year.js rename to frontend/src/components/page3/2Year.js index d920c57..0354ef4 100644 --- a/src/components/page3/2Year.js +++ b/frontend/src/components/page3/2Year.js @@ -35,7 +35,7 @@ function sndYear() {
- +

Syllabus

diff --git a/src/components/page3/3Year.css b/frontend/src/components/page3/3Year.css similarity index 100% rename from src/components/page3/3Year.css rename to frontend/src/components/page3/3Year.css diff --git a/src/components/page3/3Year.js b/frontend/src/components/page3/3Year.js similarity index 97% rename from src/components/page3/3Year.js rename to frontend/src/components/page3/3Year.js index 87f8a78..a8a34da 100644 --- a/src/components/page3/3Year.js +++ b/frontend/src/components/page3/3Year.js @@ -38,7 +38,7 @@ function TrdYear() {
- +

Syllabus

diff --git a/src/components/page3/4Year.js b/frontend/src/components/page3/4Year.js similarity index 51% rename from src/components/page3/4Year.js rename to frontend/src/components/page3/4Year.js index 58b8265..b0bffe3 100644 --- a/src/components/page3/4Year.js +++ b/frontend/src/components/page3/4Year.js @@ -1,20 +1,7 @@ -// import React from 'react' - -// function fothYear() { -// return ( -//
-//

Fourth Year

-//
-// ) -// } - -// export default fothYear - - import React from 'react' import {Link} from 'react-router-dom'; -// import '../page3/3Year.css' import Header from '../../pages/header'; +import '../page3/1Year.css'; import quantumImage from '../../assets/5th.png'; @@ -27,13 +14,44 @@ import ComingSoon from '../../pages/cs.js' function fothYear() { - return ( -
- + + return ( +
-{/*
*/} +
+ +
+

4th year

- ) -} + +
+
+ + + + +
+ +

Syllabus

+
+ + + + + + + + +
+
+ +
+ + ) + } + + + + export default fothYear; diff --git a/src/components/page4/lecture.css b/frontend/src/components/page4/lecture.css similarity index 100% rename from src/components/page4/lecture.css rename to frontend/src/components/page4/lecture.css diff --git a/src/components/page4/lecture.js b/frontend/src/components/page4/lecture.js similarity index 100% rename from src/components/page4/lecture.js rename to frontend/src/components/page4/lecture.js diff --git a/src/components/page4/notes.css b/frontend/src/components/page4/notes.css similarity index 100% rename from src/components/page4/notes.css rename to frontend/src/components/page4/notes.css diff --git a/src/components/page4/notes.js b/frontend/src/components/page4/notes.js similarity index 100% rename from src/components/page4/notes.js rename to frontend/src/components/page4/notes.js diff --git a/src/components/page4/pyq.js b/frontend/src/components/page4/pyq.js similarity index 100% rename from src/components/page4/pyq.js rename to frontend/src/components/page4/pyq.js diff --git a/src/components/page4/quantum.css b/frontend/src/components/page4/quantum.css similarity index 100% rename from src/components/page4/quantum.css rename to frontend/src/components/page4/quantum.css diff --git a/src/components/page4/syllabus.css b/frontend/src/components/page4/syllabus.css similarity index 100% rename from src/components/page4/syllabus.css rename to frontend/src/components/page4/syllabus.css diff --git a/src/components/page4/syllabus.js b/frontend/src/components/page4/syllabus.js similarity index 100% rename from src/components/page4/syllabus.js rename to frontend/src/components/page4/syllabus.js diff --git a/src/components/page4/timetable.css b/frontend/src/components/page4/timetable.css similarity index 100% rename from src/components/page4/timetable.css rename to frontend/src/components/page4/timetable.css diff --git a/src/components/page4/timetable.js b/frontend/src/components/page4/timetable.js similarity index 100% rename from src/components/page4/timetable.js rename to frontend/src/components/page4/timetable.js diff --git a/src/components/page4/trdquantum.js b/frontend/src/components/page4/trdquantum.js similarity index 100% rename from src/components/page4/trdquantum.js rename to frontend/src/components/page4/trdquantum.js diff --git a/frontend/src/components/page5(1st)/5notes.js b/frontend/src/components/page5(1st)/5notes.js new file mode 100644 index 0000000..e69de29 diff --git a/src/components/page5(1st)/fstlecture.css b/frontend/src/components/page5(1st)/fstlecture.css similarity index 100% rename from src/components/page5(1st)/fstlecture.css rename to frontend/src/components/page5(1st)/fstlecture.css diff --git a/src/components/page5(1st)/fstlecture.js b/frontend/src/components/page5(1st)/fstlecture.js similarity index 100% rename from src/components/page5(1st)/fstlecture.js rename to frontend/src/components/page5(1st)/fstlecture.js diff --git a/src/components/page5(1st)/fstpyq.js b/frontend/src/components/page5(1st)/fstpyq.js similarity index 100% rename from src/components/page5(1st)/fstpyq.js rename to frontend/src/components/page5(1st)/fstpyq.js diff --git a/src/components/page5(1st)/fstquantum.css b/frontend/src/components/page5(1st)/fstquantum.css similarity index 100% rename from src/components/page5(1st)/fstquantum.css rename to frontend/src/components/page5(1st)/fstquantum.css diff --git a/src/components/page5(1st)/fstquantum.js b/frontend/src/components/page5(1st)/fstquantum.js similarity index 100% rename from src/components/page5(1st)/fstquantum.js rename to frontend/src/components/page5(1st)/fstquantum.js diff --git a/frontend/src/components/page5(1st)/fstsyllabus.js b/frontend/src/components/page5(1st)/fstsyllabus.js new file mode 100644 index 0000000..69f63bc --- /dev/null +++ b/frontend/src/components/page5(1st)/fstsyllabus.js @@ -0,0 +1,73 @@ +import React from 'react' +import Header from "../../pages/header"; +import Footer from "../../pages/footer"; +import '../page4/syllabus.css'; + + +const fstsyllabus =() => { + + // const[selectSem, setSelectSem] = useState(null); + + const handleDownload = (syllabus) =>{ + const syllabusFilePath = process.env.PUBLIC_URL + `/syllabus/${syllabus}.pdf`; + + const link = document.createElement('a'); + link.href = syllabusFilePath; + link.download = `syllabus${syllabus}.pdf`; + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + } + return ( + + ) +} + +export default fstsyllabus + + + + diff --git a/src/components/page5(1st)/fsttimetable.js b/frontend/src/components/page5(1st)/fsttimetable.js similarity index 100% rename from src/components/page5(1st)/fsttimetable.js rename to frontend/src/components/page5(1st)/fsttimetable.js diff --git a/src/components/page6(2nd)/sndlecture.js b/frontend/src/components/page6(2nd)/sndlecture.js similarity index 100% rename from src/components/page6(2nd)/sndlecture.js rename to frontend/src/components/page6(2nd)/sndlecture.js diff --git a/src/components/page6(2nd)/sndquantum.css b/frontend/src/components/page6(2nd)/sndquantum.css similarity index 100% rename from src/components/page6(2nd)/sndquantum.css rename to frontend/src/components/page6(2nd)/sndquantum.css diff --git a/src/components/page6(2nd)/sndquantum.js b/frontend/src/components/page6(2nd)/sndquantum.js similarity index 100% rename from src/components/page6(2nd)/sndquantum.js rename to frontend/src/components/page6(2nd)/sndquantum.js diff --git a/frontend/src/components/page6(2nd)/sndsyllabus.js b/frontend/src/components/page6(2nd)/sndsyllabus.js new file mode 100644 index 0000000..76893f3 --- /dev/null +++ b/frontend/src/components/page6(2nd)/sndsyllabus.js @@ -0,0 +1,80 @@ +import React from 'react' +import Header from "../../pages/header"; +import Footer from "../../pages/footer"; +import '../page4/syllabus.css'; + + +const Syllabus =() => { + + // const[selectSem, setSelectSem] = useState(null); + + const handleDownload = (syllabus) =>{ + const syllabusFilePath = process.env.PUBLIC_URL + `/syllabus/${syllabus}.pdf`; + + const link = document.createElement('a'); + link.href = syllabusFilePath; + link.download = `syllabus${syllabus}.pdf`; + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + } + return ( + + ) +} + +export default Syllabus + + diff --git a/src/components/page6(2nd)/sndtimetable.js b/frontend/src/components/page6(2nd)/sndtimetable.js similarity index 100% rename from src/components/page6(2nd)/sndtimetable.js rename to frontend/src/components/page6(2nd)/sndtimetable.js diff --git a/src/components/page7(4yr)/frthquantum.js b/frontend/src/components/page7(4yr)/frthquantum.js similarity index 100% rename from src/components/page7(4yr)/frthquantum.js rename to frontend/src/components/page7(4yr)/frthquantum.js diff --git a/frontend/src/components/page7(4yr)/frthsyllabus.js b/frontend/src/components/page7(4yr)/frthsyllabus.js new file mode 100644 index 0000000..9c0caf3 --- /dev/null +++ b/frontend/src/components/page7(4yr)/frthsyllabus.js @@ -0,0 +1,81 @@ +import React from 'react' +import Header from "../../pages/header"; +import Footer from "../../pages/footer"; +import '../page4/syllabus.css'; + + +const frthsyllabus =() => { + + // const[selectSem, setSelectSem] = useState(null); + + const handleDownload = (syllabus) =>{ + const syllabusFilePath = process.env.PUBLIC_URL + `/syllabus/${syllabus}.pdf`; + + const link = document.createElement('a'); + link.href = syllabusFilePath; + link.download = `syllabus${syllabus}.pdf`; + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + } + return ( + + ) +} + +export default frthsyllabus + + diff --git a/frontend/src/components/page8(3yr)/trdsyllabus.js b/frontend/src/components/page8(3yr)/trdsyllabus.js new file mode 100644 index 0000000..2e4ebb3 --- /dev/null +++ b/frontend/src/components/page8(3yr)/trdsyllabus.js @@ -0,0 +1,81 @@ +import React from 'react' +import Header from "../../pages/header"; +import Footer from "../../pages/footer"; +import '../page4/syllabus.css'; + + +const trdsyllabus =() => { + + // const[selectSem, setSelectSem] = useState(null); + + const handleDownload = (syllabus) =>{ + const syllabusFilePath = process.env.PUBLIC_URL + `/syllabus/${syllabus}.pdf`; + + const link = document.createElement('a'); + link.href = syllabusFilePath; + link.download = `syllabus${syllabus}.pdf`; + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + } + return ( + + ) +} + +export default trdsyllabus + + diff --git a/src/index.css b/frontend/src/index.css similarity index 100% rename from src/index.css rename to frontend/src/index.css diff --git a/src/index.js b/frontend/src/index.js similarity index 81% rename from src/index.js rename to frontend/src/index.js index ed1dd55..71d1f5b 100644 --- a/src/index.js +++ b/frontend/src/index.js @@ -21,12 +21,16 @@ import SndQuantum from './components/page6(2nd)/sndquantum.js' import SndLecture from './components/page6(2nd)/sndlecture.js' import Fsttimetable from './components/page5(1st)/fsttimetable.js' import Sndtimetable from './components/page6(2nd)/sndtimetable.js'; - +import Fstsyllabus from './components/page5(1st)/fstsyllabus.js'; +import Sndsyllabus from './components/page6(2nd)/sndsyllabus.js' +import Frthsyllabus from './components/page7(4yr)/frthsyllabus.js' +import TrdSyllabus from './components/page8(3yr)/trdsyllabus.js'; import { createBrowserRouter, RouterProvider, } from "react-router-dom"; import "./index.css"; +import LoginSignup from './components/login/LoginSignup.jsx'; // const ThemeContext = createContext(); @@ -45,9 +49,25 @@ const router = createBrowserRouter([ path: "/", element: , }, + // { + // path: "syllabus", + // element: + // }, { - path: "syllabus", - element: + path:"fstsyllabus", + element: + }, + { + path:"sndsyllabus", + element: + }, + { + path:"trdsyllabus", + element: + }, + { + path:"frthsyllabus", + element: }, { path: "timetable", @@ -119,7 +139,11 @@ const router = createBrowserRouter([ { path: "fothyear", element: - } + }, + { + path: "/login", + element: + }, ]); ReactDOM.createRoot(document.getElementById("root")).render( diff --git a/src/logo.svg b/frontend/src/logo.svg similarity index 100% rename from src/logo.svg rename to frontend/src/logo.svg diff --git a/src/pages/cs.css b/frontend/src/pages/cs.css similarity index 100% rename from src/pages/cs.css rename to frontend/src/pages/cs.css diff --git a/src/pages/cs.js b/frontend/src/pages/cs.js similarity index 100% rename from src/pages/cs.js rename to frontend/src/pages/cs.js diff --git a/src/pages/footer.css b/frontend/src/pages/footer.css similarity index 100% rename from src/pages/footer.css rename to frontend/src/pages/footer.css diff --git a/src/pages/footer.js b/frontend/src/pages/footer.js similarity index 100% rename from src/pages/footer.js rename to frontend/src/pages/footer.js diff --git a/src/pages/header.css b/frontend/src/pages/header.css similarity index 100% rename from src/pages/header.css rename to frontend/src/pages/header.css diff --git a/frontend/src/pages/header.js b/frontend/src/pages/header.js new file mode 100644 index 0000000..f9223ed --- /dev/null +++ b/frontend/src/pages/header.js @@ -0,0 +1,35 @@ +import React from 'react' +import './header.css'; +import {Link} from "react-router-dom"; +import { colors } from '@mui/material'; +// import { useTheme } from '../index'; + + + +function Header() { + + // const {isDarkMode, togglerDarkMode} =useTheme(); + + return ( + + +
+ {/* logo */} +
+
+ 75%.com + +
+ login + + + +
+
+ + + + ) +} + +export default Header diff --git a/src/reportWebVitals.js b/frontend/src/reportWebVitals.js similarity index 100% rename from src/reportWebVitals.js rename to frontend/src/reportWebVitals.js diff --git a/src/setupTests.js b/frontend/src/setupTests.js similarity index 100% rename from src/setupTests.js rename to frontend/src/setupTests.js diff --git a/src/tempCodeRunnerFile.js b/frontend/src/tempCodeRunnerFile.js similarity index 100% rename from src/tempCodeRunnerFile.js rename to frontend/src/tempCodeRunnerFile.js diff --git a/tailwind.config.js b/frontend/tailwind.config.js similarity index 100% rename from tailwind.config.js rename to frontend/tailwind.config.js diff --git a/src/components/page5(1st)/fstsyllabus.js b/src/components/page5(1st)/fstsyllabus.js deleted file mode 100644 index e508227..0000000 --- a/src/components/page5(1st)/fstsyllabus.js +++ /dev/null @@ -1,11 +0,0 @@ -import React from 'react' - -function fstsyllabus() { - return ( -
- -
- ) -} - -export default fstsyllabus diff --git a/src/pages/header.js b/src/pages/header.js deleted file mode 100644 index f1285b0..0000000 --- a/src/pages/header.js +++ /dev/null @@ -1,60 +0,0 @@ -import React from 'react' -import './header.css'; -import {Link} from "react-router-dom"; -import { colors } from '@mui/material'; -// import { useTheme } from '../index'; - - - -function Header() { - - // const {isDarkMode, togglerDarkMode} =useTheme(); - - return ( - - -
- {/* logo */} -
-
- 75%.com -
- {/* notes */} - {/*
-
Get your timeTable/Syllabus/Quantum/Note
-
*/} - {/* button */} - {/*
- - - - -
*/} - - {/* Dark mode */} - -{/* -
- -
*/} - - - -
-
- - - - ) -} - -export default Header