diff --git a/cmd/survey/tasks/base.go b/cmd/survey/tasks/base.go index 582f8cf..1550bd9 100644 --- a/cmd/survey/tasks/base.go +++ b/cmd/survey/tasks/base.go @@ -71,6 +71,10 @@ func BaseQuestions(interfaceType task.InterfaceType) taskui.Questions { } } +func Question(fields ...huh.Field) *huh.Group { + return huh.NewGroup(fields...) +} + func ReplQuestion(interfaceType task.InterfaceType, fields ...huh.Field) *huh.Group { if interfaceType != InterfaceREPL { return nil @@ -78,14 +82,14 @@ func ReplQuestion(interfaceType task.InterfaceType, fields ...huh.Field) *huh.Gr return huh.NewGroup(fields...) } -func WebQuestion(questions *taskui.Questions, interfaceType task.InterfaceType, fields ...huh.Field) *huh.Group { +func WebQuestion(interfaceType task.InterfaceType, fields ...huh.Field) *huh.Group { if interfaceType != InterfaceWeb { return nil } return huh.NewGroup(fields...) } -func TUIQuestion(questions *taskui.Questions, interfaceType task.InterfaceType, fields ...huh.Field) *huh.Group { +func TUIQuestion(interfaceType task.InterfaceType, fields ...huh.Field) *huh.Group { if interfaceType != InterfaceTUI { return nil } diff --git a/cmd/survey/tasks/codingTask.go b/cmd/survey/tasks/codingTask.go index 3f45eee..0cf1372 100644 --- a/cmd/survey/tasks/codingTask.go +++ b/cmd/survey/tasks/codingTask.go @@ -40,9 +40,21 @@ func (t *CodingTask) Details() taskui.TaskDetails { func (t *CodingTask) Questions(interfaceType task.InterfaceType) (questions taskui.Questions) { return BaseQuestions(interfaceType). - With(ReplQuestion(interfaceType, - huh.NewInput().Title("Please write your code in the 'code.txt' file and save it."). - Placeholder("Write your code here...")), + With( + ReplQuestion(interfaceType, + huh.NewConfirm().Title("Question only for REPL interface")), + ). + With( + WebQuestion(interfaceType, + huh.NewInput().Title("Question only for Web interface")), + ). + With( + TUIQuestion(interfaceType, + huh.NewConfirm().Title("Question only for TUI interface")), + ). + With( + Question( + huh.NewConfirm().Title("One last question for all interfaces!")), ) }