{
  "name": "photoprism",
  "version": "1.0.0",
  "description": "PhotoPrism Progressive Web App (PWA)",
  "author": "Michael Mayer",
  "license": "AGPL-3.0",
  "private": true,
  "scripts": {
    "watch": "webpack --watch",
    "build": "webpack --node-env=production",
    "trace": "webpack --stats-children",
    "lint": "eslint --cache src/ *.js",
    "fmt": "eslint --cache --fix src/ *.js .eslintrc.js",
    "test": "karma start",
    "upgrade": "npm --depth 10 update && npm audit fix",
    "acceptance": "testcafe chrome:headless --skip-js-errors --quarantine-mode --selector-timeout 5000 -S -s tests/screenshots tests/acceptance",
    "acceptance-firefox": "testcafe firefox:headless --skip-js-errors --quarantine-mode --selector-timeout 5000 -S -s tests/screenshots tests/acceptance",
    "acceptance-private": "testcafe chrome:headless --skip-js-errors --quarantine-mode --selector-timeout 5000 -S -s tests/screenshots tests/acceptance-private",
    "acceptance-private-firefox": "testcafe firefox:headless --skip-js-errors --quarantine-mode --selector-timeout 5000 -S -s tests/screenshots tests/acceptance-private",
    "acceptance-local": "testcafe chrome --selector-timeout 5000 -S -s tests/screenshots tests/acceptance",
    "gettext-extract": "gettext-extract --output src/locales/translations.pot $(find src -type f \\( -iname \\*.vue -o -iname \\*.js \\) -not -path src/common/vm.js)",
    "gettext-compile": "gettext-compile --output src/locales/translations.json src/locales/*.po"
  },
  "dependencies": {
    "@babel/cli": "^7.14.8",
    "@babel/core": "^7.14.8",
    "@babel/eslint-parser": "^7.14.7",
    "@babel/plugin-proposal-class-properties": "^7.14.5",
    "@babel/plugin-proposal-object-rest-spread": "^7.14.7",
    "@babel/plugin-transform-runtime": "^7.14.5",
    "@babel/polyfill": "^7.12.1",
    "@babel/preset-env": "^7.14.8",
    "@babel/register": "^7.14.5",
    "@babel/runtime": "^7.14.8",
    "@lcdp/offline-plugin": "^5.1.0",
    "@vvo/tzdb": "^6.7.0",
    "axios": "^0.21.1",
    "axios-mock-adapter": "^1.19.0",
    "babel-loader": "^8.2.2",
    "babel-plugin-istanbul": "^6.0.0",
    "browserslist": "^4.16.6",
    "chai": "^4.3.4",
    "chrome-finder": "^1.0.7",
    "core-js": "^3.15.2",
    "cross-env": "^7.0.3",
    "css-loader": "^5.2.6",
    "cssnano": "^5.0.6",
    "easygettext": "^2.17.0",
    "eslint": "^7.31.0",
    "eslint-config-prettier": "^8.3.0",
    "eslint-config-standard": "^16.0.3",
    "eslint-formatter-pretty": "^4.1.0",
    "eslint-friendly-formatter": "^4.0.1",
    "eslint-plugin-html": "^6.1.2",
    "eslint-plugin-import": "^2.23.4",
    "eslint-plugin-node": "^11.1.0",
    "eslint-plugin-prettier-vue": "^3.1.0",
    "eslint-plugin-promise": "^5.1.0",
    "eslint-plugin-vue": "^7.13.0",
    "eslint-webpack-plugin": "^3.0.1",
    "eventsource-polyfill": "^0.9.6",
    "file-loader": "^6.2.0",
    "file-saver": "^2.0.5",
    "hls.js": "^1.0.7",
    "i": "^0.3.6",
    "karma": "^6.3.4",
    "karma-chrome-launcher": "^3.1.0",
    "karma-coverage-istanbul-reporter": "^3.0.3",
    "karma-htmlfile-reporter": "^0.3.8",
    "karma-mocha": "^2.0.1",
    "karma-verbose-reporter": "^0.0.6",
    "karma-webpack": "^5.0.0",
    "luxon": "^1.28.0",
    "mapbox-gl": "^1.13.0",
    "material-design-icons-iconfont": "^6.1.0",
    "mini-css-extract-plugin": "^2.1.0",
    "minimist": ">=1.2.5",
    "mocha": "^9.0.2",
    "node-storage-shim": "^2.0.1",
    "photoswipe": "^4.1.3",
    "postcss": "^8.3.6",
    "postcss-browser-reporter": "^0.6.0",
    "postcss-import": "^14.0.2",
    "postcss-loader": "^6.1.1",
    "postcss-preset-env": "^6.7.0",
    "postcss-reporter": "^7.0.2",
    "postcss-url": "^10.1.3",
    "prettier": "^2.3.2",
    "pubsub-js": "^1.9.3",
    "regenerator-runtime": "^0.13.7",
    "resolve-url-loader": "^3.1.4",
    "sass": "^1.36.0",
    "sass-loader": "^12.1.0",
    "server": "^1.0.36",
    "sockette": "^2.0.6",
    "style-loader": "^3.1.0",
    "svg-url-loader": "^7.1.1",
    "tar": "^6.1.0",
    "url-loader": "^4.1.1",
    "util": "^0.12.4",
    "vue": "^2.6.14",
    "vue-fullscreen": "^2.5.2",
    "vue-gettext": "^2.1.12",
    "vue-infinite-scroll": "^2.0.2",
    "vue-loader": "^15.9.7",
    "vue-loader-plugin": "^1.3.0",
    "vue-luxon": "^0.10.0",
    "vue-router": "^3.5.2",
    "vue-style-loader": "^4.1.3",
    "vue-template-compiler": "^2.6.14",
    "vue2-filters": "^0.13.0",
    "vuetify": "^1.5.24",
    "webpack": "^5.46.0",
    "webpack-bundle-analyzer": "^4.4.2",
    "webpack-cli": "^4.7.2",
    "webpack-hot-middleware": "^2.25.0",
    "webpack-md5-hash": "^0.0.6",
    "webpack-merge": "^5.8.0"
  },
  "engines": {
    "node": ">= 8.0.0",
    "npm": ">= 6.0.0",
    "yarn": "please use npm"
  },
  "browserslist": [
    "> 1%",
    "not ie <= 9",
    "last 3 versions"
  ]
}
