# Extras

- `ContainerCollectionViewCell`

  A container `UICollectionViewCell` that constraints its contained view to its margins.

  See more

  #### Declaration

  Swift

      public final class ContainerCollectionViewCell<CustomView> : UICollectionViewCell where CustomView : UIView

- `ContainerCollectionViewCellDelegate`

  A delegate of `ContainerCollectionViewCell`/`ContainerCollectionReusableView` should implement this methods if it is required to participate in containers lifecycle.

  See more

  #### Declaration

  Swift

      public protocol ContainerCollectionViewCellDelegate : AnyObject

- `ContainerCollectionReusableView`

  A container `UICollectionReusableView` that constraints its contained view to its margins.

  See more

  #### Declaration

  Swift

      public final class ContainerCollectionReusableView<CustomView> : UICollectionReusableView where CustomView : UIView

- `MessageContainerView`

  A container view that helps to layout the message view and its accessory

  See more

  #### Declaration

  Swift

      public final class MessageContainerView<AccessoryViewFactory, MainView> : UIView where AccessoryViewFactory : StaticViewFactory, MainView : UIView

- `CellLayoutContainerView`

  `CellLayoutContainerView` is a container view that helps to arrange the views in a horizontal cell-alike layout with an optional `LeadingAccessory` first, a `CustomView` next and am optional `TrailingAccessory` last. Use `VoidViewFactory` to specify that `LeadingAccessory` or `TrailingAccessory` views should not be allocated.

  See more

  #### Declaration

  Swift

      public final class CellLayoutContainerView<LeadingAccessory, CustomView, TrailingAccessory> : UIView where LeadingAccessory : StaticViewFactory, CustomView : UIView, TrailingAccessory : StaticViewFactory

- `CellLayoutContainerViewAlignment`

  Alignment for `CellLayoutContainerView` that corresponds to `UIStackView.Alignment`

  See more

  #### Declaration

  Swift

      public enum CellLayoutContainerViewAlignment

- `EdgeAligningView`

  Container view that allows its `CustomView` to have lose connection to the margins of the container according to the settings provided in `EdgeAligningView.flexibleEdges`

  See more

  #### Declaration

  Swift

      public final class EdgeAligningView<CustomView> : UIView where CustomView : UIView

- `SwappingContainerView`

  This container view is designed to hold two `UIView` elements and arrange them in a horizontal or vertical axis. It also allows to easily change the order of the views if needed.

  See more

  #### Declaration

  Swift

      public final class SwappingContainerView<CustomView, AccessoryView> : UIView where CustomView : UIView, AccessoryView : UIView

- `ImageMaskedView`

  A container view that masks its contained view with an image provided.

  See more

  #### Declaration

  Swift

      public final class ImageMaskedView<CustomView> : UIView where CustomView : UIView

- `ImageMaskedViewTransformation`

  A transformation to apply to the `ImageMaskedView.maskingImage`

  See more

  #### Declaration

  Swift

      public enum ImageMaskedViewTransformation

- `RoundedCornersContainerView`

  A container view that keeps its `CustomView` masked with the corner radius provided.

  See more

  #### Declaration

  Swift

      public final class RoundedCornersContainerView<CustomView> : UIView where CustomView : UIView

- `StaticViewFactory`

  A factory that creates optional contained `UIView`s should conform to this protocol.

  See more

  #### Declaration

  Swift

      public protocol StaticViewFactory

- `VoidViewFactory`

  Use this factory to specify that this view should not be build and should be equal to nil within the container.

  See more

  #### Declaration

  Swift

      public struct VoidViewFactory : StaticViewFactory