• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umputun / revdiff / 24277672794 / 1
90%
master: 90%

Build:
DEFAULT BRANCH: master
Ran 11 Apr 2026 07:30AM UTC
Files 37
Run time 1s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

11 Apr 2026 07:29AM UTC coverage: 88.4% (+0.2%) from 88.217%
24277672794.1

push

github

web-flow
refactor(ui): extract style sub-package with Resolver/Renderer/SGR (#92)

* docs: add style extraction implementation plan

Add plan for extracting color/style logic from app/ui into
dedicated app/ui/style sub-package with Resolver, Renderer,
and SGR types. Include go-pkgz/enum dependency.

* feat(style): add style sub-package with Resolver, Renderer, SGR types

Create app/ui/style/ package containing:
- Color type with HSL helpers and hex-to-ANSI conversion
- colorKey/styleKey enums via go-pkgz/enum
- Colors struct with normalizeColors for theme color management
- Resolver for static and runtime style/color lookups
- Renderer for compound ANSI assembly (annotations, cursor, status bar)
- SGR processor for ANSI state tracking across wrap-mode continuation lines

* refactor(ui): migrate all UI files to style sub-package API

Wire Resolver, Renderer, and SGR into Model and main.go.
Migrate all UI files (view, diffview, collapsed, filetree,
annotate, annotlist, handlers, mdtoc, themeselect) from
inline color/style logic to style package API calls.
Delete old styles.go and colorutil.go. Convert Colors
helpers to methods. Add consumer-side style interfaces.

* refactor(ui): inject style dependencies via interfaces and ModelConfig

Replace concrete style types with consumer-side interfaces
(styleResolver, styleRenderer, sgrProcessor) in Model.
Consolidate NewModel to accept single ModelConfig struct
with all dependencies injected explicitly. Fold deps.go
into model.go.

* docs(plan): reflect ansi.go merged into color.go

An early draft of the plan scoped a separate ansi.go + ansi_test.go for
the Write helper, private ansiColor, and hexVal. During implementation
those were consolidated into color.go / color_test.go because they are
tightly-related ANSI-output machinery that belongs next to the Color
type — splitting them fragmented a conceptual unit.

Update the plan to reflect what actually shipped:
- file layout: remove ansi.go / ansi_test.go lines, expand... (continued)

6066 of 6862 relevant lines covered (88.4%)

382.9 hits per line

Source Files on job 24277672794.1
  • Tree
  • List 37
  • Changed 11
  • Source Changed 0
  • Coverage Changed 11
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 24277672794
  • 317cd37e on github
  • Prev Job for on master (#24269886359.1)
  • Next Job for on master (#24277753967.1)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc