forms.go 776 B

1234567891011121314151617181920212223242526272829303132333435
  1. package ui
  2. import (
  3. "github.com/gdamore/tcell/v2"
  4. "github.com/rivo/tview"
  5. )
  6. func newBaseLoginForm() (f *tview.Form) {
  7. f = tview.NewForm()
  8. f.
  9. SetButtonsAlign(tview.AlignCenter).
  10. SetButtonBackgroundColor(tcell.GetColor("#5865F2")).
  11. SetBorder(true).
  12. SetBorderPadding(0, 0, 1, 0)
  13. return
  14. }
  15. func NewLoginForm(onLoginFormLoginButtonSelected func()) (f *tview.Form) {
  16. f = newBaseLoginForm()
  17. f.
  18. AddInputField("Email", "", 0, nil, nil).
  19. AddPasswordField("Password", "", 0, 0, nil).
  20. AddButton("Login", onLoginFormLoginButtonSelected)
  21. return
  22. }
  23. func NewMfaLoginForm(onMfaLoginFormLoginButtonSelected func()) (f *tview.Form) {
  24. f = newBaseLoginForm().
  25. AddPasswordField("Code", "", 0, 0, nil).
  26. AddButton("Login", onMfaLoginFormLoginButtonSelected)
  27. return
  28. }