chore(branding): remove leftover upstream theme identifiers

The theme was renamed Zibll/子比 → AKSRT → Jio, but upstream branding
survived the sweeps in CSS classes, the SVG sprite prefix, a persisted
widget field ID, JS events, admin Vue class names, test infrastructure
and docblocks.

Renames:
- zib-widget / zib-widget-wrap / zib-slider → jio-widget-box /
  jio-widget-box-wrap / jio-slider-box (jio-widget is taken by the modern
  widget shell, jio-box-* by the card primitives)
- zib-partners-scroll + zps-* → jio-partners-scroll + jps-*
- zib-combo-info-card + zci-* → jio-combo-info-card + jci-*
- zibsvg- → jiosvg-, including the exported picker helpers and the
  fa-zibsvg- family-prefix guard
- zibpay_type → pay_type; the dual-read fallback in PostQuery collapses
  to a single key
- [zibajax="submit"] dropped (no PHP emitter); zib_ajax.success →
  jio_ajax.success
- aks-* admin Vue classes → jio-*
- zib_palette() → palette()

User-facing vendor traces are gone: the floating "more" button default no
longer ships a zibll.com link or 子比主题 marketing copy, the notice
widget ships no preset promo entries, and the four 官网教程 links are
removed from the post-list admin schema.

Test infrastructure renamed to neutral names (docker-compose.reference.yml,
Caddyfile, article-baseline.json, modern-widgets-contract.test.cjs) with
their DB/volume/env/slug identifiers following.

Kept intentionally, documented in tests/fixtures/README.md: the golden
fixture reference fingerprint (a SHA-256 record of an external directory,
read by validate-widget-golden / generate-widget-golden-fixture /
audit-widget-system), the doesNotMatch guards that prove the old tokens are
gone, and the reference theme's own meta key in the visual fixtures.

No backward-compat or data migration: saved widget configs holding old
icon keys or the old field ID silently lose them, per the project's
rewrite-over-compatibility rule.

Verified: 132/132 node contract tests, php tests/widget-system/run.php
(146 assertions), audit-admin-contracts, audit-psr4-paths and
validate-widget-golden all green; tracked bundles regenerated and in sync.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
kate522andClaude Opus 5 committed 2026-11-02 00:06:54 +08:00
1 parent 42cc64106d
commit 427968a721
188 files changed
+915 -967

No files matched your search

+1 -1
View File
@@ -1,4 +1,4 @@
/* Sidebar toolbar: per-area export / import / template import (zibll WIE flow). */
/* Sidebar toolbar: per-area export / import / template import. */
(function ($) {
'use strict';
+13 -13
View File
@@ -55,18 +55,18 @@
.jio-widget-quote .yiyan .en { font-size: .9em; opacity: .8; }
.jio-widget-quote.is-loading { opacity: .65; }
/* The Jio base stylesheet already carries Zibll's icon-card and utility rules.
/* The Jio base stylesheet already carries the icon-card and utility rules.
* Restore the one renamed primitive used verbatim by these two widget renderers. */
.zib-widget { clear:both; margin-bottom:20px; padding:15px; border-radius:var(--main-radius,8px); background:var(--main-bg-color,#fff); box-shadow:0 0 10px var(--main-shadow,rgba(116,116,116,.08)); }
.zib-widget.padding-10 { padding:10px; }
.zib-widget.nobottom.notop { padding-top:0; padding-bottom:0; }
.zib-widget.posts-mini-lists { padding:5px; }
.zib-widget.posts-mini-lists .relative > .tab-nav-theme ~ .scroll-x-prev,
.zib-widget.posts-mini-lists .relative > .tab-nav-theme ~ .scroll-x-next { top:10px; }
.jio-widget-box { clear:both; margin-bottom:20px; padding:15px; border-radius:var(--main-radius,8px); background:var(--main-bg-color,#fff); box-shadow:0 0 10px var(--main-shadow,rgba(116,116,116,.08)); }
.jio-widget-box.padding-10 { padding:10px; }
.jio-widget-box.nobottom.notop { padding-top:0; padding-bottom:0; }
.jio-widget-box.posts-mini-lists { padding:5px; }
.jio-widget-box.posts-mini-lists .relative > .tab-nav-theme ~ .scroll-x-prev,
.jio-widget-box.posts-mini-lists .relative > .tab-nav-theme ~ .scroll-x-next { top:10px; }
.zib-widget-wrap { padding:var(--jio-widget-space-top,0) var(--jio-widget-space-right,0) var(--jio-widget-space-bottom,0) var(--jio-widget-space-left,0); background-color:var(--jio-widget-bg-light,transparent); background-image:var(--jio-widget-bg-image-light,none); background-position:center; background-size:cover; }
.dark-theme .zib-widget-wrap, [data-theme="dark"] .zib-widget-wrap { background-color:var(--jio-widget-bg-dark,var(--jio-widget-bg-light,transparent)); background-image:var(--jio-widget-bg-image-dark,var(--jio-widget-bg-image-light,none)); }
.zib-widget-wrap .widget-container { position:relative; }
.jio-widget-box-wrap { padding:var(--jio-widget-space-top,0) var(--jio-widget-space-right,0) var(--jio-widget-space-bottom,0) var(--jio-widget-space-left,0); background-color:var(--jio-widget-bg-light,transparent); background-image:var(--jio-widget-bg-image-light,none); background-position:center; background-size:cover; }
.dark-theme .jio-widget-box-wrap, [data-theme="dark"] .jio-widget-box-wrap { background-color:var(--jio-widget-bg-dark,var(--jio-widget-bg-light,transparent)); background-image:var(--jio-widget-bg-image-dark,var(--jio-widget-bg-image-light,none)); }
.jio-widget-box-wrap .widget-container { position:relative; }
.jio-user-widget-wrap :where(a, button, input, select, textarea, [tabindex]):focus-visible,
.jio-tab-posts-wrap :where(a, button, input, select, textarea, [tabindex]):focus-visible,
.jio-posts-wrap :where(a, button, input, select, textarea, [tabindex]):focus-visible { outline:3px solid var(--focus-color,#ff5473) !important; outline-offset:3px; }
@@ -74,12 +74,12 @@
.dark-theme .jio-posts-wrap :where(a, button, input, select, textarea, [tabindex]):focus-visible,
[data-theme="dark"] :is(.jio-user-widget-wrap, .jio-tab-posts-wrap, .jio-posts-wrap) :where(a, button, input, select, textarea, [tabindex]):focus-visible { outline-color:#ffd166 !important; }
.user-card.zib-widget { padding:0; overflow:hidden; }
.user-card.jio-widget-box { padding:0; overflow:hidden; }
.user-card.widget .user-info > .text-center > p:not(.muted-color) { white-space:nowrap; }
.user-card.widget .user-info > .text-center > p:not(.muted-color) .but { white-space:nowrap; }
@media (max-width:767px) {
.zib-widget-wrap { padding:var(--jio-widget-space-m-top,0) var(--jio-widget-space-m-right,0) var(--jio-widget-space-m-bottom,0) var(--jio-widget-space-m-left,0); }
.jio-widget-box-wrap { padding:var(--jio-widget-space-m-top,0) var(--jio-widget-space-m-right,0) var(--jio-widget-space-m-bottom,0) var(--jio-widget-space-m-left,0); }
}
.jio-widget-video { position: relative; overflow: hidden; border-radius: var(--jio-widget-radius); background: #000; aspect-ratio: 16 / 9; }
@@ -155,7 +155,7 @@
}
.jio-widget--animate { animation: jio-widget-fade .55s both; }.jio-widget--animate-slideup { animation-name: jio-widget-slideup; }.jio-widget--animate-slidedown { animation-name: jio-widget-slidedown; }.jio-widget--animate-slideright { animation-name: jio-widget-slideright; }.jio-widget--animate-slideleft { animation-name: jio-widget-slideleft; }.jio-widget--animate-zoomin { animation-name: jio-widget-zoomin; }.jio-widget--animate-zoomout { animation-name: jio-widget-zoomout; }.jio-widget--animate-repeat { animation-iteration-count: infinite; animation-duration: 2s; }
/* Zibll modern widget contracts */
/* Modern widget contracts */
.widget-tab-post .tab-content > .tab-pane { display: none; }
.widget-tab-post .tab-content > .tab-pane.active { display: block; }
.widget-tab-post, .term-aggregation { line-height:1.42857143; }
+2 -2
View File
@@ -333,10 +333,10 @@
}
/* 幻灯片加图文视频卡片:以左侧幻灯片实际高度重算右侧卡片比例。
* 合作伙伴滚动由运行时 main.js 初始化(.zib-partners-scroll 唯一所有者)。 */
* 合作伙伴滚动由运行时 main.js 初始化(.jio-partners-scroll 唯一所有者)。 */
function measureSliderGraphic(widget) {
if (once(widget, 'Combo')) return;
var slider = widget.querySelector('.slider-col .zib-slider') || widget.querySelector('.slider-col');
var slider = widget.querySelector('.slider-col .jio-slider-box') || widget.querySelector('.slider-col');
var covers = widget.querySelector('.cover-col');
if (!slider || !covers) return;
var row = Number(widget.dataset.row || 2);