{
  "name": "nextcloud",
  "version": "1.0.0",
  "private": true,
  "description": "Nextcloud Server",
  "keywords": [
    "nextcloud"
  ],
  "repository": {
    "type": "git",
    "url": "https://github.com/nextcloud/server.git"
  },
  "license": "AGPL-3.0-or-later",
  "author": "Nextcloud GmbH and Nextcloud contributors",
  "type": "module",
  "scripts": {
    "build": "build/demi.sh build",
    "postbuild": "build/npm-post-build.sh",
    "dev": "build/demi.sh dev",
    "postinstall": "build/demi.sh ci",
    "lint": "eslint --suppressions-location build/eslint-baseline.json --no-error-on-unmatched-pattern ./tests/playwright",
    "postlint": "build/demi.sh lint",
    "lint:fix": "concurrently 'npm run lint -- --fix' 'build/demi.sh lint:fix'",
    "playwright": "playwright test --project=default --project=admin-settings",
    "playwright:install": "playwright install chromium",
    "playwright:setup": "playwright test --project=setup",
    "sass": "sass --style compressed --load-path core/css core/css/ $(for cssdir in $(find apps -mindepth 2 -maxdepth 2 -name \"css\"); do if ! $(git check-ignore -q $cssdir); then printf \"$cssdir \"; fi; done)",
    "sass:icons": "node build/icons.mjs",
    "sass:watch": "sass --watch --load-path core/css core/css/ $(for cssdir in $(find apps -mindepth 2 -maxdepth 2 -name \"css\"); do if ! $(git check-ignore -q $cssdir); then printf \"$cssdir \"; fi; done)",
    "stylelint": "stylelint $(for appdir in $(ls apps); do if ! $(git check-ignore -q \"apps/$appdir\"); then printf \"'apps/$appdir/**/*.{scss,vue}' \"; fi; done) 'core/**/*.{scss,vue}'",
    "stylelint:fix": "npm run stylelint -- --fix",
    "test": "vitest run",
    "test:coverage": "vitest run --coverage",
    "test:update-snapshots": "vitest run --update",
    "test:watch": "vitest watch",
    "watch": "build/demi.sh --parallel watch"
  },
  "browserslist": [
    "extends @nextcloud/browserslist-config"
  ],
  "dependencies": {
    "@mdi/js": "^7.4.47",
    "@mdi/svg": "^7.4.47",
    "@nextcloud/auth": "^2.6.0",
    "@nextcloud/axios": "^2.5.2",
    "@nextcloud/calendar-availability-vue": "^3.0.0",
    "@nextcloud/capabilities": "^1.2.1",
    "@nextcloud/dialogs": "^7.5.0",
    "@nextcloud/event-bus": "^3.3.3",
    "@nextcloud/files": "^4.1.0",
    "@nextcloud/initial-state": "^3.0.0",
    "@nextcloud/l10n": "^3.4.1",
    "@nextcloud/logger": "^3.0.3",
    "@nextcloud/password-confirmation": "^6.1.0",
    "@nextcloud/paths": "^3.1.0",
    "@nextcloud/router": "^3.1.0",
    "@nextcloud/sharing": "^1.0.0-beta.4",
    "@nextcloud/vue": "^9.13.1",
    "@vueuse/core": "^14.4.0",
    "@vueuse/integrations": "^14.4.0",
    "color": "^5.0.3",
    "debounce": "^3.0.0",
    "marked": "^18.0.14",
    "p-queue": "^9.3.3",
    "pinia": "^4.0.3",
    "sortablejs": "^1.15.7",
    "vue": "^3.5.43",
    "vue-router": "^5.3.1",
    "vuedraggable": "4.1.0",
    "vuex": "^4.1.0",
    "webdav": "^5.11.0"
  },
  "devDependencies": {
    "@nextcloud/browserslist-config": "^3.1.2",
    "@nextcloud/e2e-test-server": "^0.6.1",
    "@nextcloud/eslint-config": "^9.0.1",
    "@nextcloud/stylelint-config": "^3.2.2",
    "@nextcloud/typings": "^1.10.0",
    "@nextcloud/vite-config": "^2.5.2",
    "@playwright/test": "^1.63.0",
    "@testing-library/jest-dom": "^7.0.1",
    "@testing-library/vue": "^8.1.0",
    "@types/dockerode": "^4.0.1",
    "@vitest/coverage-v8": "^4.1.11",
    "@vue/test-utils": "^2.5.1",
    "@vue/tsconfig": "^0.9.1",
    "@zip.js/zip.js": "^2.18.2",
    "axe-core": "^4.13.0",
    "concurrently": "^10.0.5",
    "eslint": "^10.11.0",
    "eslint-plugin-no-only-tests": "^3.4.0",
    "is-svg": "^6.1.0",
    "jsdom": "^30.1.1",
    "jsdom-testing-mocks": "^1.16.0",
    "msw": "^2.15.0",
    "sass": "^1.105.0",
    "stylelint": "^17.15.0",
    "vite": "^7.3.6",
    "vitest": "^4.1.9"
  },
  "engines": {
    "node": "^24.0.0",
    "npm": "^11.3.0"
  }
}
