mirror of https://github.com/buresdv/Cork
+ Marking of already installed packages
This commit is contained in:
parent
26af63a418
commit
20c02f7f80
|
|
@ -34,6 +34,7 @@
|
|||
639A7D862871D78C00B50280 /* Package Details.swift in Sources */ = {isa = PBXBuildFile; fileRef = 639A7D852871D78C00B50280 /* Package Details.swift */; };
|
||||
63A87465298FE7FC009F9533 /* Search for Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63A87464298FE7FC009F9533 /* Search for Package.swift */; };
|
||||
63A87468298FE811009F9533 /* Package Types.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63A87467298FE811009F9533 /* Package Types.swift */; };
|
||||
63A8746A2990127D009F9533 /* PillText.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63A874692990127D009F9533 /* PillText.swift */; };
|
||||
63CD0276288B22D9004AE2EC /* View - New Windows.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63CD0275288B22D9004AE2EC /* View - New Windows.swift */; };
|
||||
63CD0279288B2316004AE2EC /* Package Detail Window.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63CD0278288B2316004AE2EC /* Package Detail Window.swift */; };
|
||||
63D8C955287A15C300483A52 /* Load up Installed Packages.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63D8C954287A15C300483A52 /* Load up Installed Packages.swift */; };
|
||||
|
|
@ -69,6 +70,7 @@
|
|||
639A7D852871D78C00B50280 /* Package Details.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Package Details.swift"; sourceTree = "<group>"; };
|
||||
63A87464298FE7FC009F9533 /* Search for Package.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Search for Package.swift"; sourceTree = "<group>"; };
|
||||
63A87467298FE811009F9533 /* Package Types.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Package Types.swift"; sourceTree = "<group>"; };
|
||||
63A874692990127D009F9533 /* PillText.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PillText.swift; sourceTree = "<group>"; };
|
||||
63CD0275288B22D9004AE2EC /* View - New Windows.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "View - New Windows.swift"; sourceTree = "<group>"; };
|
||||
63CD0278288B2316004AE2EC /* Package Detail Window.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Package Detail Window.swift"; sourceTree = "<group>"; };
|
||||
63D8C954287A15C300483A52 /* Load up Installed Packages.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Load up Installed Packages.swift"; sourceTree = "<group>"; };
|
||||
|
|
@ -225,6 +227,7 @@
|
|||
637E006C28734189005C9890 /* Installation */,
|
||||
6371EA1C2871D96800300E1B /* Packages */,
|
||||
63D8C956287A1D0800483A52 /* Loading View.swift */,
|
||||
63A874692990127D009F9533 /* PillText.swift */,
|
||||
);
|
||||
path = Views;
|
||||
sourceTree = "<group>";
|
||||
|
|
@ -348,6 +351,7 @@
|
|||
63D8C957287A1D0800483A52 /* Loading View.swift in Sources */,
|
||||
6340657F2871AF68001A2178 /* App Constants.swift in Sources */,
|
||||
634065672871AA42001A2178 /* ContentView.swift in Sources */,
|
||||
63A8746A2990127D009F9533 /* PillText.swift in Sources */,
|
||||
63A87468298FE811009F9533 /* Package Types.swift in Sources */,
|
||||
6340657D2871AC65001A2178 /* Brew Package.swift in Sources */,
|
||||
637E00642872F3CE005C9890 /* Upgrade Packages.swift in Sources */,
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
import Foundation
|
||||
|
||||
@MainActor
|
||||
func installSelectedPackages(packageArray: [String], tracker: InstallationProgressTracker, brewData _: BrewDataStorage)
|
||||
func installSelectedPackages(packageArray: [String], tracker: InstallationProgressTracker, brewData: BrewDataStorage)
|
||||
{
|
||||
let progressSteps = Float(1) / Float(packageArray.count)
|
||||
|
||||
|
|
@ -32,6 +32,7 @@ func installSelectedPackages(packageArray: [String], tracker: InstallationProgre
|
|||
tracker.isShowingInstallationFailureAlert = true
|
||||
}
|
||||
print("Installing \(tracker.packageBeingCurrentlyInstalled) at \(tracker.progressNumber)")
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,5 +30,9 @@ func searchForPackage(packageName: String, packageType: PackageType) async throw
|
|||
finalPackageArray = try foundCasks.get().components(separatedBy: "\n")
|
||||
}
|
||||
|
||||
finalPackageArray.removeLast()
|
||||
|
||||
print("Search found these: \(finalPackageArray)")
|
||||
|
||||
return finalPackageArray
|
||||
}
|
||||
|
|
|
|||
|
|
@ -64,7 +64,14 @@ struct AddFormulaView: View
|
|||
{
|
||||
ForEach(searchResultTracker.foundFormulae)
|
||||
{ formula in
|
||||
Text(formula.packageName)
|
||||
HStack
|
||||
{
|
||||
Text(formula.packageName)
|
||||
if brewData.installedFormulae.contains(where: { $0.name == formula.packageName })
|
||||
{
|
||||
PillText(text: "Already Installed")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -75,7 +82,16 @@ struct AddFormulaView: View
|
|||
{
|
||||
ForEach(searchResultTracker.foundCasks)
|
||||
{ cask in
|
||||
Text(cask.packageName)
|
||||
|
||||
HStack
|
||||
{
|
||||
Text(cask.packageName)
|
||||
if brewData.installedCasks.contains(where: { $0.name == cask.packageName })
|
||||
{
|
||||
PillText(text: "Already Installed")
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,22 @@
|
|||
//
|
||||
// PillText.swift
|
||||
// Cork
|
||||
//
|
||||
// Created by David Bureš on 05.02.2023.
|
||||
//
|
||||
|
||||
import SwiftUI
|
||||
|
||||
struct PillText: View
|
||||
{
|
||||
@State var text: String
|
||||
var body: some View
|
||||
{
|
||||
Text(text)
|
||||
.font(.caption2)
|
||||
.padding(.horizontal, 4)
|
||||
.background(Color(NSColor.tertiaryLabelColor))
|
||||
.foregroundColor(.white)
|
||||
.clipShape(Capsule())
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue