Managers and Utils

AuthManager

AuthManager

AuthManager.swift

Purpose:
Handles all the authentication related tasks such as signing in, signing up, sending magic links, managing the current user session, and signing out.

Key Functions:

  • getCurrentSession: Fetches the current user session if available.
  • getSessionFromUrl: Processes a URL callback after a magic link sign-in, extracting the user session.
  • registerNewUserWithEmail: Registers a new user using their email and password.
  • signInWithEmail: Authenticates a user by their email and password.
  • signInWithApple: Authenticates a user with Sign in with Apple using the provided idToken.
  • sendMagicLink: Sends a magic link to the user's email for passwordless authentication.
  • signOut: Signs out the current user.

Usage:
Wisely employed throughout the app in views where user authentication state changes are relevant, such as the SignInView or the SettingsView.

Previous
SignInViewModel