//
// CornerRadius+.swift
// SqoopDesignSystem
//
// Created by 김민준 on 11/8/24.
//
import SwiftUI
extension View {
/// 특정 부분 CornerRadius 적용을 위한 Extension 메서드입니다.
public func cornerRadius(_ radius: CGFloat, corners: UIRectCorner) -> some View {
clipShape(RoundedCorner(radius: radius, corners: corners))
}
}
/// 특정 부분 CornerRadius 적용을 위한 Shape
struct RoundedCorner: Shape {
public var radius: CGFloat = .infinity
public var corners: UIRectCorner = .allCorners
public init(radius: CGFloat, corners: UIRectCorner) {
self.radius = radius
self.corners = corners
}
public func path(in rect: CGRect) -> Path {
let path = UIBezierPath(
roundedRect: rect,
byRoundingCorners: corners,
cornerRadii: CGSize(width: radius, height: radius)
)
return Path(path.cgPath)
}
}