-module(inlay@embed). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/inlay/embed.gleam"). -export([bluesky_config/0, youtube_config/0, vimeo_config/0, spotify_config/0, twitch_config/1, openstreetmap_config/0, ted_config/0, soundcloud_config/0, mastodon_config/1, pixelfed_config/2, apple_music_config/0, default_config/0, new/0]). -export_type([embed/0, apple_music_media_type/0, spotify_media_type/0, instagram_post_type/0, pixelfed_layout/0, config/0, youtube_config/0, vimeo_config/0, spotify_config/0, twitter_config/0, tik_tok_config/0, bluesky_config/0, instagram_config/0, twitch_config/0, open_street_map_config/0, ted_config/0, sound_cloud_config/0, mastodon_config/0, pixelfed_config/0, apple_music_config/0]). -type embed() :: {youtube_video, binary(), gleam@option:option(integer()), gleam@option:option(binary())} | {youtube_playlist, binary()} | {vimeo_video, binary(), gleam@option:option(binary())} | {spotify_media, spotify_media_type(), binary()} | {tweet, binary(), binary()} | {tik_tok_video, binary(), binary()} | {bluesky_post, binary(), binary()} | {instagram_post, instagram_post_type(), binary()} | {twitch_channel, binary()} | {twitch_video, binary()} | {map_location, integer(), float(), float()} | {ted_talk, binary()} | {sound_cloud_track, binary()} | {mastodon_post, binary(), binary(), binary()} | {pixelfed_post, binary(), binary(), binary()} | {apple_music_media, apple_music_media_type(), binary(), binary(), binary()}. -type apple_music_media_type() :: apple_music_album | apple_music_artist | apple_music_playlist | {apple_music_song, binary()} | apple_music_music_video. -type spotify_media_type() :: spotify_playlist | spotify_track | spotify_album | spotify_artist | spotify_episode | spotify_show. -type instagram_post_type() :: post | reel | t_v. -type pixelfed_layout() :: {full, boolean(), boolean()} | compact. -type config() :: {config, gleam@option:option(youtube_config()), gleam@option:option(vimeo_config()), gleam@option:option(spotify_config()), gleam@option:option(twitter_config()), gleam@option:option(tik_tok_config()), gleam@option:option(bluesky_config()), gleam@option:option(instagram_config()), gleam@option:option(twitch_config()), gleam@option:option(open_street_map_config()), gleam@option:option(ted_config()), gleam@option:option(sound_cloud_config()), gleam@option:option(mastodon_config()), gleam@option:option(pixelfed_config()), gleam@option:option(apple_music_config())}. -type youtube_config() :: {youtube_config, boolean(), gleam@option:option(binary())}. -type vimeo_config() :: {vimeo_config, boolean(), gleam@option:option(binary())}. -type spotify_config() :: {spotify_config, gleam@option:option(integer()), gleam@option:option(integer()), gleam@option:option(integer())}. -type twitter_config() :: twitter_config. -type tik_tok_config() :: tik_tok_config. -type bluesky_config() :: {bluesky_config, gleam@option:option(fun((binary()) -> {ok, binary()} | {error, nil}))}. -type instagram_config() :: instagram_config. -type twitch_config() :: {twitch_config, binary(), gleam@option:option(binary())}. -type open_street_map_config() :: {open_street_map_config, gleam@option:option(binary())}. -type ted_config() :: {ted_config, gleam@option:option(binary())}. -type sound_cloud_config() :: {sound_cloud_config, gleam@option:option(integer()), gleam@option:option(integer())}. -type mastodon_config() :: {mastodon_config, list(binary()), gleam@option:option(integer())}. -type pixelfed_config() :: {pixelfed_config, list(binary()), pixelfed_layout(), gleam@option:option(integer())}. -type apple_music_config() :: {apple_music_config, gleam@option:option(integer()), gleam@option:option(integer()), gleam@option:option(integer())}. -file("src/inlay/embed.gleam", 142). -spec bluesky_config() -> bluesky_config(). bluesky_config() -> {bluesky_config, none}. -file("src/inlay/embed.gleam", 146). -spec youtube_config() -> youtube_config(). youtube_config() -> {youtube_config, true, none}. -file("src/inlay/embed.gleam", 150). -spec vimeo_config() -> vimeo_config(). vimeo_config() -> {vimeo_config, true, none}. -file("src/inlay/embed.gleam", 154). -spec spotify_config() -> spotify_config(). spotify_config() -> {spotify_config, none, none, none}. -file("src/inlay/embed.gleam", 158). -spec twitch_config(binary()) -> twitch_config(). twitch_config(Parent) -> {twitch_config, Parent, none}. -file("src/inlay/embed.gleam", 162). -spec openstreetmap_config() -> open_street_map_config(). openstreetmap_config() -> {open_street_map_config, none}. -file("src/inlay/embed.gleam", 166). -spec ted_config() -> ted_config(). ted_config() -> {ted_config, none}. -file("src/inlay/embed.gleam", 170). -spec soundcloud_config() -> sound_cloud_config(). soundcloud_config() -> {sound_cloud_config, none, none}. -file("src/inlay/embed.gleam", 174). -spec mastodon_config(list(binary())) -> mastodon_config(). mastodon_config(Servers) -> {mastodon_config, Servers, none}. -file("src/inlay/embed.gleam", 178). -spec pixelfed_config(list(binary()), pixelfed_layout()) -> pixelfed_config(). pixelfed_config(Servers, Layout) -> {pixelfed_config, Servers, Layout, none}. -file("src/inlay/embed.gleam", 185). -spec apple_music_config() -> apple_music_config(). apple_music_config() -> {apple_music_config, none, none, none}. -file("src/inlay/embed.gleam", 189). -spec default_config() -> config(). default_config() -> {config, {some, youtube_config()}, {some, vimeo_config()}, {some, spotify_config()}, {some, twitter_config}, {some, tik_tok_config}, {some, bluesky_config()}, {some, instagram_config}, none, {some, openstreetmap_config()}, {some, ted_config()}, {some, soundcloud_config()}, none, none, {some, apple_music_config()}}. -file("src/inlay/embed.gleam", 208). -spec new() -> config(). new() -> {config, none, none, none, none, none, none, none, none, none, none, none, none, none, none}.