diff --git a/.github/workflows/delete-workflow-runs.yml b/.github/workflows/delete-workflow-runs.yml index 9bcc66c..eb3d2c1 100644 --- a/.github/workflows/delete-workflow-runs.yml +++ b/.github/workflows/delete-workflow-runs.yml @@ -1,43 +1,45 @@ -name: Delete Workflow Runs +name: Delete old workflow runs on: workflow_dispatch: inputs: days: - description: 'Number of days.' + description: 'Days-worth of runs to keep for each workflow' required: true - default: 0 + default: '7' # default value is "30" minimum_runs: - description: 'The minimum runs to keep for each workflow.' + description: 'Minimum runs to keep for each workflow' required: true - default: 0 + default: '5' # default value is "6" delete_workflow_pattern: - description: 'The name or filename of the workflow. if not set then it will target all workflows.' + description: 'Name or filename of the workflow (if not set, all workflows are targeted)' required: false + default: 'Build and Release uYouEnhanced' # default value is "" delete_workflow_by_state_pattern: - description: 'Remove workflow by state: active, deleted, disabled_fork, disabled_inactivity, disabled_manually' + description: 'Filter workflows by state: active, deleted, disabled_fork, disabled_inactivity, disabled_manually' required: true - default: "All" + default: "ALL" type: choice options: - - "All" + - "ALL" - active - deleted - disabled_inactivity - disabled_manually delete_run_by_conclusion_pattern: - description: 'Remove workflow by conclusion: action_required, cancelled, failure, skipped, success' + description: 'Remove runs based on conclusion: action_required, cancelled, failure, skipped, success' required: true - default: "All" + default: "ALL" type: choice options: - - "All" + - "ALL" + - "Unsuccessful: action_required,cancelled,failure,skipped" - action_required - cancelled - failure - skipped - success dry_run: - description: 'Only log actions, do not perform any delete operations.' + description: 'Logs simulated changes, no deletions are performed' required: false jobs: @@ -45,6 +47,7 @@ jobs: runs-on: ubuntu-latest permissions: actions: write + contents: read steps: - name: Delete workflow runs uses: Mattraks/delete-workflow-runs@v2 @@ -55,5 +58,10 @@ jobs: keep_minimum_runs: ${{ github.event.inputs.minimum_runs }} delete_workflow_pattern: ${{ github.event.inputs.delete_workflow_pattern }} delete_workflow_by_state_pattern: ${{ github.event.inputs.delete_workflow_by_state_pattern }} - delete_run_by_conclusion_pattern: ${{ github.event.inputs.delete_run_by_conclusion_pattern }} + delete_run_by_conclusion_pattern: >- + ${{ + startsWith(github.event.inputs.delete_run_by_conclusion_pattern, 'Unsuccessful:') + && 'action_required,cancelled,failure,skipped' + || github.event.inputs.delete_run_by_conclusion_pattern + }} dry_run: ${{ github.event.inputs.dry_run }} diff --git a/Source/Settings.xm b/Source/Settings.xm index 8fffd76..5851301 100644 --- a/Source/Settings.xm +++ b/Source/Settings.xm @@ -530,6 +530,16 @@ extern NSBundle *YTLitePlusBundle(); } settingItemId:0], + [YTSettingsSectionItemClass switchItemWithTitle:LOC(@"HIDE_HOME_TAB") + titleDescription:LOC(@"HIDE_HOME_TAB_DESC") + accessibilityIdentifier:nil + switchOn:IsEnabled(@"hideHomeTab_enabled") + switchBlock:^BOOL (YTSettingsCell *cell, BOOL enabled) { + [[NSUserDefaults standardUserDefaults] setBool:enabled forKey:@"hideHomeTab_enabled"]; + return YES; + } + settingItemId:0], + [YTSettingsSectionItemClass switchItemWithTitle:LOC(@"ENABLE_FLEX") titleDescription:LOC(@"ENABLE_FLEX_DESC") accessibilityIdentifier:nil diff --git a/YTLitePlus.xm b/YTLitePlus.xm index c74fcbf..d15e6e7 100644 --- a/YTLitePlus.xm +++ b/YTLitePlus.xm @@ -161,7 +161,7 @@ static BOOL IsEnabled(NSString *key) { - (BOOL)commercePlatformClientEnablePopupWebviewInWebviewDialogController { return NO;} %end -// Hide Upgrade Dialog - @arichorn +// Hide Upgrade Dialog - @arichornlover %hook YTGlobalConfig - (BOOL)shouldBlockUpgradeDialog { return YES;} - (BOOL)shouldForceUpgrade { return NO;} @@ -169,18 +169,33 @@ static BOOL IsEnabled(NSString *key) { - (BOOL)shouldShowUpgradeDialog { return NO;} %end -// YTNoTracking - @arichorn - https://github.com/arichorn/YTNoTracking/ -%hook UIApplication -- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url options:(NSDictionary *)options { - NSString *originalURLString = [url absoluteString]; - NSString *modifiedURLString = [originalURLString stringByReplacingOccurrencesOfString:@"&si=[a-zA-Z0-9_-]+" withString:@"" options:NSRegularExpressionSearch range:NSMakeRange(0, originalURLString.length)]; - NSURL *modifiedURL = [NSURL URLWithString:modifiedURLString]; - BOOL result = %orig(application, modifiedURL, options); - return result; +// Hide Home Tab - @bhackel +%group gHideHomeTab +%hook YTPivotBarViewController +- (void)setRenderer:(YTIPivotBarRenderer *)renderer { + // Iterate over each renderer item + NSUInteger indexToRemove = -1; + NSMutableArray *itemsArray = renderer.itemsArray; + for (NSUInteger i = 0; i < itemsArray.count; i++) { + YTIPivotBarSupportedRenderers *item = itemsArray[i]; + // Check if this is the home tab button + YTIPivotBarItemRenderer *pivotBarItemRenderer = item.pivotBarItemRenderer; + NSString *pivotIdentifier = pivotBarItemRenderer.pivotIdentifier; + if ([pivotIdentifier isEqualToString:@"FEwhat_to_watch"]) { + // Remove the home tab button + indexToRemove = i; + break; + } + } + if (indexToRemove != -1) { + [itemsArray removeObjectAtIndex:indexToRemove]; + } + %orig; } %end +%end -// YTNoModernUI - @arichorn +// YTNoModernUI - @arichornlover %group gYTNoModernUI %hook YTVersionUtils // YTNoModernUI Original Version + (NSString *)appVersion { return @"17.38.10"; } @@ -223,14 +238,27 @@ static BOOL IsEnabled(NSString *key) { - (BOOL)cxClientEnableModernizedActionSheet { return NO; } - (BOOL)enableClientShortsSheetsModernization { return NO; } - (BOOL)enableTimestampModernizationForNative { return NO; } -- (BOOL)modernizeElementsTextColor { return NO; } -- (BOOL)modernizeElementsBgColor { return NO; } +- (BOOL)mainAppCoreClientEnableModernIaFeedStretchBottom { return NO; } +- (BOOL)mainAppCoreClientEnableModernIaFrostedBottomBar { return NO; } +- (BOOL)mainAppCoreClientEnableModernIaFrostedPivotBar { return NO; } +- (BOOL)mainAppCoreClientEnableModernIaFrostedPivotBarUpdatedBackdrop { return NO; } +- (BOOL)mainAppCoreClientEnableModernIaFrostedTopBar { return NO; } +- (BOOL)mainAppCoreClientEnableModernIaOpacityPivotBar { return NO; } +- (BOOL)mainAppCoreClientEnableModernIaTopAndBottomBarIconRefresh { return NO; } +- (BOOL)mainAppCoreClientEnableModernizedBedtimeReminderU18DefaultSettings { return NO; } +- (BOOL)modernizeCameoNavbar { return NO; } - (BOOL)modernizeCollectionLockups { return NO; } +- (BOOL)modernizeCollectionLockupsShowVideoCount { return NO; } +- (BOOL)modernizeElementsBgColor { return NO; } +- (BOOL)modernizeElementsTextColor { return NO; } +- (BOOL)postsCreatorClientEnableModernButtonsUi { return NO; } +- (BOOL)pullToFullModernEdu { return NO; } +- (BOOL)showModernMiniplayerRedesign { return NO; } - (BOOL)uiSystemsClientGlobalConfigEnableModernButtonsForNative { return NO; } - (BOOL)uiSystemsClientGlobalConfigIosEnableModernTabsForNative { return NO; } -- (BOOL)uiSystemsClientGlobalConfigIosEnableEpUxUpdates { return NO; } -- (BOOL)uiSystemsClientGlobalConfigIosEnableSheetsUxUpdates { return NO; } - (BOOL)uiSystemsClientGlobalConfigIosEnableSnackbarModernization { return NO; } +- (BOOL)uiSystemsClientGlobalConfigModernizeNativeBgColor { return NO; } +- (BOOL)uiSystemsClientGlobalConfigModernizeNativeTextColor { return NO; } // Disable Rounded Content - YTNoModernUI - (BOOL)iosDownloadsPageRoundedThumbs { return NO; } - (BOOL)iosRoundedSearchBarSuggestZeroPadding { return NO; } @@ -643,6 +671,9 @@ static NSData *cellDividerData = nil; if (IsEnabled(@"disableLiveChatSection_enabled")) { %init(gDisableLiveChatSection); } + if (IsEnabled(@"hideHomeTab_enabled")) { + %init(gHideHomeTab); + } // Change the default value of some options diff --git a/lang/YTLitePlus.bundle/ar.lproj/Localizable.strings b/lang/YTLitePlus.bundle/ar.lproj/Localizable.strings index 428759f..e805339 100644 --- a/lang/YTLitePlus.bundle/ar.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/ar.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "Enable YTSpeed"; "YT_SPEED_DESC" = "Enable YTSpeed to have more Playback Speed Options. App restart is required."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "تمكين FLEX"; "ENABLE_FLEX_DESC" = "تمكين FLEX للتصحيح (غير مستحسن). اترك هذا إلا إذا كنت تعرف ما تفعله"; diff --git a/lang/YTLitePlus.bundle/de.lproj/Localizable.strings b/lang/YTLitePlus.bundle/de.lproj/Localizable.strings index ccc2089..544ef23 100644 --- a/lang/YTLitePlus.bundle/de.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/de.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "YTSpeed aktivieren"; "YT_SPEED_DESC" = "Aktiviere YTSpeed, um mehr Optionen für die Wiedergabegeschwindigkeit freizuschalten. Ein Neustart der App ist erforderlich."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "FLEX aktivieren"; "ENABLE_FLEX_DESC" = "Aktiviere FLEX zum Debuggen (nicht empfohlen). Lass diese Option deaktiviert, es sei denn, du weißt, was du tust."; diff --git a/lang/YTLitePlus.bundle/en.lproj/Localizable.strings b/lang/YTLitePlus.bundle/en.lproj/Localizable.strings index 07f2caa..60ab4ef 100644 --- a/lang/YTLitePlus.bundle/en.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/en.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "Enable YTSpeed"; "YT_SPEED_DESC" = "Enable YTSpeed to have more Playback Speed Options. App restart is required."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "Enable FLEX"; "ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing."; diff --git a/lang/YTLitePlus.bundle/es.lproj/Localizable.strings b/lang/YTLitePlus.bundle/es.lproj/Localizable.strings index ab1221a..775289e 100644 --- a/lang/YTLitePlus.bundle/es.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/es.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "Activar YTSpeed"; "YT_SPEED_DESC" = "Activa YTSpeed para tener más opciones de velocidad de reproducción. Es necesario reiniciar la aplicación."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "Habilitar FLEX"; "ENABLE_FLEX_DESC" = "Habilitar FLEX para depuración (no recomendado). Déjelo desactivado a menos que sepa lo que está haciendo"; diff --git a/lang/YTLitePlus.bundle/fr.lproj/Localizable.strings b/lang/YTLitePlus.bundle/fr.lproj/Localizable.strings index f76adc7..c2a6d7a 100644 --- a/lang/YTLitePlus.bundle/fr.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/fr.lproj/Localizable.strings @@ -98,6 +98,9 @@ "YT_SPEED" = "Activer YTSpeed"; "YT_SPEED_DESC" = "Activez YTSpeed pour avoir plus d'options de vitesse de lecture. Un redémarrage de l'application est requis."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "Activer FLEX"; "ENABLE_FLEX_DESC" = "Activez FLEX pour le débogage (non recommandé). Laissez cette option désactivée, sauf si vous savez ce que vous faites."; diff --git a/lang/YTLitePlus.bundle/ja.lproj/Localizable.strings b/lang/YTLitePlus.bundle/ja.lproj/Localizable.strings index 92a73ac..b63ff85 100644 --- a/lang/YTLitePlus.bundle/ja.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/ja.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "YTSpeedを有効化"; "YT_SPEED_DESC" = "より多くの再生速度を選択できるようになります。アプリの再起動が必要です。"; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "FLEXを有効化"; "ENABLE_FLEX_DESC" = "デバッグ用のFLEXを有効化します(推奨しません) \n何をやっているのか分からない場合はオフにしてください。"; diff --git a/lang/YTLitePlus.bundle/pt.lproj/Localizable.strings b/lang/YTLitePlus.bundle/pt.lproj/Localizable.strings index aa34061..9031166 100644 --- a/lang/YTLitePlus.bundle/pt.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/pt.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "Enable YTSpeed"; "YT_SPEED_DESC" = "Enable YTSpeed to have more Playback Speed Options. App restart is required."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "Enable FLEX"; "ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing."; diff --git a/lang/YTLitePlus.bundle/ro.lproj/Localizable.strings b/lang/YTLitePlus.bundle/ro.lproj/Localizable.strings index ea0ac8f..e215287 100644 --- a/lang/YTLitePlus.bundle/ro.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/ro.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "Activare YTSpeed"; "YT_SPEED_DESC" = "Activați YTSpeed pentru a avea mai multe opțiuni pentru viteza redării. Este necesară repornirea aplicației."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "Activare FLEX"; "ENABLE_FLEX_DESC" = "Activați FLEX pentru depanare (nerecomandat). Lăsați această opțiune dezactivată dacă nu știți ce faceți."; diff --git a/lang/YTLitePlus.bundle/ru.lproj/Localizable.strings b/lang/YTLitePlus.bundle/ru.lproj/Localizable.strings index 20c2cb8..948e7de 100644 --- a/lang/YTLitePlus.bundle/ru.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/ru.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "Enable YTSpeed"; "YT_SPEED_DESC" = "Enable YTSpeed to have more Playback Speed Options. App restart is required."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "Enable FLEX"; "ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing."; diff --git a/lang/YTLitePlus.bundle/template.lproj/Localizable.strings b/lang/YTLitePlus.bundle/template.lproj/Localizable.strings index 341a519..5f43cd9 100644 --- a/lang/YTLitePlus.bundle/template.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/template.lproj/Localizable.strings @@ -110,6 +110,9 @@ https://github.com/PoomSmart/Return-YouTube-Dislikes/tree/main/layout/Library/Ap "YT_SPEED" = "Enable YTSpeed"; "YT_SPEED_DESC" = "Enable YTSpeed to have more Playback Speed Options. App restart is required."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "Enable FLEX"; "ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing."; diff --git a/lang/YTLitePlus.bundle/tr.lproj/Localizable.strings b/lang/YTLitePlus.bundle/tr.lproj/Localizable.strings index 5f28c5c..7a68e4c 100644 --- a/lang/YTLitePlus.bundle/tr.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/tr.lproj/Localizable.strings @@ -95,6 +95,9 @@ "YT_SPEED" = "Enable YTSpeed"; "YT_SPEED_DESC" = "Enable YTSpeed to have more Playback Speed Options. App restart is required."; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "Enable FLEX"; "ENABLE_FLEX_DESC" = "Enable FLEX for debugging (not recommended). Leave this off unless you know what you are doing."; diff --git a/lang/YTLitePlus.bundle/zh_TW.lproj/Localizable.strings b/lang/YTLitePlus.bundle/zh_TW.lproj/Localizable.strings index cc01736..ff58b17 100644 --- a/lang/YTLitePlus.bundle/zh_TW.lproj/Localizable.strings +++ b/lang/YTLitePlus.bundle/zh_TW.lproj/Localizable.strings @@ -93,6 +93,9 @@ "YT_SPEED" = "啟用 YTSpeed"; "YT_SPEED_DESC" = "擁有更多種影片速度。重新啟動應用程式以套用變更。"; +"HIDE_HOME_TAB" = "Hide Home Tab"; +"HIDE_HOME_TAB_DESC" = "Be careful when hiding all tabs"; + "ENABLE_FLEX" = "啟用 FLEX(不建議使用)"; "ENABLE_FLEX_DESC" = "如果不知道這是什麼,請勿啟用";