{
  "name": "talk",
  "version": "22.0.9",
  "private": true,
  "description": "",
  "license": "agpl",
  "author": "Joas Schilling <coding@schilljs.com>",
  "browser": {
    "fs": false
  },
  "scripts": {
    "analyze": "rspack build --env production --analyze",
    "analyze:stats": "rspack build --env production --json js/stats.json",
    "build": "rspack build --env production",
    "dev": "rspack build --env development",
    "lint": "eslint",
    "lint:fix": "eslint --fix",
    "opengrep": "opengrep --opengrep-ignore-pattern=noopengrep --error --exclude '*.php' --exclude 'docs' --include '*.vue' --include '*.js' --include '*.ts' --exclude-rule 'javascript.vue.security.audit.xss.templates.avoid-v-html.avoid-v-html' --exclude-rule 'javascript.lang.security.detect-insecure-websocket.detect-insecure-websocket'",
    "serve": "NODE_ENV=development rspack serve",
    "stylelint": "stylelint \"src/**/*.scss\" \"src/**/*.vue\"",
    "stylelint:fix": "stylelint \"src/**/*.scss\" \"src/**/*.vue\" --fix",
    "test": "vitest",
    "test:coverage": "vitest run --coverage",
    "typescript:check": "vue-tsc --noEmit",
    "typescript:generate": "npx openapi-typescript -t",
    "typescript:generate-core-types": "./src/types/generate-core-types.sh",
    "watch": "rspack build --env development --watch"
  },
  "browserslist": [
    "extends @nextcloud/browserslist-config"
  ],
  "dependencies": {
    "@matrix-org/olm": "^3.2.15",
    "@mediapipe/tasks-vision": "^0.10.32",
    "@nextcloud/auth": "^2.5.3",
    "@nextcloud/axios": "^2.5.1",
    "@nextcloud/browser-storage": "^0.5.0",
    "@nextcloud/capabilities": "^1.2.1",
    "@nextcloud/cdav-library": "^2.1.1",
    "@nextcloud/dialogs": "^7.1.0",
    "@nextcloud/event-bus": "^3.3.3",
    "@nextcloud/files": "^3.12.2",
    "@nextcloud/initial-state": "^3.0.0",
    "@nextcloud/l10n": "^3.4.1",
    "@nextcloud/paths": "^2.2.2",
    "@nextcloud/router": "^3.0.1",
    "@nextcloud/sharing": "^0.3.0",
    "@nextcloud/upload": "^2.0.0-rc.0",
    "@nextcloud/vue": "^9.3.3",
    "@vue-leaflet/vue-leaflet": "^0.10.1",
    "@vueuse/components": "^13.7.0",
    "@vueuse/core": "^13.7.0",
    "@vueuse/router": "^13.7.0",
    "base64-js": "^1.5.1",
    "blurhash": "^2.0.5",
    "crypto-js": "^4.2.0",
    "debounce": "^2.2.0",
    "emoji-regex": "^10.4.0",
    "entities": "^6.0.1",
    "escape-html": "^1.0.3",
    "extendable-media-recorder": "^9.2.33",
    "extendable-media-recorder-wav-encoder": "^7.0.134",
    "hark": "^1.2.3",
    "leaflet": "^1.9.4",
    "leaflet-defaulticon-compatibility": "^0.1.2",
    "libphonenumber-js": "^1.12.36",
    "lodash": "^4.17.23",
    "mitt": "^3.0.1",
    "mockconsole": "0.0.1",
    "panzoom": "^9.4.3",
    "pinia": "^3.0.4",
    "ua-parser-js": "^2.0.8",
    "util": "^0.12.5",
    "uuid": "^11.1.0",
    "vue": "^3.5.27",
    "vue-cropperjs": "^5.0.0",
    "vue-draggable-resizable": "^3.0.0",
    "vue-material-design-icons": "^5.3.1",
    "vue-router": "^4.6.4",
    "vue-tsc": "^3.0.10",
    "vuex": "^4.1.0",
    "webdav": "^5.8.0",
    "webrtc-adapter": "^9.0.3",
    "webrtcsupport": "^2.2.0",
    "wildemitter": "^1.2.1"
  },
  "devDependencies": {
    "@nextcloud/browserslist-config": "^3.1.2",
    "@nextcloud/eslint-config": "^9.0.0-rc.8",
    "@nextcloud/stylelint-config": "^3.1.1",
    "@rspack/cli": "^1.6.8",
    "@rspack/core": "^1.6.8",
    "@rspack/plugin-node-polyfill": "^0.5.8",
    "@total-typescript/ts-reset": "^0.6.1",
    "@vitejs/plugin-vue": "^6.0.4",
    "@vitest/coverage-v8": "^3.2.4",
    "@vue/test-utils": "^2.4.6",
    "@vue/tsconfig": "^0.5.1",
    "css-loader": "^7.1.3",
    "globals": "^16.2.0",
    "jsdom": "^26.1.0",
    "openapi-typescript": "^7.8.0",
    "regenerator-runtime": "^0.14.1",
    "sass": "^1.94.3",
    "sass-loader": "^16.0.6",
    "stylelint-use-logical": "^2.1.2",
    "vitest": "^3.2.4",
    "vue-loader": "^17.4.2",
    "wasm-check": "^2.1.2"
  },
  "engines": {
    "node": "^22.0.0",
    "npm": "^10.5.0"
  }
}
