sindresorhus / Defaults

💾 Swifty and modern UserDefaults
https://swiftpackageindex.com/sindresorhus/Defaults/documentation/defaults
MIT License
1.97k stars 117 forks source link

Add support for SwiftUI `Color` #84

Closed hank121314 closed 2 years ago

hank121314 commented 2 years ago

Summary

Fixes: #78. Create a ColorBridge to support the serialization for SwiftUI Color. Color will serialize into Data with NSColor(in iOS UIColor) bridge.

Usage

extension Defaults.Keys {
    static let color = Key<Color>("swiftui_color", default: .black)
}

struct Example: View {
    @Default(.color) var color

    var body: some View {
      ColorPicker("", selection: $color, supportsOpacity: false)
    }
}

Thanks for your code review 😄 !

hank121314 commented 2 years ago

// @L1cardo Could you help me to test this PR to make sure it fits your requirement? Thanks!

L1cardo commented 2 years ago

// @L1cardo Could you help me to test this PR to make sure it fits your requirement? Thanks!

Yeah, sure! I will let you know when I am done.

L1cardo commented 2 years ago

@hank121314 Works perfect in my case!!!