diff --git a/Sources/BSWInterfaceKit/Extensions/Localizable.swift b/Sources/BSWInterfaceKit/Shared/Extensions/Localizable.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/Localizable.swift rename to Sources/BSWInterfaceKit/Shared/Extensions/Localizable.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIColor+Utilities.swift b/Sources/BSWInterfaceKit/Shared/Extensions/UIColor+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIColor+Utilities.swift rename to Sources/BSWInterfaceKit/Shared/Extensions/UIColor+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/iOSAppOnMac.swift b/Sources/BSWInterfaceKit/Shared/Extensions/iOSAppOnMac.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/iOSAppOnMac.swift rename to Sources/BSWInterfaceKit/Shared/Extensions/iOSAppOnMac.swift diff --git a/Sources/BSWInterfaceKit/Model/Photo.swift b/Sources/BSWInterfaceKit/Shared/Model/Photo.swift similarity index 100% rename from Sources/BSWInterfaceKit/Model/Photo.swift rename to Sources/BSWInterfaceKit/Shared/Model/Photo.swift diff --git a/Sources/BSWInterfaceKit/SwiftUI/Actors/PagingHandler.swift b/Sources/BSWInterfaceKit/SwiftUI/Actors/PagingHandler.swift index 449dbb1c..d64bcc96 100644 --- a/Sources/BSWInterfaceKit/SwiftUI/Actors/PagingHandler.swift +++ b/Sources/BSWInterfaceKit/SwiftUI/Actors/PagingHandler.swift @@ -82,6 +82,7 @@ private class PagingHandlerPreviewViewModel { Use `loadMoreContent()` to fetch the next page, and `getState()`/`getItems()` to read the results from outside the actor. */ + // SKIP @nobridge public actor PagingHandler { @@ -153,9 +154,11 @@ public actor PagingHandler { } } - /// - Returns: A pre-filled mock instance of `PagingHandler`. (Not for production) public static func mock() -> PagingHandler { - let handler = PagingHandler(initialPage: 0, fetchPage: { _ in .empty }) + let handler = PagingHandler( + initialPage: 0, + fetchPage: { _ in .empty } + ) Task { await handler.setNoMorePages() } return handler } diff --git a/Sources/BSWInterfaceKit/SwiftUI/DataSource/InfiniteScrollingDataSource.swift b/Sources/BSWInterfaceKit/SwiftUI/DataSource/InfiniteScrollingDataSource.swift index bb868ce1..e7197327 100644 --- a/Sources/BSWInterfaceKit/SwiftUI/DataSource/InfiniteScrollingDataSource.swift +++ b/Sources/BSWInterfaceKit/SwiftUI/DataSource/InfiniteScrollingDataSource.swift @@ -72,7 +72,7 @@ open class InfiniteScrollingDataSource { try await loadMoreContent() } -#if os(iOS) + #if os(iOS) /// Use at your own peril public var unsafeItemsBinding: Binding<[ListItem]> { .init(get: { @@ -81,7 +81,7 @@ open class InfiniteScrollingDataSource { self.items = newItems }) } -#endif + #endif /// MARK: Private @@ -114,12 +114,12 @@ open class InfiniteScrollingDataSource { } private func performAnimatedMutation(_ mutation: () -> Void) { -#if os(Android) + #if os(Android) mutation() -#else + #else withAnimation { mutation() } -#endif + #endif } } diff --git a/Sources/BSWInterfaceKit/SwiftUI/Extensions/SwiftUI+AlwaysPopover.swift b/Sources/BSWInterfaceKit/SwiftUI/Extensions/SwiftUI+AlwaysPopover.swift deleted file mode 100644 index 8ea93406..00000000 --- a/Sources/BSWInterfaceKit/SwiftUI/Extensions/SwiftUI+AlwaysPopover.swift +++ /dev/null @@ -1,45 +0,0 @@ -#if canImport(Darwin) -import SwiftUI - -#Preview { - ContentView(items: [ - .init( - id: 0, - systemImageName: "person.circle", - description: "Description" - ) - ]) -} - -struct ContentView: View { - - struct Item: Identifiable { - let id: Int - let systemImageName: String - let description: String - } - var items: [Item] - - @State - var presentingDetailsOfItem: Item? - - var body: some View { - HStack { - ForEach(items, id: \.id) { item in - Button { - presentingDetailsOfItem = item - } label: { - Image(systemName: item.systemImageName) - } - .popover(item: $presentingDetailsOfItem) { item in - Text(item.description) - .lineLimit(nil) - .multilineTextAlignment(.center) - .padding() - .presentationCompactAdaptation(.popover) - } - } - } - } -} -#endif diff --git a/Sources/BSWInterfaceKit/SwiftUI/Extensions/SwiftUI+View.swift b/Sources/BSWInterfaceKit/SwiftUI/Extensions/View+Utilities.swift similarity index 78% rename from Sources/BSWInterfaceKit/SwiftUI/Extensions/SwiftUI+View.swift rename to Sources/BSWInterfaceKit/SwiftUI/Extensions/View+Utilities.swift index 7dfab5cc..bb632128 100644 --- a/Sources/BSWInterfaceKit/SwiftUI/Extensions/SwiftUI+View.swift +++ b/Sources/BSWInterfaceKit/SwiftUI/Extensions/View+Utilities.swift @@ -1,3 +1,8 @@ +// +// Created by Michele Restuccia on 25/2/26. +// + +import SwiftUI #if os(Android) import SkipFuseUI @@ -19,6 +24,20 @@ public extension SwiftUI.View { #endif +public extension View { + + /// Expands the hit-testing area of a `Button` to the full view on iOS. + /// Not required on Android, where the default behavior already covers the whole view. + @ViewBuilder + func contentRectangleShape() -> some View { + #if canImport(Darwin) + self.contentShape(Rectangle()) + #else + self + #endif + } +} + public extension View { func errorAlert(error: Binding) -> some View { modifier(ErrorAwareView(errorBinding: error)) diff --git a/Sources/BSWInterfaceKit/SwiftUI/Extensions/View+ViewBuilders.swift b/Sources/BSWInterfaceKit/SwiftUI/Extensions/View+ViewBuilders.swift deleted file mode 100644 index d6c1c68d..00000000 --- a/Sources/BSWInterfaceKit/SwiftUI/Extensions/View+ViewBuilders.swift +++ /dev/null @@ -1,19 +0,0 @@ -// -// Created by Michele Restuccia on 25/2/26. -// - -import SwiftUI - -public extension View { - - /// Expands the hit-testing area of a `Button` to the full view on iOS. - /// Not required on Android, where the default behavior already covers the whole view. - @ViewBuilder - func contentRectangleShape() -> some View { - #if canImport(Darwin) - self.contentShape(Rectangle()) - #else - self - #endif - } -} diff --git a/Sources/BSWInterfaceKit/InAppNotifications/SwiftUI_InAppNotifications.swift b/Sources/BSWInterfaceKit/SwiftUI/Views/ToastView.swift similarity index 100% rename from Sources/BSWInterfaceKit/InAppNotifications/SwiftUI_InAppNotifications.swift rename to Sources/BSWInterfaceKit/SwiftUI/Views/ToastView.swift diff --git a/Sources/BSWInterfaceKit/Behaviour/MailComposerBehaviour.swift b/Sources/BSWInterfaceKit/UIKit/Behaviour/MailComposerBehaviour.swift similarity index 100% rename from Sources/BSWInterfaceKit/Behaviour/MailComposerBehaviour.swift rename to Sources/BSWInterfaceKit/UIKit/Behaviour/MailComposerBehaviour.swift diff --git a/Sources/BSWInterfaceKit/Behaviour/MediaPickerBehavior.swift b/Sources/BSWInterfaceKit/UIKit/Behaviour/MediaPickerBehavior.swift similarity index 100% rename from Sources/BSWInterfaceKit/Behaviour/MediaPickerBehavior.swift rename to Sources/BSWInterfaceKit/UIKit/Behaviour/MediaPickerBehavior.swift diff --git a/Sources/BSWInterfaceKit/Behaviour/UpdatePageControlOnScrollBehavior.swift b/Sources/BSWInterfaceKit/UIKit/Behaviour/UpdatePageControlOnScrollBehavior.swift similarity index 100% rename from Sources/BSWInterfaceKit/Behaviour/UpdatePageControlOnScrollBehavior.swift rename to Sources/BSWInterfaceKit/UIKit/Behaviour/UpdatePageControlOnScrollBehavior.swift diff --git a/Sources/BSWInterfaceKit/Cells/InfiniteLoadingCollectionViewCell.swift b/Sources/BSWInterfaceKit/UIKit/Cells/InfiniteLoadingCollectionViewCell.swift similarity index 100% rename from Sources/BSWInterfaceKit/Cells/InfiniteLoadingCollectionViewCell.swift rename to Sources/BSWInterfaceKit/UIKit/Cells/InfiniteLoadingCollectionViewCell.swift diff --git a/Sources/BSWInterfaceKit/Cells/PhotoCollectionViewCell.swift b/Sources/BSWInterfaceKit/UIKit/Cells/PhotoCollectionViewCell.swift similarity index 100% rename from Sources/BSWInterfaceKit/Cells/PhotoCollectionViewCell.swift rename to Sources/BSWInterfaceKit/UIKit/Cells/PhotoCollectionViewCell.swift diff --git a/Sources/BSWInterfaceKit/CollectionViewLayout/HorizontalPagedCollectionViewLayout.swift b/Sources/BSWInterfaceKit/UIKit/CollectionViewLayout/HorizontalPagedCollectionViewLayout.swift similarity index 100% rename from Sources/BSWInterfaceKit/CollectionViewLayout/HorizontalPagedCollectionViewLayout.swift rename to Sources/BSWInterfaceKit/UIKit/CollectionViewLayout/HorizontalPagedCollectionViewLayout.swift diff --git a/Sources/BSWInterfaceKit/DataSource/CollectionViewDiffableDataSource.swift b/Sources/BSWInterfaceKit/UIKit/DataSource/CollectionViewDiffableDataSource.swift similarity index 100% rename from Sources/BSWInterfaceKit/DataSource/CollectionViewDiffableDataSource.swift rename to Sources/BSWInterfaceKit/UIKit/DataSource/CollectionViewDiffableDataSource.swift diff --git a/Sources/BSWInterfaceKit/DataSource/PagingCollectionViewDataSource.swift b/Sources/BSWInterfaceKit/UIKit/DataSource/PagingCollectionViewDataSource.swift similarity index 100% rename from Sources/BSWInterfaceKit/DataSource/PagingCollectionViewDataSource.swift rename to Sources/BSWInterfaceKit/UIKit/DataSource/PagingCollectionViewDataSource.swift diff --git a/Sources/BSWInterfaceKit/DataSource/SelectableTableViewDataSource.swift b/Sources/BSWInterfaceKit/UIKit/DataSource/SelectableTableViewDataSource.swift similarity index 100% rename from Sources/BSWInterfaceKit/DataSource/SelectableTableViewDataSource.swift rename to Sources/BSWInterfaceKit/UIKit/DataSource/SelectableTableViewDataSource.swift diff --git a/Sources/BSWInterfaceKit/Extensions/Keyboard+LayoutGuide.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/Keyboard+LayoutGuide.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/Keyboard+LayoutGuide.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/Keyboard+LayoutGuide.swift diff --git a/Sources/BSWInterfaceKit/Extensions/NSAttributedStrings+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/NSAttributedStrings+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/NSAttributedStrings+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/NSAttributedStrings+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIActivityIndicatorViewStyle.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIActivityIndicatorViewStyle.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIActivityIndicatorViewStyle.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIActivityIndicatorViewStyle.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIButton+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIButton+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIButton+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIButton+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UICollectionView+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UICollectionView+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UICollectionView+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UICollectionView+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UICollectionViewCell+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UICollectionViewCell+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UICollectionViewCell+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UICollectionViewCell+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIContentView+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIContentView+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIContentView+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIContentView+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIEdgeInsets+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIEdgeInsets+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIEdgeInsets+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIEdgeInsets+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIFont+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIFont+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIFont+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIFont+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIImage+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIImage+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIImage+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIImage+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIImageView+Download.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIImageView+Download.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIImageView+Download.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIImageView+Download.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIImageView+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIImageView+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIImageView+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIImageView+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UILabel+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UILabel+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UILabel+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UILabel+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIResponder.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIResponder.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIResponder.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIResponder.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIScreen+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIScreen+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIScreen+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIScreen+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIStackView+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIStackView+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIStackView+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIStackView+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UITableView+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UITableView+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UITableView+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UITableView+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UITextField+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UITextField+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UITextField+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UITextField+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIView+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIView+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIView+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIView+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIViewController+FetchData.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIViewController+FetchData.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIViewController+FetchData.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIViewController+FetchData.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIViewController+States.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIViewController+States.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIViewController+States.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIViewController+States.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIViewController+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIViewController+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIViewController+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIViewController+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Extensions/UIWindow+Utilities.swift b/Sources/BSWInterfaceKit/UIKit/Extensions/UIWindow+Utilities.swift similarity index 100% rename from Sources/BSWInterfaceKit/Extensions/UIWindow+Utilities.swift rename to Sources/BSWInterfaceKit/UIKit/Extensions/UIWindow+Utilities.swift diff --git a/Sources/BSWInterfaceKit/Operations/PresentAlertOperation.swift b/Sources/BSWInterfaceKit/UIKit/Operations/PresentAlertOperation.swift similarity index 100% rename from Sources/BSWInterfaceKit/Operations/PresentAlertOperation.swift rename to Sources/BSWInterfaceKit/UIKit/Operations/PresentAlertOperation.swift diff --git a/Sources/BSWInterfaceKit/Protocols/IntrinsicSizeCalculable.swift b/Sources/BSWInterfaceKit/UIKit/Protocols/IntrinsicSizeCalculable.swift similarity index 100% rename from Sources/BSWInterfaceKit/Protocols/IntrinsicSizeCalculable.swift rename to Sources/BSWInterfaceKit/UIKit/Protocols/IntrinsicSizeCalculable.swift diff --git a/Sources/BSWInterfaceKit/Protocols/ViewModel.swift b/Sources/BSWInterfaceKit/UIKit/Protocols/ViewModel.swift similarity index 100% rename from Sources/BSWInterfaceKit/Protocols/ViewModel.swift rename to Sources/BSWInterfaceKit/UIKit/Protocols/ViewModel.swift diff --git a/Sources/BSWInterfaceKit/Social/SocialAuthentication+Facebook.swift b/Sources/BSWInterfaceKit/UIKit/Social/SocialAuthentication+Facebook.swift similarity index 100% rename from Sources/BSWInterfaceKit/Social/SocialAuthentication+Facebook.swift rename to Sources/BSWInterfaceKit/UIKit/Social/SocialAuthentication+Facebook.swift diff --git a/Sources/BSWInterfaceKit/Social/SocialAuthentication.swift b/Sources/BSWInterfaceKit/UIKit/Social/SocialAuthentication.swift similarity index 100% rename from Sources/BSWInterfaceKit/Social/SocialAuthentication.swift rename to Sources/BSWInterfaceKit/UIKit/Social/SocialAuthentication.swift diff --git a/Sources/BSWInterfaceKit/Stylesheet/TextStyler.swift b/Sources/BSWInterfaceKit/UIKit/Stylesheet/TextStyler.swift similarity index 100% rename from Sources/BSWInterfaceKit/Stylesheet/TextStyler.swift rename to Sources/BSWInterfaceKit/UIKit/Stylesheet/TextStyler.swift diff --git a/Sources/BSWInterfaceKit/ViewControllers/BottomContainerViewController.swift b/Sources/BSWInterfaceKit/UIKit/UIViewControllers/BottomContainerViewController.swift similarity index 100% rename from Sources/BSWInterfaceKit/ViewControllers/BottomContainerViewController.swift rename to Sources/BSWInterfaceKit/UIKit/UIViewControllers/BottomContainerViewController.swift diff --git a/Sources/BSWInterfaceKit/ViewControllers/ContainerViewController.swift b/Sources/BSWInterfaceKit/UIKit/UIViewControllers/ContainerViewController.swift similarity index 100% rename from Sources/BSWInterfaceKit/ViewControllers/ContainerViewController.swift rename to Sources/BSWInterfaceKit/UIKit/UIViewControllers/ContainerViewController.swift diff --git a/Sources/BSWInterfaceKit/ViewControllers/PhotoGalleryViewController.swift b/Sources/BSWInterfaceKit/UIKit/UIViewControllers/PhotoGalleryViewController.swift similarity index 100% rename from Sources/BSWInterfaceKit/ViewControllers/PhotoGalleryViewController.swift rename to Sources/BSWInterfaceKit/UIKit/UIViewControllers/PhotoGalleryViewController.swift diff --git a/Sources/BSWInterfaceKit/ViewControllers/Presentations/CardPresentation.swift b/Sources/BSWInterfaceKit/UIKit/UIViewControllers/Presentations/CardPresentation.swift similarity index 100% rename from Sources/BSWInterfaceKit/ViewControllers/Presentations/CardPresentation.swift rename to Sources/BSWInterfaceKit/UIKit/UIViewControllers/Presentations/CardPresentation.swift diff --git a/Sources/BSWInterfaceKit/ViewControllers/Presentations/MarqueePresentation.swift b/Sources/BSWInterfaceKit/UIKit/UIViewControllers/Presentations/MarqueePresentation.swift similarity index 100% rename from Sources/BSWInterfaceKit/ViewControllers/Presentations/MarqueePresentation.swift rename to Sources/BSWInterfaceKit/UIKit/UIViewControllers/Presentations/MarqueePresentation.swift diff --git a/Sources/BSWInterfaceKit/ViewControllers/TextFieldAlertController.swift b/Sources/BSWInterfaceKit/UIKit/UIViewControllers/TextFieldAlertController.swift similarity index 100% rename from Sources/BSWInterfaceKit/ViewControllers/TextFieldAlertController.swift rename to Sources/BSWInterfaceKit/UIKit/UIViewControllers/TextFieldAlertController.swift diff --git a/Sources/BSWInterfaceKit/Views/AvatarView.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/AvatarView.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/AvatarView.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/AvatarView.swift diff --git a/Sources/BSWInterfaceKit/Views/CheckboxButton.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/CheckboxButton.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/CheckboxButton.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/CheckboxButton.swift diff --git a/Sources/BSWInterfaceKit/Views/ErrorView.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/ErrorView.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/ErrorView.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/ErrorView.swift diff --git a/Sources/BSWInterfaceKit/InAppNotifications/UIKit_InAppNotifications.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/InAppNotificationView.swift similarity index 100% rename from Sources/BSWInterfaceKit/InAppNotifications/UIKit_InAppNotifications.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/InAppNotificationView.swift diff --git a/Sources/BSWInterfaceKit/Views/LinkAwareLabel.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/LinkAwareLabel.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/LinkAwareLabel.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/LinkAwareLabel.swift diff --git a/Sources/BSWInterfaceKit/Views/LoadingView.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/LoadingView.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/LoadingView.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/LoadingView.swift diff --git a/Sources/BSWInterfaceKit/Views/PhotoGalleryView.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/PhotoGalleryView.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/PhotoGalleryView.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/PhotoGalleryView.swift diff --git a/Sources/BSWInterfaceKit/Views/PresentationBackgroundView.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/PresentationBackgroundView.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/PresentationBackgroundView.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/PresentationBackgroundView.swift diff --git a/Sources/BSWInterfaceKit/Views/RangeSlider.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/RangeSlider.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/RangeSlider.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/RangeSlider.swift diff --git a/Sources/BSWInterfaceKit/Views/RoundLayer.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/RoundLayer.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/RoundLayer.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/RoundLayer.swift diff --git a/Sources/BSWInterfaceKit/Views/StackViews/ScrollableStackView.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/ScrollableStackView.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/StackViews/ScrollableStackView.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/ScrollableStackView.swift diff --git a/Sources/BSWInterfaceKit/Views/SeparatorView.swift b/Sources/BSWInterfaceKit/UIKit/UIViews/SeparatorView.swift similarity index 100% rename from Sources/BSWInterfaceKit/Views/SeparatorView.swift rename to Sources/BSWInterfaceKit/UIKit/UIViews/SeparatorView.swift