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>
This commit is contained in:
parent
d879353632
commit
b9690d7c0b
16 changed files with 53 additions and 254 deletions
12
web_src/js/features/highlight.js
Normal file
12
web_src/js/features/highlight.js
Normal file
|
@ -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;
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue