diff --git a/SideStoreApp/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata b/SideStoreApp/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..919434a6 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideBackup.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideBackup.xcscheme new file mode 100644 index 00000000..5da38bf4 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideBackup.xcscheme @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStore-Package.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStore-Package.xcscheme new file mode 100644 index 00000000..863b03cb --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStore-Package.xcscheme @@ -0,0 +1,411 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStore.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStore.xcscheme new file mode 100644 index 00000000..fb561c17 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStore.xcscheme @@ -0,0 +1,176 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore-Dynamic.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore-Dynamic.xcscheme new file mode 100644 index 00000000..438a7965 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore-Dynamic.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore-Static.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore-Static.xcscheme new file mode 100644 index 00000000..03008f35 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore-Static.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore.xcscheme new file mode 100644 index 00000000..435240b7 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreCore.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit-Dynamic.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit-Dynamic.xcscheme new file mode 100644 index 00000000..eda2f622 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit-Dynamic.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit-Static.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit-Static.xcscheme new file mode 100644 index 00000000..06881652 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit-Static.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit.xcscheme new file mode 100644 index 00000000..976e7810 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideStoreUIKit.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit-Dynamic.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit-Dynamic.xcscheme new file mode 100644 index 00000000..5f0981ca --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit-Dynamic.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit-Static.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit-Static.xcscheme new file mode 100644 index 00000000..78d2eda1 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit-Static.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit.xcscheme b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit.xcscheme new file mode 100644 index 00000000..28dbb773 --- /dev/null +++ b/SideStoreApp/.swiftpm/xcode/xcshareddata/xcschemes/SideWidgetKit.xcscheme @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/SideStoreApp/Package.resolved b/SideStoreApp/Package.resolved index e636bee2..9e76aa95 100644 --- a/SideStoreApp/Package.resolved +++ b/SideStoreApp/Package.resolved @@ -3,7 +3,7 @@ { "identity" : "altsign", "kind" : "remoteSourceControl", - "location" : "https://github.com/SideStore/AltSign", + "location" : "https://github.com/SideStore/AltSign.git", "state" : { "revision" : "eb4c74dcf6be2fb00a3edc0381aae59fbbdb4cf3", "version" : "1.0.3" @@ -12,7 +12,7 @@ { "identity" : "appcenter-sdk-apple", "kind" : "remoteSourceControl", - "location" : "https://github.com/microsoft/appcenter-sdk-apple", + "location" : "https://github.com/microsoft/appcenter-sdk-apple.git", "state" : { "revision" : "b2dc99cfedead0bad4e6573d86c5228c89cff332", "version" : "4.4.3" @@ -27,37 +27,19 @@ "revision" : "e754ab1c80920dd51a8e08290c912ac1c2ac8b58" } }, - { - "identity" : "imobiledevice.swift", - "kind" : "remoteSourceControl", - "location" : "https://github.com/SideStore/iMobileDevice.swift", - "state" : { - "revision" : "74e481106dd155c0cd21bca6795fd9fe5f751654", - "version" : "1.0.5" - } - }, { "identity" : "keychainaccess", "kind" : "remoteSourceControl", - "location" : "https://github.com/kishikawakatsumi/KeychainAccess", + "location" : "https://github.com/kishikawakatsumi/KeychainAccess.git", "state" : { "revision" : "84e546727d66f1adc5439debad16270d0fdd04e7", "version" : "4.2.2" } }, - { - "identity" : "launchatlogin", - "kind" : "remoteSourceControl", - "location" : "https://github.com/sindresorhus/LaunchAtLogin.git", - "state" : { - "revision" : "7ad6331f9c38953eb1ce8737758e18f7607e984a", - "version" : "5.0.0" - } - }, { "identity" : "nuke", "kind" : "remoteSourceControl", - "location" : "https://github.com/kean/Nuke", + "location" : "https://github.com/kean/Nuke.git", "state" : { "revision" : "9318d02a8a6d20af56505c9673261c1fd3b3aebe", "version" : "7.6.3" @@ -84,7 +66,7 @@ { "identity" : "roxas", "kind" : "remoteSourceControl", - "location" : "https://github.com/JoeMatt/Roxas", + "location" : "https://github.com/JoeMatt/Roxas.git", "state" : { "revision" : "17338c09ec0ffeea4c68135f17c1f801a3d6d10d", "version" : "1.2.2" @@ -93,7 +75,7 @@ { "identity" : "semanticversion", "kind" : "remoteSourceControl", - "location" : "https://github.com/SwiftPackageIndex/SemanticVersion", + "location" : "https://github.com/SwiftPackageIndex/SemanticVersion.git", "state" : { "revision" : "fc670910dc0903cc269b3d0b776cda5703979c4e", "version" : "0.3.5" @@ -102,12 +84,30 @@ { "identity" : "sidekit", "kind" : "remoteSourceControl", - "location" : "https://github.com/SideStore/SideKit", + "location" : "https://github.com/SideStore/SideKit.git", "state" : { "revision" : "7ea34a09b52c104077dea8e0b90f8dc55d43b36b", "version" : "0.1.0" } }, + { + "identity" : "swift-log", + "kind" : "remoteSourceControl", + "location" : "https://github.com/apple/swift-log.git", + "state" : { + "revision" : "32e8d724467f8fe623624570367e3d50c5638e46", + "version" : "1.5.2" + } + }, + { + "identity" : "swift-log-swiftybeaver", + "kind" : "remoteSourceControl", + "location" : "https://github.com/ShivaHuang/swift-log-SwiftyBeaver.git", + "state" : { + "revision" : "7b6f329f47530583546be82bb14060aba888cd43", + "version" : "0.1.0" + } + }, { "identity" : "swiftpmplugins", "kind" : "remoteSourceControl", @@ -116,6 +116,15 @@ "revision" : "2e4833a3ca65d0aaa986138b8ef350b7f549ba28", "version" : "1.0.0" } + }, + { + "identity" : "swiftybeaver", + "kind" : "remoteSourceControl", + "location" : "https://github.com/SwiftyBeaver/SwiftyBeaver.git", + "state" : { + "revision" : "12b5acf96d98f91d50de447369bd18df74600f1a", + "version" : "1.9.6" + } } ], "version" : 2 diff --git a/SideStoreApp/Package.swift b/SideStoreApp/Package.swift index 7dfc703c..79894e21 100644 --- a/SideStoreApp/Package.swift +++ b/SideStoreApp/Package.swift @@ -2,7 +2,6 @@ // The swift-tools-version declares the minimum version of Swift required to build this package. import Foundation -import os.log import PackageDescription // Process enviroment variables. @@ -10,6 +9,8 @@ typealias EnviromentBool = (var: String, default: Bool) // Possible keys for `env` and their default value let USE_CARGO = envBool(("USE_CARGO", false)) +let USE_LOCAL_MINIMUXER = envBool(("USE_LOCAL_MINIMUXER", true)) +let USE_LOCAL_EM_PROXY = envBool(("USE_LOCAL_EM_PROXY", true)) let USE_CXX_INTEROP = envBool(("USE_CXX_INTEROP", false)) let USE_CXX_MODULES = envBool(("USE_CXX_MODULES", false)) let INHIBIT_UPSTREAM_WARNINGS = envBool(("INHIBIT_UPSTREAM_WARNINGS", true)) @@ -19,6 +20,11 @@ let unsafe_flags: [String] = INHIBIT_UPSTREAM_WARNINGS ? ["-w"] : [String]() let unsafe_flags_cxx: [String] = INHIBIT_UPSTREAM_WARNINGS ? ["-w", "-Wno-module-import-in-extern-c"] : ["-Wno-module-import-in-extern-c"] +enum Consts { + static let minimuxer_checksum: String = "57b5126605ad127f209a57a2f8e6fe7230ce9acabc499f2b7510983ddec954bb" + static let em_proxy_checksum: String = "79f90075b8ff2f47540a5bccf5fb7740905cda63463f833e2505256237df3c1b" +} + extension Package.Dependency { /// The combination of all the dependencies for the Package. enum SideStore { @@ -32,21 +38,34 @@ extension Package.Dependency { /// Side Store Team Packages static let Packages_SideStoreTeam: [Package.Dependency] = [ .github("SideStore/AltSign", from: "1.0.3"), - .github("SideStore/iMobileDevice.swift", from: "1.0.5"), + .package(name: "iMobileDevice.swift", path: "../../iMobileDevice.swift"), +// .github("SideStore/iMobileDevice.swift", from: "1.0.5"), .github("SideStore/SideKit", from: "0.1.0"), /// @JoeMatt updated fork for Riley's `Roxas` .github("JoeMatt/Roxas", from: "1.2.2"), ] + #if HAVE_MACOS_DAEMON + static let Packages_macOS_Daemon: [Package.Dependency] = [ + .github("sindresorhus/LaunchAtLogin", from: "5.0.0") + ] + #else + static let Packages_macOS_Daemon: [Package.Dependency] = [] + #endif + /// 3rd party Packages static let Packages_3rdParty: [Package.Dependency] = [ - .github("SwiftPackageIndex/SemanticVersion", from: "0.3.5"), + // Logging + .github("apple/swift-log", from: "1.5.2"), + // XCode console output + .github("ShivaHuang/swift-log-SwiftyBeaver", from: "0.1.0"), + .github("johnxnguyen/Down", branch: "master"), .github("kean/Nuke", from: "7.0.0"), .github("kishikawakatsumi/KeychainAccess", from: "4.2.0"), .github("microsoft/appcenter-sdk-apple", from: "4.2.0"), - .github("sindresorhus/LaunchAtLogin", from: "5.0.0"), - ] + .github("SwiftPackageIndex/SemanticVersion", from: "0.3.5") + ] + Packages_macOS_Daemon static let Plugins_BuildTools: [Package.Dependency] = [ // Plugins @@ -141,8 +160,11 @@ let AppCenterCrashes : Target.Dependency = .product(name: "AppCenterCrashes", p let CoreCrypto : Target.Dependency = .product(name: "CoreCrypto", package: "AltSign") let CCoreCrypto : Target.Dependency = .product(name: "CCoreCrypto", package: "AltSign") let libimobiledevice: Target.Dependency = .product(name: "libimobiledevice", package: "iMobileDevice.swift") +let iMobileDevice : Target.Dependency = .product(name: "iMobileDevice", package: "iMobileDevice.swift") let Roxas : Target.Dependency = .product(name: "Roxas", package: "Roxas") let RoxasUI : Target.Dependency = .product(name: "RoxasUI", package: "Roxas") +let Logging : Target.Dependency = .product(name: "Logging", package: "swift-log") +let LoggingSwiftyBeaver : Target.Dependency = .product(name: "LoggingSwiftyBeaver", package: "swift-log-SwiftyBeaver") // MARK: - Linking let frameworksCommon: [LinkerSetting] = [ "Avfoundation", @@ -177,6 +199,7 @@ let package = Package( .tvOS(.v14), .macCatalyst(.v14), .macOS(.v12), + .driverKit("99") ], products: Product.products, dependencies: Package.Dependency.SideStore.dependencies, @@ -192,9 +215,9 @@ let package = Package( extension Product { static let products: [Product] = [ // Modules - SideStoreAppKit.0, - SideStoreAppKit.static, - SideStoreAppKit.dynamic, + SideStoreUIKit.0, + SideStoreUIKit.static, + SideStoreUIKit.dynamic, SideStoreCore.0, SideStoreCore.static, @@ -217,8 +240,8 @@ extension Product { static let cliProducts: [Product] = [] #endif - // SideStoreAppKit - static let SideStoreAppKit = librarySet("SideStoreAppKit") + // SideStoreUIKit + static let SideStoreUIKit = librarySet("SideStoreUIKit") // SideStoreCore static let SideStoreCore = librarySet("SideStoreCore") @@ -255,7 +278,7 @@ extension Target { } typealias TargetPair = (target: PackageDescription.Target, testTarget: PackageDescription.Target?) -// MARK: - SideStoreAppKit +// MARK: - SideStoreUIKit extension Target.SideStore { /// All the targets fo be added to `Package(targets:)` @@ -263,8 +286,11 @@ extension Target.SideStore { /// __Public Targets__ static let publicTargets: [Target] = [ - // SideStoreAppKit - SideStoreAppKit, + // SideStoreUIKit + SideStoreUIKit, + + // SideUIShared + SideUIShared, // iOS Widget SideWidgetKit, @@ -299,10 +325,10 @@ extension Target.SideStore { Cargo.Plugins }() - // MARK: - SideStoreAppKit - static let SideStoreAppKit: Target = + // MARK: - SideStoreUIKit + static let SideStoreUIKit: Target = .target( - name: "SideStoreAppKit", + name: "SideStoreUIKit", dependencies: [ AppCenterAnalytics, AppCenterCrashes, @@ -324,13 +350,40 @@ extension Target.SideStore { plugins: [LoggerPlugin, IntentBuilderPlugin] ) + // MARK: - SideUIShared + static let SideUIShared: Target = + .target( + name: "SideUIShared", + dependencies: [ + AppCenterAnalytics, + AppCenterCrashes, + "AltSign", + "Down", + "EmotionalDamage", + "KeychainAccess", + libimobiledevice, + iMobileDevice, + "MiniMuxer", + Roxas, + RoxasUI, + "SideKit", + "SidePatcher", + "SideStoreCore", + ], + resources: [], + linkerSettings: linkerSettings, + plugins: [LoggerPlugin, IntentBuilderPlugin] + ) + // MARK: - SideWidgetKit static let SideWidgetKit: Target = .target( name: "SideWidgetKit", dependencies: [ + Roxas, + RoxasUI, "SideKit", - "SideStoreAppKit", + "SideUIShared", "SideStoreCore" ], plugins: commonPlugins @@ -344,7 +397,11 @@ extension Target.SideStore { "AltSign", "KeychainAccess", Roxas, - "SemanticVersion"], + "SemanticVersion", + Logging, + LoggingSwiftyBeaver, + "SideKit" + ], plugins: commonPlugins), .testTarget( name: "SideStoreCoreTests", @@ -408,9 +465,8 @@ extension Target.SideStore { static let SideStore_app: Target = .executableTarget( name: "SideStore", - dependencies: [ "SideStoreAppKit" ], + dependencies: [ "SideStoreUIKit" ], exclude: [ - "Resources/AltBackup.ipa", "Resources/Info.info", "Resources/Info.plist", "Resources/SideStore.entitlements", @@ -493,10 +549,13 @@ extension Target.SideStore { ].compactMap{$0} // MARK: em_proxy - private static let em_proxy_target: Target = .binaryTarget( - name: "em_proxy", - url: "https://github.com/SideStore/em_proxy/releases/download/build/em_proxy.xcframework.zip", - checksum: "79f90075b8ff2f47540a5bccf5fb7740905cda63463f833e2505256237df3c1b") + private static let em_proxy_target: Target = USE_LOCAL_EM_PROXY ? + .binaryTarget(name: "em_proxy", + path: "Dependencies/em_proxy/em_proxy.xcframework") : + .binaryTarget( + name: "em_proxy", + url: "https://github.com/SideStore/em_proxy/releases/download/build/em_proxy.xcframework.zip", + checksum: Consts.em_proxy_checksum) // MARK: - EmotionalDamage (Swift) private static let emotionalDamageTarget: TargetPair = ( @@ -504,10 +563,12 @@ extension Target.SideStore { .testTarget(name: "EmotionalDamageTests", dependencies: ["EmotionalDamage"])) // MARK: minimuxer - private static let minimuxer_target: Target = + private static let minimuxer_target: Target = USE_LOCAL_MINIMUXER ? + .binaryTarget(name: "minimuxer", + path: "Dependencies/minimuxer/minimuxer.xcframework") : .binaryTarget(name: "minimuxer", url: "https://github.com/SideStore/minimuxer/releases/download/build/minimuxer.xcframework.zip", - checksum: "aa47182547b60f4f7560bdc0f25ea797c69419765003d16d5039c13b87930ed1") + checksum: Consts.minimuxer_checksum) // MARK: MiniMuxer.Swift private static let miniMuxerSwiftTarget: TargetPair = ( diff --git a/SideStoreApp/Sources/Cargo/Commands/Version.swift b/SideStoreApp/Sources/Cargo/Commands/Version.swift index abf82250..5b7273ae 100644 --- a/SideStoreApp/Sources/Cargo/Commands/Version.swift +++ b/SideStoreApp/Sources/Cargo/Commands/Version.swift @@ -1,6 +1,9 @@ import ArgumentParser import SwiftLintFramework -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif extension Cargo { struct Version: ParsableCommand { diff --git a/SideStoreApp/Sources/Cargo/swiftlint/Commands/Version.swift b/SideStoreApp/Sources/Cargo/swiftlint/Commands/Version.swift index 6a8c45ee..187120fc 100644 --- a/SideStoreApp/Sources/Cargo/swiftlint/Commands/Version.swift +++ b/SideStoreApp/Sources/Cargo/swiftlint/Commands/Version.swift @@ -1,6 +1,9 @@ import ArgumentParser import SwiftLintFramework -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif extension SwiftLint { struct Version: ParsableCommand { diff --git a/SideStoreApp/Sources/MiniMuxer/MiniMuxer.swift b/SideStoreApp/Sources/MiniMuxer/MiniMuxer.swift index 6e0adc46..a262e949 100644 --- a/SideStoreApp/Sources/MiniMuxer/MiniMuxer.swift +++ b/SideStoreApp/Sources/MiniMuxer/MiniMuxer.swift @@ -6,7 +6,10 @@ // import Foundation -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif @_exported import minimuxer public enum Uhoh: Error { @@ -19,6 +22,7 @@ public func start_minimuxer(pairing_file: String) -> Int32 { let pf_pointer = UnsafeMutablePointer(mutating: pf.utf8String) let u = NSString(string: getDocumentsDirectory().absoluteString) let u_ptr = UnsafeMutablePointer(mutating: u.utf8String) + return minimuxer_c_start(pf_pointer, u_ptr) } diff --git a/SideStoreApp/Sources/SideBackup/AppDelegate.swift b/SideStoreApp/Sources/SideBackup/AppDelegate.swift index ef5b2ca8..169d06e5 100644 --- a/SideStoreApp/Sources/SideBackup/AppDelegate.swift +++ b/SideStoreApp/Sources/SideBackup/AppDelegate.swift @@ -7,7 +7,10 @@ // import UIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif extension AppDelegate { static let startBackupNotification = Notification.Name("io.altstore.StartBackup") diff --git a/SideStoreApp/Sources/SideBackup/BackupController.swift b/SideStoreApp/Sources/SideBackup/BackupController.swift index 36250abe..51f3e5a9 100644 --- a/SideStoreApp/Sources/SideBackup/BackupController.swift +++ b/SideStoreApp/Sources/SideBackup/BackupController.swift @@ -7,7 +7,10 @@ // import Foundation -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import AltSign import Roxas diff --git a/SideStoreApp/Sources/SideDaemon/DaemonRequestHandler.swift b/SideStoreApp/Sources/SideDaemon/DaemonRequestHandler.swift index 8c88fb32..0f868b7a 100644 --- a/SideStoreApp/Sources/SideDaemon/DaemonRequestHandler.swift +++ b/SideStoreApp/Sources/SideDaemon/DaemonRequestHandler.swift @@ -9,7 +9,10 @@ import Foundation import SideKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif typealias DaemonConnectionManager = ConnectionManager diff --git a/SideStoreApp/Sources/SideStore/AppDelegate.swift b/SideStoreApp/Sources/SideStore/AppDelegate.swift index c0991758..44069dc7 100644 --- a/SideStoreApp/Sources/SideStore/AppDelegate.swift +++ b/SideStoreApp/Sources/SideStore/AppDelegate.swift @@ -10,7 +10,10 @@ import AVFoundation import Intents import UIKit import UserNotifications -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import AltSign import SideStoreCore diff --git a/SideStoreApp/Sources/SideStore/Resources/AltBackup.ipa b/SideStoreApp/Sources/SideStore/Resources/AltBackup.ipa deleted file mode 100644 index 2bba63eb..00000000 Binary files a/SideStoreApp/Sources/SideStore/Resources/AltBackup.ipa and /dev/null differ diff --git a/SideStoreApp/Sources/SideStore/SceneDelegate.swift b/SideStoreApp/Sources/SideStore/SceneDelegate.swift index 506e4ae8..4ae26420 100644 --- a/SideStoreApp/Sources/SideStore/SceneDelegate.swift +++ b/SideStoreApp/Sources/SideStore/SceneDelegate.swift @@ -10,7 +10,10 @@ import SideStoreCore import EmotionalDamage import SideStoreAppKit import UIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif @available(iOS 13, *) final class SceneDelegate: UIResponder, UIWindowSceneDelegate { diff --git a/SideStoreApp/Sources/SideStoreCore/Connections/Connection.swift b/SideStoreApp/Sources/SideStoreCore/Connections/Connection.swift index f6e958a8..63bdf2e3 100644 --- a/SideStoreApp/Sources/SideStoreCore/Connections/Connection.swift +++ b/SideStoreApp/Sources/SideStoreCore/Connections/Connection.swift @@ -9,7 +9,10 @@ import Foundation import Network import SideKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif public protocol SideConnection: Connection { func __send(_ data: Data, completionHandler: @escaping (Bool, Error?) -> Void) diff --git a/SideStoreApp/Sources/SideStoreCore/Connections/ConnectionManager.swift b/SideStoreApp/Sources/SideStoreCore/Connections/ConnectionManager.swift index ae04c913..4d4dd39d 100644 --- a/SideStoreApp/Sources/SideStoreCore/Connections/ConnectionManager.swift +++ b/SideStoreApp/Sources/SideStoreCore/Connections/ConnectionManager.swift @@ -9,7 +9,10 @@ import Foundation import Network import SideKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif public protocol RequestHandler { func handleAnisetteDataRequest(_ request: AnisetteDataRequest, for connection: Connection, completionHandler: @escaping (Result) -> Void) diff --git a/SideStoreApp/Sources/SideStoreCore/Connections/XPCConnection.swift b/SideStoreApp/Sources/SideStoreCore/Connections/XPCConnection.swift index 064ec3ae..fc161802 100644 --- a/SideStoreApp/Sources/SideStoreCore/Connections/XPCConnection.swift +++ b/SideStoreApp/Sources/SideStoreCore/Connections/XPCConnection.swift @@ -8,7 +8,10 @@ import Foundation import SideKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif @objc private protocol XPCConnectionProxy { func ping(completionHandler: @escaping () -> Void) diff --git a/SideStoreApp/Sources/SideStoreCore/Extensions/UIColor+Hex.swift b/SideStoreApp/Sources/SideStoreCore/Extensions/UIColor+Hex.swift index 411661ba..af67593a 100644 --- a/SideStoreApp/Sources/SideStoreCore/Extensions/UIColor+Hex.swift +++ b/SideStoreApp/Sources/SideStoreCore/Extensions/UIColor+Hex.swift @@ -6,7 +6,8 @@ // Copyright © 2019 Riley Testut. All rights reserved. // -import UIKit +#if canImport(UIKit) +import UIKit.UIColor public extension UIColor { // Borrowed from https://stackoverflow.com/a/26341062 @@ -69,3 +70,4 @@ public extension UIColor { ) } } +#endif diff --git a/SideStoreApp/Sources/SideStoreCore/Model/AppPermission.swift b/SideStoreApp/Sources/SideStoreCore/Model/AppPermission.swift index ff5fffe1..0941276e 100644 --- a/SideStoreApp/Sources/SideStoreCore/Model/AppPermission.swift +++ b/SideStoreApp/Sources/SideStoreCore/Model/AppPermission.swift @@ -7,7 +7,6 @@ // import CoreData -import UIKit public extension ALTAppPermissionType { var localizedShortName: String? { @@ -41,30 +40,6 @@ public extension ALTAppPermissionType { default: return nil } } - - var icon: UIImage? { - switch self { - case .photos: return UIImage(systemName: "photo.on.rectangle.angled") - case .camera: return UIImage(systemName: "camera.fill") - case .location: return UIImage(systemName: "location.fill") - case .contacts: return UIImage(systemName: "person.2.fill") - case .reminders: return UIImage(systemName: "checklist") - case .appleMusic: return UIImage(systemName: "music.note") - case .microphone: return UIImage(systemName: "mic.fill") - case .speechRecognition: return UIImage(systemName: "waveform.and.mic") - case .backgroundAudio: return UIImage(systemName: "speaker.fill") - case .backgroundFetch: return UIImage(systemName: "square.and.arrow.down") - case .bluetooth: return UIImage(systemName: "wave.3.right") - case .network: return UIImage(systemName: "network") - case .calendars: return UIImage(systemName: "calendar") - case .touchID: return UIImage(systemName: "touchid") - case .faceID: return UIImage(systemName: "faceid") - case .siri: return UIImage(systemName: "mic.and.signal.meter.fill") - case .motion: return UIImage(systemName: "figure.walk.motion") - default: - return nil - } - } } @objc(AppPermission) diff --git a/SideStoreApp/Sources/SideStoreCore/Model/DatabaseManager.swift b/SideStoreApp/Sources/SideStoreCore/Model/DatabaseManager.swift index 4ba03811..8cfd6d80 100644 --- a/SideStoreApp/Sources/SideStoreCore/Model/DatabaseManager.swift +++ b/SideStoreApp/Sources/SideStoreCore/Model/DatabaseManager.swift @@ -10,7 +10,10 @@ import CoreData import AltSign import Roxas -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif private extension CFNotificationName { static let willAccessDatabase = CFNotificationName("com.rileytestut.AltStore.WillAccessDatabase" as CFString) diff --git a/SideStoreApp/Sources/SideStoreCore/Model/MergePolicy.swift b/SideStoreApp/Sources/SideStoreCore/Model/MergePolicy.swift index 6fb9eb6a..53633d13 100644 --- a/SideStoreApp/Sources/SideStoreCore/Model/MergePolicy.swift +++ b/SideStoreApp/Sources/SideStoreCore/Model/MergePolicy.swift @@ -9,7 +9,10 @@ import CoreData import Roxas -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif open class MergePolicy: RSTRelationshipPreservingMergePolicy { override open func resolve(constraintConflicts conflicts: [NSConstraintConflict]) throws { diff --git a/SideStoreApp/Sources/SideStoreCore/Model/NewsItem.swift b/SideStoreApp/Sources/SideStoreCore/Model/NewsItem.swift index d308715c..ce20a157 100644 --- a/SideStoreApp/Sources/SideStoreCore/Model/NewsItem.swift +++ b/SideStoreApp/Sources/SideStoreCore/Model/NewsItem.swift @@ -7,7 +7,15 @@ // import CoreData -import UIKit + +#if canImport(UIKit) +import class UIKit.UIColor +#elseif canImport(AppKit) +import class AppKit.NSColor +fileprivate typealias UIColor = NSColor +#else +#error ("Unsupported platform. Need to refactor UIColor/NSColor to extend support.") +#endif @objc(NewsItem) public class NewsItem: NSManagedObject, Decodable, Fetchable { diff --git a/SideStoreApp/Sources/SideStoreCore/Model/Source.swift b/SideStoreApp/Sources/SideStoreCore/Model/Source.swift index 35a70b89..0efba9bf 100644 --- a/SideStoreApp/Sources/SideStoreCore/Model/Source.swift +++ b/SideStoreApp/Sources/SideStoreCore/Model/Source.swift @@ -7,7 +7,7 @@ // import CoreData -import UIKit +import Foundation public extension Source { #if ALPHA diff --git a/SideStoreApp/Sources/SideStoreCore/Model/StoreApp.swift b/SideStoreApp/Sources/SideStoreCore/Model/StoreApp.swift index b7a4c498..439bca9d 100644 --- a/SideStoreApp/Sources/SideStoreCore/Model/StoreApp.swift +++ b/SideStoreApp/Sources/SideStoreCore/Model/StoreApp.swift @@ -8,8 +8,15 @@ import CoreData import Foundation -import class UIKit.UIColor +#if canImport(UIKit) +import class UIKit.UIColor +#elseif canImport(AppKit) +import class AppKit.NSColor +fileprivate typealias UIColor = NSColor +#else +#error ("Unsupported platform. Need to refactor UIColor/NSColor to extend support.") +#endif import Roxas public extension StoreApp { diff --git a/SideStoreApp/Sources/SideStoreCore/Patreon/PatreonAPI.swift b/SideStoreApp/Sources/SideStoreCore/Patreon/PatreonAPI.swift index a75167e7..da32b1fd 100644 --- a/SideStoreApp/Sources/SideStoreCore/Patreon/PatreonAPI.swift +++ b/SideStoreApp/Sources/SideStoreCore/Patreon/PatreonAPI.swift @@ -9,7 +9,10 @@ import AuthenticationServices import CoreData import Foundation -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif private let clientID = "ZMx0EGUWe4TVWYXNZZwK_fbIK5jHFVWoUf1Qb-sqNXmT-YzAGwDPxxq7ak3_W5Q2" private let clientSecret = "1hktsZB89QyN69cB4R0tu55R4TCPQGXxvebYUUh7Y-5TLSnRswuxs6OUjdJ74IJt" @@ -115,8 +118,9 @@ public extension PatreonAPI { } } - if #available(iOS 13.0, *) { - self.authenticationSession?.presentationContextProvider = self + if let provider = self as? ASWebAuthenticationPresentationContextProviding, + let authenticationSession = self.authenticationSession { + authenticationSession.presentationContextProvider = provider } authenticationSession?.start() @@ -359,10 +363,3 @@ private extension PatreonAPI { installedApps.forEach { $0.isActive = false } } } - -@available(iOS 13.0, *) -extension PatreonAPI: ASWebAuthenticationPresentationContextProviding { - public func presentationAnchor(for _: ASWebAuthenticationSession) -> ASPresentationAnchor { - UIApplication.alt_shared?.keyWindow ?? UIWindow() - } -} diff --git a/SideStoreApp/Sources/SideStoreAppKit/App Detail/AppContentViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/App Detail/AppContentViewController.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/App Detail/AppContentViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/App Detail/AppContentViewController.swift index e02ebe0c..937f707e 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/App Detail/AppContentViewController.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/App Detail/AppContentViewController.swift @@ -10,7 +10,10 @@ import UIKit import SideStoreCore import RoxasUIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import Nuke diff --git a/SideStoreApp/Sources/SideStoreAppKit/App Detail/AppContentViewControllerCells.swift b/SideStoreApp/Sources/SideStoreUIKit/App Detail/AppContentViewControllerCells.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/App Detail/AppContentViewControllerCells.swift rename to SideStoreApp/Sources/SideStoreUIKit/App Detail/AppContentViewControllerCells.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/App Detail/AppViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/App Detail/AppViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/App Detail/AppViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/App Detail/AppViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/App Detail/PermissionPopoverViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/App Detail/PermissionPopoverViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/App Detail/PermissionPopoverViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/App Detail/PermissionPopoverViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/App IDs/AppIDsViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/App IDs/AppIDsViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/App IDs/AppIDsViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/App IDs/AppIDsViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Authentication/AuthenticationViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Authentication/AuthenticationViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Authentication/AuthenticationViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Authentication/AuthenticationViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Authentication/InstructionsViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Authentication/InstructionsViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Authentication/InstructionsViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Authentication/InstructionsViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Authentication/RefreshAltStoreViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Authentication/RefreshAltStoreViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Authentication/RefreshAltStoreViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Authentication/RefreshAltStoreViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Authentication/SelectTeamViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Authentication/SelectTeamViewController.swift similarity index 97% rename from SideStoreApp/Sources/SideStoreAppKit/Authentication/SelectTeamViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Authentication/SelectTeamViewController.swift index dd455284..5650ddb7 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Authentication/SelectTeamViewController.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Authentication/SelectTeamViewController.swift @@ -11,7 +11,10 @@ import IntentsUI import MessageUI import SafariServices import UIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import AltSign diff --git a/SideStoreApp/Sources/SideStoreAppKit/Browse/BrowseCollectionViewCell.swift b/SideStoreApp/Sources/SideStoreUIKit/Browse/BrowseCollectionViewCell.swift similarity index 98% rename from SideStoreApp/Sources/SideStoreAppKit/Browse/BrowseCollectionViewCell.swift rename to SideStoreApp/Sources/SideStoreUIKit/Browse/BrowseCollectionViewCell.swift index ab16ad4b..c2ccf3d9 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Browse/BrowseCollectionViewCell.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Browse/BrowseCollectionViewCell.swift @@ -9,7 +9,10 @@ import UIKit import RoxasUIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import Nuke diff --git a/SideStoreApp/Sources/SideStoreAppKit/Browse/BrowseViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Browse/BrowseViewController.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Browse/BrowseViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Browse/BrowseViewController.swift index 2673ac95..3c95c64b 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Browse/BrowseViewController.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Browse/BrowseViewController.swift @@ -10,7 +10,10 @@ import UIKit import SideStoreCore import RoxasUIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import Nuke diff --git a/SideStoreApp/Sources/SideStoreAppKit/Browse/ScreenshotCollectionViewCell.swift b/SideStoreApp/Sources/SideStoreUIKit/Browse/ScreenshotCollectionViewCell.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Browse/ScreenshotCollectionViewCell.swift rename to SideStoreApp/Sources/SideStoreUIKit/Browse/ScreenshotCollectionViewCell.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/AppBannerView.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/AppBannerView.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/AppBannerView.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/AppBannerView.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/AppIconImageView.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/AppIconImageView.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/AppIconImageView.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/AppIconImageView.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/BackgroundTaskManager.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/BackgroundTaskManager.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/BackgroundTaskManager.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/BackgroundTaskManager.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/BannerCollectionViewCell.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/BannerCollectionViewCell.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/BannerCollectionViewCell.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/BannerCollectionViewCell.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/Button.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/Button.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/Button.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/Button.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/CollapsingTextView.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/CollapsingTextView.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/CollapsingTextView.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/CollapsingTextView.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/ForwardingNavigationController.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/ForwardingNavigationController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/ForwardingNavigationController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/ForwardingNavigationController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/NavigationBar.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/NavigationBar.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/NavigationBar.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/NavigationBar.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/PillButton.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/PillButton.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/PillButton.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/PillButton.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/TextCollectionReusableView.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/TextCollectionReusableView.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/TextCollectionReusableView.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/TextCollectionReusableView.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Components/ToastView.swift b/SideStoreApp/Sources/SideStoreUIKit/Components/ToastView.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Components/ToastView.swift rename to SideStoreApp/Sources/SideStoreUIKit/Components/ToastView.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Extensions/FileManager+DirectorySize.swift b/SideStoreApp/Sources/SideStoreUIKit/Extensions/FileManager+DirectorySize.swift similarity index 93% rename from SideStoreApp/Sources/SideStoreAppKit/Extensions/FileManager+DirectorySize.swift rename to SideStoreApp/Sources/SideStoreUIKit/Extensions/FileManager+DirectorySize.swift index 0cf3d09c..df224adc 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Extensions/FileManager+DirectorySize.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Extensions/FileManager+DirectorySize.swift @@ -7,7 +7,10 @@ // import Foundation -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif extension FileManager { func directorySize(at directoryURL: URL) -> Int? { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Extensions/INInteraction+AltStore.swift b/SideStoreApp/Sources/SideStoreUIKit/Extensions/INInteraction+AltStore.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Extensions/INInteraction+AltStore.swift rename to SideStoreApp/Sources/SideStoreUIKit/Extensions/INInteraction+AltStore.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Extensions/OSLog+SideStore.swift b/SideStoreApp/Sources/SideStoreUIKit/Extensions/OSLog+SideStore.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Extensions/OSLog+SideStore.swift rename to SideStoreApp/Sources/SideStoreUIKit/Extensions/OSLog+SideStore.swift diff --git a/SideStoreApp/Sources/SideStoreCore/Extensions/UIApplication+AppExtension.swift b/SideStoreApp/Sources/SideStoreUIKit/Extensions/UIApplication+AppExtension.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreCore/Extensions/UIApplication+AppExtension.swift rename to SideStoreApp/Sources/SideStoreUIKit/Extensions/UIApplication+AppExtension.swift diff --git a/SideStoreApp/Sources/SideStoreCore/Extensions/UIColor+AltStore.swift b/SideStoreApp/Sources/SideStoreUIKit/Extensions/UIColor+AltStore.swift similarity index 97% rename from SideStoreApp/Sources/SideStoreCore/Extensions/UIColor+AltStore.swift rename to SideStoreApp/Sources/SideStoreUIKit/Extensions/UIColor+AltStore.swift index b87d507d..0cd50385 100644 --- a/SideStoreApp/Sources/SideStoreCore/Extensions/UIColor+AltStore.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Extensions/UIColor+AltStore.swift @@ -7,6 +7,7 @@ // import UIKit +import SideStoreCore public extension UIColor { private static let colorBundle = Bundle(for: DatabaseManager.self) diff --git a/SideStoreApp/Sources/SideStoreAppKit/Extensions/UIDevice+Jailbreak.swift b/SideStoreApp/Sources/SideStoreUIKit/Extensions/UIDevice+Jailbreak.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Extensions/UIDevice+Jailbreak.swift rename to SideStoreApp/Sources/SideStoreUIKit/Extensions/UIDevice+Jailbreak.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Extensions/UIDevice+Vibration.swift b/SideStoreApp/Sources/SideStoreUIKit/Extensions/UIDevice+Vibration.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Extensions/UIDevice+Vibration.swift rename to SideStoreApp/Sources/SideStoreUIKit/Extensions/UIDevice+Vibration.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Extensions/UIScreen+CompactHeight.swift b/SideStoreApp/Sources/SideStoreUIKit/Extensions/UIScreen+CompactHeight.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Extensions/UIScreen+CompactHeight.swift rename to SideStoreApp/Sources/SideStoreUIKit/Extensions/UIScreen+CompactHeight.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Managing Apps/AppManager.swift b/SideStoreApp/Sources/SideStoreUIKit/Managing Apps/AppManager.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Managing Apps/AppManager.swift rename to SideStoreApp/Sources/SideStoreUIKit/Managing Apps/AppManager.swift index f1333171..a29a095e 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Managing Apps/AppManager.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Managing Apps/AppManager.swift @@ -19,7 +19,10 @@ import AltSign import SideKit import SideStoreCore import RoxasUIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif public extension AppManager { static let didFetchSourceNotification = Notification.Name("io.altstore.AppManager.didFetchSource") diff --git a/SideStoreApp/Sources/SideStoreAppKit/Managing Apps/AppManagerErrors.swift b/SideStoreApp/Sources/SideStoreUIKit/Managing Apps/AppManagerErrors.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Managing Apps/AppManagerErrors.swift rename to SideStoreApp/Sources/SideStoreUIKit/Managing Apps/AppManagerErrors.swift diff --git a/SideStoreApp/Sources/SideStoreUIKit/Model/AppPermission+UIKIt.swift b/SideStoreApp/Sources/SideStoreUIKit/Model/AppPermission+UIKIt.swift new file mode 100644 index 00000000..9319f11a --- /dev/null +++ b/SideStoreApp/Sources/SideStoreUIKit/Model/AppPermission+UIKIt.swift @@ -0,0 +1,38 @@ +// +// AppPermission+UIKit.swift +// AltStore +// +// Created by Riley Testut on 7/23/19. +// Copyright © 2019 Riley Testut. All rights reserved. +// + +import CoreData +import SideStoreCore +import UIKit + +// ALTAppPermissionType UIKit Extensions +public extension ALTAppPermissionType { + var icon: UIImage? { + switch self { + case .photos: return UIImage(systemName: "photo.on.rectangle.angled") + case .camera: return UIImage(systemName: "camera.fill") + case .location: return UIImage(systemName: "location.fill") + case .contacts: return UIImage(systemName: "person.2.fill") + case .reminders: return UIImage(systemName: "checklist") + case .appleMusic: return UIImage(systemName: "music.note") + case .microphone: return UIImage(systemName: "mic.fill") + case .speechRecognition: return UIImage(systemName: "waveform.and.mic") + case .backgroundAudio: return UIImage(systemName: "speaker.fill") + case .backgroundFetch: return UIImage(systemName: "square.and.arrow.down") + case .bluetooth: return UIImage(systemName: "wave.3.right") + case .network: return UIImage(systemName: "network") + case .calendars: return UIImage(systemName: "calendar") + case .touchID: return UIImage(systemName: "touchid") + case .faceID: return UIImage(systemName: "faceid") + case .siri: return UIImage(systemName: "mic.and.signal.meter.fill") + case .motion: return UIImage(systemName: "figure.walk.motion") + default: + return nil + } + } +} diff --git a/SideStoreApp/Sources/SideStoreAppKit/My Apps/InstalledAppsCollectionHeaderView.swift b/SideStoreApp/Sources/SideStoreUIKit/My Apps/InstalledAppsCollectionHeaderView.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/My Apps/InstalledAppsCollectionHeaderView.swift rename to SideStoreApp/Sources/SideStoreUIKit/My Apps/InstalledAppsCollectionHeaderView.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/My Apps/MyAppsComponents.swift b/SideStoreApp/Sources/SideStoreUIKit/My Apps/MyAppsComponents.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/My Apps/MyAppsComponents.swift rename to SideStoreApp/Sources/SideStoreUIKit/My Apps/MyAppsComponents.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/My Apps/MyAppsViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/My Apps/MyAppsViewController.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/My Apps/MyAppsViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/My Apps/MyAppsViewController.swift index bc6cf379..604095de 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/My Apps/MyAppsViewController.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/My Apps/MyAppsViewController.swift @@ -14,7 +14,10 @@ import UIKit import AltSign import SideStoreCore import RoxasUIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import Nuke diff --git a/SideStoreApp/Sources/SideStoreAppKit/My Apps/UpdateCollectionViewCell.swift b/SideStoreApp/Sources/SideStoreUIKit/My Apps/UpdateCollectionViewCell.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/My Apps/UpdateCollectionViewCell.swift rename to SideStoreApp/Sources/SideStoreUIKit/My Apps/UpdateCollectionViewCell.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/News/NewsCollectionViewCell.swift b/SideStoreApp/Sources/SideStoreUIKit/News/NewsCollectionViewCell.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/News/NewsCollectionViewCell.swift rename to SideStoreApp/Sources/SideStoreUIKit/News/NewsCollectionViewCell.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/News/NewsViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/News/NewsViewController.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/News/NewsViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/News/NewsViewController.swift index e8690f10..82122bc0 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/News/NewsViewController.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/News/NewsViewController.swift @@ -13,7 +13,10 @@ import SideStoreCore import RoxasUIKit import Nuke -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif private final class AppBannerFooterView: UICollectionReusableView { let bannerView = AppBannerView(frame: .zero) diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/Patch App/PatchViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Operations/PatchAppOperation/PatchViewController.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/Patch App/PatchViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Operations/PatchAppOperation/PatchViewController.swift index 8975f628..9da3108b 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/Patch App/PatchViewController.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Operations/PatchAppOperation/PatchViewController.swift @@ -12,7 +12,11 @@ import UIKit import AltSign import SideStoreCore import RoxasUIKit -import os.log +import SideUIShared +import OSLog +#if canImport(Logging) +import Logging +#endif @available(iOS 14.0, *) extension PatchViewController { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/Error Log/ErrorLogTableViewCell.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/Error Log/ErrorLogTableViewCell.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/Error Log/ErrorLogTableViewCell.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/Error Log/ErrorLogTableViewCell.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/Error Log/ErrorLogViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/Error Log/ErrorLogViewController.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/Error Log/ErrorLogViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/Error Log/ErrorLogViewController.swift index a4cc3f0b..00b4e41d 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Settings/Error Log/ErrorLogViewController.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Settings/Error Log/ErrorLogViewController.swift @@ -14,7 +14,10 @@ import RoxasUIKit import SideKit import Nuke import QuickLook -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif final class ErrorLogViewController: UITableViewController { private lazy var dataSource = self.makeDataSource() diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/InsetGroupTableViewCell.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/InsetGroupTableViewCell.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/InsetGroupTableViewCell.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/InsetGroupTableViewCell.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/LicensesViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/LicensesViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/LicensesViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/LicensesViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/PatreonComponents.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/PatreonComponents.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/PatreonComponents.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/PatreonComponents.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/PatreonViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/PatreonViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/PatreonViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/PatreonViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/RefreshAttemptsViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/RefreshAttemptsViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/RefreshAttemptsViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/RefreshAttemptsViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/SettingsHeaderFooterView.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/SettingsHeaderFooterView.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/SettingsHeaderFooterView.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/SettingsHeaderFooterView.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/SettingsViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Settings/SettingsViewController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/SettingsViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Settings/SettingsViewController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/SideStoreAppDelegate.swift b/SideStoreApp/Sources/SideStoreUIKit/SideStoreAppDelegate.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/SideStoreAppDelegate.swift rename to SideStoreApp/Sources/SideStoreUIKit/SideStoreAppDelegate.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Sources/SourcesViewController.swift b/SideStoreApp/Sources/SideStoreUIKit/Sources/SourcesViewController.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Sources/SourcesViewController.swift rename to SideStoreApp/Sources/SideStoreUIKit/Sources/SourcesViewController.swift index cfc79723..9b7ce67b 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Sources/SourcesViewController.swift +++ b/SideStoreApp/Sources/SideStoreUIKit/Sources/SourcesViewController.swift @@ -11,7 +11,10 @@ import UIKit import SideStoreCore import RoxasUIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif struct SourceError: LocalizedError { enum Code { diff --git a/SideStoreApp/Sources/SideStoreAppKit/TabBarController.swift b/SideStoreApp/Sources/SideStoreUIKit/TabBarController.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/TabBarController.swift rename to SideStoreApp/Sources/SideStoreUIKit/TabBarController.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Types/ScreenshotProcessor.swift b/SideStoreApp/Sources/SideStoreUIKit/Types/ScreenshotProcessor.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Types/ScreenshotProcessor.swift rename to SideStoreApp/Sources/SideStoreUIKit/Types/ScreenshotProcessor.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/ALTApplication+AltStoreApp.swift b/SideStoreApp/Sources/SideUIShared/ALTApplication+AltStoreApp.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/ALTApplication+AltStoreApp.swift rename to SideStoreApp/Sources/SideUIShared/ALTApplication+AltStoreApp.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Analytics/AnalyticsManager.swift b/SideStoreApp/Sources/SideUIShared/Analytics/AnalyticsManager.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Analytics/AnalyticsManager.swift rename to SideStoreApp/Sources/SideUIShared/Analytics/AnalyticsManager.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/IntentHandler.swift b/SideStoreApp/Sources/SideUIShared/Authentication/Intents/IntentHandler.swift similarity index 98% rename from SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/IntentHandler.swift rename to SideStoreApp/Sources/SideUIShared/Authentication/Intents/IntentHandler.swift index e030953a..d030bf89 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/IntentHandler.swift +++ b/SideStoreApp/Sources/SideUIShared/Authentication/Intents/IntentHandler.swift @@ -9,7 +9,10 @@ import Foundation import SideStoreCore import Intents -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif @available(iOS 14, *) public final class IntentHandler: NSObject, RefreshAllIntentHandling { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/Intents.intentdefinition b/SideStoreApp/Sources/SideUIShared/Authentication/Intents/Intents.intentdefinition similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/Intents.intentdefinition rename to SideStoreApp/Sources/SideUIShared/Authentication/Intents/Intents.intentdefinition diff --git a/SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/ViewApp.intentdefinition b/SideStoreApp/Sources/SideUIShared/Authentication/Intents/ViewApp.intentdefinition similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/ViewApp.intentdefinition rename to SideStoreApp/Sources/SideUIShared/Authentication/Intents/ViewApp.intentdefinition diff --git a/SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/ViewAppIntentHandler.swift b/SideStoreApp/Sources/SideUIShared/Authentication/Intents/ViewAppIntentHandler.swift similarity index 95% rename from SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/ViewAppIntentHandler.swift rename to SideStoreApp/Sources/SideUIShared/Authentication/Intents/ViewAppIntentHandler.swift index 280c1809..e0d5cfc9 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Authentication/Intents/ViewAppIntentHandler.swift +++ b/SideStoreApp/Sources/SideUIShared/Authentication/Intents/ViewAppIntentHandler.swift @@ -8,7 +8,10 @@ import Intents import SideStoreCore -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif @available(iOS 14, *) public class ViewAppIntentHandler: NSObject, ViewAppIntentHandling { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Consts/Consts+Proxy.swift b/SideStoreApp/Sources/SideUIShared/Consts/Consts+Proxy.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Consts/Consts+Proxy.swift rename to SideStoreApp/Sources/SideUIShared/Consts/Consts+Proxy.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Consts/Consts.swift b/SideStoreApp/Sources/SideUIShared/Consts/Consts.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Consts/Consts.swift rename to SideStoreApp/Sources/SideUIShared/Consts/Consts.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/AuthenticationOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/AuthenticationOperation.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/AuthenticationOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/AuthenticationOperation.swift index c8174912..10653168 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/AuthenticationOperation.swift +++ b/SideStoreApp/Sources/SideUIShared/Operations/AuthenticationOperation.swift @@ -9,7 +9,10 @@ import Foundation import Network import RoxasUIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import AltSign import SideStoreCore diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/BackgroundRefreshAppsOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/BackgroundRefreshAppsOperation.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/BackgroundRefreshAppsOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/BackgroundRefreshAppsOperation.swift index c6d3ae2d..0d0ef1d1 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/BackgroundRefreshAppsOperation.swift +++ b/SideStoreApp/Sources/SideUIShared/Operations/BackgroundRefreshAppsOperation.swift @@ -8,7 +8,10 @@ import CoreData import UIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import SideStoreCore import EmotionalDamage diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/BackupAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/BackupAppOperation.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/BackupAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/BackupAppOperation.swift index b5296dd8..b34128a9 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/BackupAppOperation.swift +++ b/SideStoreApp/Sources/SideUIShared/Operations/BackupAppOperation.swift @@ -10,7 +10,10 @@ import Foundation import AltSign import SideStoreCore -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif extension BackupAppOperation { enum Action: String { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/DeactivateAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/DeactivateAppOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/DeactivateAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/DeactivateAppOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/DownloadAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/DownloadAppOperation.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/DownloadAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/DownloadAppOperation.swift index 4acb6b96..b3e529f7 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/DownloadAppOperation.swift +++ b/SideStoreApp/Sources/SideUIShared/Operations/DownloadAppOperation.swift @@ -13,7 +13,10 @@ import AltSign import SideKit import SideStoreCore -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif private extension DownloadAppOperation { struct DependencyError: ALTLocalizedError { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/EnableJITOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/EnableJITOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/EnableJITOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/EnableJITOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/FetchAnisetteDataOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/FetchAnisetteDataOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/FetchAnisetteDataOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/FetchAnisetteDataOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/FetchAppIDsOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/FetchAppIDsOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/FetchAppIDsOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/FetchAppIDsOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/FetchProvisioningProfilesOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/FetchProvisioningProfilesOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/FetchProvisioningProfilesOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/FetchProvisioningProfilesOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/FetchSourceOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/FetchSourceOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/FetchSourceOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/FetchSourceOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/FetchTrustedSourcesOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/FetchTrustedSourcesOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/FetchTrustedSourcesOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/FetchTrustedSourcesOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/InstallAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/InstallAppOperation.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/InstallAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/InstallAppOperation.swift index 8e3fdab9..286ec994 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/InstallAppOperation.swift +++ b/SideStoreApp/Sources/SideUIShared/Operations/InstallAppOperation.swift @@ -13,7 +13,10 @@ import SideStoreCore import RoxasUIKit import MiniMuxer import minimuxer -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif @objc(InstallAppOperation) final class InstallAppOperation: ResultOperation { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/Operation.swift b/SideStoreApp/Sources/SideUIShared/Operations/Operation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/Operation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/Operation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/OperationContexts.swift b/SideStoreApp/Sources/SideUIShared/Operations/OperationContexts.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/OperationContexts.swift rename to SideStoreApp/Sources/SideUIShared/Operations/OperationContexts.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/OperationError.swift b/SideStoreApp/Sources/SideUIShared/Operations/OperationError.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/OperationError.swift rename to SideStoreApp/Sources/SideUIShared/Operations/OperationError.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/Patch App/PatchAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/Patch App/PatchAppOperation.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/Patch App/PatchAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/Patch App/PatchAppOperation.swift index ebb19052..c2caa8c4 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/Patch App/PatchAppOperation.swift +++ b/SideStoreApp/Sources/SideUIShared/Operations/Patch App/PatchAppOperation.swift @@ -16,6 +16,8 @@ import AltSign import SideStoreCore import RoxasUIKit +import iMobileDevice + @available(iOS 14, *) protocol PatchAppContext { var bundleIdentifier: String { get } diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/RefreshAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/RefreshAppOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/RefreshAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/RefreshAppOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/RefreshGroup.swift b/SideStoreApp/Sources/SideUIShared/Operations/RefreshGroup.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/RefreshGroup.swift rename to SideStoreApp/Sources/SideUIShared/Operations/RefreshGroup.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/RemoveAppBackupOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/RemoveAppBackupOperation.swift similarity index 97% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/RemoveAppBackupOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/RemoveAppBackupOperation.swift index 2024477f..299a6d62 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/RemoveAppBackupOperation.swift +++ b/SideStoreApp/Sources/SideUIShared/Operations/RemoveAppBackupOperation.swift @@ -7,7 +7,10 @@ // import Foundation -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif @objc(RemoveAppBackupOperation) final class RemoveAppBackupOperation: ResultOperation { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/RemoveAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/RemoveAppOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/RemoveAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/RemoveAppOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/ResignAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/ResignAppOperation.swift similarity index 99% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/ResignAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/ResignAppOperation.swift index efdf50f5..b9c9014d 100644 --- a/SideStoreApp/Sources/SideStoreAppKit/Operations/ResignAppOperation.swift +++ b/SideStoreApp/Sources/SideUIShared/Operations/ResignAppOperation.swift @@ -11,7 +11,10 @@ import RoxasUIKit import AltSign import SideStoreCore -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif @objc(ResignAppOperation) final class ResignAppOperation: ResultOperation { diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/SendAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/SendAppOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/SendAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/SendAppOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/UpdatePatronsOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/UpdatePatronsOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/UpdatePatronsOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/UpdatePatronsOperation.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Operations/VerifyAppOperation.swift b/SideStoreApp/Sources/SideUIShared/Operations/VerifyAppOperation.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Operations/VerifyAppOperation.swift rename to SideStoreApp/Sources/SideUIShared/Operations/VerifyAppOperation.swift diff --git a/SideStoreApp/Sources/SideUIShared/Patreon/PatreonAPI+UIApplication.swift b/SideStoreApp/Sources/SideUIShared/Patreon/PatreonAPI+UIApplication.swift new file mode 100644 index 00000000..422e23a0 --- /dev/null +++ b/SideStoreApp/Sources/SideUIShared/Patreon/PatreonAPI+UIApplication.swift @@ -0,0 +1,19 @@ +// +// PatreonAPI+UIApplication.swift +// AltStore +// +// Created by Riley Testut on 8/20/19. +// Copyright © 2019 Riley Testut. All rights reserved. +// + +import AuthenticationServices +import CoreData +import Foundation +import SideStoreCore + +@available(iOS 13.0, *) +extension PatreonAPI: ASWebAuthenticationPresentationContextProviding { + public func presentationAnchor(for _: ASWebAuthenticationSession) -> ASPresentationAnchor { + UIApplication.alt_shared?.keyWindow ?? UIWindow() + } +} diff --git a/SideStoreApp/Sources/SideStoreAppKit/Settings/AnisetteManager.swift b/SideStoreApp/Sources/SideUIShared/Settings/AnisetteManager.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Settings/AnisetteManager.swift rename to SideStoreApp/Sources/SideUIShared/Settings/AnisetteManager.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Types/LoadingState.swift b/SideStoreApp/Sources/SideUIShared/Types/LoadingState.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Types/LoadingState.swift rename to SideStoreApp/Sources/SideUIShared/Types/LoadingState.swift diff --git a/SideStoreApp/Sources/SideStoreAppKit/Types/Managed.swift b/SideStoreApp/Sources/SideUIShared/Types/Managed.swift similarity index 100% rename from SideStoreApp/Sources/SideStoreAppKit/Types/Managed.swift rename to SideStoreApp/Sources/SideUIShared/Types/Managed.swift diff --git a/SideStoreApp/Sources/SideWidgetKit/SideWidget.swift b/SideStoreApp/Sources/SideWidgetKit/SideWidget.swift index 7067e190..d4257418 100644 --- a/SideStoreApp/Sources/SideWidgetKit/SideWidget.swift +++ b/SideStoreApp/Sources/SideWidgetKit/SideWidget.swift @@ -15,7 +15,10 @@ import AltSign import SideStoreCore import Roxas import RoxasUIKit -import os.log +import OSLog +#if canImport(Logging) +import Logging +#endif import class SideStoreAppKit.ViewAppIntent