Documentation ¶
Overview ¶
Package eav10n provides utilities for verifying email addresses.
Package eav10n provides utilities for verifying email addresses.
Index ¶
- Variables
- type Config
- type InvalidEmailAddressError
- type SESConfig
- type VerificationMethod
- type Verifier
- func (verifier *Verifier) ConfirmVerification(callCtx iam.CallContext, verificationID int64, code string) error
- func (verifier *Verifier) GetEmailAddressByVerificationID(verificationID int64) (*iam.EmailAddress, error)
- func (verifier *Verifier) StartVerification(callCtx iam.CallContext, emailAddress iam.EmailAddress, codeTTL time.Duration, ...) (id int64, codeExpiry *time.Time, err error)
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrVerificationCodeMismatch = errors.New("code mismatch") ErrVerificationCodeExpired = errors.New("code expired") )
View Source
var ResourcesDirDefault string
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { CodeTTLDefault time.Duration `env:"CODE_TTL_DEFAULT"` ConfirmationAttemptsMax int16 `env:"CONFIRMATION_ATTEMPTS_MAX"` SenderAddress string `env:"SENDER_ADDRESS"` ResourcesDir string `env:"RESOURCES_DIR"` SES *SESConfig `env:"SES"` }
func ConfigFromEnv ¶
type InvalidEmailAddressError ¶
type InvalidEmailAddressError struct {
Err error
}
func (InvalidEmailAddressError) Error ¶
func (err InvalidEmailAddressError) Error() string
type SESConfig ¶
type SESConfig struct { Region string `env:"REGION,required"` AccessKeyID string `env:"ACCESS_KEY_ID"` SecretAccessKey string `env:"SECRET_ACCESS_KEY"` }
TODO: make module system like pnv10n
type VerificationMethod ¶
type VerificationMethod int
const ( VerificationMethodUnspecified VerificationMethod = iota VerificationMethodNone )
func VerificationMethodFromString ¶
func VerificationMethodFromString(str string) VerificationMethod
type Verifier ¶
type Verifier struct {
// contains filtered or unexported fields
}
func (*Verifier) ConfirmVerification ¶
func (*Verifier) GetEmailAddressByVerificationID ¶
func (verifier *Verifier) GetEmailAddressByVerificationID( verificationID int64, ) (*iam.EmailAddress, error)
func (*Verifier) StartVerification ¶
func (verifier *Verifier) StartVerification( callCtx iam.CallContext, emailAddress iam.EmailAddress, codeTTL time.Duration, userPreferredLanguages []language.Tag, preferredVerificationMethods []VerificationMethod, ) (id int64, codeExpiry *time.Time, err error)
TODO(exa): make the operations atomic
Click to show internal directories.
Click to hide internal directories.