Merge pull request #1845 from SergeyMosin/compact-composer-plugin-v1.0.6

Update squire to v2.3.2 and fix willPaste listener/sanitizer
This commit is contained in:
Maarten 2024-11-18 16:01:52 +01:00 committed by GitHub
commit d301b93b0d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 368 additions and 444 deletions

View file

@ -6,7 +6,7 @@ class CompactComposerPlugin extends \RainLoop\Plugins\AbstractPlugin
NAME = 'Compact Composer',
AUTHOR = 'Sergey Mosin',
URL = 'https://github.com/the-djmaze/snappymail/pull/1466',
VERSION = '1.0.5',
VERSION = '1.0.6',
RELEASE = '2024-08-08',
REQUIRED = '2.34.0',
LICENSE = 'AGPL v3',

View file

@ -100,10 +100,6 @@
}
},
pasteSanitizer = (event) => {
return rl.Utils.cleanHtml(event.detail.html).html;
},
pasteImageHandler = (e, squire) => {
const items = [...e.detail.clipboardData.items];
@ -142,7 +138,12 @@
toolbar.className = 'squire-toolbar btn-toolbar';
const actions = this.makeActions(squire, toolbar);
this.squire.addEventListener('willPaste', pasteSanitizer);
this.squire.addEventListener('willPaste', (event) => {
// https://github.com/fastmail/Squire?tab=readme-ov-file#addeventlistener
// The content that will be inserted is available as either the fragment property, or the text property for plain text, on the detail property of the event. You can modify this text/fragment in your event handler to change what will be pasted
tpl.innerHTML = rl.Utils.cleanHtml(event.detail.html).html;
event.detail.fragment = tpl.content;
});
this.squire.addEventListener('pasteImage', (e) => {
pasteImageHandler(e, squire);
});

File diff suppressed because it is too large Load diff