fix(nav): use reference theme sprite icons for header wallet tiles
The top-nav user card rendered its balance and points tiles with Font Awesome glyphs (fa-money-bill-wave, fa-coins) while the reference theme paints the multi-tone SVGs money-color-2 and points-color, so the two tiles read as flat monochrome next to the rest of the card. aksrt_header_user_wallet_mini() now resolves both value icons through aksrt_icon_markup(), which is the same call the user-center sidebar uses for the same two figures, so the header and the sidebar cannot drift apart: 余额 fa-money-bill-wave -> zibsvg-money-color-2 (em14) 积分 fa-coins -> zibsvg-points-color (em14) The tile arrows stay on fa-angle-right because that is what the reference renders there; only the two value icons were wrong. The muted-box geometry, the c-blue-2 / c-yellow value colours and the data-aksrt-* live-update hooks are untouched. Verification: node --test across widget-system, navigation, admin, asset-ledger, dev, front-submit and fixtures (621 tests), plus php -l. Rendered the tile through a stubbed harness and diffed it against the reference markup: identical structure, classes and icon. Contract-locked the two keys in tests/navigation/legacy-navigation-contract.test.cjs and added a cross-surface parity assertion to the sidebar icon contract.
This commit is contained in:
1 parent
4b18f7ef2c
commit
319ec2f47f
3 files changed
+27
-5
No files matched your search
@@ -115,3 +115,18 @@ test('所用 sprite key 均在前端 sprite 中定义', () => {
|
||||
assert.match(sprite, new RegExp(`aksrt_svgs\\['${key}'\\]\\s*=`), `sprite key missing: ${key}`);
|
||||
}
|
||||
});
|
||||
|
||||
test('导航栏用户浮层的余额/积分磁贴与侧栏使用同一组 sprite key', () => {
|
||||
const nav = read(sidebarDir + 'sidebar-commerce.php');
|
||||
const wallet = read('inc/helpers/aksrt-header-userbox.php');
|
||||
|
||||
assert.match(wallet, /aksrt_icon_markup\('zibsvg-money-color-2', 'em14'\)/);
|
||||
assert.match(wallet, /aksrt_icon_markup\('zibsvg-points-color', 'em14'\)/);
|
||||
assert.match(nav, /aksrt_icon_markup\('zibsvg-money-color-2'\)/);
|
||||
assert.match(nav, /aksrt_icon_markup\('zibsvg-points-color'\)/);
|
||||
|
||||
// 磁贴箭头沿用参考主题的 fa-angle-right,不做多余替换。
|
||||
assert.match(wallet, /fa fas fa-angle-right em12/);
|
||||
assert.doesNotMatch(wallet, /fa fas fa-money-bill-wave/);
|
||||
assert.doesNotMatch(wallet, /fa fas fa-coins/);
|
||||
});
|
||||
Reference in new issue
Block a user