{ "name": "@pterodactyl/panel", "license": "MIT", "private": true, "engines": { "node": ">=16.0" }, "scripts": { "build": "vite build", "clean": "rimraf public/build", "coverage": "vitest run --coverage", "dev": "vite", "lint": "eslint ./resources/scripts/**/*.{ts,tsx} --ext .ts,.tsx", "test": "vitest run", "test:ui": "vitest --ui" }, "dependencies": { "@codemirror/autocomplete": "^6.0.0", "@codemirror/commands": "^6.0.0", "@codemirror/lang-cpp": "^6.0.0", "@codemirror/lang-css": "^6.0.0", "@codemirror/lang-html": "^6.0.0", "@codemirror/lang-java": "^6.0.0", "@codemirror/lang-javascript": "^6.0.0", "@codemirror/lang-json": "^6.0.0", "@codemirror/lang-lezer": "^6.0.0", "@codemirror/lang-markdown": "^6.0.0", "@codemirror/lang-php": "^6.0.0", "@codemirror/lang-python": "^6.0.0", "@codemirror/lang-rust": "^6.0.0", "@codemirror/lang-sql": "^6.0.0", "@codemirror/lang-xml": "^6.0.0", "@codemirror/language": "^6.0.0", "@codemirror/language-data": "^6.0.0", "@codemirror/legacy-modes": "^6.0.0", "@codemirror/lint": "^6.0.0", "@codemirror/search": "^6.0.0", "@codemirror/state": "^6.0.0", "@codemirror/view": "^6.0.0", "@floating-ui/react-dom-interactions": "0.13.3", "@flyyer/use-fit-text": "3.0.1", "@fortawesome/fontawesome-svg-core": "6.2.1", "@fortawesome/free-brands-svg-icons": "6.2.1", "@fortawesome/free-solid-svg-icons": "6.2.1", "@fortawesome/react-fontawesome": "0.2.0", "@headlessui/react": "1.7.5", "@heroicons/react": "1.0.6", "@lezer/common": "1.0.2", "@lezer/highlight": "1.1.3", "@preact/signals-react": "1.2.1", "axios": "0.27.2", "boring-avatars": "1.7.0", "chart.js": "3.9.1", "classnames": "2.3.2", "copy-to-clipboard": "3.3.3", "date-fns": "2.29.3", "debounce": "1.2.1", "deepmerge-ts": "4.2.2", "easy-peasy": "5.2.0", "events": "3.3.0", "formik": "2.2.9", "framer-motion": "7.7.2", "i18next": "22.4.3", "i18next-http-backend": "2.1.0", "i18next-multiload-backend-adapter": "2.2.0", "nanoid": "4.0.0", "qrcode.react": "3.1.0", "react": "18.2.0", "react-chartjs-2": "4.3.1", "react-dom": "18.2.0", "react-fast-compare": "3.2.0", "react-i18next": "12.1.1", "react-router-dom": "6.4.5", "react-select": "5.7.0", "reaptcha": "1.12.1", "sockette": "2.0.6", "styled-components": "5.3.6", "styled-components-breakpoint": "3.0.0-preview.20", "swr": "1.3.0", "xterm": "5.0.0", "xterm-addon-fit": "0.6.0", "xterm-addon-search": "0.10.0", "xterm-addon-search-bar": "0.2.0", "xterm-addon-web-links": "0.7.0", "yup": "0.32.11" }, "devDependencies": { "@tailwindcss/forms": "0.5.3", "@tailwindcss/line-clamp": "0.4.2", "@testing-library/dom": "8.19.0", "@testing-library/react": "13.4.0", "@testing-library/user-event": "14.4.3", "@types/debounce": "1.2.1", "@types/events": "3.0.0", "@types/node": "18.11.13", "@types/react": "18.0.26", "@types/react-dom": "18.0.9", "@types/styled-components": "5.1.26", "@typescript-eslint/eslint-plugin": "5.46.1", "@typescript-eslint/parser": "5.46.1", "@vitejs/plugin-react": "3.0.0", "autoprefixer": "10.4.13", "babel-plugin-styled-components": "2.0.7", "babel-plugin-twin": "1.1.0", "cross-env": "7.0.3", "eslint": "8.29.0", "eslint-config-prettier": "8.5.0", "eslint-plugin-node": "11.1.0", "eslint-plugin-prettier": "4.2.1", "eslint-plugin-react": "7.31.11", "eslint-plugin-react-hooks": "4.6.0", "happy-dom": "8.1.1", "laravel-vite-plugin": "0.7.3", "pathe": "1.0.0", "postcss": "8.4.20", "postcss-nesting": "10.2.0", "postcss-preset-env": "7.8.3", "prettier": "2.8.1", "prettier-plugin-tailwindcss": "0.2.1", "rimraf": "3.0.2", "tailwindcss": "3.2.4", "ts-essentials": "9.3.0", "twin.macro": "2.8.2", "typescript": "4.9.4", "vite": "4.0.3", "vitest": "0.26.2" }, "browserslist": [ "> 0.5%", "last 2 versions", "firefox esr", "not dead" ], "babelMacros": { "twin": { "config": "tailwind.config.js", "preset": "styled-components" }, "styledComponents": { "pure": true, "displayName": true, "fileName": true } } }