How to combine multiple property wrappers to update a SwiftUI View?