From bb47fd205eb16754ca5bde369b6d2b78e6eaf389 Mon Sep 17 00:00:00 2001 From: Grant Pannell <300992+DigitalDJ@users.noreply.github.com> Date: Sun, 14 Apr 2024 02:13:25 +0930 Subject: [PATCH] Rebase against WowUp v2.11.0 / WowUp.CF v2.11.1 --- unlimited-patches/01-CurseForgeMerge.patch | 676 ++++++++++++++---- unlimited-patches/10-IncludeTBCAddons.patch | 12 +- unlimited-patches/11-DisableCurseAds.patch | 4 +- .../12-CustomizableCurseAPIKey.patch | 66 +- .../14-CurseMigrationDialog.patch | 10 +- unlimited-patches/17-WowUpCFUserAgent.patch | 2 +- .../19-RevertOverwolfIntegration.patch | 80 +-- workflow-patches/01-WorkflowCheckouts.patch | 2 +- 8 files changed, 591 insertions(+), 261 deletions(-) diff --git a/unlimited-patches/01-CurseForgeMerge.patch b/unlimited-patches/01-CurseForgeMerge.patch index 3d1faf2..4b54356 100644 --- a/unlimited-patches/01-CurseForgeMerge.patch +++ b/unlimited-patches/01-CurseForgeMerge.patch @@ -1,4 +1,4 @@ ---- wowup-electron/src/environments/environment.ts +--- wowup-electron/src/environments/environment.ts +++ wowup-electron/src/environments/environment.ts @@ -13,16 +13,17 @@ wago: { @@ -145,7 +145,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "從 URL 安裝" }, "NEW_VERSION_POPUP": { @@ -165,7 +165,7 @@ "DESCRIPTION": "是否傳送匿名的插件統計資料和錯誤報告以幫助改進 WowUp?", "TOGGLE_LABEL": "允許遙測" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "設定應用程式更新通道", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "我明白了", "APP_RELEASE_CHANNEL_DESCRIPTION": "切換此應用程式的穩定版和 Beta 通道", @@ -180,7 +180,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "啟用系統通知", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "開啟插件詳情頁時,自動切換到上一次開啟的選項卡", "KEEP_LAST_OPENED_TAB_LABEL": "記住上一次開啟的選項卡", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "啟用硬體加速", "USE_SYMLINK_SUPPORT": "啟用符號連結", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "啟用符號連結使得 WowUp 在重新掃描時識別符號連結。警告:如果您不知道什麼是符號連結,請禁用此項。在當前版本中,符號連結將會在更新插件時被刪除,並被替換為真正的資料夾。", @@ -199,7 +199,7 @@ "CONFIG_FILES_LABEL": "配置檔案", "DEBUG_DATA_BUTTON": "轉儲除錯資料", "DEBUG_DATA_DESCRIPTION": "記錄除錯資料以幫助診斷潛在的問題。除錯資料可以在最新的日誌檔案中找到。", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "關於", @@ -230,7 +230,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "从 URL 安装" }, "NEW_VERSION_POPUP": { @@ -250,7 +250,7 @@ "DESCRIPTION": "是否发送匿名的插件统计数据和错误报告以帮助改进 WowUp?", "TOGGLE_LABEL": "允许遥测" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "设置应用程序更新通道", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "我明白了", "APP_RELEASE_CHANNEL_DESCRIPTION": "切换此应用程序的稳定版和 Beta 通道", @@ -265,7 +265,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "启用系统通知", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "打开插件详情页时,自动切换到上一次打开的选项卡", "KEEP_LAST_OPENED_TAB_LABEL": "记住上一次打开的选项卡", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "启用硬件加速", "USE_SYMLINK_SUPPORT": "启用符号链接", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "启用符号链接使得 WowUp 在重新扫描时识别符号链接。警告:如果您不知道什么是符号链接,请禁用此项。在当前版本中,符号链接将会在更新插件时被删除,并被替换为真正的文件夹。", @@ -284,7 +284,7 @@ "CONFIG_FILES_LABEL": "配置文件", "DEBUG_DATA_BUTTON": "转储调试数据", "DEBUG_DATA_DESCRIPTION": "记录调试数据以帮助诊断潜在的问题。调试数据可以在最新的日志文件中找到。", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "关于", @@ -315,7 +315,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "Ссылка на установку модификации" }, "NEW_VERSION_POPUP": { @@ -335,7 +335,7 @@ "DESCRIPTION": "Хотите помочь улучшить WowUp, анонимно отправляя данные об установке и ошибках?", "TOGGLE_LABEL": "Разрешить телеметрию" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Установка канала выпуска приложения", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Да, я понимаю", "APP_RELEASE_CHANNEL_DESCRIPTION": "Переключение между бета-версией и стабильной версией приложения", @@ -350,7 +350,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Включить системные уведомления", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "При открытии страницы сведений о модификации автоматически выбирает последнюю открытую вкладку.", "KEEP_LAST_OPENED_TAB_LABEL": "Сохранять последнюю открытую вкладку", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Включить аппаратное ускорение", "USE_SYMLINK_SUPPORT": "Включить поддержку символических ссылок", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Включение поддержки символических ссылок позволит WowUp распознавать их при повторном сканировании. Предупреждение: Если Вы не знаете, что такое символическая ссылка, то, скорее всего, Вам это не нужно. При обновлении символические ссылки в настоящее время будут заменены фактической папкой, и ссылка будет потеряна.", @@ -369,7 +369,7 @@ "CONFIG_FILES_LABEL": "Файлы настроек", "DEBUG_DATA_BUTTON": "Дамп отладочных данных", "DEBUG_DATA_DESCRIPTION": "Записывать отладочные данные, чтобы помочь в диагностике потенциальных проблем. Его можно найти в последнем лог-файле, если необходимо.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "О приложении", @@ -400,7 +400,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "Instalar Addon pela URL" }, "NEW_VERSION_POPUP": { @@ -420,7 +420,7 @@ "DESCRIPTION": "Ajudar a melhorar o WowUp enviando dados e/ou erros anônimos de instalação do app?", "TOGGLE_LABEL": "Permitir Telemetria" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Configurar canal de release do app", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Sim, eu entendo", "APP_RELEASE_CHANNEL_DESCRIPTION": "Alternar entre releases Beta e Estável para a aplicação", @@ -435,7 +435,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Habilitar notificações do sistema", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "When opening an addon detail page, automatically select the last opened tab", "KEEP_LAST_OPENED_TAB_LABEL": "Keep last opened tab", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Habilitar Aceleração de Hardware", "USE_SYMLINK_SUPPORT": "Habilitar suporte a Symlink", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Habilitando o suporte à symlink irá permitir ao WowUp reconhecer symlinks quando fazer um re-escaneamento. Aviso: Se você não sabe o que é um symlink, você não precisa disso. Quando atualizar os symlinks serão atualmente substituídos com uma pasta e o link será perdido.", @@ -454,7 +454,7 @@ "CONFIG_FILES_LABEL": "Config Files", "DEBUG_DATA_BUTTON": "Esvaziar log de depuração de dados", "DEBUG_DATA_DESCRIPTION": "Registra os dados de depuração e ajuda a diagnosticar problemas potenciais. Apenas por o curiosidade, isso pode ser encontrado em seu último arquivo de registro.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "Sobre", @@ -485,7 +485,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "Zainstaluj addon z URL" }, "NEW_VERSION_POPUP": { @@ -505,7 +505,7 @@ "DESCRIPTION": "Pomóż ulepszyć WowUp poprzez wysyłanie anonimowych danych o instalacji aplikacji lub o ich błędach.", "TOGGLE_LABEL": "Zezwalaj na telemetrię" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Ustawianie kanału wydania aplikacji", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Tak, rozumiem.", "APP_RELEASE_CHANNEL_DESCRIPTION": "Przełączanie pomiędzy wersjami Beta i Stabilną aplikacji", @@ -520,7 +520,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Włącz powiadomienia systemowe", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "Podczas otwierania strony szczegółów addonu, automatycznie wybieraj ostatnio otwartą kartę", "KEEP_LAST_OPENED_TAB_LABEL": "Zachowaj ostatnio otwartą kartę", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Włącz akcelerację sprzętową", "USE_SYMLINK_SUPPORT": "Włącz obsługę Symlink", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Włączenie obsługi symlink pozwoli WowUp na rozpoznawanie symlinków podczas ponownego skanowania. Ostrzeżenie: Jeśli nie wiesz, co to jest symlink, nie potrzebujesz tego. Podczas aktualizacji symlink będzie obecnie zastępowany rzeczywistym folderem, a link zostanie utracony.", @@ -539,7 +539,7 @@ "CONFIG_FILES_LABEL": "Pliki konfiguracyjne", "DEBUG_DATA_BUTTON": "Zrzut danych debugowania", "DEBUG_DATA_DESCRIPTION": "Rejestruj dane debugowania, aby pomóc w diagnozowaniu potencjalnych problemów. Można je znaleźć w najnowszym pliku dziennika dla ciekawskich.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "Informacje", @@ -570,7 +570,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "Installer utvidelse fra URL" }, "NEW_VERSION_POPUP": { @@ -590,7 +590,7 @@ "DESCRIPTION": "Vil du bidra til å forbedre WowUp ved å sende anonyme installasjonsdata og/eller feil?", "TOGGLE_LABEL": "Tillat telemetri" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Konfigurer apputgivelseskanalen", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Ja, jeg forstår", "APP_RELEASE_CHANNEL_DESCRIPTION": "Veksle mellom beta- og stabilutgivelsene av applikasjonen", @@ -605,7 +605,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Aktiver systemvarsler", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "Når du åpner en detaljside for en utvidelse, åpnes automatisk den sist åpnede fanen", "KEEP_LAST_OPENED_TAB_LABEL": "Behold siste åpnede fane", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Aktiver maskinvareakselerasjon", "USE_SYMLINK_SUPPORT": "Aktiver symlink-støtte", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Aktivering av symlink-støtte lar WowUp oppdage symlinker ved reskanning. Advarsel: Hvis du ikke vet hva en symlink er, trenger du ikke denne. For øyeblikket, når du oppdaterer, erstattes symlinker med en faktisk mappe, og koblingen går tapt.", @@ -624,7 +624,7 @@ "CONFIG_FILES_LABEL": "Konfigurasjonsfiler", "DEBUG_DATA_BUTTON": "Lagre debugdata", "DEBUG_DATA_DESCRIPTION": "Logg debugdata for å hjelpe deg med å diagnostisere potensielle problemer. Hvis du er nyskjerrig kan du finne dette i den siste loggfilen.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "Om", @@ -655,7 +655,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "설치할 애드온 URL 주소" }, "NEW_VERSION_POPUP": { @@ -675,7 +675,7 @@ "DESCRIPTION": "Help improve WowUp by sending anonymous app install data and/or errors?", "TOGGLE_LABEL": "Allow Telemetry" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Setting the app release channel", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Yes, I understand", "APP_RELEASE_CHANNEL_DESCRIPTION": "Toggle between the Beta and Stable releases of the application", @@ -690,7 +690,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "시스템 알림 활성화", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "When opening an addon detail page, automatically select the last opened tab", "KEEP_LAST_OPENED_TAB_LABEL": "Keep last opened tab", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "하드웨어 가속 활성화", "USE_SYMLINK_SUPPORT": "Enable Symlink Support", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Enabling symlink support will allow WowUp to recognize symlinks when performing a re-scan. Warning: If you do not know what a symlink is, you do not need this. When updating symlinks will currently be replaced with an actual folder and the link lost.", @@ -709,7 +709,7 @@ "CONFIG_FILES_LABEL": "Config Files", "DEBUG_DATA_BUTTON": "디버그 데이터 덤프", "DEBUG_DATA_DESCRIPTION": "잠재적인 문제를 진단하는데 도움을 주기 위해 디버그 데이터를 기록합니다. 궁금하시다면 최신 로그 파일에서 확인하실 수 있습니다.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "About", @@ -740,7 +740,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "Installa un Addon tramite URL" }, "NEW_VERSION_POPUP": { @@ -760,7 +760,7 @@ "DESCRIPTION": "Help improve WowUp by sending anonymous app install data and/or errors?", "TOGGLE_LABEL": "Allow Telemetry" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Setting the app release channel", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Yes, I understand", "APP_RELEASE_CHANNEL_DESCRIPTION": "Toggle between the Beta and Stable releases of the application", @@ -775,7 +775,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Notifiche di Sistema", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "When opening an addon detail page, automatically select the last opened tab", "KEEP_LAST_OPENED_TAB_LABEL": "Keep last opened tab", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Accelerazione Hardware", "USE_SYMLINK_SUPPORT": "Abilita il Supporto Symlink", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "L'abilitazione del supporto symlink consentirà a WowUp di riconoscere i symlinks durante l'esecuzione di una nuova scansione. Attenzione: se non sai cos'è un symlink, puoi anche non procedere. Durante l'aggiornamento, i symlinks verranno sostituiti con una cartella reale e il collegamento viene perso.", @@ -794,7 +794,7 @@ "CONFIG_FILES_LABEL": "Config Files", "DEBUG_DATA_BUTTON": "Dump Dati Di Debug", "DEBUG_DATA_DESCRIPTION": "Registra i dati di debug per aiutare a diagnosticare potenziali problemi. Questi dati possono essere trovati nei tuoi ultimi file di log.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "About", @@ -825,7 +825,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "URL de l'addon à installer" }, "NEW_VERSION_POPUP": { @@ -845,7 +845,7 @@ "DESCRIPTION": "Help improve WowUp by sending anonymous app install data and/or errors?", "TOGGLE_LABEL": "Allow Telemetry" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Setting the app release channel", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Yes, I understand", "APP_RELEASE_CHANNEL_DESCRIPTION": "Toggle between the Beta and Stable releases of the application", @@ -860,7 +860,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Activer le système de notification", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "A l'ouverture de la fenêtre de détails d'un addon, selectionne automatiquement le dernier onglet utilisé", "KEEP_LAST_OPENED_TAB_LABEL": "Garder le dernier onglet de détail ouvert", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Activer l'accélération matérielle", "USE_SYMLINK_SUPPORT": "Enable Symlink Support", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Enabling symlink support will allow WowUp to recognize symlinks when performing a re-scan. Warning: If you do not know what a symlink is, you do not need this. When updating symlinks will currently be replaced with an actual folder and the link lost.", @@ -879,7 +879,7 @@ "CONFIG_FILES_LABEL": "Config Files", "DEBUG_DATA_BUTTON": "Dump des données de débogage", "DEBUG_DATA_DESCRIPTION": "Log les données de débogage pour aider à diagnostiquer les problèmes potentiels. Cela peut être trouvé dans votre dernier fichier journal pour les curieux.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "About", @@ -910,7 +910,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "Instalar addon desde URL" }, "NEW_VERSION_POPUP": { @@ -930,7 +930,7 @@ "DESCRIPTION": "¿Ayudar a mejorar WowUp enviando datos anónimos de instalación y/o error?", "TOGGLE_LABEL": "Permitir telemetría" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Configuración del canal de publicación de WowUp", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Sí, lo entiendo", "APP_RELEASE_CHANNEL_DESCRIPTION": "Cambia entre las versiones Beta y Estable de la aplicación", @@ -945,7 +945,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Activar notificaciones del sistema", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "Al abrir los detalles de un addon, selecciona automáticamente la última pestaña abierta.", "KEEP_LAST_OPENED_TAB_LABEL": "Recordar la última pestaña abierta", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Activar aceleración por hardware", "USE_SYMLINK_SUPPORT": "Activar soporte de enlaces simbólicos (symlink)", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Activar el soporte de enlaces simbólicos permite a WowUp reconocerlos durante el reescaneo.\n\nAdvertencia: Si no sabe lo que es un enlace simbólico, no necesita activar esto. Al actualizar addons, los enlaces simbólicos serán reemplazados por copias de las carpetas y el enlace se perderá.", @@ -964,7 +964,7 @@ "CONFIG_FILES_LABEL": "Archivos de configuración", "DEBUG_DATA_BUTTON": "Eliminar datos de depuración", "DEBUG_DATA_DESCRIPTION": "Registra datos de depuración y ayuda a diagnosticar problemas potenciales. Puede curiosearlo abriendo el último archivo de registro.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "Acerca de", @@ -995,7 +995,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,14 +311,21 @@ +@@ -313,14 +313,21 @@ "TITLE": "Install Addon URL" }, "NEW_VERSION_POPUP": { @@ -1018,7 +1018,7 @@ }, "TITLE": "WowUp Permissions Setup", "WAGO": { -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Setting the app release channel", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Yes, I understand", "APP_RELEASE_CHANNEL_DESCRIPTION": "Toggle between the Beta and Stable releases of the application", @@ -1033,7 +1033,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Enable System Notifications", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "When opening an addon detail page, automatically select the last opened tab", "KEEP_LAST_OPENED_TAB_LABEL": "Keep last opened tab", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Enable Hardware Acceleration", "USE_SYMLINK_SUPPORT": "Enable Symlink Support", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Enabling symlink support will allow WowUp to recognize symlinks when performing a re-scan. Warning: If you do not know what a symlink is, you do not need this. When updating symlinks will currently be replaced with an actual folder and the link lost.", @@ -1052,7 +1052,7 @@ "CONFIG_FILES_LABEL": "Config Files", "DEBUG_DATA_BUTTON": "Dump Debug Data", "DEBUG_DATA_DESCRIPTION": "Log debug data to help with diagnosing potential issues. This can be found in your latest log file for the curious.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "About", @@ -1083,7 +1083,22 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -299,13 +299,13 @@ + "INSTALL_FAILED": "Beim Versuch das Addon zu installieren ist etwas schief gelaufen, bitte versuche es erneut.\n\nWenn diese Nachricht weiterhin erscheint, kannst Du auf unserem Discord im Kanal #help-me nach Hilfe fragen.", + "INVALID_URL": "Die eingetragene URL ist ungültig. Beispiele für gültige URLs sind:\n\t- https://github.com/WowUp/WowUp.Addon\n\t- https://www.wowinterface.com/downloads/info25610-8.3-014.html\n\t- https://www.curseforge.com/wow/addons/altoholic", + "NO_ADDON_FOUND": "Es wurde kein Addon gefunden. Stelle sicher, dass die URL zur richtigen Website führt.\n\nSolltest Du versuchen ein Addon von GitHub zu installieren, stelle sicher, dass das Repository Release-Tags mit einem ZIP-Archiv, welches das Addon enthält, besitzt.", + "NO_RELEASE_FOUND": "Es wurde kein Release für {message} gefunden.\n\nEin gültiges Release mit Zip-Datei-Assets ist erforderlich, damit WowUp sie herunterladen kann.", + "NO_SEARCH_RESULTS": "Es wurden keine Suchergebnisse gefunden.", + "TITLE": "Installation fehlgeschlagen", +- "WRATH_ASSET_NOT_FOUND": "No asset was found to download from {message}.\n\nA valid zip file ending with '-wrath' is required in order for WowUp to download it." ++ "WRATH_ASSET_NOT_FOUND": "Es wurde keine Datei gefunden, die von {message} heruntergeladen werden kann.\n\nFür den Download durch WowUp ist eine gültige ZIP-Datei erforderlich, die mit '-wrath' endet." + }, + "IMPORT_ASSET_WARNING": "Wir konnten nicht überprüfen, ob die neueste Version dieses Add-ons mit deinem ausgewählten Client kompatibel ist.\n\nAber wir haben eine ZIP-Datei \"{zipName}\" gefunden.\n\nDie Installation erfolgt auf eigene Gefahr.", + "IMPORT_BUTTON": "Importieren", + "IMPORT_WARNING_TITLE": "Addon Import Warnung", + "INSTALL_BUTTON": "Installieren", + "INSTALL_SUCCESS_LABEL": "Installiert!", +@@ -313,12 +313,19 @@ "TITLE": "Installation eines Addons über eine externe URL" }, "NEW_VERSION_POPUP": { @@ -1091,10 +1106,10 @@ }, "PERMISSIONS": { + "CURSEFORGE": { -+ "DESCRIPTION_AD_LINK": "ad vendors", -+ "DESCRIPTION_BOTTOM": ". Click on the Manage button to control you consents, or to object to the processing of your data. You can change your preferences any time via the settings screen.", ++ "DESCRIPTION_AD_LINK": "Werbepartner", ++ "DESCRIPTION_BOTTOM": ". Klicke auf die Schaltfläche 'Verwalten', um deine Einwilligungen zu steuern oder Widerspruch gegen die Verarbeitung deiner Daten einzulegen. Du kannst deine Einstellungen jederzeit über das Einstellungsmenü ändern.", + "DESCRIPTION_TOP": " In order to use this application's integration with CurseForge they require that you allow them to show you an ad from one of their ", -+ "MANAGE_BUTTON": "Manage", ++ "MANAGE_BUTTON": "Verwalten", + "TITLE": "CurseForge" + }, "MESSAGE": "Bevor wir beginnen, müssen wir einige Berechtigungen für die App einrichten.", @@ -1103,7 +1118,7 @@ "DESCRIPTION": "Möchest Du helfen, WowUp zu verbessern, indem anonyme Installationsdaten und/oder Fehler gesendet werden?", "TOGGLE_LABEL": "Telemetrie zulassen" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Einstellen des App-Release-Kanals", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Ja ich verstehe", "APP_RELEASE_CHANNEL_DESCRIPTION": "Wechseln zwischen der Beta- und Stabilen-Versionen der Anwendung", @@ -1118,7 +1133,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Systembenachrichtigungen aktivieren", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "Beim Öffnen einer AddOn-Detailansicht wird automatisch der zuletzt geöffnete Tab ausgewählt", "KEEP_LAST_OPENED_TAB_LABEL": "Zuletzt geöffneten Tab beibehalten", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Hardwarebeschleunigung aktivieren", "USE_SYMLINK_SUPPORT": "Symlink-Unterstützung aktivieren", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Durch das Aktivieren der Symlink-Unterstützung kann WowUp Symlinks erkennen, wenn ein erneuter Scan durchgeführt wird. Warnung: Wenn Du nicht weißt, was ein Symlink ist, brauchst Du dies nicht. Beim Aktualisieren werden Symlinks derzeit durch einen tatsächlichen Ordner ersetzt und der Link geht verloren.", @@ -1126,9 +1141,9 @@ "USE_SYMLINK_SUPPORT_DESCRIPTION": "Erlaubt WowUp Symlink-Ordner in deinem Addon-Ordner zu scannen. Warnung: Diese werden beim Aktualisieren/Installieren ersetzt." }, + "CURSEFORGE": { -+ "ADS_OPTION_DESCRIPTION": "View and manage how CurseForge advertisers may use your data for ad personalization", -+ "ADS_OPTION_LABEL": "Ads Personalization & Data", -+ "ADS_OPTION_MANAGE": "Manage", ++ "ADS_OPTION_DESCRIPTION": "Sehe ein und verwalte, wie CurseForge-Werbetreibende deine Daten für Werbepersonalisierung nutzen können.", ++ "ADS_OPTION_LABEL": "Werbepersonalisierung und Daten", ++ "ADS_OPTION_MANAGE": "Verwalten", + "TITLE": "CurseForge" + }, "DEBUG": { @@ -1137,7 +1152,7 @@ "CONFIG_FILES_LABEL": "Konfigurationsdateien", "DEBUG_DATA_BUTTON": "Debug-Daten speichern", "DEBUG_DATA_DESCRIPTION": "Protokolliere Debug-Daten, um mögliche Probleme zu diagnostizieren. Dies findest Du in Deiner aktuellen Protokolldatei (für Neugierige).", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "Über", @@ -1151,6 +1166,23 @@ "WOW": { "ADD_CLIENT_BUTTON": "Neuen hinzufügen", "AUTO_UPDATE_DESCRIPTION": "Neu installierte Addons werden standardmäßig auf 'Automatisches Update' eingestellt", +@@ -599,14 +615,14 @@ + "RESCAN_CLIENTS_BUTTON": "Neu scannen", + "RESCAN_CLIENTS_LABEL": "Installierte World of Warcraft-Produkte erneut durchsuchen", + "SAVE_WOW_DIRECTORY_SELECT_BUTTON": "Speichern", + "TITLE": "World of Warcraft" + }, + "WTF_EXPLORER": { +- "FOLDER_PATH_LABEL": "Folder: ", +- "PAGE_EXPLANATION": "The WTF Explorer allows you to inspect all the data your addons have saved.\nFiles in grey are typically things you can ignore such as backup files.\nFiles in red should belong to addons that you no longer have installed.", ++ "FOLDER_PATH_LABEL": "Ordner: ", ++ "PAGE_EXPLANATION": "Der WTF Explorer ermöglicht dir, alle Daten zu inspizieren, die deine Add-Ons gespeichert haben.\nDateien in Grau sind in der Regel Dinge, die du ignorieren kannst, wie beispielsweise Sicherungskopien.\nDateien in Rot sollten zu Add-Ons gehören, die du nicht mehr installiert hast.", + "TITLE": "WTF Explorer" + } + } + }, + "WTF_BACKUP": { + "APPLY_CONFIRMATION": { --- wowup-electron/src/assets/i18n/cs.json +++ wowup-electron/src/assets/i18n/cs.json @@ -31,13 +31,13 @@ @@ -1168,7 +1200,7 @@ "APP": { "APP_MENU": { "EDIT": { -@@ -311,12 +311,19 @@ +@@ -313,12 +313,19 @@ "TITLE": "URL adresa pro instalaci addonu" }, "NEW_VERSION_POPUP": { @@ -1188,7 +1220,7 @@ "DESCRIPTION": "Help improve WowUp by sending anonymous app install data and/or errors?", "TOGGLE_LABEL": "Allow Telemetry" }, -@@ -513,12 +520,14 @@ +@@ -515,12 +522,14 @@ "APP_RELEASE_CHANNEL_CONFIRMATION_LABEL": "Setting the app release channel", "APP_RELEASE_CHANNEL_CONFIRMATION_POSITIVE_BUTTON": "Yes, I understand", "APP_RELEASE_CHANNEL_DESCRIPTION": "Toggle between the Beta and Stable releases of the application", @@ -1203,7 +1235,7 @@ "ENABLE_SYSTEM_NOTIFICATIONS_LABEL": "Povolit systémové notifikace", "KEEP_LAST_OPENED_TAB_DESCRIPTION": "When opening an addon detail page, automatically select the last opened tab", "KEEP_LAST_OPENED_TAB_LABEL": "Keep last opened tab", -@@ -551,12 +560,18 @@ +@@ -553,12 +562,18 @@ "USE_HARDWARE_ACCELERATION_LABEL": "Zapnout hardwarovou akceleraci", "USE_SYMLINK_SUPPORT": "Enable Symlink Support", "USE_SYMLINK_SUPPORT_CONFIRMATION_DESCRIPTION": "Enabling symlink support will allow WowUp to recognize symlinks when performing a re-scan. Warning: If you do not know what a symlink is, you do not need this. When updating symlinks will currently be replaced with an actual folder and the link lost.", @@ -1222,7 +1254,7 @@ "CONFIG_FILES_LABEL": "Config Files", "DEBUG_DATA_BUTTON": "Uložit debugovací data", "DEBUG_DATA_DESCRIPTION": "Zaloguje debugovací data do logovacího souboru pro případnou diagnostiku problémů s aplikací. Pro zvědavce: Tato data naleznete v nejnovějším logovacím souboru.", -@@ -568,12 +583,13 @@ +@@ -570,12 +585,13 @@ }, "TABS": { "ABOUT": "About", @@ -1238,7 +1270,23 @@ "AUTO_UPDATE_DESCRIPTION": "Nově instalované addony budou automaticky označeny k automatické aktualizaci pomocí WowUp.", --- wowup-electron/src/app/services/wowup/patch-notes.service.ts +++ wowup-electron/src/app/services/wowup/patch-notes.service.ts -@@ -59,37 +59,43 @@ +@@ -17,13 +17,15 @@ + const CHANGELOGS: ChangeLog[] = [ + { + Version: "2.11.0", + html: ` +

Changes

+ + `, + }, + { + Version: "2.10.0", +@@ -69,37 +71,43 @@

Changes

`, }, ---- wowup-electron/src/app/services/links/link.service.ts -+++ wowup-electron/src/app/services/links/link.service.ts -@@ -63,13 +63,13 @@ - }, - }); - - return dialogRef.afterClosed().pipe( - first(), - switchMap((result: DialogResult) => { -- if (!result.success) { -+ if (result === undefined || !result.success) { - return of(undefined); - } - - if (result.trustDomain !== "") { - return from(this._wowUpService.trustDomain(result.trustDomain)).pipe( - switchMap(() => from(this.openExternalLink(href))) --- wowup-electron/src/app/services/addons/addon-fingerprint.service.ts +++ wowup-electron/src/app/services/addons/addon-fingerprint.service.ts @@ -1,9 +1,9 @@ @@ -1348,7 +1379,7 @@ AddonChannelType, AddonDependency, AddonDependencyType, -@@ -599,13 +600,17 @@ +@@ -597,13 +598,17 @@ } else { this._activeInstalls.splice(itemIdx, 1, updateEvent); } @@ -1366,7 +1397,7 @@ const clientMap = {}; const installations = await this._warcraftInstallationService.getWowInstallationsAsync(); -@@ -613,20 +618,26 @@ +@@ -611,20 +616,26 @@ const clientTypeName = getEnumName(WowClientType, installation.clientType); const useSymlinkMode = await this._wowUpService.getUseSymlinkMode(); @@ -1403,26 +1434,26 @@ import { SensitiveStorageService } from "../storage/sensitive-storage.service"; import { UiMessageService } from "../ui-message/ui-message.service"; +import { CurseAddonProvider } from "../../addon-providers/curse-addon-provider"; - import { WowUpAddonProvider, WowInterfaceAddonProvider, TukUiAddonProvider } from "wowup-lib-core/lib/addon-providers"; + import { WowUpAddonProvider, WowInterfaceAddonProvider, TukUiAddonProvider } from "wowup-lib-core"; import { AppConfig } from "../../../environments/environment"; import { GenericNetworkInterface } from "../../business-objects/generic-network-interface"; @Injectable({ providedIn: "root", -@@ -82,12 +83,13 @@ - } +@@ -83,12 +84,13 @@ const providers: AddonProvider[] = [ this.createZipAddonProvider(), this.createRaiderIoAddonProvider(), this.createWowUpCompanionAddonProvider(), this.createWowUpAddonProvider(), -+ this.createCurseProvider(), this.createWagoAddonProvider(), ++ this.createCurseProvider(), this.createTukUiAddonProvider(), this.createWowInterfaceAddonProvider(), this.createGitHubAddonProvider(), ]; + for (const provider of providers) { @@ -140,12 +142,16 @@ public createWowUpCompanionAddonProvider(): WowUpCompanionAddonProvider { return new WowUpCompanionAddonProvider(this._fileService, this._tocService); @@ -1522,7 +1553,7 @@ +import { catchError, filter, first, map, switchMap, takeUntil, tap } from "rxjs/operators"; import { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy } from "@angular/core"; - import { MatLegacySnackBar as MatSnackBar } from "@angular/material/legacy-snack-bar"; + import { MatSnackBar } from "@angular/material/snack-bar"; import { TranslateService } from "@ngx-translate/core"; import { @@ -1541,7 +1572,7 @@ import { WowUpService } from "../../services/wowup/wowup.service"; import { WowUpProtocolService } from "../../services/wowup/wowup-protocol.service"; +import { getProtocol } from "../../utils/string.utils"; - import { WowInstallation } from "wowup-lib-core/lib/models"; + import { WowInstallation } from "wowup-lib-core"; @Component({ selector: "app-home", @@ -1561,7 +1592,7 @@ public readonly TAB_INDEX_SETTINGS = TAB_INDEX_SETTINGS; @@ -63,12 +66,24 @@ private _dialogFactory: DialogFactory, - private _wowUpProtocolService: WowUpProtocolService + private _wowUpProtocolService: WowUpProtocolService, ) { const wowInstalledSub = this._warcraftInstallationService.wowInstallations$.subscribe((installations) => { this.hasWowClient = installations.length > 0; @@ -1575,7 +1606,7 @@ + catchError((e) => { + console.error(e); + return of(undefined); -+ }) ++ }), + ) + .subscribe(); @@ -1599,6 +1630,23 @@ private initAppUpdateCheck() { if (this._appUpdateInterval !== undefined) { +--- wowup-electron/src/app/pages/get-addons/get-addons.component.ts ++++ wowup-electron/src/app/pages/get-addons/get-addons.component.ts +@@ -613,13 +613,13 @@ + addons, + [ + (sr) => (sr.providerName === ADDON_PROVIDER_HUB ? 1 : 0), + (sr) => (sr.providerName === ADDON_PROVIDER_WAGO ? 1 : 0), + "downloadCount", + ], +- ["desc", "desc", "desc"] ++ ["desc", "desc", "desc"], + ); + } + + private setPageContextText(rowCount: number) { + const contextStr: string = + rowCount > 0 --- wowup-electron/src/app/modules/options.module.ts +++ wowup-electron/src/app/modules/options.module.ts @@ -10,21 +10,23 @@ @@ -1638,6 +1686,39 @@ ], }) export class OptionsModule {} +--- wowup-electron/src/app/modules/common-ui.module.ts ++++ wowup-electron/src/app/modules/common-ui.module.ts +@@ -27,13 +27,12 @@ + ProgressBarComponent, + ConfirmDialogComponent, + AlertDialogComponent, + AnimatedLogoComponent, + ExternalUrlConfirmationDialogComponent, + PatchNotesDialogComponent, +- ProgressButtonComponent, + TelemetryDialogComponent, + ConsentDialogComponent, + CellWrapTextComponent, + CenteredSnackbarComponent, + ClientSelectorComponent, + WebViewComponent, +@@ -45,16 +44,15 @@ + ProgressBarComponent, + ConfirmDialogComponent, + AlertDialogComponent, + AnimatedLogoComponent, + ExternalUrlConfirmationDialogComponent, + PatchNotesDialogComponent, +- ProgressButtonComponent, + TelemetryDialogComponent, + ConsentDialogComponent, + CellWrapTextComponent, + CenteredSnackbarComponent, + ClientSelectorComponent, + WebViewComponent, + ], + }) + export class CommonUiModule {} --- wowup-electron/src/app/components/options/options-app-section/options-app-section.component.ts +++ wowup-electron/src/app/components/options/options-app-section/options-app-section.component.ts @@ -8,12 +8,13 @@ @@ -1720,6 +1801,50 @@ {{ "PAGES.OPTIONS.APPLICATION.APP_RELEASE_CHANNEL_DROPDOWN_LABEL" | translate }} +--- wowup-electron/src/app/components/options/options-addon-section/options-addon-section.component.ts ++++ wowup-electron/src/app/components/options/options-addon-section/options-addon-section.component.ts +@@ -56,13 +56,13 @@ + }); + + public constructor( + private _addonProviderService: AddonProviderFactory, + private _sensitiveStorageService: SensitiveStorageService, + private _translateService: TranslateService, +- private _dialogFactory: DialogFactory ++ private _dialogFactory: DialogFactory, + ) { + this._addonProviderService.addonProviderChange$.subscribe(() => { + this.loadProviderStates(); + }); + + this.preferenceForm.valueChanges +@@ -70,24 +70,24 @@ + takeUntil(this.destroy$), + debounceTime(300), + switchMap((ch) => { + const tasks: Observable[] = []; + if (typeof ch?.ghPersonalAccessToken === "string") { + tasks.push( +- from(this._sensitiveStorageService.setAsync(PREF_GITHUB_PERSONAL_ACCESS_TOKEN, ch.ghPersonalAccessToken)) ++ from(this._sensitiveStorageService.setAsync(PREF_GITHUB_PERSONAL_ACCESS_TOKEN, ch.ghPersonalAccessToken)), + ); + } + if (typeof ch?.wagoAccessToken === "string") { + tasks.push(from(this.onWagoAccessTokenChange(ch.wagoAccessToken))); + } + return zip(tasks); + }), + catchError((e) => { + console.error(e); + return of(undefined); +- }) ++ }), + ) + .subscribe(); + } + + public ngOnInit(): void { + this.loadProviderStates(); --- wowup-electron/src/app/components/common/webview/webview.component.ts +++ wowup-electron/src/app/components/common/webview/webview.component.ts @@ -72,17 +72,17 @@ @@ -1842,14 +1967,15 @@ --- wowup-electron/src/app/components/common/consent-dialog/consent-dialog.component.ts +++ wowup-electron/src/app/components/common/consent-dialog/consent-dialog.component.ts -@@ -1,38 +1,65 @@ +@@ -1,39 +1,66 @@ -import { AfterViewChecked, Component, ElementRef, ViewChild } from "@angular/core"; +import { AfterViewChecked, Component, ElementRef, OnInit, ViewChild } from "@angular/core"; import { UntypedFormControl, UntypedFormGroup } from "@angular/forms"; - import { MatLegacyDialogRef as MatDialogRef } from "@angular/material/legacy-dialog"; - import { AppConfig } from "../../../../environments/environment"; + + import { MatDialogRef } from "@angular/material/dialog"; +import { IPC_OW_IS_CMP_REQUIRED, IPC_OW_OPEN_CMP } from "../../../../common/constants"; +import { ElectronService } from "../../../services"; + import { AppConfig } from "../../../../environments/environment"; export interface ConsentDialogResult { telemetry: boolean; @@ -1874,7 +2000,7 @@ - public constructor(public dialogRef: MatDialogRef) { + public constructor( + public dialogRef: MatDialogRef, -+ private _electronService: ElectronService ++ private _electronService: ElectronService, + ) { this.consentOptions = new UntypedFormGroup({ telemetry: new UntypedFormControl(true), @@ -1949,9 +2075,198 @@ +--- wowup-electron/src/app/components/addons/get-addon-status-cell/get-addon-status-cell.component.scss ++++ wowup-electron/src/app/components/addons/get-addon-status-cell/get-addon-status-cell.component.scss +@@ -1,13 +1,13 @@ + .addon-status-column { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +- height: 62px; ++ // height: 62px; + } + .unavailable { + background-color: var(--background-secondary-3); + display: inline; + padding: 1em; + border-radius: 4px; + } +--- wowup-electron/src/index.html ++++ wowup-electron/src/index.html + +- ++ + +- +- +- +- WowUp.io +- +- +- +- +- +- +- +- +- +- +-
++ WowUp.io CF ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++
+- +-
+-
+- +- +- +- +\ No newline at end of file ++ ++ ++ --- wowup-electron/app/main.ts +++ wowup-electron/app/main.ts -@@ -341,12 +341,16 @@ +@@ -153,22 +153,43 @@ + } + + // This method will be called when Electron has finished + // initialization and is ready to create browser windows. + // Some APIs can only be used after this event occurs. + // Added 400 ms to fix the black background issue while using transparent window. More details at https://github.com/electron/electron/issues/15947 +-if (app.isReady()) { +- log.info(`App already ready: ${Date.now() - startedAt}ms`); +-} else { +- app.once("ready", () => { ++app ++ .whenReady() ++ .then(() => { ++ powerMonitor.on("resume", () => { ++ log.info("powerMonitor resume"); ++ win?.webContents?.send(IPC_POWER_MONITOR_RESUME); ++ }); ++ ++ powerMonitor.on("suspend", () => { ++ log.info("powerMonitor suspend"); ++ win?.webContents?.send(IPC_POWER_MONITOR_SUSPEND); ++ }); ++ ++ powerMonitor.on("lock-screen", () => { ++ log.info("powerMonitor lock-screen"); ++ win?.webContents?.send(IPC_POWER_MONITOR_LOCK); ++ }); ++ ++ powerMonitor.on("unlock-screen", () => { ++ log.info("powerMonitor unlock-screen"); ++ win?.webContents?.send(IPC_POWER_MONITOR_UNLOCK); ++ }); ++ + log.info(`App ready: ${Date.now() - startedAt}ms`); + // setTimeout(() => { + createWindow(); + // }, 400); ++ }) ++ .catch((e) => { ++ log.error("whenready failed", e); + }); +-} + + app.on("before-quit", () => { + windowState.saveWindowConfig(win); + win = null; + appIsQuitting = true; + appUpdater?.dispose(); +@@ -207,32 +228,12 @@ + log.info(`Custom protocol detected: ${url}`); + win?.webContents.send(IPC_CUSTOM_PROTOCOL_RECEIVED, url); + setPendingOpenUrl(url); + } + }); + } +- +-powerMonitor.on("resume", () => { +- log.info("powerMonitor resume"); +- win?.webContents?.send(IPC_POWER_MONITOR_RESUME); +-}); +- +-powerMonitor.on("suspend", () => { +- log.info("powerMonitor suspend"); +- win?.webContents?.send(IPC_POWER_MONITOR_SUSPEND); +-}); +- +-powerMonitor.on("lock-screen", () => { +- log.info("powerMonitor lock-screen"); +- win?.webContents?.send(IPC_POWER_MONITOR_LOCK); +-}); +- +-powerMonitor.on("unlock-screen", () => { +- log.info("powerMonitor unlock-screen"); +- win?.webContents?.send(IPC_POWER_MONITOR_UNLOCK); +-}); + + let lastCrash = 0; + + const crashMap = new Map(); + const exitOnCrashServices = ["network.mojom.NetworkService"]; + /** If a particular child process crashes too many times, notify the user and exit the app to attempt preventing softlock of system */ +@@ -345,24 +346,36 @@ webContents.session.setUserAgent(webContents.userAgent); webContents.on("preload-error", (evt, path, e) => { @@ -1968,13 +2283,12 @@ }); webContents.session.setPermissionCheckHandler((contents, permission, origin) => { -@@ -360,12 +364,20 @@ - - webContents.on("did-start-navigation", (evt, url) => { - if (url === "https://addons.wago.io/wowup_ad") { - log.debug("[webview] did-start-navigation", url); - wagoHandler.initializeWebContents(webContents); + if (["background-sync"].includes(permission)) { + return true; } + + log.warn("[webview] setPermissionCheckHandler", permission, origin); + return false; + }); + + // webview allowpopups must be enabled for any link to work @@ -1984,11 +2298,11 @@ + win?.webContents.send("webview-new-window", details); // forward this new window to the app for processing + return { action: "deny" }; }); - }); - win.webContents.on("zoom-changed", (zoomDirection) => { - win?.webContents?.send("zoom-changed", zoomDirection); - }); + webContents.on("did-start-navigation", (evt, url) => { + if (url === "https://addons.wago.io/wowup_ad") { + log.debug("[webview] did-start-navigation", url); + wagoHandler.initializeWebContents(webContents); --- wowup-electron/app/ipc-events.ts +++ wowup-electron/app/ipc-events.ts @@ -74,12 +74,15 @@ @@ -2021,7 +2335,7 @@ interface SymlinkDir { original: fs.Dirent; -@@ -214,12 +218,31 @@ +@@ -215,12 +219,31 @@ handle(IPC_CREATE_DIRECTORY_CHANNEL, async (evt, directoryPath: string): Promise => { log.info(`[CreateDirectory] '${directoryPath}'`); await fsp.mkdir(directoryPath, { recursive: true }); @@ -2053,7 +2367,7 @@ handle(IPC_UPDATE_APP_BADGE, (evt, count: number) => { return app.setBadgeCount(count); -@@ -373,12 +396,29 @@ +@@ -374,12 +397,29 @@ return false; } @@ -2113,51 +2427,83 @@ } --- wowup-electron/package-lock.json +++ wowup-electron/package-lock.json -@@ -56,12 +56,14 @@ - "@fortawesome/free-regular-svg-icons": "6.3.0", - "@fortawesome/free-solid-svg-icons": "6.3.0", - "@messageformat/core": "3.1.0", - "@microsoft/applicationinsights-web": "3.0.2", - "@ngx-translate/core": "14.0.0", - "@ngx-translate/http-loader": "7.0.0", -+ "@overwolf/ow-electron": "22.3.3", -+ "@overwolf/ow-electron-builder": "23.6.0", - "@types/adm-zip": "0.5.0", - "@types/archiver": "5.3.1", +@@ -1,17 +1,18 @@ + { + "name": "wowup", +- "version": "2.11.0-beta.4", ++ "version": "2.11.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "wowup", +- "version": "2.11.0-beta.4", ++ "version": "2.11.1", + "hasInstallScript": true, + "dependencies": { ++ "@angular/material": "^16.2.0", + "adm-zip": "0.5.10", + "auto-launch": "5.0.6", + "electron-log": "5.0.1", + "electron-store": "8.1.0", + "electron-updater": "6.1.7", + "globrex": "0.1.2", +@@ -54,12 +55,14 @@ + "@fortawesome/free-regular-svg-icons": "6.4.2", + "@fortawesome/free-solid-svg-icons": "6.4.2", + "@messageformat/core": "3.2.0", + "@microsoft/applicationinsights-web": "3.0.5", + "@ngx-translate/core": "15.0.0", + "@ngx-translate/http-loader": "8.0.0", ++ "@overwolf/ow-electron": "22.3.27", ++ "@overwolf/ow-electron-builder": "24.7.0", + "@types/adm-zip": "0.5.1", "@types/flat": "5.0.2", "@types/globrex": "0.1.2", - "@types/jasmine": "4.3.1", + "@types/jasmine": "4.3.5", "@types/jasminewd2": "2.0.10", -@@ -79,25 +81,26 @@ - "@typescript-eslint/parser": "^5.59.2", - "ag-grid-angular": "29.3.5", - "ag-grid-community": "29.3.5", - "chai": "4.3.7", + "@types/lodash": "4.14.198", +@@ -74,12 +77,13 @@ + "@typescript-eslint/parser": "^6.10.0", + "ag-grid-angular": "31.0.0", + "ag-grid-community": "31.0.0", + "chai": "4.3.8", "core-js": "3.21.1", "cross-env": "7.0.3", + "curseforge-v2": "1.2.0", - "del": "7.0.0", - "dotenv": "16.0.3", -- "electron": "25.0.1", - "electron-builder": "23.6.0", + "del": "7.1.0", + "dotenv": "16.3.1", + "electron": "28.2.1", + "electron-builder": "24.9.1", "electron-notarize": "1.2.2", "electron-reload": "2.0.0-alpha.1", - "eslint": "^8.39.0", - "eslint-config-prettier": "8.6.0", - "eslint-plugin-import": "2.27.5", - "eslint-plugin-jsdoc": "40.0.0", +@@ -87,12 +91,13 @@ + "eslint-config-prettier": "9.0.0", + "eslint-plugin-import": "2.28.1", + "eslint-plugin-jsdoc": "46.5.1", "eslint-plugin-prefer-arrow": "1.2.3", "flat": "5.0.2", "gulp": "4.0.2", + "gulp-run": "1.7.1", "i18next-json-sync": "3.1.2", "ignore": "5.2.4", - "jasmine-core": "4.5.0", + "jasmine-core": "5.1.1", "jasmine-spec-reporter": "7.0.0", - "karma": "6.4.1", + "karma": "6.4.2", "karma-coverage-istanbul-reporter": "3.0.3", --- wowup-electron/package.json +++ wowup-electron/package.json +@@ -1,9 +1,9 @@ + { + "name": "wowup", +- "version": "2.11.0", ++ "version": "2.11.1", + "private": true, + "description": "World of Warcraft addon updater", + "keywords": [ + "wow", + "world of warcraft" + ], @@ -15,34 +15,36 @@ "author": { "name": "WowUp LLC", @@ -2205,48 +2551,62 @@ "i18n": "sync-i18n --files ./src/assets/i18n/*.json --primary en --space 2 --finalnewline --lineendings CRLF --languages cs de es fr it nb pt ru zh zh-TW ko pl", "check-i18n": "npm run i18n -- --check", "pretty": "npx prettier --write . && ng lint --fix", -@@ -102,12 +104,14 @@ - "@fortawesome/free-regular-svg-icons": "6.3.0", - "@fortawesome/free-solid-svg-icons": "6.3.0", - "@messageformat/core": "3.1.0", - "@microsoft/applicationinsights-web": "3.0.2", - "@ngx-translate/core": "14.0.0", - "@ngx-translate/http-loader": "7.0.0", -+ "@overwolf/ow-electron": "22.3.3", -+ "@overwolf/ow-electron-builder": "23.6.0", - "@types/adm-zip": "0.5.0", - "@types/archiver": "5.3.1", +@@ -52,12 +54,13 @@ + "package:local": "npx gulp packageLocal" + }, + "browserslist": [ + "chrome 98" + ], + "dependencies": { ++ "@angular/material": "^16.2.0", + "adm-zip": "0.5.10", + "auto-launch": "5.0.6", + "electron-log": "5.0.1", + "electron-store": "8.1.0", + "electron-updater": "6.1.7", + "globrex": "0.1.2", +@@ -100,12 +103,14 @@ + "@fortawesome/free-regular-svg-icons": "6.4.2", + "@fortawesome/free-solid-svg-icons": "6.4.2", + "@messageformat/core": "3.2.0", + "@microsoft/applicationinsights-web": "3.0.5", + "@ngx-translate/core": "15.0.0", + "@ngx-translate/http-loader": "8.0.0", ++ "@overwolf/ow-electron": "22.3.27", ++ "@overwolf/ow-electron-builder": "24.7.0", + "@types/adm-zip": "0.5.1", "@types/flat": "5.0.2", "@types/globrex": "0.1.2", - "@types/jasmine": "4.3.1", + "@types/jasmine": "4.3.5", "@types/jasminewd2": "2.0.10", -@@ -125,25 +129,26 @@ - "@typescript-eslint/parser": "^5.59.2", - "ag-grid-angular": "29.3.5", - "ag-grid-community": "29.3.5", - "chai": "4.3.7", + "@types/lodash": "4.14.198", +@@ -120,12 +125,13 @@ + "@typescript-eslint/parser": "^6.10.0", + "ag-grid-angular": "31.0.0", + "ag-grid-community": "31.0.0", + "chai": "4.3.8", "core-js": "3.21.1", "cross-env": "7.0.3", + "curseforge-v2": "1.2.0", - "del": "7.0.0", - "dotenv": "16.0.3", -- "electron": "25.0.1", - "electron-builder": "23.6.0", + "del": "7.1.0", + "dotenv": "16.3.1", + "electron": "28.2.1", + "electron-builder": "24.9.1", "electron-notarize": "1.2.2", "electron-reload": "2.0.0-alpha.1", - "eslint": "^8.39.0", - "eslint-config-prettier": "8.6.0", - "eslint-plugin-import": "2.27.5", - "eslint-plugin-jsdoc": "40.0.0", +@@ -133,12 +139,13 @@ + "eslint-config-prettier": "9.0.0", + "eslint-plugin-import": "2.28.1", + "eslint-plugin-jsdoc": "46.5.1", "eslint-plugin-prefer-arrow": "1.2.3", "flat": "5.0.2", "gulp": "4.0.2", + "gulp-run": "1.7.1", "i18next-json-sync": "3.1.2", "ignore": "5.2.4", - "jasmine-core": "4.5.0", + "jasmine-core": "5.1.1", "jasmine-spec-reporter": "7.0.0", - "karma": "6.4.1", + "karma": "6.4.2", "karma-coverage-istanbul-reporter": "3.0.3", --- wowup-electron/gulpfile.js +++ wowup-electron/gulpfile.js diff --git a/unlimited-patches/10-IncludeTBCAddons.patch b/unlimited-patches/10-IncludeTBCAddons.patch index a5fd1ff..4b15027 100644 --- a/unlimited-patches/10-IncludeTBCAddons.patch +++ b/unlimited-patches/10-IncludeTBCAddons.patch @@ -1,6 +1,6 @@ --- wowup-electron/src/app/addon-providers/curse-addon-provider.ts +++ wowup-electron/src/app/addon-providers/curse-addon-provider.ts -@@ -46,23 +46,23 @@ +@@ -53,23 +53,23 @@ const CHANGELOG_CACHE_TTL_SEC = 30 * 60; const FEATURED_ADDONS_CACHE_TTL_SEC = AppConfig.featuredAddonsCacheTimeSec; @@ -21,13 +21,13 @@ flavor: "wow_retail", - typeId: 517, + typeId: [517], - matches: [WowClientType.Retail, WowClientType.RetailPtr, WowClientType.Beta], + matches: [WowClientType.Retail, WowClientType.RetailPtr, WowClientType.Beta, WowClientType.RetailXPtr], }, ]; export class CurseAddonProvider extends AddonProvider { private readonly _circuitBreaker: CircuitBreakerWrapper; -@@ -458,13 +458,13 @@ +@@ -480,13 +480,13 @@ private getGameVersionTypeId(clientType: WowClientType): number { const gameType = GAME_TYPE_LISTS.find((gtl) => gtl.matches.includes(clientType)); if (!gameType) { @@ -42,16 +42,16 @@ if (!file?.sortableGameVersions) { console.debug("sortableGameVersions missing", file); } -@@ -770,13 +770,13 @@ +@@ -792,13 +792,13 @@ } } private getValidClientTypes(file: cfv2.CF2File): WowClientType[] { const gameVersions: WowClientType[] = _.flatten( GAME_TYPE_LISTS.filter((type) => -- file.sortableGameVersions.find((sgv) => sgv.gameVersionTypeId === type.typeId) +- file.sortableGameVersions.find((sgv) => sgv.gameVersionTypeId === type.typeId), + file.sortableGameVersions.find((sgv) => type.typeId.includes(sgv.gameVersionTypeId)) - ).map((game) => game.matches) + ).map((game) => game.matches), ); return _.uniq(gameVersions); diff --git a/unlimited-patches/11-DisableCurseAds.patch b/unlimited-patches/11-DisableCurseAds.patch index 978fa3a..2e939bb 100644 --- a/unlimited-patches/11-DisableCurseAds.patch +++ b/unlimited-patches/11-DisableCurseAds.patch @@ -1,6 +1,6 @@ --- wowup-electron/src/app/addon-providers/curse-addon-provider.ts +++ wowup-electron/src/app/addon-providers/curse-addon-provider.ts -@@ -72,13 +72,13 @@ +@@ -79,13 +79,13 @@ public readonly forceIgnore = false; public readonly allowChannelChange = true; public readonly allowReinstall = true; @@ -14,4 +14,4 @@ public constructor( private _cachingService: CachingService, private _networkService: NetworkService, - private _tocService: TocService + private _tocService: TocService, diff --git a/unlimited-patches/12-CustomizableCurseAPIKey.patch b/unlimited-patches/12-CustomizableCurseAPIKey.patch index f990fa0..eab970d 100644 --- a/unlimited-patches/12-CustomizableCurseAPIKey.patch +++ b/unlimited-patches/12-CustomizableCurseAPIKey.patch @@ -15,15 +15,15 @@ } from "../../common/constants"; import { getWowClientGroup } from "../../common/warcraft"; import { AppConfig } from "../../environments/environment"; -@@ -37,6 +39,7 @@ - import { TocService } from "../services/toc/toc.service"; +@@ -38,6 +40,7 @@ import * as AddonUtils from "../utils/addon.utils"; import { strictFilter } from "../utils/array.utils"; + import { TocNotFoundError } from "../errors"; +import { SensitiveStorageService } from "../services/storage/sensitive-storage.service"; interface ProtocolData { addonId: number; -@@ -66,7 +69,7 @@ +@@ -73,7 +76,7 @@ export class CurseAddonProvider extends AddonProvider { private readonly _circuitBreaker: CircuitBreakerWrapper; @@ -32,18 +32,16 @@ public readonly name = ADDON_PROVIDER_CURSEFORGE; public readonly forceIgnore = false; -@@ -81,7 +84,8 @@ - public constructor( +@@ -89,6 +92,7 @@ private _cachingService: CachingService, private _networkService: NetworkService, -- private _tocService: TocService -+ private _tocService: TocService, -+ private _sensitiveStorageService: SensitiveStorageService + private _tocService: TocService, ++ private _sensitiveStorageService: SensitiveStorageService, ) { super(); -@@ -91,8 +95,9 @@ - AppConfig.curseforge.httpTimeoutMs +@@ -98,8 +102,9 @@ + AppConfig.curseforge.httpTimeoutMs, ); - this._cf2Client = new cfv2.CFV2Client({ @@ -54,7 +52,7 @@ }); } -@@ -337,13 +342,18 @@ +@@ -344,13 +349,18 @@ return; } @@ -73,8 +71,8 @@ + const result = await client.getFingerprintMatches({ fingerprints }); const fingerprintData = result.data?.data; try { - const matchPairs: { addonFolder: AddonFolder; match: cfv2.CF2FingerprintMatch; addon?: cfv2.CF2Addon }[] = []; -@@ -370,7 +380,7 @@ + const matchPairs: ScanMatchPair[] = []; +@@ -378,7 +388,7 @@ } const addonIds = matchPairs.map((mp) => mp.match.id); @@ -82,9 +80,9 @@ + const getAddonsResult = await client.getMods({ modIds: addonIds }); const addonResultData = getAddonsResult.data?.data; - matchPairs.forEach((mp) => { -@@ -397,12 +407,13 @@ - externalReleaseId: string + const potentialChildren: ScanMatchPair[] = []; +@@ -423,12 +433,13 @@ + externalReleaseId: string, ): Promise { try { + const client = await this.getClient(); @@ -96,11 +94,11 @@ - return this._cf2Client.getModFileChangelog(parseInt(externalId, 10), parseInt(externalReleaseId, 10)); + return client.getModFileChangelog(parseInt(externalId, 10), parseInt(externalReleaseId, 10)); }, - CHANGELOG_CACHE_TTL_SEC + CHANGELOG_CACHE_TTL_SEC, ); -@@ -421,11 +432,13 @@ - addon?: Addon - ): Promise { +@@ -443,11 +454,13 @@ + + public override async getDescription(installation: WowInstallation, externalId: string): Promise { try { + const client = await this.getClient(); + @@ -111,20 +109,20 @@ - return this._cf2Client.getModDescription(parseInt(externalId, 10)); + return client.getModDescription(parseInt(externalId, 10)); }, - CHANGELOG_CACHE_TTL_SEC + CHANGELOG_CACHE_TTL_SEC, ); -@@ -602,8 +615,9 @@ +@@ -624,8 +637,9 @@ } private async getAddonFileById(addonId: string | number, fileId: string | number): Promise { + const client = await this.getClient(); const response = await this._circuitBreaker.fire(() => -- this._cf2Client.getModFile(parseInt(`${addonId}`, 10), parseInt(`${fileId}`, 10)) -+ client.getModFile(parseInt(`${addonId}`, 10), parseInt(`${fileId}`, 10)) +- this._cf2Client.getModFile(parseInt(`${addonId}`, 10), parseInt(`${fileId}`, 10)), ++ client.getModFile(parseInt(`${addonId}`, 10), parseInt(`${fileId}`, 10)), ); return response.data?.data; -@@ -611,7 +625,8 @@ +@@ -633,7 +647,8 @@ private async getByIdBase(addonId: string): Promise { try { @@ -134,7 +132,7 @@ return response.data?.data; } catch (e) { // We want to eat things like 400/500 responses -@@ -789,12 +804,19 @@ +@@ -811,12 +826,19 @@ modIds: addonIds, }; @@ -155,16 +153,16 @@ const gameVersionTypeId = this.getGameVersionTypeId(wowInstallation.clientType); const request: cfv2.CF2GetFeaturedModsRequest = { -@@ -806,7 +828,7 @@ +@@ -828,7 +850,7 @@ const cacheKey = `getFeaturedAddonList-${JSON.stringify(request)}`; const result = await this._cachingService.transaction( cacheKey, - () => this._cf2Client.getFeaturedMods(request), + () => client.getFeaturedMods(request), - FEATURED_ADDONS_CACHE_TTL_SEC + FEATURED_ADDONS_CACHE_TTL_SEC, ); -@@ -839,7 +861,8 @@ +@@ -861,7 +883,8 @@ gameVersionTypeId: this.getCFGameVersionType(clientType), }; @@ -174,14 +172,14 @@ return response.data?.data || []; } -@@ -882,10 +905,29 @@ +@@ -904,10 +927,29 @@ const cacheKey = JSON.stringify(request); + const client = await this.getClient(); const result = await this._cachingService.transaction(cacheKey, () => -- this._circuitBreaker.fire(() => this._cf2Client.searchMods(request)) -+ this._circuitBreaker.fire(() => client.searchMods(request)) +- this._circuitBreaker.fire(() => this._cf2Client.searchMods(request)), ++ this._circuitBreaker.fire(() => client.searchMods(request)), ); return result?.data?.data ?? []; @@ -262,7 +260,7 @@ + } if (typeof ch?.ghPersonalAccessToken === "string") { tasks.push( - from(this._sensitiveStorageService.setAsync(PREF_GITHUB_PERSONAL_ACCESS_TOKEN, ch.ghPersonalAccessToken)) + from(this._sensitiveStorageService.setAsync(PREF_GITHUB_PERSONAL_ACCESS_TOKEN, ch.ghPersonalAccessToken)), @@ -89,6 +95,10 @@ .subscribe(); } @@ -298,7 +296,7 @@ } catch (e) { --- wowup-electron/src/assets/i18n/en.json +++ wowup-electron/src/assets/i18n/en.json -@@ -495,6 +495,7 @@ +@@ -497,6 +497,7 @@ "CURSE_FORGE_V2": { "API_KEY_DESCRIPTION": "If you have requested a CurseForge API key you can input it here to connect to their API.", "API_KEY_TITLE": "CurseForge API Key", diff --git a/unlimited-patches/14-CurseMigrationDialog.patch b/unlimited-patches/14-CurseMigrationDialog.patch index de77336..94d4b4a 100644 --- a/unlimited-patches/14-CurseMigrationDialog.patch +++ b/unlimited-patches/14-CurseMigrationDialog.patch @@ -208,8 +208,8 @@ import { TelemetryDialogComponent } from "../components/common/telemetry-dialog/telemetry-dialog.component"; import { WebViewComponent } from "../components/common/webview/webview.component"; import { ProgressSpinnerComponent } from "../components/progress-spinner/progress-spinner.component"; -@@ -31,12 +32,13 @@ - ProgressButtonComponent, +@@ -32,12 +33,13 @@ + PatchNotesDialogComponent, TelemetryDialogComponent, ConsentDialogComponent, CellWrapTextComponent, @@ -222,8 +222,8 @@ exports: [ ProgressSpinnerComponent, ProgressButtonComponent, -@@ -48,10 +50,11 @@ - ProgressButtonComponent, +@@ -49,10 +51,11 @@ + PatchNotesDialogComponent, TelemetryDialogComponent, ConsentDialogComponent, CellWrapTextComponent, @@ -305,7 +305,7 @@ disableClose: true, --- wowup-electron/src/assets/i18n/en.json +++ wowup-electron/src/assets/i18n/en.json -@@ -498,6 +498,7 @@ +@@ -500,6 +500,7 @@ "INSERT_API_KEY": "Insert Default CurseForge API Key", "PROVIDER_NOTE": "API Key Required" }, diff --git a/unlimited-patches/17-WowUpCFUserAgent.patch b/unlimited-patches/17-WowUpCFUserAgent.patch index 8df1453..5d13d33 100644 --- a/unlimited-patches/17-WowUpCFUserAgent.patch +++ b/unlimited-patches/17-WowUpCFUserAgent.patch @@ -1,6 +1,6 @@ --- wowup-electron/app/main.ts +++ wowup-electron/app/main.ts -@@ -562,8 +562,8 @@ +@@ -567,8 +567,8 @@ } return argv.hidden || loginItems.wasOpenedAsHidden; } diff --git a/unlimited-patches/19-RevertOverwolfIntegration.patch b/unlimited-patches/19-RevertOverwolfIntegration.patch index 002b36c..a64dfdd 100644 --- a/unlimited-patches/19-RevertOverwolfIntegration.patch +++ b/unlimited-patches/19-RevertOverwolfIntegration.patch @@ -17,7 +17,7 @@ webview.plugins = false; --- wowup-electron/app/ipc-events.ts +++ wowup-electron/app/ipc-events.ts -@@ -221,14 +221,8 @@ +@@ -222,14 +222,8 @@ return true; }); @@ -34,7 +34,7 @@ }); handle(IPC_OW_OPEN_CMP, (evt, cmpTab?: string) => { -@@ -236,8 +230,6 @@ +@@ -237,8 +231,6 @@ if (cmpTab) { options.tab = cmpTab; } @@ -72,35 +72,21 @@ } --- wowup-electron/package-lock.json +++ wowup-electron/package-lock.json -@@ -56,14 +56,12 @@ - "@fortawesome/free-regular-svg-icons": "6.3.0", - "@fortawesome/free-solid-svg-icons": "6.3.0", - "@messageformat/core": "3.1.0", - "@microsoft/applicationinsights-web": "3.0.2", - "@ngx-translate/core": "14.0.0", - "@ngx-translate/http-loader": "7.0.0", -- "@overwolf/ow-electron": "22.3.3", -- "@overwolf/ow-electron-builder": "23.6.0", - "@types/adm-zip": "0.5.0", - "@types/archiver": "5.3.1", +@@ -55,14 +55,12 @@ + "@fortawesome/free-regular-svg-icons": "6.4.2", + "@fortawesome/free-solid-svg-icons": "6.4.2", + "@messageformat/core": "3.2.0", + "@microsoft/applicationinsights-web": "3.0.5", + "@ngx-translate/core": "15.0.0", + "@ngx-translate/http-loader": "8.0.0", +- "@overwolf/ow-electron": "22.3.27", +- "@overwolf/ow-electron-builder": "24.7.0", + "@types/adm-zip": "0.5.1", "@types/flat": "5.0.2", "@types/globrex": "0.1.2", - "@types/jasmine": "4.3.1", + "@types/jasmine": "4.3.5", "@types/jasminewd2": "2.0.10", -@@ -84,12 +82,13 @@ - "chai": "4.3.7", - "core-js": "3.21.1", - "cross-env": "7.0.3", - "curseforge-v2": "1.2.0", - "del": "7.0.0", - "dotenv": "16.0.3", -+ "electron": "25.0.1", - "electron-builder": "23.6.0", - "electron-notarize": "1.2.2", - "electron-reload": "2.0.0-alpha.1", - "eslint": "^8.39.0", - "eslint-config-prettier": "8.6.0", - "eslint-plugin-import": "2.27.5", + "@types/lodash": "4.14.198", --- wowup-electron/package.json +++ wowup-electron/package.json @@ -15,36 +15,36 @@ @@ -151,32 +137,18 @@ "i18n": "sync-i18n --files ./src/assets/i18n/*.json --primary en --space 2 --finalnewline --lineendings CRLF --languages cs de es fr it nb pt ru zh zh-TW ko pl", "check-i18n": "npm run i18n -- --check", "pretty": "npx prettier --write . && ng lint --fix", -@@ -104,14 +104,12 @@ - "@fortawesome/free-regular-svg-icons": "6.3.0", - "@fortawesome/free-solid-svg-icons": "6.3.0", - "@messageformat/core": "3.1.0", - "@microsoft/applicationinsights-web": "3.0.2", - "@ngx-translate/core": "14.0.0", - "@ngx-translate/http-loader": "7.0.0", -- "@overwolf/ow-electron": "22.3.3", -- "@overwolf/ow-electron-builder": "23.6.0", - "@types/adm-zip": "0.5.0", - "@types/archiver": "5.3.1", +@@ -103,14 +103,12 @@ + "@fortawesome/free-regular-svg-icons": "6.4.2", + "@fortawesome/free-solid-svg-icons": "6.4.2", + "@messageformat/core": "3.2.0", + "@microsoft/applicationinsights-web": "3.0.5", + "@ngx-translate/core": "15.0.0", + "@ngx-translate/http-loader": "8.0.0", +- "@overwolf/ow-electron": "22.3.27", +- "@overwolf/ow-electron-builder": "24.7.0", + "@types/adm-zip": "0.5.1", "@types/flat": "5.0.2", "@types/globrex": "0.1.2", - "@types/jasmine": "4.3.1", + "@types/jasmine": "4.3.5", "@types/jasminewd2": "2.0.10", -@@ -132,12 +130,13 @@ - "chai": "4.3.7", - "core-js": "3.21.1", - "cross-env": "7.0.3", - "curseforge-v2": "1.2.0", - "del": "7.0.0", - "dotenv": "16.0.3", -+ "electron": "25.0.1", - "electron-builder": "23.6.0", - "electron-notarize": "1.2.2", - "electron-reload": "2.0.0-alpha.1", - "eslint": "^8.39.0", - "eslint-config-prettier": "8.6.0", - "eslint-plugin-import": "2.27.5", + "@types/lodash": "4.14.198", diff --git a/workflow-patches/01-WorkflowCheckouts.patch b/workflow-patches/01-WorkflowCheckouts.patch index 48cb055..f678657 100644 --- a/workflow-patches/01-WorkflowCheckouts.patch +++ b/workflow-patches/01-WorkflowCheckouts.patch @@ -2,7 +2,7 @@ +++ .github/workflows/electron-all-build.yml @@ -27,11 +27,39 @@ os: [ubuntu-latest, windows-latest,"macos-11"] - node-version: [16.x] + node-version: [20.x] - steps: - - name: Checkout