77
88import Foundation
99import SwiftUI
10+ import Defaults
1011
1112@Observable @MainActor
1213class BrewPackagesTracker
@@ -31,6 +32,21 @@ class BrewPackagesTracker
3132 } )
3233 }
3334
35+ /// Formulae than can be displayed, depending on whether the user set only to display intentionally installed packages
36+ var displayableSuccessfullyLoadedFormulae : Set < BrewPackage >
37+ {
38+ let displayOnlyIntentionallyInstalledPackagesByDefault : Bool = Defaults [ . displayOnlyIntentionallyInstalledPackagesByDefault]
39+
40+ if displayOnlyIntentionallyInstalledPackagesByDefault
41+ {
42+ return self . successfullyLoadedFormulae. filter ( \. installedIntentionally)
43+ }
44+ else
45+ {
46+ return self . successfullyLoadedFormulae
47+ }
48+ }
49+
3450 /// Collected errors from failed Formulae loading
3551 var unsuccessfullyLoadedFormulaeErrors : [ PackageLoadingError ]
3652 {
@@ -62,6 +78,20 @@ class BrewPackagesTracker
6278 } )
6379 }
6480
81+ var displayableSuccessfullyLoadedCasks : Set < BrewPackage >
82+ {
83+ let displayOnlyIntentionallyInstalledPackagesByDefault : Bool = Defaults [ . displayOnlyIntentionallyInstalledPackagesByDefault]
84+
85+ if displayOnlyIntentionallyInstalledPackagesByDefault
86+ {
87+ return self . successfullyLoadedCasks. filter ( \. installedIntentionally)
88+ }
89+ else
90+ {
91+ return self . successfullyLoadedCasks
92+ }
93+ }
94+
6595 /// Collected errors from failed Casks loading
6696 var unsuccessfullyLoadedCasksErrors : [ PackageLoadingError ]
6797 {
@@ -93,23 +123,15 @@ class BrewPackagesTracker
93123
94124extension BrewPackagesTracker
95125{
126+
96127 var numberOfInstalledFormulae : Int
97128 {
98- let displayOnlyIntentionallyInstalledPackagesByDefault : Bool = UserDefaults . standard. bool ( forKey: " displayOnlyIntentionallyInstalledPackagesByDefault " )
99-
100- if displayOnlyIntentionallyInstalledPackagesByDefault
101- {
102- return self . successfullyLoadedFormulae. filter ( \. installedIntentionally) . count
103- }
104- else
105- {
106- return self . successfullyLoadedFormulae. count
107- }
129+ return self . displayableSuccessfullyLoadedFormulae. count
108130 }
109131
110132 var numberOfInstalledCasks : Int
111133 {
112- return self . successfullyLoadedCasks . count
134+ return self . displayableSuccessfullyLoadedCasks . count
113135 }
114136
115137 var numberOfInstalledPackages : Int
0 commit comments