From 7cf78c6635919d561cc915077404592e132d7fc1 Mon Sep 17 00:00:00 2001 From: Araxeus Date: Mon, 10 May 2021 04:15:56 +0300 Subject: [PATCH 01/10] setup SongInfo **once** --- index.js | 2 ++ plugins/discord/back.js | 4 +--- plugins/downloader/back.js | 3 +-- plugins/last-fm/back.js | 6 ++---- plugins/notifications/back.js | 3 +-- plugins/taskbar-mediacontrol/back.js | 3 +-- plugins/touchbar/back.js | 3 +-- providers/song-info.js | 22 +++++++++++----------- 8 files changed, 20 insertions(+), 26 deletions(-) diff --git a/index.js b/index.js index 81fd45b5..f4e4212d 100644 --- a/index.js +++ b/index.js @@ -11,6 +11,7 @@ const { setApplicationMenu } = require("./menu"); const { fileExists, injectCSS } = require("./plugins/utils"); const { isTesting } = require("./utils/testing"); const { setUpTray } = require("./tray"); +const { setupSongInfo } = require("./providers/song-info"); // Catch errors and log them unhandled({ @@ -157,6 +158,7 @@ function createMainWindow() { } app.once("browser-window-created", (event, win) => { + setupSongInfo(win); loadPlugins(win); win.webContents.on("did-fail-load", ( diff --git a/plugins/discord/back.js b/plugins/discord/back.js index 33dbb38b..c6faadd7 100644 --- a/plugins/discord/back.js +++ b/plugins/discord/back.js @@ -1,6 +1,6 @@ const Discord = require("discord-rpc"); -const getSongInfo = require("../../providers/song-info"); +const registerCallback = require("../../providers/song-info"); const rpc = new Discord.Client({ transport: "ipc", @@ -12,8 +12,6 @@ const clientId = "790655993809338398"; let clearActivity; module.exports = (win, {activityTimoutEnabled, activityTimoutTime}) => { - const registerCallback = getSongInfo(win); - // If the page is ready, register the callback win.once("ready-to-show", () => { rpc.once("ready", () => { diff --git a/plugins/downloader/back.js b/plugins/downloader/back.js index 76a77b92..ee345ab2 100644 --- a/plugins/downloader/back.js +++ b/plugins/downloader/back.js @@ -4,7 +4,7 @@ const { join } = require("path"); const ID3Writer = require("browser-id3-writer"); const { dialog, ipcMain } = require("electron"); -const getSongInfo = require("../../providers/song-info"); +const registerCallback = require("../../providers/song-info"); const { injectCSS, listenAction } = require("../utils"); const { cropMaxWidth } = require("./utils"); const { ACTIONS, CHANNEL } = require("./actions.js"); @@ -25,7 +25,6 @@ let nowPlayingMetadata = {}; function handle(win) { injectCSS(win.webContents, join(__dirname, "style.css")); - const registerCallback = getSongInfo(win); registerCallback((info) => { nowPlayingMetadata = info; }); diff --git a/plugins/last-fm/back.js b/plugins/last-fm/back.js index 54975103..567dccc0 100644 --- a/plugins/last-fm/back.js +++ b/plugins/last-fm/back.js @@ -2,7 +2,7 @@ const fetch = require('node-fetch'); const md5 = require('md5'); const { shell } = require('electron'); const { setOptions } = require('../../config/plugins'); -const getSongInfo = require('../../providers/song-info'); +const registerCallback = require('../../providers/song-info'); const defaultConfig = require('../../config/defaults'); const createFormData = params => { @@ -128,9 +128,7 @@ const setNowPlaying = (songInfo, config) => { // this will store the timeout that will trigger addScrobble let scrobbleTimer = undefined; -const lastfm = async (win, config) => { - const registerCallback = getSongInfo(win); - +const lastfm = async (_win, config) => { if (!config.api_root) { // settings are not present, creating them with the default values config = defaultConfig.plugins['last-fm']; diff --git a/plugins/notifications/back.js b/plugins/notifications/back.js index d1ef3114..91d3ea72 100644 --- a/plugins/notifications/back.js +++ b/plugins/notifications/back.js @@ -1,6 +1,6 @@ const { Notification } = require("electron"); const is = require("electron-is"); -const getSongInfo = require("../../providers/song-info"); +const registerCallback = require("../../providers/song-info"); const { notificationImage } = require("./utils"); const { setupInteractive, notifyInteractive } = require("./interactive") @@ -29,7 +29,6 @@ module.exports = (win, options) => { if (isInteractive) { setupInteractive(win, options.unpauseNotification); } - const registerCallback = getSongInfo(win); let oldNotification; let oldURL = ""; win.once("ready-to-show", () => { diff --git a/plugins/taskbar-mediacontrol/back.js b/plugins/taskbar-mediacontrol/back.js index 46cb399e..26a11732 100644 --- a/plugins/taskbar-mediacontrol/back.js +++ b/plugins/taskbar-mediacontrol/back.js @@ -1,12 +1,11 @@ const getSongControls = require('../../providers/song-controls'); -const getSongInfo = require('../../providers/song-info'); +const registerCallback = require('../../providers/song-info'); const path = require('path'); let controls; let currentSongInfo; module.exports = win => { - const registerCallback = getSongInfo(win); const { playPause, next, previous } = getSongControls(win); controls = { playPause, next, previous }; diff --git a/plugins/touchbar/back.js b/plugins/touchbar/back.js index 0fca17a7..acaee583 100644 --- a/plugins/touchbar/back.js +++ b/plugins/touchbar/back.js @@ -7,7 +7,7 @@ const { TouchBarScrubber, } = TouchBar; -const getSongInfo = require("../../providers/song-info"); +const registerCallback = require("../../providers/song-info"); const getSongControls = require("../../providers/song-controls"); // Songtitle label @@ -59,7 +59,6 @@ const touchBar = new TouchBar({ }); module.exports = (win) => { - const registerCallback = getSongInfo(win); const { playPause, next, previous, like, dislike } = getSongControls(win); // If the page is ready, register the callback diff --git a/providers/song-info.js b/providers/song-info.js index 5701d1f3..97ddb071 100644 --- a/providers/song-info.js +++ b/providers/song-info.js @@ -51,6 +51,7 @@ const songInfo = { }; const handleData = async (responseText, win) => { + console.log("handling song-info") let data = JSON.parse(responseText); songInfo.title = data?.videoDetails?.title; songInfo.artist = await getArtist(win) || cleanupArtistName(data?.videoDetails?.author); @@ -64,15 +65,15 @@ const handleData = async (responseText, win) => { win.webContents.send("update-song-info", JSON.stringify(songInfo)); }; +// This variable will be filled with the callbacks once they register +const callbacks = []; + +// This function will allow plugins to register callback that will be triggered when data changes +const registerCallback = (callback) => { + callbacks.push(callback); +}; + const registerProvider = (win) => { - // This variable will be filled with the callbacks once they register - const callbacks = []; - - // This function will allow plugins to register callback that will be triggered when data changes - const registerCallback = (callback) => { - callbacks.push(callback); - }; - win.on("page-title-updated", async () => { // Get and set the new data songInfo.isPaused = await getPausedStatus(win); @@ -93,8 +94,6 @@ const registerProvider = (win) => { c(songInfo); }); }); - - return registerCallback; }; const suffixesToRemove = [' - Topic', 'VEVO']; @@ -110,7 +109,8 @@ function cleanupArtistName(artist) { return artist; } -module.exports = registerProvider; +module.exports = registerCallback; +module.exports.setupSongInfo = registerProvider; module.exports.getImage = getImage; module.exports.cleanupArtistName = cleanupArtistName; From cb743de7fdec4ebb932c2ad3d0aa2b529c6a71f2 Mon Sep 17 00:00:00 2001 From: Araxeus Date: Mon, 10 May 2021 05:00:58 +0300 Subject: [PATCH 02/10] refactor notifications plugin --- plugins/notifications/back.js | 49 ++++++++++------------------ plugins/notifications/interactive.js | 15 ++++++--- 2 files changed, 28 insertions(+), 36 deletions(-) diff --git a/plugins/notifications/back.js b/plugins/notifications/back.js index 91d3ea72..59b934c9 100644 --- a/plugins/notifications/back.js +++ b/plugins/notifications/back.js @@ -3,7 +3,7 @@ const is = require("electron-is"); const registerCallback = require("../../providers/song-info"); const { notificationImage } = require("./utils"); -const { setupInteractive, notifyInteractive } = require("./interactive") +const setupInteractive = require("./interactive") const notify = (info, options) => { @@ -23,37 +23,22 @@ const notify = (info, options) => { return currentNotification; }; -module.exports = (win, options) => { - const isInteractive = is.windows() && options.interactive; - //setup interactive notifications for windows - if (isInteractive) { - setupInteractive(win, options.unpauseNotification); - } +const setup = (options) => { let oldNotification; - let oldURL = ""; - win.once("ready-to-show", () => { - // Register the callback for new song information - registerCallback(songInfo => { - // on pause - reset url? and skip notification - if (songInfo.isPaused) { - //reset oldURL if unpause notification option is on - if (options.unpauseNotification) { - oldURL = ""; - } - return; - } - // If url isn't the same as last one - send notification - if (songInfo.url !== oldURL) { - oldURL = songInfo.url; - if (isInteractive) { - notifyInteractive(songInfo); - } else { - // Close the old notification - oldNotification?.close(); - // This fixes a weird bug that would cause the notification to be updated instead of showing - setTimeout(() => { oldNotification = notify(songInfo, options) }, 10); - } - } - }); + + registerCallback(songInfo => { + if (!songInfo.isPaused || options.unpauseNotification) { + // Close the old notification + oldNotification?.close(); + // This fixes a weird bug that would cause the notification to be updated instead of showing + setTimeout(() => { oldNotification = notify(songInfo, options) }, 10); + } }); +} + +module.exports = (win, options) => { + // Register the callback for new song information + is.windows() && options.interactive ? + setupInteractive(win, options.unpauseNotification) : + setup(options); }; diff --git a/plugins/notifications/interactive.js b/plugins/notifications/interactive.js index cb487cae..210402bf 100644 --- a/plugins/notifications/interactive.js +++ b/plugins/notifications/interactive.js @@ -1,18 +1,25 @@ const { notificationImage, icons } = require("./utils"); const getSongControls = require('../../providers/song-controls'); +const registerCallback = require("../../providers/song-info"); const notifier = require("node-notifier"); //store song controls reference on launch let controls; let notificationOnPause; -//Save controls and onPause option -module.exports.setupInteractive = (win, unpauseNotification) => { +module.exports = (win, unpauseNotification) => { + //Save controls and onPause option const { playPause, next, previous } = getSongControls(win); controls = { playPause, next, previous }; - notificationOnPause = unpauseNotification; + // Register songInfoCallback + registerCallback(songInfo => { + if (!songInfo.isPaused || notificationOnPause) { + sendToaster(songInfo); + } + }); + win.webContents.once("closed", () => { deleteNotification() }); @@ -33,7 +40,7 @@ function deleteNotification() { } //New notification -module.exports.notifyInteractive = function sendToaster(songInfo) { +function sendToaster(songInfo) { deleteNotification(); //download image and get path let imgSrc = notificationImage(songInfo, true); From b266037bb412e1d80dd496beb2c3007ecbab72b5 Mon Sep 17 00:00:00 2001 From: Araxeus Date: Mon, 10 May 2021 06:05:39 +0300 Subject: [PATCH 03/10] lint --- providers/song-info.js | 1 - 1 file changed, 1 deletion(-) diff --git a/providers/song-info.js b/providers/song-info.js index 97ddb071..1b119b82 100644 --- a/providers/song-info.js +++ b/providers/song-info.js @@ -51,7 +51,6 @@ const songInfo = { }; const handleData = async (responseText, win) => { - console.log("handling song-info") let data = JSON.parse(responseText); songInfo.title = data?.videoDetails?.title; songInfo.artist = await getArtist(win) || cleanupArtistName(data?.videoDetails?.author); From bbe5a7d50bd5fa6fe9f18a5cbb9c7776a141c615 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Mon, 17 May 2021 04:44:57 +0000 Subject: [PATCH 04/10] fix: upgrade ytpl from 2.1.1 to 2.2.0 Snyk has created this PR to upgrade ytpl from 2.1.1 to 2.2.0. See this package in npm: See this project in Snyk: https://app.snyk.io/org/th-ch/project/81809c53-bb7b-46b9-a0d7-806d45d74ac6?utm_source=github&utm_medium=upgrade-pr --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 4a41c6de..7e10df26 100644 --- a/package.json +++ b/package.json @@ -83,7 +83,7 @@ "node-fetch": "^2.6.1", "node-notifier": "^9.0.1", "ytdl-core": "^4.5.0", - "ytpl": "^2.1.1" + "ytpl": "^2.2.0" }, "devDependencies": { "electron": "^12.0.7", diff --git a/yarn.lock b/yarn.lock index 4a6bc17a..28933db7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9339,10 +9339,10 @@ ytdl-core@^4.5.0: miniget "^4.0.0" sax "^1.1.3" -ytpl@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/ytpl/-/ytpl-2.1.1.tgz#c3c3e0e198e3fc7be13b52f5651e950b0aae94a0" - integrity sha512-yrU/w1k75f089zUONUm1QjlCv96QWhk/SS6jNEVJXMr8/9zEj4k2EIv81nk5wldJvpb+2rvEfm2zIwRqXRoZ9w== +ytpl@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ytpl/-/ytpl-2.2.1.tgz#e514eccdd46e02eeb0d16e08f8278489258ab31a" + integrity sha512-sxty58s4JTNCDkiaiTkcaXfWCOW5sfHOPwDQtWIkoU4C+Kht2qat8yaLVbWZIclUSZo+naANyaI7LGjhhrErGA== dependencies: miniget "^4.2.0" From 4fb0b1dd085a22f5c6bda67a000ad09071845a08 Mon Sep 17 00:00:00 2001 From: Araxeus Date: Wed, 19 May 2021 00:22:12 +0300 Subject: [PATCH 05/10] switch to `registerCallback()` on song info --- plugins/downloader/menu.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/plugins/downloader/menu.js b/plugins/downloader/menu.js index 9822c8ed..ce7f5643 100644 --- a/plugins/downloader/menu.js +++ b/plugins/downloader/menu.js @@ -2,13 +2,13 @@ const { existsSync, mkdirSync } = require("fs"); const { join } = require("path"); const { URL } = require("url"); -const { dialog, ipcMain } = require("electron"); +const { dialog } = require("electron"); const is = require("electron-is"); const ytpl = require("ytpl"); const chokidar = require('chokidar'); const { setOptions } = require("../../config/plugins"); -const getSongInfo = require("../../providers/song-info"); +const registerCallback = require("../../providers/song-info"); const { sendError } = require("./back"); const { defaultMenuDownloadLabel, getFolder } = require("./utils"); @@ -18,7 +18,6 @@ let callbackIsRegistered = false; module.exports = (win, options) => { if (!callbackIsRegistered) { - const registerCallback = getSongInfo(win); registerCallback((info) => { metadataURL = info.url; }); From 177ce5721fef2bc5a58373f5ad9139e9edd975d7 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Wed, 19 May 2021 05:31:34 +0000 Subject: [PATCH 06/10] fix: upgrade filenamify from 4.2.0 to 4.3.0 Snyk has created this PR to upgrade filenamify from 4.2.0 to 4.3.0. See this package in npm: See this project in Snyk: https://app.snyk.io/org/th-ch/project/81809c53-bb7b-46b9-a0d7-806d45d74ac6?utm_source=github&utm_medium=upgrade-pr --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 4a41c6de..0e31c913 100644 --- a/package.json +++ b/package.json @@ -78,7 +78,7 @@ "electron-store": "^7.0.3", "electron-unhandled": "^3.0.2", "electron-updater": "^4.3.8", - "filenamify": "^4.2.0", + "filenamify": "^4.3.0", "md5": "^2.3.0", "node-fetch": "^2.6.1", "node-notifier": "^9.0.1", diff --git a/yarn.lock b/yarn.lock index 4a6bc17a..8fb5ee79 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4130,10 +4130,10 @@ filename-reserved-regex@^2.0.0: resolved "https://registry.yarnpkg.com/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz#abf73dfab735d045440abfea2d91f389ebbfa229" integrity sha1-q/c9+rc10EVECr/qLZHzieu/oik= -filenamify@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/filenamify/-/filenamify-4.2.0.tgz#c99716d676869585b3b5d328b3f06590d032e89f" - integrity sha512-pkgE+4p7N1n7QieOopmn3TqJaefjdWXwEkj2XLZJLKfOgcQKkn11ahvGNgTD8mLggexLiDFQxeTs14xVU22XPA== +filenamify@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/filenamify/-/filenamify-4.3.0.tgz#62391cb58f02b09971c9d4f9d63b3cf9aba03106" + integrity sha512-hcFKyUG57yWGAzu1CMt/dPzYZuv+jAJUT85bL8mrXvNe6hWj6yEHEc4EdcgiA6Z3oi1/9wXJdZPXF2dZNgwgOg== dependencies: filename-reserved-regex "^2.0.0" strip-outer "^1.0.1" From 81246231426856b83d9bb1cfe90aba63d43ba10a Mon Sep 17 00:00:00 2001 From: Araxeus Date: Sat, 22 May 2021 18:38:36 +0300 Subject: [PATCH 07/10] fix notificationOnUnpause option --- plugins/notifications/back.js | 4 +++- plugins/notifications/interactive.js | 11 +++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/plugins/notifications/back.js b/plugins/notifications/back.js index 59b934c9..654e3b54 100644 --- a/plugins/notifications/back.js +++ b/plugins/notifications/back.js @@ -25,11 +25,13 @@ const notify = (info, options) => { const setup = (options) => { let oldNotification; + let currentUrl; registerCallback(songInfo => { - if (!songInfo.isPaused || options.unpauseNotification) { + if (!songInfo.isPaused && (songInfo.url !== currentUrl || options.unpauseNotification)) { // Close the old notification oldNotification?.close(); + currentUrl = songInfo.url; // This fixes a weird bug that would cause the notification to be updated instead of showing setTimeout(() => { oldNotification = notify(songInfo, options) }, 10); } diff --git a/plugins/notifications/interactive.js b/plugins/notifications/interactive.js index 210402bf..c30c1020 100644 --- a/plugins/notifications/interactive.js +++ b/plugins/notifications/interactive.js @@ -5,17 +5,20 @@ const notifier = require("node-notifier"); //store song controls reference on launch let controls; -let notificationOnPause; +let notificationOnUnpause; module.exports = (win, unpauseNotification) => { //Save controls and onPause option const { playPause, next, previous } = getSongControls(win); controls = { playPause, next, previous }; - notificationOnPause = unpauseNotification; + notificationOnUnpause = unpauseNotification; + + let currentUrl; // Register songInfoCallback registerCallback(songInfo => { - if (!songInfo.isPaused || notificationOnPause) { + if (!songInfo.isPaused && (songInfo.url !== currentUrl || notificationOnUnpause)) { + currentUrl = songInfo.url; sendToaster(songInfo); } }); @@ -78,7 +81,7 @@ function sendToaster(songInfo) { // dont delete notification on play/pause toDelete = undefined; //manually send notification if not sending automatically - if (!notificationOnPause) { + if (!notificationOnUnpause) { songInfo.isPaused = false; sendToaster(songInfo); } From fb61dbfa6c13023c269569a90fd7c8ac4b122119 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Wed, 26 May 2021 04:36:03 +0000 Subject: [PATCH 08/10] fix: upgrade @ffmpeg/core from 0.8.5 to 0.9.0 Snyk has created this PR to upgrade @ffmpeg/core from 0.8.5 to 0.9.0. See this package in npm: See this project in Snyk: https://app.snyk.io/org/th-ch/project/81809c53-bb7b-46b9-a0d7-806d45d74ac6?utm_source=github&utm_medium=upgrade-pr --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 4a41c6de..424d2010 100644 --- a/package.json +++ b/package.json @@ -64,7 +64,7 @@ }, "dependencies": { "@cliqz/adblocker-electron": "^1.20.4", - "@ffmpeg/core": "^0.8.5", + "@ffmpeg/core": "^0.9.0", "@ffmpeg/ffmpeg": "^0.9.7", "YoutubeNonStop": "git://github.com/lawfx/YoutubeNonStop.git#v0.9.0", "async-mutex": "^0.3.1", diff --git a/yarn.lock b/yarn.lock index 4a6bc17a..ef902cc8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -544,10 +544,10 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" -"@ffmpeg/core@^0.8.5": - version "0.8.5" - resolved "https://registry.yarnpkg.com/@ffmpeg/core/-/core-0.8.5.tgz#2d0b7d4409a4348fa6a1888c247de706ffc0e63f" - integrity sha512-hemVFmhVLbD/VZaCG2BvCzFglKytMIMJ5aJfc12eXN4O4cG0wXnGTMVzlK1KKW/6viHhJMPkc9h4UDnJW8Uivg== +"@ffmpeg/core@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@ffmpeg/core/-/core-0.9.0.tgz#4a999a07671c081216fcc2714f73ec02ddc9c24b" + integrity sha512-d931yzQpb8GRgTZr+T7+BMqglPZ1R8FPH3W3UA8I21RzuasRHsMwQ4MQTlS9twjfqvUGIkD8p/8mNToUVN/Yrw== "@ffmpeg/ffmpeg@^0.9.7": version "0.9.7" From 14dc78984fdd86fb8afe5a97aeabfe7221a5c782 Mon Sep 17 00:00:00 2001 From: snyk-bot Date: Wed, 26 May 2021 04:36:06 +0000 Subject: [PATCH 09/10] fix: upgrade ytdl-core from 4.5.0 to 4.7.0 Snyk has created this PR to upgrade ytdl-core from 4.5.0 to 4.7.0. See this package in npm: See this project in Snyk: https://app.snyk.io/org/th-ch/project/81809c53-bb7b-46b9-a0d7-806d45d74ac6?utm_source=github&utm_medium=upgrade-pr --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 4a41c6de..cc297c43 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,7 @@ "md5": "^2.3.0", "node-fetch": "^2.6.1", "node-notifier": "^9.0.1", - "ytdl-core": "^4.5.0", + "ytdl-core": "^4.7.0", "ytpl": "^2.1.1" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index 4a6bc17a..84d94f93 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9330,10 +9330,10 @@ yocto-queue@^0.1.0: resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== -ytdl-core@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/ytdl-core/-/ytdl-core-4.5.0.tgz#f07733387c548e5c3a5614c93ef55bde666eeaf4" - integrity sha512-e8r6skrakWNixsVlNPBMoRM1HrdW1swE97If9nenDUjF65uogYk4DvxIuqlmqRfBWKe+6aIZwqedNxUU9XLYJA== +ytdl-core@^4.7.0: + version "4.8.0" + resolved "https://registry.yarnpkg.com/ytdl-core/-/ytdl-core-4.8.0.tgz#d9f037a370a4b984f1f937e7a11b4531e8959443" + integrity sha512-LFhhwqFojReoaME17VpsFeiamygM0W/YNG8O02mrmS2O6Em5LjCPiJYdq7Af3CmJtBEOCdptSZ3Ql+3LGWDGvg== dependencies: m3u8stream "^0.8.3" miniget "^4.0.0" From d8f3246e464b98c10dd98abb43782fb45170320a Mon Sep 17 00:00:00 2001 From: TC Date: Fri, 28 May 2021 23:13:07 +0200 Subject: [PATCH 10/10] Bump electron to 12.0.8 --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 4a41c6de..ba1ee12f 100644 --- a/package.json +++ b/package.json @@ -86,7 +86,7 @@ "ytpl": "^2.1.1" }, "devDependencies": { - "electron": "^12.0.7", + "electron": "^12.0.8", "electron-builder": "^22.10.5", "electron-devtools-installer": "^3.1.1", "electron-icon-maker": "0.0.5", diff --git a/yarn.lock b/yarn.lock index 4a6bc17a..194b5e04 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3393,10 +3393,10 @@ electron-updater@^4.3.8: lodash.isequal "^4.5.0" semver "^7.3.4" -electron@^12.0.7: - version "12.0.7" - resolved "https://registry.yarnpkg.com/electron/-/electron-12.0.7.tgz#e0fca2c8be34cb7da48c4d15cfb1d2ad666d2718" - integrity sha512-722TZNKDuLpEmj96AzTYFKHaJEH98xgOBH0aldStaPXI1xDFfb9SJQQuirvwFlkwG5OqQdz6Ne3OwwJ7Dbs5nQ== +electron@^12.0.8: + version "12.0.8" + resolved "https://registry.yarnpkg.com/electron/-/electron-12.0.8.tgz#e52583b2b4f1eaa6fbb0e3666b9907f99f1f24c7" + integrity sha512-bN2wYNnnma7ugBsiwysO1LI6oTTV1lDHOXuWip+OGjDUiz0IiJmZ+r0gAIMMeypVohZh7AA1ftnKad7tJ8sH4A== dependencies: "@electron/get" "^1.0.1" "@types/node" "^14.6.2"