@@ -144,6 +144,24 @@ func (f *ModelsList) SelectLast() (v bool) {
147+// IsSelectedFirst checks if the selected item is the first model item.
148+func (f *ModelsList) IsSelectedFirst() bool {
149+ originalIndex := f.List.Selected()
151+ isFirst := f.List.Selected() == originalIndex
152+ f.List.SetSelected(originalIndex)
156+// IsSelectedLast checks if the selected item is the last model item.
157+func (f *ModelsList) IsSelectedLast() bool {
158+ originalIndex := f.List.Selected()
160+ isLast := f.List.Selected() == originalIndex
161+ f.List.SetSelected(originalIndex)
147// VisibleItems returns the visible items after filtering.
165// VisibleItems returns the visible items after filtering.
148func (f *ModelsList) VisibleItems() []list.Item {
166func (f *ModelsList) VisibleItems() []list.Item {
149 if f.query == "" {
167 if f.query == "" {