Path: blob/a-new-beginning/Folium-iOS/Actors/CameraAccess.swift
2 views
//
// CameraAccess.swift
// Folium-iOS
//
// Created by Jarrod Norwell on 12/7/2025.
//
/*
MARK: 29/11/2025
- Cleaned up CameraAccess actor
- Made `checkAuthorisationStatus` async
*/
import AVFoundation
actor CameraAccess {
var authorised: Bool = false
var status: AVAuthorizationStatus = .notDetermined
func checkAuthorisationStatus() async {
await withCheckedContinuation { continuation in
status = AVCaptureDevice.authorizationStatus(for: .video)
authorised = status == .authorized
continuation.resume()
}
}
func authorise() async -> Bool {
authorised = await AVCaptureDevice.requestAccess(for: .video)
return authorised
}
}