session-desktop/package.json

352 lines
13 KiB
JSON
Raw Normal View History

{
2020-02-19 02:05:48 +01:00
"name": "session-desktop",
2020-01-30 04:19:07 +01:00
"productName": "Session",
"description": "Private messaging from your desktop",
2023-05-19 02:56:21 +02:00
"version": "1.11.0",
"license": "GPL-3.0",
"author": {
2022-02-18 03:03:32 +01:00
"name": "Oxen Labs",
"email": "team@oxen.io"
},
"repository": {
"type": "git",
2022-02-18 03:03:32 +01:00
"url": "https://github.com/oxen-io/session-desktop.git"
},
2022-04-01 06:42:50 +02:00
"main": "ts/mains/main_node.js",
"resolutions": {
"minimist": "^1.2.6",
"getobject": "^1.0.0",
"ansi-regex": "^4.1.1",
"async": "^2.6.4",
"moment": "^2.29.4",
"lodash": "^4.17.20",
"ini": "^1.3.6",
"ejs": "^3.1.7",
"react": "17.0.2",
"@types/react": "17.0.2",
"glob-parent": "^6.0.1",
"got": "^11.8.5",
2023-03-30 05:59:14 +02:00
"jpeg-js": "^0.4.4",
"json5": "^2.2.2",
"loader-utils": "^2.0.4",
"http-cache-semantics": "^4.1.1",
"terser": "^5.14.2",
"minimatch": "^3.0.5"
},
2014-11-23 04:36:52 +01:00
"scripts": {
"start-prod": "cross-env NODE_ENV=production NODE_APP_INSTANCE=devprod$MULTI electron .",
"start-dev": "cross-env NODE_ENV=development NODE_APP_INSTANCE=devprod$MULTI electron .",
"build-everything": "yarn clean && yarn protobuf && yarn update-git-info && yarn sass && tsc && yarn build:workers",
"build-everything:watch": "yarn clean && yarn protobuf && yarn update-git-info && yarn sass && yarn build:workers && tsc -w",
2023-06-14 08:55:55 +02:00
"build:workers": "yarn worker:utils && yarn worker:libsession",
2023-08-01 12:05:39 +02:00
"watch": "yarn clean && yarn protobuf && yarn update-git-info && yarn build-everything:watch",
2022-08-26 03:35:19 +02:00
"protobuf": "pbjs --target static-module --wrap commonjs --out ts/protobuf/compiled.js protos/*.proto && pbts --out ts/protobuf/compiled.d.ts ts/protobuf/compiled.js --force-long",
"sass": "rimraf 'stylesheets/dist/' && webpack --config=./sass.config.js",
2022-08-26 03:35:19 +02:00
"clean": "rimraf 'ts/**/*.js' 'ts/*.js' 'ts/*.js.map' 'ts/**/*.js.map' && rimraf tsconfig.tsbuildinfo;",
"lint-full": "yarn format-full && eslint .",
2022-08-26 03:35:19 +02:00
"format-full": "prettier --list-different --write \"*.{css,js,json,scss,ts,tsx}\" \"./**/*.{css,js,json,scss,ts,tsx}\"",
"integration-test": "npx playwright test",
"start-prod-test": "cross-env NODE_ENV=production NODE_APP_INSTANCE=$MULTI electron .",
2022-08-26 03:35:19 +02:00
"integration-test-snapshots": "npx playwright test -g 'profile picture' --update-snapshots",
2023-04-27 05:42:28 +02:00
"test": "mocha -r jsdom-global/register --recursive --exit --timeout 10000 \"./ts/test/**/*_test.js\"",
"build-release": "run-script-os",
2022-08-26 03:35:19 +02:00
"build-release-non-linux": "yarn build-everything && cross-env SIGNAL_ENV=production electron-builder --config.extraMetadata.environment=production --publish=never --config.directories.output=release",
"build-release:win32": "yarn build-release-non-linux",
"build-release:macos": "yarn build-release-non-linux",
"build-release:linux": "yarn sedtoDeb; yarn build-release-non-linux && yarn sedtoAppImage && yarn build-release-non-linux && yarn sedtoDeb",
"build-release-publish": "run-script-os",
"build-release-publish-non-linux": "yarn build-everything && cross-env SIGNAL_ENV=production $(yarn bin)/electron-builder --config.extraMetadata.environment=$SIGNAL_ENV --publish=always",
"build-release-publish:win32": "yarn build-release-publish-non-linux",
"build-release-publish:macos": "yarn build-release-publish-non-linux",
"build-release-publish:linux": "yarn sedtoDeb; yarn build-release-publish-non-linux && yarn sedtoAppImage && yarn build-release-publish-non-linux && yarn sedtoDeb",
"appImage": "yarn sedtoAppImage; yarn build-release-non-linux; yarn sedtoDeb",
"sedtoAppImage": "sed -i 's/\"target\": \\[\"deb\", \"rpm\", \"freebsd\"\\]/\"target\": \"AppImage\"/g' package.json",
"sedtoDeb": "sed -i 's/\"target\": \"AppImage\"/\"target\": \\[\"deb\", \"rpm\", \"freebsd\"\\]/g' package.json",
2022-08-26 03:35:19 +02:00
"ready": "yarn build-everything && yarn lint-full && yarn test",
"postinstall": "yarn patch-package && yarn electron-builder install-app-deps",
"update-git-info": "node ./build/updateLocalConfig.js",
"worker:utils": "webpack --config=./utils.worker.config.js",
"worker:libsession": "rimraf 'ts/webworker/workers/node/libsession/*.node' && webpack --config=./libsession.worker.config.js"
},
"dependencies": {
"@emoji-mart/data": "^1.1.2",
"@emoji-mart/react": "^1.1.1",
"@reduxjs/toolkit": "1.8.5",
"@signalapp/better-sqlite3": "^8.4.3",
"@types/react-mentions": "^4.1.8",
"abort-controller": "3.0.0",
"auto-bind": "^4.0.0",
"backbone": "1.3.3",
"blob-util": "2.0.2",
"blueimp-load-image": "5.14.0",
2018-12-17 01:38:06 +01:00
"buffer-crc32": "0.2.13",
2022-03-31 01:22:13 +02:00
"bunyan": "^1.8.15",
2020-06-18 02:46:52 +02:00
"bytebuffer": "^5.0.1",
"classnames": "2.2.5",
"config": "1.28.1",
"country-code-lookup": "^0.0.19",
"curve25519-js": "https://github.com/oxen-io/curve25519-js",
2019-12-12 05:31:50 +01:00
"dompurify": "^2.0.7",
"electron-localshortcut": "^3.2.1",
"electron-updater": "^4.2.2",
"emoji-mart": "^5.5.2",
"filesize": "3.6.1",
"firstline": "1.2.1",
Integration tests (#975) * add first integration test Session Checking window title Checking window count Can restore from seed * FIXME torevert once found why this crash on app close * [test] add join valid open group test * [test] validate cannot join two times the same open group * [test] move common things to common.js * [test] move tests to separate files * [test] clean * [test] add send message to open group test * [test] lint * [test] rename hooks -> common * [test] add 15s delay before considering test as slow * upgrade electron 8.0.3 and spectron 10.0.0 * [test] signin from seed: validate pubkey * Replace spellchecker in favor of typo-js * [test] refactor common calls to common.js * [test] add two different pubkey, mnemonic and displayname * [test] FIXME unsafe eval needed for now * [test] add: add friends test * [test] working multi instance tests * [test] FIXME disable snodeproxy * [test] update yarn.lock * [test] make tests more robust with restart from scratch each test * [test] add link of two devices test and hard rm of apps before start (rm -r) * remove unused file * [test] lint * [test] add registration from generated pubkey test * [test] add beginning of network stub * [test] stub "token" endpoint * [test] add test of one message on pub group pull * [test] add starting port randomize. looks to help for some bad start with multi instance * [test] add stub for one to one chats (sessions) * [test] clean code * [test] finish add friend test and stub snode server * [test] stub calls during link device test * [test] add a flag to show some logs on stubbed snode * [test] finish link of two device test. check both pubkey matches * [test] add and use function to wrap erase+start+login+stub app * [test] add method to login as friend and closed group test&messages * Revert "[test] FIXME unsafe eval needed for now" This reverts commit de5322fdae6cdab8e3b9bd9a52b7d172c9bc2d26. * [test] apply review * [test] fix lint * [test] fix existing test with new spectron version * [test] fix lint * [test] refactor page objects * [test] add delete account test * [test] add unlink of two device test * [test] make tiny waitForExists -> isExisting * [test] add checks of link new device buttons * upgrade fs-extra@9.0.0 * address pr review * [test] fix spell_check test Co-authored-by: Josh Perez <60019601+josh-signal@users.noreply.github.com>
2020-03-25 01:42:53 +01:00
"fs-extra": "9.0.0",
"glob": "7.1.2",
"image-type": "^4.1.0",
2021-06-02 08:26:22 +02:00
"ip2country": "1.0.1",
"libsession_util_nodejs": "https://github.com/oxen-io/libsession-util-nodejs/releases/download/v0.2.5/libsession_util_nodejs-v0.2.5.tar.gz",
"libsodium-wrappers-sumo": "^0.7.9",
2023-04-21 06:32:02 +02:00
"linkify-it": "^4.0.1",
"lodash": "^4.17.21",
2020-06-18 02:46:52 +02:00
"long": "^4.0.0",
"mic-recorder-to-mp3": "^2.2.2",
"moment": "^2.29.4",
"node-fetch": "^2.6.7",
2022-04-01 06:42:50 +02:00
"os-locale": "5.0.0",
2020-06-10 02:47:54 +02:00
"p-retry": "^4.2.0",
"pify": "3.0.0",
"protobufjs": "^6.11.2",
2023-08-02 06:50:35 +02:00
"rc-slider": "^10.2.1",
2021-08-04 02:52:24 +02:00
"react": "^17.0.2",
"react-contexify": "5.0.0",
2021-08-04 02:52:24 +02:00
"react-dom": "^17.0.2",
2021-09-27 05:57:31 +02:00
"react-draggable": "^4.4.4",
2020-07-16 03:55:21 +02:00
"react-h5-audio-player": "^3.2.0",
"react-intersection-observer": "^8.30.3",
"react-mentions": "^4.4.9",
"react-qr-svg": "^2.2.1",
"react-redux": "8.0.4",
"react-toastify": "^6.0.9",
2023-08-02 06:50:35 +02:00
"react-use": "^17.4.0",
"react-virtualized": "^9.22.4",
2022-03-29 04:53:28 +02:00
"read-last-lines-ts": "^1.2.1",
"redux": "4.2.0",
2019-01-14 22:49:58 +01:00
"redux-logger": "3.0.6",
"redux-persist": "^6.0.0",
2021-09-03 08:25:21 +02:00
"redux-promise-middleware": "^6.1.2",
"rimraf": "2.6.2",
"sanitize.css": "^12.0.1",
"semver": "5.4.1",
"styled-components": "5.1.1",
2023-08-02 06:50:35 +02:00
"uuid": "8.3.2",
"webrtc-adapter": "^4.1.1"
},
"devDependencies": {
"@electron/notarize": "^2.1.0",
"@playwright/test": "1.16.3",
"@types/backbone": "1.4.2",
"@types/blueimp-load-image": "5.14.4",
2021-03-05 04:52:44 +01:00
"@types/buffer-crc32": "^0.2.0",
2022-03-29 04:53:28 +02:00
"@types/bunyan": "^1.8.8",
2020-06-18 03:29:29 +02:00
"@types/bytebuffer": "^5.0.41",
"@types/chai": "4.2.18",
2020-05-22 06:04:10 +02:00
"@types/chai-as-promised": "^7.1.2",
"@types/classnames": "2.2.3",
"@types/config": "0.0.34",
"@types/dompurify": "^2.0.0",
2022-03-29 09:03:02 +02:00
"@types/electron-localshortcut": "^3.1.0",
"@types/filesize": "3.6.0",
2022-03-29 04:53:28 +02:00
"@types/firstline": "^2.0.2",
"@types/fs-extra": "5.0.5",
"@types/libsodium-wrappers-sumo": "^0.7.5",
2023-04-21 06:32:02 +02:00
"@types/linkify-it": "^3.0.2",
"@types/lodash": "^4.14.194",
"@types/mocha": "5.0.0",
"@types/node-fetch": "^2.5.7",
"@types/pify": "3.0.2",
"@types/react": "^17.0.2",
2021-08-04 02:52:24 +02:00
"@types/react-dom": "^17.0.2",
"@types/react-redux": "^7.1.24",
"@types/react-virtualized": "9.18.12",
2019-01-14 22:49:58 +01:00
"@types/redux-logger": "3.0.7",
"@types/rimraf": "2.0.2",
"@types/semver": "5.5.0",
"@types/sinon": "9.0.4",
2021-03-05 04:52:44 +01:00
"@types/styled-components": "^5.1.4",
"@types/uuid": "8.3.4",
"@typescript-eslint/eslint-plugin": "^6.1.0",
"@typescript-eslint/parser": "^6.1.0",
"chai": "^4.3.4",
Integration tests (#975) * add first integration test Session Checking window title Checking window count Can restore from seed * FIXME torevert once found why this crash on app close * [test] add join valid open group test * [test] validate cannot join two times the same open group * [test] move common things to common.js * [test] move tests to separate files * [test] clean * [test] add send message to open group test * [test] lint * [test] rename hooks -> common * [test] add 15s delay before considering test as slow * upgrade electron 8.0.3 and spectron 10.0.0 * [test] signin from seed: validate pubkey * Replace spellchecker in favor of typo-js * [test] refactor common calls to common.js * [test] add two different pubkey, mnemonic and displayname * [test] FIXME unsafe eval needed for now * [test] add: add friends test * [test] working multi instance tests * [test] FIXME disable snodeproxy * [test] update yarn.lock * [test] make tests more robust with restart from scratch each test * [test] add link of two devices test and hard rm of apps before start (rm -r) * remove unused file * [test] lint * [test] add registration from generated pubkey test * [test] add beginning of network stub * [test] stub "token" endpoint * [test] add test of one message on pub group pull * [test] add starting port randomize. looks to help for some bad start with multi instance * [test] add stub for one to one chats (sessions) * [test] clean code * [test] finish add friend test and stub snode server * [test] stub calls during link device test * [test] add a flag to show some logs on stubbed snode * [test] finish link of two device test. check both pubkey matches * [test] add and use function to wrap erase+start+login+stub app * [test] add method to login as friend and closed group test&messages * Revert "[test] FIXME unsafe eval needed for now" This reverts commit de5322fdae6cdab8e3b9bd9a52b7d172c9bc2d26. * [test] apply review * [test] fix lint * [test] fix existing test with new spectron version * [test] fix lint * [test] refactor page objects * [test] add delete account test * [test] add unlink of two device test * [test] make tiny waitForExists -> isExisting * [test] add checks of link new device buttons * upgrade fs-extra@9.0.0 * address pr review * [test] fix spell_check test Co-authored-by: Josh Perez <60019601+josh-signal@users.noreply.github.com>
2020-03-25 01:42:53 +01:00
"chai-as-promised": "^7.1.1",
"chai-bytes": "^0.1.2",
"cross-env": "^6.0.3",
"css-loader": "^6.7.2",
"dmg-builder": "23.6.0",
"electron": "25.3.0",
"electron-builder": "23.0.8",
"eslint": "^8.45.0",
"eslint-config-airbnb-base": "^15.0.0",
"eslint-config-prettier": "^8.8.0",
"eslint-plugin-import": "^2.27.5",
"eslint-plugin-mocha": "^10.1.0",
"eslint-plugin-more": "^1.0.5",
"eslint-plugin-react": "^7.33.0",
"eslint-plugin-react-hooks": "^4.6.0",
"events": "^3.3.0",
2023-08-01 12:05:39 +02:00
"jsdom": "^22.1.0",
2022-04-06 08:20:47 +02:00
"jsdom-global": "^3.0.2",
"mini-css-extract-plugin": "^2.7.5",
"mocha": "10.0.0",
2022-03-31 01:22:13 +02:00
"node-loader": "^2.0.0",
"patch-package": "^6.4.7",
"playwright": "1.16.3",
"postinstall-prepare": "^1.0.1",
"prettier": "1.19.0",
"run-script-os": "^1.1.6",
"sass": "^1.60.0",
"sass-loader": "^13.2.2",
"sinon": "9.0.2",
"ts-loader": "^9.4.2",
"typescript": "^5.1.6",
"webpack": "^5.76.3",
2023-08-01 12:05:39 +02:00
"webpack-cli": "^5.1.4"
2017-03-10 19:35:58 +01:00
},
"engines": {
"node": "18.15.0"
},
2017-03-10 19:35:58 +01:00
"build": {
2019-10-22 23:41:18 +02:00
"appId": "com.loki-project.messenger-desktop",
"afterSign": "build/notarize.js",
2022-04-21 09:10:26 +02:00
"afterPack": "build/afterPackHook.js",
"artifactName": "${name}-${os}-${arch}-${version}.${ext}",
"extraResources": {
"from": "./build/launcher-script.sh",
"to": "./launcher-script.sh"
},
2017-03-10 19:35:58 +01:00
"mac": {
2017-04-07 00:10:04 +02:00
"category": "public.app-category.social-networking",
"icon": "build/icon-mac.icns",
2022-12-08 00:09:59 +01:00
"target": [
"dmg",
"zip"
],
2019-10-22 23:41:18 +02:00
"bundleVersion": "1",
"hardenedRuntime": true,
"gatekeeperAssess": false,
"entitlements": "build/entitlements.mac.plist",
2021-07-30 08:31:35 +02:00
"entitlementsInherit": "build/entitlements.mac.plist",
"extendInfo": {
"NSCameraUsageDescription": "Session requires camera access to record video.",
"NSMicrophoneUsageDescription": "Session requires microphone access to record audio."
}
2017-04-07 00:10:04 +02:00
},
2019-12-02 05:21:00 +01:00
"dmg": {
"sign": false
},
2017-04-07 00:10:04 +02:00
"win": {
"asarUnpack": "node_modules/spellchecker/vendor/hunspell_dictionaries",
2022-02-18 03:03:32 +01:00
"publisherName": "Oxen Labs",
"verifyUpdateCodeSignature": false,
2021-08-02 08:04:51 +02:00
"icon": "build/icon.ico",
"target": [
"nsis"
]
2017-03-10 19:35:58 +01:00
},
2018-03-06 00:24:56 +01:00
"nsis": {
"deleteAppDataOnUninstall": true,
"oneClick": false,
"allowToChangeInstallationDirectory": true
2018-03-06 00:24:56 +01:00
},
2017-03-10 19:35:58 +01:00
"linux": {
"category": "Network",
"desktop": {
2020-01-30 04:19:07 +01:00
"StartupWMClass": "Session"
},
"asarUnpack": "node_modules/spellchecker/vendor/hunspell_dictionaries",
2023-04-18 02:24:23 +02:00
"target": ["deb", "rpm", "freebsd"],
"icon": "build/icon-linux.icns"
2017-03-10 19:35:58 +01:00
},
2021-07-08 05:00:20 +02:00
"asarUnpack": [
"node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node",
"node_modules/libsession_util_nodejs/build/Release/libsession_util_nodejs.node",
"ts/webworker/workers/node/libsession/*.node",
"ts/mains/main_node.js"
2021-07-08 05:00:20 +02:00
],
"deb": {
"depends": [
"libnotify4",
"libxtst6",
"libnss3",
"libasound2",
"libxss1"
],
"packageCategory": "net"
},
2017-03-10 19:35:58 +01:00
"files": [
"package.json",
"config/default.json",
"config/${env.SIGNAL_ENV}.json",
"config/local-${env.SIGNAL_ENV}.json",
"background.html",
"about.html",
2018-12-06 00:09:57 +01:00
"password.html",
"debug_log.html",
"_locales/**",
2018-12-07 06:49:43 +01:00
"mnemonic_languages/**",
"protos/*",
"js/**",
"ts/**/*.js",
"ts/*.js",
"!dist/**",
"stylesheets/dist/*",
"!js/register.js",
"preload.js",
"about_preload.js",
"settings_preload.js",
"debug_log_preload.js",
2018-12-11 05:32:59 +01:00
"password_preload.js",
"images/**",
"fonts/*",
"sound/*",
"build/assets",
"node_modules/**",
"!node_modules/spellchecker/vendor/hunspell/**/*",
"!node_modules/@iconify/icons-mdi/*",
"node_modules/@iconify/icons-mdi/play-circle*",
"node_modules/@iconify/icons-mdi/pause-circle*",
"node_modules/@iconify/icons-mdi/skip-previous*",
"node_modules/@iconify/icons-mdi/skip-next*",
"node_modules/@iconify/icons-mdi/fast-forward*",
"node_modules/@iconify/icons-mdi/rewind*",
"node_modules/@iconify/icons-mdi/volume-high*",
"node_modules/@iconify/icons-mdi/volume-mute*",
"node_modules/@iconify/icons-mdi/repeat*",
"node_modules/@iconify/icons-mdi/repeat-off*",
"!node_modules/lamejs/testdata/*",
"!node_modules/@reduxjs/**/*",
"node_modules/@reduxjs/**/*.js",
"node_modules/@reduxjs/toolkit/package.json",
"!**/node_modules/*/{CHANGELOG.md,README.md,README,readme.md,readme,test,__tests__,tests,powered-test,example,examples,*.d.ts}",
"!**/node_modules/.bin",
"!**/node_modules/*/build/**",
"!**/*.{o,hprof,orig,pyc,pyo,rbc}",
"!**/._*",
2021-07-05 02:26:40 +02:00
"!**/{.DS_Store,.git,.hg,.svn,CVS,RCS,SCCS,__pycache__,thumbs.db,.gitignore,.gitattributes,.editorconfig,.flowconfig,.yarn-metadata.json,.idea,appveyor.yml,.travis.yml,circle.yml,npm-debug.log,,yarn.lock,.yarn-integrity,.map}",
"!**/*.js.map",
"!**/*.ts",
"node_modules/spellchecker/build/Release/*.node",
"node_modules/websocket/build/Release/*.node",
"node_modules/libsession_util_nodejs/build/Release/*.node",
"node_modules/socks/build/*.js",
"node_modules/socks/build/common/*.js",
"node_modules/socks/build/client/*.js",
"node_modules/smart-buffer/build/*.js",
2021-10-20 06:47:00 +02:00
"node_modules/react-draggable/build/cjs/*.js",
"node_modules/react-draggable/build/cjs/utils/*.js",
"!build/*.js",
2022-04-21 09:10:26 +02:00
"build/afterPackHook.js",
"build/launcher-script.sh",
2023-08-02 06:50:35 +02:00
"!node_modules/@signalapp/better-sqlite3/deps/*",
"!node_modules/@signalapp/better-sqlite3/src/*",
"!node_modules/@signalapp/better-sqlite3/build/Release/obj/*",
"node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node",
"!node_modules/libsession_util_nodejs/libsession-util/*",
"!node_modules/libsession_util_nodejs/src/*",
"ts/webworker/workers/node/libsession/*.node",
"!dev-app-update.yml"
2022-04-21 09:10:26 +02:00
]
}
}