Packages

Idiomatic Gleam client for the YouTube Data API V3

Current section

Files

Jump to
gleetube src gleetube@encoder@comment_thread_encoder.erl
Raw

src/gleetube@encoder@comment_thread_encoder.erl

-module(gleetube@encoder@comment_thread_encoder).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/gleetube/encoder/comment_thread_encoder.gleam").
-export([encode_snippet/2, encode_comment_thread/1]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
-file("src/gleetube/encoder/comment_thread_encoder.gleam", 5).
?DOC(" Encode a comment thread snippet for insert (top-level comment on a video).\n").
-spec encode_snippet(binary(), binary()) -> gleam@json:json().
encode_snippet(Video_id, Text_original) ->
gleetube@encoder@common_encoder:fields(
[gleetube@encoder@common_encoder:required_string(
<<"videoId"/utf8>>,
Video_id
),
[{<<"topLevelComment"/utf8>>,
gleam@json:object(
[{<<"snippet"/utf8>>,
gleam@json:object(
[{<<"textOriginal"/utf8>>,
gleam@json:string(Text_original)}]
)}]
)}]]
).
-file("src/gleetube/encoder/comment_thread_encoder.gleam", 26).
?DOC(" Build a complete comment thread insert body.\n").
-spec encode_comment_thread(gleam@json:json()) -> gleam@json:json().
encode_comment_thread(Snippet) ->
gleam@json:object([{<<"snippet"/utf8>>, Snippet}]).