Current section
Files
Jump to
Current section
Files
src/outkeep@text_note.erl
-module(outkeep@text_note).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([decode/1]).
-export_type([text_note/0]).
-type text_note() :: {text_note,
binary(),
boolean(),
boolean(),
binary(),
birl:time(),
birl:time()}.
-spec time_from_usec(gleam@dynamic:dynamic_()) -> {ok, birl:time()} |
{error, list(gleam@dynamic:decode_error())}.
time_from_usec(Dyn) ->
_pipe = Dyn,
_pipe@1 = gleam@dynamic:int(_pipe),
gleam@result:map(_pipe@1, fun birl:from_unix_micro/1).
-spec decode(gleam@dynamic:dynamic_()) -> {ok, text_note()} |
{error, list(gleam@dynamic:decode_error())}.
decode(Dyn) ->
_pipe = Dyn,
(gleam@dynamic:decode6(
fun(Field@0, Field@1, Field@2, Field@3, Field@4, Field@5) -> {text_note, Field@0, Field@1, Field@2, Field@3, Field@4, Field@5} end,
gleam@dynamic:field(<<"title"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(<<"isArchived"/utf8>>, fun gleam@dynamic:bool/1),
gleam@dynamic:field(<<"isTrashed"/utf8>>, fun gleam@dynamic:bool/1),
gleam@dynamic:field(<<"textContent"/utf8>>, fun gleam@dynamic:string/1),
gleam@dynamic:field(
<<"createdTimestampUsec"/utf8>>,
fun time_from_usec/1
),
gleam@dynamic:field(
<<"userEditedTimestampUsec"/utf8>>,
fun time_from_usec/1
)
))(_pipe).