in tui/post_processors.go [137:168]
func validateDomain(domain string, q *Queue) tea.Cmd {
return func() tea.Msg {
projectID := q.Get("currentProject").(string)
domainInfo, err := q.client.DomainIsAvailable(projectID, domain)
if err != nil {
return errMsg{err: fmt.Errorf("validateDomain: error checking domain availability %w", err)}
}
q.Save("domainInfo", domainInfo)
q.Save("domain", domain)
if domainInfo.Availability == domainspb.RegisterParameters_UNAVAILABLE {
isVerified, err := q.client.DomainIsVerified(projectID, domain)
if err != nil {
return errMsg{
usermsg: "Trying to validate that you own this domain failed due to an error",
err: fmt.Errorf("validateDomain: error verifying domain: %s", err),
}
}
if !isVerified {
return errMsg{
usermsg: "Domain is owned by someone other than the requestor",
err: fmt.Errorf("validateDomain: not owned by requestor: %w", err),
}
}
return successMsg{}
}
return successMsg{}
}
}