upgraded to electron 29

This commit is contained in:
Eugene 2024-08-03 10:31:19 +02:00
parent f523b114ca
commit 3f0b78edd0
No known key found for this signature in database
GPG key ID: 5896FCBBDD1CF4F4
13 changed files with 145 additions and 122 deletions

View file

@ -31,6 +31,8 @@ try {
app.exit(1) app.exit(1)
} }
process.mainModule = module
const application = new Application(configStore) const application = new Application(configStore)
ipcMain.on('app:new-window', () => { ipcMain.on('app:new-window', () => {

View file

@ -1,5 +1,5 @@
import * as glasstron from 'glasstron' import * as glasstron from 'glasstron'
import { autoUpdater } from 'electron-updater'
import { Subject, Observable, debounceTime } from 'rxjs' import { Subject, Observable, debounceTime } from 'rxjs'
import { BrowserWindow, app, ipcMain, Rectangle, Menu, screen, BrowserWindowConstructorOptions, TouchBar, nativeImage, WebContents } from 'electron' import { BrowserWindow, app, ipcMain, Rectangle, Menu, screen, BrowserWindowConstructorOptions, TouchBar, nativeImage, WebContents } from 'electron'
import ElectronConfig = require('electron-config') import ElectronConfig = require('electron-config')
@ -159,6 +159,7 @@ export class Window {
} }
this.setupWindowManagement() this.setupWindowManagement()
this.setupUpdater()
this.ready = new Promise(resolve => { this.ready = new Promise(resolve => {
const listener = event => { const listener = event => {
@ -346,11 +347,8 @@ export class Window {
this.send('host:window-focused') this.send('host:window-focused')
}) })
ipcMain.on('ready', event => { this.on('ready', () => {
if (!this.window || event.sender !== this.window.webContents) { this.window?.webContents.send('start', {
return
}
this.window.webContents.send('start', {
config: this.configStore, config: this.configStore,
executable: app.getPath('exe'), executable: app.getPath('exe'),
windowID: this.window.id, windowID: this.window.id,
@ -359,42 +357,26 @@ export class Window {
}) })
}) })
ipcMain.on('window-minimize', event => { this.on('window-minimize', () => {
if (!this.window || event.sender !== this.window.webContents) { this.window?.minimize()
return
}
this.window.minimize()
}) })
ipcMain.on('window-set-bounds', (event, bounds) => { this.on('window-set-bounds', (_, bounds) => {
if (!this.window || event.sender !== this.window.webContents) { this.window?.setBounds(bounds)
return
}
this.window.setBounds(bounds)
}) })
ipcMain.on('window-set-always-on-top', (event, flag) => { this.on('window-set-always-on-top', (_, flag) => {
if (!this.window || event.sender !== this.window.webContents) { this.window?.setAlwaysOnTop(flag)
return
}
this.window.setAlwaysOnTop(flag)
}) })
ipcMain.on('window-set-vibrancy', (event, enabled, type) => { this.on('window-set-vibrancy', (_, enabled, type) => {
if (!this.window || event.sender !== this.window.webContents) {
return
}
this.setVibrancy(enabled, type) this.setVibrancy(enabled, type)
}) })
ipcMain.on('window-set-window-controls-color', (event, theme) => { this.on('window-set-window-controls-color', (_, theme) => {
if (!this.window || event.sender !== this.window.webContents) {
return
}
if (process.platform === 'win32') { if (process.platform === 'win32') {
const symbolColor: string = theme.foreground const symbolColor: string = theme.foreground
this.window.setTitleBarOverlay( this.window?.setTitleBarOverlay(
{ {
symbolColor: symbolColor, symbolColor: symbolColor,
height: 32, height: 32,
@ -403,32 +385,23 @@ export class Window {
} }
}) })
ipcMain.on('window-set-title', (event, title) => { this.on('window-set-title', (_, title) => {
if (!this.window || event.sender !== this.window.webContents) { this.window?.setTitle(title)
return
}
this.window.setTitle(title)
}) })
ipcMain.on('window-bring-to-front', event => { this.on('window-bring-to-front', () => {
if (!this.window || event.sender !== this.window.webContents) { if (this.window?.isMinimized()) {
return
}
if (this.window.isMinimized()) {
this.window.restore() this.window.restore()
} }
this.present() this.present()
}) })
ipcMain.on('window-close', event => { this.on('window-close', () => {
if (!this.window || event.sender !== this.window.webContents) {
return
}
this.closing = true this.closing = true
this.window.close() this.window.close()
}) })
ipcMain.on('window-set-touch-bar', (_event, segments, selectedIndex) => { this.on('window-set-touch-bar', (_, segments, selectedIndex) => {
this.touchBarControl.segments = segments.map(s => ({ this.touchBarControl.segments = segments.map(s => ({
label: s.label, label: s.label,
icon: s.hasActivity ? activityIcon : undefined, icon: s.hasActivity ? activityIcon : undefined,
@ -468,8 +441,46 @@ export class Window {
this.window.setOpacity(opacity) this.window.setOpacity(opacity)
}) })
ipcMain.on('window-set-progress-bar', (_event, value) => { this.on('window-set-progress-bar', (_, value) => {
this.window.setProgressBar(value, { mode: value < 0 ? 'none' : 'normal' }) this.window?.setProgressBar(value, { mode: value < 0 ? 'none' : 'normal' })
})
}
on (event: string, listener: (...args: any[]) => void): void {
ipcMain.on(event, (e, ...args) => {
if (!this.window || e.sender !== this.window.webContents) {
return
}
listener(e, ...args)
})
}
private setupUpdater () {
autoUpdater.autoDownload = true
autoUpdater.autoInstallOnAppQuit = true
autoUpdater.on('update-available', () => {
this.send('updater:update-available')
})
autoUpdater.on('update-not-available', () => {
this.send('updater:update-not-available')
})
autoUpdater.on('error', err => {
this.send('updater:error', err)
})
autoUpdater.on('update-downloaded', () => {
this.send('updater:update-downloaded')
})
this.on('updater:check-for-updates', () => {
autoUpdater.checkForUpdates()
})
this.on('updater:quit-and-install', () => {
autoUpdater.quitAndInstall()
}) })
} }

View file

@ -15,7 +15,7 @@
"watch": "webpack --progress --color --watch" "watch": "webpack --progress --color --watch"
}, },
"dependencies": { "dependencies": {
"@electron/remote": "2.0.10", "@electron/remote": "^2",
"node-pty": "^1.0", "node-pty": "^1.0",
"any-promise": "^1.3.0", "any-promise": "^1.3.0",
"electron-config": "2.0.0", "electron-config": "2.0.0",
@ -63,8 +63,7 @@
"tabby-terminal": "*" "tabby-terminal": "*"
}, },
"resolutions": { "resolutions": {
"*/node-abi": "^2.20.0", "*/node-abi": "^3",
"node-gyp": "^10.0.0", "node-gyp": "^10.0.0"
"nan": "github:jkleinsc/nan#remove_accessor_signature"
} }
} }

View file

@ -42,6 +42,7 @@ const config = {
'electron-config': 'commonjs electron-config', 'electron-config': 'commonjs electron-config',
'electron-debug': 'commonjs electron-debug', 'electron-debug': 'commonjs electron-debug',
'electron-promise-ipc': 'commonjs electron-promise-ipc', 'electron-promise-ipc': 'commonjs electron-promise-ipc',
'electron-updater': 'commonjs electron-updater',
fs: 'commonjs fs', fs: 'commonjs fs',
glasstron: 'commonjs glasstron', glasstron: 'commonjs glasstron',
mz: 'commonjs mz', mz: 'commonjs mz',

View file

@ -2,10 +2,10 @@
# yarn lockfile v1 # yarn lockfile v1
"@electron/remote@2.0.10": "@electron/remote@^2":
version "2.0.10" version "2.1.2"
resolved "https://registry.yarnpkg.com/@electron/remote/-/remote-2.0.10.tgz#133e2f607b1861ac249bd78b5abd1e961feed713" resolved "https://registry.yarnpkg.com/@electron/remote/-/remote-2.1.2.tgz#52a97c8faa5b769155b649ef262f2f8c851776e6"
integrity sha512-3SFKKaQXcyWgwmibud+UqJl/XlHOgLcI3fwtB9pNelPSJAcTxocOJrF6FaxBIQaj1+R05Di6xuAswZpXAW7xhA== integrity sha512-EPwNx+nhdrTBxyCqXt/pftoQg/ybtWDW3DUWHafejvnB1ZGGfMpv6e15D8KeempocjXe78T7WreyGGb3mlZxdA==
"@iarna/cli@^1.2.0": "@iarna/cli@^1.2.0":
version "1.2.0" version "1.2.0"
@ -2577,9 +2577,10 @@ mz@^2.7.0:
object-assign "^4.0.1" object-assign "^4.0.1"
thenify-all "^1.0.0" thenify-all "^1.0.0"
nan@^2.17.0, "nan@github:jkleinsc/nan#remove_accessor_signature": nan@^2.17.0:
version "2.16.0" version "2.20.0"
resolved "https://codeload.github.com/jkleinsc/nan/tar.gz/6a2f95a6a2209d8aa7542fb18099fd808a802059" resolved "https://registry.yarnpkg.com/nan/-/nan-2.20.0.tgz#08c5ea813dd54ed16e5bd6505bf42af4f7838ca3"
integrity sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==
napi-build-utils@^1.0.1: napi-build-utils@^1.0.1:
version "1.0.2" version "1.0.2"
@ -2610,12 +2611,12 @@ nice-try@^1.0.4:
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
node-abi@^2.20.0: node-abi@^3:
version "2.30.1" version "3.65.0"
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.30.1.tgz#c437d4b1fe0e285aaf290d45b45d4d7afedac4cf" resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.65.0.tgz#ca92d559388e1e9cab1680a18c1a18757cdac9d3"
integrity sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w== integrity sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==
dependencies: dependencies:
semver "^5.4.1" semver "^7.3.5"
node-abi@^3.3.0: node-abi@^3.3.0:
version "3.8.0" version "3.8.0"
@ -3909,6 +3910,7 @@ strict-uri-encode@^2.0.0:
integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY= integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY=
"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: "string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3:
name string-width-cjs
version "4.2.3" version "4.2.3"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
@ -3986,6 +3988,7 @@ stringify-package@^1.0.0, stringify-package@^1.0.1:
integrity sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg== integrity sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg==
"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.1: "strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.1:
name strip-ansi-cjs
version "6.0.1" version "6.0.1"
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
@ -4432,6 +4435,7 @@ worker-farm@^1.6.0, worker-farm@^1.7.0:
errno "~0.1.7" errno "~0.1.7"
"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0:
name wrap-ansi-cjs
version "7.0.0" version "7.0.0"
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==

View file

@ -39,7 +39,7 @@
"cross-env": "7.0.3", "cross-env": "7.0.3",
"css-loader": "^6.7.3", "css-loader": "^6.7.3",
"deep-equal": "2.0.5", "deep-equal": "2.0.5",
"electron": "^27.0.4", "electron": "^29",
"electron-builder": "^24.6.4", "electron-builder": "^24.6.4",
"electron-download": "^4.1.1", "electron-download": "^4.1.1",
"electron-installer-snap": "^5.1.0", "electron-installer-snap": "^5.1.0",
@ -55,7 +55,7 @@
"lru-cache": "^6.0.0", "lru-cache": "^6.0.0",
"macos-release": "^3.1.0", "macos-release": "^3.1.0",
"ngx-toastr": "^16.0.2", "ngx-toastr": "^16.0.2",
"node-abi": "^3.51.0", "node-abi": "^3.65.0",
"npmlog": "6.0.2", "npmlog": "6.0.2",
"npx": "^10.2.2", "npx": "^10.2.2",
"patch-package": "^6.4.7", "patch-package": "^6.4.7",

View file

@ -16,7 +16,6 @@ export class ElectronService {
clipboard: Clipboard clipboard: Clipboard
globalShortcut: GlobalShortcut globalShortcut: GlobalShortcut
screen: Screen screen: Screen
remote = remote
process: any process: any
autoUpdater: AutoUpdater autoUpdater: AutoUpdater
powerSaveBlocker: PowerSaveBlocker powerSaveBlocker: PowerSaveBlocker
@ -44,7 +43,6 @@ export class ElectronService {
this.BrowserWindow = remote.BrowserWindow this.BrowserWindow = remote.BrowserWindow
this.Menu = remote.Menu this.Menu = remote.Menu
this.MenuItem = remote.MenuItem this.MenuItem = remote.MenuItem
this.MenuItem = remote.MenuItem
this.nativeTheme = remote.nativeTheme this.nativeTheme = remote.nativeTheme
} }
} }

View file

@ -1,4 +1,3 @@
import type { AppUpdater } from 'electron-updater'
import { Injectable } from '@angular/core' import { Injectable } from '@angular/core'
import axios from 'axios' import axios from 'axios'
@ -13,7 +12,6 @@ export class ElectronUpdaterService extends UpdaterService {
private downloaded: Promise<boolean> private downloaded: Promise<boolean>
private electronUpdaterAvailable = true private electronUpdaterAvailable = true
private updateURL: string private updateURL: string
private autoUpdater: AppUpdater
constructor ( constructor (
log: LogService, log: LogService,
@ -30,32 +28,28 @@ export class ElectronUpdaterService extends UpdaterService {
return return
} }
this.autoUpdater = electron.remote.require('electron-updater').autoUpdater this.electron.ipcRenderer.on('updater:update-available', () => {
this.autoUpdater.autoDownload = true
this.autoUpdater.autoInstallOnAppQuit = false
this.autoUpdater.on('update-available', () => {
this.logger.info('Update available') this.logger.info('Update available')
}) })
this.autoUpdater.on('update-not-available', () => { this.electron.ipcRenderer.on('updater:update-not-available', () => {
this.logger.info('No updates') this.logger.info('No updates')
}) })
this.autoUpdater.on('error', err => { this.electron.ipcRenderer.on('updater:error', err => {
this.logger.error(err) this.logger.error(err)
this.electronUpdaterAvailable = false this.electronUpdaterAvailable = false
}) })
this.downloaded = new Promise<boolean>(resolve => { this.downloaded = new Promise<boolean>(resolve => {
this.autoUpdater.once('update-downloaded', () => resolve(true)) this.electron.ipcRenderer.once('updater:update-downloaded', () => resolve(true))
}) })
config.ready$.toPromise().then(() => { config.ready$.toPromise().then(() => {
if (config.store.enableAutomaticUpdates && this.electronUpdaterAvailable && !process.env.TABBY_DEV) { if (config.store.enableAutomaticUpdates && this.electronUpdaterAvailable && !process.env.TABBY_DEV) {
this.logger.debug('Checking for updates') this.logger.debug('Checking for updates')
try { try {
this.autoUpdater.checkForUpdates() this.electron.ipcRenderer.send('updater:check-for-updates')
} catch (e) { } catch (e) {
this.electronUpdaterAvailable = false this.electronUpdaterAvailable = false
this.logger.info('Electron updater unavailable, falling back', e) this.logger.info('Electron updater unavailable, falling back', e)
@ -82,26 +76,26 @@ export class ElectronUpdaterService extends UpdaterService {
reject(err) reject(err)
} }
cancel = () => { cancel = () => {
this.autoUpdater.off('error', onError) this.electron.ipcRenderer.off('updater:error', onError)
this.autoUpdater.off('update-not-available', onNoUpdate) this.electron.ipcRenderer.off('updater:update-not-available', onNoUpdate)
this.autoUpdater.off('update-available', onUpdate) this.electron.ipcRenderer.off('updater:update-available', onUpdate)
} }
this.autoUpdater.on('error', onError) this.electron.ipcRenderer.on('updater:error', onError)
this.autoUpdater.on('update-not-available', onNoUpdate) this.electron.ipcRenderer.on('updater:update-not-available', onNoUpdate)
this.autoUpdater.on('update-available', onUpdate) this.electron.ipcRenderer.on('updater:update-available', onUpdate)
try { try {
this.autoUpdater.checkForUpdates() this.electron.ipcRenderer.send('updater:check-for-updates')
} catch (e) { } catch (e) {
this.electronUpdaterAvailable = false this.electronUpdaterAvailable = false
this.logger.info('Electron updater unavailable, falling back', e) this.logger.info('Electron updater unavailable, falling back', e)
} }
}) })
this.autoUpdater.on('update-available', () => { this.electron.ipcRenderer.on('updater:update-available', () => {
this.logger.info('Update available') this.logger.info('Update available')
}) })
this.autoUpdater.once('update-not-available', () => { this.electron.ipcRenderer.once('updater:update-not-available', () => {
this.logger.info('No updates') this.logger.info('No updates')
}) })
@ -138,7 +132,7 @@ export class ElectronUpdaterService extends UpdaterService {
}, },
)).response === 0) { )).response === 0) {
await this.downloaded await this.downloaded
this.autoUpdater.quitAndInstall() this.electron.ipcRenderer.send('updater:quit-and-install')
} }
} }
} }

View file

@ -11,8 +11,3 @@ untildify@^4.0.0:
version "4.0.0" version "4.0.0"
resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b"
integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==
xterm-addon-web-links@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/xterm-addon-web-links/-/xterm-addon-web-links-0.7.0.tgz#dceac36170605f9db10a01d716bd83ee38f65c17"
integrity sha512-6PqoqzzPwaeSq22skzbvyboDvSnYk5teUYEoKBwMYvhbkwOQkemZccjWHT5FnNA8o1aInTc4PRYAl4jjPucCKA==

View file

@ -9,15 +9,22 @@
dependencies: dependencies:
ipv6 "*" ipv6 "*"
"@types/node@*", "@types/node@20.3.1": "@types/node@*":
version "22.1.0"
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.1.0.tgz#6d6adc648b5e03f0e83c78dc788c2b037d0ad94b"
integrity sha512-AOmuRF0R2/5j1knA3c6G3HOk523Ga+l+ZXltX8SF1+5oqcXijjfTd8fY3XRZqSihEu9XhtQnKYLmkFaoxgsJHw==
dependencies:
undici-types "~6.13.0"
"@types/node@20.3.1":
version "20.3.1" version "20.3.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.3.1.tgz#e8a83f1aa8b649377bb1fb5d7bac5cb90e784dfe" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.3.1.tgz#e8a83f1aa8b649377bb1fb5d7bac5cb90e784dfe"
integrity sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg== integrity sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==
"@types/ssh2-streams@*": "@types/ssh2-streams@*":
version "0.1.8" version "0.1.12"
resolved "https://registry.yarnpkg.com/@types/ssh2-streams/-/ssh2-streams-0.1.8.tgz#142af404dae059931aea7fcd1511b5478964feb6" resolved "https://registry.yarnpkg.com/@types/ssh2-streams/-/ssh2-streams-0.1.12.tgz#e68795ba2bf01c76b93f9c9809e1f42f0eaaec5f"
integrity sha512-I7gixRPUvVIyJuCEvnmhr3KvA2dC0639kKswqD4H5b4/FOcnPtNU+qWLiXdKIqqX9twUvi5j0U1mwKE5CUsrfA== integrity sha512-Sy8tpEmCce4Tq0oSOYdfqaBpA3hDM8SoxoFh5vzFsu2oL+znzGz8oVWW7xb4K920yYMUY+PIG31qZnFMfPWNCg==
dependencies: dependencies:
"@types/node" "*" "@types/node" "*"
@ -337,6 +344,11 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0:
resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
undici-types@~6.13.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.13.0.tgz#e3e79220ab8c81ed1496b5812471afd7cf075ea5"
integrity sha512-xtFJHudx8S2DSoujjMd1WeWvn7KKWFRESZTMeL1RptAYERu29D6jphMjjY+vn96jvN3kVPDNxU/E13VTaXj6jg==
winston@0.8.x: winston@0.8.x:
version "0.8.3" version "0.8.3"
resolved "https://registry.yarnpkg.com/winston/-/winston-0.8.3.tgz#64b6abf4cd01adcaefd5009393b1d8e8bec19db0" resolved "https://registry.yarnpkg.com/winston/-/winston-0.8.3.tgz#64b6abf4cd01adcaefd5009393b1d8e8bec19db0"

View file

@ -863,10 +863,12 @@
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.3.1.tgz#e8a83f1aa8b649377bb1fb5d7bac5cb90e784dfe" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.3.1.tgz#e8a83f1aa8b649377bb1fb5d7bac5cb90e784dfe"
integrity sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg== integrity sha512-EhcH/wvidPy1WeML3TtYFGR83UzjxeWRen9V402T8aUGYsCHOmfoisV3ZSg03gAFIbLq8TnWOJ0f4cALtnSEUg==
"@types/node@^18.11.18": "@types/node@^20.9.0":
version "18.17.12" version "20.14.14"
resolved "https://registry.yarnpkg.com/@types/node/-/node-18.17.12.tgz#c6bd7413a13e6ad9cfb7e97dd5c4e904c1821e50" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.14.14.tgz#6b655d4a88623b0edb98300bb9dd2107225f885e"
integrity sha512-d6xjC9fJ/nSnfDeU0AMDsaJyb1iHsqCSOdi84w4u+SlN/UgQdY5tRhpMzaFYsI4mnpvgTivEaQd0yOUhAtOnEQ== integrity sha512-d64f00982fS9YoOgJkAMolK7MN8Iq3TDdVjchbYHdEmjth/DHowx82GnoA+tVUAN+7vxfYUgAzi+JXbKNd2SDQ==
dependencies:
undici-types "~5.26.4"
"@types/parse5@^5": "@types/parse5@^5":
version "5.0.3" version "5.0.3"
@ -2505,13 +2507,13 @@ core-util-is@1.0.2, core-util-is@~1.0.0:
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
cpu-features@~0.0.8: cpu-features@~0.0.9:
version "0.0.8" version "0.0.10"
resolved "https://registry.yarnpkg.com/cpu-features/-/cpu-features-0.0.8.tgz#a2d464b023b8ad09004c8cdca23b33f192f63546" resolved "https://registry.yarnpkg.com/cpu-features/-/cpu-features-0.0.10.tgz#9aae536db2710c7254d7ed67cb3cbc7d29ad79c5"
integrity sha512-BbHBvtYhUhksqTjr6bhNOjGgMnhwhGTQmOoZGD+K7BCaQDCuZl/Ve1ZxUSMRwVC4D/rkCPQ2MAIeYzrWyK7eEg== integrity sha512-9IkYqtX3YHPCzoVg1Py+o9057a3i0fp7S530UWokCSaFVTc7CwXPRiOjRjBQQ18ZCNafx78YfnG+HALxtVmOGA==
dependencies: dependencies:
buildcheck "~0.0.6" buildcheck "~0.0.6"
nan "^2.17.0" nan "^2.19.0"
crc@^3.8.0: crc@^3.8.0:
version "3.8.0" version "3.8.0"
@ -3071,13 +3073,13 @@ electron-to-chromium@^1.4.284:
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.286.tgz#0e039de59135f44ab9a8ec9025e53a9135eba11f" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.286.tgz#0e039de59135f44ab9a8ec9025e53a9135eba11f"
integrity sha512-Vp3CVhmYpgf4iXNKAucoQUDcCrBQX3XLBtwgFqP9BUXuucgvAV9zWp1kYU7LL9j4++s9O+12cb3wMtN4SJy6UQ== integrity sha512-Vp3CVhmYpgf4iXNKAucoQUDcCrBQX3XLBtwgFqP9BUXuucgvAV9zWp1kYU7LL9j4++s9O+12cb3wMtN4SJy6UQ==
electron@^27.0.4: electron@^29:
version "27.1.0" version "29.4.5"
resolved "https://registry.yarnpkg.com/electron/-/electron-27.1.0.tgz#d759885e552d7d926526cfc433ab312796f74a9a" resolved "https://registry.yarnpkg.com/electron/-/electron-29.4.5.tgz#b83bbeee6fc722dbbaab30d3a6bc8e982c9ab98d"
integrity sha512-XPdJiO475QJ8cx59/goWNNWnlV0vab+Ut3occymos7VDxkHV5mFrlW6tcGi+M3bW6gBfwpJocWMng8tw542vww== integrity sha512-DlEuzGbWBYl1Qr0qUYgNZdoixJg4YGHy2HC6fkRjSXSlb01UrQ5ORi8hNLzelzyYx8rNQyyE3zDUuk9EnZwYuA==
dependencies: dependencies:
"@electron/get" "^2.0.0" "@electron/get" "^2.0.0"
"@types/node" "^18.11.18" "@types/node" "^20.9.0"
extract-zip "^2.0.1" extract-zip "^2.0.1"
elliptic@^6.5.3: elliptic@^6.5.3:
@ -5983,7 +5985,7 @@ mute-stream@~0.0.4:
resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz" resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz"
integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=
nan@2.17.0, nan@^2.17.0: nan@2.17.0, nan@^2.18.0, nan@^2.19.0:
version "2.17.0" version "2.17.0"
resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb" resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb"
integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ== integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==
@ -6028,10 +6030,10 @@ no-case@^3.0.4:
lower-case "^2.0.2" lower-case "^2.0.2"
tslib "^2.0.3" tslib "^2.0.3"
node-abi@^3.0.0, node-abi@^3.51.0: node-abi@^3.0.0, node-abi@^3.65.0:
version "3.51.0" version "3.65.0"
resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.51.0.tgz#970bf595ef5a26a271307f8a4befa02823d4e87d" resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.65.0.tgz#ca92d559388e1e9cab1680a18c1a18757cdac9d3"
integrity sha512-SQkEP4hmNWjlniS5zdnfIXTk1x7Ome85RDzHlTbBtzE97Gfwz/Ipw4v/Ryk20DWIy3yCNVLVlGKApCnmvYoJbA== integrity sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==
dependencies: dependencies:
semver "^7.3.5" semver "^7.3.5"
@ -8219,15 +8221,15 @@ sprintf-js@~1.0.2:
integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
ssh2@^1.14.0: ssh2@^1.14.0:
version "1.14.0" version "1.15.0"
resolved "https://registry.yarnpkg.com/ssh2/-/ssh2-1.14.0.tgz#8f68440e1b768b66942c9e4e4620b2725b3555bb" resolved "https://registry.yarnpkg.com/ssh2/-/ssh2-1.15.0.tgz#2f998455036a7f89e0df5847efb5421748d9871b"
integrity sha512-AqzD1UCqit8tbOKoj6ztDDi1ffJZ2rV2SwlgrVVrHPkV5vWqGJOVp5pmtj18PunkPJAuKQsnInyKV+/Nb2bUnA== integrity sha512-C0PHgX4h6lBxYx7hcXwu3QWdh4tg6tZZsTfXcdvc5caW/EMxaB4H9dWsl7qk+F7LAW762hp8VbXOX7x4xUYvEw==
dependencies: dependencies:
asn1 "^0.2.6" asn1 "^0.2.6"
bcrypt-pbkdf "^1.0.2" bcrypt-pbkdf "^1.0.2"
optionalDependencies: optionalDependencies:
cpu-features "~0.0.8" cpu-features "~0.0.9"
nan "^2.17.0" nan "^2.18.0"
sshpk@^1.7.0: sshpk@^1.7.0:
version "1.16.1" version "1.16.1"
@ -8926,6 +8928,11 @@ unbox-primitive@^1.0.2:
has-symbols "^1.0.3" has-symbols "^1.0.3"
which-boxed-primitive "^1.0.2" which-boxed-primitive "^1.0.2"
undici-types@~5.26.4:
version "5.26.5"
resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617"
integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==
unique-filename@^1.1.0, unique-filename@~1.1.0: unique-filename@^1.1.0, unique-filename@~1.1.0:
version "1.1.0" version "1.1.0"
resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz" resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz"