vds_ios/VDS/Utilities/DropShadowConfiguration.swift
Matt Bruce c00a849b11 added public to all dropshadow and fixed bug in not setting layer background color
Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
2024-04-19 09:35:20 -05:00

35 lines
1.5 KiB
Swift

//
// DropShadowConfiguration.swift
// VDS
//
// Created by Bandaru, Krishna Kishore on 05/03/24.
//
import Foundation
import CoreGraphics
/**
DropShadowConfiguration confirms to DropShadowable where it has configurable properties required for drop shadow
*/
final public class DropShadowConfiguration: DropShadowable, ObjectWithable {
public typealias CGFloatConfigurationValue = SurfaceConfigurationValue<CGFloat>
public typealias CGSizeConfigurationValue = SurfaceConfigurationValue<CGSize>
///Shadow Color configuration for light and dark surfaces
public var shadowColorConfiguration: AnyColorable
///Shadow Opacity configuration for light and dark surfaces
public var shadowOpacityConfiguration: CGFloatConfigurationValue
///Shadow Offset configuration for light and dark surfaces
public var shadowOffsetConfiguration: CGSizeConfigurationValue
///Shadow Radius configuration for light and dark surfaces
public var shadowRadiusConfiguration: CGFloatConfigurationValue
public init(shadowColorConfiguration: AnyColorable = SurfaceColorConfiguration().eraseToAnyColorable(), shadowOpacity: CGFloatConfigurationValue = .init(1.0, 1.0), shadowOffset: CGSizeConfigurationValue = .init(.zero, .zero), shadowRadius: CGFloatConfigurationValue = .init(1.0, 1.0)) {
self.shadowColorConfiguration = shadowColorConfiguration
self.shadowOpacityConfiguration = shadowOpacity
self.shadowOffsetConfiguration = shadowOffset
self.shadowRadiusConfiguration = shadowRadius
}
}