refactor fstree to separate package

This commit is contained in:
2025-12-31 03:12:06 +00:00
parent 130e973be8
commit 74113ccdc0
6 changed files with 12 additions and 9 deletions
+1 -1
View File
@@ -6,7 +6,7 @@ fileopen
- ruinivist, 30Dec25
*/
package main
package fstree
import (
"errors"
+1 -1
View File
@@ -3,7 +3,7 @@ another test that is entirely ae ayee generated
- ruinivist, 30Dec25
*/
package main
package fstree
import (
"os"
+3 -2
View File
@@ -5,10 +5,11 @@ It is initialised at startup and used for state changes in UI and later persiste
- ruinivist, 30Dec25
*/
package main
package fstree
import (
"errors"
"mend/utils"
"path/filepath"
)
@@ -97,7 +98,7 @@ func (t *FsTreeImpl) DeleteNode(node *FsNode) error {
return errors.New("node to delete must have a parent")
}
parent.children = RemoveFromSlice(parent.children, node)
parent.children = utils.RemoveFromSlice(parent.children, node)
return nil
}
+1 -1
View File
@@ -5,7 +5,7 @@ few good uses of ae ayee in my opinion
- ruinivist, 30Dec25
*/
package main
package fstree
import (
"path/filepath"
+5 -3
View File
@@ -6,6 +6,8 @@ import (
"os"
"time"
fs "mend/fstree"
"github.com/charmbracelet/bubbles/spinner"
tea "github.com/charmbracelet/bubbletea"
"github.com/charmbracelet/lipgloss"
@@ -36,7 +38,7 @@ this data in msg when returned to the update func is used to update the model
type model struct {
width int
tree *FsTreeImpl
tree *fs.FsTreeImpl
// spinner needs to be state as I need to update the spinner on
// each tick in update func
spinner spinner.Model
@@ -61,7 +63,7 @@ func createModel() model {
// these need to be on the "model" ( duck typing "implements" interface )
type treeLoadedMsg struct {
tree *FsTreeImpl
tree *fs.FsTreeImpl
}
func loadTreeCmd() tea.Msg {
@@ -72,7 +74,7 @@ func loadTreeCmd() tea.Msg {
fmt.Println("Error getting cwd:", err)
os.Exit(1)
}
return treeLoadedMsg{tree: NewFsTree(cwd)}
return treeLoadedMsg{tree: fs.NewFsTree(cwd)}
}
func (m model) Init() tea.Cmd {
+1 -1
View File
@@ -1,4 +1,4 @@
package main
package utils
// Removes the first occurence from the slice. Worst case O(n)
func RemoveFromSlice[T comparable](slice []T, item T) []T {