feat: merge upstream master - version 4.94

Merge upstream PiKVM master branch updates:

- Bump version from 4.93 to 4.94
- HID: improved jiggler pattern for better compatibility
- Streamer: major refactoring for improved performance and maintainability
- Prometheus: tidying GPIO channel name formatting
- Web: added __gpio-label class for custom styling
- HID: customizable /api/hid/print delay configuration
- ATX: independent power/reset regions for better control
- OLED: added --fill option for display testing
- Web: improved keyboard handling in modal dialogs
- Web: enhanced login error messages
- Switch: added heartbeat functionality
- Web: mouse touch code simplification and refactoring
- Configs: use systemd-networkd-wait-online --any by default
- PKGBUILD: use cp -r to install systemd units properly
- Various bug fixes and performance improvements
This commit is contained in:
mofeng-git
2025-08-21 11:21:41 +08:00
205 changed files with 9359 additions and 4653 deletions

View File

@@ -23,34 +23,42 @@ doctype html
# #
==============================================================================
- var css_dir = "/share/css"
- var js_dir = "/share/js"
- var svg_dir = "/share/svg"
- var png_dir = "/share/png"
-
var root_prefix = "./"
title = ""
main_js = ""
body_class = ""
css_list = []
- var title = ""
- var main_js = ""
- var body_class = ""
- var css_list = ["vars", "main"]
block vars
block _vars_dynamic
-
share_dir = `${root_prefix}share`
css_dir = `${share_dir}/css`
js_dir = `${share_dir}/js`
svg_dir = `${share_dir}/svg`
png_dir = `${share_dir}/png`
html(lang="en")
head
meta(charset="utf-8")
title #{title}
link(rel="apple-touch-icon" sizes="180x180" href="/share/apple-touch-icon.png")
link(rel="icon" type="image/png" sizes="32x32" href="/share/favicon-32x32.png")
link(rel="icon" type="image/png" sizes="16x16" href="/share/favicon-16x16.png")
link(rel="manifest" href="/share/site.webmanifest")
link(rel="mask-icon" href="/share/safari-pinned-tab.svg" color="#5bbad5")
link(rel="apple-touch-icon" sizes="180x180" href=`${share_dir}/apple-touch-icon.png`)
link(rel="icon" type="image/png" sizes="32x32" href=`${share_dir}/favicon-32x32.png`)
link(rel="icon" type="image/png" sizes="16x16" href=`${share_dir}/favicon-16x16.png`)
link(rel="manifest" href=`${share_dir}/site.webmanifest`)
link(rel="mask-icon" href=`${share_dir}/safari-pinned-tab.svg` color="#5bbad5")
meta(name="msapplication-TileColor" content="#2b5797")
meta(name="theme-color" content="#ffffff")
each name in css_list
each name in ["vars", "main"].concat(css_list).concat(["user"])
link(rel="stylesheet" href=`${css_dir}/${name}.css`)
link(rel="stylesheet" href=`${css_dir}/user.css`)
script(src=`${js_dir}/i18n/jquery-3.7.1.min.js`)
script(src=`${js_dir}/i18n/jquery.i18n.min.js`)
@@ -58,6 +66,8 @@ html(lang="en")
if main_js
script(type="module")
| import {setRootPrefix} from "#{js_dir}/vars.js";
| setRootPrefix("#{root_prefix}");
| import {main} from "#{js_dir}/#{main_js}.js";
| main();