hyper_render_clipboard 1.3.3
hyper_render_clipboard: ^1.3.3 copied to clipboard
Image clipboard support for HyperRender using super_clipboard. Enables copying, saving, and sharing images.
Changelog โ hyper_render_clipboard #
1.3.2 - 2026-05-19 #
๐ Security โ Path Traversal #
saveImageBytes(filename:)andshareImageBytes(filename:)now sanitise the caller-supplied filename._getFilenameFromUrlalready stripped URL-decoded path separators (%2Fโ/), but a malicious app dev who passedfilename: '../../etc/passwd.png'through to the public API would still escape the storage directory. Every code path that lands inFile('${dir.path}/$name')now runs through a single_sanitiseFilenamehelper that replaces/and\with_. Self-supplied filenames remain untouched in spirit (extensions, dots, dashes preserved).
๐งช Tests #
- +8 tests added in
filename_safety_test: URL-encoded slash, URL-encoded backslash, plain filename pass-through, extensionless URL fallback, caller-supplied traversal payloads (../../etc/passwd.png, Windows backslash variants), safe filename round-trip, mixed separator handling.
1.3.1 - 2026-05-14 #
๐๏ธ Packaging #
- Opt-in add-on:
hyper_render_clipboardis no longer bundled with the roothyper_renderpackage. Add it explicitly to yourpubspec.yamlif you useSuperClipboardHandler. This removes thecompileSdk = 34requirement from defaulthyper_renderusers.
1.3.0 - 2026-05-03 #
โจ New Features #
share_plus: ^10.0.0: Upgraded from^7.2.0โ resolvesmimeversion conflict with newer Flutter projects- Image copy:
SuperClipboardHandler.copyImage()supports PNG byte data viasuper_clipboard - Image share:
SuperClipboardHandler.shareImage()viashare_plus
๐ Bug Fixes #
- Race condition: Copy operation now guards against concurrent calls with a lock flag โ prevents duplicate clipboard writes
- Static analysis: Replaced deprecated
Share.shareXFiles()withSharePlus.instance.share()โ 0 analyzer issues - Directory convention: Renamed
docs/โdoc/(pub.dev singular directory convention)
1.2.0 - 2026-03-30 #
- Initial release: image clipboard and share support for HyperRender selections