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