diff --git a/package.json b/package.json index e8d70eab87e..71d925b5d9a 100644 --- a/package.json +++ b/package.json @@ -1,108 +1,113 @@ { "name": "openmct", - "version": "1.8.2", + "version": "2.1.0-SNAPSHOT", "description": "The Open MCT core platform", "devDependencies": { - "@braintree/sanitize-url": "^5.0.2", - "@percy/cli": "^1.0.0-beta.70", - "@percy/playwright": "^1.0.1", - "@playwright/test": "^1.16.3", - "allure-playwright": "^2.0.0-beta.14", - "angular": ">=1.8.0", - "angular-route": "1.4.14", - "babel-eslint": "10.0.3", - "comma-separated-values": "^3.6.4", - "concurrently": "^3.6.1", - "copy-webpack-plugin": "^4.5.2", - "cross-env": "^6.0.3", - "css-loader": "^1.0.0", - "d3-axis": "1.0.x", - "d3-scale": "1.0.x", - "d3-selection": "1.3.x", - "eslint": "7.0.0", - "eslint-plugin-playwright": "0.6.0", - "eslint-plugin-vue": "^7.5.0", - "eslint-plugin-you-dont-need-lodash-underscore": "^6.10.0", - "eventemitter3": "^1.2.0", - "exports-loader": "^0.7.0", - "express": "^4.13.1", - "fast-sass-loader": "1.4.6", - "file-loader": "^1.1.11", - "file-saver": "^1.3.8", - "git-rev-sync": "^1.4.0", - "glob": ">= 3.0.0", - "html-loader": "^0.5.5", - "html2canvas": "^1.0.0-rc.7", - "imports-loader": "^0.8.0", - "istanbul-instrumenter-loader": "^3.0.1", - "jasmine-core": "^3.7.1", - "jsdoc": "^3.3.2", - "karma": "6.3.9", - "karma-chrome-launcher": "3.1.0", + "@babel/eslint-parser": "7.18.2", + "@braintree/sanitize-url": "6.0.0", + "@percy/cli": "1.2.1", + "@percy/playwright": "1.0.4", + "@playwright/test": "1.23.0", + "@types/eventemitter3": "^1.0.0", + "@types/jasmine": "^4.0.1", + "@types/karma": "^6.3.2", + "@types/lodash": "^4.14.178", + "@types/mocha": "^9.1.0", + "babel-loader": "8.2.5", + "babel-plugin-istanbul": "6.1.1", + "comma-separated-values": "3.6.4", + "codecov":"3.8.3", + "copy-webpack-plugin": "11.0.0", + "cross-env": "7.0.3", + "css-loader": "4.0.0", + "d3-axis": "3.0.0", + "d3-scale": "4.0.2", + "d3-selection": "3.0.0", + "eslint": "8.18.0", + "eslint-plugin-compat": "4.0.2", + "eslint-plugin-playwright": "0.9.0", + "eslint-plugin-vue": "9.1.1", + "eslint-plugin-you-dont-need-lodash-underscore": "6.12.0", + "eventemitter3": "1.2.0", + "express": "4.13.1", + "file-saver": "2.0.5", + "git-rev-sync": "3.0.2", + "html2canvas": "1.4.1", + "imports-loader": "0.8.0", + "jasmine-core": "4.2.0", + "jsdoc": "3.5.5", + "karma": "6.3.20", + "karma-chrome-launcher": "3.1.1", "karma-cli": "2.0.0", - "karma-coverage": "2.1.0", + "karma-coverage": "2.2.0", "karma-coverage-istanbul-reporter": "3.0.3", "karma-firefox-launcher": "2.1.2", - "karma-jasmine": "4.0.1", + "karma-jasmine": "5.1.0", "karma-junit-reporter": "2.0.1", "karma-sourcemap-loader": "0.3.8", - "karma-spec-reporter": "0.0.32", - "karma-webpack": "4.0.2", - "location-bar": "^3.0.1", - "lodash": "^4.17.12", - "markdown-toc": "^0.11.7", - "marked": "^0.3.5", - "mini-css-extract-plugin": "^0.4.1", - "minimist": "^1.2.5", - "moment": "2.25.3", - "moment-duration-format": "^2.2.2", - "moment-timezone": "0.5.28", - "node-bourbon": "^4.2.3", - "node-sass": "^4.14.1", - "painterro": "^1.2.56", - "playwright": "^1.16.3", - "plotly.js-basic-dist": "^2.5.0", - "plotly.js-gl2d-dist": "^2.5.0", - "printj": "^1.2.1", - "raw-loader": "^0.5.1", - "request": "^2.69.0", - "sinon": "^12.0.1", - "split": "^1.0.0", + "karma-spec-reporter": "0.0.34", + "karma-webpack": "5.0.0", + "lighthouse": "9.6.1", + "location-bar": "3.0.1", + "lodash": "4.17.21", + "mini-css-extract-plugin": "2.6.1", + "moment": "2.29.4", + "moment-duration-format": "2.3.2", + "moment-timezone": "0.5.34", + "node-bourbon": "4.2.3", + "nyc":"15.1.0", + "painterro": "1.2.78", + "plotly.js-basic-dist": "2.12.0", + "plotly.js-gl2d-dist": "2.12.0", + "printj": "1.3.1", + "request": "2.88.2", + "resolve-url-loader": "5.0.0", + "sass": "1.52.2", + "sass-loader": "13.0.2", + "sinon": "14.0.0", "style-loader": "^1.0.1", - "uuid": "^3.3.3", - "v8-compile-cache": "^1.1.0", - "vue": "2.5.6", - "vue-eslint-parser": "7.11.0", - "vue-loader": "^15.2.6", - "vue-template-compiler": "2.5.6", - "webpack": "^4.16.2", - "webpack-cli": "^3.1.0", - "webpack-dev-middleware": "^3.1.3", - "webpack-hot-middleware": "^2.22.3", - "zepto": "^1.2.0" + "uuid": "8.3.2", + "vue": "2.6.14", + "vue-eslint-parser": "9.0.2", + "vue-loader": "15.9.8", + "vue-template-compiler": "2.6.14", + "webpack": "5.68.0", + "webpack-cli": "4.10.0", + "webpack-dev-middleware": "5.3.3", + "webpack-hot-middleware": "2.25.1", + "webpack-merge": "5.8.0" }, "scripts": { - "clean": "rm -rf ./dist /node_modules; rm package-lock.json", - "clean-test-lint": "npm run clean; npm install ; npm run test; npm run lint", + "clean": "rm -rf ./dist ./node_modules ./package-lock.json", + "clean-test-lint": "npm run clean; npm install; npm run test; npm run lint", "start": "node app.js", - "lint": "eslint platform example src --ext .js,.vue openmct.js", - "lint:fix": "eslint platform example src --ext .js,.vue openmct.js --fix", - "build:prod": "cross-env NODE_ENV=production webpack", - "build:dev": "webpack", - "build:watch": "webpack --watch", - "test": "cross-env NODE_OPTIONS=\"--max_old_space_size=4096\" karma start --single-run", + "lint": "eslint example src e2e --ext .js,.vue openmct.js --max-warnings=0", + "lint:fix": "eslint example src e2e --ext .js,.vue openmct.js --fix", + "build:prod": "cross-env webpack --config webpack.prod.js", + "build:dev": "webpack --config webpack.dev.js", + "build:coverage": "webpack --config webpack.coverage.js", + "build:watch": "webpack --config webpack.dev.js --watch", + "info": "npx envinfo --system --browsers --npmPackages --binaries --languages --markdown", + "test": "cross-env NODE_ENV=test NODE_OPTIONS=\"--max_old_space_size=4096\" karma start --single-run", + "test:firefox": "cross-env NODE_ENV=test NODE_OPTIONS=\"--max_old_space_size=4096\" karma start --single-run --browsers=FirefoxHeadless", "test:debug": "cross-env NODE_ENV=debug karma start --no-single-run", - "test:coverage": "cross-env NODE_OPTIONS=\"--max_old_space_size=4096\" COVERAGE=true karma start --single-run", - "test:coverage:firefox": "cross-env NODE_OPTIONS=\"--max_old_space_size=4096\" karma start --single-run --browsers=FirefoxHeadless", - "test:e2e:ci": "npx playwright test --config=e2e/playwright-ci.config.js smoke", - "test:e2e:local": "npx playwright test --config=e2e/playwright-local.config.js", - "test:e2e:visual": "percy exec -- npx playwright test --config=e2e/playwright-visual.config.js default", + "test:e2e": "npx playwright test", + "test:e2e:ci": "npx playwright test --config=e2e/playwright-ci.config.js --project=chrome visual smoke branding default condition timeConductor clock persistence performance grandsearch tags", + "test:e2e:local": "npx playwright test --config=e2e/playwright-local.config.js --project=chrome", + "test:e2e:updatesnapshots": "npx playwright test --config=e2e/playwright-ci.config.js --project=chrome --grep @snapshot --update-snapshots", + "test:e2e:visual": "percy exec --config ./e2e/.percy.yml -- npx playwright test --config=e2e/playwright-visual.config.js", "test:e2e:full": "npx playwright test --config=e2e/playwright-ci.config.js", - "test:watch": "cross-env NODE_OPTIONS=\"--max_old_space_size=4096\" karma start --no-single-run", - "verify": "concurrently 'npm:test' 'npm:lint'", + "test:perf": "npx playwright test --config=e2e/playwright-performance.config.js", + "test:watch": "cross-env NODE_ENV=test NODE_OPTIONS=\"--max_old_space_size=4096\" karma start --no-single-run", "jsdoc": "jsdoc -c jsdoc.json -R API.md -r -d dist/docs/api", + "update-about-dialog-copyright": "perl -pi -e 's/20\\d\\d\\-202\\d/2014\\-2022/gm' ./src/ui/layout/AboutDialog.vue", + "update-copyright-date": "npm run update-about-dialog-copyright && grep -lr --null --include=*.{js,scss,vue,ts,sh,html,md,frag} 'Copyright (c) 20' . | xargs -r0 perl -pi -e 's/Copyright\\s\\(c\\)\\s20\\d\\d\\-20\\d\\d/Copyright \\(c\\)\\ 2014\\-2022/gm'", "otherdoc": "node docs/gendocs.js --in docs/src --out dist/docs --suppress-toc 'docs/src/index.md|docs/src/process/index.md'", "docs": "npm run jsdoc ; npm run otherdoc", + "cov:e2e:report":"nyc report --reporter=lcovonly --report-dir=./coverage/e2e", + "cov:e2e:full:publish":"codecov --disable=gcov -f ./coverage/e2e/lcov.info -F e2e-full", + "cov:e2e:ci:publish":"codecov --disable=gcov -f ./coverage/e2e/lcov.info -F e2e-ci", + "cov:unit:publish":"codecov --disable=gcov -f ./coverage/unit/lcov.info -F unit", "prepare": "npm run build:prod" }, "repository": { @@ -110,8 +115,18 @@ "url": "https://github.com/nasa/openmct.git" }, "engines": { - "node": ">=10.12.2 <16.0.0" + "node": ">=14.19.1" }, + "overrides": { + "core-js": "3.21.1" + }, + "browserslist": [ + "Firefox ESR", + "not IE 11", + "last 2 Chrome versions", + "unreleased Chrome versions", + "ios_saf > 15" + ], "author": "", "license": "Apache-2.0", "private": true