{ "name": "mattermost-desktop", "productName": "Mattermost", "version": "5.2.0-develop.1", "description": "Mattermost", "main": "dist/index.js", "author": "Mattermost, Inc. ", "license": "Apache-2.0", "desktopName": "Mattermost.Desktop", "homepage": "https://mattermost.com", "engines": { "node": ">=16.16.0" }, "repository": { "type": "git", "url": "git://github.com/mattermost/desktop.git" }, "config": { "target": "21.1.0", "arch": "x64", "target_arch": "x64", "disturl": "https://electronjs.org/headers", "runtime": "electron", "build_from_source": true }, "scripts": { "build": "npm-run-all build:*", "build:main": "webpack-cli --config webpack.config.main.js", "build:renderer": "webpack-cli --config webpack.config.renderer.js", "build-robotjs": "cross-env CL='/std:c++17' electron-rebuild -v 21.1.0 -m ./node_modules/robotjs", "start": "electron dist/ --disable-dev-mode", "restart": "npm run build && npm run start", "storybook": "start-storybook -p 9001 -c src/.storybook", "clean": "rm -rf release/ node_modules/ src/node_modules/ dist/ && find src -name '*_bundle.js' | xargs rm", "clean-install": "npm run clean && npm install", "clean-dist": "rm -rf dist/", "watch": "run-p watch:*", "watch:main": "node scripts/watch_main_and_preload.js", "watch:renderer": "webpack-dev-server --config webpack.config.renderer.js", "test": "npm-run-all lint:js test:unit test:e2e", "test:docker": "node scripts/setup_e2e_docker.js", "test:e2e": "cross-env NODE_ENV=test npm-run-all build build-robotjs test:e2e:build test:e2e:run", "test:e2e:nobuild": "cross-env NODE_ENV=test npm-run-all test:e2e:build test:e2e:run", "test:e2e:build": "webpack-cli --config webpack.config.test.js", "test:e2e:run": "electron-mocha -r @babel/register --reporter mochawesome dist/tests/e2e_bundle.js", "test:e2e:send-report": "node ./e2e/save_report.js", "test:unit": "jest", "test:unit-ci": "jest --runInBand", "test:coverage": "jest --coverage", "package:all": "cross-env NODE_ENV=production npm-run-all check-build-config package:windows package:windows-nsis package:mac package:mac-universal package:linux", "package:windows": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --win zip --x64 --ia32 --publish=never", "package:windows-nsis": "cross-env NODE_ENV=production CAN_UPGRADE=true npm-run-all check-build-config build && electron-builder --win zip nsis --x64 --ia32 --publish=never", "package:mac": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --mac --x64 --arm64 --publish=never", "package:mac-with-universal": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --mac --x64 --arm64 --universal --publish=never", "package:mas": "cross-env NODE_ENV=production IS_MAC_APP_STORE=true npm-run-all check-build-config build && electron-builder --mac mas --universal --publish=never", "package:mas-dev": "cross-env NODE_ENV=production IS_MAC_APP_STORE=true npm-run-all check-build-config build && electron-builder --mac mas-dev --universal --publish=never", "package:linux": "npm-run-all package:linux-*", "package:linux-appImage": "cross-env NODE_ENV=production CAN_UPGRADE=true npm-run-all check-build-config build && electron-builder --linux tar.gz appimage --x64 --publish=never", "package:linux-deb": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --linux tar.gz deb --x64 --publish=never", "package:linux-rpm": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --linux tar.gz rpm --x64 --publish=never", "package:linux-targz": "cross-env NODE_ENV=production npm-run-all check-build-config build && electron-builder --linux tar.gz --x64 --publish=never", "lint:js": "eslint --ignore-path .gitignore --ignore-pattern node_modules --ext .js --ext .jsx --ext .ts --ext .tsx .", "lint:js-quiet": "eslint --ignore-path .gitignore --ignore-pattern node_modules --ext .js --ext .jsx --ext .ts --ext .tsx . --quiet", "fix:js": "eslint --ignore-path .gitignore --ignore-pattern node_modules --quiet --ext .js --ext .jsx --ext .ts --ext .tsx . --fix", "check-build-config": "npm-run-all check-build-config:build check-build-config:run", "check-build-config:build": "babel ./src/common/config/buildConfig.ts -o ./dist/buildConfig.js", "check-build-config:run": "node -r @babel/register scripts/check_build_config.js", "check-types": "tsc", "prune": "ts-prune", "mmjstool": "mmjstool", "i18n-extract": "npm run mmjstool -- i18n extract-desktop", "postinstall": "electron-rebuild" }, "jest": { "clearMocks": true, "moduleDirectories": [ "", "node_modules" ], "moduleFileExtensions": [ "ts", "tsx", "js", "jsx", "json" ], "collectCoverageFrom": [ "src/common/**/*.ts", "src/main/**/*.ts" ], "testMatch": [ "**/src/**/*.test.js" ], "testPathIgnorePatterns": [ "/node_modules/", "/e2e/", "/webpack.config.test.js" ], "globals": { "__HASH_VERSION__": "5.0.0", "__CAN_UPGRADE__": false, "__IS_NIGHTLY_BUILD__": false, "__IS_MAC_APP_STORE__": false, "__DISABLE_GPU__": false }, "setupFiles": [ "./src/jestSetup.js" ], "reporters": [ "default", [ "jest-junit", { "suiteName": "unit tests", "outputName": "test-results.xml", "classNameTemplate": "{classname}-{title}", "titleTemplate": "{classname}-{title}", "ancestorSeparator": "> " } ] ] }, "devDependencies": { "@babel/cli": "7.17.6", "@babel/core": "7.17.8", "@babel/plugin-proposal-class-properties": "7.16.7", "@babel/plugin-proposal-object-rest-spread": "7.17.3", "@babel/preset-env": "7.16.11", "@babel/preset-react": "7.16.7", "@babel/register": "7.17.7", "@bloomberg/record-tuple-polyfill": "^0.0.4", "@electron/fuses": "1.6.0", "@electron/universal": "1.3.1", "@storybook/addon-actions": "6.4.20", "@storybook/react": "6.4.20", "@types/auto-launch": "5.0.2", "@types/electron-devtools-installer": "2.2.1", "@types/jest": "^29.0.0", "@types/react": "17.0.43", "@types/react-beautiful-dnd": "13.0.0", "@types/react-dom": "17.0.14", "@types/valid-url": "1.0.3", "@types/winreg": "1.2.31", "@typescript-eslint/eslint-plugin": "5.18.0", "@typescript-eslint/parser": "5.18.0", "7zip-bin": "5.1.1", "aws-sdk": "^2.1190.0", "axios": "0.26.1", "babel-eslint": "10.1.0", "babel-loader": "8.2.4", "chai": "4.3.6", "copy-webpack-plugin": "10.2.4", "cross-env": "7.0.3", "css-loader": "6.7.1", "electron": "21.1.0", "electron-builder": "23.3.3", "electron-connect": "0.6.3", "electron-mocha": "11.0.2", "electron-notarize": "1.2.1", "electron-rebuild": "3.2.9", "eslint": "7.29.0", "eslint-import-resolver-webpack": "0.13.2", "eslint-plugin-babel": "5.3.1", "eslint-plugin-cypress": "2.11.3", "eslint-plugin-header": "3.1.1", "eslint-plugin-import": "2.25.4", "eslint-plugin-mattermost": "github:mattermost/eslint-plugin-mattermost#46ad99355644a719bf32082f472048f526605181", "eslint-plugin-no-only-tests": "2.6.0", "eslint-plugin-react": "7.29.4", "eslint-plugin-react-hooks": "4.4.0", "jest": "27.5.1", "jest-junit": "13.1.0", "mini-css-extract-plugin": "2.6.0", "mmjstool": "github:mattermost/mattermost-utilities#3b4506b0f6b14fbb402f9f8ef932370e459e3773", "mocha-circleci-reporter": "0.0.3", "mochawesome": "7.1.3", "nan": "2.17.0", "node-abi": "3.26.0", "node-loader": "2.0.0", "npm-run-all": "4.1.5", "playwright": "1.23.4", "ps-node": "^0.1.6", "recursive-readdir": "^2.2.2", "robotjs": "0.6.0", "sass-loader": "12.6.0", "shebang-loader": "0.0.1", "style-loader": "3.3.1", "ts-prune": "0.10.3", "typescript": "4.6.3", "webpack": "5.71.0", "webpack-cli": "4.10.0", "webpack-dev-server": "4.8.0", "webpack-merge": "5.8.0" }, "dependencies": { "@mattermost/compass-icons": "0.1.21", "auto-launch": "5.0.5", "bootstrap": "4.6.1", "bootstrap-dark": "1.0.3", "classnames": "2.3.1", "electron-context-menu": "3.5.0", "electron-devtools-installer": "3.2.0", "electron-is-dev": "2.0.0", "electron-log": "4.4.8", "electron-updater": "5.2.1", "fs-extra": "10.0.1", "joi": "17.6.0", "macos-notification-state": "2.0.1", "pretty-bytes": "6.0.0", "react": "16.14.0", "react-beautiful-dnd": "13.1.0", "react-bootstrap": "1.6.4", "react-dom": "16.14.0", "react-intl": "5.20.10", "react-select": "5.2.2", "sass": "1.49.11", "semver": "7.3.5", "valid-url": "1.0.9", "windows-focus-assist": "1.3.0", "winreg-utf8": "0.1.1", "yargs": "17.4.0" }, "overrides": { "@electron/universal": "1.3.1" } }