mirror of
https://github.com/SideStore/SideStore.git
synced 2026-02-13 08:43:27 +01:00
XCode project for app, moved app project to folder
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
//
|
||||
// AnisetteManager.swift
|
||||
// SideStore
|
||||
//
|
||||
// Created by Joseph Mattiello on 11/16/22.
|
||||
// Copyright © 2022 SideStore. All rights reserved.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
|
||||
public enum AnisetteManager {
|
||||
/// User defined URL from Settings/UserDefaults
|
||||
static var userURL: String? {
|
||||
var urlString: String?
|
||||
|
||||
if UserDefaults.standard.textServer == false {
|
||||
urlString = UserDefaults.standard.textInputAnisetteURL
|
||||
} else {
|
||||
urlString = UserDefaults.standard.customAnisetteURL
|
||||
}
|
||||
|
||||
// guard let urlString = UserDefaults.standard.customAnisetteURL, !urlString.isEmpty else { return nil }
|
||||
|
||||
// Test it's a valid URL
|
||||
|
||||
if let urlString = urlString {
|
||||
guard URL(string: urlString) != nil else {
|
||||
ELOG("UserDefaults has invalid `customAnisetteURL`")
|
||||
assertionFailure("UserDefaults has invalid `customAnisetteURL`")
|
||||
return nil
|
||||
}
|
||||
}
|
||||
return urlString
|
||||
}
|
||||
|
||||
static var defaultURL: String {
|
||||
guard let url = Bundle.main.object(forInfoDictionaryKey: "ALTAnisetteURL") as? String else {
|
||||
assertionFailure("Info.plist has invalid `ALTAnisetteURL`")
|
||||
abort()
|
||||
}
|
||||
return url
|
||||
}
|
||||
|
||||
static var currentURLString: String { userURL ?? defaultURL }
|
||||
// Force unwrap is safe here since we check validity before hand -- @JoeMatt
|
||||
|
||||
/// User url or default from plist if none specified
|
||||
static var currentURL: URL { URL(string: currentURLString)! }
|
||||
}
|
||||
Reference in New Issue
Block a user