From d84230fa22063503f7bf15d85d8192e994e6fb8c Mon Sep 17 00:00:00 2001 From: Alberto Ponces Date: Fri, 23 Sep 2022 17:20:19 +0100 Subject: [PATCH] feat: Merge integrations if a patch or any of its dependencies need them --- lib/services/patcher_api.dart | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/lib/services/patcher_api.dart b/lib/services/patcher_api.dart index 389440dc..b89732cf 100644 --- a/lib/services/patcher_api.dart +++ b/lib/services/patcher_api.dart @@ -87,10 +87,21 @@ class PatcherAPI { .toList(); } + bool dependencyNeedsIntegrations(String name) { + return name.contains('integrations') || + _patches.any( + (patch) => + patch.name == name && + (patch.dependencies.any( + (dep) => dependencyNeedsIntegrations(dep), + )), + ); + } + Future needsIntegrations(List selectedPatches) async { return selectedPatches.any( (patch) => patch.dependencies.any( - (dep) => dep.contains('integrations'), + (dep) => dependencyNeedsIntegrations(dep), ), ); }