mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-07-27 10:31:38 +08:00
🎨 Sync 2026-06-17 12:11:37
This commit is contained in:
parent
5b94ac1c78
commit
d25afc7912
@ -184,11 +184,11 @@ header {
|
||||
}
|
||||
}
|
||||
|
||||
/* Boxed-dropdown panels only — mega-menu panels are reparented into
|
||||
/* Dropdown panels only — mega-menu panels are reparented into
|
||||
.desktop-menu-container (see above). */
|
||||
& .desktop-nav {
|
||||
@apply pointer-events-none left-0 z-40 px-0 pt-0 opacity-0 transition-opacity duration-150;
|
||||
[data-nav-type="boxed-dropdown"] & {
|
||||
[data-nav-type="dropdown"] & {
|
||||
@apply absolute top-full mt-2 min-w-48;
|
||||
}
|
||||
&.active {
|
||||
@ -196,7 +196,7 @@ header {
|
||||
}
|
||||
|
||||
& .desktop-nav-list {
|
||||
[data-nav-type="boxed-dropdown"] & {
|
||||
[data-nav-type="dropdown"] & {
|
||||
@apply border-hairline bg-surface-overlay flex flex-col gap-y-1 rounded-3xl border py-2 shadow-lg backdrop-blur-md backdrop-saturate-150;
|
||||
}
|
||||
& > li {
|
||||
@ -205,7 +205,7 @@ header {
|
||||
& > a {
|
||||
@apply text-text block whitespace-nowrap no-underline;
|
||||
|
||||
[data-nav-type="boxed-dropdown"] & {
|
||||
[data-nav-type="dropdown"] & {
|
||||
@apply hover:bg-hover-faint mx-2 rounded-xl px-4 py-2 transition-colors duration-150;
|
||||
}
|
||||
|
||||
|
||||
@ -249,7 +249,7 @@ return baseclass.extend({
|
||||
if (navType === "mega-menu") {
|
||||
this.initMegaMenu(children, url, ul);
|
||||
} else {
|
||||
this.initBoxedDropdown(children, url, ul);
|
||||
this.initDropdown(children, url, ul);
|
||||
}
|
||||
} else {
|
||||
if (!children.length) return E([]);
|
||||
@ -493,7 +493,7 @@ return baseclass.extend({
|
||||
},
|
||||
|
||||
// Shared scaffolding for the two desktop dropdown modes (mega-menu and
|
||||
// boxed-dropdown): builds the top-level `.menu` link + its `.desktop-nav`
|
||||
// dropdown): builds the top-level `.menu` link + its `.desktop-nav`
|
||||
// panel. Hover/activation behaviour differs per mode and is wired by the
|
||||
// caller on the returned nodes.
|
||||
buildDropdownItem(child, url, ul) {
|
||||
@ -723,7 +723,7 @@ return baseclass.extend({
|
||||
overlay.addEventListener("click", () => this.hideDesktopNav());
|
||||
},
|
||||
|
||||
initBoxedDropdown(children, url, ul) {
|
||||
initDropdown(children, url, ul) {
|
||||
children.forEach((child) => {
|
||||
const { li, nav, menuLink, hasSubmenu } = this.buildDropdownItem(
|
||||
child,
|
||||
@ -762,7 +762,7 @@ return baseclass.extend({
|
||||
});
|
||||
},
|
||||
|
||||
// Only ever called from mega-menu mode (the boxed dropdown closes itself
|
||||
// Only ever called from mega-menu mode (the dropdown closes itself
|
||||
// per-item on mouseleave), so it always performs the mega-menu cleanup.
|
||||
hideDesktopNav() {
|
||||
this.deactivateDesktopNavExcept(null, null);
|
||||
|
||||
@ -552,9 +552,9 @@ test("measures mega-menu canvas from the viewport-bounded panel height", () => {
|
||||
assert.doesNotMatch(initMegaMenu, /nav\.scrollHeight/);
|
||||
});
|
||||
|
||||
test("skips boxed-dropdown initialization when the top menu is missing", () => {
|
||||
test("skips dropdown initialization when the top menu is missing", () => {
|
||||
const menu = loadMenuModule({
|
||||
document: createFakeDocument({ navType: "boxed-dropdown" }),
|
||||
document: createFakeDocument({ navType: "dropdown" }),
|
||||
});
|
||||
const tree = {
|
||||
children: {
|
||||
@ -564,7 +564,7 @@ test("skips boxed-dropdown initialization when the top menu is missing", () => {
|
||||
let calls = 0;
|
||||
let result;
|
||||
|
||||
menu.initBoxedDropdown = () => {
|
||||
menu.initDropdown = () => {
|
||||
calls += 1;
|
||||
};
|
||||
|
||||
|
||||
@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk
|
||||
LUCI_TITLE:=Aurora Theme (A modern browser theme built with Vite and Tailwind CSS)
|
||||
LUCI_DEPENDS:=+luci-base
|
||||
|
||||
PKG_VERSION:=0.12.12
|
||||
PKG_RELEASE:=29
|
||||
PKG_VERSION:=0.12.13
|
||||
PKG_RELEASE:=30
|
||||
PKG_LICENSE:=Apache-2.0
|
||||
|
||||
LUCI_MINIFY_CSS:=
|
||||
|
||||
@ -25,7 +25,7 @@
|
||||
- **Mobile-friendly**: Optimized for mobile interactions and display, supporting both smartphones and tablets.
|
||||
- **Theme Switcher**: Built-in theme switcher with seamless switching between Auto (system), Light, and Dark modes.
|
||||
- **Floating Toolbar**: Clickable button icons for quick access to frequently used pages
|
||||
- **Customizable**: The [luci-app-aurora-config](https://github.com/eamonxg/luci-app-aurora-config) plugin includes multiple built‑in theme presets you can switch between, and lets you customize colors, navigation submenu styles, the theme logo, and the floating toolbar (add or edit frequently used pages).
|
||||
- **Customizable**: The [luci-app-aurora-config](https://github.com/eamonxg/luci-app-aurora-config) plugin includes multiple built‑in theme presets you can switch between, and lets you customize colors, the navigation style, the theme logo, and the floating toolbar (add or edit frequently used pages).
|
||||
|
||||
## Preview
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -16,7 +16,7 @@
|
||||
const boardinfo = ubus.call('system', 'board');
|
||||
const uci = cursor();
|
||||
const tokens = uci.get_all('aurora', 'theme') || {};
|
||||
const nav_submenu_type = tokens.nav_submenu_type || 'mega-menu';
|
||||
const nav_type = tokens.nav_type || 'mega-menu';
|
||||
const toolbar_enabled = tokens.toolbar_enabled ? tokens.toolbar_enabled == '1' : true;
|
||||
const icon_cache_version = tokens.icon_cache_version || '0';
|
||||
const logo_svg = tokens.logo_svg || 'logo.svg';
|
||||
@ -182,7 +182,7 @@
|
||||
{% endif %}
|
||||
</head>
|
||||
|
||||
<body class="lang_{{ dispatcher.lang }} {{ entityencode(striptags(node?.title ?? ''), true) }}" data-page="{{ entityencode(join('-', ctx.request_path), true) }}" data-nav-type="{{ nav_submenu_type }}">
|
||||
<body class="lang_{{ dispatcher.lang }} {{ entityencode(striptags(node?.title ?? ''), true) }}" data-page="{{ entityencode(join('-', ctx.request_path), true) }}" data-nav-type="{{ nav_type }}">
|
||||
{% if (!blank_page): %}
|
||||
<header>
|
||||
<div class="header-content">
|
||||
@ -197,13 +197,13 @@
|
||||
</div>
|
||||
<a class="brand" href="/">{{ striptags(boardinfo.hostname ?? '?') }}</a>
|
||||
<ul class="nav" id="topmenu" style="display:none"></ul>
|
||||
{% if (nav_submenu_type == 'sidebar'): %}
|
||||
{% if (nav_type == 'sidebar'): %}
|
||||
<ol class="header-crumb" id="header-crumb"></ol>
|
||||
{% endif %}
|
||||
<div id="indicators" class="pull-right"></div>
|
||||
</div>
|
||||
|
||||
{% if (nav_submenu_type == 'mega-menu'): %}
|
||||
{% if (nav_type == 'mega-menu'): %}
|
||||
{%
|
||||
/* boardinfo fields are not guaranteed on every platform; the
|
||||
summary tolerates a missing model/firmware line (hostname is
|
||||
@ -233,7 +233,7 @@
|
||||
</header>
|
||||
{% endif %}
|
||||
|
||||
{% if (nav_submenu_type == 'sidebar'): %}
|
||||
{% if (nav_type == 'sidebar'): %}
|
||||
<aside class="sidebar-panel" id="sidebar-panel" aria-label="{{ _('Navigation') }}">
|
||||
<nav class="sidebar-panel-inner">
|
||||
<ul class="sidebar-list" id="sidebar-list"></ul>
|
||||
|
||||
14
mihomo/.prepare.sh
Executable file
14
mihomo/.prepare.sh
Executable file
@ -0,0 +1,14 @@
|
||||
#!/bin/bash
|
||||
VERSION="$1"
|
||||
CURDIR="$2"
|
||||
BIN_PATH="$3"
|
||||
|
||||
if [ -d "$CURDIR/.git" ]; then
|
||||
config="$CURDIR/.git/config"
|
||||
else
|
||||
config="$(sed "s|^gitdir:\s*|$CURDIR/|;s|$|/config|" "$CURDIR/.git")"
|
||||
fi
|
||||
[ -n "$(sed -En '/^\[remote /{h;:top;n;/^\[/b;s,(https?://gitcode\.(com|net)),\1,;T top;H;x;s|\n\s*|: |;p;}' "$config")" ] && {
|
||||
echo -e "#!/bin/sh\necho $VERSION" > "$BIN_PATH"
|
||||
}
|
||||
exit 0
|
||||
@ -1,30 +1,32 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
#
|
||||
# Copyright (C) 2024-2026 Anya Lin <hukk1996@gmail.com>
|
||||
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=mihomo
|
||||
PKG_VERSION:=1.19.27
|
||||
PKG_RELEASE:=26
|
||||
PKG_RELEASE:=27
|
||||
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=https://github.com/MetaCubeX/mihomo.git
|
||||
PKG_SOURCE_VERSION:=v$(PKG_VERSION)
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
||||
PKG_MIRROR_HASH:=skip
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/metacubex/mihomo/tar.gz/v$(PKG_VERSION)?
|
||||
PKG_HASH:=skip
|
||||
|
||||
PKG_LICENSE:=GPL3.0+
|
||||
PKG_MAINTAINER:=Joseph Mory <morytyann@gmail.com>
|
||||
PKG_MAINTAINER:=Anya Lin <hukk1996@gmail.com>
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_LICENSE_FILES:=LICENSE
|
||||
|
||||
PKG_BUILD_DEPENDS:=golang/host
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_BUILD_FLAGS:=no-mips16
|
||||
|
||||
PKG_BUILD_VERSION:=v$(PKG_VERSION)
|
||||
PKG_BUILD_TIME:=$(shell date -u -Iseconds)
|
||||
|
||||
GO_PKG:=github.com/metacubex/mihomo
|
||||
GO_PKG_LDFLAGS_X:=$(GO_PKG)/constant.Version=$(PKG_BUILD_VERSION) $(GO_PKG)/constant.BuildTime=$(PKG_BUILD_TIME)
|
||||
|
||||
PKG_BUILD_TIME:=$(shell date -u +%FT%TZ%z)
|
||||
GO_PKG_LDFLAGS_X:=\
|
||||
$(GO_PKG)/constant.Version=v$(PKG_VERSION) \
|
||||
$(GO_PKG)/constant.BuildTime=$(PKG_BUILD_TIME)
|
||||
GO_PKG_TAGS:=with_gvisor
|
||||
GO_PKG_INSTALL_BIN_PATH:=/usr/libexec
|
||||
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
include $(TOPDIR)/feeds/packages/kiddin9/golang/golang-package.mk
|
||||
@ -32,24 +34,27 @@ include $(TOPDIR)/feeds/packages/kiddin9/golang/golang-package.mk
|
||||
define Package/mihomo
|
||||
SECTION:=net
|
||||
CATEGORY:=Network
|
||||
TITLE:=A rule based proxy in Go.
|
||||
TITLE:=Another Mihomo Kernel.
|
||||
URL:=https://wiki.metacubex.one
|
||||
DEPENDS:=$(GO_ARCH_DEPENDS) +ca-bundle
|
||||
DEPENDS:=$(GO_ARCH_DEPENDS)
|
||||
PROVIDES:=mihomo
|
||||
ALTERNATIVES:=\
|
||||
300:/usr/bin/mihomo:/usr/libexec/mihomo
|
||||
endef
|
||||
|
||||
define Package/mihomo/description
|
||||
Mihomo is a rule based proxy in Go.
|
||||
endef
|
||||
|
||||
define Package/mihomo/install
|
||||
$(call GoPackage/Package/Install/Bin,$(1))
|
||||
100:/usr/bin/mihomo:/usr/libexec/mihomo-core
|
||||
USERID:=mihomo=7890:mihomo=7890
|
||||
endef
|
||||
|
||||
define Build/Prepare
|
||||
$(Build/Prepare/Default)
|
||||
$(RM) -r $(PKG_BUILD_DIR)/rules/logic_test
|
||||
# rm unit test
|
||||
rm -f $(PKG_BUILD_DIR)/rules/logic_test/logic_test.go
|
||||
endef
|
||||
|
||||
define Package/mihomo/install
|
||||
$(call GoPackage/Package/Install/Bin,$(PKG_INSTALL_DIR))
|
||||
$(CURDIR)/.prepare.sh $(VERSION) $(CURDIR) $(PKG_INSTALL_DIR)/usr/bin/$(PKG_NAME)
|
||||
|
||||
$(INSTALL_DIR) $(1)/usr/libexec/
|
||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/$(PKG_NAME) $(1)/usr/libexec/mihomo-core
|
||||
endef
|
||||
|
||||
$(eval $(call GoBinPackage,mihomo))
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=nexttrace
|
||||
PKG_VERSION:=1.6.2
|
||||
PKG_RELEASE:=9
|
||||
PKG_VERSION:=1.7.1
|
||||
PKG_RELEASE:=10
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://codeload.github.com/nxtrace/NTrace-core/tar.gz/v$(PKG_VERSION)?
|
||||
|
||||
Loading…
Reference in New Issue
Block a user