Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update module github.com/charmbracelet/bubbles to v0.20.0 #106

Closed
wants to merge 1 commit into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 23, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
github.com/charmbracelet/bubbles v0.16.0 -> v0.20.0 age adoption passing confidence

Release Notes

charmbracelet/bubbles (github.com/charmbracelet/bubbles)

v0.20.0

Compare Source

Focus. Breathe.

This features support for Bubble Tea's new focus-blur feature as well as a quality-of-life update to paginator. Enjoy!

Focus

You heard that right. Focus-blur window events are now enabled for textinput and textarea which were recently added to Bubble Tea v1.1.0. As long as WithReportFocus is enabled in your Program you'll automatically get nicer inputs.

To enable focus reporting:

p := tea.NewProgram(model{}, tea.WithReportFocus())

Remember to stay focused and hydrated!

Paginator opts

Speaking of functional arguments, paginator also received some some new quality-of-life startup options, courtesy @​nervo.

p := paginator.New(
	paginator.WithPerPage(42),
	paginator.WithTotalPages(42),
)

Of course, you can still set the values on the model directly too:

p := paginator.New()
p.PerPage = 42
p.TotalPages = 24

Happy paging!

Changelog

New!
Deps

The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

v0.19.0

Compare Source

Bugs? Squashed (along with a few nice lil’ features).

Community-Driven Development?! Yep, the majority of the changes in this release were done by the community. Thank you all for your contributions that made this release possible.

Progress: custom chars

You can now customize the filled and empty characters of the progress bar.

p := progress.New(progress.WithFillCharacters('>', '.'))

progress bar example

Table improvements

Help is on the way

Table now includes a short and full help view so it's easier than ever to tell your users how to interact with the table.

// Render a table with its help.
t := table.New()
view := t.View() + "\n" + t.HelpView()
Accessing columns

You can also now get the table's columns (this already existed for rows).

package table

// Columns returns the current columns.
func (m Model) Columns() []Column

List: page navigation is fixed!

Previously, list.NextPage() and list.PrevPage() didn't work because the methods did not have pointer receivers. We've fixed this…by making them pointer receivers!

⚠️ Note that this is a minor API change and you might need to update your app to pass a pointer receiver to your model rather than a copy. Details in #​458.

package progress

// NextPage moves to the next page, if available.
func (m *Model) NextPage()

// PrevPage moves to the previous page, if available.
func (m *Model) PrevPage()

What’s Changed

Changed
Added
Fixed
Test coverage ✅

New Contributors

Full Changelog: charmbracelet/bubbles@v0.18.0...v0.19.0


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

v0.18.0

Compare Source

Textarea, but faster

This release features several fixes and big performance improvements for the textarea bubble.

What's Changed

New
Improved
Fixed

New Contributors

Full Changelog: charmbracelet/bubbles@v0.17.1...v0.18.0


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

v0.17.1

Compare Source

What's Changed

Full Changelog: charmbracelet/bubbles@v0.17.0...v0.17.1


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

v0.17.0

Compare Source

Text input autocompletions and various improvements

Autocompletion in Text Input

So @​toadle wanted textinputs to support autocompletion in a ghost-text kind of a way. Rather than wait for us to do it he did what any dedicated open source developer would: he sent a PR! And now we can all benefit from his hard work.

Autocompletion is super easy to use:

ti := textinput.New()
ti.SetSuggestions([]string{"meow", "purr"})

By default you can press ctrl+n and ctrl+p to cycle through suggestions, but those keybindings can be changed as you, the application developer, see fit. For details check out textinput.SetSuggestions and the corresponding KeyMap in the docs.

Is the progress bar done yet?

@​yrashk acutely noticed that to nicely transition from one state to another after an animated progress bar fills up it's helpful to know when the animated has finished animating before transitioning. To solve for this he added an IsAnimating method to the progress model. Thanks, @​yrashk!

Changelog

New!
Improved
Fixed

Full Changelog: charmbracelet/bubbles@v0.16.1...v0.17.0

New Contributors


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.

v0.16.1

Compare Source

File Picker Bubble 📁 🫧

This release introduces a brand new filepicker bubble, new features, and a tonne of bugfixes.
Let us know what you think, ask questions, or just say hello in our Discord.

File picker example

For a quick start on how to use this bubble, take a look at the Example code.

Getting Started

Create a new file picker and add it to your Bubble Tea model.

picker := filepicker.New()
picker.CurrentDirectory, err = os.UserHomeDir()
if err != nil {
    // ...
}

m := model{
    picker: picker,
    // ...
}

Initialize the file picker in your Model's Init function.

func (m model) Init() tea.Cmd {
    return tea.Batch(
        m.picker.Init(),
        // ...
    )
}

Update the filepicker as any other bubble in the Update function.
After the picker.Update, use the DidSelectFile(msg tea.Msg) function to perform an action when the user selects a valid file.
You may allow only certain file types to be selected with the AllowedTypes property and allow directories to be selected with the DirAllowed property. To see the currently selected file/directory use the Path property.

var cmd tea.Cmd
m.picker, cmd = m.picker.Update(msg)

// Did the user select a file?
if didSelect, path := m.picker.DidSelectFile(msg); didSelect {
	// Get the path of the selected file.
	return m, tea.Println("You selected: " + selectedPath)
}

return m, cmd

For the full example on how to use this bubble, take a look at the Example code.

New

Fixed

New Contributors

Full Changelog: charmbracelet/bubbles@v0.15.0...v0.16.0


The Charm logo

Thoughts? Questions? We love hearing from you. Feel free to reach out on Twitter, The Fediverse, or on Discord.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot requested a review from Clivern as a code owner October 23, 2024 21:43
Copy link
Contributor Author

renovate bot commented Oct 23, 2024

ℹ Artifact update notice

File name: go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

  • 7 additional dependencies were updated

Details:

Package Change
github.com/charmbracelet/bubbletea v0.27.0 -> v1.1.0
github.com/charmbracelet/lipgloss v0.6.0 -> v0.13.0
github.com/charmbracelet/x/ansi v0.1.4 -> v0.2.3
github.com/charmbracelet/x/term v0.1.1 -> v0.2.0
github.com/mattn/go-isatty v0.0.18 -> v0.0.20
github.com/mattn/go-runewidth v0.0.15 -> v0.0.16
github.com/sahilm/fuzzy v0.1.0 -> v0.1.1

@Clivern Clivern closed this Oct 23, 2024
Copy link
Contributor Author

renovate bot commented Oct 23, 2024

Renovate Ignore Notification

Because you closed this PR without merging, Renovate will ignore this update (v0.20.0). You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.

If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant