feat: SDA-1838: upgrade electron framework to 8.x (#895)

* add support for electron 8.x

* update node-abi to latest

* 8.x: fix unit tests

* upgrade dependencies

Signed-off-by: Vishwas Shashidhar <vishwas.shashidhar@symphony.com>

* SDA-1838: removed unwanted console log

Signed-off-by: Vishwas Shashidhar <vishwas.shashidhar@symphony.com>

* SDA-1838: refactor code

Signed-off-by: Vishwas Shashidhar <vishwas.shashidhar@symphony.com>
This commit is contained in:
Vishwas Shashidhar
2020-03-06 14:37:18 +05:30
committed by GitHub
parent 99bc33aa46
commit 82543debfb
10 changed files with 475 additions and 294 deletions

609
package-lock.json generated
View File

@@ -1,6 +1,6 @@
{
"name": "symphony",
"version": "6.1.0",
"version": "8.0.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -66,6 +66,48 @@
}
}
},
"@electron/get": {
"version": "1.8.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/@electron/get/-/get-1.8.0.tgz",
"integrity": "sha1-sQMg4rDsVRZeCXhiaVvjSyNu8LU=",
"dev": true,
"requires": {
"debug": "^4.1.1",
"env-paths": "^2.2.0",
"fs-extra": "^8.1.0",
"global-agent": "^2.0.2",
"global-tunnel-ng": "^2.7.1",
"got": "^9.6.0",
"sanitize-filename": "^1.6.2",
"sumchecker": "^3.0.1"
},
"dependencies": {
"debug": {
"version": "4.1.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/debug/-/debug-4.1.1.tgz",
"integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=",
"dev": true,
"requires": {
"ms": "^2.1.1"
}
},
"ms": {
"version": "2.1.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ms/-/ms-2.1.2.tgz",
"integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
"dev": true
},
"sanitize-filename": {
"version": "1.6.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/sanitize-filename/-/sanitize-filename-1.6.3.tgz",
"integrity": "sha1-dV69dSBFkxl34wsgJdNA18kJA3g=",
"dev": true,
"requires": {
"truncate-utf8-bytes": "^1.0.0"
}
}
}
},
"@felixrieseberg/spellchecker": {
"version": "4.0.12",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/@felixrieseberg/spellchecker/-/spellchecker-4.0.12.tgz",
@@ -2167,6 +2209,13 @@
"integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
"dev": true
},
"boolean": {
"version": "3.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/boolean/-/boolean-3.0.1.tgz",
"integrity": "sha1-NezytKLuGRsLRJhvFOtfBSpcu08=",
"dev": true,
"optional": true
},
"boxen": {
"version": "3.2.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/boxen/-/boxen-3.2.0.tgz",
@@ -3775,6 +3824,17 @@
"typedarray": "^0.0.6"
}
},
"config-chain": {
"version": "1.1.12",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/config-chain/-/config-chain-1.1.12.tgz",
"integrity": "sha1-D96NCRIA616AjK8l/mGMAvSOTvo=",
"dev": true,
"optional": true,
"requires": {
"ini": "^1.3.4",
"proto-list": "~1.2.1"
}
},
"configstore": {
"version": "4.0.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/configstore/-/configstore-4.0.0.tgz",
@@ -4360,6 +4420,13 @@
"integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=",
"dev": true
},
"detect-node": {
"version": "2.0.4",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/detect-node/-/detect-node-2.0.4.tgz",
"integrity": "sha1-AU7o+PZpxcWAI9pkuBecCDooxGw=",
"dev": true,
"optional": true
},
"detective": {
"version": "5.1.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/detective/-/detective-5.1.0.tgz",
@@ -4736,20 +4803,20 @@
"dev": true
},
"electron": {
"version": "6.1.7",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/electron/-/electron-6.1.7.tgz",
"integrity": "sha1-pnaV+B9ct3Hjlbz5cRVgUg40fFQ=",
"version": "8.0.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/electron/-/electron-8.0.3.tgz",
"integrity": "sha1-4EiLqqaSkeJtyYHqm8dbXaksXIg=",
"dev": true,
"requires": {
"@types/node": "^10.12.18",
"electron-download": "^4.1.0",
"@electron/get": "^1.0.1",
"@types/node": "^12.0.12",
"extract-zip": "^1.0.3"
},
"dependencies": {
"@types/node": {
"version": "10.17.13",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/@types/node/-/node-10.17.13.tgz",
"integrity": "sha1-zOvNuZC9YTnNFuhMOdwvsQI8qQw=",
"version": "12.12.29",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/@types/node/-/node-12.12.29.tgz",
"integrity": "sha1-RidfAotORjuaxf78HQi8ZswZPyU=",
"dev": true
}
}
@@ -4976,50 +5043,10 @@
"unused-filename": "^1.0.0"
}
},
"electron-download": {
"version": "4.1.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/electron-download/-/electron-download-4.1.1.tgz",
"integrity": "sha1-AuaVVnBcxFblIPngNVVu1aAV6+g=",
"dev": true,
"requires": {
"debug": "^3.0.0",
"env-paths": "^1.0.0",
"fs-extra": "^4.0.1",
"minimist": "^1.2.0",
"nugget": "^2.0.1",
"path-exists": "^3.0.0",
"rc": "^1.2.1",
"semver": "^5.4.1",
"sumchecker": "^2.0.2"
},
"dependencies": {
"debug": {
"version": "3.2.6",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/debug/-/debug-3.2.6.tgz",
"integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=",
"dev": true,
"requires": {
"ms": "^2.1.1"
}
},
"minimist": {
"version": "1.2.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
},
"ms": {
"version": "2.1.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ms/-/ms-2.1.2.tgz",
"integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
"dev": true
}
}
},
"electron-fetch": {
"version": "1.3.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/electron-fetch/-/electron-fetch-1.3.0.tgz",
"integrity": "sha1-ANm7H+embdw/6lOJEOAbJv7pq7U=",
"version": "1.4.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/electron-fetch/-/electron-fetch-1.4.0.tgz",
"integrity": "sha1-qDDUAPitNYrLqbPFkebtR3kWusU=",
"requires": {
"encoding": "^0.1.12"
}
@@ -5036,9 +5063,9 @@
}
},
"electron-log": {
"version": "3.0.7",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/electron-log/-/electron-log-3.0.7.tgz",
"integrity": "sha1-v9upSJyEsTAdYGcCj84vTLL4nX8="
"version": "4.0.7",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/electron-log/-/electron-log-4.0.7.tgz",
"integrity": "sha1-ObAQ0tvXscQ+b6GujGvitTaiFcE="
},
"electron-publish": {
"version": "21.2.0",
@@ -5410,6 +5437,13 @@
"integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=",
"dev": true
},
"encodeurl": {
"version": "1.0.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/encodeurl/-/encodeurl-1.0.2.tgz",
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
"dev": true,
"optional": true
},
"encoding": {
"version": "0.1.12",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/encoding/-/encoding-0.1.12.tgz",
@@ -5433,9 +5467,9 @@
"dev": true
},
"env-paths": {
"version": "1.0.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/env-paths/-/env-paths-1.0.0.tgz",
"integrity": "sha1-QWgTO0K7BcOKNbGuQ5fIKYqzaeA=",
"version": "2.2.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/env-paths/-/env-paths-2.2.0.tgz",
"integrity": "sha1-zcpVfcAJFSkX1hZuL+vh8DloXkM=",
"dev": true
},
"enzyme": {
@@ -5577,6 +5611,13 @@
"next-tick": "^1.0.0"
}
},
"es6-error": {
"version": "4.1.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/es6-error/-/es6-error-4.1.1.tgz",
"integrity": "sha1-njr0B0Wd7tR+mpH5uIWoTrBcVh0=",
"dev": true,
"optional": true
},
"es6-iterator": {
"version": "2.0.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/es6-iterator/-/es6-iterator-2.0.3.tgz",
@@ -5895,14 +5936,14 @@
}
},
"ffi-napi": {
"version": "2.4.5",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ffi-napi/-/ffi-napi-2.4.5.tgz",
"integrity": "sha1-EugH8jj4xo/AlPxGwc5Rk8KrZPg=",
"version": "2.4.6",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ffi-napi/-/ffi-napi-2.4.6.tgz",
"integrity": "sha1-3W3/J6w8baiSKaiHZIBPXi5uef0=",
"requires": {
"bindings": "^1.3.0",
"debug": "^3.1.0",
"get-uv-event-loop-napi-h": "^1.0.5",
"node-addon-api": "1.5.0",
"node-addon-api": "1.6.1",
"ref-napi": "^1.4.0",
"ref-struct-di": "^1.1.0"
},
@@ -5959,9 +6000,9 @@
}
},
"filesize": {
"version": "4.1.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/filesize/-/filesize-4.1.2.tgz",
"integrity": "sha1-/NVwrxNTzql4l75k9WGDrbmVmUs="
"version": "6.1.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/filesize/-/filesize-6.1.0.tgz",
"integrity": "sha1-6Bvap4DiRR1xTXHA16TzI403rQA="
},
"fill-range": {
"version": "2.2.4",
@@ -6374,14 +6415,22 @@
"integrity": "sha1-a+Dem+mYzhavivwkSXue6bfM2a0="
},
"fs-extra": {
"version": "4.0.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/fs-extra/-/fs-extra-4.0.3.tgz",
"integrity": "sha1-DYUhIuW8W+tFP7Ao6cDJvzY0DJQ=",
"version": "8.1.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/fs-extra/-/fs-extra-8.1.0.tgz",
"integrity": "sha1-SdQ8RaiM2Wd2aMt74bRu/bjS4cA=",
"dev": true,
"requires": {
"graceful-fs": "^4.1.2",
"graceful-fs": "^4.2.0",
"jsonfile": "^4.0.0",
"universalify": "^0.1.0"
},
"dependencies": {
"graceful-fs": {
"version": "4.2.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/graceful-fs/-/graceful-fs-4.2.3.tgz",
"integrity": "sha1-ShL/G2A3bvCYYsIJPt2Qgyi+hCM=",
"dev": true
}
}
},
"fs-extra-p": {
@@ -7116,14 +7165,14 @@
}
},
"get-symbol-from-current-process-h": {
"version": "1.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/get-symbol-from-current-process-h/-/get-symbol-from-current-process-h-1.0.1.tgz",
"integrity": "sha1-fkgJCH59Lzp4p4Wzb3h+IYO6TF0="
"version": "1.0.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/get-symbol-from-current-process-h/-/get-symbol-from-current-process-h-1.0.2.tgz",
"integrity": "sha1-UQr1Lq74c/cCiFTDN39H97sgAmU="
},
"get-uv-event-loop-napi-h": {
"version": "1.0.5",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/get-uv-event-loop-napi-h/-/get-uv-event-loop-napi-h-1.0.5.tgz",
"integrity": "sha1-GQSh3B+m33SHyejq+HMCvMnjPkc=",
"version": "1.0.6",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/get-uv-event-loop-napi-h/-/get-uv-event-loop-napi-h-1.0.6.tgz",
"integrity": "sha1-QrCwa3TD7SH7rI58coRf23ogAgg=",
"requires": {
"get-symbol-from-current-process-h": "^1.0.1"
}
@@ -7251,6 +7300,38 @@
}
}
},
"global-agent": {
"version": "2.1.8",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/global-agent/-/global-agent-2.1.8.tgz",
"integrity": "sha1-mdFTZissBMvBGZ/7wIGjqmVqxQ8=",
"dev": true,
"optional": true,
"requires": {
"boolean": "^3.0.0",
"core-js": "^3.6.4",
"es6-error": "^4.1.1",
"matcher": "^2.1.0",
"roarr": "^2.15.2",
"semver": "^7.1.2",
"serialize-error": "^5.0.0"
},
"dependencies": {
"core-js": {
"version": "3.6.4",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/core-js/-/core-js-3.6.4.tgz",
"integrity": "sha1-RAqDU2tFgRS5yyrBWAujd9xHBkc=",
"dev": true,
"optional": true
},
"semver": {
"version": "7.1.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/semver/-/semver-7.1.3.tgz",
"integrity": "sha1-5DRc5zBxxT8zZEXPwZ77HDEd8qY=",
"dev": true,
"optional": true
}
}
},
"global-dirs": {
"version": "0.1.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/global-dirs/-/global-dirs-0.1.1.tgz",
@@ -7284,6 +7365,29 @@
"which": "^1.2.14"
}
},
"global-tunnel-ng": {
"version": "2.7.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/global-tunnel-ng/-/global-tunnel-ng-2.7.1.tgz",
"integrity": "sha1-0DtRAt/eOmmRT17n2GdhyjXVfY8=",
"dev": true,
"optional": true,
"requires": {
"encodeurl": "^1.0.2",
"lodash": "^4.17.10",
"npm-conf": "^1.1.3",
"tunnel": "^0.0.6"
}
},
"globalthis": {
"version": "1.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/globalthis/-/globalthis-1.0.1.tgz",
"integrity": "sha1-QBFvXZwHH56PsAN2VN8as6g7fvk=",
"dev": true,
"optional": true,
"requires": {
"define-properties": "^1.1.3"
}
},
"globby": {
"version": "6.1.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/globby/-/globby-6.1.0.tgz",
@@ -10292,6 +10396,25 @@
}
}
},
"matcher": {
"version": "2.1.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/matcher/-/matcher-2.1.0.tgz",
"integrity": "sha1-ZOEEHBW5k+I7eG+TMgp0dL+DPCg=",
"dev": true,
"optional": true,
"requires": {
"escape-string-regexp": "^2.0.0"
},
"dependencies": {
"escape-string-regexp": {
"version": "2.0.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz",
"integrity": "sha1-owME6Z2qMuI7L9IPUbq9B8/8o0Q=",
"dev": true,
"optional": true
}
}
},
"math-random": {
"version": "1.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/math-random/-/math-random-1.0.1.tgz",
@@ -10627,18 +10750,18 @@
"dev": true
},
"node-abi": {
"version": "2.13.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/node-abi/-/node-abi-2.13.0.tgz",
"integrity": "sha1-4vLsRE0Kyj6hs4dLbeQdFmWCj2M=",
"version": "2.14.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/node-abi/-/node-abi-2.14.0.tgz",
"integrity": "sha1-JGUOJOj/rSthNSUZJj8M9OLdv+k=",
"dev": true,
"requires": {
"semver": "^5.4.1"
}
},
"node-addon-api": {
"version": "1.5.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/node-addon-api/-/node-addon-api-1.5.0.tgz",
"integrity": "sha1-Vb5rPaNudG9LHyrxbCrfZ2R9H/g="
"version": "1.6.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/node-addon-api/-/node-addon-api-1.6.1.tgz",
"integrity": "sha1-qYgcjbxkALrG3e3LluzPgFFnhTY="
},
"node-gyp": {
"version": "3.8.0",
@@ -10731,6 +10854,26 @@
"once": "^1.3.2"
}
},
"npm-conf": {
"version": "1.1.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/npm-conf/-/npm-conf-1.1.3.tgz",
"integrity": "sha1-JWzEe9DiGMJZxOlVC/QTvCGSr/k=",
"dev": true,
"optional": true,
"requires": {
"config-chain": "^1.1.11",
"pify": "^3.0.0"
},
"dependencies": {
"pify": {
"version": "3.0.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/pify/-/pify-3.0.0.tgz",
"integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
"dev": true,
"optional": true
}
}
},
"npm-run-path": {
"version": "2.0.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/npm-run-path/-/npm-run-path-2.0.2.tgz",
@@ -10760,29 +10903,6 @@
"boolbase": "~1.0.0"
}
},
"nugget": {
"version": "2.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/nugget/-/nugget-2.0.1.tgz",
"integrity": "sha1-IBCVpIfhrTYIGzQy+jytpPjQcbA=",
"dev": true,
"requires": {
"debug": "^2.1.3",
"minimist": "^1.1.0",
"pretty-bytes": "^1.0.2",
"progress-stream": "^1.1.0",
"request": "^2.45.0",
"single-line-log": "^1.1.2",
"throttleit": "0.0.2"
},
"dependencies": {
"minimist": {
"version": "1.2.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
}
}
},
"number-is-nan": {
"version": "1.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/number-is-nan/-/number-is-nan-1.0.1.tgz",
@@ -10839,12 +10959,6 @@
"integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=",
"dev": true
},
"object-keys": {
"version": "0.4.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/object-keys/-/object-keys-0.4.0.tgz",
"integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=",
"dev": true
},
"object-visit": {
"version": "1.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/object-visit/-/object-visit-1.0.1.tgz",
@@ -11568,16 +11682,6 @@
"integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=",
"dev": true
},
"pretty-bytes": {
"version": "1.0.4",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/pretty-bytes/-/pretty-bytes-1.0.4.tgz",
"integrity": "sha1-CiLoIQYJrTVUL4yNXSFZr/B1HIQ=",
"dev": true,
"requires": {
"get-stdin": "^4.0.1",
"meow": "^3.1.0"
}
},
"pretty-format": {
"version": "23.6.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/pretty-format/-/pretty-format-23.6.0.tgz",
@@ -11625,61 +11729,6 @@
"integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=",
"dev": true
},
"progress-stream": {
"version": "1.2.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/progress-stream/-/progress-stream-1.2.0.tgz",
"integrity": "sha1-LNPP6jO6OonJwSHsM0er6asSX3c=",
"dev": true,
"requires": {
"speedometer": "~0.1.2",
"through2": "~0.2.3"
},
"dependencies": {
"isarray": {
"version": "0.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
"dev": true
},
"readable-stream": {
"version": "1.1.14",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/readable-stream/-/readable-stream-1.1.14.tgz",
"integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
"dev": true,
"requires": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.1",
"isarray": "0.0.1",
"string_decoder": "~0.10.x"
}
},
"string_decoder": {
"version": "0.10.31",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/string_decoder/-/string_decoder-0.10.31.tgz",
"integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
"dev": true
},
"through2": {
"version": "0.2.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/through2/-/through2-0.2.3.tgz",
"integrity": "sha1-6zKE2k6jEbbMis42U3SKUqvyWj8=",
"dev": true,
"requires": {
"readable-stream": "~1.1.9",
"xtend": "~2.1.1"
}
},
"xtend": {
"version": "2.1.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/xtend/-/xtend-2.1.2.tgz",
"integrity": "sha1-bv7MKk2tjmlixJAbM3znuoe10os=",
"dev": true,
"requires": {
"object-keys": "~0.4.0"
}
}
}
},
"promise": {
"version": "7.3.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/promise/-/promise-7.3.1.tgz",
@@ -11720,6 +11769,13 @@
"reflect.ownkeys": "^0.2.0"
}
},
"proto-list": {
"version": "1.2.4",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/proto-list/-/proto-list-1.2.4.tgz",
"integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=",
"dev": true,
"optional": true
},
"prr": {
"version": "1.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/prr/-/prr-1.0.1.tgz",
@@ -11892,9 +11948,9 @@
}
},
"react": {
"version": "16.9.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/react/-/react-16.9.0.tgz",
"integrity": "sha1-QLovmvE7waONddvy9DWaUYXE96o=",
"version": "16.13.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/react/-/react-16.13.0.tgz",
"integrity": "sha1-0EbqvN9k5Fe77tHnkuI14bmTTPc=",
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1",
@@ -11902,14 +11958,25 @@
}
},
"react-dom": {
"version": "16.9.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/react-dom/-/react-dom-16.9.0.tgz",
"integrity": "sha1-XmVSel4m8irjcBExvMyu6fsNOWI=",
"version": "16.13.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/react-dom/-/react-dom-16.13.0.tgz",
"integrity": "sha1-zd5UtI656KDKGz3JlD2btAm4GGY=",
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1",
"prop-types": "^15.6.2",
"scheduler": "^0.15.0"
"scheduler": "^0.19.0"
},
"dependencies": {
"scheduler": {
"version": "0.19.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/scheduler/-/scheduler-0.19.0.tgz",
"integrity": "sha1-pxXVYwLeQD33QvSpvhGXWzL1aY0=",
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1"
}
}
}
},
"react-is": {
@@ -12339,13 +12406,13 @@
}
},
"ref-napi": {
"version": "1.4.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ref-napi/-/ref-napi-1.4.1.tgz",
"integrity": "sha1-qxKcXUwrTMu1BQPAnDFTNKWjp3s=",
"version": "1.4.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ref-napi/-/ref-napi-1.4.3.tgz",
"integrity": "sha1-yUlaRnChhlWz1FRyKEzB/awD4xQ=",
"requires": {
"bindings": "^1.3.0",
"debug": "^3.1.0",
"node-addon-api": "^1.6.2"
"node-addon-api": "^2.0.0"
},
"dependencies": {
"debug": {
@@ -12362,9 +12429,9 @@
"integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk="
},
"node-addon-api": {
"version": "1.7.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/node-addon-api/-/node-addon-api-1.7.1.tgz",
"integrity": "sha1-z4E81pu42RAPa9ymdV/CaPVKxJI="
"version": "2.0.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/node-addon-api/-/node-addon-api-2.0.0.tgz",
"integrity": "sha1-+a+413epFSUkSwF3XqDdvhElSDs="
}
}
},
@@ -12685,6 +12752,30 @@
"inherits": "^2.0.1"
}
},
"roarr": {
"version": "2.15.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/roarr/-/roarr-2.15.2.tgz",
"integrity": "sha1-NPYimuPIwSFnxK5g9Y/nXnmh45Q=",
"dev": true,
"optional": true,
"requires": {
"boolean": "^3.0.0",
"detect-node": "^2.0.4",
"globalthis": "^1.0.1",
"json-stringify-safe": "^5.0.1",
"semver-compare": "^1.0.0",
"sprintf-js": "^1.1.2"
},
"dependencies": {
"sprintf-js": {
"version": "1.1.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/sprintf-js/-/sprintf-js-1.1.2.tgz",
"integrity": "sha1-2hdlJiv4wPVxdJ8q1sJjACB65nM=",
"dev": true,
"optional": true
}
}
},
"rst-selector-parser": {
"version": "2.2.3",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz",
@@ -13060,6 +13151,7 @@
"version": "0.15.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/scheduler/-/scheduler-0.15.0.tgz",
"integrity": "sha1-a/z4D/hQsoD+1K7sxlE7wLTxf44=",
"dev": true,
"requires": {
"loose-envify": "^1.1.0",
"object-assign": "^4.1.1"
@@ -13084,6 +13176,13 @@
"integrity": "sha1-ff3YgUvbfKvHvg+x1zTPtmyUBHc=",
"dev": true
},
"semver-compare": {
"version": "1.0.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/semver-compare/-/semver-compare-1.0.0.tgz",
"integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=",
"dev": true,
"optional": true
},
"semver-diff": {
"version": "2.1.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/semver-diff/-/semver-diff-2.1.0.tgz",
@@ -13102,6 +13201,25 @@
"sver-compat": "^1.5.0"
}
},
"serialize-error": {
"version": "5.0.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/serialize-error/-/serialize-error-5.0.0.tgz",
"integrity": "sha1-p+u82wOl1xpu2EYf/g/Boa/tYqw=",
"dev": true,
"optional": true,
"requires": {
"type-fest": "^0.8.0"
},
"dependencies": {
"type-fest": {
"version": "0.8.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/type-fest/-/type-fest-0.8.1.tgz",
"integrity": "sha1-CeJJ696FHTseSNJ8EFREZn8XuD0=",
"dev": true,
"optional": true
}
}
},
"set-blocking": {
"version": "2.0.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/set-blocking/-/set-blocking-2.0.0.tgz",
@@ -13213,15 +13331,6 @@
"integrity": "sha1-c0TLuLbib7J9ZrL8hvn21Zl1IcY=",
"dev": true
},
"single-line-log": {
"version": "1.1.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/single-line-log/-/single-line-log-1.1.2.tgz",
"integrity": "sha1-wvg/Jzo+GhbtsJlWYdoO1e8DM2Q=",
"dev": true,
"requires": {
"string-width": "^1.0.1"
}
},
"sisteransi": {
"version": "0.1.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/sisteransi/-/sisteransi-0.1.1.tgz",
@@ -13449,12 +13558,6 @@
"integrity": "sha1-enzShHDMbToc/m1miG9rxDDTrIc=",
"dev": true
},
"speedometer": {
"version": "0.1.4",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/speedometer/-/speedometer-0.1.4.tgz",
"integrity": "sha1-mHbb0qFp0xFUAtSObqYynIgWpQ0=",
"dev": true
},
"split-string": {
"version": "3.1.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/split-string/-/split-string-3.1.0.tgz",
@@ -13774,12 +13877,29 @@
}
},
"sumchecker": {
"version": "2.0.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/sumchecker/-/sumchecker-2.0.2.tgz",
"integrity": "sha1-D0LBDl0F2l1C7qPlbDOZo31sWz4=",
"version": "3.0.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/sumchecker/-/sumchecker-3.0.1.tgz",
"integrity": "sha1-Y3fplnlauwttNI6bPh37JDRajkI=",
"dev": true,
"requires": {
"debug": "^2.2.0"
"debug": "^4.1.0"
},
"dependencies": {
"debug": {
"version": "4.1.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/debug/-/debug-4.1.1.tgz",
"integrity": "sha1-O3ImAlUQnGtYnO4FDx1RYTlmR5E=",
"dev": true,
"requires": {
"ms": "^2.1.1"
}
},
"ms": {
"version": "2.1.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ms/-/ms-2.1.2.tgz",
"integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
"dev": true
}
}
},
"supports-color": {
@@ -13889,11 +14009,65 @@
"ref-napi": "1.4.1"
},
"dependencies": {
"debug": {
"version": "3.2.6",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/debug/-/debug-3.2.6.tgz",
"integrity": "sha1-6D0X3hbYp++3cX7b5fsQE17uYps=",
"optional": true,
"requires": {
"ms": "^2.1.1"
}
},
"electron-log": {
"version": "2.2.16",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/electron-log/-/electron-log-2.2.16.tgz",
"integrity": "sha1-xE/96lGukMvoUdJefNG6tW/bMo8=",
"optional": true
},
"ffi-napi": {
"version": "2.4.5",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ffi-napi/-/ffi-napi-2.4.5.tgz",
"integrity": "sha1-EugH8jj4xo/AlPxGwc5Rk8KrZPg=",
"optional": true,
"requires": {
"bindings": "^1.3.0",
"debug": "^3.1.0",
"get-uv-event-loop-napi-h": "^1.0.5",
"node-addon-api": "1.5.0",
"ref-napi": "^1.4.0",
"ref-struct-di": "^1.1.0"
}
},
"ms": {
"version": "2.1.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ms/-/ms-2.1.2.tgz",
"integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=",
"optional": true
},
"node-addon-api": {
"version": "1.5.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/node-addon-api/-/node-addon-api-1.5.0.tgz",
"integrity": "sha1-Vb5rPaNudG9LHyrxbCrfZ2R9H/g=",
"optional": true
},
"ref-napi": {
"version": "1.4.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/ref-napi/-/ref-napi-1.4.1.tgz",
"integrity": "sha1-qxKcXUwrTMu1BQPAnDFTNKWjp3s=",
"optional": true,
"requires": {
"bindings": "^1.3.0",
"debug": "^3.1.0",
"node-addon-api": "^1.6.2"
},
"dependencies": {
"node-addon-api": {
"version": "1.7.1",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/node-addon-api/-/node-addon-api-1.7.1.tgz",
"integrity": "sha1-z4E81pu42RAPa9ymdV/CaPVKxJI=",
"optional": true
}
}
}
}
},
@@ -13918,9 +14092,9 @@
}
},
"systeminformation": {
"version": "4.21.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/systeminformation/-/systeminformation-4.21.0.tgz",
"integrity": "sha1-BAmd3CGK1CmQxL6A98IexO/2upw="
"version": "4.22.5",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/systeminformation/-/systeminformation-4.22.5.tgz",
"integrity": "sha1-wIUSs4urTRrNJhyQh1c4iPgLsR4="
},
"tar": {
"version": "2.2.1",
@@ -14030,12 +14204,6 @@
"integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=",
"dev": true
},
"throttleit": {
"version": "0.0.2",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/throttleit/-/throttleit-0.0.2.tgz",
"integrity": "sha1-z+34jmDADdlpe2H90qg0OptoDq8=",
"dev": true
},
"through": {
"version": "2.3.8",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/through/-/through-2.3.8.tgz",
@@ -14300,6 +14468,13 @@
"integrity": "sha1-PwUlHuF5BN/QZ3VGZw25ZRaCuBE=",
"dev": true
},
"tunnel": {
"version": "0.0.6",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/tunnel/-/tunnel-0.0.6.tgz",
"integrity": "sha1-cvExSzSlsZLbASMk3yzFh8pH+Sw=",
"dev": true,
"optional": true
},
"tunnel-agent": {
"version": "0.6.0",
"resolved": "https://repo.symphony.com/artifactory/api/npm/npm-virtual-dev/tunnel-agent/-/tunnel-agent-0.6.0.tgz",

View File

@@ -108,7 +108,7 @@
"browserify": "16.2.3",
"cross-env": "5.2.0",
"del": "3.0.0",
"electron": "6.1.5",
"electron": "8.0.3",
"electron-builder": "21.2.0",
"electron-builder-squirrel-windows": "20.38.3",
"electron-icon-maker": "0.0.4",
@@ -123,7 +123,7 @@
"jest": "23.6.0",
"jest-html-reporter": "2.4.2",
"less": "3.8.1",
"node-abi": "^2.13.0",
"node-abi": "^2.14.0",
"ts-jest": "23.10.5",
"tslint": "5.11.0",
"typescript": "3.1.1"
@@ -134,16 +134,16 @@
"auto-launch": "5.0.5",
"classnames": "2.2.6",
"electron-dl": "1.14.0",
"electron-fetch": "1.3.0",
"electron-log": "3.0.7",
"electron-fetch": "1.4.0",
"electron-log": "4.0.7",
"electron-spellchecker": "git+https://github.com/symphonyoss/electron-spellchecker.git#v2.3.0",
"ffi-napi": "2.4.5",
"filesize": "4.1.2",
"react": "16.9.0",
"react-dom": "16.9.0",
"ref-napi": "1.4.1",
"ffi-napi": "2.4.6",
"filesize": "6.1.0",
"react": "16.13.0",
"react-dom": "16.13.0",
"ref-napi": "1.4.3",
"shell-path": "2.1.0",
"systeminformation": "4.21.0"
"systeminformation": "4.22.5"
},
"optionalDependencies": {
"screen-snippet": "git+https://github.com/symphonyoss/ScreenSnippet2.git#v1.0.6",

View File

@@ -33,7 +33,7 @@ describe('app cache handler', () => {
const spyFn = 'clearCache';
const spy = jest.spyOn(session.defaultSession, spyFn);
cleanUpAppCache();
expect(spy).lastCalledWith(expect.any(Function));
expect(spy).toBeCalled();
});
it('should call `createAppCacheFile` correctly', () => {

View File

@@ -1,6 +1,6 @@
import { showLoadFailure, showNetworkConnectivityError } from '../src/app/dialog-handler';
import { windowHandler } from '../src/app/window-handler';
import { dialog, ipcRenderer } from './__mocks__/electron';
import { BrowserWindow, dialog, ipcRenderer } from './__mocks__/electron';
jest.mock('../src/app/window-handler', () => {
return {
@@ -45,6 +45,9 @@ describe('dialog handler', () => {
const certificate = null;
it('should return false when buttonId is 1', async (done) => {
BrowserWindow.fromWebContents = jest.fn(() => {
return { isDestroyed: jest.fn(() => false) };
});
dialog.showMessageBox = jest.fn(() => {
return { response: 1 };
});
@@ -53,6 +56,9 @@ describe('dialog handler', () => {
});
it('should return true when buttonId is not 1', async (done) => {
BrowserWindow.fromWebContents = jest.fn(() => {
return { isDestroyed: jest.fn(() => false) };
});
dialog.showMessageBox = jest.fn(() => 2);
await ipcRenderer.send('certificate-error', webContentsMocked, urlMocked, errorMocked, certificate, callbackMocked);
expect(callbackMocked).toBeCalledWith(true);

View File

@@ -17,8 +17,10 @@ export const cleanUpAppCache = async (): Promise<void> => {
logger.info(`app-cache-handler: last exit was clean, deleted the app cache file`);
return;
}
await new Promise((resolve) => session.defaultSession ? session.defaultSession.clearCache(resolve) : null);
logger.info(`app-cache-handler: we didn't have a clean exit last time, so, cleared the cache that may have been corrupted!`);
if (session.defaultSession) {
await session.defaultSession.clearCache();
logger.info(`app-cache-handler: we didn't have a clean exit last time, so, cleared the cache that may have been corrupted!`);
}
};
/**

View File

@@ -367,13 +367,12 @@ export class AppMenu {
enabled: !memoryRefreshCC || memoryRefreshCC === CloudConfigDataTypes.NOT_SET,
},
{
click: (_item, focusedWindow) => {
click: async (_item, focusedWindow) => {
if (focusedWindow && !focusedWindow.isDestroyed()) {
const defaultSession = session.defaultSession;
if (defaultSession) {
defaultSession.clearCache(() => {
focusedWindow.reload();
});
await defaultSession.clearCache();
focusedWindow.reload();
}
}
},

View File

@@ -67,25 +67,26 @@ electron.app.on('certificate-error', async (event, webContents, url, error, _cer
event.preventDefault();
const browserWin = electron.BrowserWindow.fromWebContents(webContents);
const { response } = await electron.dialog.showMessageBox(browserWin, {
type: 'warning',
buttons: [
i18n.t('Allow')(),
i18n.t('Deny')(),
i18n.t('Ignore All')(),
],
defaultId: 1,
cancelId: 1,
noLink: true,
title: i18n.t('Certificate Error')(),
message: `${i18n.t('Certificate Error')()}: ${error}\nURL: ${url}`,
});
if (browserWin && windowExists(browserWin)) {
const {response} = await electron.dialog.showMessageBox(browserWin, {
type: 'warning',
buttons: [
i18n.t('Allow')(),
i18n.t('Deny')(),
i18n.t('Ignore All')(),
],
defaultId: 1,
cancelId: 1,
noLink: true,
title: i18n.t('Certificate Error')(),
message: `${i18n.t('Certificate Error')()}: ${error}\nURL: ${url}`,
});
if (response === 2) {
ignoreAllCertErrors = true;
}
if (response === 2) {
ignoreAllCertErrors = true;
callback(response !== 1);
}
callback(response !== 1);
});
/**

View File

@@ -1,5 +1,5 @@
import * as electron from 'electron';
import { app, BrowserWindow, CertificateVerifyProcRequest, nativeImage } from 'electron';
import { app, BrowserWindow, nativeImage } from 'electron';
import fetch from 'electron-fetch';
import * as filesize from 'filesize';
import * as fs from 'fs';
@@ -219,7 +219,7 @@ export const setDataUrl = (dataUrl: string, count: number): void => {
* @param {BrowserWindow} browserWin node emitter event to be tested
* @return {Boolean} returns true if exists otherwise false
*/
export const isValidWindow = (browserWin: Electron.BrowserWindow): boolean => {
export const isValidWindow = (browserWin: Electron.BrowserWindow | null): boolean => {
if (!checkValidWindow) {
return true;
}
@@ -471,11 +471,11 @@ export const injectStyles = async (mainWindow: BrowserWindow, isCustomTitleBar:
/**
* Proxy verification for root certificates
*
* @param request {CertificateVerifyProcRequest}
* @param request {any}
* @param callback {(verificationResult: number) => void}
*/
export const handleCertificateProxyVerification = (
request: CertificateVerifyProcRequest,
request: any,
callback: (verificationResult: number) => void,
): void => {
const { hostname: hostUrl, errorCode } = request;

View File

@@ -1,5 +1,5 @@
import { app, BrowserWindow } from 'electron';
import electronLog, { ILogLevel as LogLevel, transports } from 'electron-log';
import electronLog, { LogLevel, transports } from 'electron-log';
import * as fs from 'fs';
import * as path from 'path';
import * as util from 'util';

View File

@@ -49,7 +49,7 @@ const isValid = (options: ICustomSourcesOptions) => {
* @param callback {CallbackType}
* @returns {*}
*/
export const getSource = (options: ICustomSourcesOptions, callback: CallbackType) => {
export const getSource = async (options: ICustomSourcesOptions, callback: CallbackType) => {
let captureWindow;
let captureScreen;
let id;
@@ -102,48 +102,46 @@ export const getSource = (options: ICustomSourcesOptions, callback: CallbackType
}
id = getNextId();
desktopCapturer.getSources({ types: sourcesOpts, thumbnailSize: updatedOptions.thumbnailSize }, (_event, sources: DesktopCapturerSource[]) => {
// Auto select screen source based on args for testing only
if (screenShareArgv) {
const title = screenShareArgv.substr(screenShareArgv.indexOf('=') + 1);
const filteredSource: DesktopCapturerSource[] = sources.filter((source) => source.name === title);
if (Array.isArray(filteredSource) && filteredSource.length > 0) {
const source = { ...filteredSource[ 0 ], requestId };
return callback(null, source);
}
if (sources.length > 0) {
const firstSource = { ...sources[ 0 ], requestId };
return callback(null, firstSource);
}
const sources: DesktopCapturerSource[] = await desktopCapturer.getSources({ types: sourcesOpts, thumbnailSize: updatedOptions.thumbnailSize });
// Auto select screen source based on args for testing only
if (screenShareArgv) {
const title = screenShareArgv.substr(screenShareArgv.indexOf('=') + 1);
const filteredSource: DesktopCapturerSource[] = sources.filter((source) => source.name === title);
if (Array.isArray(filteredSource) && filteredSource.length > 0) {
const source = { ...filteredSource[ 0 ], requestId };
return callback(null, source);
}
const updatedSources = sources.map((source) => {
return Object.assign({}, source, {
thumbnail: source.thumbnail.toDataURL(),
});
});
if (sources.length > 0) {
const firstSource = { ...sources[ 0 ], requestId };
return callback(null, firstSource);
}
ipcRenderer.send(apiName.symphonyApi, {
cmd: apiCmds.openScreenPickerWindow,
id,
sources: updatedSources,
});
}
const successCallback = (_e, source: DesktopCapturerSource) => {
// Cleaning up the event listener to prevent memory leaks
if (!source) {
ipcRenderer.removeListener('start-share' + id, successCallback);
return callback({ name: 'User Cancelled', message: 'User Cancelled', requestId });
}
return callback(null, { ...source, ...{ requestId } });
};
ipcRenderer.once('start-share' + id, successCallback);
return null;
const updatedSources = sources.map((source) => {
return Object.assign({}, source, {
thumbnail: source.thumbnail.toDataURL(),
});
});
ipcRenderer.send(apiName.symphonyApi, {
cmd: apiCmds.openScreenPickerWindow,
id,
sources: updatedSources,
});
const successCallback = (_e, source: DesktopCapturerSource) => {
// Cleaning up the event listener to prevent memory leaks
if (!source) {
ipcRenderer.removeListener('start-share' + id, successCallback);
return callback({ name: 'User Cancelled', message: 'User Cancelled', requestId });
}
return callback(null, { ...source, ...{ requestId } });
};
ipcRenderer.once('start-share' + id, successCallback);
return null;
};
// event that updates screen share argv