david-swift f28e425f71
All checks were successful
Deploy Docs / publish (push) Successful in 4m0s
SwiftLint / SwiftLint (push) Successful in 4s
Update card style
2025-01-05 12:02:06 +01:00

57 lines
1.2 KiB
Swift

//
// Card.swift
// MacBackend
//
// Created by david-swift on 05.01.2025.
//
import SwiftUI
/// The card wrapper.
public struct Card: SwiftUIWidget {
/// The wrapped view.
var content: Body
/// The wrapped views.
public var wrappedViews: [String: Meta.AnyView] {
[.mainContent: content]
}
/// Initialize a card view.
/// - Parameter content: The card's content.
public init(@Meta.ViewBuilder content: () -> Body) {
self.content = content()
}
/// Get the SwiftUI view.
/// - Parameter properties: The widget data.
/// - Returns: The SwiftUI view.
public static func view(properties: Self) -> some SwiftUI.View {
CardView()
}
}
/// The card view in SwiftUI.
struct CardView: SwiftUI.View {
/// The color scheme.
@SwiftUI.Environment(\.colorScheme)
var colorScheme
/// The view's body.
var body: some SwiftUI.View {
MacBackendView(.mainContent)
.padding(20)
.background(
Color(
colorScheme == .dark ? NSColor.darkGray : NSColor.lightGray
)
.opacity(colorScheme == .dark ? 0.3 : 0.1),
in: .rect(cornerRadius: 10)
)
}
}