{ "name": "ai-agent-frontend", "version": "4.1.0", "private": true, "type": "module", "scripts": { "dev": "vite build --watch", "build": "tsc --noEmit && stylelint \"static/src/**/*.{scss,vue}\" && vite build", "lint": "eslint \"static/src/**/*.{ts,tsx,js,vue}\" --max-warnings=0", "lint:css": "stylelint \"static/src/**/*.{scss,vue}\"", "format": "prettier --write \"static/src/**/*.{ts,tsx,js,vue,css}\"", "preview": "vite preview", "cli": "npm --prefix cli run dev", "cli:build": "npm --prefix cli run build", "cli:typecheck": "npm --prefix cli run typecheck" }, "dependencies": { "@tiptap/extension-mention": "^3.23.6", "@tiptap/extension-placeholder": "^3.23.6", "@tiptap/starter-kit": "^3.23.6", "@tiptap/suggestion": "^3.23.6", "@tiptap/vue-3": "^3.23.6", "@types/html2canvas": "^0.5.35", "@xterm/addon-fit": "^0.11.0", "@xterm/addon-web-links": "^0.12.0", "diff": "^8.0.3", "dompurify": "^3.2.7", "enquirer": "^2.4.1", "html2canvas": "^1.4.1", "katex": "^0.16.9", "marked": "^11.1.0", "pinia": "^3.0.4", "prismjs": "^1.29.0", "rehype-raw": "^7.0.0", "rehype-sanitize": "^6.0.0", "rehype-stringify": "^10.0.1", "remark-breaks": "^4.0.0", "remark-gfm": "^4.0.1", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.2", "sherpa-onnx": "^1.13.2", "socket.io-client": "^4.7.5", "unified": "^11.0.5", "vue": "^3.4.15", "vue-pdf-embed": "^2.1.5", "vue-stick-to-bottom": "^1.0.0", "xterm": "^5.3.0" }, "devDependencies": { "@playwright/test": "^1.61.1", "@types/node": "^20.10.5", "@vitejs/plugin-vue": "^5.0.3", "@vue/eslint-config-prettier": "^9.0.0", "@vue/eslint-config-typescript": "^12.0.0", "eslint": "^8.56.0", "eslint-plugin-vue": "^9.19.2", "postcss-html": "^1.6.0", "postcss-scss": "^4.0.9", "prettier": "^3.1.1", "sass": "^1.94.2", "stylelint": "^16.10.0", "typescript": "^5.3.3", "vite": "^5.0.10", "vue-tsc": "^1.8.22" } }