import SwiftUI

public struct SystemShareSheet: UIViewControllerRepresentable {
    var items: [any Transferable]

    public init(items: [any Transferable]) {
        self.items = items
    }

    public init(item: any Transferable) {
        self.items = [item]
    }

    public func makeUIViewController(context _: Context) -> UIActivityViewController {
        UIActivityViewController(activityItems: items, applicationActivities: nil)
    }

    public func updateUIViewController(_: UIActivityViewController, context _: Context) {}
}
