24 lines
629 B
Swift
24 lines
629 B
Swift
//
|
|
// ViewConditionalMethod.swift
|
|
// Jel
|
|
//
|
|
// Created by zerocool on 12/25/23.
|
|
//
|
|
|
|
import SwiftUI
|
|
|
|
extension View {
|
|
/// Applies the given transform if the given condition evaluates to `true`.
|
|
/// - Parameters:
|
|
/// - condition: The condition to evaluate.
|
|
/// - transform: The transform to apply to the source `View`.
|
|
/// - Returns: Either the original `View` or the modified `View` if the condition is `true`.
|
|
@ViewBuilder func `if`<Content: View>(_ condition: @autoclosure () -> Bool, transform: (Self) -> Content) -> some View {
|
|
if condition() {
|
|
transform(self)
|
|
} else {
|
|
self
|
|
}
|
|
}
|
|
}
|