goharbor / goharbor/harbor-cli
[Tracker] Bubbletea Model Refactor (Loading + Init/Tick Integration)
- Dominant language
- Go
- Stars
- 163
- Forks
- 211
- Avg merge
- 1m
- Merged PRs (30d)
- 1
Description
## Overview
Re-pickup and refactor of the Bubbletea model to better utilize built-in features like `tea.Init()` and `tea.Tick()` for improved loading states and UX consistency.
## Goals
- Introduce proper loading states using Bubbletea primitives
- Standardize async behavior across views
- Prepare for a unified table/list abstraction
## Tasks
- [ ] Utilize `tea.Init()` and `tea.Tick()` to implement loading states
- [ ] Identify and refactor commands/views that should display loading
- [ ] Convert existing components to use `loadingtablelist`
- [ ] Once migration is complete, rename `loadingtablelist` → `tablelist`
## Model Refactor Tracker
Track which models have been migrated to the new loading + init/tick pattern:
- [ ] tablelist
- [ ] selection
- [ ] multiselect
- [ ] tablegrid
> Mark each as complete once it fully adopts the new pattern (loading state + proper init/tick usage).
## Reference
- https://github.com/goharbor/harbor-cli/issues/756
## Notes
This is a tracker issue.
A more expansive issue will follow, covering the full scope of the problem and the complete refactor plan.
This issue acts as a prequel — setting up the groundwork and introducing initial structural changes.
## Ownership
This is being actively worked on by @NucleoFusion
Contributor guide
Assessment
This issue has not been assessed yet.