mirror of
https://github.com/vector-im/element-web.git
synced 2024-11-15 20:54:59 +08:00
1b41dc3291
This moves the babel and postcss configs into the webpack config for ease of maintenance (and because we need variations of them). The typescript config is left outside the webpack config for IDEs to pick it up.
204 lines
7.9 KiB
JSON
204 lines
7.9 KiB
JSON
{
|
|
"name": "riot-web",
|
|
"productName": "Riot",
|
|
"main": "electron_app/src/electron-main.js",
|
|
"version": "1.5.6",
|
|
"description": "A feature-rich client for Matrix.org",
|
|
"author": "New Vector Ltd.",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/vector-im/riot-web"
|
|
},
|
|
"license": "Apache-2.0",
|
|
"files": [
|
|
"AUTHORS.rst",
|
|
"CONTRIBUTING.rst",
|
|
"deploy",
|
|
"docs",
|
|
"karma.conf.js",
|
|
"lib",
|
|
"release.sh",
|
|
"scripts",
|
|
"src",
|
|
"test",
|
|
"webpack.config.js"
|
|
],
|
|
"style": "bundle.css",
|
|
"scripts": {
|
|
"reskindex": "reskindex -h src/header",
|
|
"reskindex:watch": "reskindex -h src/header -w",
|
|
"i18n": "matrix-gen-i18n",
|
|
"prunei18n": "matrix-prune-i18n",
|
|
"diff-i18n": "cp src/i18n/strings/en_EN.json src/i18n/strings/en_EN_orig.json && yarn i18n && node scripts/compare-file.js src/i18n/strings/en_EN_orig.json src/i18n/strings/en_EN.json",
|
|
"build:res": "node scripts/copy-res.js",
|
|
"build:modernizr": "modernizr -c .modernizr.json -d src/vector/modernizr.js",
|
|
"build:compile": "yarn reskindex && babel --source-maps -d lib src",
|
|
"build:bundle": "cross-env NODE_ENV=production webpack -p --progress --bail --mode production",
|
|
"build:bundle:dev": "webpack --progress --bail --mode development",
|
|
"build:electron": "yarn clean && yarn build && yarn install:electron && electron-builder -wml --ia32 --x64",
|
|
"build:electron:linux": "yarn build && electron-builder -l --x64",
|
|
"build:electron:macos": "yarn build && electron-builder -m --x64",
|
|
"build:electron:windows": "yarn build && electron-builder -w --ia32 --x64",
|
|
"build:react-sdk": "node scripts/yarn-sub.js matrix-react-sdk build",
|
|
"build:js-sdk": "node scripts/yarn-sub.js matrix-js-sdk start:init",
|
|
"build": "yarn build:js-sdk && yarn build:react-sdk && yarn reskindex && yarn build:res && yarn build:bundle",
|
|
"build:dev": "yarn build:js-sdk && yarn build:react-sdk && yarn reskindex && yarn build:res && yarn build:bundle:dev",
|
|
"dist": "scripts/package.sh",
|
|
"install:electron": "electron-builder install-app-deps",
|
|
"electron": "yarn install:electron && electron .",
|
|
"start:res": "node scripts/copy-res.js -w",
|
|
"start:js": "webpack-dev-server --host=0.0.0.0 --output-filename=bundles/_dev_/[name].js --output-chunk-filename=bundles/_dev_/[name].js -w --progress --mode development",
|
|
"start:js:prod": "cross-env NODE_ENV=production webpack-dev-server -w --progress --mode production",
|
|
"start:js-sdk": "node scripts/yarn-sub.js matrix-js-sdk start:watch",
|
|
"start:js-sdk:prod": "cross-env NODE_ENV=production node scripts/yarn-sub.js matrix-js-sdk start:watch",
|
|
"start:react-sdk": "node scripts/yarn-sub.js matrix-react-sdk start:all",
|
|
"start:react-sdk:prod": "cross-env NODE_ENV=production node scripts/yarn-sub.js matrix-react-sdk start:all",
|
|
"start": "yarn build:js-sdk && yarn build:react-sdk && concurrently --kill-others-on-fail --prefix \"{time} [{name}]\" -n js-sdk,react-sdk,reskindex,res,riot-js \"yarn start:js-sdk\" \"yarn start:react-sdk\" \"yarn reskindex:watch\" \"yarn start:res\" \"yarn start:js\"",
|
|
"start:prod": "yarn build:js-sdk && yarn build:react-sdk && concurrently --kill-others-on-fail --prefix \"{time} [{name}]\" -n js-sdk,react-sdk,reskindex,res,riot-js \"yarn start:js-sdk:prod\" \"yarn start:react-sdk:prod\" \"yarn reskindex:watch\" \"yarn start:res\" \"yarn start:js:prod\"",
|
|
"lint": "eslint src/",
|
|
"lintall": "eslint src/ test/",
|
|
"clean": "rimraf lib webapp electron_app/dist",
|
|
"prepare": "yarn clean && yarn build:compile",
|
|
"test": "karma start --single-run=true --autoWatch=false --browsers VectorChromeHeadless",
|
|
"test-multi": "karma start"
|
|
},
|
|
"dependencies": {
|
|
"browser-request": "^0.3.3",
|
|
"favico.js": "^0.3.10",
|
|
"gemini-scrollbar": "github:matrix-org/gemini-scrollbar#91e1e566",
|
|
"gfm.css": "^1.1.2",
|
|
"highlight.js": "^9.13.1",
|
|
"matrix-js-sdk": "github:matrix-org/matrix-js-sdk#develop",
|
|
"matrix-react-sdk": "github:matrix-org/matrix-react-sdk#develop",
|
|
"modernizr": "^3.6.0",
|
|
"olm": "https://packages.matrix.org/npm/olm/olm-3.1.4.tgz",
|
|
"postcss-easings": "^2.0.0",
|
|
"prop-types": "^15.7.2",
|
|
"react": "^16.9.0",
|
|
"react-dom": "^16.9.0",
|
|
"sanitize-html": "^1.19.1",
|
|
"ua-parser-js": "^0.7.19",
|
|
"url": "^0.11.0"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/cli": "^7.7.5",
|
|
"@babel/core": "^7.7.5",
|
|
"@babel/plugin-proposal-class-properties": "^7.7.4",
|
|
"@babel/plugin-proposal-decorators": "^7.7.4",
|
|
"@babel/plugin-proposal-export-default-from": "^7.7.4",
|
|
"@babel/plugin-proposal-numeric-separator": "^7.7.4",
|
|
"@babel/plugin-proposal-object-rest-spread": "^7.7.4",
|
|
"@babel/plugin-syntax-dynamic-import": "^7.7.4",
|
|
"@babel/plugin-transform-flow-comments": "^7.7.4",
|
|
"@babel/plugin-transform-runtime": "^7.7.6",
|
|
"@babel/preset-env": "^7.7.6",
|
|
"@babel/preset-flow": "^7.7.4",
|
|
"@babel/preset-react": "^7.7.4",
|
|
"@babel/preset-typescript": "^7.7.4",
|
|
"@babel/register": "^7.7.4",
|
|
"@babel/runtime": "^7.7.6",
|
|
"@types/react": "^16.9.16",
|
|
"@types/react-dom": "^16.9.4",
|
|
"autoprefixer": "^9.7.3",
|
|
"babel-eslint": "^10.0.3",
|
|
"babel-loader": "^8.0.6",
|
|
"chokidar": "^2.0.4",
|
|
"concurrently": "^4.0.1",
|
|
"cpx": "^1.3.2",
|
|
"cross-env": "^4.0.0",
|
|
"css-loader": "^3.3.2",
|
|
"electron-builder": "^21.2.0",
|
|
"electron-builder-squirrel-windows": "^21.2.0",
|
|
"electron-devtools-installer": "^2.2.4",
|
|
"electron-notarize": "^0.2.0",
|
|
"eslint": "^5.8.0",
|
|
"eslint-config-google": "^0.7.1",
|
|
"eslint-plugin-babel": "^4.1.2",
|
|
"eslint-plugin-flowtype": "^2.50.3",
|
|
"eslint-plugin-jest": "^23.0.4",
|
|
"eslint-plugin-react": "^7.11.1",
|
|
"eslint-plugin-react-hooks": "^2.2.0",
|
|
"expect": "^1.16.0",
|
|
"extract-text-webpack-plugin": "^4.0.0-beta.0",
|
|
"file-loader": "^5.0.2",
|
|
"fs-extra": "^0.30.0",
|
|
"html-webpack-plugin": "^3.2.0",
|
|
"json-loader": "^0.5.3",
|
|
"karma": "^3.1.2",
|
|
"karma-chrome-launcher": "^2.2.0",
|
|
"karma-cli": "^1.0.1",
|
|
"karma-logcapture-reporter": "0.0.1",
|
|
"karma-mocha": "^1.3.0",
|
|
"karma-sourcemap-loader": "^0.3.7",
|
|
"karma-spec-reporter": "0.0.31",
|
|
"karma-summary-reporter": "^1.5.1",
|
|
"karma-webpack": "4.0.0-beta.0",
|
|
"loader-utils": "^1.2.3",
|
|
"matrix-mock-request": "^1.2.3",
|
|
"matrix-react-test-utils": "^0.2.2",
|
|
"mini-css-extract-plugin": "^0.8.0",
|
|
"minimist": "^1.2.0",
|
|
"mkdirp": "^0.5.1",
|
|
"mocha": "^5.2.0",
|
|
"optimize-css-assets-webpack-plugin": "^5.0.3",
|
|
"postcss-extend": "^1.0.5",
|
|
"postcss-import": "^12.0.1",
|
|
"postcss-loader": "^3.0.0",
|
|
"postcss-mixins": "^6.2.3",
|
|
"postcss-nested": "^4.2.1",
|
|
"postcss-preset-env": "^6.7.0",
|
|
"postcss-scss": "^2.0.0",
|
|
"postcss-simple-vars": "^5.0.2",
|
|
"postcss-strip-inline-comments": "^0.1.5",
|
|
"rimraf": "^2.4.3",
|
|
"shell-escape": "^0.2.0",
|
|
"terser-webpack-plugin": "^2.3.0",
|
|
"typescript": "^3.7.3",
|
|
"webpack": "^4.41.2",
|
|
"webpack-cli": "^3.3.10",
|
|
"webpack-dev-server": "^3.9.0"
|
|
},
|
|
"build": {
|
|
"appId": "im.riot.app",
|
|
"electronVersion": "7.1.3",
|
|
"files": [
|
|
"node_modules/**",
|
|
"src/**"
|
|
],
|
|
"extraResources": [
|
|
{
|
|
"from": "electron_app/img",
|
|
"to": "img"
|
|
},
|
|
"webapp/**/*"
|
|
],
|
|
"linux": {
|
|
"target": "deb",
|
|
"category": "Network;InstantMessaging;Chat",
|
|
"maintainer": "support@riot.im",
|
|
"desktop": {
|
|
"StartupWMClass": "riot"
|
|
}
|
|
},
|
|
"deb": {
|
|
"afterInstall": "electron_app/build/linux/after-install.tpl"
|
|
},
|
|
"mac": {
|
|
"category": "public.app-category.social-networking",
|
|
"darkModeSupport": true
|
|
},
|
|
"win": {
|
|
"target": {
|
|
"target": "squirrel"
|
|
},
|
|
"sign": "scripts/electron_winSign"
|
|
},
|
|
"directories": {
|
|
"buildResources": "electron_app/build",
|
|
"output": "electron_app/dist",
|
|
"app": "electron_app"
|
|
},
|
|
"afterSign": "scripts/electron_afterSign.js"
|
|
}
|
|
}
|