-
Notifications
You must be signed in to change notification settings - Fork 336
/
package.json
117 lines (117 loc) · 3.9 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
{
"name": "mullvad-vpn",
"version": "0.0.0",
"productName": "Mullvad VPN",
"private": true,
"description": "Mullvad VPN client",
"main": "init.js",
"author": {
"name": "Mullvad VPN",
"email": "support@mullvadvpn.net"
},
"repository": "https://github.com/mullvad/mullvadvpn-app",
"license": "GPL-3.0",
"dependencies": {
"@grpc/grpc-js": "^1.9.6",
"argv-split": "^2.0.1",
"gettext-parser": "^6.0.0",
"gl-matrix": "^3.4.3",
"google-protobuf": "^3.21.0",
"node-gettext": "^3.0.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-redux": "^7.2.9",
"react-router": "^5.3.4",
"redux": "^4.2.0",
"simple-plist": "^1.3.1",
"sprintf-js": "^1.1.2",
"styled-components": "^6.1.0"
},
"optionalDependencies": {
"grpc-tools": "^1.12.4",
"nseventmonitor": "^1.0.5"
},
"devDependencies": {
"@eslint/js": "^9.10.0",
"@playwright/test": "^1.41.1",
"@types/chai": "^4.3.3",
"@types/chai-as-promised": "^7.1.5",
"@types/chai-spies": "^1.0.3",
"@types/eslint__js": "^8.42.3",
"@types/gettext-parser": "^4.0.1",
"@types/google-protobuf": "^3.15.6",
"@types/history": "^4.7.11",
"@types/mocha": "^10.0.0",
"@types/node": "^20.12.11",
"@types/node-gettext": "^3.0.3",
"@types/react": "^18.3.3",
"@types/react-dom": "^18.3.0",
"@types/react-router": "^5.1.19",
"@types/sinon": "^10.0.13",
"@types/sprintf-js": "^1.1.2",
"@types/topojson-specification": "^1.0.2",
"browserify": "^17.0.0",
"chai": "^4.3.6",
"chai-as-promised": "^7.1.1",
"chai-spies": "^1.0.0",
"cross-env": "^7.0.3",
"electron": "^30.0.4",
"electron-builder": "^24.13.3",
"electron-devtools-installer": "^3.2.0",
"eslint": "^9.10.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.2.1",
"eslint-plugin-react": "^7.36.1",
"eslint-plugin-react-compiler": "^0.0.0-experimental-42acc6a-20241001",
"eslint-plugin-react-hooks": "^0.0.0-experimental-2d16326d-20240930",
"eslint-plugin-simple-import-sort": "^12.1.1",
"gettext-extractor": "^3.5.4",
"globals": "^15.9.0",
"grpc_tools_node_protoc_ts": "^5.3.2",
"gulp": "^4.0.2",
"gulp-inject-string": "^1.1.2",
"gulp-sourcemaps": "^3.0.0",
"gulp-typescript": "^6.0.0-alpha.1",
"mocha": "^10.2.0",
"playwright": "^1.41.1",
"postject": "^1.0.0-alpha.6",
"prettier": "^3.3.3",
"sinon": "^14.0.1",
"ts-node": "^10.9.2",
"tsc-watch": "^5.0.3",
"typescript": "^5.4.5",
"typescript-eslint": "^8.6.0",
"vinyl-buffer": "^1.0.1",
"vinyl-source-stream": "^2.0.0",
"xvfb-maybe": "^0.2.1"
},
"scripts": {
"postinstall": "cross-env ELECTRON_BUILDER_ALLOW_UNRESOLVED_DEPENDENCIES=true electron-builder install-app-deps",
"build": "gulp build",
"build-proto": "gulp build-proto",
"pack-test-executable": "./scripts/build-test-executable.sh",
"build-test-executable": "npm run build && npm run pack-test-executable",
"lint": "eslint .",
"format": "prettier \"**/*.{js,css,ts,tsx}\" --write",
"tsc": "tsc -p . --noEmit",
"e2e": "npm run build && npm run e2e:no-build",
"e2e:no-build": "xvfb-maybe -- playwright test mocked",
"e2e:sequential": "npm run build && npm run e2e:sequential:no-build",
"e2e:sequential:no-build": "xvfb-maybe -- playwright test -c test/e2e/installed/playwright.config.ts --workers 1",
"e2e:update-snapshots": "npm run e2e:no-build -- --update-snapshots",
"develop": "gulp develop",
"test": "cross-env NODE_ENV=test mocha --reporter spec --require ts-node/register --require \"test/unit/setup.ts\" \"test/unit/*.spec.ts\"",
"update-translations": "node scripts/extract-translations",
"pack:mac": "gulp pack-mac",
"pack:win": "gulp pack-win",
"pack:linux": "gulp pack-linux"
},
"engines": {
"node": ">=16",
"npm": ">=8.3"
},
"volta": {
"node": "20.13.0",
"npm": "9.9.0"
}
}