Compare commits
2 Commits
cb2ed15120
...
cb2dd7bb27
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cb2dd7bb27 | ||
|
|
b8d9ea2fe4 |
38
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
---
|
||||||
|
name: Bug report
|
||||||
|
about: Create a report to help us improve
|
||||||
|
title: ''
|
||||||
|
labels: 'bug'
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Describe the bug**
|
||||||
|
A clear and concise description of what the bug is.
|
||||||
|
|
||||||
|
**To Reproduce**
|
||||||
|
Steps to reproduce the behavior:
|
||||||
|
1. Go to '...'
|
||||||
|
2. Click on '....'
|
||||||
|
3. Scroll down to '....'
|
||||||
|
4. See error
|
||||||
|
|
||||||
|
**Expected behavior**
|
||||||
|
A clear and concise description of what you expected to happen.
|
||||||
|
|
||||||
|
**Screenshots**
|
||||||
|
If applicable, add screenshots to help explain your problem.
|
||||||
|
|
||||||
|
**Desktop (please complete the following information):**
|
||||||
|
- OS: [e.g. iOS]
|
||||||
|
- Browser [e.g. chrome, safari]
|
||||||
|
- Version [e.g. 22]
|
||||||
|
|
||||||
|
**Smartphone (please complete the following information):**
|
||||||
|
- Device: [e.g. iPhone6]
|
||||||
|
- OS: [e.g. iOS8.1]
|
||||||
|
- Browser [e.g. stock browser, safari]
|
||||||
|
- Version [e.g. 22]
|
||||||
|
|
||||||
|
**Additional context**
|
||||||
|
Add any other context about the problem here.
|
||||||
36
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@ -1,36 +0,0 @@
|
|||||||
name: Bug report
|
|
||||||
title: '[bug]: '
|
|
||||||
labels: ['bug']
|
|
||||||
description: Create a report to help us improve
|
|
||||||
body:
|
|
||||||
- type: markdown
|
|
||||||
attributes:
|
|
||||||
value: |
|
|
||||||
Thank you for coming here to submit a bug report. We care about anything from big to small relating to MHSF, making a better experience for you and others.
|
|
||||||
|
|
||||||
Try and be as descriptive as possible & type in a way thats able to understood by other contributors.
|
|
||||||
- type: textarea
|
|
||||||
attributes:
|
|
||||||
label: Current and Expected Behavior
|
|
||||||
description: What are you experiencing right now, and what did you expect to happen?
|
|
||||||
placeholder: I was trying to do XYZ, however X happened instead of Y.
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
- type: textarea
|
|
||||||
attributes:
|
|
||||||
label: To Reproduce
|
|
||||||
description: If this is self-explanatory with information above, keep this blank.
|
|
||||||
placeholder: |
|
|
||||||
1. Open X
|
|
||||||
2. Click Y
|
|
||||||
3. See Z
|
|
||||||
validations:
|
|
||||||
required: false
|
|
||||||
- type: input
|
|
||||||
attributes:
|
|
||||||
label: MHSF Username (if applicable)
|
|
||||||
description: If this bug has soft-locked your account or something similar where we need to know your username, please put it here.
|
|
||||||
- type: input
|
|
||||||
attributes:
|
|
||||||
label: Minecraft Username (if applicable)
|
|
||||||
description: If this bug is related to Minecraft account linking, please put your username here.
|
|
||||||
62
.gitignore
vendored
@ -1,38 +1,48 @@
|
|||||||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
||||||
|
|
||||||
# Dependencies
|
# dependencies
|
||||||
node_modules
|
/node_modules
|
||||||
.pnp
|
/.pnp
|
||||||
.pnp.js
|
.pnp.js
|
||||||
|
.yarn/install-state.gz
|
||||||
# Local env files
|
|
||||||
.env
|
|
||||||
apps/www/.env.local
|
|
||||||
.env.development.local
|
|
||||||
.env.test.local
|
|
||||||
.env.production.local
|
|
||||||
|
|
||||||
# Testing
|
|
||||||
coverage
|
|
||||||
|
|
||||||
# Turbo
|
|
||||||
.turbo
|
.turbo
|
||||||
|
|
||||||
# Vercel
|
# contentlayer
|
||||||
.vercel
|
.contentlayer
|
||||||
|
|
||||||
# Build Outputs
|
# cron
|
||||||
.next/
|
/cron/dist
|
||||||
out/
|
/cron/node_modules
|
||||||
build
|
|
||||||
dist
|
|
||||||
|
|
||||||
|
# testing
|
||||||
|
/coverage
|
||||||
|
|
||||||
# Debug
|
# next.js
|
||||||
|
/.next/
|
||||||
|
/out/
|
||||||
|
|
||||||
|
# production
|
||||||
|
/build
|
||||||
|
|
||||||
|
# misc
|
||||||
|
.DS_Store
|
||||||
|
*.pem
|
||||||
|
|
||||||
|
# debug
|
||||||
npm-debug.log*
|
npm-debug.log*
|
||||||
yarn-debug.log*
|
yarn-debug.log*
|
||||||
yarn-error.log*
|
yarn-error.log*
|
||||||
|
|
||||||
# Misc
|
# local env files
|
||||||
.DS_Store
|
.env*.local
|
||||||
*.pem
|
|
||||||
|
# vercel
|
||||||
|
.vercel
|
||||||
|
|
||||||
|
# typescript
|
||||||
|
*.tsbuildinfo
|
||||||
|
next-env.d.ts
|
||||||
|
|
||||||
|
css-obfuscator
|
||||||
|
|
||||||
|
*.sync-conflict*
|
||||||
16
.idea/.gitignore
generated
vendored
@ -1,8 +1,8 @@
|
|||||||
# Default ignored files
|
# Ignore everything for IntelliJ except for project essential code-styles
|
||||||
/shelf/
|
*
|
||||||
/workspace.xml
|
|
||||||
# Editor-based HTTP Client requests
|
!copyright/*
|
||||||
/httpRequests/
|
!codeStyles/*
|
||||||
# Datasource local storage ignored files
|
!.gitignore
|
||||||
/dataSources/
|
|
||||||
/dataSources.local.xml
|
!*/
|
||||||
12
.idea/MHSF-Modern.iml
generated
@ -1,12 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<module type="WEB_MODULE" version="4">
|
|
||||||
<component name="NewModuleRootManager">
|
|
||||||
<content url="file://$MODULE_DIR$">
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/.tmp" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/temp" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/tmp" />
|
|
||||||
</content>
|
|
||||||
<orderEntry type="inheritedJdk" />
|
|
||||||
<orderEntry type="sourceFolder" forTests="false" />
|
|
||||||
</component>
|
|
||||||
</module>
|
|
||||||
7
.idea/codeStyles/Project.xml
generated
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<component name="ProjectCodeStyleConfiguration">
|
||||||
|
<code_scheme name="Project" version="173">
|
||||||
|
<JSCodeStyleSettings version="0">
|
||||||
|
<option name="SPACES_WITHIN_IMPORTS" value="true" />
|
||||||
|
</JSCodeStyleSettings>
|
||||||
|
</code_scheme>
|
||||||
|
</component>
|
||||||
5
.idea/codeStyles/codeStyleConfig.xml
generated
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<component name="ProjectCodeStyleConfiguration">
|
||||||
|
<state>
|
||||||
|
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
|
||||||
|
</state>
|
||||||
|
</component>
|
||||||
2
.idea/copyright/MIT_License_f__MHSF.xml
generated
@ -1,6 +1,6 @@
|
|||||||
<component name="CopyrightManager">
|
<component name="CopyrightManager">
|
||||||
<copyright>
|
<copyright>
|
||||||
<option name="notice" value="MHSF, Minehut Server List All external content is rather licensed under the ECA Agreement located here: https://mhsf.app/docs/legal/external-content-agreement All code under MHSF is licensed under the MIT License by open source contributors Copyright (c) 2025 dvelo Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE." />
|
<option name="notice" value="MHSF, Minehut Server List All external content is rather licensed under the ECA Agreement located here: https://mhsf.app/docs/legal/external-content-agreement All code under MHSF is licensed under the MIT License by open source contributors Copyright (c) 2024 dvelo Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE." />
|
||||||
<option name="myName" value="MIT License f/ MHSF" />
|
<option name="myName" value="MIT License f/ MHSF" />
|
||||||
</copyright>
|
</copyright>
|
||||||
</component>
|
</component>
|
||||||
6
.idea/copyright/profiles_settings.xml
generated
@ -1,7 +1,3 @@
|
|||||||
<component name="CopyrightManager">
|
<component name="CopyrightManager">
|
||||||
<settings>
|
<settings default="MIT License f/ MHSF" />
|
||||||
<module2copyright>
|
|
||||||
<element module="All" copyright="MIT License f/ MHSF" />
|
|
||||||
</module2copyright>
|
|
||||||
</settings>
|
|
||||||
</component>
|
</component>
|
||||||
6
.idea/inspectionProfiles/Project_Default.xml
generated
@ -1,6 +0,0 @@
|
|||||||
<component name="InspectionProjectProfileManager">
|
|
||||||
<profile version="1.0">
|
|
||||||
<option name="myName" value="Project Default" />
|
|
||||||
<inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
|
|
||||||
</profile>
|
|
||||||
</component>
|
|
||||||
8
.idea/modules.xml
generated
@ -1,8 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="ProjectModuleManager">
|
|
||||||
<modules>
|
|
||||||
<module fileurl="file://$PROJECT_DIR$/.idea/MHSF-Modern.iml" filepath="$PROJECT_DIR$/.idea/MHSF-Modern.iml" />
|
|
||||||
</modules>
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
7
.idea/vcs.xml
generated
@ -1,7 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="VcsDirectoryMappings">
|
|
||||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
|
||||||
<mapping directory="$PROJECT_DIR$/apps/www" vcs="Git" />
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
0
.npmrc
2
.vercelignore
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
backend-mh-api/
|
||||||
|
cron/
|
||||||
2
.vscode/settings.json
vendored
@ -1,3 +1,3 @@
|
|||||||
{
|
{
|
||||||
"copyright-header-injector.copyrightText": "/*\n * MHSF, Minehut Server List\n * All external content is rather licensed under the ECA Agreement\n * located here: https://mhsf.app/docs/legal/external-content-agreement\n *\n * All code under MHSF is licensed under the MIT License\n * by open source contributors\n *\n * Copyright (c) 2025 dvelo\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n * OTHER DEALINGS IN THE SOFTWARE.\n */"
|
"copyright-header-injector.copyrightText": "/*\n * MHSF, Minehut Server List\n * All external content is rather licensed under the ECA Agreement\n * located here: https://mhsf.app/docs/legal/external-content-agreement\n *\n * All code under MHSF is licensed under the MIT License\n * by open source contributors\n *\n * Copyright (c) 2024 dvelo\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to\n * deal in the Software without restriction, including without limitation the\n * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n * sell copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n * OTHER DEALINGS IN THE SOFTWARE.\n */"
|
||||||
}
|
}
|
||||||
48
apps/www/.gitignore
vendored
@ -1,48 +0,0 @@
|
|||||||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
|
||||||
|
|
||||||
# dependencies
|
|
||||||
/node_modules
|
|
||||||
/.pnp
|
|
||||||
.pnp.js
|
|
||||||
.yarn/install-state.gz
|
|
||||||
.turbo
|
|
||||||
|
|
||||||
# contentlayer
|
|
||||||
.contentlayer
|
|
||||||
|
|
||||||
# cron
|
|
||||||
/cron/dist
|
|
||||||
/cron/node_modules
|
|
||||||
|
|
||||||
# testing
|
|
||||||
/coverage
|
|
||||||
|
|
||||||
# next.js
|
|
||||||
/.next/
|
|
||||||
/out/
|
|
||||||
|
|
||||||
# production
|
|
||||||
/build
|
|
||||||
|
|
||||||
# misc
|
|
||||||
.DS_Store
|
|
||||||
*.pem
|
|
||||||
|
|
||||||
# debug
|
|
||||||
npm-debug.log*
|
|
||||||
yarn-debug.log*
|
|
||||||
yarn-error.log*
|
|
||||||
|
|
||||||
# local env files
|
|
||||||
.env*.local
|
|
||||||
|
|
||||||
# vercel
|
|
||||||
.vercel
|
|
||||||
|
|
||||||
# typescript
|
|
||||||
*.tsbuildinfo
|
|
||||||
next-env.d.ts
|
|
||||||
|
|
||||||
css-obfuscator
|
|
||||||
|
|
||||||
*.sync-conflict*
|
|
||||||
@ -1,35 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/** @type {import('next-sitemap').IConfig} */
|
|
||||||
module.exports = {
|
|
||||||
siteUrl: "https://mhsf.app",
|
|
||||||
generateRobotsTxt: true
|
|
||||||
}
|
|
||||||
@ -1,125 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "mh-stats",
|
|
||||||
"version": "1.3.0",
|
|
||||||
"private": true,
|
|
||||||
"packageManager": "yarn@1.22.22",
|
|
||||||
"scripts": {
|
|
||||||
"dev": "next dev",
|
|
||||||
"build": "next build",
|
|
||||||
"start": "next start",
|
|
||||||
"lint": "next lint",
|
|
||||||
"obfuscate": "next-css-obfuscator",
|
|
||||||
"check-types": "tsc --noEmit",
|
|
||||||
"inngest": "npx inngest-cli@latest dev",
|
|
||||||
"postbuild": "next-sitemap"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"@babel/parser": "^7.24.7",
|
|
||||||
"@biomejs/biome": "^1.8.3",
|
|
||||||
"@clerk/elements": "^0.22.2",
|
|
||||||
"@clerk/nextjs": "^6.9.2",
|
|
||||||
"@emotion/is-prop-valid": "^1.3.0",
|
|
||||||
"@linear/sdk": "^31.0.0",
|
|
||||||
"@monaco-editor/react": "^4.6.0",
|
|
||||||
"@radix-ui/react-aspect-ratio": "^1.1.1",
|
|
||||||
"@radix-ui/react-avatar": "^1.1.1",
|
|
||||||
"@radix-ui/react-collapsible": "^1.1.1",
|
|
||||||
"@radix-ui/react-hover-card": "^1.1.1",
|
|
||||||
"@radix-ui/react-icons": "^1.3.0",
|
|
||||||
"@radix-ui/react-menubar": "^1.1.1",
|
|
||||||
"@radix-ui/react-primitive": "^2.0.0",
|
|
||||||
"@radix-ui/react-select": "^2.1.2",
|
|
||||||
"@radix-ui/react-switch": "^1.1.0",
|
|
||||||
"@unocss/eslint-plugin": "^0.61.5",
|
|
||||||
"@unocss/postcss": "^0.61.5",
|
|
||||||
"@unocss/transformer-directives": "^0.61.5",
|
|
||||||
"@unocss/webpack": "^0.61.5",
|
|
||||||
"ag-grid-react": "^33.0.3",
|
|
||||||
"contentlayer": "^0.3.4",
|
|
||||||
"cron": "^3.1.7",
|
|
||||||
"discord.js": "^14.15.3",
|
|
||||||
"github-slugger": "^2.0.0",
|
|
||||||
"inngest": "^3.21.2",
|
|
||||||
"input-otp": "^1.2.4",
|
|
||||||
"json-beautify": "^1.1.1",
|
|
||||||
"lucide-react": "^0.454.0",
|
|
||||||
"minimessage-2-html": "1.6.0",
|
|
||||||
"minimessage-js": "^1.1.3",
|
|
||||||
"mongodb": "^6.8.0",
|
|
||||||
"next": "14.2.10",
|
|
||||||
"next-contentlayer": "^0.3.4",
|
|
||||||
"next-css-obfuscator": "^2.2.16",
|
|
||||||
"next-sitemap": "^4.2.3",
|
|
||||||
"next-themes": "^0.4.3",
|
|
||||||
"nextjs-toploader": "^1.6.12",
|
|
||||||
"nprogress": "^0.2.0",
|
|
||||||
"postcss-obfuscator": "^1.6.1",
|
|
||||||
"prettier": "^3.3.1",
|
|
||||||
"react": "^18",
|
|
||||||
"react-dom": "^18",
|
|
||||||
"react-fade-in": "^2.0.1",
|
|
||||||
"react-fast-marquee": "^1.6.5",
|
|
||||||
"react-hot-toast": "^2.4.1",
|
|
||||||
"react-qr-code": "^2.0.15",
|
|
||||||
"react-snowfall": "^2.2.0",
|
|
||||||
"rehype-slug": "^6.0.0",
|
|
||||||
"remark-gfm": "^4.0.0",
|
|
||||||
"sonner": "^1.7.0",
|
|
||||||
"stripe-gradient": "^1.0.1",
|
|
||||||
"tailwind-merge": "^2.3.0",
|
|
||||||
"tailwindcss-animate": "^1.0.7",
|
|
||||||
"tailwindcss-patch": "^4.0.0",
|
|
||||||
"turbo": "^2.4.0",
|
|
||||||
"unplugin-tailwindcss-mangle": "^3.0.1"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@clerk/themes": "^2.1.19",
|
|
||||||
"@hookform/resolvers": "^3.9.0",
|
|
||||||
"@radix-ui/react-checkbox": "^1.1.1",
|
|
||||||
"@radix-ui/react-context-menu": "^2.1.5",
|
|
||||||
"@radix-ui/react-dialog": "^1.1.2",
|
|
||||||
"@radix-ui/react-dropdown-menu": "^2.1.2",
|
|
||||||
"@radix-ui/react-label": "^2.1.0",
|
|
||||||
"@radix-ui/react-navigation-menu": "^1.1.4",
|
|
||||||
"@radix-ui/react-popover": "^1.0.7",
|
|
||||||
"@radix-ui/react-radio-group": "^1.2.0",
|
|
||||||
"@radix-ui/react-scroll-area": "^1.1.0",
|
|
||||||
"@radix-ui/react-separator": "^1.1.0",
|
|
||||||
"@radix-ui/react-slot": "^1.1.0",
|
|
||||||
"@radix-ui/react-tabs": "^1.1.0",
|
|
||||||
"@radix-ui/react-tooltip": "^1.1.3",
|
|
||||||
"@tailwindcss/typography": "^0.5.13",
|
|
||||||
"@types/canvas-confetti": "^1.6.4",
|
|
||||||
"@types/node": "^20",
|
|
||||||
"@types/nprogress": "^0.2.3",
|
|
||||||
"@types/react": "^18",
|
|
||||||
"@types/react-dom": "^18",
|
|
||||||
"@types/react-twemoji": "^0.4.3",
|
|
||||||
"@unocss/eslint-config": "^0.61.5",
|
|
||||||
"@unocss/preset-uno": "^65.4.3",
|
|
||||||
"@unocss/transformer-compile-class": "^0.61.5",
|
|
||||||
"@vercel/analytics": "^1.3.1",
|
|
||||||
"@vercel/speed-insights": "^1.0.12",
|
|
||||||
"canvas-confetti": "^1.9.3",
|
|
||||||
"class-variance-authority": "^0.7.0",
|
|
||||||
"clsx": "^2.1.1",
|
|
||||||
"cmdk": "^1.0.0",
|
|
||||||
"eslint": "^8",
|
|
||||||
"eslint-config-next": "14.2.3",
|
|
||||||
"framer-motion": "^11.3.8",
|
|
||||||
"geist": "^1.3.0",
|
|
||||||
"mangle-css-class-webpack-plugin": "^5.1.0",
|
|
||||||
"postcss": "^8",
|
|
||||||
"react-hook-form": "^7.52.2",
|
|
||||||
"react-hotkeys-hook": "^4.5.0",
|
|
||||||
"react-infinite-scroll-component": "^6.1.0",
|
|
||||||
"react-markdown": "^9.0.1",
|
|
||||||
"react-resizable-panels": "^2.0.23",
|
|
||||||
"recharts": "^2.12.7",
|
|
||||||
"shiki": "^1.23.0",
|
|
||||||
"tailwindcss": "^3.4.1",
|
|
||||||
"typescript": "^5",
|
|
||||||
"vaul": "^0.9.1",
|
|
||||||
"zod": "^3.23.8"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,33 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
~ MHSF, Minehut Server List
|
|
||||||
~ All external content is rather licensed under the ECA Agreement
|
|
||||||
~ located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
~
|
|
||||||
~ All code under MHSF is licensed under the MIT License
|
|
||||||
~ by open source contributors
|
|
||||||
~
|
|
||||||
~ Copyright (c) 2025 dvelo
|
|
||||||
~
|
|
||||||
~ Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
~ of this software and associated documentation files (the "Software"), to
|
|
||||||
~ deal in the Software without restriction, including without limitation the
|
|
||||||
~ rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
~ sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
~ furnished to do so, subject to the following conditions:
|
|
||||||
~
|
|
||||||
~ The above copyright notice and this permission notice shall be included in all
|
|
||||||
~ copies or substantial portions of the Software.
|
|
||||||
~
|
|
||||||
~ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
~ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
~ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
~ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
~ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
~ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
~ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
~ OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
|
||||||
</sitemapindex>
|
|
||||||
@ -1,80 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import { Sidebar } from "@/components/docs/Sidebar";
|
|
||||||
import {
|
|
||||||
Breadcrumb,
|
|
||||||
BreadcrumbItem,
|
|
||||||
BreadcrumbLink,
|
|
||||||
BreadcrumbList,
|
|
||||||
BreadcrumbPage,
|
|
||||||
BreadcrumbSeparator,
|
|
||||||
} from "@/components/ui/breadcrumb";
|
|
||||||
import { Separator } from "@/components/ui/separator";
|
|
||||||
import {
|
|
||||||
SidebarInset,
|
|
||||||
SidebarProvider,
|
|
||||||
SidebarTrigger,
|
|
||||||
} from "@/components/ui/sidebar";
|
|
||||||
|
|
||||||
export default function Page() {
|
|
||||||
return (
|
|
||||||
<SidebarProvider>
|
|
||||||
<Sidebar />
|
|
||||||
<SidebarInset>
|
|
||||||
<header className="flex sticky top-0 bg-background h-16 shrink-0 items-center gap-2 border-b px-4">
|
|
||||||
<SidebarTrigger className="-ml-1" />
|
|
||||||
<Separator orientation="vertical" className="mr-2 h-4" />
|
|
||||||
<Breadcrumb>
|
|
||||||
<BreadcrumbList>
|
|
||||||
<BreadcrumbItem className="hidden md:block">
|
|
||||||
<BreadcrumbLink href="#">
|
|
||||||
Building Your Application
|
|
||||||
</BreadcrumbLink>
|
|
||||||
</BreadcrumbItem>
|
|
||||||
<BreadcrumbSeparator className="hidden md:block" />
|
|
||||||
<BreadcrumbItem>
|
|
||||||
<BreadcrumbPage>Data Fetching</BreadcrumbPage>
|
|
||||||
</BreadcrumbItem>
|
|
||||||
</BreadcrumbList>
|
|
||||||
</Breadcrumb>
|
|
||||||
</header>
|
|
||||||
<div className="flex flex-1 flex-col gap-4 p-4">
|
|
||||||
{Array.from({ length: 24 }).map((_, index) => (
|
|
||||||
<div
|
|
||||||
key={index}
|
|
||||||
className="aspect-video h-12 w-full rounded-lg bg-muted/50"
|
|
||||||
/>
|
|
||||||
))}
|
|
||||||
</div>
|
|
||||||
</SidebarInset>
|
|
||||||
</SidebarProvider>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@ -1,81 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import * as React from "react";
|
|
||||||
|
|
||||||
import { NavUser } from "@/components/docs/NavUser";
|
|
||||||
import { VersionSwitcher } from "@/components/docs/VersionSwitcher";
|
|
||||||
import {
|
|
||||||
Sidebar as ShadSidebar,
|
|
||||||
SidebarContent,
|
|
||||||
SidebarFooter,
|
|
||||||
SidebarGroup,
|
|
||||||
SidebarGroupContent,
|
|
||||||
SidebarGroupLabel,
|
|
||||||
SidebarHeader,
|
|
||||||
SidebarMenu,
|
|
||||||
SidebarMenuButton,
|
|
||||||
SidebarMenuItem,
|
|
||||||
SidebarRail,
|
|
||||||
} from "@/components/ui/sidebar";
|
|
||||||
import { allFolders } from "@/config/docs";
|
|
||||||
|
|
||||||
export function Sidebar() {
|
|
||||||
return (
|
|
||||||
<ShadSidebar>
|
|
||||||
<SidebarHeader>
|
|
||||||
<VersionSwitcher />
|
|
||||||
</SidebarHeader>
|
|
||||||
<SidebarContent>
|
|
||||||
{/* We create a SidebarGroup for each parent. */}
|
|
||||||
{allFolders.map((item) => (
|
|
||||||
<SidebarGroup key={item.name}>
|
|
||||||
<SidebarGroupLabel>{item.name}</SidebarGroupLabel>
|
|
||||||
<SidebarGroupContent>
|
|
||||||
<SidebarMenu>
|
|
||||||
{item.docs.map((item) => (
|
|
||||||
<SidebarMenuItem key={item.title}>
|
|
||||||
<SidebarMenuButton asChild>
|
|
||||||
<a href={item.url}>{item.title}</a>
|
|
||||||
</SidebarMenuButton>
|
|
||||||
</SidebarMenuItem>
|
|
||||||
))}
|
|
||||||
</SidebarMenu>
|
|
||||||
</SidebarGroupContent>
|
|
||||||
</SidebarGroup>
|
|
||||||
))}
|
|
||||||
</SidebarContent>
|
|
||||||
<SidebarFooter>
|
|
||||||
<NavUser />
|
|
||||||
</SidebarFooter>
|
|
||||||
<SidebarRail />
|
|
||||||
</ShadSidebar>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
@ -1,37 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
"use client"
|
|
||||||
|
|
||||||
import * as AspectRatioPrimitive from "@radix-ui/react-aspect-ratio"
|
|
||||||
|
|
||||||
const AspectRatio = AspectRatioPrimitive.Root
|
|
||||||
|
|
||||||
export { AspectRatio }
|
|
||||||
@ -1,41 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
"use client"
|
|
||||||
|
|
||||||
import * as CollapsiblePrimitive from "@radix-ui/react-collapsible"
|
|
||||||
|
|
||||||
const Collapsible = CollapsiblePrimitive.Root
|
|
||||||
|
|
||||||
const CollapsibleTrigger = CollapsiblePrimitive.CollapsibleTrigger
|
|
||||||
|
|
||||||
const CollapsibleContent = CollapsiblePrimitive.CollapsibleContent
|
|
||||||
|
|
||||||
export { Collapsible, CollapsibleTrigger, CollapsibleContent }
|
|
||||||
@ -1,47 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import type { SVGProps } from "react";
|
|
||||||
const Discord = (props: SVGProps<SVGSVGElement>) => (
|
|
||||||
<svg
|
|
||||||
viewBox="0 0 256 199"
|
|
||||||
width="1em"
|
|
||||||
height="1em"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
preserveAspectRatio="xMidYMid"
|
|
||||||
{...props}
|
|
||||||
>
|
|
||||||
<path
|
|
||||||
d="M216.856 16.597A208.502 208.502 0 0 0 164.042 0c-2.275 4.113-4.933 9.645-6.766 14.046-19.692-2.961-39.203-2.961-58.533 0-1.832-4.4-4.55-9.933-6.846-14.046a207.809 207.809 0 0 0-52.855 16.638C5.618 67.147-3.443 116.4 1.087 164.956c22.169 16.555 43.653 26.612 64.775 33.193A161.094 161.094 0 0 0 79.735 175.3a136.413 136.413 0 0 1-21.846-10.632 108.636 108.636 0 0 0 5.356-4.237c42.122 19.702 87.89 19.702 129.51 0a131.66 131.66 0 0 0 5.355 4.237 136.07 136.07 0 0 1-21.886 10.653c4.006 8.02 8.638 15.67 13.873 22.848 21.142-6.58 42.646-16.637 64.815-33.213 5.316-56.288-9.08-105.09-38.056-148.36ZM85.474 135.095c-12.645 0-23.015-11.805-23.015-26.18s10.149-26.2 23.015-26.2c12.867 0 23.236 11.804 23.015 26.2.02 14.375-10.148 26.18-23.015 26.18Zm85.051 0c-12.645 0-23.014-11.805-23.014-26.18s10.148-26.2 23.014-26.2c12.867 0 23.236 11.804 23.015 26.2 0 14.375-10.148 26.18-23.015 26.18Z"
|
|
||||||
fill="#5865F2"
|
|
||||||
/>
|
|
||||||
</svg>
|
|
||||||
);
|
|
||||||
export default Discord;
|
|
||||||
@ -1,61 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
"use client"
|
|
||||||
|
|
||||||
import { useTheme } from "next-themes"
|
|
||||||
import { Toaster as Sonner } from "sonner"
|
|
||||||
|
|
||||||
type ToasterProps = React.ComponentProps<typeof Sonner>
|
|
||||||
|
|
||||||
const Toaster = ({ ...props }: ToasterProps) => {
|
|
||||||
const { theme = "system" } = useTheme()
|
|
||||||
|
|
||||||
return (
|
|
||||||
<Sonner
|
|
||||||
theme={theme as ToasterProps["theme"]}
|
|
||||||
className="toaster group"
|
|
||||||
toastOptions={{
|
|
||||||
classNames: {
|
|
||||||
toast:
|
|
||||||
"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",
|
|
||||||
description: "group-[.toast]:text-muted-foreground",
|
|
||||||
actionButton:
|
|
||||||
"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",
|
|
||||||
cancelButton:
|
|
||||||
"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground",
|
|
||||||
},
|
|
||||||
}}
|
|
||||||
{...props}
|
|
||||||
/>
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
export { Toaster }
|
|
||||||
@ -1,49 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import * as React from "react"
|
|
||||||
|
|
||||||
const MOBILE_BREAKPOINT = 768
|
|
||||||
|
|
||||||
export function useIsMobile() {
|
|
||||||
const [isMobile, setIsMobile] = React.useState<boolean | undefined>(undefined)
|
|
||||||
|
|
||||||
React.useEffect(() => {
|
|
||||||
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`)
|
|
||||||
const onChange = () => {
|
|
||||||
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)
|
|
||||||
}
|
|
||||||
mql.addEventListener("change", onChange)
|
|
||||||
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)
|
|
||||||
return () => mql.removeEventListener("change", onChange)
|
|
||||||
}, [])
|
|
||||||
|
|
||||||
return !!isMobile
|
|
||||||
}
|
|
||||||
35
apps/www/src/lib/types/stripe-gradient.d.ts
vendored
@ -1,35 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
declare module "stripe-gradient" {
|
|
||||||
declare class Gradient {
|
|
||||||
initGradient(id: string): void;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
@ -1,63 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import { NextApiRequest, NextApiResponse } from "next";
|
|
||||||
|
|
||||||
export default async function handler(
|
|
||||||
req: NextApiRequest,
|
|
||||||
res: NextApiResponse
|
|
||||||
) {
|
|
||||||
// Deprecated - moved exclusively to the client
|
|
||||||
// const initalList: Array<{ server: string; motd: string }> = req.body.motd;
|
|
||||||
// const resultedList: Array<{ server: string; motd: string }> = [];
|
|
||||||
// var interval = 0;
|
|
||||||
// if (initalList != undefined && initalList.forEach != undefined) {
|
|
||||||
// initalList.forEach((c, i) => {
|
|
||||||
// parseToHTML(c.motd)
|
|
||||||
// .then((m) => {
|
|
||||||
// interval++;
|
|
||||||
// resultedList.push({ motd: m, server: c.server });
|
|
||||||
// if (interval == initalList.length) {
|
|
||||||
// res.send({ result: resultedList });
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
// .catch(() => {
|
|
||||||
// resultedList.push({ motd: "Error to grab MOTD", server: c.server });
|
|
||||||
// if (i == initalList.length - 1) {
|
|
||||||
// res.send({ result: resultedList });
|
|
||||||
// }
|
|
||||||
// });
|
|
||||||
// });
|
|
||||||
// } else {
|
|
||||||
// res.status(400).send({
|
|
||||||
// message: "Wrong structure.. you might be using the legacy MOTD.",
|
|
||||||
// });
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
8715
apps/www/yarn.lock
27
backend-mh-api/src/index.ts
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
import * as express from "express";
|
||||||
|
import { config } from "dotenv";
|
||||||
|
|
||||||
|
config();
|
||||||
|
const app = express();
|
||||||
|
|
||||||
|
app.get("/", (req, res) => {
|
||||||
|
res.send({ status: "up" });
|
||||||
|
});
|
||||||
|
|
||||||
|
app.get("/servers", (req, res) => {
|
||||||
|
if (
|
||||||
|
req.headers.Authentication !==
|
||||||
|
`MHSF-Backend-Server ${process.env.MHSF_SECRET}`
|
||||||
|
)
|
||||||
|
res.status(401).send({ error: "Unauthorized" });
|
||||||
|
else
|
||||||
|
fetch("https://api.minehut.com/servers").then((c) => {
|
||||||
|
c.json().then((v) => {
|
||||||
|
res.send(v);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
app.listen(6080, () => {
|
||||||
|
console.log("Backend API listening on port 6080");
|
||||||
|
});
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
0
packages/cron/.gitignore → cron/.gitignore
vendored
@ -4,7 +4,7 @@
|
|||||||
"description": "In version 1.0, MHSF moved from using Inngest to collect statistics to a self-hosted `crontab` Node.js script.",
|
"description": "In version 1.0, MHSF moved from using Inngest to collect statistics to a self-hosted `crontab` Node.js script.",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "MHC_DOCKER=true npx tsx src/index.ts",
|
"dev": "npx tsx src/index.ts",
|
||||||
"build": "npx tsc -p ./tsconfig.json"
|
"build": "npx tsc -p ./tsconfig.json"
|
||||||
},
|
},
|
||||||
"author": "",
|
"author": "",
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
5
next-sitemap.config.js
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
/** @type {import('next-sitemap').IConfig} */
|
||||||
|
module.exports = {
|
||||||
|
siteUrl: "https://mhsf.app",
|
||||||
|
generateRobotsTxt: true
|
||||||
|
}
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
136
package.json
@ -1,23 +1,125 @@
|
|||||||
{
|
{
|
||||||
"name": "MHSF-Modern",
|
"name": "mh-stats",
|
||||||
|
"version": "1.3.0",
|
||||||
"private": true,
|
"private": true,
|
||||||
|
"packageManager": "yarn@1.22.22",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "turbo build",
|
"dev": "next dev",
|
||||||
"dev": "turbo dev --filter=!cron",
|
"build": "next build",
|
||||||
"lint": "turbo lint",
|
"start": "next start",
|
||||||
"format": "prettier --write \"**/*.{ts,tsx,md}\""
|
"lint": "next lint",
|
||||||
|
"obfuscate": "next-css-obfuscator",
|
||||||
|
"check-types": "tsc --noEmit",
|
||||||
|
"inngest": "npx inngest-cli@latest dev",
|
||||||
|
"postbuild": "next-sitemap"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@babel/parser": "^7.24.7",
|
||||||
|
"@biomejs/biome": "^1.8.3",
|
||||||
|
"@clerk/elements": "^0.22.2",
|
||||||
|
"@clerk/nextjs": "^6.9.2",
|
||||||
|
"@emotion/is-prop-valid": "^1.3.0",
|
||||||
|
"@linear/sdk": "^31.0.0",
|
||||||
|
"@monaco-editor/react": "^4.6.0",
|
||||||
|
"@radix-ui/react-aspect-ratio": "^1.1.1",
|
||||||
|
"@radix-ui/react-avatar": "^1.1.1",
|
||||||
|
"@radix-ui/react-collapsible": "^1.1.1",
|
||||||
|
"@radix-ui/react-hover-card": "^1.1.1",
|
||||||
|
"@radix-ui/react-icons": "^1.3.0",
|
||||||
|
"@radix-ui/react-menubar": "^1.1.1",
|
||||||
|
"@radix-ui/react-primitive": "^2.0.0",
|
||||||
|
"@radix-ui/react-select": "^2.1.2",
|
||||||
|
"@radix-ui/react-switch": "^1.1.0",
|
||||||
|
"@unocss/eslint-plugin": "^0.61.5",
|
||||||
|
"@unocss/postcss": "^0.61.5",
|
||||||
|
"@unocss/transformer-directives": "^0.61.5",
|
||||||
|
"@unocss/webpack": "^0.61.5",
|
||||||
|
"ag-grid-react": "^33.0.3",
|
||||||
|
"contentlayer": "^0.3.4",
|
||||||
|
"cron": "^3.1.7",
|
||||||
|
"discord.js": "^14.15.3",
|
||||||
|
"github-slugger": "^2.0.0",
|
||||||
|
"inngest": "^3.21.2",
|
||||||
|
"input-otp": "^1.2.4",
|
||||||
|
"json-beautify": "^1.1.1",
|
||||||
|
"lucide-react": "^0.454.0",
|
||||||
|
"minimessage-2-html": "1.6.0",
|
||||||
|
"minimessage-js": "^1.1.3",
|
||||||
|
"mongodb": "^6.8.0",
|
||||||
|
"next": "14.2.10",
|
||||||
|
"next-contentlayer": "^0.3.4",
|
||||||
|
"next-css-obfuscator": "^2.2.16",
|
||||||
|
"next-sitemap": "^4.2.3",
|
||||||
|
"next-themes": "^0.4.3",
|
||||||
|
"nextjs-toploader": "^1.6.12",
|
||||||
|
"nprogress": "^0.2.0",
|
||||||
|
"postcss-obfuscator": "^1.6.1",
|
||||||
|
"prettier": "^3.3.1",
|
||||||
|
"react": "^18",
|
||||||
|
"react-dom": "^18",
|
||||||
|
"react-fade-in": "^2.0.1",
|
||||||
|
"react-fast-marquee": "^1.6.5",
|
||||||
|
"react-hot-toast": "^2.4.1",
|
||||||
|
"react-qr-code": "^2.0.15",
|
||||||
|
"react-snowfall": "^2.2.0",
|
||||||
|
"rehype-slug": "^6.0.0",
|
||||||
|
"remark-gfm": "^4.0.0",
|
||||||
|
"sonner": "^1.7.0",
|
||||||
|
"stripe-gradient": "^1.0.1",
|
||||||
|
"tailwind-merge": "^2.3.0",
|
||||||
|
"tailwindcss-animate": "^1.0.7",
|
||||||
|
"tailwindcss-patch": "^4.0.0",
|
||||||
|
"turbo": "^2.4.0",
|
||||||
|
"unplugin-tailwindcss-mangle": "^3.0.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"prettier": "^3.5.0",
|
"@clerk/themes": "^2.1.19",
|
||||||
"turbo": "^2.4.2",
|
"@hookform/resolvers": "^3.9.0",
|
||||||
"typescript": "5.7.3"
|
"@radix-ui/react-checkbox": "^1.1.1",
|
||||||
},
|
"@radix-ui/react-context-menu": "^2.1.5",
|
||||||
"engines": {
|
"@radix-ui/react-dialog": "^1.1.2",
|
||||||
"node": ">=18"
|
"@radix-ui/react-dropdown-menu": "^2.1.2",
|
||||||
},
|
"@radix-ui/react-label": "^2.1.0",
|
||||||
"packageManager": "yarn@1.22.22",
|
"@radix-ui/react-navigation-menu": "^1.1.4",
|
||||||
"workspaces": [
|
"@radix-ui/react-popover": "^1.0.7",
|
||||||
"apps/*",
|
"@radix-ui/react-radio-group": "^1.2.0",
|
||||||
"packages/*"
|
"@radix-ui/react-scroll-area": "^1.1.0",
|
||||||
]
|
"@radix-ui/react-separator": "^1.1.0",
|
||||||
|
"@radix-ui/react-slot": "^1.1.0",
|
||||||
|
"@radix-ui/react-tabs": "^1.1.0",
|
||||||
|
"@radix-ui/react-tooltip": "^1.1.3",
|
||||||
|
"@tailwindcss/typography": "^0.5.13",
|
||||||
|
"@types/canvas-confetti": "^1.6.4",
|
||||||
|
"@types/node": "^20",
|
||||||
|
"@types/nprogress": "^0.2.3",
|
||||||
|
"@types/react": "^18",
|
||||||
|
"@types/react-dom": "^18",
|
||||||
|
"@types/react-twemoji": "^0.4.3",
|
||||||
|
"@unocss/eslint-config": "^0.61.5",
|
||||||
|
"@unocss/preset-uno": "^65.4.3",
|
||||||
|
"@unocss/transformer-compile-class": "^0.61.5",
|
||||||
|
"@vercel/analytics": "^1.3.1",
|
||||||
|
"@vercel/speed-insights": "^1.0.12",
|
||||||
|
"canvas-confetti": "^1.9.3",
|
||||||
|
"class-variance-authority": "^0.7.0",
|
||||||
|
"clsx": "^2.1.1",
|
||||||
|
"cmdk": "^1.0.0",
|
||||||
|
"eslint": "^8",
|
||||||
|
"eslint-config-next": "14.2.3",
|
||||||
|
"framer-motion": "^11.3.8",
|
||||||
|
"geist": "^1.3.0",
|
||||||
|
"mangle-css-class-webpack-plugin": "^5.1.0",
|
||||||
|
"postcss": "^8",
|
||||||
|
"react-hook-form": "^7.52.2",
|
||||||
|
"react-hotkeys-hook": "^4.5.0",
|
||||||
|
"react-infinite-scroll-component": "^6.1.0",
|
||||||
|
"react-markdown": "^9.0.1",
|
||||||
|
"react-resizable-panels": "^2.0.23",
|
||||||
|
"recharts": "^2.12.7",
|
||||||
|
"shiki": "^1.23.0",
|
||||||
|
"tailwindcss": "^3.4.1",
|
||||||
|
"typescript": "^5",
|
||||||
|
"vaul": "^0.9.1",
|
||||||
|
"zod": "^3.23.8"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,57 +0,0 @@
|
|||||||
/*
|
|
||||||
* MHSF, Minehut Server List
|
|
||||||
* All external content is rather licensed under the ECA Agreement
|
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
|
||||||
*
|
|
||||||
* All code under MHSF is licensed under the MIT License
|
|
||||||
* by open source contributors
|
|
||||||
*
|
|
||||||
* Copyright (c) 2025 dvelo
|
|
||||||
*
|
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
* of this software and associated documentation files (the "Software"), to
|
|
||||||
* deal in the Software without restriction, including without limitation the
|
|
||||||
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
||||||
* sell copies of the Software, and to permit persons to whom the Software is
|
|
||||||
* furnished to do so, subject to the following conditions:
|
|
||||||
*
|
|
||||||
* The above copyright notice and this permission notice shall be included in all
|
|
||||||
* copies or substantial portions of the Software.
|
|
||||||
*
|
|
||||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
||||||
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
||||||
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
* OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
import * as express from "express";
|
|
||||||
import { config } from "dotenv";
|
|
||||||
|
|
||||||
config();
|
|
||||||
const app = express();
|
|
||||||
|
|
||||||
app.get("/", (req, res) => {
|
|
||||||
res.send({ status: "up" });
|
|
||||||
});
|
|
||||||
|
|
||||||
app.get("/servers", (req, res) => {
|
|
||||||
if (
|
|
||||||
req.headers.Authentication !==
|
|
||||||
`MHSF-Backend-Server ${process.env.MHSF_SECRET}`
|
|
||||||
)
|
|
||||||
res.status(401).send({ error: "Unauthorized" });
|
|
||||||
else
|
|
||||||
fetch("https://api.minehut.com/servers").then((c) => {
|
|
||||||
c.json().then((v) => {
|
|
||||||
res.send(v);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
app.listen(6080, () => {
|
|
||||||
console.log("Backend API listening on port 6080");
|
|
||||||
});
|
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 159 KiB After Width: | Height: | Size: 159 KiB |
|
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 160 KiB |
|
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 37 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 218 KiB After Width: | Height: | Size: 218 KiB |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 6.9 KiB After Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 6.4 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
|
Before Width: | Height: | Size: 958 KiB After Width: | Height: | Size: 958 KiB |
3
public/sitemap.xml
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||||
|
</sitemapindex>
|
||||||
@ -1,12 +1,12 @@
|
|||||||
<!--
|
<!--
|
||||||
- MHSF, Minehut Server List
|
- MHSF, Minehut Server List
|
||||||
- All external content is rather licensed under the ECA Agreement
|
- All external content is rather licensed under the ECA Agreement
|
||||||
- located here: https://mhsf.app/docs/legal/external-content-agreement
|
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
-
|
-
|
||||||
- All code under MHSF is licensed under the MIT License
|
- All code under MHSF is licensed under the MIT License
|
||||||
- by open source contributors
|
- by open source contributors
|
||||||
-
|
-
|
||||||
- Copyright (c) 2025 dvelo
|
- Copyright (c) 2024 dvelo
|
||||||
-
|
-
|
||||||
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
- of this software and associated documentation files (the "Software"), to
|
- of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
<!--
|
<!--
|
||||||
- MHSF, Minehut Server List
|
- MHSF, Minehut Server List
|
||||||
- All external content is rather licensed under the ECA Agreement
|
- All external content is rather licensed under the ECA Agreement
|
||||||
- located here: https://mhsf.app/docs/legal/external-content-agreement
|
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
-
|
-
|
||||||
- All code under MHSF is licensed under the MIT License
|
- All code under MHSF is licensed under the MIT License
|
||||||
- by open source contributors
|
- by open source contributors
|
||||||
-
|
-
|
||||||
- Copyright (c) 2025 dvelo
|
- Copyright (c) 2024 dvelo
|
||||||
-
|
-
|
||||||
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
- of this software and associated documentation files (the "Software"), to
|
- of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
<!--
|
<!--
|
||||||
- MHSF, Minehut Server List
|
- MHSF, Minehut Server List
|
||||||
- All external content is rather licensed under the ECA Agreement
|
- All external content is rather licensed under the ECA Agreement
|
||||||
- located here: https://mhsf.app/docs/legal/external-content-agreement
|
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
-
|
-
|
||||||
- All code under MHSF is licensed under the MIT License
|
- All code under MHSF is licensed under the MIT License
|
||||||
- by open source contributors
|
- by open source contributors
|
||||||
-
|
-
|
||||||
- Copyright (c) 2025 dvelo
|
- Copyright (c) 2024 dvelo
|
||||||
-
|
-
|
||||||
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
- of this software and associated documentation files (the "Software"), to
|
- of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
<!--
|
<!--
|
||||||
- MHSF, Minehut Server List
|
- MHSF, Minehut Server List
|
||||||
- All external content is rather licensed under the ECA Agreement
|
- All external content is rather licensed under the ECA Agreement
|
||||||
- located here: https://mhsf.app/docs/legal/external-content-agreement
|
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
-
|
-
|
||||||
- All code under MHSF is licensed under the MIT License
|
- All code under MHSF is licensed under the MIT License
|
||||||
- by open source contributors
|
- by open source contributors
|
||||||
-
|
-
|
||||||
- Copyright (c) 2025 dvelo
|
- Copyright (c) 2024 dvelo
|
||||||
-
|
-
|
||||||
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
- of this software and associated documentation files (the "Software"), to
|
- of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
<!--
|
<!--
|
||||||
- MHSF, Minehut Server List
|
- MHSF, Minehut Server List
|
||||||
- All external content is rather licensed under the ECA Agreement
|
- All external content is rather licensed under the ECA Agreement
|
||||||
- located here: https://mhsf.app/docs/legal/external-content-agreement
|
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
-
|
-
|
||||||
- All code under MHSF is licensed under the MIT License
|
- All code under MHSF is licensed under the MIT License
|
||||||
- by open source contributors
|
- by open source contributors
|
||||||
-
|
-
|
||||||
- Copyright (c) 2025 dvelo
|
- Copyright (c) 2024 dvelo
|
||||||
-
|
-
|
||||||
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
- of this software and associated documentation files (the "Software"), to
|
- of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
<!--
|
<!--
|
||||||
- MHSF, Minehut Server List
|
- MHSF, Minehut Server List
|
||||||
- All external content is rather licensed under the ECA Agreement
|
- All external content is rather licensed under the ECA Agreement
|
||||||
- located here: https://mhsf.app/docs/legal/external-content-agreement
|
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
-
|
-
|
||||||
- All code under MHSF is licensed under the MIT License
|
- All code under MHSF is licensed under the MIT License
|
||||||
- by open source contributors
|
- by open source contributors
|
||||||
-
|
-
|
||||||
- Copyright (c) 2025 dvelo
|
- Copyright (c) 2024 dvelo
|
||||||
-
|
-
|
||||||
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
- of this software and associated documentation files (the "Software"), to
|
- of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
<!--
|
<!--
|
||||||
- MHSF, Minehut Server List
|
- MHSF, Minehut Server List
|
||||||
- All external content is rather licensed under the ECA Agreement
|
- All external content is rather licensed under the ECA Agreement
|
||||||
- located here: https://mhsf.app/docs/legal/external-content-agreement
|
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
-
|
-
|
||||||
- All code under MHSF is licensed under the MIT License
|
- All code under MHSF is licensed under the MIT License
|
||||||
- by open source contributors
|
- by open source contributors
|
||||||
-
|
-
|
||||||
- Copyright (c) 2025 dvelo
|
- Copyright (c) 2024 dvelo
|
||||||
-
|
-
|
||||||
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
- of this software and associated documentation files (the "Software"), to
|
- of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
<!--
|
<!--
|
||||||
- MHSF, Minehut Server List
|
- MHSF, Minehut Server List
|
||||||
- All external content is rather licensed under the ECA Agreement
|
- All external content is rather licensed under the ECA Agreement
|
||||||
- located here: https://mhsf.app/docs/legal/external-content-agreement
|
- located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
-
|
-
|
||||||
- All code under MHSF is licensed under the MIT License
|
- All code under MHSF is licensed under the MIT License
|
||||||
- by open source contributors
|
- by open source contributors
|
||||||
-
|
-
|
||||||
- Copyright (c) 2025 dvelo
|
- Copyright (c) 2024 dvelo
|
||||||
-
|
-
|
||||||
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
- Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
- of this software and associated documentation files (the "Software"), to
|
- of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
@ -66,7 +66,7 @@ interface Props {
|
|||||||
pathname: string;
|
pathname: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function RootLayout({
|
export default async function RootLayout({
|
||||||
children,
|
children,
|
||||||
}: Readonly<{
|
}: Readonly<{
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
@ -6,7 +6,7 @@
|
|||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
@ -6,7 +6,7 @@
|
|||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||
@ -1,12 +1,12 @@
|
|||||||
/*
|
/*
|
||||||
* MHSF, Minehut Server List
|
* MHSF, Minehut Server List
|
||||||
* All external content is rather licensed under the ECA Agreement
|
* All external content is rather licensed under the ECA Agreement
|
||||||
* located here: https://mhsf.app/docs/legal/external-content-agreement
|
* located here: https://list.mlnehut.com/docs/legal/external-content-agreement
|
||||||
*
|
*
|
||||||
* All code under MHSF is licensed under the MIT License
|
* All code under MHSF is licensed under the MIT License
|
||||||
* by open source contributors
|
* by open source contributors
|
||||||
*
|
*
|
||||||
* Copyright (c) 2025 dvelo
|
* Copyright (c) 2024 dvelo
|
||||||
*
|
*
|
||||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
* of this software and associated documentation files (the "Software"), to
|
* of this software and associated documentation files (the "Software"), to
|
||||||