You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-07-13 00:10:37 +02:00
This commit is contained in:
@ -0,0 +1,9 @@
|
|||||||
|
<p>
|
||||||
|
SVG image:
|
||||||
|
|
||||||
|
<img src="data:image/svg+xml;utf8,
|
||||||
|
<svg width="1700" height="1536" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path d="m0,0%20l100,1000%20l200,0%20z"/>
|
||||||
|
</svg>"/>
|
||||||
|
</p>
|
||||||
|
<p>PNG image: <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAR0lEQVQIW4XLMQoAIQwF0flpBEHwtOlUsPW6gZTushfYqd8IuHtvxhhI4pyD1lq3905EYGa01tB9m3N+IjNxd/S711oppfAAOjQiFPMurHkAAAAASUVORK5CYII="></p>
|
3
packages/app-cli/tests/html_to_md/image_utf8_data_url.md
Normal file
3
packages/app-cli/tests/html_to_md/image_utf8_data_url.md
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
SVG image: 
|
||||||
|
|
||||||
|
PNG image: 
|
@ -0,0 +1,2 @@
|
|||||||
|
<p>SVG image: <img src="data:image/svg+xml;utf8,%3Csvg%20width=%221700%22%20height=%221536%22%20xmlns=%22http://www.w3.org/2000/svg%22%3E%20%3Cpath%20d=%22m0,0%20l100,1000%20l200,0%20z%22/%3E%20%3C/svg%3E" alt=""></p>
|
||||||
|
<p>PNG image: <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAR0lEQVQIW4XLMQoAIQwF0flpBEHwtOlUsPW6gZTushfYqd8IuHtvxhhI4pyD1lq3905EYGa01tB9m3N+IjNxd/S711oppfAAOjQiFPMurHkAAAAASUVORK5CYII=" alt=""></p>
|
3
packages/app-cli/tests/md_to_html/image_with_data_url.md
Normal file
3
packages/app-cli/tests/md_to_html/image_with_data_url.md
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
SVG image: 
|
||||||
|
|
||||||
|
PNG image: 
|
@ -608,6 +608,14 @@ const TinyMCE = (props: NoteBodyEditorProps, ref: any) => {
|
|||||||
localization_function: _,
|
localization_function: _,
|
||||||
contextmenu: false,
|
contextmenu: false,
|
||||||
browser_spellcheck: true,
|
browser_spellcheck: true,
|
||||||
|
|
||||||
|
// Work around an issue where images with a base64 SVG data URL would be broken.
|
||||||
|
//
|
||||||
|
// See https://github.com/tinymce/tinymce/issues/3864
|
||||||
|
//
|
||||||
|
// This was fixed in TinyMCE 6.1, so remove it when we upgrade.
|
||||||
|
images_dataimg_filter: (img: HTMLImageElement) => !img.src.startsWith('data:'),
|
||||||
|
|
||||||
formats: {
|
formats: {
|
||||||
joplinHighlight: { inline: 'mark', remove: 'all' },
|
joplinHighlight: { inline: 'mark', remove: 'all' },
|
||||||
joplinStrikethrough: { inline: 's', remove: 'all' },
|
joplinStrikethrough: { inline: 's', remove: 'all' },
|
||||||
|
@ -7,7 +7,7 @@ export default function(url: string) {
|
|||||||
// url should be normalized at this point, and existing entities are decoded
|
// url should be normalized at this point, and existing entities are decoded
|
||||||
const str = url.trim().toLowerCase();
|
const str = url.trim().toLowerCase();
|
||||||
|
|
||||||
if (str.indexOf('data:image/svg+xml,') === 0) {
|
if (str.startsWith('data:image/svg+xml,') || str.startsWith('data:image/svg+xml;utf8,')) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -293,6 +293,9 @@ function filterLinkHref (href) {
|
|||||||
// Replace the spaces with %20 because otherwise they can cause problems for some
|
// Replace the spaces with %20 because otherwise they can cause problems for some
|
||||||
// renderer and space is not a valid URL character anyway.
|
// renderer and space is not a valid URL character anyway.
|
||||||
href = href.replace(/ /g, '%20');
|
href = href.replace(/ /g, '%20');
|
||||||
|
// Newlines and tabs also break renderers
|
||||||
|
href = href.replace(/\n/g, '%0A');
|
||||||
|
href = href.replace(/\t/g, '%09');
|
||||||
// Brackets also should be escaped
|
// Brackets also should be escaped
|
||||||
href = href.replace(/\(/g, '%28');
|
href = href.replace(/\(/g, '%28');
|
||||||
href = href.replace(/\)/g, '%29');
|
href = href.replace(/\)/g, '%29');
|
||||||
|
Reference in New Issue
Block a user