{ "name": "filebrowser-frontend", "version": "3.0.0", "private": true, "type": "module", "engines": { "npm": ">=7.0.0", "node": ">=18.0.0" }, "scripts": { "dev": "vite dev", "build": "npm run typecheck && vite build", "clean": "find ./dist -maxdepth 1 -mindepth 1 ! -name '.gitkeep' -exec rm -r {} +", "typecheck": "vue-tsc -p ./tsconfig.json --noEmit", "lint": "npm run typecheck && eslint --ext .vue,.ts src/", "lint:fix": "eslint --ext .vue,.ts --fix src/", "format": "prettier --write .", "test": "playwright test" }, "dependencies": { "@chenfengyuan/vue-number-input": "^2.0.1", "@vueuse/core": "^10.9.0", "@vueuse/integrations": "^10.9.0", "ace-builds": "^1.32.9", "core-js": "^3.36.1", "dayjs": "^1.11.10", "filesize": "^10.1.1", "js-base64": "^3.7.7", "jwt-decode": "^4.0.0", "lodash-es": "^4.17.21", "material-icons": "^1.13.12", "marked": "^14.1.0", "normalize.css": "^8.0.1", "pinia": "^2.1.7", "pretty-bytes": "^6.1.1", "qrcode.vue": "^3.4.1", "tus-js-client": "^4.1.0", "utif": "^3.1.0", "video.js": "^8.10.0", "videojs-hotkeys": "^0.2.28", "videojs-mobile-ui": "^1.1.1", "vue": "^3.4.21", "vue-final-modal": "^4.5.4", "vue-i18n": "^9.10.2", "vue-lazyload": "^3.0.0", "vue-reader": "^1.2.14", "vue-router": "^4.3.0", "vue-toastification": "^2.0.0-rc.5" }, "devDependencies": { "@intlify/unplugin-vue-i18n": "^4.0.0", "@playwright/test": "^1.42.1", "@types/lodash-es": "^4.17.12", "@types/node": "^20.12.2", "@typescript-eslint/eslint-plugin": "^7.4.0", "@vitejs/plugin-legacy": "^5.3.2", "@vitejs/plugin-vue": "^5.0.4", "@vue/eslint-config-prettier": "^9.0.0", "@vue/eslint-config-typescript": "^13.0.0", "autoprefixer": "^10.4.19", "concurrently": "^8.2.2", "eslint": "^8.57.0", "eslint-plugin-prettier": "^5.1.3", "eslint-plugin-vue": "^9.24.0", "jsdom": "^24.0.0", "postcss": "^8.4.38", "prettier": "^3.2.5", "terser": "^5.30.0", "vite": "^5.4.6", "vite-plugin-compression2": "^1.0.0", "vue-tsc": "^2.0.7" } }