attachment_engine_macos 0.0.1-dev.0 copy "attachment_engine_macos: ^0.0.1-dev.0" to clipboard
attachment_engine_macos: ^0.0.1-dev.0 copied to clipboard

The macOS implementation of attachment_engine. Full-parity native Swift implementation — PDF (PDFKit), audio/video (AVFoundation/AVKit), webview (WKWebView), share, open-externally, office preview (Qu [...]

attachment_engine_macos #

The macOS implementation of attachment_engine, backed entirely by native Swift code — no third-party plugin dependencies.

Status #

Full feature parity with iOS/Android, native (see macos/attachment_engine_macos/Sources/attachment_engine_macos/). Every request/response call goes through a pigeon-generated HostApi protocol (schema: attachment_engine_platform_interface/pigeons/messages.dart, generated bindings: Messages.g.swift); audio/video/download events stay on hand-written FlutterEventChannels, noted per-row below:

  • PDF — PDFKit (PDFDocument, PDFPage.thumbnail), via PdfHostApi
  • Audio — AVFoundation (AVAudioPlayer for local files, AVPlayer for streaming URLs); control via AudioHostApi, playback events via a hand-written per-player FlutterEventChannel
  • Video — AVKit (AVPlayerLayer), embedded via a FlutterPlatformViewFactory — surfaced to Dart through AppKitView; control via VideoHostApi, playback events via a hand-written per-player FlutterEventChannel
  • WebViewWKWebView, embedded the same way
  • PathsNSSearchPathForDirectoriesInDomains, via PathsHostApi
  • ShareNSSharingServicePicker (AppKit's native share sheet), via ShareHostApi
  • Open externallyNSWorkspace.open(_:), via OpenHostApi
  • Office previewQLPreviewPanel (QuickLook; doc/docx/xls/xlsx/ppt/ pptx/rtf and more, ships with every macOS install), via OfficeHostApi
  • DownloadURLSession/URLSessionDownloadTask, with resume-data support; start/resume/cancel via DownloadHostApi, progress events via a hand-written shared FlutterEventChannel

Registers as a Swift Package (Package.swift) — Flutter reports All plugins found for macos are Swift Packages. A .podspec is kept alongside it for CocoaPods-only consumers, per Flutter's dual-support requirement during the SPM migration window.

You should not need to depend on this package directly — add attachment_engine to your app instead, and the right platform implementation is selected automatically.

0
likes
0
points
116
downloads

Publisher

unverified uploader

Weekly Downloads

The macOS implementation of attachment_engine. Full-parity native Swift implementation — PDF (PDFKit), audio/video (AVFoundation/AVKit), webview (WKWebView), share, open-externally, office preview (QuickLook), paths, and download — zero third-party plugin dependencies. Request/response calls go through Pigeon-generated HostApi protocols; audio/video/download event streams stay on hand-written EventChannels.

Repository (GitHub)
View/report issues

Topics

#attachment #macos

License

unknown (license)

Dependencies

attachment_engine_platform_interface, flutter

More

Packages that depend on attachment_engine_macos

Packages that implement attachment_engine_macos