summaryrefslogtreecommitdiffhomepage
path: root/gui/package.json
blob: 6298c0128612af92f79c74832f92d50b05489064 (plain)
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
{
  "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-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"
  }
}