Composer arrastar e soltar com uploader customizado

Isso é exatamente o que a recente Otimização de imagens no lado do cliente ativada por padrão faz. Você pode ver o hook aqui:

https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/initializers/register-media-optimization-upload-processor.js

Um grande aviso: estamos migrando do jQuery.FileUpload para o Uppy nesta versão, então atualmente existem duas maneiras de fazer tudo relacionado a isso.