david-swift 21bfb23a74
Some checks failed
SwiftLint / SwiftLint (push) Waiting to run
Deploy Docs / publish (push) Has been cancelled
Update card style
2025-01-05 11:59:17 +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(0.3),
in: .rect(cornerRadius: 10)
)
}
}