Skip to content

Commit

Permalink
Merge pull request #157 from simple-login/fix/long-email-overflow
Browse files Browse the repository at this point in the history
Fix long email overflow
  • Loading branch information
ntnhon authored Sep 6, 2023
2 parents 2ffab0c + 0cab26a commit 2167242
Show file tree
Hide file tree
Showing 10 changed files with 56 additions and 60 deletions.
2 changes: 1 addition & 1 deletion SimpleLogin/.swiftlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ disabled_rules:
- redundant_string_enum_value
opt_in_rules:
- array_init
- attributes
# - attributes
- closure_spacing
- collection_alignment
- contains_over_filter_count
Expand Down
50 changes: 25 additions & 25 deletions SimpleLogin/SimpleLogin.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
objects = {

/* Begin PBXBuildFile section */
350D53862AA87EA4000C342C /* SwiftUIIntrospect in Frameworks */ = {isa = PBXBuildFile; productRef = 350D53852AA87EA4000C342C /* SwiftUIIntrospect */; };
350D53882AA87EF9000C342C /* SwiftUIIntrospect in Frameworks */ = {isa = PBXBuildFile; productRef = 350D53872AA87EF9000C342C /* SwiftUIIntrospect */; };
35373C45289177DA00000297 /* LogInWithProtonButtonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35373C44289177DA00000297 /* LogInWithProtonButtonView.swift */; };
35373C4728917A4900000297 /* ProtonButtonStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35373C4628917A4900000297 /* ProtonButtonStyle.swift */; };
353E8273290150D7004C9154 /* DeletedAliasesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353E8272290150D7004C9154 /* DeletedAliasesView.swift */; };
Expand Down Expand Up @@ -86,7 +88,6 @@
C05424B527B06955008048A5 /* SLNavigationViewModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = C05424B427B06955008048A5 /* SLNavigationViewModifier.swift */; };
C0542ABE27AEDF3B00188C63 /* BaseViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C0542ABD27AEDF3B00188C63 /* BaseViewController.swift */; };
C05A4CDE273C6C73005F8CC5 /* AutoFocusTextField.swift in Sources */ = {isa = PBXBuildFile; fileRef = C05A4CDD273C6C73005F8CC5 /* AutoFocusTextField.swift */; };
C05A4CE1273C76BC005F8CC5 /* Introspect in Frameworks */ = {isa = PBXBuildFile; productRef = C05A4CE0273C76BC005F8CC5 /* Introspect */; };
C05A9B15277BB996003FD0A7 /* UpgradeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C05A9B14277BB996003FD0A7 /* UpgradeView.swift */; };
C064797D272B331D009CA1F8 /* Action.swift in Sources */ = {isa = PBXBuildFile; fileRef = C064797C272B331D009CA1F8 /* Action.swift */; };
C06CEAF2279018B100736920 /* MailboxesViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C06CEAF1279018B100736920 /* MailboxesViewModel.swift */; };
Expand Down Expand Up @@ -140,7 +141,6 @@
EF5BDFB427B7AF56004B696B /* LogoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF5BDFB327B7AF56004B696B /* LogoView.swift */; };
EF5BDFB827B7B5DD004B696B /* BetterSafariViewExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF5BDFB727B7B5DD004B696B /* BetterSafariViewExtensions.swift */; };
EF5E150727D94A160047C568 /* AliasExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF5E150627D94A160047C568 /* AliasExtensions.swift */; };
EF6303AD2815E6860061FF6F /* Introspect in Frameworks */ = {isa = PBXBuildFile; productRef = EF6303AC2815E6860061FF6F /* Introspect */; };
EF65890027DA96D100D327C2 /* Reachability in Frameworks */ = {isa = PBXBuildFile; productRef = EF6588FF27DA96D100D327C2 /* Reachability */; };
EF65890227DA9EB400D327C2 /* SizePreferenceKey.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF65890127DA9EB400D327C2 /* SizePreferenceKey.swift */; };
EF68E11827B90E9400396472 /* DeleteMenuButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF68E11727B90E9400396472 /* DeleteMenuButton.swift */; };
Expand Down Expand Up @@ -394,8 +394,8 @@
C043D41426E01DBF0051B282 /* KeychainAccess in Frameworks */,
C0EA747C27B30CD300848F58 /* BetterSafariView in Frameworks */,
C07EA68B273E4DEA00C7D69C /* AlertToast in Frameworks */,
350D53862AA87EA4000C342C /* SwiftUIIntrospect in Frameworks */,
C02FCF90278E3C3000F32BED /* Kingfisher in Frameworks */,
C05A4CE1273C76BC005F8CC5 /* Introspect in Frameworks */,
C04848A7278CD99000702E8E /* SwiftyStoreKit in Frameworks */,
C04848A4278CD00500702E8E /* StoreKit.framework in Frameworks */,
EF65890027DA96D100D327C2 /* Reachability in Frameworks */,
Expand Down Expand Up @@ -423,9 +423,9 @@
buildActionMask = 2147483647;
files = (
C0941EF427A6F056009AAEBC /* AlertToast in Frameworks */,
EF6303AD2815E6860061FF6F /* Introspect in Frameworks */,
C0941EEB27A6E917009AAEBC /* KeychainAccess in Frameworks */,
C0941EE927A6E912009AAEBC /* SimpleLoginPackage in Frameworks */,
350D53882AA87EF9000C342C /* SwiftUIIntrospect in Frameworks */,
357B504C2892BAB80080326A /* BetterSafariView in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
Expand Down Expand Up @@ -815,13 +815,13 @@
packageProductDependencies = (
C03760F226DC0BA000E5ECAC /* SimpleLoginPackage */,
C043D41326E01DBF0051B282 /* KeychainAccess */,
C05A4CE0273C76BC005F8CC5 /* Introspect */,
C07EA68A273E4DEA00C7D69C /* AlertToast */,
C04848A6278CD99000702E8E /* SwiftyStoreKit */,
C02FCF8F278E3C3000F32BED /* Kingfisher */,
C02CD1952794BA3E00B3115E /* ConfettiSwiftUI */,
C0EA747B27B30CD300848F58 /* BetterSafariView */,
EF6588FF27DA96D100D327C2 /* Reachability */,
350D53852AA87EA4000C342C /* SwiftUIIntrospect */,
);
productName = SimpleLogin;
productReference = C034888A268A6F29008D9629 /* SimpleLogin.app */;
Expand Down Expand Up @@ -880,8 +880,8 @@
C0941EE827A6E912009AAEBC /* SimpleLoginPackage */,
C0941EEA27A6E917009AAEBC /* KeychainAccess */,
C0941EF327A6F056009AAEBC /* AlertToast */,
EF6303AC2815E6860061FF6F /* Introspect */,
357B504B2892BAB80080326A /* BetterSafariView */,
350D53872AA87EF9000C342C /* SwiftUIIntrospect */,
);
productName = ShareExtension;
productReference = C03E200A27A1F436000D82F6 /* ShareExtension.appex */;
Expand Down Expand Up @@ -928,13 +928,13 @@
packageReferences = (
C03760F126DC0BA000E5ECAC /* XCRemoteSwiftPackageReference "swift-package" */,
C043D41226E01DBF0051B282 /* XCRemoteSwiftPackageReference "KeychainAccess" */,
C05A4CDF273C76BB005F8CC5 /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */,
C07EA689273E4DEA00C7D69C /* XCRemoteSwiftPackageReference "AlertToast" */,
C04848A5278CD99000702E8E /* XCRemoteSwiftPackageReference "SwiftyStoreKit" */,
C02FCF8E278E3C3000F32BED /* XCRemoteSwiftPackageReference "Kingfisher" */,
C02CD1942794BA3E00B3115E /* XCRemoteSwiftPackageReference "ConfettiSwiftUI" */,
C0EA747A27B30CD200848F58 /* XCRemoteSwiftPackageReference "BetterSafariView" */,
EF6588FE27DA96D100D327C2 /* XCRemoteSwiftPackageReference "Reachability" */,
350D53842AA87EA4000C342C /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */,
);
productRefGroup = C034888B268A6F29008D9629 /* Products */;
projectDirPath = "";
Expand Down Expand Up @@ -1666,6 +1666,14 @@
/* End XCConfigurationList section */

/* Begin XCRemoteSwiftPackageReference section */
350D53842AA87EA4000C342C /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/siteline/SwiftUI-Introspect.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 0.12.0;
};
};
C02CD1942794BA3E00B3115E /* XCRemoteSwiftPackageReference "ConfettiSwiftUI" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/simibac/ConfettiSwiftUI.git";
Expand Down Expand Up @@ -1706,14 +1714,6 @@
kind = branch;
};
};
C05A4CDF273C76BB005F8CC5 /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/siteline/SwiftUI-Introspect.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 0.1.3;
};
};
C07EA689273E4DEA00C7D69C /* XCRemoteSwiftPackageReference "AlertToast" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/elai950/AlertToast";
Expand Down Expand Up @@ -1741,6 +1741,16 @@
/* End XCRemoteSwiftPackageReference section */

/* Begin XCSwiftPackageProductDependency section */
350D53852AA87EA4000C342C /* SwiftUIIntrospect */ = {
isa = XCSwiftPackageProductDependency;
package = 350D53842AA87EA4000C342C /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */;
productName = SwiftUIIntrospect;
};
350D53872AA87EF9000C342C /* SwiftUIIntrospect */ = {
isa = XCSwiftPackageProductDependency;
package = 350D53842AA87EA4000C342C /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */;
productName = SwiftUIIntrospect;
};
357B504B2892BAB80080326A /* BetterSafariView */ = {
isa = XCSwiftPackageProductDependency;
package = C0EA747A27B30CD200848F58 /* XCRemoteSwiftPackageReference "BetterSafariView" */;
Expand Down Expand Up @@ -1786,11 +1796,6 @@
package = C04848A5278CD99000702E8E /* XCRemoteSwiftPackageReference "SwiftyStoreKit" */;
productName = SwiftyStoreKit;
};
C05A4CE0273C76BC005F8CC5 /* Introspect */ = {
isa = XCSwiftPackageProductDependency;
package = C05A4CDF273C76BB005F8CC5 /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */;
productName = Introspect;
};
C07EA68A273E4DEA00C7D69C /* AlertToast */ = {
isa = XCSwiftPackageProductDependency;
package = C07EA689273E4DEA00C7D69C /* XCRemoteSwiftPackageReference "AlertToast" */;
Expand All @@ -1816,11 +1821,6 @@
package = C0EA747A27B30CD200848F58 /* XCRemoteSwiftPackageReference "BetterSafariView" */;
productName = BetterSafariView;
};
EF6303AC2815E6860061FF6F /* Introspect */ = {
isa = XCSwiftPackageProductDependency;
package = C05A4CDF273C76BB005F8CC5 /* XCRemoteSwiftPackageReference "SwiftUI-Introspect" */;
productName = Introspect;
};
EF6588FF27DA96D100D327C2 /* Reachability */ = {
isa = XCSwiftPackageProductDependency;
package = EF6588FE27DA96D100D327C2 /* XCRemoteSwiftPackageReference "Reachability" */;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,17 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/elai950/AlertToast",
"state" : {
"revision" : "a4f4267f6454259ba4ed8f9dadb87334a789c26c",
"version" : "1.3.7"
"revision" : "b39252eacd159904afd7d718bba0afabb87f2f2f",
"version" : "1.3.9"
}
},
{
"identity" : "bettersafariview",
"kind" : "remoteSourceControl",
"location" : "https://github.com/stleamist/BetterSafariView",
"state" : {
"revision" : "be7248720af18c57c7a1348b20f6212379b28c6b",
"version" : "2.4.0"
"revision" : "dffd42bc70287e761979bc81dd278db5c80f0deb",
"version" : "2.4.1"
}
},
{
Expand All @@ -41,8 +41,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/onevcat/Kingfisher.git",
"state" : {
"revision" : "be1a1acb283a702b99b630f586877ba02234b4cb",
"version" : "7.3.2"
"revision" : "b6f62758f21a8c03cd64f4009c037cfa580a256e",
"version" : "7.9.1"
}
},
{
Expand All @@ -59,17 +59,17 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/simple-login/swift-package",
"state" : {
"revision" : "8c9011c5d0f8cddfaa047c6669ba9b51df745304",
"version" : "2.1.0"
"revision" : "d7e1661c5ab4fba1a5be8b166fbf55911c5786e3",
"version" : "2.1.1"
}
},
{
"identity" : "swiftui-introspect",
"kind" : "remoteSourceControl",
"location" : "https://github.com/siteline/SwiftUI-Introspect.git",
"state" : {
"revision" : "f2616860a41f9d9932da412a8978fec79c06fe24",
"version" : "0.1.4"
"revision" : "121c146fe591b1320238d054ae35c81ffa45f45a",
"version" : "0.12.0"
}
},
{
Expand All @@ -78,7 +78,7 @@
"location" : "https://github.com/bizz84/SwiftyStoreKit.git",
"state" : {
"branch" : "master",
"revision" : "f3265c7c211907ad913102c61c3972b880f0675c"
"revision" : "48d4d4c0b6a66732eb45e2f0104fb7d080c67a69"
}
}
],
Expand Down
5 changes: 2 additions & 3 deletions SimpleLogin/SimpleLogin/Models/Session.swift
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,11 @@ final class Session: ObservableObject {
self.apiService = apiService
}

func execute<E: Endpoint>(_ endpoint: E) async throws -> E.Response {
func execute<E: Endpoint>(_ endpoint: E) async throws -> E.Response {
try await apiService.execute(endpoint)
}
}

// swiftlint:disable force_unwrapping
extension Session {
static var preview: Session {
.init(apiKey: .init(value: ""), apiService: APIService.preview)
Expand All @@ -31,7 +30,7 @@ extension Session {

extension APIService {
static var preview: APIService {
.init(baseURL: URL(string: "https://simplelogin.io")!,
.init(baseURL: URL(string: "https://simplelogin.io")!, // swiftlint:disable:this force_unwrapping
session: .shared,
printDebugInformation: false)
}
Expand Down
13 changes: 6 additions & 7 deletions SimpleLogin/SimpleLogin/Modules/Log in/LogInView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -110,19 +110,18 @@ struct LogInView: View {
.fixedSize(horizontal: false, vertical: true)
.opacity(viewModel.isShowingKeyboard ? 0 : 1)
.fullScreenCover(isPresented: $showingSignUpView) {
if let apiService = viewModel.apiService {
SignUpView(apiService: apiService) { email, password in
Task {
viewModel.email = email
viewModel.password = password
await viewModel.logIn()
}
SignUpView(apiService: viewModel.apiService) { email, password in
Task {
viewModel.email = email
viewModel.password = password
await viewModel.logIn()
}
}
}
}
}
.contentShape(Rectangle())
.animation(.default, value: viewModel.isShowingKeyboard)
.onTapGesture {
UIApplication.shared.endEditing()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -419,10 +419,10 @@ private struct ActivityView: View {
.font(.footnote)
.foregroundColor(.secondary)
}

Spacer()
.frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .leading)
}
.fixedSize(horizontal: false, vertical: true)
.frame(maxWidth: .infinity, maxHeight: .infinity)
})
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
//

import Combine
import Introspect
import SimpleLoginPackage
import SwiftUI
import SwiftUIIntrospect

struct CreateAliasView: View {
@Environment(\.presentationMode) private var presentationMode
Expand Down Expand Up @@ -39,11 +39,10 @@ struct CreateAliasView: View {
var body: some View {
NavigationView {
Group {
if let options = viewModel.options,
let mailboxes = viewModel.mailboxes {
if let options = viewModel.options {
ContentView(viewModel: viewModel,
options: options,
mailboxes: mailboxes)
mailboxes: viewModel.mailboxes)
} else if !viewModel.isLoading {
Button(action: viewModel.fetchOptionsAndMailboxes) {
Label("Retry", systemImage: "gobackward")
Expand Down Expand Up @@ -115,7 +114,7 @@ private struct ContentView: View {
.autocapitalization(.none)
.disableAutocorrection(true)
.foregroundColor(viewModel.prefix.isValidPrefix ? .primary : .red)
.introspectTextField { textField in
.introspect(.textField, on: .iOS(.v15, .v16, .v17)) { textField in
textField.clearButtonMode = .whileEditing
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,16 @@
// Created by Thanh-Nhon Nguyen on 15/01/2022.
//

import Introspect
import SwiftUI
import SwiftUIIntrospect
import UIKit

struct ClearButtonModeModifier: ViewModifier {
let mode: UITextField.ViewMode

func body(content: Content) -> some View {
content
.introspectTextField { textField in
.introspect(.textField, on: .iOS(.v15, .v16, .v17)) { textField in
textField.clearButtonMode = mode
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@
// Created by Thanh-Nhon Nguyen on 06/02/2022.
//

import Introspect
import SwiftUI
import SwiftUIIntrospect

struct SLNavigationViewModifier: ViewModifier {
func body(content: Content) -> some View {
content.introspectNavigationController { navigationController in
content.introspect(.navigationView(style: .columns), on: .iOS(.v15)) { navigationController in
navigationController.splitViewController?.preferredPrimaryColumnWidthFraction = 1
navigationController.splitViewController?.maximumPrimaryColumnWidth = 450
navigationController.splitViewController?.preferredDisplayMode = .oneBesideSecondary
Expand Down
3 changes: 1 addition & 2 deletions SimpleLogin/SimpleLogin/Utils/FeatureFlags.swift
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,11 @@

import Foundation

// swiftlint:disable prefixed_toplevel_constant
struct FeatureFlags {
let printNetworkDebugInformation: Bool
}

let featureFlags = {
let featureFlags = { // swiftlint:disable:this prefixed_toplevel_constant
#if DEBUG
FeatureFlags(printNetworkDebugInformation: true)
#else
Expand Down

0 comments on commit 2167242

Please sign in to comment.