Falco
(Falco)
September 29, 2021, 7:49pm
3
This is exactly what the recent Client side image optimization enabled by default does. You can see the hook here:
import {
addComposerUploadPreProcessor,
addComposerUploadProcessor,
} from "discourse/components/composer-editor";
import UppyMediaOptimization from "discourse/lib/uppy-media-optimization-plugin";
export default {
name: "register-media-optimization-upload-processor",
initialize(container) {
let siteSettings = container.lookup("site-settings:main");
if (siteSettings.composer_media_optimization_image_enabled) {
if (!siteSettings.enable_experimental_composer_uploader) {
addComposerUploadProcessor(
{ action: "optimizeJPEG" },
{
optimizeJPEG: (data, opts) =>
container
.lookup("service:media-optimization-worker")
.optimizeImage(data, opts),
This file has been truncated. show original
One big warning, is that we are moving from jQuery.FileUpload to Uppy in this release, so there are currently two ways of doing everything regarding this.
1 Like