Package devpanel renders the time-travel devtools UI as a GoWebComponents component — the
framework dogfooding its own engine. It is the visual consumer of the pure
timetravel.History engine (C4/FB6): a scrubber timeline plus step-back/step-forward
controls. The engine stays free of any UI dependency; this package is the thin view over
it.
Panel renders the time-travel timeline: a row of step-back/step-forward controls and a
list of snapshot labels with the current one marked (aria-current) and each clickable to
scrub to that point. Drop it into a devtools surface; restyle via the gwc-timetravel
classes.
type Model interface {
Labels() []string Cursor() int}
Model is the read view a time-travel panel needs — satisfied by *timetravel.History[T] for
any T, so the panel renders any history without being generic itself.
type Props struct {
Model Model OnUndo func()
OnRedo func()
OnScrub func(parseIndex int)
}
Props configures a Panel: the history to display and the navigation callbacks (each wired
to the matching timetravel.History method by the host, which also triggers its own
re-render after navigating).