Format
This commit is contained in:
1 file changed
+17
-14
@@ -14,13 +14,13 @@ import UIKit
|
||||
#endif
|
||||
|
||||
func copyToClipboard(text: String) {
|
||||
#if os(macOS)
|
||||
#if os(macOS)
|
||||
let pasteboard = NSPasteboard.general
|
||||
pasteboard.clearContents()
|
||||
pasteboard.setString(text, forType: .string)
|
||||
#else
|
||||
#else
|
||||
UIPasteboard.general.string = text
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
struct ContentView: View {
|
||||
@@ -38,23 +38,23 @@ struct ContentView: View {
|
||||
|
||||
func generatePassword() {
|
||||
let chars =
|
||||
(useUppercase ? charsUpper : "") +
|
||||
(useLowercase ? charsLower : "") +
|
||||
(useNumbers ? charsNumber : "") +
|
||||
(useSymbols ? charsSymbols : "")
|
||||
|
||||
(useUppercase ? charsUpper : "") +
|
||||
(useLowercase ? charsLower : "") +
|
||||
(useNumbers ? charsNumber : "") +
|
||||
(useSymbols ? charsSymbols : "")
|
||||
|
||||
if chars.isEmpty {
|
||||
password = ""
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
password = String(
|
||||
(0..<length).compactMap { _ in
|
||||
chars.randomElement()
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
var body: some View {
|
||||
VStack {
|
||||
Text("Password Generator")
|
||||
@@ -62,14 +62,16 @@ struct ContentView: View {
|
||||
.fontWeight(.bold)
|
||||
Text("Select a length, or use the slider for a custom value")
|
||||
|
||||
Text("Password Length: " + String(length)).padding(.top)
|
||||
Text("Password Length: " + String(length))
|
||||
.padding(.top)
|
||||
Slider(
|
||||
value: Binding(
|
||||
get: { Double(length) },
|
||||
set: { length = Int($0) }
|
||||
),
|
||||
in: 1...500
|
||||
).onChange(of: length) { generatePassword() }
|
||||
)
|
||||
.onChange(of: length) { generatePassword() }
|
||||
|
||||
HStack {
|
||||
Button("8") {
|
||||
@@ -94,7 +96,8 @@ struct ContentView: View {
|
||||
.buttonStyle(.bordered)
|
||||
}
|
||||
|
||||
Text("Characters to use").padding()
|
||||
Text("Characters to use")
|
||||
.padding()
|
||||
LazyVGrid(
|
||||
columns: [
|
||||
GridItem(.adaptive(minimum: 180))
|
||||
@@ -126,7 +129,7 @@ struct ContentView: View {
|
||||
Text(password)
|
||||
.textSelection(.enabled)
|
||||
.multilineTextAlignment(.center)
|
||||
|
||||
|
||||
Spacer()
|
||||
}
|
||||
.padding()
|
||||
|
||||
Reference in new issue
Block a user