forms.go 653 B

123456789101112131415161718192021222324252627
  1. package ui
  2. import (
  3. "github.com/gdamore/tcell/v2"
  4. "github.com/rivo/tview"
  5. )
  6. func NewLoginForm(via string, onLoginFormLoginButtonSelected func()) (loginForm *tview.Form) {
  7. loginForm = tview.NewForm()
  8. loginForm.
  9. AddButton("Login", onLoginFormLoginButtonSelected).
  10. SetButtonsAlign(tview.AlignCenter).
  11. SetButtonBackgroundColor(tcell.GetColor("#5865F2")).
  12. SetBorder(true).
  13. SetBorderPadding(0, 0, 1, 1)
  14. if via == "token" {
  15. loginForm.AddPasswordField("Token", "", 0, 0, nil)
  16. } else if via == "emailpassword" {
  17. loginForm.
  18. AddInputField("Email", "", 0, nil, nil).
  19. AddPasswordField("Password", "", 0, 0, nil)
  20. }
  21. return loginForm
  22. }