mirror of
https://github.com/maxgoedjen/secretive.git
synced 2026-07-03 11:11:42 +00:00
Reorg
This commit is contained in:
54
Secretive/Views/CreateSecretView.swift
Normal file
54
Secretive/Views/CreateSecretView.swift
Normal file
@@ -0,0 +1,54 @@
|
||||
import SwiftUI
|
||||
import SecretKit
|
||||
|
||||
struct CreateSecretView: View {
|
||||
|
||||
@ObservedObject var store: AnySecretStoreModifiable
|
||||
|
||||
@State var name = ""
|
||||
@State var requiresAuthentication = true
|
||||
|
||||
var dismissalBlock: () -> ()
|
||||
|
||||
var body: some View {
|
||||
VStack {
|
||||
HStack {
|
||||
Image(nsImage: NSApp.applicationIconImage)
|
||||
.resizable()
|
||||
.frame(width: 64, height: 64)
|
||||
.padding()
|
||||
VStack {
|
||||
HStack {
|
||||
Text("Create a New Secret").bold()
|
||||
Spacer()
|
||||
}
|
||||
HStack {
|
||||
Text("Name:")
|
||||
TextField("Shhhhh", text: $name)
|
||||
}
|
||||
HStack {
|
||||
Toggle(isOn: $requiresAuthentication) {
|
||||
Text("Requires Authentication (Biometrics or Password)")
|
||||
}
|
||||
Spacer()
|
||||
}
|
||||
}
|
||||
.onExitCommand(perform: dismissalBlock)
|
||||
}
|
||||
HStack {
|
||||
Spacer()
|
||||
Button(action: dismissalBlock) {
|
||||
Text("Cancel")
|
||||
}
|
||||
Button(action: save) {
|
||||
Text("Create")
|
||||
}.disabled(name.isEmpty)
|
||||
}
|
||||
}.padding()
|
||||
}
|
||||
|
||||
func save() {
|
||||
try! store.create(name: name, requiresAuthentication: requiresAuthentication)
|
||||
dismissalBlock()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user