ssh-

Форк
0
/
text_input.go 
45 строк · 798.0 Байт
1
package view
2

3
import (
4
	"github.com/spf13/viper"
5
	"slices"
6

7
	"ssh+/app/output"
8

9
	"github.com/erikgeiser/promptkit/textinput"
10
)
11

12
type TextInput struct {
13
	Arguments   [][]*string
14
	HiddenArgs  []*string
15
	Placeholder string
16
}
17

18
func (t TextInput) currentPlaceholder(name string) string {
19
	return viper.GetString("Space") + name + t.Placeholder
20
}
21

22
func (t TextInput) DrawInput() {
23
	var input *textinput.TextInput
24
	var err error
25

26
	for _, arg := range t.Arguments {
27
		input = textinput.New(*arg[0])
28

29
		input.ResultTemplate = ResultTemplateTextInput
30

31
		hiddenInput := slices.Contains(t.HiddenArgs, arg[1])
32

33
		if hiddenInput {
34
			input.Hidden = true
35
		}
36

37
		input.Placeholder = t.currentPlaceholder(*arg[0])
38

39
		*arg[1], err = input.RunPrompt()
40

41
		if err != nil {
42
			output.GetOutError("Input error")
43
		}
44
	}
45
}
46

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.