Spaces:
Runtime error
Runtime error
from functools import lru_cache | |
from toolbox import get_conf | |
CODE_HIGHLIGHT, ADD_WAIFU, LAYOUT = get_conf("CODE_HIGHLIGHT", "ADD_WAIFU", "LAYOUT") | |
def minimize_js(common_js_path): | |
try: | |
import rjsmin, hashlib, glob, os | |
# clean up old minimized js files, matching `common_js_path + '.min.*'` | |
for old_min_js in glob.glob(common_js_path + '.min.*.js'): | |
os.remove(old_min_js) | |
# use rjsmin to minimize `common_js_path` | |
c_jsmin = rjsmin.jsmin | |
with open(common_js_path, "r") as f: | |
js_content = f.read() | |
minimized_js_content = c_jsmin(js_content) | |
# compute sha256 hash of minimized js content | |
sha_hash = hashlib.sha256(minimized_js_content.encode()).hexdigest()[:8] | |
minimized_js_path = common_js_path + '.min.' + sha_hash + '.js' | |
# save to minimized js file | |
with open(minimized_js_path, "w") as f: | |
f.write(minimized_js_content) | |
# return minimized js file path | |
return minimized_js_path | |
except: | |
return common_js_path | |
def get_common_html_javascript_code(): | |
js = "\n" | |
common_js_path_list = [ | |
"themes/common.js", | |
"themes/theme.js", | |
"themes/tts.js", | |
"themes/init.js", | |
"themes/welcome.js", | |
] | |
if ADD_WAIFU: # 添加Live2D | |
common_js_path_list += [ | |
"themes/waifu_plugin/jquery.min.js", | |
"themes/waifu_plugin/jquery-ui.min.js", | |
] | |
for common_js_path in common_js_path_list: | |
if '.min.' not in common_js_path: | |
minimized_js_path = minimize_js(common_js_path) | |
else: | |
minimized_js_path = common_js_path | |
jsf = f"file={minimized_js_path}" | |
js += f"""<script src="{jsf}"></script>\n""" | |
if not ADD_WAIFU: | |
js += """<script>window.loadLive2D = function(){};</script>\n""" | |
return js | |