Laravel Filament's Media Library plugin use Livewire's upload file javascript to send your file to your cloud disk.

When using Cloudflare R2, you will probably get a CORS error and the upload will get canceled.

In your R2 bucket settings, make sure you update the CORS settings like this :

[
  {
    "AllowedOrigins": [
      "https://yourdomain.com"
    ],
    "AllowedMethods": [
      "GET",
      "POST",
      "PUT"
    ],
    "AllowedHeaders": [
      "*"
    ]
  }
]

Save and retry :)