style(web): unify panel, group and state controls

Standardize panel actions, group filters, segmented modes, workbench tabs, message filters, identity controls and privacy toggles on the shared button scale. Add cascade-aware tests so stale compact sizes and low-contrast states cannot return.
This commit is contained in:
chick
2026-09-08 19:58:10 +08:00
parent bfe5025943
commit 001659ed91
7 changed files with 237 additions and 113 deletions
+11
View File
@@ -420,6 +420,17 @@ describe('FleetPage search and filter toolbar', () => {
});
describe('FleetPage batch and restart actions', () => {
it('keeps top-level create and batch actions on the same control scale', () => {
render(<FleetPage initialData={snapshot} />);
const create = screen.getByRole('link', { name: '添加实例' });
const batch = screen.getByRole('button', { name: '批量选择' });
expect(create.classList.contains('primary-action')).toBe(true);
expect(batch.classList.contains('animal-btn-small')).toBe(false);
expect(batch.className).toMatch(/animal-btn-middle-[A-Za-z0-9]+/);
});
it('keeps selection controls hidden until batch-selection mode is entered', () => {
render(<FleetPage initialData={snapshot} />);
expect(screen.queryByRole('checkbox', { name: /选择 Alpha modem/ })).toBeNull();