Files
virtual-controller/remote-client-ios/remote-client-ios/Core/Models/PresetLoadToRemoteDevice.swift
T
Paul Lipscomb 7a74cfa75e iOS remote client: native UIKit surface, WS logging, client-side layout persistence
- Add remote-client-ios: full native UIKit app with Objects/View/UILayout/Functions pattern
- Widget hierarchy: BaseWidget → Fader, Toggle, Transport, Title, Feedback, LogWidget
- LoggingVC: child VC embedded in LogWidget for live WS message inspection
- Codable model: ModelPresetLoadToRemoteDevice with snake_case decoder strategy
- Layout persistence: UserDefaults keyed by preset_uuid, fully client-side
- WS logging: dedicated WS In/Out floating panels on desktop app
- Remove HTTP server and JS client (replaced by native iOS app)
- Add Xcode noise to .gitignore (xcuserstate, xcuserdata)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-01 00:02:10 -04:00

37 lines
750 B
Swift

import Foundation
struct ModelPresetLoadToRemoteDevice: Codable {
let presetUuid: String
let presetName: String
let bigTitle: String
let faders: [ModelFaderPayload]
let toggles: [ModelTogglePayload]
let transports: [ModelTransportPayload]
var displayTitle: String {
bigTitle.isEmpty ? "No Title" : bigTitle
}
}
struct ModelFaderPayload: Codable {
let uid: String
let label: String
let value: Int
let visible: Bool
let color: String
}
struct ModelTogglePayload: Codable {
let uid: String
let label: String
let state: Bool
let visible: Bool
let color: String
}
struct ModelTransportPayload: Codable {
let uid: String
let label: String
let visible: Bool
}