Files
whatsapp-inbox-platform/komponen-ui-checklist-whatsapp-inbox.md
Wira Basalamah adde003fba
Some checks failed
CI - Production Readiness / Verify (push) Has been cancelled
chore: initial project import
2026-04-21 09:29:29 +07:00

518 lines
8.9 KiB
Markdown

# Komponen UI Checklist WhatsApp Inbox MVP
Dokumen ini merangkum komponen UI yang perlu disiapkan untuk semua screen. Checklist ini berguna untuk:
- tim desain membuat design system minimum
- tim frontend memecah komponen reusable
- menjaga konsistensi antar screen
Format checklist:
- `Global`
- `Navigation`
- `Data Display`
- `Forms`
- `Inbox`
- `Contacts`
- `Campaigns`
- `Reports`
- `Billing`
- `Feedback States`
## 1. Foundations
### 1.1 Design Tokens
- color palette primary, success, warning, error, neutral
- typography scale
- spacing scale
- border radius scale
- shadows
- z-index layers
- icon size scale
### 1.2 Responsive Rules
- desktop main layout
- tablet fallback
- mobile stacking rules
- sidebar collapse behavior
### 1.3 Content Rules
- date time format
- currency format
- phone number format
- status label copy
- empty state copy
## 2. Global Navigation
### 2.1 Sidebar
- role-based sidebar container
- sidebar section label
- nav item
- nav item with badge
- collapsed sidebar state
### 2.2 Topbar
- page title block
- breadcrumb
- tenant/workspace indicator
- channel status indicator
- search trigger
- notifications trigger
- profile dropdown
### 2.3 Search and Notifications
- global search modal/overlay
- notification center panel
- notification item
## 3. Core Layout Components
### 3.1 Page Structure
- page container
- page header
- page subtitle
- action bar
- filter bar
- split view layout
- right-side inspector panel
- sticky section header
### 3.2 Panels and Containers
- card
- stat card
- info panel
- section container
- tab container
- accordion
- drawer
- modal
## 4. Buttons and Actions
### 4.1 Buttons
- primary button
- secondary button
- tertiary / ghost button
- danger button
- icon button
- loading button
### 4.2 Action Patterns
- dropdown action menu
- inline action link
- confirmation action
- bulk action bar
## 5. Forms
### 5.1 Inputs
- text input
- email input
- password input
- phone number input
- textarea
- search input
- number input
### 5.2 Selectors
- single select
- multi select
- async search select
- combobox
- radio group
- checkbox
- switch/toggle
- date picker
- date range picker
- time picker
### 5.3 Upload
- file upload zone
- CSV upload component
- avatar uploader
### 5.4 Form Feedback
- inline validation error
- helper text
- success state
- disabled state
- submit progress
## 6. Data Display
### 6.1 Tables and Lists
- data table
- table toolbar
- sortable column header
- paginated table
- empty table state
- list item row
- selectable row
### 6.2 Status and Metadata
- badge
- status pill
- tag chip
- avatar
- avatar group
- timestamp label
- metric delta indicator
### 6.3 Charts and KPI
- KPI card
- line chart wrapper
- bar chart wrapper
- donut/pie summary
- legend
- metric summary row
## 7. Auth Components
### 7.1 Login / Password
- auth card layout
- login form
- forgot password form
- reset password form
- password rules hint
### 7.2 Invitation
- invitation accept form
- invite success message
### 7.3 Auth Feedback
- invalid credentials alert
- account disabled alert
- token expired state
## 8. Inbox Components
Inbox adalah area terpenting. Komponen di sini harus diprioritaskan.
### 8.1 Inbox Layout
- inbox filter tabs
- inbox filter toolbar
- conversation list container
- conversation row item
- unread badge
- assignment indicator
- priority indicator
### 8.2 Conversation Detail
- conversation header
- status selector
- priority selector
- assignment selector
- conversation metadata row
- message timeline
- message group
- message bubble inbound
- message bubble outbound
- delivery status marker
- attachment preview
- template message block
- composer toolbar
- reply composer
- send button
### 8.3 Context Panels
- customer summary card
- tag manager
- note list
- add note input
- activity log list
- activity event row
### 8.4 Productivity Tools
- canned response picker
- template picker
- assign/reassign modal
- follow-up indicator
### 8.5 Inbox Feedback States
- no conversation selected
- empty inbox
- loading timeline
- send failed alert
- disconnected channel alert
## 9. Contact Components
### 9.1 Contact List
- contact row
- contact table
- contact search toolbar
- opt-in badge
### 9.2 Contact Form
- contact form section
- phone validation hint
- duplicate warning
### 9.3 Contact Detail
- contact profile card
- custom field block
- conversation history list
- campaign history list
- segment membership list
### 9.4 Import / Export
- import stepper
- field mapping table
- validation preview table
- import result summary
- export options form
### 9.5 Segments
- segment row
- segment rule builder simple
- member count badge
## 10. Template Components
### 10.1 Template List
- template row
- approval status badge
- category badge
### 10.2 Template Form
- template builder form
- header selector
- body editor
- footer input
- button config block
- template preview panel
### 10.3 Template Detail
- provider info block
- rejected reason alert
- resubmit action group
## 11. Campaign Components
### 11.1 Campaign List
- campaign row
- campaign KPI strip
- campaign status badge
### 11.2 Create Campaign Flow
- stepper
- campaign metadata form
- audience source selector
- segment picker
- schedule picker
- recipient estimate block
- review summary block
- warnings panel
### 11.3 Campaign Detail
- campaign summary header
- delivery stats cards
- send timeline
- delivery trend chart
- error breakdown list
- recipient list table
### 11.4 Campaign Recipient States
- queued badge
- sent badge
- delivered badge
- read badge
- failed badge
- skipped badge
## 12. Team / User Components
### 12.1 Users List
- user row
- role badge
- status badge
- last login field
### 12.2 User Form
- role selector
- user status toggle
### 12.3 User Detail
- user profile panel
- assigned workload stat
- personal performance widget
### 12.4 Team Performance
- leaderboard table
- workload summary
- response time comparison
## 13. Reports Components
### 13.1 Reports Overview
- report card
- report group section
### 13.2 Report Detail
- report filter bar
- KPI row
- chart card
- breakdown table
- export action
### 13.3 Specific Metrics
- response time distribution widget
- resolution rate summary
- agent productivity leaderboard
- campaign performance chart
- contact growth chart
## 14. Billing Components
### 14.1 Billing Overview
- current plan card
- quota usage cards
- renewal summary
- upgrade CTA
### 14.2 Invoices
- invoice table
- payment status badge
- invoice summary panel
### 14.3 Usage
- usage progress bar
- quota warning alert
## 15. Super Admin Components
### 15.1 Tenant Management
- tenant row
- tenant status badge
- plan badge
- usage summary cell
### 15.2 Tenant Detail
- tenant summary cards
- seat usage widget
- recent activity panel
### 15.3 Channel Management
- channel row
- provider badge
- webhook status badge
- connection validation result
- reconnect action group
### 15.4 Platform Monitoring
- global KPI cards
- alert feed
- platform health chart
- failure monitoring table
### 15.5 Governance
- audit log table
- log metadata drawer
- webhook log payload viewer
- security event list
### 15.6 Platform Settings
- feature flag toggle row
- pricing config form
- settings section header
## 16. Shared Settings Components
### 16.1 Tenant Settings
- settings side nav
- business hours editor
- auto assignment rules form
- chat tags manager
- canned responses manager
- webhook config form
### 16.2 Profile Settings
- profile summary card
- edit profile form
- change password form
## 17. Feedback and State Components
### 17.1 Feedback
- success toast
- error toast
- warning toast
- info toast
- inline alert
### 17.2 Empty States
- no conversations
- no contacts
- no campaigns
- no templates
- no reports data
- no tenants
- no invoices
### 17.3 Loading States
- page skeleton
- card skeleton
- list row skeleton
- timeline skeleton
- form loading state
### 17.4 Error States
- generic error
- permission denied
- disconnected integration
- failed delivery
- failed upload
### 17.5 Confirmation States
- suspend tenant confirmation
- deactivate user confirmation
- disconnect channel confirmation
- send campaign confirmation
- mark spam confirmation
## 18. Prioritas Implementasi Komponen
Kalau harus dibangun bertahap, urutan paling masuk akal:
1. foundations
2. navigation
3. page layout
4. buttons dan form primitives
5. data table, badge, card
6. inbox components
7. contact components
8. campaign components
9. user/team components
10. report components
11. billing components
12. super admin components
13. settings components
14. feedback states
## 19. Minimum Reusable Component Set
Kalau tim ingin mulai dari set minimum:
- app shell
- sidebar
- topbar
- page header
- card
- stat card
- data table
- badge
- modal
- drawer
- text input
- select
- date picker
- tabs
- split layout
- conversation row
- message bubble
- reply composer
- note list
- activity list
- chart wrapper
- toast/alert
Set ini sudah cukup untuk membangun mayoritas screen MVP.