MapComplete/src/UI/Base/FromHtml.svelte

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

26 lines
610 B
Svelte
Raw Normal View History

2023-03-29 17:21:20 +02:00
<script lang="ts">
/**
* Given an HTML string, properly shows this
*/
import DOMPurify from 'dompurify';
export let src: string
let cleaned = DOMPurify.sanitize(src, { USE_PROFILES: { html: true },
ADD_ATTR: ['target'] // Don't remove target='_blank'. Note that Utils.initDomPurify does add a hook which automatically adds 'rel=noopener'
});
let htmlElem: HTMLElement
2023-03-29 17:21:20 +02:00
$: {
2023-04-21 18:09:14 +02:00
if (htmlElem) {
htmlElem.innerHTML = cleaned
2023-03-29 17:21:20 +02:00
}
}
export let clss: string | undefined = undefined
2023-03-29 17:21:20 +02:00
</script>
{#if src !== undefined}
<span bind:this={htmlElem} class={clss} />
2023-03-29 17:21:20 +02:00
{/if}