{ "name": "nextcloud-news", "description": "An RSS/Atom feed reader", "main": "js/app.min.js", "scripts": { "prebuild": "npm install && npm ci", "build": "NODE_ENV=production webpack --progress --config webpack.js", "dev": "NODE_ENV=development webpack --progress --config webpack.js", "watch": "NODE_ENV=development webpack --progress --watch --config webpack.js", "lint": "eslint --ext .js,.vue src", "lint:fix": "eslint --ext .js,.vue src --fix", "stylelint": "stylelint **/*.css **/*.scss **/*.vue", "stylelint:fix": "stylelint **/*.css **/*.scss **/*.vue --fix", "test": "jest --verbose" }, "repository": { "type": "git", "url": "https://github.com/nextcloud/news" }, "keywords": [ "rss", "atom", "feed", "reader", "nextcloud", "app" ], "author": "Benjamin Brahmer", "license": "AGPL-3.0", "bugs": { "url": "https://github.com/nextcloud/news/issues" }, "engines": { "node": "^16.0.0", "npm": "^8.0.0" }, "resolutions": { "natives": "1.1.3" }, "private": true, "homepage": "https://github.com/nextcloud/news", "dependencies": { "@nextcloud/axios": "^1.10.0", "@nextcloud/dialogs": "^3.1.2", "@nextcloud/router": "^2.0.0", "@nextcloud/vue": "^5.3.1", "vue": "^2.6.14", "vue-router": "^3.5.3", "vuex": "^3.6.2" }, "devDependencies": { "@babel/core": "^7.11.1", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/preset-env": "^7.11.0", "@babel/preset-typescript": "^7.18.6", "@nextcloud/babel-config": "^1.0.0", "@nextcloud/browserslist-config": "^2.2.0", "@nextcloud/eslint-config": "^8.0.0", "@nextcloud/eslint-plugin": "^2.0.0", "@nextcloud/stylelint-config": "^2.1.2", "@nextcloud/webpack-vue-config": "^5.1.0", "@types/jest": "^29.1.1", "@types/webpack-env": "^1.17.0", "@typescript-eslint/eslint-plugin": "^5.27.1", "@typescript-eslint/parser": "^5.27.1", "@vue/eslint-config-standard": "^8.0.1", "@vue/eslint-config-typescript": "^11.0.2", "@vue/test-utils": "^1.3.0", "babel-core": "^7.0.0-0", "css-loader": "^6.7.1", "eslint": "^8.6.0", "eslint-config-standard": "^17.0.0", "eslint-import-resolver-webpack": "^0.12.2", "eslint-plugin-import": "^2.22.0", "eslint-plugin-jsdoc": "^39.2.1", "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^6.0.0", "eslint-plugin-standard": "^4.0.1", "eslint-plugin-vue": "^9.5.1", "eslint-webpack-plugin": "^3.1.1", "file-loader": "^6.0.0", "jasmine-core": "^3.5.0", "jest": "^29.1.1", "jest-environment-jsdom": "^29.1.1", "jest-serializer-vue": "^2.0.2", "jquery": "^3.5.1", "jshint": "^2.11.1", "karma": "^6.4.0", "karma-chrome-launcher": "^3.1.0", "karma-coverage": "^2.0.2", "karma-firefox-launcher": "^1.3.0", "karma-jasmine": "^2.0.1", "linkifyjs": "^3.0.5", "minimatch": "^3.0.4", "natives": "^1.1.6", "node-polyfill-webpack-plugin": "^2.0.1", "node-sass": "^7.0.1", "postcss": "^8.4.14", "postcss-html": "^1.4.1", "sass-loader": "^13.0.2", "style-loader": "^3.3.1", "stylelint": "^14.8.4", "stylelint-config-recommended-scss": "^7.0.0", "stylelint-config-recommended-vue": "^1.4.0", "stylelint-webpack-plugin": "^2.1.0", "ts-jest": "^29.0.3", "ts-loader": "^9.3.0", "typescript": "^4.7.2", "url-loader": "^4.1.0", "vue-eslint-parser": "^9.0.2", "vue-jest": "^3.0.7", "vue-loader": "^15.9.8", "vue-template-compiler": "^2.6.14", "webpack": "^5.72.1", "webpack-cli": "^4.9.2" }, "jest": { "preset": "ts-jest", "moduleFileExtensions": [ "js", "vue", "ts" ], "moduleNameMapper": { "^@/(.*)$": "/src/$1", "^Components/(.*)$": "/src/components/$1" }, "testEnvironment": "jsdom", "transform": { ".*\\.(vue)$": "vue-jest", "^.+\\.ts?$": "ts-jest" }, "transformIgnorePatterns": [ "/node_modules/(?!(@nextcloud)|(vue-material-design-icons))" ], "snapshotSerializers": [ "jest-serializer-vue" ], "setupFilesAfterEnv": [ "./tests/javascript/unit/setup.ts" ], "coverageDirectory": "./coverage/", "collectCoverage": false, "collectCoverageFrom": [ "/src/**/*.{js,vue,ts}", "!**/node_modules/**" ], "coverageReporters": [ "json", "text", "html", "lcov", "clover" ] } }