newsletter-0: A basic newsletter implimentation, using various backends.

Safe HaskellNone
LanguageHaskell2010

Network.Mail.Newsletter.Web.API

Synopsis

Documentation

class HasApiRoot m where Source #

Associated Types

type ApiRoot m Source #

Methods

apiRoot :: m (Proxy (ApiRoot m)) Source #

apiBase :: m URI Source #

class DedupSubscriptions m where Source #

A class to avoid repeated emailing someone even if they sign up multiple times.

Methods

recentlySubscribed :: Address -> m Bool Source #

class HasClientSessionKey k where Source #

Methods

clientSessionKey :: Lens' k Key Source #

Instances
HasClientSessionKey Key Source # 
Instance details

Defined in Network.Mail.Newsletter.Web.API

Methods

clientSessionKey :: Lens' Key Key Source #

class HasAllowedOrigins t where Source #

Methods

allowedOrigins :: Lens' t [URIAuth] Source #

type NewsletterUnsubGet = "unsubscribe" :> (Capture "unsub" Text :> Get '[HTML] (Headers '[Header "Referrer-Policy" RefPolicy] Html)) Source #

type NewsletterUnsubPost = "unsubscribe" :> (Capture "unsub" Text :> Post '[HTML] (Headers '[Header "Referrer-Policy" RefPolicy] Html)) Source #

type NewsletterSubGet = Get '[HTML] Html Source #

type NewsletterSubPost = Header "Origin" String :> (Header "Referer" String :> (ReqBody '[FormUrlEncoded] Form :> Post '[HTML] Html)) Source #

type NewsletterSubConfirmGet = "confirm" :> (Capture "sub" Text :> Get '[HTML] (Headers '[Header "Referrer-Policy" RefPolicy] Html)) Source #

type NewsletterSubConfirmPost = "confirm" :> (Capture "sub" Text :> Post '[HTML] (Headers '[Header "Referrer-Policy" RefPolicy] Html)) Source #

data SignupReq Source #

Constructors

SignupReq 

Fields