This commit is contained in:
Lncvrt committed 2026-08-29 19:31:07 -07:00
1 parent f2e8e99958
commit b67c2d7ccf
1 file changed
+17 -14
+17 -14
View File
@@ -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()