MCPcopy Create free account
hub / github.com/SamNet-dev/snix / Update

Method Update

tui/settings.go:92–134  ·  view source on GitHub ↗
(msg tea.Msg)

Source from the content-addressed store, hash-verified

90func (m settingsModel) Init() tea.Cmd { return nil }
91
92func (m settingsModel) Update(msg tea.Msg) (settingsModel, tea.Cmd) {
93 if m.app.cfg == nil {
94 return m, nil
95 }
96 its := m.items()
97 if len(its) == 0 {
98 return m, nil
99 }
100 switch msg := msg.(type) {
101 case tea.KeyMsg:
102 switch msg.String() {
103 case "up", "k":
104 if m.cursor > 0 {
105 m.cursor--
106 }
107 case "down", "j":
108 if m.cursor < len(its)-1 {
109 m.cursor++
110 }
111 case " ", "enter":
112 its[m.cursor].toggle()
113 return m, m.persist()
114 case "+", "=":
115 if its[m.cursor].label == "IP ID delta range" {
116 p, _ := m.app.cfg.Lookup(m.app.cfg.Active)
117 p.Spoof.IPIDDeltaRange = maxOne(p.Spoof.IPIDDeltaRange) + 4
118 return m, m.persist()
119 }
120 case "-", "_":
121 if its[m.cursor].label == "IP ID delta range" {
122 p, _ := m.app.cfg.Lookup(m.app.cfg.Active)
123 if p.Spoof.IPIDDeltaRange > 1 {
124 p.Spoof.IPIDDeltaRange -= 4
125 if p.Spoof.IPIDDeltaRange < 1 {
126 p.Spoof.IPIDDeltaRange = 1
127 }
128 return m, m.persist()
129 }
130 }
131 }
132 }
133 return m, nil
134}
135
136func (m settingsModel) View() string {
137 if m.app.cfg == nil {

Callers

nothing calls this directly

Calls 5

itemsMethod · 0.95
persistMethod · 0.95
maxOneFunction · 0.85
StringMethod · 0.80
LookupMethod · 0.80

Tested by

no test coverage detected