1package viewport
2
3import (
4 "github.com/charmbracelet/bubbles/viewport"
5 tea "github.com/charmbracelet/bubbletea"
6)
7
8// ViewportBubble represents a viewport component.
9type ViewportBubble struct {
10 Viewport *viewport.Model
11}
12
13// SetSize implements common.Component.
14func (v *ViewportBubble) SetSize(width, height int) {
15 v.Viewport.Width = width
16 v.Viewport.Height = height
17}
18
19// Init implements tea.Model.
20func (v *ViewportBubble) Init() tea.Cmd {
21 return nil
22}
23
24// Update implements tea.Model.
25func (v *ViewportBubble) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
26 vp, cmd := v.Viewport.Update(msg)
27 v.Viewport = &vp
28 return v, cmd
29}
30
31// View implements tea.Model.
32func (v *ViewportBubble) View() string {
33 return v.Viewport.View()
34}