From 46b0540e92400927c6c707d650f2f203a7f7d4ca Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Tue, 28 Sep 2021 16:59:13 +0200 Subject: [PATCH] @uppy/image-editor: add workaround for when `Cropper` is loaded as ESM (#3218) * @uppy/image-editor: add workaround for when `Cropper` is loaded as ESM Fixes: https://github.com/transloadit/uppy/issues/3199 * Update packages/@uppy/image-editor/src/Editor.js Co-authored-by: Kevin van Zonneveld * Add backlog entry Co-authored-by: Kevin van Zonneveld --- BACKLOG.md | 1 + packages/@uppy/image-editor/src/Editor.js | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/BACKLOG.md b/BACKLOG.md index 7387eba168..a46925d1b7 100644 --- a/BACKLOG.md +++ b/BACKLOG.md @@ -30,6 +30,7 @@ PRs are welcome! Please do open an issue to discuss first if it's a big feature, ## `3.0.0` - [ ] Switch to ES Modules (ESM) +- [ ] @uppy/image-editor: Remove silly hack to work around non-ESM. ## `4.0.0` diff --git a/packages/@uppy/image-editor/src/Editor.js b/packages/@uppy/image-editor/src/Editor.js index 9a64a0828f..5abc1fd76a 100644 --- a/packages/@uppy/image-editor/src/Editor.js +++ b/packages/@uppy/image-editor/src/Editor.js @@ -1,6 +1,10 @@ -const Cropper = require('cropperjs') +const CropperImport = require('cropperjs') const { h, Component } = require('preact') +// @TODO A silly hack that we can get rid of when moving to ESM. +// eslint-disable-next-line no-underscore-dangle +const Cropper = CropperImport.__esModule ? CropperImport.default : CropperImport + module.exports = class Editor extends Component { constructor (props) { super(props)