mirror of
https://github.com/maxgoedjen/secretive.git
synced 2025-04-10 17:47:19 +00:00
More cleanup
This commit is contained in:
parent
e1fae20e37
commit
7c3c767b0a
@ -16,12 +16,13 @@ struct AppDelegate: App {
|
||||
let agentStatusChecker = AgentStatusChecker()
|
||||
let justUpdatedChecker = JustUpdatedChecker()
|
||||
|
||||
@State var showingSetup = false
|
||||
@State private var showingSetup = false
|
||||
@State private var showingCreation = false
|
||||
@AppStorage("defaultsHasRunSetup") var hasRunSetup = false
|
||||
|
||||
@SceneBuilder var body: some Scene {
|
||||
WindowGroup {
|
||||
ContentView<Updater, AgentStatusChecker>(runningSetup: $showingSetup)
|
||||
ContentView<Updater, AgentStatusChecker>(showingCreation: $showingCreation, runningSetup: $showingSetup)
|
||||
.environmentObject(storeList)
|
||||
.environmentObject(updater)
|
||||
.environmentObject(agentStatusChecker)
|
||||
@ -44,7 +45,7 @@ struct AppDelegate: App {
|
||||
.commands {
|
||||
CommandGroup(after: CommandGroupPlacement.newItem) {
|
||||
Button("New Secret") {
|
||||
// TODO: Add
|
||||
showingCreation = true
|
||||
}
|
||||
.keyboardShortcut(KeyboardShortcut(KeyEquivalent("N"), modifiers: .command))
|
||||
}
|
||||
|
@ -4,27 +4,28 @@ import Brief
|
||||
|
||||
struct ContentView<UpdaterType: UpdaterProtocol, AgentStatusCheckerType: AgentStatusCheckerProtocol>: View {
|
||||
|
||||
@EnvironmentObject var storeList: SecretStoreList
|
||||
@EnvironmentObject var updater: UpdaterType
|
||||
@EnvironmentObject var agentStatusChecker: AgentStatusCheckerType
|
||||
|
||||
@State private var showingCreation = false
|
||||
@State private var selectedUpdate: Release?
|
||||
@Binding var showingCreation: Bool
|
||||
@Binding var runningSetup: Bool
|
||||
|
||||
@EnvironmentObject private var storeList: SecretStoreList
|
||||
@EnvironmentObject private var updater: UpdaterType
|
||||
@EnvironmentObject private var agentStatusChecker: AgentStatusCheckerType
|
||||
|
||||
@State private var selectedUpdate: Release?
|
||||
|
||||
var body: some View {
|
||||
VStack {
|
||||
if storeList.anyAvailable {
|
||||
StoreListView()
|
||||
.sheet(isPresented: $showingCreation) {
|
||||
if let store = storeList.modifiableStore {
|
||||
CreateSecretView(store: store, showing: $showingCreation)
|
||||
}
|
||||
}
|
||||
StoreListView(showingCreation: $showingCreation)
|
||||
} else {
|
||||
NoStoresView()
|
||||
}
|
||||
}
|
||||
.sheet(isPresented: $showingCreation) {
|
||||
if let modifiable = storeList.modifiableStore {
|
||||
CreateSecretView(store: modifiable, showing: $showingCreation)
|
||||
}
|
||||
}
|
||||
.frame(minWidth: 640, minHeight: 320)
|
||||
.toolbar {
|
||||
updateNotice
|
||||
|
@ -6,8 +6,8 @@ struct CreateSecretView<StoreType: SecretStoreModifiable>: View {
|
||||
@ObservedObject var store: StoreType
|
||||
@Binding var showing: Bool
|
||||
|
||||
@State var name = ""
|
||||
@State var requiresAuthentication = true
|
||||
@State private var name = ""
|
||||
@State private var requiresAuthentication = true
|
||||
|
||||
var body: some View {
|
||||
VStack {
|
||||
|
@ -3,11 +3,11 @@ import SecretKit
|
||||
|
||||
struct DeleteSecretView<StoreType: SecretStoreModifiable>: View {
|
||||
|
||||
let secret: StoreType.SecretType
|
||||
@ObservedObject var store: StoreType
|
||||
|
||||
@State var confirm = ""
|
||||
|
||||
@State private var confirm = ""
|
||||
|
||||
private let secret: StoreType.SecretType
|
||||
private var dismissalBlock: (Bool) -> ()
|
||||
|
||||
init(secret: StoreType.SecretType, store: StoreType, dismissalBlock: @escaping (Bool) -> ()) {
|
||||
@ -60,4 +60,5 @@ struct DeleteSecretView<StoreType: SecretStoreModifiable>: View {
|
||||
try! store.delete(secret: secret)
|
||||
dismissalBlock(true)
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
import SwiftUI
|
||||
|
||||
struct NoStoresView: View {
|
||||
|
||||
var body: some View {
|
||||
VStack {
|
||||
Text("No Secure Storage Available").bold()
|
||||
@ -12,6 +13,7 @@ struct NoStoresView: View {
|
||||
}
|
||||
}.padding()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
struct NoStoresView_Previews: PreviewProvider {
|
||||
|
@ -4,7 +4,8 @@ import SecretKit
|
||||
struct SecretDetailView<SecretType: Secret>: View {
|
||||
|
||||
@State var secret: SecretType
|
||||
let keyWriter = OpenSSHKeyWriter()
|
||||
|
||||
private let keyWriter = OpenSSHKeyWriter()
|
||||
|
||||
var body: some View {
|
||||
Form {
|
||||
|
@ -3,10 +3,12 @@ import SecretKit
|
||||
|
||||
struct StoreListView: View {
|
||||
|
||||
@Binding var showingCreation: Bool
|
||||
|
||||
@State private var activeSecret: AnySecret.ID?
|
||||
@State private var deletingSecret: AnySecret?
|
||||
|
||||
@EnvironmentObject var storeList: SecretStoreList
|
||||
@EnvironmentObject private var storeList: SecretStoreList
|
||||
|
||||
var body: some View {
|
||||
NavigationView {
|
||||
@ -31,6 +33,7 @@ struct StoreListView: View {
|
||||
}
|
||||
.frame(minWidth: 100, idealWidth: 240)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -3,9 +3,10 @@ import Brief
|
||||
|
||||
struct UpdateDetailView<UpdaterType: Updater>: View {
|
||||
|
||||
private let update: Release
|
||||
@EnvironmentObject var updater: UpdaterType
|
||||
|
||||
private let update: Release
|
||||
|
||||
init(update: Release) {
|
||||
self.update = update
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user