36 lines
987 B
Swift
36 lines
987 B
Swift
//
|
||
// FileManager++.swift of MijickCamera
|
||
//
|
||
// Created by Tomasz Kurylik. Sending ❤️ from Kraków!
|
||
// - Mail: tomasz.kurylik@mijick.com
|
||
// - GitHub: https://github.com/FulcrumOne
|
||
// - Medium: https://medium.com/@mijick
|
||
//
|
||
// Copyright ©2024 Mijick. All rights reserved.
|
||
|
||
|
||
import SwiftUI
|
||
|
||
// MARK: Prepare Place for Video Output
|
||
extension FileManager {
|
||
static func prepareURLForVideoOutput() -> URL? {
|
||
guard let fileUrl = getFileUrl() else { return nil }
|
||
|
||
clearPlaceIfTaken(fileUrl)
|
||
return fileUrl
|
||
}
|
||
}
|
||
private extension FileManager {
|
||
static func getFileUrl() -> URL? {
|
||
FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
|
||
.first?
|
||
.appendingPathComponent(videoPath)
|
||
}
|
||
static func clearPlaceIfTaken(_ url: URL) {
|
||
try? FileManager.default.removeItem(at: url)
|
||
}
|
||
}
|
||
private extension FileManager {
|
||
static var videoPath: String { "mijick-camera-video-output.mp4" }
|
||
}
|