Current section

Files

Jump to
glitch src glitch@types@event.erl
Raw

src/glitch@types@event.erl

-module(glitch@types@event).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([decoder/0]).
-export_type([event/0]).
-type event() :: {message_event,
list(glitch@types@badge:badge()),
binary(),
binary(),
binary(),
binary(),
binary(),
binary(),
binary(),
glitch@types@message:message(),
binary(),
glitch@types@message:message_type(),
gleam@option:option(glitch@types@cheer:cheer()),
gleam@option:option(binary()),
gleam@option:option(glitch@types@message:reply())} |
{channel_points_custom_reward_redemption_add_event,
binary(),
binary(),
binary(),
binary(),
binary(),
binary(),
binary(),
binary(),
glitch@types@reward:status(),
glitch@types@reward:reward(),
binary()}.
-spec channel_chat_messsage_event_decoder() -> fun((gleam@dynamic:dynamic_()) -> {ok,
event()} |
{error, list(gleam@dynamic:decode_error())}).
channel_chat_messsage_event_decoder() ->
glitch@extended@dynamic_ext:decode14(
fun(Field@0, Field@1, Field@2, Field@3, Field@4, Field@5, Field@6, Field@7, Field@8, Field@9, Field@10, Field@11, Field@12, Field@13) -> {message_event, Field@0, Field@1, Field@2, Field@3, Field@4, Field@5, Field@6, Field@7, Field@8, Field@9, Field@10, Field@11, Field@12, Field@13} end,
gleam@dynamic:field(
<<"badges"/utf8>>,
gleam@dynamic:list(glitch@types@badge:decoder())
),
gleam@dynamic:field(
<<"broadcaster_user_id"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(
<<"broadcaster_user_login"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(
<<"broadcaster_user_name"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(
<<"chatter_user_id"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(
<<"chatter_user_login"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(
<<"chatter_user_name"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(<<"color"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(<<"message"/utf8>>, glitch@types@message:decoder()),
gleam@dynamic:field(<<"message_id"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(
<<"message_type"/utf8>>,
glitch@types@message:messsage_type_decoder()
),
gleam@dynamic:optional_field(
<<"cheer"/utf8>>,
glitch@types@cheer:decoder()
),
gleam@dynamic:optional_field(
<<"channel_points_custom_reward_id"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:optional_field(
<<"reply"/utf8>>,
glitch@types@message:reply_decoder()
)
).
-spec channel_points_custom_reward_redemption_add_event_decoder() -> fun((gleam@dynamic:dynamic_()) -> {ok,
event()} |
{error, list(gleam@dynamic:decode_error())}).
channel_points_custom_reward_redemption_add_event_decoder() ->
glitch@extended@dynamic_ext:decode11(
fun(Field@0, Field@1, Field@2, Field@3, Field@4, Field@5, Field@6, Field@7, Field@8, Field@9, Field@10) -> {channel_points_custom_reward_redemption_add_event, Field@0, Field@1, Field@2, Field@3, Field@4, Field@5, Field@6, Field@7, Field@8, Field@9, Field@10} end,
gleam@dynamic:field(<<"id"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(
<<"broadcaster_user_id"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(
<<"broadcaster_user_login"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(
<<"broadcaster_user_name"/utf8>>,
fun gleam@dynamic:string/1
),
gleam@dynamic:field(<<"user_id"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(<<"user_login"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(<<"user_name"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(<<"user_input"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(
<<"status"/utf8>>,
glitch@types@reward:reward_status_decoder()
),
gleam@dynamic:field(
<<"reward"/utf8>>,
glitch@types@reward:reward_decoder()
),
gleam@dynamic:field(<<"redeemed_at"/utf8>>, fun gleam@dynamic:string/1)
).
-spec decoder() -> fun((gleam@dynamic:dynamic_()) -> {ok, event()} |
{error, list(gleam@dynamic:decode_error())}).
decoder() ->
gleam@dynamic:any(
[channel_chat_messsage_event_decoder(),
channel_points_custom_reward_redemption_add_event_decoder()]
).