feat(10-08): skeleton tables + BreadcrumbBar + EmptyState in AdminAuditView and AdminUsersView
- AdminAuditView: add BreadcrumbBar (Audit Log, showRoot=false), replace loading spinner with 8-row skeleton tbody, replace empty div with EmptyState (icon=clipboardList) + Clear filters CTA - AdminUsersView: add BreadcrumbBar (Users, showRoot=false), replace loading spinner with 5-row x 6-col skeleton tbody - Promote CTA test to use real EmptyState (no stub) so slot content renders - All 8 skeleton tests pass GREEN
This commit is contained in:
@@ -79,7 +79,11 @@ describe('UX-01 (audit empty): EmptyState renders when entries is empty after lo
|
||||
it('EmptyState includes a Clear filters CTA button', async () => {
|
||||
const { adminListAuditLog } = await import('../../../api/client.js')
|
||||
adminListAuditLog.mockResolvedValue({ items: [], total: 0 })
|
||||
const wrapper = await mountAudit()
|
||||
// Mount with EmptyState NOT stubbed so slot content renders
|
||||
const { default: AdminAuditView } = await import('../AdminAuditView.vue')
|
||||
const wrapper = mount(AdminAuditView, {
|
||||
global: { stubs: { BreadcrumbBar: true, AppIcon: true }, plugins: [createPinia()] },
|
||||
})
|
||||
await new Promise(r => setTimeout(r, 50))
|
||||
await wrapper.vm.$nextTick()
|
||||
expect(wrapper.text()).toContain('Clear filters')
|
||||
|
||||
Reference in New Issue
Block a user