{ "name": "client", "private": true, "scripts": { "watch": "pnpm vite build --watch --mode development", "build": "pnpm vite build", "build:debug": "pnpm run build", "lint": "pnpm biome check **/*.ts --apply ; pnpm run lint:vue", "lint:vue": "pnpm eslint src --fix '**/*.vue' --cache ; pnpm run format", "format": "pnpm biome format * --write && pnpm prettier --write '**/*.{scss,vue}' --cache --cache-strategy metadata" }, "devDependencies": { "@discordapp/twemoji": "14.1.2", "@eslint-sets/eslint-config-vue3": "^5.8.0", "@eslint-sets/eslint-config-vue3-ts": "^3.3.0", "@phosphor-icons/web": "^2.0.3", "@rollup/plugin-alias": "5.0.0", "@rollup/plugin-json": "6.0.0", "@rollup/pluginutils": "^5.0.4", "@syuilo/aiscript": "0.11.1", "@types/escape-regexp": "0.0.1", "@types/glob": "8.1.0", "@types/gulp": "4.0.13", "@types/gulp-rename": "2.0.2", "@types/katex": "0.16.2", "@types/matter-js": "0.19.0", "@types/punycode": "2.1.0", "@types/seedrandom": "3.0.5", "@types/throttle-debounce": "5.0.0", "@types/tinycolor2": "1.4.3", "@types/uuid": "9.0.3", "@vitejs/plugin-vue": "4.3.4", "@vue/compiler-sfc": "3.3.4", "autobind-decorator": "2.4.0", "autosize": "6.0.1", "blurhash": "2.0.5", "broadcast-channel": "5.3.0", "browser-image-resizer": "github:misskey-dev/browser-image-resizer", "chart.js": "4.4.0", "chartjs-adapter-date-fns": "3.0.0", "chartjs-chart-matrix": "^2.0.1", "chartjs-plugin-gradient": "0.6.1", "chartjs-plugin-zoom": "2.0.1", "city-timezones": "^1.2.1", "compare-versions": "6.1.0", "cropperjs": "2.0.0-beta.2", "cross-env": "7.0.3", "cypress": "10.11.0", "date-fns": "2.30.0", "emojilib": "github:thatonecalculator/emojilib", "escape-regexp": "0.0.1", "eslint-config-prettier": "9.0.0", "eslint-plugin-file-progress": "^1.3.0", "eventemitter3": "5.0.1", "fast-blurhash": "^1.1.2", "firefish-js": "workspace:*", "focus-trap": "^7.5.2", "focus-trap-vue": "^4.0.2", "gsap": "^3.12.2", "idb-keyval": "6.2.1", "insert-text-at-cursor": "0.3.0", "json5": "2.2.3", "katex": "0.16.8", "matter-js": "0.19.0", "mfm-js": "0.23.3", "photoswipe": "5.3.9", "prettier": "3.0.3", "prettier-plugin-vue": "1.1.6", "prismjs": "1.29.0", "punycode": "2.3.0", "rndstr": "1.0.0", "rollup": "3.28.1", "s-age": "1.1.2", "sass": "1.66.1", "seedrandom": "3.0.5", "strict-event-emitter-types": "2.0.0", "stringz": "2.1.0", "swiper": "10.2.0", "syuilo-password-strength": "0.0.1", "textarea-caret": "3.1.0", "three": "0.156.0", "throttle-debounce": "5.0.0", "tinycolor2": "1.6.0", "tinyld": "^1.3.4", "tsc-alias": "1.8.7", "tsconfig-paths": "4.2.0", "twemoji-parser": "14.0.0", "typescript": "5.2.2", "unicode-emoji-json": "^0.4.0", "uuid": "9.0.0", "vanilla-tilt": "1.8.1", "vite": "4.4.9", "vite-plugin-compression": "^0.5.1", "vue": "3.3.4", "vue-draggable-plus": "^0.2.6", "vue-isyourpasswordsafe": "^2.0.0", "vue-plyr": "^7.0.0", "vue-prism-editor": "2.0.0-alpha.2" } }