// // PreviewProvider.swift // honeyDueQLPreview // // Created by Trey Tartt on 12/6/25. // import QuickLook class PreviewProvider: QLPreviewProvider, QLPreviewingController { /* Use a QLPreviewProvider to provide data-based previews. To set up your extension as a data-based preview extension: - Modify the extension's Info.plist by setting QLIsDataBasedPreview - Add the supported content types to QLSupportedContentTypes array in the extension's Info.plist. - Remove NSExtensionMainStoryboard MainInterface and replace it by setting the NSExtensionPrincipalClass to this class, e.g. NSExtensionPrincipalClass $(PRODUCT_MODULE_NAME).PreviewProvider - Implement providePreview(for:) */ func providePreview(for request: QLFilePreviewRequest) async throws -> QLPreviewReply { //You can create a QLPreviewReply in several ways, depending on the format of the data you want to return. //To return Data of a supported content type: let contentType = UTType.plainText // replace with your data type let reply = QLPreviewReply.init(dataOfContentType: contentType, contentSize: CGSize.init(width: 800, height: 800)) { (replyToUpdate : QLPreviewReply) in let data = Data("Hello world".utf8) //setting the stringEncoding for text and html data is optional and defaults to String.Encoding.utf8 replyToUpdate.stringEncoding = .utf8 //initialize your data here return data } return reply } }