metube/ui
Helmut 39a8948976 feat(ui): add iOS Web Share button next to download link
Adds a share button to the completed-list action row that hands the
downloaded file off to the platform share sheet via navigator.share().
On iOS Safari/Chrome this surfaces the native Save-to-Photos / Save-to-
Files / AirDrop options for videos and images, and Files / 3rd-party
app targets for audio. On platforms without Web Share support (Desktop
Firefox/Chrome/Safari) the button hides itself; the existing download
link remains the universal fallback.

Implementation notes:
- canShareDownloads() requires both navigator.share AND navigator.canShare
  (Desktop Safari has the former without the latter; we always intend
  to share a file, not a URL)
- shareDownload() fetches the file via the existing buildDownloadLink()
  helper, wraps it in a File, then runs canShare() before share() so we
  can bail out cleanly on platforms that reject the MIME type
- AbortError (user dismisses sheet) is silenced; other errors logged
- Tooltip on the button explains the iOS behaviour briefly

Refs alexta69/metube#582 — addresses the 'add to Photos.app' request
without depending on the iOS Shortcut, which has had reliability issues
(cf #763).
2026-05-28 07:34:13 +02:00
..
src feat(ui): add iOS Web Share button next to download link 2026-05-28 07:34:13 +02:00
.editorconfig upgrade dependencies (migrate to Angular 10) 2021-02-02 21:09:28 +02:00
angular.json code review fixes 2026-03-15 20:53:13 +02:00
eslint.config.js feat(frontend): modernize Angular app 2025-12-15 01:56:47 +01:00
ngsw-config.json exclude index.html from service worker 2024-12-08 18:24:40 +06:00
package.json upgrade dependencies 2026-04-21 16:20:39 +03:00
pnpm-lock.yaml upgrade dependencies 2026-04-21 16:20:39 +03:00
pnpm-workspace.yaml fix pnpm build 2026-04-12 23:07:22 +03:00
tsconfig.app.json feat(frontend): modernize Angular app 2025-12-15 01:56:47 +01:00
tsconfig.json feat(frontend): modernize Angular app 2025-12-15 01:56:47 +01:00
tsconfig.spec.json feat(frontend): modernize Angular app 2025-12-15 01:56:47 +01:00