Skip to content
This repository was archived by the owner on Aug 11, 2026. It is now read-only.
This repository was archived by the owner on Aug 11, 2026. It is now read-only.

feat(ui): add responsive admin navigation and reusable admin component library #693

Description

@ahliweb

Parent epic: #679

Evidence

Several admin pages are 800–1122 lines and repeat tables, filters, banners, dialogs, and form patterns. The shell uses a fixed ~220px sidebar without a complete responsive drawer pattern; tenant switching is visually present but disabled.

Objective

Create an accessible responsive admin foundation and migrate a small representative slice without a full redesign.

Scope

  • Add responsive sidebar/drawer, focus management, skip link, keyboard close, and active-route semantics.
  • Add reusable DataTable, Pagination, FilterBar, ActionBanner, ConfirmDialog, FormField, and StatusBadge primitives.
  • Standardize loading, empty, error, forbidden, and success states.
  • On single-tenant deployments show a non-interactive tenant badge; show a switcher only when capability/authorization exists.
  • Migrate two representative large pages and document adoption.
  • Preserve progressive enhancement and server-rendered/offline behavior.

Acceptance criteria

  • Layout works at 320px, tablet, desktop, zoom 200%, and keyboard-only use.
  • Components meet WCAG 2.2 AA semantics/contrast/focus requirements.
  • Destructive actions require clear confirmation and safe feedback.
  • E2E and automated accessibility smoke tests cover navigation and migrated pages.
  • No authorization decision relies on hidden/disabled UI alone.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:frontendAstro SSR, islands, UI clientarea:ui-uxDesign system, layout, layarpriority:p1Prioritas tinggi - core domaintype:featureFitur baru sesuai doc 06

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions