diff options
author | silverwind <me@silverwind.io> | 2020-01-28 22:57:20 +0100 |
---|---|---|
committer | Lauris BH <lauris@nix.lv> | 2020-01-28 23:57:20 +0200 |
commit | b9690d7c0b4980c46b3416e36478fa0140dd5f9e (patch) | |
tree | 9395508c79655a7807f98de4d0a4fd75267f6a76 /web_src/js/features | |
parent | d879353632c5220c8ac0e3831311ebfe7cf357fe (diff) | |
download | gitea-b9690d7c0b4980c46b3416e36478fa0140dd5f9e.tar.gz gitea-b9690d7c0b4980c46b3416e36478fa0140dd5f9e.zip |
move highlight.js to npm/webpack (#10011)
- introduced window.config to help with js-based lazy-loading
- adjusted webpack chunk naming to avoid 'vendors~name.js' that webpack
defaults to for vendor chunks.
- added theme class to html and prefixed all selectors. this is
neccesary so that the theme styles win over the lazy-loaded ones.
Co-authored-by: zeripath <art27@cantab.net>
Diffstat (limited to 'web_src/js/features')
-rw-r--r-- | web_src/js/features/highlight.js | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/web_src/js/features/highlight.js b/web_src/js/features/highlight.js new file mode 100644 index 0000000000..dcd8a8d21e --- /dev/null +++ b/web_src/js/features/highlight.js @@ -0,0 +1,12 @@ +export default async function initHighlight() { + if (!window.config || !window.config.HighlightJS) return; + + const hljs = await import(/* webpackChunkName: "highlight" */'highlight.js'); + + const nodes = [].slice.call(document.querySelectorAll('pre code') || []); + for (let i = 0; i < nodes.length; i++) { + hljs.highlightBlock(nodes[i]); + } + + return hljs; +} |