- 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>for-closed-social
@ -1,25 +0,0 @@ | |||
Copyright (c) 2006, Ivan Sagalaev | |||
All rights reserved. | |||
Redistribution and use in source and binary forms, with or without | |||
modification, are permitted provided that the following conditions are met: | |||
* Redistributions of source code must retain the above copyright | |||
notice, this list of conditions and the following disclaimer. | |||
* Redistributions in binary form must reproduce the above copyright | |||
notice, this list of conditions and the following disclaimer in the | |||
documentation and/or other materials provided with the distribution. | |||
* Neither the name of highlight.js nor the names of its contributors | |||
may be used to endorse or promote products derived from this software | |||
without specific prior written permission. | |||
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY | |||
EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |||
DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY | |||
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | |||
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | |||
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | |||
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | |||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||
@ -1,99 +0,0 @@ | |||
/* | |||
Original highlight.js style (c) Ivan Sagalaev <maniac@softwaremaniacs.org> | |||
*/ | |||
.hljs { | |||
display: block; | |||
overflow-x: auto; | |||
padding: 0.5em; | |||
background: #F0F0F0; | |||
} | |||
/* Base color: saturation 0; */ | |||
.hljs, | |||
.hljs-subst { | |||
color: #444; | |||
} | |||
.hljs-comment { | |||
color: #888888; | |||
} | |||
.hljs-keyword, | |||
.hljs-attribute, | |||
.hljs-selector-tag, | |||
.hljs-meta-keyword, | |||
.hljs-doctag, | |||
.hljs-name { | |||
font-weight: bold; | |||
} | |||
/* User color: hue: 0 */ | |||
.hljs-type, | |||
.hljs-string, | |||
.hljs-number, | |||
.hljs-selector-id, | |||
.hljs-selector-class, | |||
.hljs-quote, | |||
.hljs-template-tag, | |||
.hljs-deletion { | |||
color: #880000; | |||
} | |||
.hljs-title, | |||
.hljs-section { | |||
color: #880000; | |||
font-weight: bold; | |||
} | |||
.hljs-regexp, | |||
.hljs-symbol, | |||
.hljs-variable, | |||
.hljs-template-variable, | |||
.hljs-link, | |||
.hljs-selector-attr, | |||
.hljs-selector-pseudo { | |||
color: #BC6060; | |||
} | |||
/* Language color: hue: 90; */ | |||
.hljs-literal { | |||
color: #78A960; | |||
} | |||
.hljs-built_in, | |||
.hljs-bullet, | |||
.hljs-code, | |||
.hljs-addition { | |||
color: #397300; | |||
} | |||
/* Meta color: hue: 200 */ | |||
.hljs-meta { | |||
color: #1f7199; | |||
} | |||
.hljs-meta-string { | |||
color: #4d99bf; | |||
} | |||
/* Misc effects */ | |||
.hljs-emphasis { | |||
font-style: italic; | |||
} | |||
.hljs-strong { | |||
font-weight: bold; | |||
} |
@ -1,99 +0,0 @@ | |||
/* | |||
github.com style (c) Vasily Polovnyov <vast@whiteants.net> | |||
*/ | |||
.hljs { | |||
display: block; | |||
overflow-x: auto; | |||
padding: 0.5em; | |||
color: #333; | |||
background: #f8f8f8; | |||
} | |||
.hljs-comment, | |||
.hljs-quote { | |||
color: #998; | |||
font-style: italic; | |||
} | |||
.hljs-keyword, | |||
.hljs-selector-tag, | |||
.hljs-subst { | |||
color: #333; | |||
font-weight: bold; | |||
} | |||
.hljs-number, | |||
.hljs-literal, | |||
.hljs-variable, | |||
.hljs-template-variable, | |||
.hljs-tag .hljs-attr { | |||
color: #008080; | |||
} | |||
.hljs-string, | |||
.hljs-doctag { | |||
color: #d14; | |||
} | |||
.hljs-title, | |||
.hljs-section, | |||
.hljs-selector-id { | |||
color: #900; | |||
font-weight: bold; | |||
} | |||
.hljs-subst { | |||
font-weight: normal; | |||
} | |||
.hljs-type, | |||
.hljs-class .hljs-title { | |||
color: #458; | |||
font-weight: bold; | |||
} | |||
.hljs-tag, | |||
.hljs-name, | |||
.hljs-attribute { | |||
color: #000080; | |||
font-weight: normal; | |||
} | |||
.hljs-regexp, | |||
.hljs-link { | |||
color: #009926; | |||
} | |||
.hljs-symbol, | |||
.hljs-bullet { | |||
color: #990073; | |||
} | |||
.hljs-built_in, | |||
.hljs-builtin-name { | |||
color: #0086b3; | |||
} | |||
.hljs-meta { | |||
color: #999; | |||
font-weight: bold; | |||
} | |||
.hljs-deletion { | |||
background: #fdd; | |||
} | |||
.hljs-addition { | |||
background: #dfd; | |||
} | |||
.hljs-emphasis { | |||
font-style: italic; | |||
} | |||
.hljs-strong { | |||
font-weight: bold; | |||
} |
@ -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; | |||
} |