From 0ecb95d7c84d58d0a84fcdaa56ef868e3a21b7e3 Mon Sep 17 00:00:00 2001 From: Brendan Szymanski Date: Sun, 14 Jun 2026 16:22:24 -0400 Subject: [PATCH] Remove old DI files from LuminateCore, add import LuminateDI to consumers --- Sources/Luminate/Luminate.swift | 1 + Sources/LuminateCore/DIContainer.swift | 33 ---------------------- Sources/LuminateCore/Injected.swift | 16 ----------- Sources/LuminateCore/InjectionValues.swift | 13 --------- Sources/LuminateHome/HomePosterCell.swift | 1 + Sources/LuminateHome/HomeView.swift | 1 + 6 files changed, 3 insertions(+), 62 deletions(-) delete mode 100644 Sources/LuminateCore/DIContainer.swift delete mode 100644 Sources/LuminateCore/Injected.swift delete mode 100644 Sources/LuminateCore/InjectionValues.swift diff --git a/Sources/Luminate/Luminate.swift b/Sources/Luminate/Luminate.swift index b6699c3..0d72822 100644 --- a/Sources/Luminate/Luminate.swift +++ b/Sources/Luminate/Luminate.swift @@ -1,6 +1,7 @@ import Adwaita import Foundation import LuminateCore +import LuminateDI import LuminateHome import LuminateLibrary import LuminatePlayer diff --git a/Sources/LuminateCore/DIContainer.swift b/Sources/LuminateCore/DIContainer.swift deleted file mode 100644 index 4eb2b0d..0000000 --- a/Sources/LuminateCore/DIContainer.swift +++ /dev/null @@ -1,33 +0,0 @@ -import Foundation - -public final class DIContainer { - - public static let shared = DIContainer() - public private(set) var values = InjectionValues() - - private init() {} - - public func register( - _ keyPath: WritableKeyPath, - value: T - ) { - values[keyPath: keyPath] = value - } - - public func resolve( - _ keyPath: KeyPath - ) -> T { - guard let value = values[keyPath: keyPath] else { - fatalError( - "DIContainer: No value registered for \(keyPath). " - + "Call DIContainer.shared.register(\\.key, value:) during app startup." - ) - } - return value - } - - public func reset() { - values = InjectionValues() - } - -} diff --git a/Sources/LuminateCore/Injected.swift b/Sources/LuminateCore/Injected.swift deleted file mode 100644 index a1a2b37..0000000 --- a/Sources/LuminateCore/Injected.swift +++ /dev/null @@ -1,16 +0,0 @@ -import Foundation - -@propertyWrapper -public struct Injected { - - private let keyPath: KeyPath - - public var wrappedValue: T { - DIContainer.shared.resolve(keyPath) - } - - public init(_ keyPath: KeyPath) { - self.keyPath = keyPath - } - -} diff --git a/Sources/LuminateCore/InjectionValues.swift b/Sources/LuminateCore/InjectionValues.swift deleted file mode 100644 index b00f6be..0000000 --- a/Sources/LuminateCore/InjectionValues.swift +++ /dev/null @@ -1,13 +0,0 @@ -import Foundation - -public struct InjectionValues { - - public var client: JellyfinClient? - public var userId: String? - public var imageService: ImageService? - public var webSocketClient: WebSocketClient? - public var persistence: PersistenceService? - - public init() {} - -} diff --git a/Sources/LuminateHome/HomePosterCell.swift b/Sources/LuminateHome/HomePosterCell.swift index ce7d26b..f82e257 100644 --- a/Sources/LuminateHome/HomePosterCell.swift +++ b/Sources/LuminateHome/HomePosterCell.swift @@ -1,6 +1,7 @@ import Adwaita import Foundation import LuminateCore +import LuminateDI struct HomePosterCell: View { diff --git a/Sources/LuminateHome/HomeView.swift b/Sources/LuminateHome/HomeView.swift index 2adb91b..c9fd137 100644 --- a/Sources/LuminateHome/HomeView.swift +++ b/Sources/LuminateHome/HomeView.swift @@ -1,5 +1,6 @@ import Adwaita import LuminateCore +import LuminateDI public struct HomeView: View {