// // UIView.swift // VDS // // Created by Matt Bruce on 11/17/22. // import Foundation import UIKit import VDSFormControlsTokens extension UIView { public func constraint(with identifier: String) -> NSLayoutConstraint? { return constraints.first { $0.identifier == identifier } } } extension NSLayoutConstraint { @discardableResult /// Activates yourself /// - Returns: Self public func activate() -> Self{ isActive = true return self } @discardableResult /// Deactivates yourself /// - Returns: Self public func deactivate() -> Self{ isActive = false return self } /// Helper class that holds onto all types of Contraints. public class Container { public var topConstraint: NSLayoutConstraint? public var leadingConstraint: NSLayoutConstraint? public var trailingConstraint: NSLayoutConstraint? public var bottomConstraint: NSLayoutConstraint? public var widthConstraint: NSLayoutConstraint? public var heightConstraint: NSLayoutConstraint? public var isActive: Bool = false { didSet { topConstraint?.isActive = isActive bottomConstraint?.isActive = isActive leadingConstraint?.isActive = isActive trailingConstraint?.isActive = isActive heightConstraint?.isActive = isActive widthConstraint?.isActive = isActive } } public init(){} } }