{ "name": "@oj2/web", "version": "1.9.0", "type": "module", "scripts": { "dev": "vite", "start": "vite", "build": "vite build", "build:staging": "vite build --mode staging", "build:test": "vite build --mode test", "type-check": "vue-tsc --noEmit -p tsconfig.app.json" }, "dependencies": { "@codemirror/autocomplete": "^6.20.3", "@codemirror/commands": "^6.10.4", "@codemirror/lang-cpp": "^6.0.3", "@codemirror/lang-markdown": "^6.5.2", "@codemirror/lang-python": "^6.2.1", "@codemirror/lang-sql": "^6.10.0", "@codemirror/language": "^6.13.1", "@codemirror/state": "^6.7.6", "@codemirror/view": "^6.43.14", "@lezer/highlight": "^1.2.5", "@oj2/contract": "workspace:*", "@vue-flow/background": "^1.3.2", "@vue-flow/controls": "^1.1.3", "@vue-flow/core": "^1.48.2", "@vueuse/core": "^15.0.0", "@vueuse/router": "^15.0.0", "@wangeditor-next/editor": "^6.5.0", "@wangeditor-next/editor-for-vue": "^6.5.0", "axios": "^1.20.0", "canvas-confetti": "^1.9.4", "chart.js": "^4.5.1", "chartjs-chart-wordcloud": "^4.4.5", "codemirror": "^6.0.2", "copy-text-to-clipboard": "^3.2.2", "date-fns": "^4.4.0", "fflate": "^0.8.3", "highlight.js": "^11.12.0", "lib0": "0.2.119", "markdown-it": "^14.3.0", "mermaid": "^12.1.0", "naive-ui": "^2.45.3", "nanoid": "^6.0.2", "normalize.css": "^8.0.1", "pinia": "^4.0.3", "pinyin-pro": "^3.29.5", "vue": "^3.5.43", "vue-chartjs": "^5.3.4", "vue-router": "^5.4.0", "y-codemirror.next": "^0.3.6", "y-protocols": "1.0.7", "yjs": "^13.6.33" }, "devDependencies": { "@iconify/vue": "^5.0.3", "@types/canvas-confetti": "^1.9.0", "@types/markdown-it": "^14.1.2", "@types/node": "^26.6.5", "@vitejs/plugin-legacy": "^8.2.3", "@vitejs/plugin-vue": "^6.0.10", "@vue/tsconfig": "^0.9.1", "unplugin-auto-import": "^21.1.0", "unplugin-vue-components": "^32.1.0", "vite": "^8.3.4", "vue-tsc": "^3.3.13" } }