calamity-0.8.0.0: A library for writing discord bots in haskell
Safe HaskellSafe-Inferred
LanguageHaskell2010

Calamity.Types.Model.Channel.Embed

Description

Message embeds

Synopsis

Documentation

data Embed Source #

Instances

Instances details
FromJSON Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

ToJSON Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Monoid Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

mempty :: Embed #

mappend :: Embed -> Embed -> Embed #

mconcat :: [Embed] -> Embed #

Semigroup Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

(<>) :: Embed -> Embed -> Embed #

sconcat :: NonEmpty Embed -> Embed #

stimes :: Integral b => b -> Embed -> Embed #

Show Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

showsPrec :: Int -> Embed -> ShowS #

show :: Embed -> String #

showList :: [Embed] -> ShowS #

CalamityToJSON' Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

toPairs :: KeyValue kv => Embed -> [Maybe kv] Source #

ToMessage Embed Source #

Message embed, (<>) appends a new embed

Instance details

Defined in Calamity.Types.Tellable

Default Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

def :: Embed #

Eq Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

(==) :: Embed -> Embed -> Bool #

(/=) :: Embed -> Embed -> Bool #

TextShow Embed Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe EmbedAuthor, b ~ Maybe EmbedAuthor) => LabelOptic "author" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe (Colour Double), b ~ Maybe (Colour Double)) => LabelOptic "color" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "description" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ [EmbedField], b ~ [EmbedField]) => LabelOptic "fields" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe EmbedFooter, b ~ Maybe EmbedFooter) => LabelOptic "footer" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe EmbedImage, b ~ Maybe EmbedImage) => LabelOptic "image" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe EmbedProvider, b ~ Maybe EmbedProvider) => LabelOptic "provider" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe EmbedThumbnail, b ~ Maybe EmbedThumbnail) => LabelOptic "thumbnail" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe UTCTime, b ~ Maybe UTCTime) => LabelOptic "timestamp" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "title" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "type_" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "url" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

(k ~ A_Lens, a ~ Maybe EmbedVideo, b ~ Maybe EmbedVideo) => LabelOptic "video" k Embed Embed a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

labelOptic :: Optic k NoIx Embed Embed a b #

embedFooter :: Text -> EmbedFooter Source #

Create an embed footer with a provided content

The remaining fields are set to Nothing

embedImage :: Text -> EmbedImage Source #

Create an embed image with a provided url

The remaining fields are set to Nothing

embedThumbnail :: Text -> EmbedThumbnail Source #

Create an embed thumbnail with a provided url

The remaining fields are set to Nothing

embedAuthor :: Text -> EmbedAuthor Source #

Create an embed author with the given name

The remaining fields are set to Nothing

embedAuthor' Source #

Arguments

:: Text

Name

-> Text

Url

-> Text

Icon url

-> EmbedAuthor 

Create an embed author with the given name, url, and icon url

The remaining fields are set to Nothing

embedField Source #

Arguments

:: Text

Name

-> Text

Value

-> EmbedField 

Create a non-inline embed field

data EmbedFooter Source #

Constructors

EmbedFooter 

Instances

Instances details
FromJSON EmbedFooter Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

ToJSON EmbedFooter Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Semigroup EmbedFooter Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Show EmbedFooter Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

CalamityToJSON' EmbedFooter Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

toPairs :: KeyValue kv => EmbedFooter -> [Maybe kv] Source #

Eq EmbedFooter Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

TextShow EmbedFooter Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "iconUrl" k EmbedFooter EmbedFooter a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "proxyIconUrl" k EmbedFooter EmbedFooter a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "text" k EmbedFooter EmbedFooter a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

data EmbedImage Source #

Constructors

EmbedImage 

Instances

Instances details
FromJSON EmbedImage Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

ToJSON EmbedImage Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Show EmbedImage Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

CalamityToJSON' EmbedImage Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

toPairs :: KeyValue kv => EmbedImage -> [Maybe kv] Source #

Eq EmbedImage Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

TextShow EmbedImage Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Word64, b ~ Maybe Word64) => LabelOptic "height" k EmbedImage EmbedImage a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "proxyUrl" k EmbedImage EmbedImage a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "url" k EmbedImage EmbedImage a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Word64, b ~ Maybe Word64) => LabelOptic "width" k EmbedImage EmbedImage a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

data EmbedThumbnail Source #

Instances

Instances details
FromJSON EmbedThumbnail Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

ToJSON EmbedThumbnail Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Show EmbedThumbnail Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

CalamityToJSON' EmbedThumbnail Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

toPairs :: KeyValue kv => EmbedThumbnail -> [Maybe kv] Source #

Eq EmbedThumbnail Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

TextShow EmbedThumbnail Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Word64, b ~ Maybe Word64) => LabelOptic "height" k EmbedThumbnail EmbedThumbnail a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "proxyUrl" k EmbedThumbnail EmbedThumbnail a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "url" k EmbedThumbnail EmbedThumbnail a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Word64, b ~ Maybe Word64) => LabelOptic "width" k EmbedThumbnail EmbedThumbnail a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

data EmbedVideo Source #

Constructors

EmbedVideo 

Instances

Instances details
FromJSON EmbedVideo Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

ToJSON EmbedVideo Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Show EmbedVideo Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

CalamityToJSON' EmbedVideo Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

toPairs :: KeyValue kv => EmbedVideo -> [Maybe kv] Source #

Eq EmbedVideo Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

TextShow EmbedVideo Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Word64, b ~ Maybe Word64) => LabelOptic "height" k EmbedVideo EmbedVideo a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "proxyUrl" k EmbedVideo EmbedVideo a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "url" k EmbedVideo EmbedVideo a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Word64, b ~ Maybe Word64) => LabelOptic "width" k EmbedVideo EmbedVideo a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

data EmbedProvider Source #

Constructors

EmbedProvider 

Fields

Instances

Instances details
FromJSON EmbedProvider Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

ToJSON EmbedProvider Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Show EmbedProvider Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

CalamityToJSON' EmbedProvider Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

toPairs :: KeyValue kv => EmbedProvider -> [Maybe kv] Source #

Eq EmbedProvider Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

TextShow EmbedProvider Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "name" k EmbedProvider EmbedProvider a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "url" k EmbedProvider EmbedProvider a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

data EmbedAuthor Source #

Instances

Instances details
FromJSON EmbedAuthor Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

ToJSON EmbedAuthor Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Show EmbedAuthor Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

CalamityToJSON' EmbedAuthor Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

toPairs :: KeyValue kv => EmbedAuthor -> [Maybe kv] Source #

Default EmbedAuthor Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

def :: EmbedAuthor #

Eq EmbedAuthor Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

TextShow EmbedAuthor Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "iconUrl" k EmbedAuthor EmbedAuthor a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "name" k EmbedAuthor EmbedAuthor a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "proxyIconUrl" k EmbedAuthor EmbedAuthor a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Maybe Text, b ~ Maybe Text) => LabelOptic "url" k EmbedAuthor EmbedAuthor a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

data EmbedField Source #

Constructors

EmbedField 

Fields

Instances

Instances details
FromJSON EmbedField Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

ToJSON EmbedField Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Show EmbedField Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

CalamityToJSON' EmbedField Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

Methods

toPairs :: KeyValue kv => EmbedField -> [Maybe kv] Source #

Eq EmbedField Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

TextShow EmbedField Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Bool, b ~ Bool) => LabelOptic "inline" k EmbedField EmbedField a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "name" k EmbedField EmbedField a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "value" k EmbedField EmbedField a b Source # 
Instance details

Defined in Calamity.Types.Model.Channel.Embed