import SwiftUI
import Observation

import MLX
import MLXNN
import MLXOptimizers

@Observable class ApplicationData {
   var logs: String = ""
   var training: Bool = false

   @ObservationIgnored var model: SimpleNetwork!
   @ObservationIgnored var inputs: MLXArray!
   @ObservationIgnored var targets: MLXArray!

   static let shared: ApplicationData = ApplicationData()
   private init() {
      model = SimpleNetwork(inputDim: 1, hiddenDim: 1, outputDim: 1)
      inputs = MLXArray([50])
      targets = MLXArray([15])
   }
}