🕸 A Web Share API dá acesso ao fluxo nativo de compartilhamento da plataforma em que sua aplicação web está sendo executada — o mesmo “share sheet” que apps nativos usam.

await navigator.share({
  title: "...",
  url: "...",
  text: "...",
});

✅ Antes de chamar navigator.share(), você pode usar navigator.canShare() para validar se o conteúdo (incluindo arquivos) é suportado:

if (navigator.canShare && navigator.canShare({ files: [arquivo] })) {
  await navigator.share({ files: [arquivo], title: "..." });
}

✨ O suporte hoje é bom em Chrome (Android e ChromeOS), Edge, Safari (iOS e macOS). Firefox ainda não suporta — confira o status no Can I Use. Para fallback, vale ter um botão tradicional de compartilhamento em redes sociais ou a biblioteca share-api-polyfill.

⚠️ Lembre-se: navigator.share() precisa ser chamado a partir de uma interação do usuário (click, tap), caso contrário o browser bloqueia a chamada.

LoFM.