forked from GoogleChrome/chromium-dashboard
-
Notifications
You must be signed in to change notification settings - Fork 0
/
package.json
134 lines (134 loc) · 7.8 KB
/
package.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
{
"name": "chromestatus-dashboard",
"description": "Chrome platform status - chromestatus.com",
"homepage": "https://www.chromestatus.com",
"private": true,
"type": "module",
"engines": {
"node": ">=18.0.0"
},
"workspaces": [
"./gen/js/*"
],
"scripts": {
"setup": "npm ci; python3.11 -m venv cs-env; npm run deps",
"clean-setup": "rm -rf node_modules cs-env; npm run setup",
"deps": ". cs-env/bin/activate; pip install -r requirements.txt --upgrade && pip install -r requirements.dev.txt --upgrade",
"dev-deps": "echo 'dev-deps is no longer needed'",
"dev-ot-key": "gcloud secrets versions access latest --secret=DEV_OT_API_KEY --out-file=ot_api_key.txt --project=cr-status-staging",
"do-tests": ". cs-env/bin/activate; curl -X POST 'http://localhost:15606/reset' && python3.11 -m unittest discover -p '*_test.py' -b",
"start-emulator-persist": "gcloud beta emulators datastore start --project=cr-status-staging --host-port=:15606 --use-firestore-in-datastore-mode",
"start-emulator": "gcloud beta emulators datastore start --project=cr-status-staging --host-port=:15606 --no-store-on-disk --use-firestore-in-datastore-mode",
"stop-emulator": "curl -X POST 'http://localhost:15606/shutdown'; pkill -f \"CloudDatastore.jar\"",
"build": "npm run tsc-clean && tsc && gulp",
"tsc-clean": "tsc --build --clean",
"watch": "npm run build && concurrently \"tsc --watch\" \"gulp watch\"",
"start-app": "npm run build && curl --retry 4 http://${DATASTORE_EMULATOR_HOST:-localhost:15606}/ --retry-connrefused && ./scripts/start_server.sh",
"debug-app": "npm run build && curl --retry 4 http://${DATASTORE_EMULATOR_HOST:-localhost:15606}/ --retry-connrefused && ./scripts/debug_server.sh",
"start": "npm stop; . cs-env/bin/activate; (npm run start-emulator-persist > /dev/null 2>&1 &); npm run start-app; status=$?; npm run stop-emulator; exit $status",
"stop": "npm run pwtests-shutdown; kill `pgrep gunicorn`",
"test": "(npm run start-emulator > /dev/null 2>&1 &); sleep 6; curl --retry 4 http://localhost:15606/ --retry-connrefused; npm run do-tests; status=$?; npm run stop-emulator; exit $status",
"webtest": "npm run build && web-test-runner \"build/**/*_test.js\" --node-resolve --playwright --browsers chromium firefox",
"webtest:watch": "npm run build && web-test-runner \"build/**/*_test.{js,ts}\" --node-resolve --playwright --watch --browsers chromium",
"webtest-coverage": "npm run build && web-test-runner \"build/**/*_test.js\" --node-resolve --playwright --coverage --browsers chromium firefox",
"do-coverage": "coverage3 erase && coverage3 run -m unittest discover -p '*_test.py' -b && coverage3 html",
"coverage": ". cs-env/bin/activate; (npm run start-emulator > /dev/null 2>&1 &); sleep 3; curl --retry 4 http://localhost:15606/ --retry-connrefused; npm run do-coverage; npm run stop-emulator",
"view-coverage": "pushd htmlcov/; python3.11 -m http.server 8080; popd",
"mypy": ". cs-env/bin/activate; mypy --ignore-missing-imports --exclude cs-env/ --exclude gen/ --exclude appengine_config.py --disable-error-code \"annotation-unchecked\" .",
"lint": "prettier client-src/js-src client-src/elements --check && eslint \"client-src/js-src/**/*.{js,ts}\" \"client-src/elements/**/*.{js,ts}\" && tsc -p tsconfig.json && lit-analyzer \"client-src/elements/chromedash-!(featurelist)*.js\"",
"lint-fix": "prettier client-src/js-src client-src/elements --write && eslint \"client-src/js-src/**/*.{js,ts}\" \"client-src/elements/**/*.{js,ts}\" --fix",
"presubmit": "npm test && npm run webtest && npm run lint && npm run mypy",
"pylint": "pylint --output-format=parseable *py api/*py framework/*py internals/*py pages/*py",
"staging": "npm run build && ./scripts/deploy_site.sh `git describe --always --abbrev=7 --match 'NOT A TAG' --dirty='-tainted'` cr-status-staging",
"staging-rc": "npm run build && ./scripts/deploy_site.sh rc cr-status-staging",
"deploy": "npm run build && ./scripts/deploy_site.sh `git describe --always --abbrev=7 --match 'NOT A TAG' --dirty='-tainted'`",
"deploy-rc": "npm run build && ./scripts/deploy_site.sh rc",
"openapi": "npm run openapi-backend && npm run openapi-frontend",
"openapi-frontend": "rm -rf gen/js/chromestatus-openapi && openapi-generator-cli generate -i openapi/api.yaml -g typescript-fetch -o gen/js/chromestatus-openapi --config openapi/js-config.yaml && npm install",
"openapi-backend": ". cs-env/bin/activate; rm -rf gen/py/chromestatus_openapi && openapi-generator-cli generate -i openapi/api.yaml -g python-flask -o gen/py/chromestatus_openapi --additional-properties=packageName=chromestatus_openapi && pip install -r requirements.txt",
"openapi-validate": "openapi-generator-cli validate -i openapi/api.yaml",
"pwtests": "npm run pwtests-shutdown; ./packages/playwright/run.sh bash -c \"./wait-for-app.sh && npx playwright test\"",
"pwtests-update": "npm run pwtests-shutdown; ./packages/playwright/run.sh bash -c \"./wait-for-app.sh && npx playwright test --update-snapshots $npm_config_filename \"",
"pwtests-report": "npm run pwtests-shutdown; ./packages/playwright/run.sh bash -c \"./wait-for-app.sh && npx playwright show-report\"",
"pwtests-ui": "npm run pwtests-shutdown; ./packages/playwright/run.sh bash -c \"./wait-for-app.sh && npx playwright test --ui --ui-port=8123\"",
"pwtests-shell": "./packages/playwright/run.sh bash",
"pwtests-debug": "./packages/playwright/run.sh debug",
"pwtests-shutdown": "./packages/playwright/run.sh down"
},
"repository": {
"type": "git",
"url": "https://github.com/GoogleChrome/chromium-dashboard"
},
"bugs": {
"url": "https://github.com/GoogleChrome/chromium-dashboard/issues"
},
"devDependencies": {
"@babel/core": "^7.25.2",
"@babel/eslint-parser": "^7.25.1",
"@babel/eslint-plugin": "^7.25.1",
"@babel/plugin-proposal-class-properties": "^7.18.6",
"@babel/plugin-proposal-decorators": "^7.24.7",
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
"@babel/plugin-transform-classes": "^7.25.0",
"@babel/preset-env": "^7.25.3",
"@babel/register": "^7.24.6",
"@open-wc/testing": "^4.0.0",
"@openapitools/openapi-generator-cli": "^2.13.4",
"@playwright/test": "1.45.3",
"@rollup/plugin-babel": "^6.0.4",
"@rollup/plugin-node-resolve": "^15.2.3",
"@rollup/plugin-typescript": "^11.1.6",
"@shoelace-style/shoelace": "^2.16.0",
"@types/jest": "^29.5.12",
"@types/node": "^22.0.0",
"@web/test-runner": "^0.18.3",
"@web/test-runner-playwright": "^0.11.0",
"acorn": ">=8.12.1",
"color-string": ">=1.9.0",
"del": "^7.1.0",
"dot-prop": ">=9.0.0",
"eslint": "^9.8.0",
"eslint-config-prettier": "^9.1.0",
"glob-parent": ">=6.0.2",
"gts": "^5.3.1",
"gulp": "^5.0.0",
"gulp-autoprefixer": "^9.0.0",
"gulp-babel": "^8.0.0",
"gulp-concat": "^2.6.1",
"gulp-license": "^1.1.0",
"gulp-rename": "^2.0.0",
"gulp-uglify-es": "^3.0.0",
"ini": ">=4.1.3",
"kind-of": ">=6.0.3",
"lit-analyzer": "^2.0.3",
"lodash": ">=4.17.21",
"lodash.template": ">=4.5.0",
"minimist": ">=1.2.8",
"path-parse": ">=1.0.7",
"prettier": "^3.3.3",
"regenerator-runtime": "^0.14.1",
"rollup": "^4.20.0",
"rollup-plugin-babel-minify": "^10.0.0",
"sinon": "^18.0.0",
"tar": ">=7.4.3",
"trim-newlines": ">=5.0.0",
"ts-lit-plugin": "^2.0.2",
"typescript": "^5.5.4"
},
"dependencies": {
"@lit/task": "^1.0.1",
"@polymer/iron-collapse": "^3.0.1",
"@polymer/iron-icon": "^3.0.1",
"@polymer/iron-iconset-svg": "^3.0.1",
"@types/google.accounts": "^0.0.14",
"@types/google.visualization": "^0.0.74",
"lit": "^3",
"node-fetch": ">=3.3.2",
"page": "^1.11.6",
"urijs": ">=1.19.11",
"yargs-parser": ">=21.1.1"
},
"overrides": {
"glob-parent@<5.1.2": ">=5.1.2"
}
}