{ "name": "photos", "version": "6.0.0-dev.0", "private": true, "description": "Your memories under your control", "keywords": [ "nextcloud", "photos", "app" ], "homepage": "https://github.com/nextcloud/photos", "bugs": { "url": "https://github.com/nextcloud/photos/issues" }, "repository": { "type": "git", "url": "https://github.com/nextcloud/photos" }, "license": "AGPL-3.0-or-later", "author": "John Molakvoæ ", "contributors": [ "John Molakvoæ " ], "type": "module", "scripts": { "build": "vite --mode production build", "cypress": "npm run cypress:e2e", "cypress:e2e": "cypress run --e2e", "cypress:gui": "cypress open", "dev": "export NODE_ENV=development; vite --mode development build", "lint": "eslint", "lint:fix": "eslint --fix", "precypress:update-snapshots": "TESTING=true npm run dev", "stylelint": "stylelint src", "stylelint:fix": "stylelint src --fix", "test": "TZ=CET NODE_ENV=test vitest run", "test:coverage": "TZ=CET NODE_ENV=test vitest --coverage run", "ts:check": "vue-tsc --noEmit", "watch": "export NODE_ENV=development; vite --mode development build --watch" }, "browserslist": [ "extends @nextcloud/browserslist-config" ], "dependencies": { "@essentials/request-timeout": "^1.3.0", "@mdi/svg": "^7.4.47", "@nextcloud/auth": "^2.1.0", "@nextcloud/axios": "^2.1.0", "@nextcloud/dialogs": "^6.4.1", "@nextcloud/eslint-config": "^9.0.0-rc.5", "@nextcloud/event-bus": "^3.1.0", "@nextcloud/files": "^3.10.2", "@nextcloud/initial-state": "^2.1.0", "@nextcloud/l10n": "^3.4.1", "@nextcloud/logger": "^3.0.2", "@nextcloud/moment": "^1.3.5", "@nextcloud/paths": "^2.1.0", "@nextcloud/router": "^3.0.1", "@nextcloud/sharing": "^0.2.4", "@nextcloud/typings": "^1.9.1", "@nextcloud/upload": "^1.0.4", "@nextcloud/vue": "^8.34.0", "axios": "^1.12.1", "blurhash": "^2.0.5", "camelcase": "^8.0.0", "debounce": "^2.2.0", "he": "^1.2.0", "leaflet": "^1.9.4", "leaflet-defaulticon-compatibility": "^0.1.2", "path-posix": "^1.0.0", "pinia": "^2.3.1", "qs": "^6.14.1", "url-parse": "^1.5.10", "vue": "^2.7.14", "vue-material-design-icons": "^5.3.1", "vue-router": "^3.6.5", "vue-template-compiler": "^2.7.14", "vue-virtual-grid": "^2.5.0", "vue2-leaflet": "^2.7.1", "vuex": "^3.6.2", "vuex-router-sync": "^5.0.0", "webdav": "^5.5.0" }, "devDependencies": { "@cypress/browserify-preprocessor": "^3.0.2", "@nextcloud/babel-config": "^1.2.0", "@nextcloud/browserslist-config": "^3.0.1", "@nextcloud/cypress": "^1.0.0-beta.15", "@nextcloud/stylelint-config": "^3.1.0", "@nextcloud/vite-config": "^1.7.0", "@types/dockerode": "^3.3.39", "@vitest/coverage-v8": "^3.2.4", "@vue/test-utils": "^1.3.6", "@vue/tsconfig": "^0.5.1", "autoprefixer": "^10.4.21", "cypress-split": "^1.24.14", "cypress-visual-regression": "^5.3.0", "cypress-wait-until": "^3.0.2", "dockerode": "^4.0.7", "eslint-plugin-cypress": "^5.1.0", "happy-dom": "^20.0.8", "postcss": "^8.5.6", "ts-node": "^10.9.2", "tslib": "^2.8.1", "typescript": "^5.9.2", "vite": "7.1.5", "vite-plugin-pwa": "^1.0.3", "vitest": "^3.2.4", "vue-tsc": "^2.2.10", "wait-on": "^8.0.3" }, "engines": { "node": "^24.0.0", "npm": "^11.3.0" } }