import AppIntents import Foundation import Shared import SwiftUI import WidgetKit @available(iOS 18, *) struct ControlOpenEntity: ControlWidget { var body: some ControlWidgetConfiguration { AppIntentControlConfiguration( kind: WidgetsKind.controlOpenEntity.rawValue, provider: ControlOpenEntityValueProvider() ) { template in ControlWidgetButton(action: { let intent = OpenEntityAppIntent() intent.entity = template.entity return intent }()) { // ControlWidget can only display SF Symbol Label(template.displayText ?? template.entity.displayString, systemImage: template.icon.id) } } .displayName(.init(stringLiteral: L10n.Widgets.OpenEntity.title)) } }