InputTask
InputTask
provides an interface for text data input with validation support.
Creating
Copy
Ask AI
task := ziva.NewInputTask("Username", "Enter name:")

Main Methods
Copy
Ask AI
// Settings
task.WithValidator(ziva.DefaultValidators.Email()) // validator
task.WithInputType(ziva.InputTypePassword) // field type
task.WithTimeout(30*time.Second, "default") // timeout
task.WithVisibleLength(20) // limit visible width with horizontal scroll
// Get result
value := task.GetValue() // string
Input Types
Copy
Ask AI
const (
InputTypeText = ziva.InputTypeText // regular text
InputTypePassword = ziva.InputTypePassword // password (hidden)
InputTypeEmail = ziva.InputTypeEmail // email
InputTypeNumber = ziva.InputTypeNumber // number
InputTypeIP = ziva.InputTypeIP // IP address
InputTypeDomain = ziva.InputTypeDomain // domain
)
Example with Validation
Copy
Ask AI
v := ziva.DefaultValidators
email := ziva.NewInputTask("Email", "Enter email:").
WithInputType(ziva.InputTypeEmail).
WithValidator(v.Email())
password := ziva.NewInputTask("Password", "Enter password:").
WithInputType(ziva.InputTypePassword).
WithValidator(v.StrongPassword())
queue := ziva.NewQueue("Registration")
queue.AddTasks(email, password)
queue.Run()
fmt.Printf("Email: %s\n", email.GetValue())
See Also
- Validation - detailed validation system