diff options
Diffstat (limited to 'web_src/js/render/pdf.js')
-rw-r--r-- | web_src/js/render/pdf.js | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/web_src/js/render/pdf.js b/web_src/js/render/pdf.js new file mode 100644 index 0000000..f31f161 --- /dev/null +++ b/web_src/js/render/pdf.js @@ -0,0 +1,19 @@ +import {htmlEscape} from 'escape-goat'; + +export async function initPdfViewer() { + const els = document.querySelectorAll('.pdf-content'); + if (!els.length) return; + + const pdfobject = await import(/* webpackChunkName: "pdfobject" */'pdfobject'); + + for (const el of els) { + const src = el.getAttribute('data-src'); + const fallbackText = el.getAttribute('data-fallback-button-text'); + pdfobject.embed(src, el, { + fallbackLink: htmlEscape` + <a role="button" class="ui basic button pdf-fallback-button" href="[url]">${fallbackText}</a> + `, + }); + el.classList.remove('is-loading'); + } +} |