From b4e5580062d7d31acec85094b461c434dc22da9e Mon Sep 17 00:00:00 2001 From: Tsiry Sandratraina Date: Wed, 21 Jan 2026 07:32:28 +0300 Subject: [PATCH] Add genre filter to artists, albums, songs Propagate genre parameter through API lexicons, xrpc handlers, and analytics types/handlers/queries. Also apply generated formatting and type updates across lexicon code (quote/style changes) --- apps/api/lexicons/album/getAlbums.json | 4 + apps/api/lexicons/artist/getArtists.json | 4 + apps/api/lexicons/song/getSongs.json | 4 + apps/api/pkl/defs/album/getAlbums.pkl | 8 +- apps/api/pkl/defs/artist/getArtists.pkl | 6 +- apps/api/pkl/defs/song/getSongs.pkl | 10 +- apps/api/src/lexicon/index.ts | 828 +-- apps/api/src/lexicon/lexicons.ts | 4966 +++++++++-------- .../lexicon/types/app/bsky/actor/profile.ts | 38 +- .../lexicon/types/app/rocksky/actor/defs.ts | 134 +- .../types/app/rocksky/actor/getActorAlbums.ts | 60 +- .../app/rocksky/actor/getActorArtists.ts | 60 +- .../rocksky/actor/getActorCompatibility.ts | 52 +- .../app/rocksky/actor/getActorLovedSongs.ts | 56 +- .../app/rocksky/actor/getActorNeighbours.ts | 52 +- .../app/rocksky/actor/getActorPlaylists.ts | 56 +- .../app/rocksky/actor/getActorScrobbles.ts | 56 +- .../types/app/rocksky/actor/getActorSongs.ts | 60 +- .../types/app/rocksky/actor/getProfile.ts | 50 +- .../src/lexicon/types/app/rocksky/album.ts | 46 +- .../lexicon/types/app/rocksky/album/defs.ts | 78 +- .../types/app/rocksky/album/getAlbum.ts | 50 +- .../types/app/rocksky/album/getAlbumTracks.ts | 52 +- .../types/app/rocksky/album/getAlbums.ts | 56 +- .../types/app/rocksky/apikey/createApikey.ts | 56 +- .../lexicon/types/app/rocksky/apikey/defs.ts | 26 +- .../types/app/rocksky/apikey/getApikeys.ts | 54 +- .../types/app/rocksky/apikey/removeApikey.ts | 50 +- .../types/app/rocksky/apikey/updateApikey.ts | 58 +- .../lexicon/types/app/rocksky/apikeys/defs.ts | 8 +- .../src/lexicon/types/app/rocksky/artist.ts | 36 +- .../lexicon/types/app/rocksky/artist/defs.ts | 116 +- .../types/app/rocksky/artist/getArtist.ts | 50 +- .../app/rocksky/artist/getArtistAlbums.ts | 52 +- .../app/rocksky/artist/getArtistListeners.ts | 56 +- .../app/rocksky/artist/getArtistTracks.ts | 56 +- .../types/app/rocksky/artist/getArtists.ts | 58 +- .../lexicon/types/app/rocksky/charts/defs.ts | 34 +- .../app/rocksky/charts/getScrobblesChart.ts | 56 +- .../lexicon/types/app/rocksky/dropbox/defs.ts | 54 +- .../types/app/rocksky/dropbox/downloadFile.ts | 48 +- .../types/app/rocksky/dropbox/getFiles.ts | 50 +- .../types/app/rocksky/dropbox/getMetadata.ts | 50 +- .../app/rocksky/dropbox/getTemporaryLink.ts | 50 +- .../lexicon/types/app/rocksky/feed/defs.ts | 164 +- .../app/rocksky/feed/describeFeedGenerator.ts | 54 +- .../types/app/rocksky/feed/generator.ts | 30 +- .../lexicon/types/app/rocksky/feed/getFeed.ts | 54 +- .../app/rocksky/feed/getFeedGenerator.ts | 52 +- .../app/rocksky/feed/getFeedGenerators.ts | 50 +- .../types/app/rocksky/feed/getFeedSkeleton.ts | 60 +- .../types/app/rocksky/feed/getNowPlayings.ts | 50 +- .../lexicon/types/app/rocksky/feed/search.ts | 50 +- .../types/app/rocksky/googledrive/defs.ts | 32 +- .../app/rocksky/googledrive/downloadFile.ts | 48 +- .../types/app/rocksky/googledrive/getFile.ts | 50 +- .../types/app/rocksky/googledrive/getFiles.ts | 50 +- .../lexicon/types/app/rocksky/graph/defs.ts | 38 +- .../lexicon/types/app/rocksky/graph/follow.ts | 28 +- .../types/app/rocksky/graph/followAccount.ts | 56 +- .../types/app/rocksky/graph/getFollowers.ts | 64 +- .../types/app/rocksky/graph/getFollows.ts | 64 +- .../app/rocksky/graph/getKnownFollowers.ts | 60 +- .../app/rocksky/graph/unfollowAccount.ts | 56 +- .../api/src/lexicon/types/app/rocksky/like.ts | 24 +- .../types/app/rocksky/like/dislikeShout.ts | 54 +- .../types/app/rocksky/like/dislikeSong.ts | 54 +- .../types/app/rocksky/like/likeShout.ts | 54 +- .../types/app/rocksky/like/likeSong.ts | 54 +- .../app/rocksky/player/addDirectoryToQueue.ts | 46 +- .../app/rocksky/player/addItemsToQueue.ts | 46 +- .../lexicon/types/app/rocksky/player/defs.ts | 38 +- .../app/rocksky/player/getCurrentlyPlaying.ts | 52 +- .../app/rocksky/player/getPlaybackQueue.ts | 50 +- .../lexicon/types/app/rocksky/player/next.ts | 40 +- .../lexicon/types/app/rocksky/player/pause.ts | 40 +- .../lexicon/types/app/rocksky/player/play.ts | 40 +- .../types/app/rocksky/player/playDirectory.ts | 48 +- .../types/app/rocksky/player/playFile.ts | 42 +- .../types/app/rocksky/player/previous.ts | 40 +- .../lexicon/types/app/rocksky/player/seek.ts | 42 +- .../src/lexicon/types/app/rocksky/playlist.ts | 38 +- .../app/rocksky/playlist/createPlaylist.ts | 42 +- .../types/app/rocksky/playlist/defs.ts | 74 +- .../types/app/rocksky/playlist/getPlaylist.ts | 50 +- .../app/rocksky/playlist/getPlaylists.ts | 54 +- .../app/rocksky/playlist/insertDirectory.ts | 44 +- .../types/app/rocksky/playlist/insertFiles.ts | 44 +- .../app/rocksky/playlist/removePlaylist.ts | 40 +- .../types/app/rocksky/playlist/removeTrack.ts | 42 +- .../app/rocksky/playlist/startPlaylist.ts | 44 +- .../lexicon/types/app/rocksky/playlistItem.ts | 32 +- .../src/lexicon/types/app/rocksky/radio.ts | 32 +- .../lexicon/types/app/rocksky/radio/defs.ts | 52 +- .../src/lexicon/types/app/rocksky/scrobble.ts | 72 +- .../app/rocksky/scrobble/createScrobble.ts | 96 +- .../types/app/rocksky/scrobble/defs.ts | 84 +- .../types/app/rocksky/scrobble/getScrobble.ts | 50 +- .../app/rocksky/scrobble/getScrobbles.ts | 58 +- .../src/lexicon/types/app/rocksky/shout.ts | 28 +- .../types/app/rocksky/shout/createShout.ts | 54 +- .../lexicon/types/app/rocksky/shout/defs.ts | 48 +- .../types/app/rocksky/shout/getAlbumShouts.ts | 56 +- .../app/rocksky/shout/getArtistShouts.ts | 56 +- .../app/rocksky/shout/getProfileShouts.ts | 56 +- .../app/rocksky/shout/getShoutReplies.ts | 56 +- .../types/app/rocksky/shout/getTrackShouts.ts | 52 +- .../types/app/rocksky/shout/removeShout.ts | 50 +- .../types/app/rocksky/shout/replyShout.ts | 56 +- .../types/app/rocksky/shout/reportShout.ts | 56 +- .../api/src/lexicon/types/app/rocksky/song.ts | 70 +- .../types/app/rocksky/song/createSong.ts | 76 +- .../lexicon/types/app/rocksky/song/defs.ts | 96 +- .../lexicon/types/app/rocksky/song/getSong.ts | 50 +- .../types/app/rocksky/song/getSongs.ts | 56 +- .../types/app/rocksky/song/matchSong.ts | 52 +- .../lexicon/types/app/rocksky/spotify/defs.ts | 30 +- .../rocksky/spotify/getCurrentlyPlaying.ts | 50 +- .../lexicon/types/app/rocksky/spotify/next.ts | 40 +- .../types/app/rocksky/spotify/pause.ts | 40 +- .../lexicon/types/app/rocksky/spotify/play.ts | 40 +- .../types/app/rocksky/spotify/previous.ts | 40 +- .../lexicon/types/app/rocksky/spotify/seek.ts | 40 +- .../lexicon/types/app/rocksky/stats/defs.ts | 28 +- .../types/app/rocksky/stats/getStats.ts | 50 +- .../types/com/atproto/repo/strongRef.ts | 24 +- .../lexicon/types/fm/teal/alpha/actor/defs.ts | 56 +- .../types/fm/teal/alpha/actor/getProfile.ts | 52 +- .../types/fm/teal/alpha/actor/getProfiles.ts | 52 +- .../types/fm/teal/alpha/actor/profile.ts | 50 +- .../types/fm/teal/alpha/actor/searchActors.ts | 58 +- .../types/fm/teal/alpha/actor/status.ts | 28 +- .../lexicon/types/fm/teal/alpha/feed/defs.ts | 56 +- .../types/fm/teal/alpha/feed/getActorFeed.ts | 56 +- .../types/fm/teal/alpha/feed/getPlay.ts | 54 +- .../lexicon/types/fm/teal/alpha/feed/play.ts | 50 +- apps/api/src/lexicon/util.ts | 4 +- .../src/xrpc/app/rocksky/album/getAlbums.ts | 1 + .../src/xrpc/app/rocksky/artist/getArtists.ts | 1 + .../api/src/xrpc/app/rocksky/song/getSongs.ts | 1 + crates/analytics/src/handlers/albums.rs | 112 +- crates/analytics/src/handlers/artists.rs | 81 +- crates/analytics/src/handlers/tracks.rs | 120 +- crates/analytics/src/types/album.rs | 1 + crates/analytics/src/types/artist.rs | 1 + crates/analytics/src/types/track.rs | 1 + 146 files changed, 6478 insertions(+), 6333 deletions(-) diff --git a/apps/api/lexicons/album/getAlbums.json b/apps/api/lexicons/album/getAlbums.json index 4ff00869..49d7e431 100644 --- a/apps/api/lexicons/album/getAlbums.json +++ b/apps/api/lexicons/album/getAlbums.json @@ -17,6 +17,10 @@ "type": "integer", "description": "The offset for pagination", "minimum": 0 + }, + "genre": { + "type": "string", + "description": "The genre to filter artists by" } } }, diff --git a/apps/api/lexicons/artist/getArtists.json b/apps/api/lexicons/artist/getArtists.json index da7db6d7..3140bd29 100644 --- a/apps/api/lexicons/artist/getArtists.json +++ b/apps/api/lexicons/artist/getArtists.json @@ -21,6 +21,10 @@ "names": { "type": "string", "description": "The names of the artists to return" + }, + "genre": { + "type": "string", + "description": "The genre to filter artists by" } } }, diff --git a/apps/api/lexicons/song/getSongs.json b/apps/api/lexicons/song/getSongs.json index 3b346715..e16fb271 100644 --- a/apps/api/lexicons/song/getSongs.json +++ b/apps/api/lexicons/song/getSongs.json @@ -17,6 +17,10 @@ "type": "integer", "description": "The offset for pagination", "minimum": 0 + }, + "genre": { + "type": "string", + "description": "The genre to filter artists by" } } }, diff --git a/apps/api/pkl/defs/album/getAlbums.pkl b/apps/api/pkl/defs/album/getAlbums.pkl index f0360625..f7e066d1 100644 --- a/apps/api/pkl/defs/album/getAlbums.pkl +++ b/apps/api/pkl/defs/album/getAlbums.pkl @@ -1,4 +1,4 @@ -amends "../../schema/lexicon.pkl" +amends "../../schema/lexicon.pkl" lexicon = 1 id = "app.rocksky.album.getAlbums" @@ -18,6 +18,10 @@ defs = new Mapping { description = "The offset for pagination" minimum = 0 } + ["genre"] = new StringType { + type = "string" + description = "The genre to filter artists by" + } } } output { @@ -35,4 +39,4 @@ defs = new Mapping { } } } -} \ No newline at end of file +} diff --git a/apps/api/pkl/defs/artist/getArtists.pkl b/apps/api/pkl/defs/artist/getArtists.pkl index d224dbe1..70b8dc46 100644 --- a/apps/api/pkl/defs/artist/getArtists.pkl +++ b/apps/api/pkl/defs/artist/getArtists.pkl @@ -1,4 +1,4 @@ -amends "../../schema/lexicon.pkl" +amends "../../schema/lexicon.pkl" lexicon = 1 id = "app.rocksky.artist.getArtists" @@ -22,6 +22,10 @@ defs = new Mapping { type = "string" description = "The names of the artists to return" } + ["genre"] = new StringType { + type = "string" + description = "The genre to filter artists by" + } } } output { diff --git a/apps/api/pkl/defs/song/getSongs.pkl b/apps/api/pkl/defs/song/getSongs.pkl index 710719b5..97256269 100644 --- a/apps/api/pkl/defs/song/getSongs.pkl +++ b/apps/api/pkl/defs/song/getSongs.pkl @@ -1,4 +1,4 @@ -amends "../../schema/lexicon.pkl" +amends "../../schema/lexicon.pkl" lexicon = 1 id = "app.rocksky.song.getSongs" @@ -18,9 +18,13 @@ defs = new Mapping { description = "The offset for pagination" minimum = 0 } + ["genre"] = new StringType { + type = "string" + description = "The genre to filter artists by" + } } } - output { + output { encoding = "application/json" schema = new ObjectType { type = "object" @@ -35,4 +39,4 @@ defs = new Mapping { } } } -} \ No newline at end of file +} diff --git a/apps/api/src/lexicon/index.ts b/apps/api/src/lexicon/index.ts index d1a64b94..ca2f6f00 100644 --- a/apps/api/src/lexicon/index.ts +++ b/apps/api/src/lexicon/index.ts @@ -7,156 +7,156 @@ import { type Options as XrpcOptions, type AuthVerifier, type StreamAuthVerifier, -} from "@atproto/xrpc-server"; -import { schemas } from "./lexicons"; -import type * as FmTealAlphaActorGetProfile from "./types/fm/teal/alpha/actor/getProfile"; -import type * as FmTealAlphaActorGetProfiles from "./types/fm/teal/alpha/actor/getProfiles"; -import type * as FmTealAlphaActorSearchActors from "./types/fm/teal/alpha/actor/searchActors"; -import type * as FmTealAlphaFeedGetActorFeed from "./types/fm/teal/alpha/feed/getActorFeed"; -import type * as FmTealAlphaFeedGetPlay from "./types/fm/teal/alpha/feed/getPlay"; -import type * as AppRockskyActorGetActorAlbums from "./types/app/rocksky/actor/getActorAlbums"; -import type * as AppRockskyActorGetActorArtists from "./types/app/rocksky/actor/getActorArtists"; -import type * as AppRockskyActorGetActorCompatibility from "./types/app/rocksky/actor/getActorCompatibility"; -import type * as AppRockskyActorGetActorLovedSongs from "./types/app/rocksky/actor/getActorLovedSongs"; -import type * as AppRockskyActorGetActorNeighbours from "./types/app/rocksky/actor/getActorNeighbours"; -import type * as AppRockskyActorGetActorPlaylists from "./types/app/rocksky/actor/getActorPlaylists"; -import type * as AppRockskyActorGetActorScrobbles from "./types/app/rocksky/actor/getActorScrobbles"; -import type * as AppRockskyActorGetActorSongs from "./types/app/rocksky/actor/getActorSongs"; -import type * as AppRockskyActorGetProfile from "./types/app/rocksky/actor/getProfile"; -import type * as AppRockskyAlbumGetAlbum from "./types/app/rocksky/album/getAlbum"; -import type * as AppRockskyAlbumGetAlbums from "./types/app/rocksky/album/getAlbums"; -import type * as AppRockskyAlbumGetAlbumTracks from "./types/app/rocksky/album/getAlbumTracks"; -import type * as AppRockskyApikeyCreateApikey from "./types/app/rocksky/apikey/createApikey"; -import type * as AppRockskyApikeyGetApikeys from "./types/app/rocksky/apikey/getApikeys"; -import type * as AppRockskyApikeyRemoveApikey from "./types/app/rocksky/apikey/removeApikey"; -import type * as AppRockskyApikeyUpdateApikey from "./types/app/rocksky/apikey/updateApikey"; -import type * as AppRockskyArtistGetArtist from "./types/app/rocksky/artist/getArtist"; -import type * as AppRockskyArtistGetArtistAlbums from "./types/app/rocksky/artist/getArtistAlbums"; -import type * as AppRockskyArtistGetArtistListeners from "./types/app/rocksky/artist/getArtistListeners"; -import type * as AppRockskyArtistGetArtists from "./types/app/rocksky/artist/getArtists"; -import type * as AppRockskyArtistGetArtistTracks from "./types/app/rocksky/artist/getArtistTracks"; -import type * as AppRockskyChartsGetScrobblesChart from "./types/app/rocksky/charts/getScrobblesChart"; -import type * as AppRockskyDropboxDownloadFile from "./types/app/rocksky/dropbox/downloadFile"; -import type * as AppRockskyDropboxGetFiles from "./types/app/rocksky/dropbox/getFiles"; -import type * as AppRockskyDropboxGetMetadata from "./types/app/rocksky/dropbox/getMetadata"; -import type * as AppRockskyDropboxGetTemporaryLink from "./types/app/rocksky/dropbox/getTemporaryLink"; -import type * as AppRockskyFeedDescribeFeedGenerator from "./types/app/rocksky/feed/describeFeedGenerator"; -import type * as AppRockskyFeedGetFeed from "./types/app/rocksky/feed/getFeed"; -import type * as AppRockskyFeedGetFeedGenerator from "./types/app/rocksky/feed/getFeedGenerator"; -import type * as AppRockskyFeedGetFeedGenerators from "./types/app/rocksky/feed/getFeedGenerators"; -import type * as AppRockskyFeedGetFeedSkeleton from "./types/app/rocksky/feed/getFeedSkeleton"; -import type * as AppRockskyFeedGetNowPlayings from "./types/app/rocksky/feed/getNowPlayings"; -import type * as AppRockskyFeedSearch from "./types/app/rocksky/feed/search"; -import type * as AppRockskyGoogledriveDownloadFile from "./types/app/rocksky/googledrive/downloadFile"; -import type * as AppRockskyGoogledriveGetFile from "./types/app/rocksky/googledrive/getFile"; -import type * as AppRockskyGoogledriveGetFiles from "./types/app/rocksky/googledrive/getFiles"; -import type * as AppRockskyGraphFollowAccount from "./types/app/rocksky/graph/followAccount"; -import type * as AppRockskyGraphGetFollowers from "./types/app/rocksky/graph/getFollowers"; -import type * as AppRockskyGraphGetFollows from "./types/app/rocksky/graph/getFollows"; -import type * as AppRockskyGraphGetKnownFollowers from "./types/app/rocksky/graph/getKnownFollowers"; -import type * as AppRockskyGraphUnfollowAccount from "./types/app/rocksky/graph/unfollowAccount"; -import type * as AppRockskyLikeDislikeShout from "./types/app/rocksky/like/dislikeShout"; -import type * as AppRockskyLikeDislikeSong from "./types/app/rocksky/like/dislikeSong"; -import type * as AppRockskyLikeLikeShout from "./types/app/rocksky/like/likeShout"; -import type * as AppRockskyLikeLikeSong from "./types/app/rocksky/like/likeSong"; -import type * as AppRockskyPlayerAddDirectoryToQueue from "./types/app/rocksky/player/addDirectoryToQueue"; -import type * as AppRockskyPlayerAddItemsToQueue from "./types/app/rocksky/player/addItemsToQueue"; -import type * as AppRockskyPlayerGetCurrentlyPlaying from "./types/app/rocksky/player/getCurrentlyPlaying"; -import type * as AppRockskyPlayerGetPlaybackQueue from "./types/app/rocksky/player/getPlaybackQueue"; -import type * as AppRockskyPlayerNext from "./types/app/rocksky/player/next"; -import type * as AppRockskyPlayerPause from "./types/app/rocksky/player/pause"; -import type * as AppRockskyPlayerPlay from "./types/app/rocksky/player/play"; -import type * as AppRockskyPlayerPlayDirectory from "./types/app/rocksky/player/playDirectory"; -import type * as AppRockskyPlayerPlayFile from "./types/app/rocksky/player/playFile"; -import type * as AppRockskyPlayerPrevious from "./types/app/rocksky/player/previous"; -import type * as AppRockskyPlayerSeek from "./types/app/rocksky/player/seek"; -import type * as AppRockskyPlaylistCreatePlaylist from "./types/app/rocksky/playlist/createPlaylist"; -import type * as AppRockskyPlaylistGetPlaylist from "./types/app/rocksky/playlist/getPlaylist"; -import type * as AppRockskyPlaylistGetPlaylists from "./types/app/rocksky/playlist/getPlaylists"; -import type * as AppRockskyPlaylistInsertDirectory from "./types/app/rocksky/playlist/insertDirectory"; -import type * as AppRockskyPlaylistInsertFiles from "./types/app/rocksky/playlist/insertFiles"; -import type * as AppRockskyPlaylistRemovePlaylist from "./types/app/rocksky/playlist/removePlaylist"; -import type * as AppRockskyPlaylistRemoveTrack from "./types/app/rocksky/playlist/removeTrack"; -import type * as AppRockskyPlaylistStartPlaylist from "./types/app/rocksky/playlist/startPlaylist"; -import type * as AppRockskyScrobbleCreateScrobble from "./types/app/rocksky/scrobble/createScrobble"; -import type * as AppRockskyScrobbleGetScrobble from "./types/app/rocksky/scrobble/getScrobble"; -import type * as AppRockskyScrobbleGetScrobbles from "./types/app/rocksky/scrobble/getScrobbles"; -import type * as AppRockskyShoutCreateShout from "./types/app/rocksky/shout/createShout"; -import type * as AppRockskyShoutGetAlbumShouts from "./types/app/rocksky/shout/getAlbumShouts"; -import type * as AppRockskyShoutGetArtistShouts from "./types/app/rocksky/shout/getArtistShouts"; -import type * as AppRockskyShoutGetProfileShouts from "./types/app/rocksky/shout/getProfileShouts"; -import type * as AppRockskyShoutGetShoutReplies from "./types/app/rocksky/shout/getShoutReplies"; -import type * as AppRockskyShoutGetTrackShouts from "./types/app/rocksky/shout/getTrackShouts"; -import type * as AppRockskyShoutRemoveShout from "./types/app/rocksky/shout/removeShout"; -import type * as AppRockskyShoutReplyShout from "./types/app/rocksky/shout/replyShout"; -import type * as AppRockskyShoutReportShout from "./types/app/rocksky/shout/reportShout"; -import type * as AppRockskySongCreateSong from "./types/app/rocksky/song/createSong"; -import type * as AppRockskySongGetSong from "./types/app/rocksky/song/getSong"; -import type * as AppRockskySongGetSongs from "./types/app/rocksky/song/getSongs"; -import type * as AppRockskySongMatchSong from "./types/app/rocksky/song/matchSong"; -import type * as AppRockskySpotifyGetCurrentlyPlaying from "./types/app/rocksky/spotify/getCurrentlyPlaying"; -import type * as AppRockskySpotifyNext from "./types/app/rocksky/spotify/next"; -import type * as AppRockskySpotifyPause from "./types/app/rocksky/spotify/pause"; -import type * as AppRockskySpotifyPlay from "./types/app/rocksky/spotify/play"; -import type * as AppRockskySpotifyPrevious from "./types/app/rocksky/spotify/previous"; -import type * as AppRockskySpotifySeek from "./types/app/rocksky/spotify/seek"; -import type * as AppRockskyStatsGetStats from "./types/app/rocksky/stats/getStats"; +} from '@atproto/xrpc-server' +import { schemas } from './lexicons' +import type * as FmTealAlphaActorGetProfile from './types/fm/teal/alpha/actor/getProfile' +import type * as FmTealAlphaActorGetProfiles from './types/fm/teal/alpha/actor/getProfiles' +import type * as FmTealAlphaActorSearchActors from './types/fm/teal/alpha/actor/searchActors' +import type * as FmTealAlphaFeedGetActorFeed from './types/fm/teal/alpha/feed/getActorFeed' +import type * as FmTealAlphaFeedGetPlay from './types/fm/teal/alpha/feed/getPlay' +import type * as AppRockskyActorGetActorAlbums from './types/app/rocksky/actor/getActorAlbums' +import type * as AppRockskyActorGetActorArtists from './types/app/rocksky/actor/getActorArtists' +import type * as AppRockskyActorGetActorCompatibility from './types/app/rocksky/actor/getActorCompatibility' +import type * as AppRockskyActorGetActorLovedSongs from './types/app/rocksky/actor/getActorLovedSongs' +import type * as AppRockskyActorGetActorNeighbours from './types/app/rocksky/actor/getActorNeighbours' +import type * as AppRockskyActorGetActorPlaylists from './types/app/rocksky/actor/getActorPlaylists' +import type * as AppRockskyActorGetActorScrobbles from './types/app/rocksky/actor/getActorScrobbles' +import type * as AppRockskyActorGetActorSongs from './types/app/rocksky/actor/getActorSongs' +import type * as AppRockskyActorGetProfile from './types/app/rocksky/actor/getProfile' +import type * as AppRockskyAlbumGetAlbum from './types/app/rocksky/album/getAlbum' +import type * as AppRockskyAlbumGetAlbums from './types/app/rocksky/album/getAlbums' +import type * as AppRockskyAlbumGetAlbumTracks from './types/app/rocksky/album/getAlbumTracks' +import type * as AppRockskyApikeyCreateApikey from './types/app/rocksky/apikey/createApikey' +import type * as AppRockskyApikeyGetApikeys from './types/app/rocksky/apikey/getApikeys' +import type * as AppRockskyApikeyRemoveApikey from './types/app/rocksky/apikey/removeApikey' +import type * as AppRockskyApikeyUpdateApikey from './types/app/rocksky/apikey/updateApikey' +import type * as AppRockskyArtistGetArtist from './types/app/rocksky/artist/getArtist' +import type * as AppRockskyArtistGetArtistAlbums from './types/app/rocksky/artist/getArtistAlbums' +import type * as AppRockskyArtistGetArtistListeners from './types/app/rocksky/artist/getArtistListeners' +import type * as AppRockskyArtistGetArtists from './types/app/rocksky/artist/getArtists' +import type * as AppRockskyArtistGetArtistTracks from './types/app/rocksky/artist/getArtistTracks' +import type * as AppRockskyChartsGetScrobblesChart from './types/app/rocksky/charts/getScrobblesChart' +import type * as AppRockskyDropboxDownloadFile from './types/app/rocksky/dropbox/downloadFile' +import type * as AppRockskyDropboxGetFiles from './types/app/rocksky/dropbox/getFiles' +import type * as AppRockskyDropboxGetMetadata from './types/app/rocksky/dropbox/getMetadata' +import type * as AppRockskyDropboxGetTemporaryLink from './types/app/rocksky/dropbox/getTemporaryLink' +import type * as AppRockskyFeedDescribeFeedGenerator from './types/app/rocksky/feed/describeFeedGenerator' +import type * as AppRockskyFeedGetFeed from './types/app/rocksky/feed/getFeed' +import type * as AppRockskyFeedGetFeedGenerator from './types/app/rocksky/feed/getFeedGenerator' +import type * as AppRockskyFeedGetFeedGenerators from './types/app/rocksky/feed/getFeedGenerators' +import type * as AppRockskyFeedGetFeedSkeleton from './types/app/rocksky/feed/getFeedSkeleton' +import type * as AppRockskyFeedGetNowPlayings from './types/app/rocksky/feed/getNowPlayings' +import type * as AppRockskyFeedSearch from './types/app/rocksky/feed/search' +import type * as AppRockskyGoogledriveDownloadFile from './types/app/rocksky/googledrive/downloadFile' +import type * as AppRockskyGoogledriveGetFile from './types/app/rocksky/googledrive/getFile' +import type * as AppRockskyGoogledriveGetFiles from './types/app/rocksky/googledrive/getFiles' +import type * as AppRockskyGraphFollowAccount from './types/app/rocksky/graph/followAccount' +import type * as AppRockskyGraphGetFollowers from './types/app/rocksky/graph/getFollowers' +import type * as AppRockskyGraphGetFollows from './types/app/rocksky/graph/getFollows' +import type * as AppRockskyGraphGetKnownFollowers from './types/app/rocksky/graph/getKnownFollowers' +import type * as AppRockskyGraphUnfollowAccount from './types/app/rocksky/graph/unfollowAccount' +import type * as AppRockskyLikeDislikeShout from './types/app/rocksky/like/dislikeShout' +import type * as AppRockskyLikeDislikeSong from './types/app/rocksky/like/dislikeSong' +import type * as AppRockskyLikeLikeShout from './types/app/rocksky/like/likeShout' +import type * as AppRockskyLikeLikeSong from './types/app/rocksky/like/likeSong' +import type * as AppRockskyPlayerAddDirectoryToQueue from './types/app/rocksky/player/addDirectoryToQueue' +import type * as AppRockskyPlayerAddItemsToQueue from './types/app/rocksky/player/addItemsToQueue' +import type * as AppRockskyPlayerGetCurrentlyPlaying from './types/app/rocksky/player/getCurrentlyPlaying' +import type * as AppRockskyPlayerGetPlaybackQueue from './types/app/rocksky/player/getPlaybackQueue' +import type * as AppRockskyPlayerNext from './types/app/rocksky/player/next' +import type * as AppRockskyPlayerPause from './types/app/rocksky/player/pause' +import type * as AppRockskyPlayerPlay from './types/app/rocksky/player/play' +import type * as AppRockskyPlayerPlayDirectory from './types/app/rocksky/player/playDirectory' +import type * as AppRockskyPlayerPlayFile from './types/app/rocksky/player/playFile' +import type * as AppRockskyPlayerPrevious from './types/app/rocksky/player/previous' +import type * as AppRockskyPlayerSeek from './types/app/rocksky/player/seek' +import type * as AppRockskyPlaylistCreatePlaylist from './types/app/rocksky/playlist/createPlaylist' +import type * as AppRockskyPlaylistGetPlaylist from './types/app/rocksky/playlist/getPlaylist' +import type * as AppRockskyPlaylistGetPlaylists from './types/app/rocksky/playlist/getPlaylists' +import type * as AppRockskyPlaylistInsertDirectory from './types/app/rocksky/playlist/insertDirectory' +import type * as AppRockskyPlaylistInsertFiles from './types/app/rocksky/playlist/insertFiles' +import type * as AppRockskyPlaylistRemovePlaylist from './types/app/rocksky/playlist/removePlaylist' +import type * as AppRockskyPlaylistRemoveTrack from './types/app/rocksky/playlist/removeTrack' +import type * as AppRockskyPlaylistStartPlaylist from './types/app/rocksky/playlist/startPlaylist' +import type * as AppRockskyScrobbleCreateScrobble from './types/app/rocksky/scrobble/createScrobble' +import type * as AppRockskyScrobbleGetScrobble from './types/app/rocksky/scrobble/getScrobble' +import type * as AppRockskyScrobbleGetScrobbles from './types/app/rocksky/scrobble/getScrobbles' +import type * as AppRockskyShoutCreateShout from './types/app/rocksky/shout/createShout' +import type * as AppRockskyShoutGetAlbumShouts from './types/app/rocksky/shout/getAlbumShouts' +import type * as AppRockskyShoutGetArtistShouts from './types/app/rocksky/shout/getArtistShouts' +import type * as AppRockskyShoutGetProfileShouts from './types/app/rocksky/shout/getProfileShouts' +import type * as AppRockskyShoutGetShoutReplies from './types/app/rocksky/shout/getShoutReplies' +import type * as AppRockskyShoutGetTrackShouts from './types/app/rocksky/shout/getTrackShouts' +import type * as AppRockskyShoutRemoveShout from './types/app/rocksky/shout/removeShout' +import type * as AppRockskyShoutReplyShout from './types/app/rocksky/shout/replyShout' +import type * as AppRockskyShoutReportShout from './types/app/rocksky/shout/reportShout' +import type * as AppRockskySongCreateSong from './types/app/rocksky/song/createSong' +import type * as AppRockskySongGetSong from './types/app/rocksky/song/getSong' +import type * as AppRockskySongGetSongs from './types/app/rocksky/song/getSongs' +import type * as AppRockskySongMatchSong from './types/app/rocksky/song/matchSong' +import type * as AppRockskySpotifyGetCurrentlyPlaying from './types/app/rocksky/spotify/getCurrentlyPlaying' +import type * as AppRockskySpotifyNext from './types/app/rocksky/spotify/next' +import type * as AppRockskySpotifyPause from './types/app/rocksky/spotify/pause' +import type * as AppRockskySpotifyPlay from './types/app/rocksky/spotify/play' +import type * as AppRockskySpotifyPrevious from './types/app/rocksky/spotify/previous' +import type * as AppRockskySpotifySeek from './types/app/rocksky/spotify/seek' +import type * as AppRockskyStatsGetStats from './types/app/rocksky/stats/getStats' export function createServer(options?: XrpcOptions): Server { - return new Server(options); + return new Server(options) } export class Server { - xrpc: XrpcServer; - fm: FmNS; - app: AppNS; - com: ComNS; + xrpc: XrpcServer + fm: FmNS + app: AppNS + com: ComNS constructor(options?: XrpcOptions) { - this.xrpc = createXrpcServer(schemas, options); - this.fm = new FmNS(this); - this.app = new AppNS(this); - this.com = new ComNS(this); + this.xrpc = createXrpcServer(schemas, options) + this.fm = new FmNS(this) + this.app = new AppNS(this) + this.com = new ComNS(this) } } export class FmNS { - _server: Server; - teal: FmTealNS; + _server: Server + teal: FmTealNS constructor(server: Server) { - this._server = server; - this.teal = new FmTealNS(server); + this._server = server + this.teal = new FmTealNS(server) } } export class FmTealNS { - _server: Server; - alpha: FmTealAlphaNS; + _server: Server + alpha: FmTealAlphaNS constructor(server: Server) { - this._server = server; - this.alpha = new FmTealAlphaNS(server); + this._server = server + this.alpha = new FmTealAlphaNS(server) } } export class FmTealAlphaNS { - _server: Server; - actor: FmTealAlphaActorNS; - feed: FmTealAlphaFeedNS; + _server: Server + actor: FmTealAlphaActorNS + feed: FmTealAlphaFeedNS constructor(server: Server) { - this._server = server; - this.actor = new FmTealAlphaActorNS(server); - this.feed = new FmTealAlphaFeedNS(server); + this._server = server + this.actor = new FmTealAlphaActorNS(server) + this.feed = new FmTealAlphaFeedNS(server) } } export class FmTealAlphaActorNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } getProfile( @@ -166,8 +166,8 @@ export class FmTealAlphaActorNS { FmTealAlphaActorGetProfile.HandlerReqCtx> >, ) { - const nsid = "fm.teal.alpha.actor.getProfile"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'fm.teal.alpha.actor.getProfile' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getProfiles( @@ -177,8 +177,8 @@ export class FmTealAlphaActorNS { FmTealAlphaActorGetProfiles.HandlerReqCtx> >, ) { - const nsid = "fm.teal.alpha.actor.getProfiles"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'fm.teal.alpha.actor.getProfiles' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } searchActors( @@ -188,16 +188,16 @@ export class FmTealAlphaActorNS { FmTealAlphaActorSearchActors.HandlerReqCtx> >, ) { - const nsid = "fm.teal.alpha.actor.searchActors"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'fm.teal.alpha.actor.searchActors' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class FmTealAlphaFeedNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } getActorFeed( @@ -207,8 +207,8 @@ export class FmTealAlphaFeedNS { FmTealAlphaFeedGetActorFeed.HandlerReqCtx> >, ) { - const nsid = "fm.teal.alpha.feed.getActorFeed"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'fm.teal.alpha.feed.getActorFeed' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getPlay( @@ -218,70 +218,70 @@ export class FmTealAlphaFeedNS { FmTealAlphaFeedGetPlay.HandlerReqCtx> >, ) { - const nsid = "fm.teal.alpha.feed.getPlay"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'fm.teal.alpha.feed.getPlay' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppNS { - _server: Server; - rocksky: AppRockskyNS; - bsky: AppBskyNS; + _server: Server + rocksky: AppRockskyNS + bsky: AppBskyNS constructor(server: Server) { - this._server = server; - this.rocksky = new AppRockskyNS(server); - this.bsky = new AppBskyNS(server); + this._server = server + this.rocksky = new AppRockskyNS(server) + this.bsky = new AppBskyNS(server) } } export class AppRockskyNS { - _server: Server; - actor: AppRockskyActorNS; - album: AppRockskyAlbumNS; - apikey: AppRockskyApikeyNS; - artist: AppRockskyArtistNS; - charts: AppRockskyChartsNS; - dropbox: AppRockskyDropboxNS; - feed: AppRockskyFeedNS; - googledrive: AppRockskyGoogledriveNS; - graph: AppRockskyGraphNS; - like: AppRockskyLikeNS; - player: AppRockskyPlayerNS; - playlist: AppRockskyPlaylistNS; - scrobble: AppRockskyScrobbleNS; - shout: AppRockskyShoutNS; - song: AppRockskySongNS; - spotify: AppRockskySpotifyNS; - stats: AppRockskyStatsNS; + _server: Server + actor: AppRockskyActorNS + album: AppRockskyAlbumNS + apikey: AppRockskyApikeyNS + artist: AppRockskyArtistNS + charts: AppRockskyChartsNS + dropbox: AppRockskyDropboxNS + feed: AppRockskyFeedNS + googledrive: AppRockskyGoogledriveNS + graph: AppRockskyGraphNS + like: AppRockskyLikeNS + player: AppRockskyPlayerNS + playlist: AppRockskyPlaylistNS + scrobble: AppRockskyScrobbleNS + shout: AppRockskyShoutNS + song: AppRockskySongNS + spotify: AppRockskySpotifyNS + stats: AppRockskyStatsNS constructor(server: Server) { - this._server = server; - this.actor = new AppRockskyActorNS(server); - this.album = new AppRockskyAlbumNS(server); - this.apikey = new AppRockskyApikeyNS(server); - this.artist = new AppRockskyArtistNS(server); - this.charts = new AppRockskyChartsNS(server); - this.dropbox = new AppRockskyDropboxNS(server); - this.feed = new AppRockskyFeedNS(server); - this.googledrive = new AppRockskyGoogledriveNS(server); - this.graph = new AppRockskyGraphNS(server); - this.like = new AppRockskyLikeNS(server); - this.player = new AppRockskyPlayerNS(server); - this.playlist = new AppRockskyPlaylistNS(server); - this.scrobble = new AppRockskyScrobbleNS(server); - this.shout = new AppRockskyShoutNS(server); - this.song = new AppRockskySongNS(server); - this.spotify = new AppRockskySpotifyNS(server); - this.stats = new AppRockskyStatsNS(server); + this._server = server + this.actor = new AppRockskyActorNS(server) + this.album = new AppRockskyAlbumNS(server) + this.apikey = new AppRockskyApikeyNS(server) + this.artist = new AppRockskyArtistNS(server) + this.charts = new AppRockskyChartsNS(server) + this.dropbox = new AppRockskyDropboxNS(server) + this.feed = new AppRockskyFeedNS(server) + this.googledrive = new AppRockskyGoogledriveNS(server) + this.graph = new AppRockskyGraphNS(server) + this.like = new AppRockskyLikeNS(server) + this.player = new AppRockskyPlayerNS(server) + this.playlist = new AppRockskyPlaylistNS(server) + this.scrobble = new AppRockskyScrobbleNS(server) + this.shout = new AppRockskyShoutNS(server) + this.song = new AppRockskySongNS(server) + this.spotify = new AppRockskySpotifyNS(server) + this.stats = new AppRockskyStatsNS(server) } } export class AppRockskyActorNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } getActorAlbums( @@ -291,8 +291,8 @@ export class AppRockskyActorNS { AppRockskyActorGetActorAlbums.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getActorAlbums"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getActorAlbums' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getActorArtists( @@ -302,8 +302,8 @@ export class AppRockskyActorNS { AppRockskyActorGetActorArtists.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getActorArtists"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getActorArtists' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getActorCompatibility( @@ -313,8 +313,8 @@ export class AppRockskyActorNS { AppRockskyActorGetActorCompatibility.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getActorCompatibility"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getActorCompatibility' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getActorLovedSongs( @@ -324,8 +324,8 @@ export class AppRockskyActorNS { AppRockskyActorGetActorLovedSongs.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getActorLovedSongs"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getActorLovedSongs' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getActorNeighbours( @@ -335,8 +335,8 @@ export class AppRockskyActorNS { AppRockskyActorGetActorNeighbours.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getActorNeighbours"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getActorNeighbours' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getActorPlaylists( @@ -346,8 +346,8 @@ export class AppRockskyActorNS { AppRockskyActorGetActorPlaylists.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getActorPlaylists"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getActorPlaylists' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getActorScrobbles( @@ -357,8 +357,8 @@ export class AppRockskyActorNS { AppRockskyActorGetActorScrobbles.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getActorScrobbles"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getActorScrobbles' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getActorSongs( @@ -368,8 +368,8 @@ export class AppRockskyActorNS { AppRockskyActorGetActorSongs.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getActorSongs"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getActorSongs' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getProfile( @@ -379,16 +379,16 @@ export class AppRockskyActorNS { AppRockskyActorGetProfile.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.actor.getProfile"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.actor.getProfile' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyAlbumNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } getAlbum( @@ -398,8 +398,8 @@ export class AppRockskyAlbumNS { AppRockskyAlbumGetAlbum.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.album.getAlbum"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.album.getAlbum' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getAlbums( @@ -409,8 +409,8 @@ export class AppRockskyAlbumNS { AppRockskyAlbumGetAlbums.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.album.getAlbums"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.album.getAlbums' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getAlbumTracks( @@ -420,16 +420,16 @@ export class AppRockskyAlbumNS { AppRockskyAlbumGetAlbumTracks.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.album.getAlbumTracks"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.album.getAlbumTracks' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyApikeyNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } createApikey( @@ -439,8 +439,8 @@ export class AppRockskyApikeyNS { AppRockskyApikeyCreateApikey.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.apikey.createApikey"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.apikey.createApikey' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getApikeys( @@ -450,8 +450,8 @@ export class AppRockskyApikeyNS { AppRockskyApikeyGetApikeys.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.apikey.getApikeys"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.apikey.getApikeys' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } removeApikey( @@ -461,8 +461,8 @@ export class AppRockskyApikeyNS { AppRockskyApikeyRemoveApikey.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.apikey.removeApikey"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.apikey.removeApikey' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } updateApikey( @@ -472,16 +472,16 @@ export class AppRockskyApikeyNS { AppRockskyApikeyUpdateApikey.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.apikey.updateApikey"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.apikey.updateApikey' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyArtistNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } getArtist( @@ -491,8 +491,8 @@ export class AppRockskyArtistNS { AppRockskyArtistGetArtist.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.artist.getArtist"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.artist.getArtist' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getArtistAlbums( @@ -502,8 +502,8 @@ export class AppRockskyArtistNS { AppRockskyArtistGetArtistAlbums.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.artist.getArtistAlbums"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.artist.getArtistAlbums' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getArtistListeners( @@ -513,8 +513,8 @@ export class AppRockskyArtistNS { AppRockskyArtistGetArtistListeners.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.artist.getArtistListeners"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.artist.getArtistListeners' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getArtists( @@ -524,8 +524,8 @@ export class AppRockskyArtistNS { AppRockskyArtistGetArtists.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.artist.getArtists"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.artist.getArtists' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getArtistTracks( @@ -535,16 +535,16 @@ export class AppRockskyArtistNS { AppRockskyArtistGetArtistTracks.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.artist.getArtistTracks"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.artist.getArtistTracks' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyChartsNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } getScrobblesChart( @@ -554,16 +554,16 @@ export class AppRockskyChartsNS { AppRockskyChartsGetScrobblesChart.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.charts.getScrobblesChart"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.charts.getScrobblesChart' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyDropboxNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } downloadFile( @@ -573,8 +573,8 @@ export class AppRockskyDropboxNS { AppRockskyDropboxDownloadFile.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.dropbox.downloadFile"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.dropbox.downloadFile' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFiles( @@ -584,8 +584,8 @@ export class AppRockskyDropboxNS { AppRockskyDropboxGetFiles.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.dropbox.getFiles"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.dropbox.getFiles' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getMetadata( @@ -595,8 +595,8 @@ export class AppRockskyDropboxNS { AppRockskyDropboxGetMetadata.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.dropbox.getMetadata"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.dropbox.getMetadata' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getTemporaryLink( @@ -606,16 +606,16 @@ export class AppRockskyDropboxNS { AppRockskyDropboxGetTemporaryLink.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.dropbox.getTemporaryLink"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.dropbox.getTemporaryLink' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyFeedNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } describeFeedGenerator( @@ -625,8 +625,8 @@ export class AppRockskyFeedNS { AppRockskyFeedDescribeFeedGenerator.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.feed.describeFeedGenerator"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.feed.describeFeedGenerator' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFeed( @@ -636,8 +636,8 @@ export class AppRockskyFeedNS { AppRockskyFeedGetFeed.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.feed.getFeed"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.feed.getFeed' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFeedGenerator( @@ -647,8 +647,8 @@ export class AppRockskyFeedNS { AppRockskyFeedGetFeedGenerator.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.feed.getFeedGenerator"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.feed.getFeedGenerator' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFeedGenerators( @@ -658,8 +658,8 @@ export class AppRockskyFeedNS { AppRockskyFeedGetFeedGenerators.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.feed.getFeedGenerators"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.feed.getFeedGenerators' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFeedSkeleton( @@ -669,8 +669,8 @@ export class AppRockskyFeedNS { AppRockskyFeedGetFeedSkeleton.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.feed.getFeedSkeleton"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.feed.getFeedSkeleton' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getNowPlayings( @@ -680,8 +680,8 @@ export class AppRockskyFeedNS { AppRockskyFeedGetNowPlayings.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.feed.getNowPlayings"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.feed.getNowPlayings' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } search( @@ -691,16 +691,16 @@ export class AppRockskyFeedNS { AppRockskyFeedSearch.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.feed.search"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.feed.search' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyGoogledriveNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } downloadFile( @@ -710,8 +710,8 @@ export class AppRockskyGoogledriveNS { AppRockskyGoogledriveDownloadFile.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.googledrive.downloadFile"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.googledrive.downloadFile' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFile( @@ -721,8 +721,8 @@ export class AppRockskyGoogledriveNS { AppRockskyGoogledriveGetFile.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.googledrive.getFile"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.googledrive.getFile' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFiles( @@ -732,16 +732,16 @@ export class AppRockskyGoogledriveNS { AppRockskyGoogledriveGetFiles.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.googledrive.getFiles"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.googledrive.getFiles' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyGraphNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } followAccount( @@ -751,8 +751,8 @@ export class AppRockskyGraphNS { AppRockskyGraphFollowAccount.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.graph.followAccount"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.graph.followAccount' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFollowers( @@ -762,8 +762,8 @@ export class AppRockskyGraphNS { AppRockskyGraphGetFollowers.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.graph.getFollowers"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.graph.getFollowers' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getFollows( @@ -773,8 +773,8 @@ export class AppRockskyGraphNS { AppRockskyGraphGetFollows.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.graph.getFollows"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.graph.getFollows' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getKnownFollowers( @@ -784,8 +784,8 @@ export class AppRockskyGraphNS { AppRockskyGraphGetKnownFollowers.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.graph.getKnownFollowers"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.graph.getKnownFollowers' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } unfollowAccount( @@ -795,16 +795,16 @@ export class AppRockskyGraphNS { AppRockskyGraphUnfollowAccount.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.graph.unfollowAccount"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.graph.unfollowAccount' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyLikeNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } dislikeShout( @@ -814,8 +814,8 @@ export class AppRockskyLikeNS { AppRockskyLikeDislikeShout.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.like.dislikeShout"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.like.dislikeShout' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } dislikeSong( @@ -825,8 +825,8 @@ export class AppRockskyLikeNS { AppRockskyLikeDislikeSong.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.like.dislikeSong"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.like.dislikeSong' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } likeShout( @@ -836,8 +836,8 @@ export class AppRockskyLikeNS { AppRockskyLikeLikeShout.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.like.likeShout"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.like.likeShout' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } likeSong( @@ -847,16 +847,16 @@ export class AppRockskyLikeNS { AppRockskyLikeLikeSong.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.like.likeSong"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.like.likeSong' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyPlayerNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } addDirectoryToQueue( @@ -866,8 +866,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerAddDirectoryToQueue.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.addDirectoryToQueue"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.addDirectoryToQueue' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } addItemsToQueue( @@ -877,8 +877,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerAddItemsToQueue.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.addItemsToQueue"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.addItemsToQueue' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getCurrentlyPlaying( @@ -888,8 +888,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerGetCurrentlyPlaying.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.getCurrentlyPlaying"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.getCurrentlyPlaying' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getPlaybackQueue( @@ -899,8 +899,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerGetPlaybackQueue.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.getPlaybackQueue"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.getPlaybackQueue' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } next( @@ -910,8 +910,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerNext.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.next"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.next' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } pause( @@ -921,8 +921,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerPause.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.pause"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.pause' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } play( @@ -932,8 +932,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerPlay.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.play"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.play' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } playDirectory( @@ -943,8 +943,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerPlayDirectory.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.playDirectory"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.playDirectory' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } playFile( @@ -954,8 +954,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerPlayFile.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.playFile"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.playFile' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } previous( @@ -965,8 +965,8 @@ export class AppRockskyPlayerNS { AppRockskyPlayerPrevious.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.previous"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.previous' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } seek( @@ -976,16 +976,16 @@ export class AppRockskyPlayerNS { AppRockskyPlayerSeek.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.player.seek"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.player.seek' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyPlaylistNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } createPlaylist( @@ -995,8 +995,8 @@ export class AppRockskyPlaylistNS { AppRockskyPlaylistCreatePlaylist.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.playlist.createPlaylist"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.playlist.createPlaylist' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getPlaylist( @@ -1006,8 +1006,8 @@ export class AppRockskyPlaylistNS { AppRockskyPlaylistGetPlaylist.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.playlist.getPlaylist"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.playlist.getPlaylist' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getPlaylists( @@ -1017,8 +1017,8 @@ export class AppRockskyPlaylistNS { AppRockskyPlaylistGetPlaylists.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.playlist.getPlaylists"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.playlist.getPlaylists' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } insertDirectory( @@ -1028,8 +1028,8 @@ export class AppRockskyPlaylistNS { AppRockskyPlaylistInsertDirectory.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.playlist.insertDirectory"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.playlist.insertDirectory' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } insertFiles( @@ -1039,8 +1039,8 @@ export class AppRockskyPlaylistNS { AppRockskyPlaylistInsertFiles.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.playlist.insertFiles"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.playlist.insertFiles' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } removePlaylist( @@ -1050,8 +1050,8 @@ export class AppRockskyPlaylistNS { AppRockskyPlaylistRemovePlaylist.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.playlist.removePlaylist"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.playlist.removePlaylist' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } removeTrack( @@ -1061,8 +1061,8 @@ export class AppRockskyPlaylistNS { AppRockskyPlaylistRemoveTrack.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.playlist.removeTrack"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.playlist.removeTrack' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } startPlaylist( @@ -1072,16 +1072,16 @@ export class AppRockskyPlaylistNS { AppRockskyPlaylistStartPlaylist.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.playlist.startPlaylist"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.playlist.startPlaylist' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyScrobbleNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } createScrobble( @@ -1091,8 +1091,8 @@ export class AppRockskyScrobbleNS { AppRockskyScrobbleCreateScrobble.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.scrobble.createScrobble"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.scrobble.createScrobble' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getScrobble( @@ -1102,8 +1102,8 @@ export class AppRockskyScrobbleNS { AppRockskyScrobbleGetScrobble.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.scrobble.getScrobble"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.scrobble.getScrobble' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getScrobbles( @@ -1113,16 +1113,16 @@ export class AppRockskyScrobbleNS { AppRockskyScrobbleGetScrobbles.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.scrobble.getScrobbles"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.scrobble.getScrobbles' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyShoutNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } createShout( @@ -1132,8 +1132,8 @@ export class AppRockskyShoutNS { AppRockskyShoutCreateShout.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.createShout"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.createShout' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getAlbumShouts( @@ -1143,8 +1143,8 @@ export class AppRockskyShoutNS { AppRockskyShoutGetAlbumShouts.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.getAlbumShouts"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.getAlbumShouts' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getArtistShouts( @@ -1154,8 +1154,8 @@ export class AppRockskyShoutNS { AppRockskyShoutGetArtistShouts.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.getArtistShouts"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.getArtistShouts' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getProfileShouts( @@ -1165,8 +1165,8 @@ export class AppRockskyShoutNS { AppRockskyShoutGetProfileShouts.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.getProfileShouts"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.getProfileShouts' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getShoutReplies( @@ -1176,8 +1176,8 @@ export class AppRockskyShoutNS { AppRockskyShoutGetShoutReplies.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.getShoutReplies"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.getShoutReplies' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getTrackShouts( @@ -1187,8 +1187,8 @@ export class AppRockskyShoutNS { AppRockskyShoutGetTrackShouts.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.getTrackShouts"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.getTrackShouts' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } removeShout( @@ -1198,8 +1198,8 @@ export class AppRockskyShoutNS { AppRockskyShoutRemoveShout.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.removeShout"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.removeShout' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } replyShout( @@ -1209,8 +1209,8 @@ export class AppRockskyShoutNS { AppRockskyShoutReplyShout.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.replyShout"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.replyShout' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } reportShout( @@ -1220,16 +1220,16 @@ export class AppRockskyShoutNS { AppRockskyShoutReportShout.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.shout.reportShout"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.shout.reportShout' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskySongNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } createSong( @@ -1239,8 +1239,8 @@ export class AppRockskySongNS { AppRockskySongCreateSong.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.song.createSong"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.song.createSong' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getSong( @@ -1250,8 +1250,8 @@ export class AppRockskySongNS { AppRockskySongGetSong.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.song.getSong"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.song.getSong' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } getSongs( @@ -1261,8 +1261,8 @@ export class AppRockskySongNS { AppRockskySongGetSongs.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.song.getSongs"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.song.getSongs' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } matchSong( @@ -1272,16 +1272,16 @@ export class AppRockskySongNS { AppRockskySongMatchSong.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.song.matchSong"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.song.matchSong' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskySpotifyNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } getCurrentlyPlaying( @@ -1291,8 +1291,8 @@ export class AppRockskySpotifyNS { AppRockskySpotifyGetCurrentlyPlaying.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.spotify.getCurrentlyPlaying"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.spotify.getCurrentlyPlaying' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } next( @@ -1302,8 +1302,8 @@ export class AppRockskySpotifyNS { AppRockskySpotifyNext.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.spotify.next"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.spotify.next' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } pause( @@ -1313,8 +1313,8 @@ export class AppRockskySpotifyNS { AppRockskySpotifyPause.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.spotify.pause"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.spotify.pause' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } play( @@ -1324,8 +1324,8 @@ export class AppRockskySpotifyNS { AppRockskySpotifyPlay.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.spotify.play"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.spotify.play' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } previous( @@ -1335,8 +1335,8 @@ export class AppRockskySpotifyNS { AppRockskySpotifyPrevious.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.spotify.previous"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.spotify.previous' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } seek( @@ -1346,16 +1346,16 @@ export class AppRockskySpotifyNS { AppRockskySpotifySeek.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.spotify.seek"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.spotify.seek' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppRockskyStatsNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } getStats( @@ -1365,79 +1365,79 @@ export class AppRockskyStatsNS { AppRockskyStatsGetStats.HandlerReqCtx> >, ) { - const nsid = "app.rocksky.stats.getStats"; // @ts-ignore - return this._server.xrpc.method(nsid, cfg); + const nsid = 'app.rocksky.stats.getStats' // @ts-ignore + return this._server.xrpc.method(nsid, cfg) } } export class AppBskyNS { - _server: Server; - actor: AppBskyActorNS; + _server: Server + actor: AppBskyActorNS constructor(server: Server) { - this._server = server; - this.actor = new AppBskyActorNS(server); + this._server = server + this.actor = new AppBskyActorNS(server) } } export class AppBskyActorNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } } export class ComNS { - _server: Server; - atproto: ComAtprotoNS; + _server: Server + atproto: ComAtprotoNS constructor(server: Server) { - this._server = server; - this.atproto = new ComAtprotoNS(server); + this._server = server + this.atproto = new ComAtprotoNS(server) } } export class ComAtprotoNS { - _server: Server; - repo: ComAtprotoRepoNS; + _server: Server + repo: ComAtprotoRepoNS constructor(server: Server) { - this._server = server; - this.repo = new ComAtprotoRepoNS(server); + this._server = server + this.repo = new ComAtprotoRepoNS(server) } } export class ComAtprotoRepoNS { - _server: Server; + _server: Server constructor(server: Server) { - this._server = server; + this._server = server } } type SharedRateLimitOpts = { - name: string; - calcKey?: (ctx: T) => string | null; - calcPoints?: (ctx: T) => number; -}; + name: string + calcKey?: (ctx: T) => string | null + calcPoints?: (ctx: T) => number +} type RouteRateLimitOpts = { - durationMs: number; - points: number; - calcKey?: (ctx: T) => string | null; - calcPoints?: (ctx: T) => number; -}; -type HandlerOpts = { blobLimit?: number }; -type HandlerRateLimitOpts = SharedRateLimitOpts | RouteRateLimitOpts; + durationMs: number + points: number + calcKey?: (ctx: T) => string | null + calcPoints?: (ctx: T) => number +} +type HandlerOpts = { blobLimit?: number } +type HandlerRateLimitOpts = SharedRateLimitOpts | RouteRateLimitOpts type ConfigOf = | Handler | { - auth?: Auth; - opts?: HandlerOpts; - rateLimit?: HandlerRateLimitOpts | HandlerRateLimitOpts[]; - handler: Handler; - }; + auth?: Auth + opts?: HandlerOpts + rateLimit?: HandlerRateLimitOpts | HandlerRateLimitOpts[] + handler: Handler + } type ExtractAuth = Extract< Awaited>, { credentials: unknown } ->; +> diff --git a/apps/api/src/lexicon/lexicons.ts b/apps/api/src/lexicon/lexicons.ts index a31dbfe8..c8d3c4ed 100644 --- a/apps/api/src/lexicon/lexicons.ts +++ b/apps/api/src/lexicon/lexicons.ts @@ -1,72 +1,72 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type LexiconDoc, Lexicons } from "@atproto/lexicon"; +import { type LexiconDoc, Lexicons } from '@atproto/lexicon' export const schemaDict = { FmTealAlphaActorDefs: { lexicon: 1, - id: "fm.teal.alpha.actor.defs", + id: 'fm.teal.alpha.actor.defs', defs: { profileView: { - type: "object", + type: 'object', properties: { did: { - type: "string", - description: "The decentralized identifier of the actor", + type: 'string', + description: 'The decentralized identifier of the actor', }, displayName: { - type: "string", + type: 'string', }, description: { - type: "string", - description: "Free-form profile description text.", + type: 'string', + description: 'Free-form profile description text.', }, descriptionFacets: { - type: "array", + type: 'array', description: - "Annotations of text in the profile description (mentions, URLs, hashtags, etc). May be changed to another (backwards compatible) lexicon.", + 'Annotations of text in the profile description (mentions, URLs, hashtags, etc). May be changed to another (backwards compatible) lexicon.', items: { - type: "ref", - ref: "lex:app.bsky.richtext.facet", + type: 'ref', + ref: 'lex:app.bsky.richtext.facet', }, }, featuredItem: { - type: "ref", + type: 'ref', description: "The user's most recent item featured on their profile.", - ref: "lex:fm.teal.alpha.actor.profile#featuredItem", + ref: 'lex:fm.teal.alpha.actor.profile#featuredItem', }, avatar: { - type: "string", - description: "IPLD of the avatar", + type: 'string', + description: 'IPLD of the avatar', }, banner: { - type: "string", - description: "IPLD of the banner image", + type: 'string', + description: 'IPLD of the banner image', }, createdAt: { - type: "string", - format: "datetime", + type: 'string', + format: 'datetime', }, }, }, miniProfileView: { - type: "object", + type: 'object', properties: { did: { - type: "string", - description: "The decentralized identifier of the actor", + type: 'string', + description: 'The decentralized identifier of the actor', }, displayName: { - type: "string", + type: 'string', }, handle: { - type: "string", + type: 'string', }, avatar: { - type: "string", - description: "IPLD of the avatar", + type: 'string', + description: 'IPLD of the avatar', }, }, }, @@ -74,32 +74,32 @@ export const schemaDict = { }, FmTealAlphaActorGetProfile: { lexicon: 1, - id: "fm.teal.alpha.actor.getProfile", + id: 'fm.teal.alpha.actor.getProfile', description: - "This lexicon is in a not officially released state. It is subject to change. | Retrieves a play given an author DID and record key.", + 'This lexicon is in a not officially released state. It is subject to change. | Retrieves a play given an author DID and record key.', defs: { main: { - type: "query", + type: 'query', parameters: { - type: "params", - required: ["actor"], + type: 'params', + required: ['actor'], properties: { actor: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', description: "The author's DID", }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["actor"], + type: 'object', + required: ['actor'], properties: { actor: { - type: "ref", - ref: "lex:fm.teal.alpha.actor.defs#profileView", + type: 'ref', + ref: 'lex:fm.teal.alpha.actor.defs#profileView', }, }, }, @@ -109,37 +109,37 @@ export const schemaDict = { }, FmTealAlphaActorGetProfiles: { lexicon: 1, - id: "fm.teal.alpha.actor.getProfiles", + id: 'fm.teal.alpha.actor.getProfiles', description: - "This lexicon is in a not officially released state. It is subject to change. | Retrieves the associated profile.", + 'This lexicon is in a not officially released state. It is subject to change. | Retrieves the associated profile.', defs: { main: { - type: "query", + type: 'query', parameters: { - type: "params", - required: ["actors"], + type: 'params', + required: ['actors'], properties: { actors: { - type: "array", + type: 'array', items: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', }, - description: "Array of actor DIDs", + description: 'Array of actor DIDs', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["actors"], + type: 'object', + required: ['actors'], properties: { actors: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:fm.teal.alpha.actor.defs#miniProfileView", + type: 'ref', + ref: 'lex:fm.teal.alpha.actor.defs#miniProfileView', }, }, }, @@ -150,75 +150,75 @@ export const schemaDict = { }, FmTealAlphaActorProfile: { lexicon: 1, - id: "fm.teal.alpha.actor.profile", + id: 'fm.teal.alpha.actor.profile', defs: { main: { - type: "record", + type: 'record', description: - "This lexicon is in a not officially released state. It is subject to change. | A declaration of a teal.fm account profile.", - key: "literal:self", + 'This lexicon is in a not officially released state. It is subject to change. | A declaration of a teal.fm account profile.', + key: 'literal:self', record: { - type: "object", + type: 'object', properties: { displayName: { - type: "string", + type: 'string', maxGraphemes: 64, maxLength: 640, }, description: { - type: "string", - description: "Free-form profile description text.", + type: 'string', + description: 'Free-form profile description text.', maxGraphemes: 256, maxLength: 2560, }, descriptionFacets: { - type: "array", + type: 'array', description: - "Annotations of text in the profile description (mentions, URLs, hashtags, etc).", + 'Annotations of text in the profile description (mentions, URLs, hashtags, etc).', items: { - type: "ref", - ref: "lex:app.bsky.richtext.facet", + type: 'ref', + ref: 'lex:app.bsky.richtext.facet', }, }, featuredItem: { - type: "ref", + type: 'ref', description: "The user's most recent item featured on their profile.", - ref: "lex:fm.teal.alpha.actor.profile#featuredItem", + ref: 'lex:fm.teal.alpha.actor.profile#featuredItem', }, avatar: { - type: "blob", + type: 'blob', description: "Small image to be displayed next to posts from account. AKA, 'profile picture'", - accept: ["image/png", "image/jpeg"], + accept: ['image/png', 'image/jpeg'], maxSize: 1000000, }, banner: { - type: "blob", + type: 'blob', description: - "Larger horizontal image to display behind profile view.", - accept: ["image/png", "image/jpeg"], + 'Larger horizontal image to display behind profile view.', + accept: ['image/png', 'image/jpeg'], maxSize: 1000000, }, createdAt: { - type: "string", - format: "datetime", + type: 'string', + format: 'datetime', }, }, }, }, featuredItem: { - type: "object", - required: ["mbid", "type"], + type: 'object', + required: ['mbid', 'type'], properties: { mbid: { - type: "string", - description: "The Musicbrainz ID of the item", + type: 'string', + description: 'The Musicbrainz ID of the item', }, type: { - type: "string", + type: 'string', description: - "The type of the item. Must be a valid Musicbrainz type, e.g. album, track, recording, etc.", + 'The type of the item. Must be a valid Musicbrainz type, e.g. album, track, recording, etc.', }, }, }, @@ -226,50 +226,50 @@ export const schemaDict = { }, FmTealAlphaActorSearchActors: { lexicon: 1, - id: "fm.teal.alpha.actor.searchActors", + id: 'fm.teal.alpha.actor.searchActors', description: - "This lexicon is in a not officially released state. It is subject to change. | Searches for actors based on profile contents.", + 'This lexicon is in a not officially released state. It is subject to change. | Searches for actors based on profile contents.', defs: { main: { - type: "query", + type: 'query', parameters: { - type: "params", - required: ["q"], + type: 'params', + required: ['q'], properties: { q: { - type: "string", - description: "The search query", + type: 'string', + description: 'The search query', maxGraphemes: 128, maxLength: 640, }, limit: { - type: "integer", - description: "The maximum number of actors to return", + type: 'integer', + description: 'The maximum number of actors to return', minimum: 1, maximum: 25, }, cursor: { - type: "string", - description: "Cursor for pagination", + type: 'string', + description: 'Cursor for pagination', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["actors"], + type: 'object', + required: ['actors'], properties: { actors: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:fm.teal.alpha.actor.defs#miniProfileView", + type: 'ref', + ref: 'lex:fm.teal.alpha.actor.defs#miniProfileView', }, }, cursor: { - type: "string", - description: "Cursor for pagination", + type: 'string', + description: 'Cursor for pagination', }, }, }, @@ -279,31 +279,31 @@ export const schemaDict = { }, FmTealAlphaActorStatus: { lexicon: 1, - id: "fm.teal.alpha.actor.status", + id: 'fm.teal.alpha.actor.status', defs: { main: { - type: "record", + type: 'record', description: - "This lexicon is in a not officially released state. It is subject to change. | A declaration of the status of the actor. Only one can be shown at a time. If there are multiple, the latest record should be picked and earlier records should be deleted or tombstoned.", - key: "literal:self", + 'This lexicon is in a not officially released state. It is subject to change. | A declaration of the status of the actor. Only one can be shown at a time. If there are multiple, the latest record should be picked and earlier records should be deleted or tombstoned.', + key: 'literal:self', record: { - type: "object", - required: ["time", "item"], + type: 'object', + required: ['time', 'item'], properties: { time: { - type: "string", - format: "datetime", - description: "The unix timestamp of when the item was recorded", + type: 'string', + format: 'datetime', + description: 'The unix timestamp of when the item was recorded', }, expiry: { - type: "string", - format: "datetime", + type: 'string', + format: 'datetime', description: - "The unix timestamp of the expiry time of the item. If unavailable, default to 10 minutes past the start time.", + 'The unix timestamp of the expiry time of the item. If unavailable, default to 10 minutes past the start time.', }, item: { - type: "ref", - ref: "lex:fm.teal.alpha.feed.defs#playView", + type: 'ref', + ref: 'lex:fm.teal.alpha.feed.defs#playView', }, }, }, @@ -312,92 +312,92 @@ export const schemaDict = { }, FmTealAlphaFeedDefs: { lexicon: 1, - id: "fm.teal.alpha.feed.defs", + id: 'fm.teal.alpha.feed.defs', description: - "This lexicon is in a not officially released state. It is subject to change. | Misc. items related to feeds.", + 'This lexicon is in a not officially released state. It is subject to change. | Misc. items related to feeds.', defs: { playView: { - type: "object", - required: ["trackName", "artists"], + type: 'object', + required: ['trackName', 'artists'], properties: { trackName: { - type: "string", + type: 'string', minLength: 1, maxLength: 256, maxGraphemes: 2560, - description: "The name of the track", + description: 'The name of the track', }, trackMbId: { - type: "string", - description: "The Musicbrainz ID of the track", + type: 'string', + description: 'The Musicbrainz ID of the track', }, recordingMbId: { - type: "string", - description: "The Musicbrainz recording ID of the track", + type: 'string', + description: 'The Musicbrainz recording ID of the track', }, duration: { - type: "integer", - description: "The length of the track in seconds", + type: 'integer', + description: 'The length of the track in seconds', }, artists: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:fm.teal.alpha.feed.defs#artist", + type: 'ref', + ref: 'lex:fm.teal.alpha.feed.defs#artist', }, - description: "Array of artists in order of original appearance.", + description: 'Array of artists in order of original appearance.', }, releaseName: { - type: "string", + type: 'string', maxLength: 256, maxGraphemes: 2560, - description: "The name of the release/album", + description: 'The name of the release/album', }, releaseMbId: { - type: "string", - description: "The Musicbrainz release ID", + type: 'string', + description: 'The Musicbrainz release ID', }, isrc: { - type: "string", - description: "The ISRC code associated with the recording", + type: 'string', + description: 'The ISRC code associated with the recording', }, originUrl: { - type: "string", - description: "The URL associated with this track", + type: 'string', + description: 'The URL associated with this track', }, musicServiceBaseDomain: { - type: "string", + type: 'string', description: "The base domain of the music service. e.g. music.apple.com, tidal.com, spotify.com. Defaults to 'local' if not provided.", }, submissionClientAgent: { - type: "string", + type: 'string', maxLength: 256, maxGraphemes: 2560, description: "A user-agent style string specifying the user agent. e.g. tealtracker/0.0.1b (Linux; Android 13; SM-A715F). Defaults to 'manual/unknown' if not provided.", }, playedTime: { - type: "string", - format: "datetime", - description: "The unix timestamp of when the track was played", + type: 'string', + format: 'datetime', + description: 'The unix timestamp of when the track was played', }, }, }, artist: { - type: "object", - required: ["artistName"], + type: 'object', + required: ['artistName'], properties: { artistName: { - type: "string", + type: 'string', minLength: 1, maxLength: 256, maxGraphemes: 2560, - description: "The name of the artist", + description: 'The name of the artist', }, artistMbId: { - type: "string", - description: "The Musicbrainz ID of the artist", + type: 'string', + description: 'The Musicbrainz ID of the artist', }, }, }, @@ -405,43 +405,43 @@ export const schemaDict = { }, FmTealAlphaFeedGetActorFeed: { lexicon: 1, - id: "fm.teal.alpha.feed.getActorFeed", + id: 'fm.teal.alpha.feed.getActorFeed', description: "This lexicon is in a not officially released state. It is subject to change. | Retrieves multiple plays from the index or via an author's DID.", defs: { main: { - type: "query", + type: 'query', parameters: { - type: "params", - required: ["authorDID"], + type: 'params', + required: ['authorDID'], properties: { authorDID: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', description: "The author's DID for the play", }, cursor: { - type: "string", - description: "The cursor to start the query from", + type: 'string', + description: 'The cursor to start the query from', }, limit: { - type: "integer", + type: 'integer', description: - "The upper limit of tracks to get per request. Default is 20, max is 50.", + 'The upper limit of tracks to get per request. Default is 20, max is 50.', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["plays"], + type: 'object', + required: ['plays'], properties: { plays: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:fm.teal.alpha.feed.defs#playView", + type: 'ref', + ref: 'lex:fm.teal.alpha.feed.defs#playView', }, }, }, @@ -452,36 +452,36 @@ export const schemaDict = { }, FmTealAlphaFeedGetPlay: { lexicon: 1, - id: "fm.teal.alpha.feed.getPlay", + id: 'fm.teal.alpha.feed.getPlay', description: - "This lexicon is in a not officially released state. It is subject to change. | Retrieves a play given an author DID and record key.", + 'This lexicon is in a not officially released state. It is subject to change. | Retrieves a play given an author DID and record key.', defs: { main: { - type: "query", + type: 'query', parameters: { - type: "params", - required: ["authorDID", "rkey"], + type: 'params', + required: ['authorDID', 'rkey'], properties: { authorDID: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', description: "The author's DID for the play", }, rkey: { - type: "string", - description: "The record key of the play", + type: 'string', + description: 'The record key of the play', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["play"], + type: 'object', + required: ['play'], properties: { play: { - type: "ref", - ref: "lex:fm.teal.alpha.feed.defs#playView", + type: 'ref', + ref: 'lex:fm.teal.alpha.feed.defs#playView', }, }, }, @@ -491,40 +491,40 @@ export const schemaDict = { }, FmTealAlphaFeedPlay: { lexicon: 1, - id: "fm.teal.alpha.feed.play", + id: 'fm.teal.alpha.feed.play', description: "This lexicon is in a not officially released state. It is subject to change. | A declaration of a teal.fm play. Plays are submitted as a result of a user listening to a track. Plays should be marked as tracked when a user has listened to the entire track if it's under 2 minutes long, or half of the track's duration up to 4 minutes, whichever is longest.", defs: { main: { - type: "record", - key: "tid", + type: 'record', + key: 'tid', record: { - type: "object", - required: ["trackName"], + type: 'object', + required: ['trackName'], properties: { trackName: { - type: "string", + type: 'string', minLength: 1, maxLength: 256, maxGraphemes: 2560, - description: "The name of the track", + description: 'The name of the track', }, trackMbId: { - type: "string", - description: "The Musicbrainz ID of the track", + type: 'string', + description: 'The Musicbrainz ID of the track', }, recordingMbId: { - type: "string", - description: "The Musicbrainz recording ID of the track", + type: 'string', + description: 'The Musicbrainz recording ID of the track', }, duration: { - type: "integer", - description: "The length of the track in seconds", + type: 'integer', + description: 'The length of the track in seconds', }, artistNames: { - type: "array", + type: 'array', items: { - type: "string", + type: 'string', minLength: 1, maxLength: 256, maxGraphemes: 2560, @@ -533,55 +533,55 @@ export const schemaDict = { "Array of artist names in order of original appearance. Prefer using 'artists'.", }, artistMbIds: { - type: "array", + type: 'array', items: { - type: "string", + type: 'string', }, description: "Array of Musicbrainz artist IDs. Prefer using 'artists'.", }, artists: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:fm.teal.alpha.feed.defs#artist", + type: 'ref', + ref: 'lex:fm.teal.alpha.feed.defs#artist', }, - description: "Array of artists in order of original appearance.", + description: 'Array of artists in order of original appearance.', }, releaseName: { - type: "string", + type: 'string', maxLength: 256, maxGraphemes: 2560, - description: "The name of the release/album", + description: 'The name of the release/album', }, releaseMbId: { - type: "string", - description: "The Musicbrainz release ID", + type: 'string', + description: 'The Musicbrainz release ID', }, isrc: { - type: "string", - description: "The ISRC code associated with the recording", + type: 'string', + description: 'The ISRC code associated with the recording', }, originUrl: { - type: "string", - description: "The URL associated with this track", + type: 'string', + description: 'The URL associated with this track', }, musicServiceBaseDomain: { - type: "string", + type: 'string', description: "The base domain of the music service. e.g. music.apple.com, tidal.com, spotify.com. Defaults to 'local' if unavailable or not provided.", }, submissionClientAgent: { - type: "string", + type: 'string', maxLength: 256, maxGraphemes: 2560, description: "A metadata string specifying the user agent where the format is `/ (; ; )`. If string is provided, only `app-identifier` and `version` are required. `app-identifier` is recommended to be in reverse dns format. Defaults to 'manual/unknown' if unavailable or not provided.", }, playedTime: { - type: "string", - format: "datetime", - description: "The unix timestamp of when the track was played", + type: 'string', + format: 'datetime', + description: 'The unix timestamp of when the track was played', }, }, }, @@ -590,183 +590,183 @@ export const schemaDict = { }, AppRockskyActorDefs: { lexicon: 1, - id: "app.rocksky.actor.defs", + id: 'app.rocksky.actor.defs', defs: { profileViewDetailed: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the actor.", + type: 'string', + description: 'The unique identifier of the actor.', }, did: { - type: "string", - description: "The DID of the actor.", + type: 'string', + description: 'The DID of the actor.', }, handle: { - type: "string", - description: "The handle of the actor.", + type: 'string', + description: 'The handle of the actor.', }, displayName: { - type: "string", - description: "The display name of the actor.", + type: 'string', + description: 'The display name of the actor.', }, avatar: { - type: "string", + type: 'string', description: "The URL of the actor's avatar image.", - format: "uri", + format: 'uri', }, createdAt: { - type: "string", - description: "The date and time when the actor was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the actor was created.', + format: 'datetime', }, updatedAt: { - type: "string", - description: "The date and time when the actor was last updated.", - format: "datetime", + type: 'string', + description: 'The date and time when the actor was last updated.', + format: 'datetime', }, }, }, profileViewBasic: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the actor.", + type: 'string', + description: 'The unique identifier of the actor.', }, did: { - type: "string", - description: "The DID of the actor.", + type: 'string', + description: 'The DID of the actor.', }, handle: { - type: "string", - description: "The handle of the actor.", + type: 'string', + description: 'The handle of the actor.', }, displayName: { - type: "string", - description: "The display name of the actor.", + type: 'string', + description: 'The display name of the actor.', }, avatar: { - type: "string", + type: 'string', description: "The URL of the actor's avatar image.", - format: "uri", + format: 'uri', }, createdAt: { - type: "string", - description: "The date and time when the actor was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the actor was created.', + format: 'datetime', }, updatedAt: { - type: "string", - description: "The date and time when the actor was last updated.", - format: "datetime", + type: 'string', + description: 'The date and time when the actor was last updated.', + format: 'datetime', }, }, }, neighbourViewBasic: { - type: "object", + type: 'object', properties: { userId: { - type: "string", + type: 'string', }, did: { - type: "string", + type: 'string', }, handle: { - type: "string", + type: 'string', }, displayName: { - type: "string", + type: 'string', }, avatar: { - type: "string", + type: 'string', description: "The URL of the actor's avatar image.", - format: "uri", + format: 'uri', }, sharedArtistsCount: { - type: "integer", - description: "The number of artists shared with the actor.", + type: 'integer', + description: 'The number of artists shared with the actor.', }, similarityScore: { - type: "integer", - description: "The similarity score with the actor.", + type: 'integer', + description: 'The similarity score with the actor.', }, topSharedArtistNames: { - type: "array", - description: "The top shared artist names with the actor.", + type: 'array', + description: 'The top shared artist names with the actor.', items: { - type: "string", + type: 'string', }, }, topSharedArtistsDetails: { - type: "array", - description: "The top shared artist details with the actor.", + type: 'array', + description: 'The top shared artist details with the actor.', items: { - type: "ref", - ref: "lex:app.rocksky.artist.defs#artistViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.artist.defs#artistViewBasic', }, }, }, }, compatibilityViewBasic: { - type: "object", + type: 'object', properties: { compatibilityLevel: { - type: "integer", + type: 'integer', }, compatibilityPercentage: { - type: "integer", + type: 'integer', }, sharedArtists: { - type: "integer", + type: 'integer', }, topSharedArtistNames: { - type: "array", + type: 'array', items: { - type: "string", + type: 'string', }, }, topSharedDetailedArtists: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#artistViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#artistViewBasic', }, }, user1ArtistCount: { - type: "integer", + type: 'integer', }, user2ArtistCount: { - type: "integer", + type: 'integer', }, }, }, artistViewBasic: { - type: "object", + type: 'object', properties: { id: { - type: "string", + type: 'string', }, name: { - type: "string", + type: 'string', }, picture: { - type: "string", - format: "uri", + type: 'string', + format: 'uri', }, uri: { - type: "string", - format: "at-uri", + type: 'string', + format: 'at-uri', }, user1Rank: { - type: "integer", + type: 'integer', }, user2Rank: { - type: "integer", + type: 'integer', }, weight: { - type: "integer", + type: 'integer', }, }, }, @@ -774,53 +774,53 @@ export const schemaDict = { }, AppRockskyActorGetActorAlbums: { lexicon: 1, - id: "app.rocksky.actor.getActorAlbums", + id: 'app.rocksky.actor.getActorAlbums', defs: { main: { - type: "query", - description: "Get albums for an actor", + type: 'query', + description: 'Get albums for an actor', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, limit: { - type: "integer", - description: "The maximum number of albums to return", + type: 'integer', + description: 'The maximum number of albums to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, startDate: { - type: "string", + type: 'string', description: - "The start date to filter albums from (ISO 8601 format)", - format: "datetime", + 'The start date to filter albums from (ISO 8601 format)', + format: 'datetime', }, endDate: { - type: "string", - description: "The end date to filter albums to (ISO 8601 format)", - format: "datetime", + type: 'string', + description: 'The end date to filter albums to (ISO 8601 format)', + format: 'datetime', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { albums: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.album.defs#albumViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.album.defs#albumViewBasic', }, }, }, @@ -831,53 +831,53 @@ export const schemaDict = { }, AppRockskyActorGetActorArtists: { lexicon: 1, - id: "app.rocksky.actor.getActorArtists", + id: 'app.rocksky.actor.getActorArtists', defs: { main: { - type: "query", - description: "Get artists for an actor", + type: 'query', + description: 'Get artists for an actor', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, limit: { - type: "integer", - description: "The maximum number of albums to return", + type: 'integer', + description: 'The maximum number of albums to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, startDate: { - type: "string", + type: 'string', description: - "The start date to filter albums from (ISO 8601 format)", - format: "datetime", + 'The start date to filter albums from (ISO 8601 format)', + format: 'datetime', }, endDate: { - type: "string", - description: "The end date to filter albums to (ISO 8601 format)", - format: "datetime", + type: 'string', + description: 'The end date to filter albums to (ISO 8601 format)', + format: 'datetime', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { artists: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.artist.defs#artistViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.artist.defs#artistViewBasic', }, }, }, @@ -888,30 +888,30 @@ export const schemaDict = { }, AppRockskyActorGetActorCompatibility: { lexicon: 1, - id: "app.rocksky.actor.getActorCompatibility", + id: 'app.rocksky.actor.getActorCompatibility', defs: { main: { - type: "query", - description: "Get compatibility for an actor", + type: 'query', + description: 'Get compatibility for an actor', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "DID or handle to get compatibility for", - format: "at-identifier", + type: 'string', + description: 'DID or handle to get compatibility for', + format: 'at-identifier', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { compatibility: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#compatibilityViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#compatibilityViewBasic', }, }, }, @@ -921,42 +921,42 @@ export const schemaDict = { }, AppRockskyActorGetActorLovedSongs: { lexicon: 1, - id: "app.rocksky.actor.getActorLovedSongs", + id: 'app.rocksky.actor.getActorLovedSongs', defs: { main: { - type: "query", - description: "Get loved songs for an actor", + type: 'query', + description: 'Get loved songs for an actor', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, limit: { - type: "integer", - description: "The maximum number of albums to return", + type: 'integer', + description: 'The maximum number of albums to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { tracks: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewBasic', }, }, }, @@ -967,32 +967,32 @@ export const schemaDict = { }, AppRockskyActorGetActorNeighbours: { lexicon: 1, - id: "app.rocksky.actor.getActorNeighbours", + id: 'app.rocksky.actor.getActorNeighbours', defs: { main: { - type: "query", - description: "Get neighbours for an actor", + type: 'query', + description: 'Get neighbours for an actor', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { neighbours: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#neighbourViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#neighbourViewBasic', }, }, }, @@ -1003,42 +1003,42 @@ export const schemaDict = { }, AppRockskyActorGetActorPlaylists: { lexicon: 1, - id: "app.rocksky.actor.getActorPlaylists", + id: 'app.rocksky.actor.getActorPlaylists', defs: { main: { - type: "query", - description: "Get playlists for an actor", + type: 'query', + description: 'Get playlists for an actor', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, limit: { - type: "integer", - description: "The maximum number of albums to return", + type: 'integer', + description: 'The maximum number of albums to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { playlists: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.playlist.defs#playlistViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.playlist.defs#playlistViewBasic', }, }, }, @@ -1049,42 +1049,42 @@ export const schemaDict = { }, AppRockskyActorGetActorScrobbles: { lexicon: 1, - id: "app.rocksky.actor.getActorScrobbles", + id: 'app.rocksky.actor.getActorScrobbles', defs: { main: { - type: "query", - description: "Get scrobbles for an actor", + type: 'query', + description: 'Get scrobbles for an actor', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, limit: { - type: "integer", - description: "The maximum number of albums to return", + type: 'integer', + description: 'The maximum number of albums to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { scrobbles: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.scrobble.defs#scrobbleViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.scrobble.defs#scrobbleViewBasic', }, }, }, @@ -1095,53 +1095,53 @@ export const schemaDict = { }, AppRockskyActorGetActorSongs: { lexicon: 1, - id: "app.rocksky.actor.getActorSongs", + id: 'app.rocksky.actor.getActorSongs', defs: { main: { - type: "query", - description: "Get songs for an actor", + type: 'query', + description: 'Get songs for an actor', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, limit: { - type: "integer", - description: "The maximum number of albums to return", + type: 'integer', + description: 'The maximum number of albums to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, startDate: { - type: "string", + type: 'string', description: - "The start date to filter albums from (ISO 8601 format)", - format: "datetime", + 'The start date to filter albums from (ISO 8601 format)', + format: 'datetime', }, endDate: { - type: "string", - description: "The end date to filter albums to (ISO 8601 format)", - format: "datetime", + type: 'string', + description: 'The end date to filter albums to (ISO 8601 format)', + format: 'datetime', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { songs: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewBasic', }, }, }, @@ -1152,26 +1152,26 @@ export const schemaDict = { }, AppRockskyActorGetProfile: { lexicon: 1, - id: "app.rocksky.actor.getProfile", + id: 'app.rocksky.actor.getProfile', defs: { main: { - type: "query", - description: "Get the profile of an actor", + type: 'query', + description: 'Get the profile of an actor', parameters: { - type: "params", + type: 'params', properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewDetailed', }, }, }, @@ -1179,53 +1179,53 @@ export const schemaDict = { }, AppBskyActorProfile: { lexicon: 1, - id: "app.bsky.actor.profile", + id: 'app.bsky.actor.profile', defs: { main: { - type: "record", - description: "A declaration of a Bluesky account profile.", - key: "literal:self", + type: 'record', + description: 'A declaration of a Bluesky account profile.', + key: 'literal:self', record: { - type: "object", + type: 'object', properties: { displayName: { - type: "string", + type: 'string', maxGraphemes: 64, maxLength: 640, }, description: { - type: "string", - description: "Free-form profile description text.", + type: 'string', + description: 'Free-form profile description text.', maxGraphemes: 256, maxLength: 2560, }, avatar: { - type: "blob", + type: 'blob', description: "Small image to be displayed next to posts from account. AKA, 'profile picture'", - accept: ["image/png", "image/jpeg"], + accept: ['image/png', 'image/jpeg'], maxSize: 1000000, }, banner: { - type: "blob", + type: 'blob', description: - "Larger horizontal image to display behind profile view.", - accept: ["image/png", "image/jpeg"], + 'Larger horizontal image to display behind profile view.', + accept: ['image/png', 'image/jpeg'], maxSize: 10000000, }, labels: { - type: "union", + type: 'union', description: - "Self-label values, specific to the Bluesky application, on the overall account.", - refs: ["lex:com.atproto.label.defs#selfLabels"], + 'Self-label values, specific to the Bluesky application, on the overall account.', + refs: ['lex:com.atproto.label.defs#selfLabels'], }, joinedViaStarterPack: { - type: "ref", - ref: "lex:com.atproto.repo.strongRef", + type: 'ref', + ref: 'lex:com.atproto.repo.strongRef', }, createdAt: { - type: "string", - format: "datetime", + type: 'string', + format: 'datetime', }, }, }, @@ -1234,90 +1234,90 @@ export const schemaDict = { }, AppRockskyAlbum: { lexicon: 1, - id: "app.rocksky.album", + id: 'app.rocksky.album', defs: { main: { - type: "record", - description: "A declaration of an album.", - key: "tid", + type: 'record', + description: 'A declaration of an album.', + key: 'tid', record: { - type: "object", - required: ["title", "artist", "createdAt"], + type: 'object', + required: ['title', 'artist', 'createdAt'], properties: { title: { - type: "string", - description: "The title of the album.", + type: 'string', + description: 'The title of the album.', minLength: 1, maxLength: 512, }, artist: { - type: "string", - description: "The artist of the album.", + type: 'string', + description: 'The artist of the album.', minLength: 1, maxLength: 256, }, duration: { - type: "integer", - description: "The duration of the album in seconds.", + type: 'integer', + description: 'The duration of the album in seconds.', }, releaseDate: { - type: "string", - description: "The release date of the album.", - format: "datetime", + type: 'string', + description: 'The release date of the album.', + format: 'datetime', }, year: { - type: "integer", - description: "The year the album was released.", + type: 'integer', + description: 'The year the album was released.', }, genre: { - type: "string", - description: "The genre of the album.", + type: 'string', + description: 'The genre of the album.', maxLength: 256, }, albumArt: { - type: "blob", - description: "The album art of the album.", - accept: ["image/png", "image/jpeg"], + type: 'blob', + description: 'The album art of the album.', + accept: ['image/png', 'image/jpeg'], maxSize: 2000000, }, albumArtUrl: { - type: "string", - description: "The URL of the album art of the album.", - format: "uri", + type: 'string', + description: 'The URL of the album art of the album.', + format: 'uri', }, tags: { - type: "array", - description: "The tags of the album.", + type: 'array', + description: 'The tags of the album.', items: { - type: "string", + type: 'string', minLength: 1, maxLength: 256, }, }, youtubeLink: { - type: "string", - description: "The YouTube link of the album.", - format: "uri", + type: 'string', + description: 'The YouTube link of the album.', + format: 'uri', }, spotifyLink: { - type: "string", - description: "The Spotify link of the album.", - format: "uri", + type: 'string', + description: 'The Spotify link of the album.', + format: 'uri', }, tidalLink: { - type: "string", - description: "The tidal link of the album.", - format: "uri", + type: 'string', + description: 'The tidal link of the album.', + format: 'uri', }, appleMusicLink: { - type: "string", - description: "The Apple Music link of the album.", - format: "uri", + type: 'string', + description: 'The Apple Music link of the album.', + format: 'uri', }, createdAt: { - type: "string", - description: "The date and time when the album was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the album was created.', + format: 'datetime', }, }, }, @@ -1326,127 +1326,127 @@ export const schemaDict = { }, AppRockskyAlbumDefs: { lexicon: 1, - id: "app.rocksky.album.defs", + id: 'app.rocksky.album.defs', defs: { albumViewBasic: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the album.", + type: 'string', + description: 'The unique identifier of the album.', }, uri: { - type: "string", - description: "The URI of the album.", - format: "at-uri", + type: 'string', + description: 'The URI of the album.', + format: 'at-uri', }, title: { - type: "string", - description: "The title of the album.", + type: 'string', + description: 'The title of the album.', }, artist: { - type: "string", - description: "The artist of the album.", + type: 'string', + description: 'The artist of the album.', }, artistUri: { - type: "string", + type: 'string', description: "The URI of the album's artist.", - format: "at-uri", + format: 'at-uri', }, year: { - type: "integer", - description: "The year the album was released.", + type: 'integer', + description: 'The year the album was released.', }, albumArt: { - type: "string", - description: "The URL of the album art image.", - format: "uri", + type: 'string', + description: 'The URL of the album art image.', + format: 'uri', }, releaseDate: { - type: "string", - description: "The release date of the album.", + type: 'string', + description: 'The release date of the album.', }, sha256: { - type: "string", - description: "The SHA256 hash of the album.", + type: 'string', + description: 'The SHA256 hash of the album.', }, playCount: { - type: "integer", - description: "The number of times the album has been played.", + type: 'integer', + description: 'The number of times the album has been played.', minimum: 0, }, uniqueListeners: { - type: "integer", + type: 'integer', description: - "The number of unique listeners who have played the album.", + 'The number of unique listeners who have played the album.', minimum: 0, }, }, }, albumViewDetailed: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the album.", + type: 'string', + description: 'The unique identifier of the album.', }, uri: { - type: "string", - description: "The URI of the album.", - format: "at-uri", + type: 'string', + description: 'The URI of the album.', + format: 'at-uri', }, title: { - type: "string", - description: "The title of the album.", + type: 'string', + description: 'The title of the album.', }, artist: { - type: "string", - description: "The artist of the album.", + type: 'string', + description: 'The artist of the album.', }, artistUri: { - type: "string", + type: 'string', description: "The URI of the album's artist.", - format: "at-uri", + format: 'at-uri', }, year: { - type: "integer", - description: "The year the album was released.", + type: 'integer', + description: 'The year the album was released.', }, albumArt: { - type: "string", - description: "The URL of the album art image.", - format: "uri", + type: 'string', + description: 'The URL of the album art image.', + format: 'uri', }, releaseDate: { - type: "string", - description: "The release date of the album.", + type: 'string', + description: 'The release date of the album.', }, sha256: { - type: "string", - description: "The SHA256 hash of the album.", + type: 'string', + description: 'The SHA256 hash of the album.', }, playCount: { - type: "integer", - description: "The number of times the album has been played.", + type: 'integer', + description: 'The number of times the album has been played.', minimum: 0, }, uniqueListeners: { - type: "integer", + type: 'integer', description: - "The number of unique listeners who have played the album.", + 'The number of unique listeners who have played the album.', minimum: 0, }, tags: { - type: "array", + type: 'array', items: { - type: "string", + type: 'string', }, }, tracks: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.song.defs.songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs.songViewBasic', }, }, }, @@ -1455,27 +1455,27 @@ export const schemaDict = { }, AppRockskyAlbumGetAlbum: { lexicon: 1, - id: "app.rocksky.album.getAlbum", + id: 'app.rocksky.album.getAlbum', defs: { main: { - type: "query", - description: "Get detailed album view", + type: 'query', + description: 'Get detailed album view', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the album to retrieve.", - format: "at-uri", + type: 'string', + description: 'The URI of the album to retrieve.', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.album.defs#albumViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.album.defs#albumViewDetailed', }, }, }, @@ -1483,36 +1483,40 @@ export const schemaDict = { }, AppRockskyAlbumGetAlbums: { lexicon: 1, - id: "app.rocksky.album.getAlbums", + id: 'app.rocksky.album.getAlbums', defs: { main: { - type: "query", - description: "Get albums", + type: 'query', + description: 'Get albums', parameters: { - type: "params", + type: 'params', properties: { limit: { - type: "integer", - description: "The maximum number of albums to return", + type: 'integer', + description: 'The maximum number of albums to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, + genre: { + type: 'string', + description: 'The genre to filter artists by', + }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { albums: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.album.defs#albumViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.album.defs#albumViewBasic', }, }, }, @@ -1523,32 +1527,32 @@ export const schemaDict = { }, AppRockskyAlbumGetAlbumTracks: { lexicon: 1, - id: "app.rocksky.album.getAlbumTracks", + id: 'app.rocksky.album.getAlbumTracks', defs: { main: { - type: "query", - description: "Get tracks for an album", + type: 'query', + description: 'Get tracks for an album', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the album to retrieve tracks from", - format: "at-uri", + type: 'string', + description: 'The URI of the album to retrieve tracks from', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { tracks: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewBasic', }, }, }, @@ -1559,33 +1563,33 @@ export const schemaDict = { }, AppRockskyApikeyCreateApikey: { lexicon: 1, - id: "app.rocksky.apikey.createApikey", + id: 'app.rocksky.apikey.createApikey', defs: { main: { - type: "procedure", - description: "Create a new API key for the authenticated user", + type: 'procedure', + description: 'Create a new API key for the authenticated user', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["name"], + type: 'object', + required: ['name'], properties: { name: { - type: "string", - description: "The name of the API key.", + type: 'string', + description: 'The name of the API key.', }, description: { - type: "string", - description: "A description for the API key.", + type: 'string', + description: 'A description for the API key.', }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.apikey.defs#apiKey", + type: 'ref', + ref: 'lex:app.rocksky.apikey.defs#apiKey', }, }, }, @@ -1593,27 +1597,27 @@ export const schemaDict = { }, AppRockskyApikeyDefs: { lexicon: 1, - id: "app.rocksky.apikey.defs", + id: 'app.rocksky.apikey.defs', defs: { apiKeyView: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the API key.", + type: 'string', + description: 'The unique identifier of the API key.', }, name: { - type: "string", - description: "The name of the API key.", + type: 'string', + description: 'The name of the API key.', }, description: { - type: "string", - description: "A description for the API key.", + type: 'string', + description: 'A description for the API key.', }, createdAt: { - type: "string", - description: "The date and time when the API key was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the API key was created.', + format: 'datetime', }, }, }, @@ -1621,40 +1625,40 @@ export const schemaDict = { }, AppRockskyApikeysDefs: { lexicon: 1, - id: "app.rocksky.apikeys.defs", + id: 'app.rocksky.apikeys.defs', defs: {}, }, AppRockskyApikeyGetApikeys: { lexicon: 1, - id: "app.rocksky.apikey.getApikeys", + id: 'app.rocksky.apikey.getApikeys', defs: { main: { - type: "query", - description: "Get a list of API keys for the authenticated user", + type: 'query', + description: 'Get a list of API keys for the authenticated user', parameters: { - type: "params", + type: 'params', properties: { offset: { - type: "integer", + type: 'integer', description: - "The number of API keys to skip before starting to collect the result set.", + 'The number of API keys to skip before starting to collect the result set.', }, limit: { - type: "integer", - description: "The number of API keys to return per page.", + type: 'integer', + description: 'The number of API keys to return per page.', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { apiKeys: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.apikey.defs#apikeyView", + type: 'ref', + ref: 'lex:app.rocksky.apikey.defs#apikeyView', }, }, }, @@ -1665,26 +1669,26 @@ export const schemaDict = { }, AppRockskyApikeyRemoveApikey: { lexicon: 1, - id: "app.rocksky.apikey.removeApikey", + id: 'app.rocksky.apikey.removeApikey', defs: { main: { - type: "procedure", - description: "Remove an API key for the authenticated user", + type: 'procedure', + description: 'Remove an API key for the authenticated user', parameters: { - type: "params", - required: ["id"], + type: 'params', + required: ['id'], properties: { id: { - type: "string", - description: "The ID of the API key to remove.", + type: 'string', + description: 'The ID of the API key to remove.', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.apikey.defs#apiKey", + type: 'ref', + ref: 'lex:app.rocksky.apikey.defs#apiKey', }, }, }, @@ -1692,37 +1696,37 @@ export const schemaDict = { }, AppRockskyApikeyUpdateApikey: { lexicon: 1, - id: "app.rocksky.apikey.updateApikey", + id: 'app.rocksky.apikey.updateApikey', defs: { main: { - type: "procedure", - description: "Update an existing API key for the authenticated user", + type: 'procedure', + description: 'Update an existing API key for the authenticated user', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["id", "name"], + type: 'object', + required: ['id', 'name'], properties: { id: { - type: "string", - description: "The ID of the API key to update.", + type: 'string', + description: 'The ID of the API key to update.', }, name: { - type: "string", - description: "The new name of the API key.", + type: 'string', + description: 'The new name of the API key.', }, description: { - type: "string", - description: "A new description for the API key.", + type: 'string', + description: 'A new description for the API key.', }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.apikey.defs#apiKey", + type: 'ref', + ref: 'lex:app.rocksky.apikey.defs#apiKey', }, }, }, @@ -1730,66 +1734,66 @@ export const schemaDict = { }, AppRockskyArtist: { lexicon: 1, - id: "app.rocksky.artist", + id: 'app.rocksky.artist', defs: { main: { - type: "record", - description: "A declaration of an artist.", - key: "tid", + type: 'record', + description: 'A declaration of an artist.', + key: 'tid', record: { - type: "object", - required: ["name", "createdAt"], + type: 'object', + required: ['name', 'createdAt'], properties: { name: { - type: "string", - description: "The name of the artist.", + type: 'string', + description: 'The name of the artist.', minLength: 1, maxLength: 512, }, bio: { - type: "string", - description: "The biography of the artist.", + type: 'string', + description: 'The biography of the artist.', maxLength: 1000, }, picture: { - type: "blob", - description: "The picture of the artist.", - accept: ["image/png", "image/jpeg"], + type: 'blob', + description: 'The picture of the artist.', + accept: ['image/png', 'image/jpeg'], maxSize: 2000000, }, pictureUrl: { - type: "string", - description: "The URL of the picture of the artist.", - format: "uri", + type: 'string', + description: 'The URL of the picture of the artist.', + format: 'uri', }, tags: { - type: "array", - description: "The tags of the artist.", + type: 'array', + description: 'The tags of the artist.', items: { - type: "string", + type: 'string', minLength: 1, maxLength: 256, }, }, born: { - type: "string", - description: "The birth date of the artist.", - format: "datetime", + type: 'string', + description: 'The birth date of the artist.', + format: 'datetime', }, died: { - type: "string", - description: "The death date of the artist.", - format: "datetime", + type: 'string', + description: 'The death date of the artist.', + format: 'datetime', }, bornIn: { - type: "string", - description: "The birth place of the artist.", + type: 'string', + description: 'The birth place of the artist.', maxLength: 256, }, createdAt: { - type: "string", - description: "The date when the artist was created.", - format: "datetime", + type: 'string', + description: 'The date when the artist was created.', + format: 'datetime', }, }, }, @@ -1798,164 +1802,164 @@ export const schemaDict = { }, AppRockskyArtistDefs: { lexicon: 1, - id: "app.rocksky.artist.defs", + id: 'app.rocksky.artist.defs', defs: { artistViewBasic: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the artist.", + type: 'string', + description: 'The unique identifier of the artist.', }, uri: { - type: "string", - description: "The URI of the artist.", - format: "at-uri", + type: 'string', + description: 'The URI of the artist.', + format: 'at-uri', }, name: { - type: "string", - description: "The name of the artist.", + type: 'string', + description: 'The name of the artist.', }, picture: { - type: "string", - description: "The picture of the artist.", + type: 'string', + description: 'The picture of the artist.', }, sha256: { - type: "string", - description: "The SHA256 hash of the artist.", + type: 'string', + description: 'The SHA256 hash of the artist.', }, playCount: { - type: "integer", - description: "The number of times the artist has been played.", + type: 'integer', + description: 'The number of times the artist has been played.', minimum: 0, }, uniqueListeners: { - type: "integer", + type: 'integer', description: - "The number of unique listeners who have played the artist.", + 'The number of unique listeners who have played the artist.', minimum: 0, }, tags: { - type: "array", + type: 'array', items: { - type: "string", + type: 'string', }, }, }, }, artistViewDetailed: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the artist.", + type: 'string', + description: 'The unique identifier of the artist.', }, uri: { - type: "string", - description: "The URI of the artist.", - format: "at-uri", + type: 'string', + description: 'The URI of the artist.', + format: 'at-uri', }, name: { - type: "string", - description: "The name of the artist.", + type: 'string', + description: 'The name of the artist.', }, picture: { - type: "string", - description: "The picture of the artist.", + type: 'string', + description: 'The picture of the artist.', }, sha256: { - type: "string", - description: "The SHA256 hash of the artist.", + type: 'string', + description: 'The SHA256 hash of the artist.', }, playCount: { - type: "integer", - description: "The number of times the artist has been played.", + type: 'integer', + description: 'The number of times the artist has been played.', minimum: 0, }, uniqueListeners: { - type: "integer", + type: 'integer', description: - "The number of unique listeners who have played the artist.", + 'The number of unique listeners who have played the artist.', minimum: 0, }, tags: { - type: "array", + type: 'array', items: { - type: "string", + type: 'string', }, }, }, }, songViewBasic: { - type: "object", + type: 'object', properties: { uri: { - type: "string", - description: "The URI of the song.", - format: "at-uri", + type: 'string', + description: 'The URI of the song.', + format: 'at-uri', }, title: { - type: "string", - description: "The title of the song.", + type: 'string', + description: 'The title of the song.', }, playCount: { - type: "integer", - description: "The number of times the song has been played.", + type: 'integer', + description: 'The number of times the song has been played.', minimum: 0, }, }, }, listenerViewBasic: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the actor.", + type: 'string', + description: 'The unique identifier of the actor.', }, did: { - type: "string", - description: "The DID of the listener.", + type: 'string', + description: 'The DID of the listener.', }, handle: { - type: "string", - description: "The handle of the listener.", + type: 'string', + description: 'The handle of the listener.', }, displayName: { - type: "string", - description: "The display name of the listener.", + type: 'string', + description: 'The display name of the listener.', }, avatar: { - type: "string", + type: 'string', description: "The URL of the listener's avatar image.", - format: "uri", + format: 'uri', }, mostListenedSong: { - type: "ref", - ref: "lex:app.rocksky.artist.defs#songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.artist.defs#songViewBasic', }, totalPlays: { - type: "integer", - description: "The total number of plays by the listener.", + type: 'integer', + description: 'The total number of plays by the listener.', minimum: 0, }, rank: { - type: "integer", + type: 'integer', description: - "The rank of the listener among all listeners of the artist.", + 'The rank of the listener among all listeners of the artist.', minimum: 1, }, }, }, artistMbid: { - type: "object", + type: 'object', properties: { mbid: { - type: "string", - description: "The MusicBrainz Identifier (MBID) of the artist.", + type: 'string', + description: 'The MusicBrainz Identifier (MBID) of the artist.', }, name: { - type: "string", - description: "The name of the artist.", + type: 'string', + description: 'The name of the artist.', minLength: 1, maxLength: 256, }, @@ -1965,27 +1969,27 @@ export const schemaDict = { }, AppRockskyArtistGetArtist: { lexicon: 1, - id: "app.rocksky.artist.getArtist", + id: 'app.rocksky.artist.getArtist', defs: { main: { - type: "query", - description: "Get artist details", + type: 'query', + description: 'Get artist details', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the artist to retrieve details from", - format: "at-uri", + type: 'string', + description: 'The URI of the artist to retrieve details from', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.artist.defs#artistViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.artist.defs#artistViewDetailed', }, }, }, @@ -1993,32 +1997,32 @@ export const schemaDict = { }, AppRockskyArtistGetArtistAlbums: { lexicon: 1, - id: "app.rocksky.artist.getArtistAlbums", + id: 'app.rocksky.artist.getArtistAlbums', defs: { main: { - type: "query", + type: 'query', description: "Get artist's albums", parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the artist to retrieve albums from", - format: "at-uri", + type: 'string', + description: 'The URI of the artist to retrieve albums from', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { albums: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.album.defs#albumViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.album.defs#albumViewBasic', }, }, }, @@ -2029,40 +2033,40 @@ export const schemaDict = { }, AppRockskyArtistGetArtistListeners: { lexicon: 1, - id: "app.rocksky.artist.getArtistListeners", + id: 'app.rocksky.artist.getArtistListeners', defs: { main: { - type: "query", - description: "Get artist listeners", + type: 'query', + description: 'Get artist listeners', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the artist to retrieve listeners from", - format: "at-uri", + type: 'string', + description: 'The URI of the artist to retrieve listeners from', + format: 'at-uri', }, offset: { - type: "integer", - description: "Number of items to skip before returning results", + type: 'integer', + description: 'Number of items to skip before returning results', }, limit: { - type: "integer", - description: "Maximum number of results to return", + type: 'integer', + description: 'Maximum number of results to return', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { listeners: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.artist.defs#listenerViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.artist.defs#listenerViewBasic', }, }, }, @@ -2073,40 +2077,44 @@ export const schemaDict = { }, AppRockskyArtistGetArtists: { lexicon: 1, - id: "app.rocksky.artist.getArtists", + id: 'app.rocksky.artist.getArtists', defs: { main: { - type: "query", - description: "Get artists", + type: 'query', + description: 'Get artists', parameters: { - type: "params", + type: 'params', properties: { limit: { - type: "integer", - description: "The maximum number of artists to return", + type: 'integer', + description: 'The maximum number of artists to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, names: { - type: "string", - description: "The names of the artists to return", + type: 'string', + description: 'The names of the artists to return', + }, + genre: { + type: 'string', + description: 'The genre to filter artists by', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { artists: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.artist.defs#artistViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.artist.defs#artistViewBasic', }, }, }, @@ -2117,41 +2125,41 @@ export const schemaDict = { }, AppRockskyArtistGetArtistTracks: { lexicon: 1, - id: "app.rocksky.artist.getArtistTracks", + id: 'app.rocksky.artist.getArtistTracks', defs: { main: { - type: "query", + type: 'query', description: "Get artist's tracks", parameters: { - type: "params", + type: 'params', properties: { uri: { - type: "string", - description: "The URI of the artist to retrieve albums from", - format: "at-uri", + type: 'string', + description: 'The URI of the artist to retrieve albums from', + format: 'at-uri', }, limit: { - type: "integer", - description: "The maximum number of tracks to return", + type: 'integer', + description: 'The maximum number of tracks to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { tracks: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewBasic', }, }, }, @@ -2162,31 +2170,31 @@ export const schemaDict = { }, AppRockskyChartsDefs: { lexicon: 1, - id: "app.rocksky.charts.defs", + id: 'app.rocksky.charts.defs', defs: { chartsView: { - type: "object", + type: 'object', properties: { scrobbles: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.charts.defs#scrobbleViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.charts.defs#scrobbleViewBasic', }, }, }, }, scrobbleViewBasic: { - type: "object", + type: 'object', properties: { date: { - type: "string", - description: "The date of the scrobble.", - format: "datetime", + type: 'string', + description: 'The date of the scrobble.', + format: 'datetime', }, count: { - type: "integer", - description: "The number of scrobbles on this date.", + type: 'integer', + description: 'The number of scrobbles on this date.', }, }, }, @@ -2194,41 +2202,41 @@ export const schemaDict = { }, AppRockskyChartsGetScrobblesChart: { lexicon: 1, - id: "app.rocksky.charts.getScrobblesChart", + id: 'app.rocksky.charts.getScrobblesChart', defs: { main: { - type: "query", - description: "Get the scrobbles chart", + type: 'query', + description: 'Get the scrobbles chart', parameters: { - type: "params", + type: 'params', properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, artisturi: { - type: "string", - description: "The URI of the artist to filter by", - format: "at-uri", + type: 'string', + description: 'The URI of the artist to filter by', + format: 'at-uri', }, albumuri: { - type: "string", - description: "The URI of the album to filter by", - format: "at-uri", + type: 'string', + description: 'The URI of the album to filter by', + format: 'at-uri', }, songuri: { - type: "string", - description: "The URI of the track to filter by", - format: "at-uri", + type: 'string', + description: 'The URI of the track to filter by', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.charts.defs#chartsView", + type: 'ref', + ref: 'lex:app.rocksky.charts.defs#chartsView', }, }, }, @@ -2236,61 +2244,61 @@ export const schemaDict = { }, AppRockskyDropboxDefs: { lexicon: 1, - id: "app.rocksky.dropbox.defs", + id: 'app.rocksky.dropbox.defs', defs: { fileView: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the file.", + type: 'string', + description: 'The unique identifier of the file.', }, name: { - type: "string", - description: "The name of the file.", + type: 'string', + description: 'The name of the file.', }, pathLower: { - type: "string", - description: "The lowercased path of the file.", + type: 'string', + description: 'The lowercased path of the file.', }, pathDisplay: { - type: "string", - description: "The display path of the file.", + type: 'string', + description: 'The display path of the file.', }, clientModified: { - type: "string", + type: 'string', description: - "The last modified date and time of the file on the client.", - format: "datetime", + 'The last modified date and time of the file on the client.', + format: 'datetime', }, serverModified: { - type: "string", + type: 'string', description: - "The last modified date and time of the file on the server.", - format: "datetime", + 'The last modified date and time of the file on the server.', + format: 'datetime', }, }, }, fileListView: { - type: "object", + type: 'object', properties: { files: { - type: "array", - description: "A list of files in the Dropbox.", + type: 'array', + description: 'A list of files in the Dropbox.', items: { - type: "ref", - ref: "lex:app.rocksky.dropbox.defs#fileView", + type: 'ref', + ref: 'lex:app.rocksky.dropbox.defs#fileView', }, }, }, }, temporaryLinkView: { - type: "object", + type: 'object', properties: { link: { - type: "string", - description: "The temporary link to access the file.", - format: "uri", + type: 'string', + description: 'The temporary link to access the file.', + format: 'uri', }, }, }, @@ -2298,48 +2306,48 @@ export const schemaDict = { }, AppRockskyDropboxDownloadFile: { lexicon: 1, - id: "app.rocksky.dropbox.downloadFile", + id: 'app.rocksky.dropbox.downloadFile', defs: { main: { - type: "query", - description: "Download a file from Dropbox by its unique identifier", + type: 'query', + description: 'Download a file from Dropbox by its unique identifier', parameters: { - type: "params", - required: ["fileId"], + type: 'params', + required: ['fileId'], properties: { fileId: { - type: "string", - description: "The unique identifier of the file to download", + type: 'string', + description: 'The unique identifier of the file to download', }, }, }, output: { - encoding: "application/octet-stream", + encoding: 'application/octet-stream', }, }, }, }, AppRockskyDropboxGetFiles: { lexicon: 1, - id: "app.rocksky.dropbox.getFiles", + id: 'app.rocksky.dropbox.getFiles', defs: { main: { - type: "query", - description: "Retrieve a list of files from Dropbox", + type: 'query', + description: 'Retrieve a list of files from Dropbox', parameters: { - type: "params", + type: 'params', properties: { at: { - type: "string", - description: "Path to the Dropbox folder or root directory", + type: 'string', + description: 'Path to the Dropbox folder or root directory', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.dropbox.defs#fileListView", + type: 'ref', + ref: 'lex:app.rocksky.dropbox.defs#fileListView', }, }, }, @@ -2347,26 +2355,26 @@ export const schemaDict = { }, AppRockskyDropboxGetMetadata: { lexicon: 1, - id: "app.rocksky.dropbox.getMetadata", + id: 'app.rocksky.dropbox.getMetadata', defs: { main: { - type: "query", - description: "Retrieve metadata of a file or folder in Dropbox", + type: 'query', + description: 'Retrieve metadata of a file or folder in Dropbox', parameters: { - type: "params", - required: ["path"], + type: 'params', + required: ['path'], properties: { path: { - type: "string", - description: "Path to the file or folder in Dropbox", + type: 'string', + description: 'Path to the file or folder in Dropbox', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.dropbox.defs#fileView", + type: 'ref', + ref: 'lex:app.rocksky.dropbox.defs#fileView', }, }, }, @@ -2374,26 +2382,26 @@ export const schemaDict = { }, AppRockskyDropboxGetTemporaryLink: { lexicon: 1, - id: "app.rocksky.dropbox.getTemporaryLink", + id: 'app.rocksky.dropbox.getTemporaryLink', defs: { main: { - type: "query", - description: "Retrieve a temporary link to access a file in Dropbox", + type: 'query', + description: 'Retrieve a temporary link to access a file in Dropbox', parameters: { - type: "params", - required: ["path"], + type: 'params', + required: ['path'], properties: { path: { - type: "string", - description: "Path to the file in Dropbox", + type: 'string', + description: 'Path to the file in Dropbox', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.dropbox.defs#temporaryLinkView", + type: 'ref', + ref: 'lex:app.rocksky.dropbox.defs#temporaryLinkView', }, }, }, @@ -2401,177 +2409,177 @@ export const schemaDict = { }, AppRockskyFeedDefs: { lexicon: 1, - id: "app.rocksky.feed.defs", + id: 'app.rocksky.feed.defs', defs: { searchResultsView: { - type: "object", + type: 'object', properties: { hits: { - type: "array", + type: 'array', items: { - type: "union", + type: 'union', refs: [ - "lex:app.rocksky.song.defs#songViewBasic", - "lex:app.rocksky.album.defs#albumViewBasic", - "lex:app.rocksky.artist.defs#artistViewBasic", - "lex:app.rocksky.playlist.defs#playlistViewBasic", - "lex:app.rocksky.actor.defs#profileViewBasic", + 'lex:app.rocksky.song.defs#songViewBasic', + 'lex:app.rocksky.album.defs#albumViewBasic', + 'lex:app.rocksky.artist.defs#artistViewBasic', + 'lex:app.rocksky.playlist.defs#playlistViewBasic', + 'lex:app.rocksky.actor.defs#profileViewBasic', ], }, }, processingTimeMs: { - type: "integer", + type: 'integer', }, limit: { - type: "integer", + type: 'integer', }, offset: { - type: "integer", + type: 'integer', }, estimatedTotalHits: { - type: "integer", + type: 'integer', }, }, }, nowPlayingView: { - type: "object", + type: 'object', properties: { album: { - type: "string", + type: 'string', }, albumArt: { - type: "string", - format: "uri", + type: 'string', + format: 'uri', }, albumArtist: { - type: "string", + type: 'string', }, albumUri: { - type: "string", - format: "at-uri", + type: 'string', + format: 'at-uri', }, artist: { - type: "string", + type: 'string', }, artistUri: { - type: "string", - format: "at-uri", + type: 'string', + format: 'at-uri', }, avatar: { - type: "string", - format: "uri", + type: 'string', + format: 'uri', }, createdAt: { - type: "string", + type: 'string', }, did: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', }, handle: { - type: "string", + type: 'string', }, id: { - type: "string", + type: 'string', }, title: { - type: "string", + type: 'string', }, trackId: { - type: "string", + type: 'string', }, trackUri: { - type: "string", - format: "at-uri", + type: 'string', + format: 'at-uri', }, uri: { - type: "string", - format: "at-uri", + type: 'string', + format: 'at-uri', }, }, }, nowPlayingsView: { - type: "object", + type: 'object', properties: { nowPlayings: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#nowPlayingView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#nowPlayingView', }, }, }, }, feedGeneratorsView: { - type: "object", + type: 'object', properties: { feeds: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#feedGeneratorView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#feedGeneratorView', }, }, }, }, feedGeneratorView: { - type: "object", + type: 'object', properties: { id: { - type: "string", + type: 'string', }, name: { - type: "string", + type: 'string', }, description: { - type: "string", + type: 'string', }, uri: { - type: "string", - format: "at-uri", + type: 'string', + format: 'at-uri', }, avatar: { - type: "string", - format: "uri", + type: 'string', + format: 'uri', }, creator: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, }, }, feedUriView: { - type: "object", + type: 'object', properties: { uri: { - type: "string", - description: "The feed URI.", - format: "at-uri", + type: 'string', + description: 'The feed URI.', + format: 'at-uri', }, }, }, feedItemView: { - type: "object", + type: 'object', properties: { scrobble: { - type: "ref", - ref: "lex:app.rocksky.scrobble.defs#scrobbleViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.scrobble.defs#scrobbleViewBasic', }, }, }, feedView: { - type: "object", + type: 'object', properties: { feed: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#feedItemView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#feedItemView', }, }, cursor: { - type: "string", - description: "The pagination cursor for the next set of results.", + type: 'string', + description: 'The pagination cursor for the next set of results.', }, }, }, @@ -2579,32 +2587,32 @@ export const schemaDict = { }, AppRockskyFeedDescribeFeedGenerator: { lexicon: 1, - id: "app.rocksky.feed.describeFeedGenerator", + id: 'app.rocksky.feed.describeFeedGenerator', defs: { main: { - type: "query", - description: "Get information about a feed generator", + type: 'query', + description: 'Get information about a feed generator', parameters: { - type: "params", + type: 'params', properties: {}, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { did: { - type: "string", - description: "The DID of the feed generator.", - format: "at-identifier", + type: 'string', + description: 'The DID of the feed generator.', + format: 'at-identifier', }, feeds: { - type: "array", + type: 'array', description: - "List of feed URIs generated by this feed generator.", + 'List of feed URIs generated by this feed generator.', items: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#feedUriView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#feedUriView', }, }, }, @@ -2615,39 +2623,39 @@ export const schemaDict = { }, AppRockskyFeedGenerator: { lexicon: 1, - id: "app.rocksky.feed.generator", + id: 'app.rocksky.feed.generator', defs: { main: { - type: "record", + type: 'record', description: - "Record declaring of the existence of a feed generator, and containing metadata about it. The record can exist in any repository.", - key: "tid", + 'Record declaring of the existence of a feed generator, and containing metadata about it. The record can exist in any repository.', + key: 'tid', record: { - type: "object", - required: ["did", "displayName", "createdAt"], + type: 'object', + required: ['did', 'displayName', 'createdAt'], properties: { did: { - type: "string", - format: "did", + type: 'string', + format: 'did', }, avatar: { - type: "blob", - accept: ["image/png", "image/jpeg"], + type: 'blob', + accept: ['image/png', 'image/jpeg'], maxSize: 1000000, }, displayName: { - type: "string", + type: 'string', maxGraphemes: 24, maxLength: 240, }, description: { - type: "string", + type: 'string', maxGraphemes: 300, maxLength: 3000, }, createdAt: { - type: "string", - format: "datetime", + type: 'string', + format: 'datetime', }, }, }, @@ -2656,36 +2664,36 @@ export const schemaDict = { }, AppRockskyFeedGetFeed: { lexicon: 1, - id: "app.rocksky.feed.getFeed", + id: 'app.rocksky.feed.getFeed', defs: { main: { - type: "query", - description: "Get the feed by uri", + type: 'query', + description: 'Get the feed by uri', parameters: { - type: "params", - required: ["feed"], + type: 'params', + required: ['feed'], properties: { feed: { - type: "string", - description: "The feed URI.", - format: "at-uri", + type: 'string', + description: 'The feed URI.', + format: 'at-uri', }, limit: { - type: "integer", - description: "The maximum number of scrobbles to return", + type: 'integer', + description: 'The maximum number of scrobbles to return', minimum: 1, }, cursor: { - type: "string", - description: "The cursor for pagination", + type: 'string', + description: 'The cursor for pagination', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#feedView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#feedView', }, }, }, @@ -2693,30 +2701,30 @@ export const schemaDict = { }, AppRockskyFeedGetFeedGenerator: { lexicon: 1, - id: "app.rocksky.feed.getFeedGenerator", + id: 'app.rocksky.feed.getFeedGenerator', defs: { main: { - type: "query", - description: "Get information about a feed generator", + type: 'query', + description: 'Get information about a feed generator', parameters: { - type: "params", - required: ["feed"], + type: 'params', + required: ['feed'], properties: { feed: { - type: "string", - description: "AT-URI of the feed generator record.", - format: "at-uri", + type: 'string', + description: 'AT-URI of the feed generator record.', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { view: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#feedGeneratorView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#feedGeneratorView', }, }, }, @@ -2726,26 +2734,26 @@ export const schemaDict = { }, AppRockskyFeedGetFeedGenerators: { lexicon: 1, - id: "app.rocksky.feed.getFeedGenerators", + id: 'app.rocksky.feed.getFeedGenerators', defs: { main: { - type: "query", - description: "Get all feed generators", + type: 'query', + description: 'Get all feed generators', parameters: { - type: "params", + type: 'params', properties: { size: { - type: "integer", - description: "The maximum number of feed generators to return.", + type: 'integer', + description: 'The maximum number of feed generators to return.', minimum: 1, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#feedGeneratorsView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#feedGeneratorsView', }, }, }, @@ -2753,52 +2761,52 @@ export const schemaDict = { }, AppRockskyFeedGetFeedSkeleton: { lexicon: 1, - id: "app.rocksky.feed.getFeedSkeleton", + id: 'app.rocksky.feed.getFeedSkeleton', defs: { main: { - type: "query", - description: "Get the feed by uri", + type: 'query', + description: 'Get the feed by uri', parameters: { - type: "params", - required: ["feed"], + type: 'params', + required: ['feed'], properties: { feed: { - type: "string", - description: "The feed URI.", - format: "at-uri", + type: 'string', + description: 'The feed URI.', + format: 'at-uri', }, limit: { - type: "integer", - description: "The maximum number of scrobbles to return", + type: 'integer', + description: 'The maximum number of scrobbles to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, cursor: { - type: "string", - description: "The pagination cursor.", + type: 'string', + description: 'The pagination cursor.', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { scrobbles: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.scrobble.defs#scrobbleViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.scrobble.defs#scrobbleViewBasic', }, }, cursor: { - type: "string", + type: 'string', description: - "The pagination cursor for the next set of results.", + 'The pagination cursor for the next set of results.', }, }, }, @@ -2808,27 +2816,27 @@ export const schemaDict = { }, AppRockskyFeedGetNowPlayings: { lexicon: 1, - id: "app.rocksky.feed.getNowPlayings", + id: 'app.rocksky.feed.getNowPlayings', defs: { main: { - type: "query", - description: "Get all currently playing tracks by users", + type: 'query', + description: 'Get all currently playing tracks by users', parameters: { - type: "params", + type: 'params', properties: { size: { - type: "integer", + type: 'integer', description: - "The maximum number of now playing tracks to return.", + 'The maximum number of now playing tracks to return.', minimum: 1, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#nowPlayingsView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#nowPlayingsView', }, }, }, @@ -2836,26 +2844,26 @@ export const schemaDict = { }, AppRockskyFeedSearch: { lexicon: 1, - id: "app.rocksky.feed.search", + id: 'app.rocksky.feed.search', defs: { main: { - type: "query", - description: "Search for content in the feed", + type: 'query', + description: 'Search for content in the feed', parameters: { - type: "params", - required: ["query"], + type: 'params', + required: ['query'], properties: { query: { - type: "string", - description: "The search query string", + type: 'string', + description: 'The search query string', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.feed.defs#searchResultsView", + type: 'ref', + ref: 'lex:app.rocksky.feed.defs#searchResultsView', }, }, }, @@ -2863,25 +2871,25 @@ export const schemaDict = { }, AppRockskyGoogledriveDefs: { lexicon: 1, - id: "app.rocksky.googledrive.defs", + id: 'app.rocksky.googledrive.defs', defs: { fileView: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the file.", + type: 'string', + description: 'The unique identifier of the file.', }, }, }, fileListView: { - type: "object", + type: 'object', properties: { files: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.googledrive.defs#fileView", + type: 'ref', + ref: 'lex:app.rocksky.googledrive.defs#fileView', }, }, }, @@ -2890,50 +2898,50 @@ export const schemaDict = { }, AppRockskyGoogledriveDownloadFile: { lexicon: 1, - id: "app.rocksky.googledrive.downloadFile", + id: 'app.rocksky.googledrive.downloadFile', defs: { main: { - type: "query", + type: 'query', description: - "Download a file from Google Drive by its unique identifier", + 'Download a file from Google Drive by its unique identifier', parameters: { - type: "params", - required: ["fileId"], + type: 'params', + required: ['fileId'], properties: { fileId: { - type: "string", - description: "The unique identifier of the file to download", + type: 'string', + description: 'The unique identifier of the file to download', }, }, }, output: { - encoding: "application/octet-stream", + encoding: 'application/octet-stream', }, }, }, }, AppRockskyGoogledriveGetFile: { lexicon: 1, - id: "app.rocksky.googledrive.getFile", + id: 'app.rocksky.googledrive.getFile', defs: { main: { - type: "query", - description: "Get a file from Google Drive by its unique identifier", + type: 'query', + description: 'Get a file from Google Drive by its unique identifier', parameters: { - type: "params", - required: ["fileId"], + type: 'params', + required: ['fileId'], properties: { fileId: { - type: "string", - description: "The unique identifier of the file to retrieve", + type: 'string', + description: 'The unique identifier of the file to retrieve', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.googledrive.defs#fileView", + type: 'ref', + ref: 'lex:app.rocksky.googledrive.defs#fileView', }, }, }, @@ -2941,25 +2949,25 @@ export const schemaDict = { }, AppRockskyGoogledriveGetFiles: { lexicon: 1, - id: "app.rocksky.googledrive.getFiles", + id: 'app.rocksky.googledrive.getFiles', defs: { main: { - type: "query", - description: "Get a list of files from Google Drive", + type: 'query', + description: 'Get a list of files from Google Drive', parameters: { - type: "params", + type: 'params', properties: { at: { - type: "string", - description: "Path to the Google Drive folder or root directory", + type: 'string', + description: 'Path to the Google Drive folder or root directory', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.googledrive.defs#fileListView", + type: 'ref', + ref: 'lex:app.rocksky.googledrive.defs#fileListView', }, }, }, @@ -2967,41 +2975,41 @@ export const schemaDict = { }, AppRockskyGraphDefs: { lexicon: 1, - id: "app.rocksky.graph.defs", + id: 'app.rocksky.graph.defs', defs: { notFoundActor: { - type: "object", - description: "indicates that a handle or DID could not be resolved", - required: ["actor", "notFound"], + type: 'object', + description: 'indicates that a handle or DID could not be resolved', + required: ['actor', 'notFound'], properties: { actor: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', }, notFound: { - type: "boolean", + type: 'boolean', }, }, }, relationship: { - type: "object", - required: ["did"], + type: 'object', + required: ['did'], properties: { did: { - type: "string", - format: "did", + type: 'string', + format: 'did', }, following: { - type: "string", + type: 'string', description: - "if the actor follows this DID, this is the AT-URI of the follow record", - format: "at-uri", + 'if the actor follows this DID, this is the AT-URI of the follow record', + format: 'at-uri', }, followedBy: { - type: "string", + type: 'string', description: - "if the actor is followed by this DID, contains the AT-URI of the follow record", - format: "at-uri", + 'if the actor is followed by this DID, contains the AT-URI of the follow record', + format: 'at-uri', }, }, }, @@ -3009,28 +3017,28 @@ export const schemaDict = { }, AppRockskyGraphFollow: { lexicon: 1, - id: "app.rocksky.graph.follow", + id: 'app.rocksky.graph.follow', defs: { main: { - type: "record", + type: 'record', description: "Record declaring a social 'follow' relationship of another account.", - key: "tid", + key: 'tid', record: { - type: "object", - required: ["createdAt", "subject"], + type: 'object', + required: ['createdAt', 'subject'], properties: { createdAt: { - type: "string", - format: "datetime", + type: 'string', + format: 'datetime', }, subject: { - type: "string", - format: "did", + type: 'string', + format: 'did', }, via: { - type: "ref", - ref: "lex:com.atproto.repo.strongRef", + type: 'ref', + ref: 'lex:com.atproto.repo.strongRef', }, }, }, @@ -3039,43 +3047,43 @@ export const schemaDict = { }, AppRockskyGraphFollowAccount: { lexicon: 1, - id: "app.rocksky.graph.followAccount", + id: 'app.rocksky.graph.followAccount', defs: { main: { - type: "procedure", + type: 'procedure', description: "Creates a 'follow' relationship from the authenticated account to a specified account.", parameters: { - type: "params", - required: ["account"], + type: 'params', + required: ['account'], properties: { account: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["subject", "followers"], + type: 'object', + required: ['subject', 'followers'], properties: { subject: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, followers: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, }, cursor: { - type: "string", + type: 'string', description: - "A cursor value to pass to subsequent calls to get the next page of results.", + 'A cursor value to pass to subsequent calls to get the next page of results.', }, }, }, @@ -3085,65 +3093,65 @@ export const schemaDict = { }, AppRockskyGraphGetFollowers: { lexicon: 1, - id: "app.rocksky.graph.getFollowers", + id: 'app.rocksky.graph.getFollowers', defs: { main: { - type: "query", + type: 'query', description: - "Enumerates accounts which follow a specified account (actor).", + 'Enumerates accounts which follow a specified account (actor).', parameters: { - type: "params", - required: ["actor"], + type: 'params', + required: ['actor'], properties: { actor: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', }, limit: { - type: "integer", + type: 'integer', maximum: 100, minimum: 1, default: 50, }, dids: { - type: "array", + type: 'array', description: - "If provided, filters the followers to only include those with DIDs in this list.", + 'If provided, filters the followers to only include those with DIDs in this list.', items: { - type: "string", - format: "did", + type: 'string', + format: 'did', }, }, cursor: { - type: "string", + type: 'string', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["subject", "followers"], + type: 'object', + required: ['subject', 'followers'], properties: { subject: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, followers: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, }, cursor: { - type: "string", + type: 'string', description: - "A cursor value to pass to subsequent calls to get the next page of results.", + 'A cursor value to pass to subsequent calls to get the next page of results.', }, count: { - type: "integer", - description: "The total number of followers.", + type: 'integer', + description: 'The total number of followers.', }, }, }, @@ -3153,65 +3161,65 @@ export const schemaDict = { }, AppRockskyGraphGetFollows: { lexicon: 1, - id: "app.rocksky.graph.getFollows", + id: 'app.rocksky.graph.getFollows', defs: { main: { - type: "query", + type: 'query', description: - "Enumerates accounts which a specified account (actor) follows.", + 'Enumerates accounts which a specified account (actor) follows.', parameters: { - type: "params", - required: ["actor"], + type: 'params', + required: ['actor'], properties: { actor: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', }, limit: { - type: "integer", + type: 'integer', maximum: 100, minimum: 1, default: 50, }, dids: { - type: "array", + type: 'array', description: - "If provided, filters the follows to only include those with DIDs in this list.", + 'If provided, filters the follows to only include those with DIDs in this list.', items: { - type: "string", - format: "did", + type: 'string', + format: 'did', }, }, cursor: { - type: "string", + type: 'string', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["subject", "follows"], + type: 'object', + required: ['subject', 'follows'], properties: { subject: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, follows: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, }, cursor: { - type: "string", + type: 'string', description: - "A cursor value to pass to subsequent calls to get the next page of results.", + 'A cursor value to pass to subsequent calls to get the next page of results.', }, count: { - type: "integer", - description: "The total number of follows.", + type: 'integer', + description: 'The total number of follows.', }, }, }, @@ -3221,52 +3229,52 @@ export const schemaDict = { }, AppRockskyGraphGetKnownFollowers: { lexicon: 1, - id: "app.rocksky.graph.getKnownFollowers", + id: 'app.rocksky.graph.getKnownFollowers', defs: { main: { - type: "query", + type: 'query', description: - "Enumerates accounts which follow a specified account (actor) and are followed by the viewer.", + 'Enumerates accounts which follow a specified account (actor) and are followed by the viewer.', parameters: { - type: "params", - required: ["actor"], + type: 'params', + required: ['actor'], properties: { actor: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', }, limit: { - type: "integer", + type: 'integer', maximum: 100, minimum: 1, default: 50, }, cursor: { - type: "string", + type: 'string', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["subject", "followers"], + type: 'object', + required: ['subject', 'followers'], properties: { subject: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, followers: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, }, cursor: { - type: "string", + type: 'string', description: - "A cursor value to pass to subsequent calls to get the next page of results.", + 'A cursor value to pass to subsequent calls to get the next page of results.', }, }, }, @@ -3276,43 +3284,43 @@ export const schemaDict = { }, AppRockskyGraphUnfollowAccount: { lexicon: 1, - id: "app.rocksky.graph.unfollowAccount", + id: 'app.rocksky.graph.unfollowAccount', defs: { main: { - type: "procedure", + type: 'procedure', description: "Removes a 'follow' relationship from the authenticated account to a specified account.", parameters: { - type: "params", - required: ["account"], + type: 'params', + required: ['account'], properties: { account: { - type: "string", - format: "at-identifier", + type: 'string', + format: 'at-identifier', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["subject", "followers"], + type: 'object', + required: ['subject', 'followers'], properties: { subject: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, followers: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.actor.defs#profileViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.actor.defs#profileViewBasic', }, }, cursor: { - type: "string", + type: 'string', description: - "A cursor value to pass to subsequent calls to get the next page of results.", + 'A cursor value to pass to subsequent calls to get the next page of results.', }, }, }, @@ -3322,29 +3330,29 @@ export const schemaDict = { }, AppRockskyLikeDislikeShout: { lexicon: 1, - id: "app.rocksky.like.dislikeShout", + id: 'app.rocksky.like.dislikeShout', defs: { main: { - type: "procedure", - description: "Dislike a shout", + type: 'procedure', + description: 'Dislike a shout', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { uri: { - type: "string", - description: "The unique identifier of the shout to dislike", - format: "at-uri", + type: 'string', + description: 'The unique identifier of the shout to dislike', + format: 'at-uri', }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutView", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutView', }, }, }, @@ -3352,29 +3360,29 @@ export const schemaDict = { }, AppRockskyLikeDislikeSong: { lexicon: 1, - id: "app.rocksky.like.dislikeSong", + id: 'app.rocksky.like.dislikeSong', defs: { main: { - type: "procedure", - description: "Dislike a song", + type: 'procedure', + description: 'Dislike a song', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { uri: { - type: "string", - description: "The unique identifier of the song to dislike", - format: "at-uri", + type: 'string', + description: 'The unique identifier of the song to dislike', + format: 'at-uri', }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewDetailed', }, }, }, @@ -3382,24 +3390,24 @@ export const schemaDict = { }, AppRockskyLike: { lexicon: 1, - id: "app.rocksky.like", + id: 'app.rocksky.like', defs: { main: { - type: "record", - description: "A declaration of a like.", - key: "tid", + type: 'record', + description: 'A declaration of a like.', + key: 'tid', record: { - type: "object", - required: ["createdAt", "subject"], + type: 'object', + required: ['createdAt', 'subject'], properties: { createdAt: { - type: "string", - description: "The date when the like was created.", - format: "datetime", + type: 'string', + description: 'The date when the like was created.', + format: 'datetime', }, subject: { - type: "ref", - ref: "lex:com.atproto.repo.strongRef", + type: 'ref', + ref: 'lex:com.atproto.repo.strongRef', }, }, }, @@ -3408,29 +3416,29 @@ export const schemaDict = { }, AppRockskyLikeLikeShout: { lexicon: 1, - id: "app.rocksky.like.likeShout", + id: 'app.rocksky.like.likeShout', defs: { main: { - type: "procedure", - description: "Like a shout", + type: 'procedure', + description: 'Like a shout', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { uri: { - type: "string", - description: "The unique identifier of the shout to like", - format: "at-uri", + type: 'string', + description: 'The unique identifier of the shout to like', + format: 'at-uri', }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutView", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutView', }, }, }, @@ -3438,29 +3446,29 @@ export const schemaDict = { }, AppRockskyLikeLikeSong: { lexicon: 1, - id: "app.rocksky.like.likeSong", + id: 'app.rocksky.like.likeSong', defs: { main: { - type: "procedure", - description: "Like a song", + type: 'procedure', + description: 'Like a song', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { uri: { - type: "string", - description: "The unique identifier of the song to like", - format: "at-uri", + type: 'string', + description: 'The unique identifier of the song to like', + format: 'at-uri', }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewDetailed', }, }, }, @@ -3468,31 +3476,31 @@ export const schemaDict = { }, AppRockskyPlayerAddDirectoryToQueue: { lexicon: 1, - id: "app.rocksky.player.addDirectoryToQueue", + id: 'app.rocksky.player.addDirectoryToQueue', defs: { main: { - type: "procedure", + type: 'procedure', description: "Add directory to the player's queue", parameters: { - type: "params", - required: ["directory"], + type: 'params', + required: ['directory'], properties: { playerId: { - type: "string", + type: 'string', }, directory: { - type: "string", - description: "The directory to add to the queue", + type: 'string', + description: 'The directory to add to the queue', }, position: { - type: "integer", + type: 'integer', description: - "Position in the queue to insert the directory at, defaults to the end if not specified", + 'Position in the queue to insert the directory at, defaults to the end if not specified', }, shuffle: { - type: "boolean", + type: 'boolean', description: - "Whether to shuffle the added directory in the queue", + 'Whether to shuffle the added directory in the queue', }, }, }, @@ -3501,33 +3509,33 @@ export const schemaDict = { }, AppRockskyPlayerAddItemsToQueue: { lexicon: 1, - id: "app.rocksky.player.addItemsToQueue", + id: 'app.rocksky.player.addItemsToQueue', defs: { main: { - type: "procedure", + type: 'procedure', description: "Add items to the player's queue", parameters: { - type: "params", - required: ["items"], + type: 'params', + required: ['items'], properties: { playerId: { - type: "string", + type: 'string', }, items: { - type: "array", + type: 'array', items: { - type: "string", - description: "List of file identifiers to add to the queue", + type: 'string', + description: 'List of file identifiers to add to the queue', }, }, position: { - type: "integer", + type: 'integer', description: - "Position in the queue to insert the items at, defaults to the end if not specified", + 'Position in the queue to insert the items at, defaults to the end if not specified', }, shuffle: { - type: "boolean", - description: "Whether to shuffle the added items in the queue", + type: 'boolean', + description: 'Whether to shuffle the added items in the queue', }, }, }, @@ -3536,25 +3544,25 @@ export const schemaDict = { }, AppRockskyPlayerDefs: { lexicon: 1, - id: "app.rocksky.player.defs", + id: 'app.rocksky.player.defs', defs: { currentlyPlayingViewDetailed: { - type: "object", + type: 'object', properties: { title: { - type: "string", - description: "The title of the currently playing track", + type: 'string', + description: 'The title of the currently playing track', }, }, }, playbackQueueViewDetailed: { - type: "object", + type: 'object', properties: { tracks: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.song.defs.songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs.songViewBasic', }, }, }, @@ -3563,30 +3571,30 @@ export const schemaDict = { }, AppRockskyPlayerGetCurrentlyPlaying: { lexicon: 1, - id: "app.rocksky.player.getCurrentlyPlaying", + id: 'app.rocksky.player.getCurrentlyPlaying', defs: { main: { - type: "query", - description: "Get the currently playing track", + type: 'query', + description: 'Get the currently playing track', parameters: { - type: "params", + type: 'params', properties: { playerId: { - type: "string", + type: 'string', }, actor: { - type: "string", + type: 'string', description: - "Handle or DID of the actor to retrieve the currently playing track for. If not provided, defaults to the current user.", - format: "at-identifier", + 'Handle or DID of the actor to retrieve the currently playing track for. If not provided, defaults to the current user.', + format: 'at-identifier', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.player.defs#currentlyPlayingViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.player.defs#currentlyPlayingViewDetailed', }, }, }, @@ -3594,24 +3602,24 @@ export const schemaDict = { }, AppRockskyPlayerGetPlaybackQueue: { lexicon: 1, - id: "app.rocksky.player.getPlaybackQueue", + id: 'app.rocksky.player.getPlaybackQueue', defs: { main: { - type: "query", - description: "Retrieve the current playback queue", + type: 'query', + description: 'Retrieve the current playback queue', parameters: { - type: "params", + type: 'params', properties: { playerId: { - type: "string", + type: 'string', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.player.defs#playbackQueueViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.player.defs#playbackQueueViewDetailed', }, }, }, @@ -3619,16 +3627,16 @@ export const schemaDict = { }, AppRockskyPlayerNext: { lexicon: 1, - id: "app.rocksky.player.next", + id: 'app.rocksky.player.next', defs: { main: { - type: "procedure", - description: "Play the next track in the queue", + type: 'procedure', + description: 'Play the next track in the queue', parameters: { - type: "params", + type: 'params', properties: { playerId: { - type: "string", + type: 'string', }, }, }, @@ -3637,16 +3645,16 @@ export const schemaDict = { }, AppRockskyPlayerPause: { lexicon: 1, - id: "app.rocksky.player.pause", + id: 'app.rocksky.player.pause', defs: { main: { - type: "procedure", - description: "Pause the currently playing track", + type: 'procedure', + description: 'Pause the currently playing track', parameters: { - type: "params", + type: 'params', properties: { playerId: { - type: "string", + type: 'string', }, }, }, @@ -3655,16 +3663,16 @@ export const schemaDict = { }, AppRockskyPlayerPlay: { lexicon: 1, - id: "app.rocksky.player.play", + id: 'app.rocksky.player.play', defs: { main: { - type: "procedure", - description: "Resume playback of the currently paused track", + type: 'procedure', + description: 'Resume playback of the currently paused track', parameters: { - type: "params", + type: 'params', properties: { playerId: { - type: "string", + type: 'string', }, }, }, @@ -3673,29 +3681,29 @@ export const schemaDict = { }, AppRockskyPlayerPlayDirectory: { lexicon: 1, - id: "app.rocksky.player.playDirectory", + id: 'app.rocksky.player.playDirectory', defs: { main: { - type: "procedure", - description: "Play all tracks in a directory", + type: 'procedure', + description: 'Play all tracks in a directory', parameters: { - type: "params", - required: ["directoryId"], + type: 'params', + required: ['directoryId'], properties: { playerId: { - type: "string", + type: 'string', }, directoryId: { - type: "string", + type: 'string', }, shuffle: { - type: "boolean", + type: 'boolean', }, recurse: { - type: "boolean", + type: 'boolean', }, position: { - type: "integer", + type: 'integer', }, }, }, @@ -3704,20 +3712,20 @@ export const schemaDict = { }, AppRockskyPlayerPlayFile: { lexicon: 1, - id: "app.rocksky.player.playFile", + id: 'app.rocksky.player.playFile', defs: { main: { - type: "procedure", - description: "Play a specific audio file", + type: 'procedure', + description: 'Play a specific audio file', parameters: { - type: "params", - required: ["fileId"], + type: 'params', + required: ['fileId'], properties: { playerId: { - type: "string", + type: 'string', }, fileId: { - type: "string", + type: 'string', }, }, }, @@ -3726,16 +3734,16 @@ export const schemaDict = { }, AppRockskyPlayerPrevious: { lexicon: 1, - id: "app.rocksky.player.previous", + id: 'app.rocksky.player.previous', defs: { main: { - type: "procedure", - description: "Play the previous track in the queue", + type: 'procedure', + description: 'Play the previous track in the queue', parameters: { - type: "params", + type: 'params', properties: { playerId: { - type: "string", + type: 'string', }, }, }, @@ -3744,22 +3752,22 @@ export const schemaDict = { }, AppRockskyPlayerSeek: { lexicon: 1, - id: "app.rocksky.player.seek", + id: 'app.rocksky.player.seek', defs: { main: { - type: "procedure", + type: 'procedure', description: - "Seek to a specific position in the currently playing track", + 'Seek to a specific position in the currently playing track', parameters: { - type: "params", - required: ["position"], + type: 'params', + required: ['position'], properties: { playerId: { - type: "string", + type: 'string', }, position: { - type: "integer", - description: "The position in seconds to seek to", + type: 'integer', + description: 'The position in seconds to seek to', }, }, }, @@ -3768,22 +3776,22 @@ export const schemaDict = { }, AppRockskyPlaylistCreatePlaylist: { lexicon: 1, - id: "app.rocksky.playlist.createPlaylist", + id: 'app.rocksky.playlist.createPlaylist', defs: { main: { - type: "procedure", - description: "Create a new playlist", + type: 'procedure', + description: 'Create a new playlist', parameters: { - type: "params", - required: ["name"], + type: 'params', + required: ['name'], properties: { name: { - type: "string", - description: "The name of the playlist", + type: 'string', + description: 'The name of the playlist', }, description: { - type: "string", - description: "A brief description of the playlist", + type: 'string', + description: 'A brief description of the playlist', }, }, }, @@ -3792,122 +3800,122 @@ export const schemaDict = { }, AppRockskyPlaylistDefs: { lexicon: 1, - id: "app.rocksky.playlist.defs", + id: 'app.rocksky.playlist.defs', defs: { playlistViewDetailed: { - type: "object", + type: 'object', description: - "Detailed view of a playlist, including its tracks and metadata", + 'Detailed view of a playlist, including its tracks and metadata', properties: { id: { - type: "string", - description: "The unique identifier of the playlist.", + type: 'string', + description: 'The unique identifier of the playlist.', }, title: { - type: "string", - description: "The title of the playlist.", + type: 'string', + description: 'The title of the playlist.', }, uri: { - type: "string", - description: "The URI of the playlist.", - format: "at-uri", + type: 'string', + description: 'The URI of the playlist.', + format: 'at-uri', }, curatorDid: { - type: "string", - description: "The DID of the curator of the playlist.", - format: "at-identifier", + type: 'string', + description: 'The DID of the curator of the playlist.', + format: 'at-identifier', }, curatorHandle: { - type: "string", - description: "The handle of the curator of the playlist.", - format: "at-identifier", + type: 'string', + description: 'The handle of the curator of the playlist.', + format: 'at-identifier', }, curatorName: { - type: "string", - description: "The name of the curator of the playlist.", + type: 'string', + description: 'The name of the curator of the playlist.', }, curatorAvatarUrl: { - type: "string", - description: "The URL of the avatar image of the curator.", - format: "uri", + type: 'string', + description: 'The URL of the avatar image of the curator.', + format: 'uri', }, description: { - type: "string", - description: "A description of the playlist.", + type: 'string', + description: 'A description of the playlist.', }, coverImageUrl: { - type: "string", - description: "The URL of the cover image for the playlist.", - format: "uri", + type: 'string', + description: 'The URL of the cover image for the playlist.', + format: 'uri', }, createdAt: { - type: "string", - description: "The date and time when the playlist was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the playlist was created.', + format: 'datetime', }, tracks: { - type: "array", - description: "A list of tracks in the playlist.", + type: 'array', + description: 'A list of tracks in the playlist.', items: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewBasic', }, }, }, }, playlistViewBasic: { - type: "object", - description: "Basic view of a playlist, including its metadata", + type: 'object', + description: 'Basic view of a playlist, including its metadata', properties: { id: { - type: "string", - description: "The unique identifier of the playlist.", + type: 'string', + description: 'The unique identifier of the playlist.', }, title: { - type: "string", - description: "The title of the playlist.", + type: 'string', + description: 'The title of the playlist.', }, uri: { - type: "string", - description: "The URI of the playlist.", - format: "at-uri", + type: 'string', + description: 'The URI of the playlist.', + format: 'at-uri', }, curatorDid: { - type: "string", - description: "The DID of the curator of the playlist.", - format: "at-identifier", + type: 'string', + description: 'The DID of the curator of the playlist.', + format: 'at-identifier', }, curatorHandle: { - type: "string", - description: "The handle of the curator of the playlist.", - format: "at-identifier", + type: 'string', + description: 'The handle of the curator of the playlist.', + format: 'at-identifier', }, curatorName: { - type: "string", - description: "The name of the curator of the playlist.", + type: 'string', + description: 'The name of the curator of the playlist.', }, curatorAvatarUrl: { - type: "string", - description: "The URL of the avatar image of the curator.", - format: "uri", + type: 'string', + description: 'The URL of the avatar image of the curator.', + format: 'uri', }, description: { - type: "string", - description: "A description of the playlist.", + type: 'string', + description: 'A description of the playlist.', }, coverImageUrl: { - type: "string", - description: "The URL of the cover image for the playlist.", - format: "uri", + type: 'string', + description: 'The URL of the cover image for the playlist.', + format: 'uri', }, createdAt: { - type: "string", - description: "The date and time when the playlist was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the playlist was created.', + format: 'datetime', }, trackCount: { - type: "integer", - description: "The number of tracks in the playlist.", + type: 'integer', + description: 'The number of tracks in the playlist.', minimum: 0, }, }, @@ -3916,27 +3924,27 @@ export const schemaDict = { }, AppRockskyPlaylistGetPlaylist: { lexicon: 1, - id: "app.rocksky.playlist.getPlaylist", + id: 'app.rocksky.playlist.getPlaylist', defs: { main: { - type: "query", - description: "Retrieve a playlist by its ID", + type: 'query', + description: 'Retrieve a playlist by its ID', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the playlist to retrieve.", - format: "at-uri", + type: 'string', + description: 'The URI of the playlist to retrieve.', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.playlist.defs#playlistViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.playlist.defs#playlistViewDetailed', }, }, }, @@ -3944,35 +3952,35 @@ export const schemaDict = { }, AppRockskyPlaylistGetPlaylists: { lexicon: 1, - id: "app.rocksky.playlist.getPlaylists", + id: 'app.rocksky.playlist.getPlaylists', defs: { main: { - type: "query", - description: "Retrieve a list of playlists", + type: 'query', + description: 'Retrieve a list of playlists', parameters: { - type: "params", + type: 'params', properties: { limit: { - type: "integer", - description: "The maximum number of playlists to return.", + type: 'integer', + description: 'The maximum number of playlists to return.', }, offset: { - type: "integer", + type: 'integer', description: - "The offset for pagination, used to skip a number of playlists.", + 'The offset for pagination, used to skip a number of playlists.', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { playlists: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.playlist.defs#playlistViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.playlist.defs#playlistViewBasic', }, }, }, @@ -3983,28 +3991,28 @@ export const schemaDict = { }, AppRockskyPlaylistInsertDirectory: { lexicon: 1, - id: "app.rocksky.playlist.insertDirectory", + id: 'app.rocksky.playlist.insertDirectory', defs: { main: { - type: "procedure", - description: "Insert a directory into a playlist", + type: 'procedure', + description: 'Insert a directory into a playlist', parameters: { - type: "params", - required: ["uri", "directory"], + type: 'params', + required: ['uri', 'directory'], properties: { uri: { - type: "string", - description: "The URI of the playlist to start", - format: "at-uri", + type: 'string', + description: 'The URI of the playlist to start', + format: 'at-uri', }, directory: { - type: "string", - description: "The directory (id) to insert into the playlist", + type: 'string', + description: 'The directory (id) to insert into the playlist', }, position: { - type: "integer", + type: 'integer', description: - "The position in the playlist to insert the directory at, if not specified, the directory will be appended", + 'The position in the playlist to insert the directory at, if not specified, the directory will be appended', }, }, }, @@ -4013,31 +4021,31 @@ export const schemaDict = { }, AppRockskyPlaylistInsertFiles: { lexicon: 1, - id: "app.rocksky.playlist.insertFiles", + id: 'app.rocksky.playlist.insertFiles', defs: { main: { - type: "procedure", - description: "Insert files into a playlist", + type: 'procedure', + description: 'Insert files into a playlist', parameters: { - type: "params", - required: ["uri", "files"], + type: 'params', + required: ['uri', 'files'], properties: { uri: { - type: "string", - description: "The URI of the playlist to start", - format: "at-uri", + type: 'string', + description: 'The URI of the playlist to start', + format: 'at-uri', }, files: { - type: "array", + type: 'array', items: { - type: "string", - description: "List of file (id) to insert into the playlist", + type: 'string', + description: 'List of file (id) to insert into the playlist', }, }, position: { - type: "integer", + type: 'integer', description: - "The position in the playlist to insert the files at, if not specified, files will be appended", + 'The position in the playlist to insert the files at, if not specified, files will be appended', }, }, }, @@ -4046,59 +4054,59 @@ export const schemaDict = { }, AppRockskyPlaylist: { lexicon: 1, - id: "app.rocksky.playlist", + id: 'app.rocksky.playlist', defs: { main: { - type: "record", - description: "A declaration of a playlist.", - key: "tid", + type: 'record', + description: 'A declaration of a playlist.', + key: 'tid', record: { - type: "object", - required: ["name", "createdAt"], + type: 'object', + required: ['name', 'createdAt'], properties: { name: { - type: "string", - description: "The name of the playlist.", + type: 'string', + description: 'The name of the playlist.', minLength: 1, maxLength: 512, }, description: { - type: "string", - description: "The playlist description.", + type: 'string', + description: 'The playlist description.', minLength: 1, maxLength: 256, }, picture: { - type: "blob", - description: "The picture of the playlist.", - accept: ["image/png", "image/jpeg"], + type: 'blob', + description: 'The picture of the playlist.', + accept: ['image/png', 'image/jpeg'], maxSize: 2000000, }, pictureUrl: { - type: "string", - description: "The URL of the picture of the artist.", - format: "uri", + type: 'string', + description: 'The URL of the picture of the artist.', + format: 'uri', }, createdAt: { - type: "string", - description: "The date the playlist was created.", - format: "datetime", + type: 'string', + description: 'The date the playlist was created.', + format: 'datetime', }, spotifyLink: { - type: "string", - description: "The Spotify link of the playlist.", + type: 'string', + description: 'The Spotify link of the playlist.', }, tidalLink: { - type: "string", - description: "The Tidal link of the playlist.", + type: 'string', + description: 'The Tidal link of the playlist.', }, youtubeLink: { - type: "string", - description: "The YouTube link of the playlist.", + type: 'string', + description: 'The YouTube link of the playlist.', }, appleMusicLink: { - type: "string", - description: "The Apple Music link of the playlist.", + type: 'string', + description: 'The Apple Music link of the playlist.', }, }, }, @@ -4107,33 +4115,33 @@ export const schemaDict = { }, AppRockskyPlaylistItem: { lexicon: 1, - id: "app.rocksky.playlistItem", + id: 'app.rocksky.playlistItem', defs: { main: { - type: "record", + type: 'record', description: - "A playlist item represents a single entry in a playlist, containing metadata and references to media content.", - key: "tid", + 'A playlist item represents a single entry in a playlist, containing metadata and references to media content.', + key: 'tid', record: { - type: "object", - required: ["createdAt", "track", "order", "subject"], + type: 'object', + required: ['createdAt', 'track', 'order', 'subject'], properties: { subject: { - type: "ref", - ref: "lex:com.atproto.repo.strongRef", + type: 'ref', + ref: 'lex:com.atproto.repo.strongRef', }, createdAt: { - type: "string", - description: "The date the playlist was created.", - format: "datetime", + type: 'string', + description: 'The date the playlist was created.', + format: 'datetime', }, track: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewBasic', }, order: { - type: "integer", - description: "The order of the item in the playlist.", + type: 'integer', + description: 'The order of the item in the playlist.', minimum: 0, }, }, @@ -4143,19 +4151,19 @@ export const schemaDict = { }, AppRockskyPlaylistRemovePlaylist: { lexicon: 1, - id: "app.rocksky.playlist.removePlaylist", + id: 'app.rocksky.playlist.removePlaylist', defs: { main: { - type: "procedure", - description: "Remove a playlist", + type: 'procedure', + description: 'Remove a playlist', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the playlist to remove", - format: "at-uri", + type: 'string', + description: 'The URI of the playlist to remove', + format: 'at-uri', }, }, }, @@ -4164,24 +4172,24 @@ export const schemaDict = { }, AppRockskyPlaylistRemoveTrack: { lexicon: 1, - id: "app.rocksky.playlist.removeTrack", + id: 'app.rocksky.playlist.removeTrack', defs: { main: { - type: "procedure", - description: "Remove a track from a playlist", + type: 'procedure', + description: 'Remove a track from a playlist', parameters: { - type: "params", - required: ["uri", "position"], + type: 'params', + required: ['uri', 'position'], properties: { uri: { - type: "string", - description: "The URI of the playlist to remove the track from", - format: "at-uri", + type: 'string', + description: 'The URI of the playlist to remove the track from', + format: 'at-uri', }, position: { - type: "integer", + type: 'integer', description: - "The position of the track to remove in the playlist", + 'The position of the track to remove in the playlist', }, }, }, @@ -4190,28 +4198,28 @@ export const schemaDict = { }, AppRockskyPlaylistStartPlaylist: { lexicon: 1, - id: "app.rocksky.playlist.startPlaylist", + id: 'app.rocksky.playlist.startPlaylist', defs: { main: { - type: "procedure", - description: "Start a playlist", + type: 'procedure', + description: 'Start a playlist', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the playlist to start", - format: "at-uri", + type: 'string', + description: 'The URI of the playlist to start', + format: 'at-uri', }, shuffle: { - type: "boolean", - description: "Whether to shuffle the playlist when starting it", + type: 'boolean', + description: 'Whether to shuffle the playlist when starting it', }, position: { - type: "integer", + type: 'integer', description: - "The position in the playlist to start from, if not specified, starts from the beginning", + 'The position in the playlist to start from, if not specified, starts from the beginning', }, }, }, @@ -4220,67 +4228,67 @@ export const schemaDict = { }, AppRockskyRadioDefs: { lexicon: 1, - id: "app.rocksky.radio.defs", + id: 'app.rocksky.radio.defs', defs: { radioViewBasic: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the radio.", + type: 'string', + description: 'The unique identifier of the radio.', }, name: { - type: "string", - description: "The name of the radio.", + type: 'string', + description: 'The name of the radio.', }, description: { - type: "string", - description: "A brief description of the radio.", + type: 'string', + description: 'A brief description of the radio.', }, createdAt: { - type: "string", - description: "The date and time when the radio was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the radio was created.', + format: 'datetime', }, }, }, radioViewDetailed: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the radio.", + type: 'string', + description: 'The unique identifier of the radio.', }, name: { - type: "string", - description: "The name of the radio.", + type: 'string', + description: 'The name of the radio.', }, description: { - type: "string", - description: "A brief description of the radio.", + type: 'string', + description: 'A brief description of the radio.', }, website: { - type: "string", - description: "The website of the radio.", - format: "uri", + type: 'string', + description: 'The website of the radio.', + format: 'uri', }, url: { - type: "string", - description: "The streaming URL of the radio.", - format: "uri", + type: 'string', + description: 'The streaming URL of the radio.', + format: 'uri', }, genre: { - type: "string", - description: "The genre of the radio.", + type: 'string', + description: 'The genre of the radio.', }, logo: { - type: "string", - description: "The logo of the radio station.", + type: 'string', + description: 'The logo of the radio station.', }, createdAt: { - type: "string", - description: "The date and time when the radio was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the radio was created.', + format: 'datetime', }, }, }, @@ -4288,54 +4296,54 @@ export const schemaDict = { }, AppRockskyRadio: { lexicon: 1, - id: "app.rocksky.radio", + id: 'app.rocksky.radio', defs: { main: { - type: "record", - description: "A declaration of a radio station.", - key: "tid", + type: 'record', + description: 'A declaration of a radio station.', + key: 'tid', record: { - type: "object", - required: ["name", "url", "createdAt"], + type: 'object', + required: ['name', 'url', 'createdAt'], properties: { name: { - type: "string", - description: "The name of the radio station.", + type: 'string', + description: 'The name of the radio station.', minLength: 1, maxLength: 512, }, url: { - type: "string", - description: "The URL of the radio station.", - format: "uri", + type: 'string', + description: 'The URL of the radio station.', + format: 'uri', }, description: { - type: "string", - description: "A description of the radio station.", + type: 'string', + description: 'A description of the radio station.', minLength: 1, maxLength: 1000, }, genre: { - type: "string", - description: "The genre of the radio station.", + type: 'string', + description: 'The genre of the radio station.', minLength: 1, maxLength: 256, }, logo: { - type: "blob", - description: "The logo of the radio station.", - accept: ["image/png", "image/jpeg"], + type: 'blob', + description: 'The logo of the radio station.', + accept: ['image/png', 'image/jpeg'], maxSize: 2000000, }, website: { - type: "string", - description: "The website of the radio station.", - format: "uri", + type: 'string', + description: 'The website of the radio station.', + format: 'uri', }, createdAt: { - type: "string", - description: "The date when the radio station was created.", - format: "datetime", + type: 'string', + description: 'The date when the radio station was created.', + format: 'datetime', }, }, }, @@ -4344,125 +4352,125 @@ export const schemaDict = { }, AppRockskyScrobbleCreateScrobble: { lexicon: 1, - id: "app.rocksky.scrobble.createScrobble", + id: 'app.rocksky.scrobble.createScrobble', defs: { main: { - type: "procedure", - description: "Create a new scrobble", + type: 'procedure', + description: 'Create a new scrobble', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["title", "artist"], + type: 'object', + required: ['title', 'artist'], properties: { title: { - type: "string", - description: "The title of the track being scrobbled", + type: 'string', + description: 'The title of the track being scrobbled', }, artist: { - type: "string", - description: "The artist of the track being scrobbled", + type: 'string', + description: 'The artist of the track being scrobbled', }, album: { - type: "string", - description: "The album of the track being scrobbled", + type: 'string', + description: 'The album of the track being scrobbled', }, duration: { - type: "integer", - description: "The duration of the track in seconds", + type: 'integer', + description: 'The duration of the track in seconds', }, mbId: { - type: "string", - description: "The MusicBrainz ID of the track, if available", + type: 'string', + description: 'The MusicBrainz ID of the track, if available', }, albumArt: { - type: "string", - description: "The URL of the album art for the track", - format: "uri", + type: 'string', + description: 'The URL of the album art for the track', + format: 'uri', }, trackNumber: { - type: "integer", - description: "The track number of the track in the album", + type: 'integer', + description: 'The track number of the track in the album', }, releaseDate: { - type: "string", + type: 'string', description: - "The release date of the track, formatted as YYYY-MM-DD", + 'The release date of the track, formatted as YYYY-MM-DD', }, year: { - type: "integer", - description: "The year the track was released", + type: 'integer', + description: 'The year the track was released', }, discNumber: { - type: "integer", + type: 'integer', description: - "The disc number of the track in the album, if applicable", + 'The disc number of the track in the album, if applicable', }, lyrics: { - type: "string", - description: "The lyrics of the track, if available", + type: 'string', + description: 'The lyrics of the track, if available', }, composer: { - type: "string", - description: "The composer of the track, if available", + type: 'string', + description: 'The composer of the track, if available', }, copyrightMessage: { - type: "string", + type: 'string', description: - "The copyright message for the track, if available", + 'The copyright message for the track, if available', }, label: { - type: "string", - description: "The record label of the track, if available", + type: 'string', + description: 'The record label of the track, if available', }, artistPicture: { - type: "string", + type: 'string', description: "The URL of the artist's picture, if available", - format: "uri", + format: 'uri', }, spotifyLink: { - type: "string", - description: "The Spotify link for the track, if available", - format: "uri", + type: 'string', + description: 'The Spotify link for the track, if available', + format: 'uri', }, lastfmLink: { - type: "string", - description: "The Last.fm link for the track, if available", - format: "uri", + type: 'string', + description: 'The Last.fm link for the track, if available', + format: 'uri', }, tidalLink: { - type: "string", - description: "The Tidal link for the track, if available", - format: "uri", + type: 'string', + description: 'The Tidal link for the track, if available', + format: 'uri', }, appleMusicLink: { - type: "string", - description: "The Apple Music link for the track, if available", - format: "uri", + type: 'string', + description: 'The Apple Music link for the track, if available', + format: 'uri', }, youtubeLink: { - type: "string", - description: "The Youtube link for the track, if available", - format: "uri", + type: 'string', + description: 'The Youtube link for the track, if available', + format: 'uri', }, deezerLink: { - type: "string", - description: "The Deezer link for the track, if available", - format: "uri", + type: 'string', + description: 'The Deezer link for the track, if available', + format: 'uri', }, timestamp: { - type: "integer", + type: 'integer', description: - "The timestamp of the scrobble in milliseconds since epoch", + 'The timestamp of the scrobble in milliseconds since epoch', }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.scrobble.defs#scrobbleViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.scrobble.defs#scrobbleViewBasic', }, }, }, @@ -4470,137 +4478,137 @@ export const schemaDict = { }, AppRockskyScrobbleDefs: { lexicon: 1, - id: "app.rocksky.scrobble.defs", + id: 'app.rocksky.scrobble.defs', defs: { scrobbleViewBasic: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the scrobble.", + type: 'string', + description: 'The unique identifier of the scrobble.', }, user: { - type: "string", - description: "The handle of the user who created the scrobble.", + type: 'string', + description: 'The handle of the user who created the scrobble.', }, userDisplayName: { - type: "string", + type: 'string', description: - "The display name of the user who created the scrobble.", + 'The display name of the user who created the scrobble.', }, userAvatar: { - type: "string", - description: "The avatar URL of the user who created the scrobble.", - format: "uri", + type: 'string', + description: 'The avatar URL of the user who created the scrobble.', + format: 'uri', }, title: { - type: "string", - description: "The title of the scrobble.", + type: 'string', + description: 'The title of the scrobble.', }, artist: { - type: "string", - description: "The artist of the song.", + type: 'string', + description: 'The artist of the song.', }, artistUri: { - type: "string", - description: "The URI of the artist.", - format: "at-uri", + type: 'string', + description: 'The URI of the artist.', + format: 'at-uri', }, album: { - type: "string", - description: "The album of the song.", + type: 'string', + description: 'The album of the song.', }, albumUri: { - type: "string", - description: "The URI of the album.", - format: "at-uri", + type: 'string', + description: 'The URI of the album.', + format: 'at-uri', }, cover: { - type: "string", - description: "The album art URL of the song.", - format: "uri", + type: 'string', + description: 'The album art URL of the song.', + format: 'uri', }, date: { - type: "string", - description: "The timestamp when the scrobble was created.", - format: "datetime", + type: 'string', + description: 'The timestamp when the scrobble was created.', + format: 'datetime', }, uri: { - type: "string", - description: "The URI of the scrobble.", - format: "uri", + type: 'string', + description: 'The URI of the scrobble.', + format: 'uri', }, sha256: { - type: "string", - description: "The SHA256 hash of the scrobble data.", + type: 'string', + description: 'The SHA256 hash of the scrobble data.', }, liked: { - type: "boolean", + type: 'boolean', }, likesCount: { - type: "integer", + type: 'integer', }, }, }, scrobbleViewDetailed: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the scrobble.", + type: 'string', + description: 'The unique identifier of the scrobble.', }, user: { - type: "string", - description: "The handle of the user who created the scrobble.", + type: 'string', + description: 'The handle of the user who created the scrobble.', }, title: { - type: "string", - description: "The title of the scrobble.", + type: 'string', + description: 'The title of the scrobble.', }, artist: { - type: "string", - description: "The artist of the song.", + type: 'string', + description: 'The artist of the song.', }, artistUri: { - type: "string", - description: "The URI of the artist.", - format: "at-uri", + type: 'string', + description: 'The URI of the artist.', + format: 'at-uri', }, album: { - type: "string", - description: "The album of the song.", + type: 'string', + description: 'The album of the song.', }, albumUri: { - type: "string", - description: "The URI of the album.", - format: "at-uri", + type: 'string', + description: 'The URI of the album.', + format: 'at-uri', }, cover: { - type: "string", - description: "The album art URL of the song.", - format: "uri", + type: 'string', + description: 'The album art URL of the song.', + format: 'uri', }, date: { - type: "string", - description: "The timestamp when the scrobble was created.", - format: "datetime", + type: 'string', + description: 'The timestamp when the scrobble was created.', + format: 'datetime', }, uri: { - type: "string", - description: "The URI of the scrobble.", - format: "uri", + type: 'string', + description: 'The URI of the scrobble.', + format: 'uri', }, sha256: { - type: "string", - description: "The SHA256 hash of the scrobble data.", + type: 'string', + description: 'The SHA256 hash of the scrobble data.', }, listeners: { - type: "integer", - description: "The number of listeners", + type: 'integer', + description: 'The number of listeners', }, scrobbles: { - type: "integer", - description: "The number of scrobbles for this song", + type: 'integer', + description: 'The number of scrobbles for this song', }, }, }, @@ -4608,27 +4616,27 @@ export const schemaDict = { }, AppRockskyScrobbleGetScrobble: { lexicon: 1, - id: "app.rocksky.scrobble.getScrobble", + id: 'app.rocksky.scrobble.getScrobble', defs: { main: { - type: "query", - description: "Get a scrobble by its unique identifier", + type: 'query', + description: 'Get a scrobble by its unique identifier', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The unique identifier of the scrobble", - format: "at-uri", + type: 'string', + description: 'The unique identifier of the scrobble', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.scrobble.defs#scrobbleViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.scrobble.defs#scrobbleViewDetailed', }, }, }, @@ -4636,46 +4644,46 @@ export const schemaDict = { }, AppRockskyScrobbleGetScrobbles: { lexicon: 1, - id: "app.rocksky.scrobble.getScrobbles", + id: 'app.rocksky.scrobble.getScrobbles', defs: { main: { - type: "query", - description: "Get scrobbles all scrobbles", + type: 'query', + description: 'Get scrobbles all scrobbles', parameters: { - type: "params", + type: 'params', properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, following: { - type: "boolean", + type: 'boolean', description: - "If true, only return scrobbles from actors the viewer is following.", + 'If true, only return scrobbles from actors the viewer is following.', }, limit: { - type: "integer", - description: "The maximum number of scrobbles to return", + type: 'integer', + description: 'The maximum number of scrobbles to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { scrobbles: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.scrobble.defs#scrobbleViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.scrobble.defs#scrobbleViewBasic', }, }, }, @@ -4686,156 +4694,156 @@ export const schemaDict = { }, AppRockskyScrobble: { lexicon: 1, - id: "app.rocksky.scrobble", + id: 'app.rocksky.scrobble', defs: { main: { - type: "record", - description: "A declaration of a scrobble.", - key: "tid", + type: 'record', + description: 'A declaration of a scrobble.', + key: 'tid', record: { - type: "object", + type: 'object', required: [ - "title", - "artist", - "album", - "albumArtist", - "duration", - "createdAt", + 'title', + 'artist', + 'album', + 'albumArtist', + 'duration', + 'createdAt', ], properties: { title: { - type: "string", - description: "The title of the song.", + type: 'string', + description: 'The title of the song.', minLength: 1, maxLength: 512, }, artist: { - type: "string", - description: "The artist of the song.", + type: 'string', + description: 'The artist of the song.', minLength: 1, maxLength: 256, }, artists: { - type: "array", - description: "The artists of the song with MusicBrainz IDs.", + type: 'array', + description: 'The artists of the song with MusicBrainz IDs.', items: { - type: "ref", - ref: "lex:app.rocksky.artist.defs#artistMbid", + type: 'ref', + ref: 'lex:app.rocksky.artist.defs#artistMbid', }, }, albumArtist: { - type: "string", - description: "The album artist of the song.", + type: 'string', + description: 'The album artist of the song.', minLength: 1, maxLength: 256, }, album: { - type: "string", - description: "The album of the song.", + type: 'string', + description: 'The album of the song.', minLength: 1, maxLength: 256, }, duration: { - type: "integer", - description: "The duration of the song in seconds.", + type: 'integer', + description: 'The duration of the song in seconds.', minimum: 1, }, trackNumber: { - type: "integer", - description: "The track number of the song in the album.", + type: 'integer', + description: 'The track number of the song in the album.', minimum: 1, }, discNumber: { - type: "integer", - description: "The disc number of the song in the album.", + type: 'integer', + description: 'The disc number of the song in the album.', minimum: 1, }, releaseDate: { - type: "string", - description: "The release date of the song.", - format: "datetime", + type: 'string', + description: 'The release date of the song.', + format: 'datetime', }, year: { - type: "integer", - description: "The year the song was released.", + type: 'integer', + description: 'The year the song was released.', }, genre: { - type: "string", - description: "The genre of the song.", + type: 'string', + description: 'The genre of the song.', maxLength: 256, }, tags: { - type: "array", - description: "The tags of the song.", + type: 'array', + description: 'The tags of the song.', items: { - type: "string", + type: 'string', minLength: 1, maxLength: 256, }, }, composer: { - type: "string", - description: "The composer of the song.", + type: 'string', + description: 'The composer of the song.', maxLength: 256, }, lyrics: { - type: "string", - description: "The lyrics of the song.", + type: 'string', + description: 'The lyrics of the song.', maxLength: 10000, }, copyrightMessage: { - type: "string", - description: "The copyright message of the song.", + type: 'string', + description: 'The copyright message of the song.', maxLength: 256, }, wiki: { - type: "string", - description: "Informations about the song", + type: 'string', + description: 'Informations about the song', maxLength: 10000, }, albumArt: { - type: "blob", - description: "The album art of the song.", - accept: ["image/png", "image/jpeg"], + type: 'blob', + description: 'The album art of the song.', + accept: ['image/png', 'image/jpeg'], maxSize: 2000000, }, albumArtUrl: { - type: "string", - description: "The URL of the album art of the song.", - format: "uri", + type: 'string', + description: 'The URL of the album art of the song.', + format: 'uri', }, youtubeLink: { - type: "string", - description: "The YouTube link of the song.", - format: "uri", + type: 'string', + description: 'The YouTube link of the song.', + format: 'uri', }, spotifyLink: { - type: "string", - description: "The Spotify link of the song.", - format: "uri", + type: 'string', + description: 'The Spotify link of the song.', + format: 'uri', }, tidalLink: { - type: "string", - description: "The Tidal link of the song.", - format: "uri", + type: 'string', + description: 'The Tidal link of the song.', + format: 'uri', }, appleMusicLink: { - type: "string", - description: "The Apple Music link of the song.", - format: "uri", + type: 'string', + description: 'The Apple Music link of the song.', + format: 'uri', }, createdAt: { - type: "string", - description: "The date when the song was created.", - format: "datetime", + type: 'string', + description: 'The date when the song was created.', + format: 'datetime', }, mbid: { - type: "string", - description: "The MusicBrainz ID of the song.", + type: 'string', + description: 'The MusicBrainz ID of the song.', }, label: { - type: "string", - description: "The label of the song.", + type: 'string', + description: 'The label of the song.', maxLength: 256, }, }, @@ -4845,29 +4853,29 @@ export const schemaDict = { }, AppRockskyShoutCreateShout: { lexicon: 1, - id: "app.rocksky.shout.createShout", + id: 'app.rocksky.shout.createShout', defs: { main: { - type: "procedure", - description: "Create a new shout", + type: 'procedure', + description: 'Create a new shout', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { message: { - type: "string", - description: "The content of the shout", + type: 'string', + description: 'The content of the shout', minLength: 1, }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutView", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutView', }, }, }, @@ -4875,61 +4883,61 @@ export const schemaDict = { }, AppRockskyShoutDefs: { lexicon: 1, - id: "app.rocksky.shout.defs", + id: 'app.rocksky.shout.defs', defs: { author: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the author.", + type: 'string', + description: 'The unique identifier of the author.', }, did: { - type: "string", - description: "The decentralized identifier (DID) of the author.", - format: "at-identifier", + type: 'string', + description: 'The decentralized identifier (DID) of the author.', + format: 'at-identifier', }, handle: { - type: "string", - description: "The handle of the author.", - format: "at-identifier", + type: 'string', + description: 'The handle of the author.', + format: 'at-identifier', }, displayName: { - type: "string", - description: "The display name of the author.", + type: 'string', + description: 'The display name of the author.', }, avatar: { - type: "string", + type: 'string', description: "The URL of the author's avatar image.", - format: "uri", + format: 'uri', }, }, }, shoutView: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the shout.", + type: 'string', + description: 'The unique identifier of the shout.', }, message: { - type: "string", - description: "The content of the shout.", + type: 'string', + description: 'The content of the shout.', }, parent: { - type: "string", + type: 'string', description: - "The ID of the parent shout if this is a reply, otherwise null.", + 'The ID of the parent shout if this is a reply, otherwise null.', }, createdAt: { - type: "string", - description: "The date and time when the shout was created.", - format: "datetime", + type: 'string', + description: 'The date and time when the shout was created.', + format: 'datetime', }, author: { - type: "ref", - description: "The author of the shout.", - ref: "lex:app.rocksky.shout.defs#author", + type: 'ref', + description: 'The author of the shout.', + ref: 'lex:app.rocksky.shout.defs#author', }, }, }, @@ -4937,44 +4945,44 @@ export const schemaDict = { }, AppRockskyShoutGetAlbumShouts: { lexicon: 1, - id: "app.rocksky.shout.getAlbumShouts", + id: 'app.rocksky.shout.getAlbumShouts', defs: { main: { - type: "query", - description: "Get shouts for an album", + type: 'query', + description: 'Get shouts for an album', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", + type: 'string', description: - "The unique identifier of the album to retrieve shouts for", - format: "at-uri", + 'The unique identifier of the album to retrieve shouts for', + format: 'at-uri', }, limit: { - type: "integer", - description: "The maximum number of shouts to return", + type: 'integer', + description: 'The maximum number of shouts to return', minimum: 1, }, offset: { - type: "integer", + type: 'integer', description: - "The number of shouts to skip before starting to collect the result set", + 'The number of shouts to skip before starting to collect the result set', minimum: 0, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { shouts: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutViewBasic', }, }, }, @@ -4985,43 +4993,43 @@ export const schemaDict = { }, AppRockskyShoutGetArtistShouts: { lexicon: 1, - id: "app.rocksky.shout.getArtistShouts", + id: 'app.rocksky.shout.getArtistShouts', defs: { main: { - type: "query", - description: "Get shouts for an artist", + type: 'query', + description: 'Get shouts for an artist', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the artist to retrieve shouts for", - format: "at-uri", + type: 'string', + description: 'The URI of the artist to retrieve shouts for', + format: 'at-uri', }, limit: { - type: "integer", - description: "The maximum number of shouts to return", + type: 'integer', + description: 'The maximum number of shouts to return', minimum: 1, }, offset: { - type: "integer", + type: 'integer', description: - "The number of shouts to skip before starting to collect the result set", + 'The number of shouts to skip before starting to collect the result set', minimum: 0, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { shouts: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutViewBasic', }, }, }, @@ -5032,42 +5040,42 @@ export const schemaDict = { }, AppRockskyShoutGetProfileShouts: { lexicon: 1, - id: "app.rocksky.shout.getProfileShouts", + id: 'app.rocksky.shout.getProfileShouts', defs: { main: { - type: "query", + type: 'query', description: "Get the shouts of an actor's profile", parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the actor", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the actor', + format: 'at-identifier', }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, limit: { - type: "integer", - description: "The maximum number of shouts to return", + type: 'integer', + description: 'The maximum number of shouts to return', minimum: 1, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { shouts: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutViewBasic', }, }, }, @@ -5078,43 +5086,43 @@ export const schemaDict = { }, AppRockskyShoutGetShoutReplies: { lexicon: 1, - id: "app.rocksky.shout.getShoutReplies", + id: 'app.rocksky.shout.getShoutReplies', defs: { main: { - type: "query", - description: "Get replies to a shout", + type: 'query', + description: 'Get replies to a shout', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the shout to retrieve replies for", - format: "at-uri", + type: 'string', + description: 'The URI of the shout to retrieve replies for', + format: 'at-uri', }, limit: { - type: "integer", - description: "The maximum number of shouts to return", + type: 'integer', + description: 'The maximum number of shouts to return', minimum: 1, }, offset: { - type: "integer", + type: 'integer', description: - "The number of shouts to skip before starting to collect the result set", + 'The number of shouts to skip before starting to collect the result set', minimum: 0, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { shouts: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutViewBasic', }, }, }, @@ -5125,32 +5133,32 @@ export const schemaDict = { }, AppRockskyShoutGetTrackShouts: { lexicon: 1, - id: "app.rocksky.shout.getTrackShouts", + id: 'app.rocksky.shout.getTrackShouts', defs: { main: { - type: "query", - description: "Get all shouts for a specific track", + type: 'query', + description: 'Get all shouts for a specific track', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The URI of the track to retrieve shouts for", - format: "at-uri", + type: 'string', + description: 'The URI of the track to retrieve shouts for', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { shouts: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutViewBasic', }, }, }, @@ -5161,26 +5169,26 @@ export const schemaDict = { }, AppRockskyShoutRemoveShout: { lexicon: 1, - id: "app.rocksky.shout.removeShout", + id: 'app.rocksky.shout.removeShout', defs: { main: { - type: "procedure", - description: "Remove a shout by its ID", + type: 'procedure', + description: 'Remove a shout by its ID', parameters: { - type: "params", - required: ["id"], + type: 'params', + required: ['id'], properties: { id: { - type: "string", - description: "The ID of the shout to be removed", + type: 'string', + description: 'The ID of the shout to be removed', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutView", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutView', }, }, }, @@ -5188,34 +5196,34 @@ export const schemaDict = { }, AppRockskyShoutReplyShout: { lexicon: 1, - id: "app.rocksky.shout.replyShout", + id: 'app.rocksky.shout.replyShout', defs: { main: { - type: "procedure", - description: "Reply to a shout", + type: 'procedure', + description: 'Reply to a shout', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["shoutId", "message"], + type: 'object', + required: ['shoutId', 'message'], properties: { shoutId: { - type: "string", - description: "The unique identifier of the shout to reply to", + type: 'string', + description: 'The unique identifier of the shout to reply to', }, message: { - type: "string", - description: "The content of the reply", + type: 'string', + description: 'The content of the reply', minLength: 1, }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutView", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutView', }, }, }, @@ -5223,34 +5231,34 @@ export const schemaDict = { }, AppRockskyShoutReportShout: { lexicon: 1, - id: "app.rocksky.shout.reportShout", + id: 'app.rocksky.shout.reportShout', defs: { main: { - type: "procedure", - description: "Report a shout for moderation", + type: 'procedure', + description: 'Report a shout for moderation', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["shoutId"], + type: 'object', + required: ['shoutId'], properties: { shoutId: { - type: "string", - description: "The unique identifier of the shout to report", + type: 'string', + description: 'The unique identifier of the shout to report', }, reason: { - type: "string", - description: "The reason for reporting the shout", + type: 'string', + description: 'The reason for reporting the shout', minLength: 1, }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.shout.defs#shoutView", + type: 'ref', + ref: 'lex:app.rocksky.shout.defs#shoutView', }, }, }, @@ -5258,34 +5266,34 @@ export const schemaDict = { }, AppRockskyShout: { lexicon: 1, - id: "app.rocksky.shout", + id: 'app.rocksky.shout', defs: { main: { - type: "record", - description: "A declaration of a shout.", - key: "tid", + type: 'record', + description: 'A declaration of a shout.', + key: 'tid', record: { - type: "object", - required: ["message", "createdAt", "subject"], + type: 'object', + required: ['message', 'createdAt', 'subject'], properties: { message: { - type: "string", - description: "The message of the shout.", + type: 'string', + description: 'The message of the shout.', minLength: 1, maxLength: 1000, }, createdAt: { - type: "string", - description: "The date when the shout was created.", - format: "datetime", + type: 'string', + description: 'The date when the shout was created.', + format: 'datetime', }, parent: { - type: "ref", - ref: "lex:com.atproto.repo.strongRef", + type: 'ref', + ref: 'lex:com.atproto.repo.strongRef', }, subject: { - type: "ref", - ref: "lex:com.atproto.repo.strongRef", + type: 'ref', + ref: 'lex:com.atproto.repo.strongRef', }, }, }, @@ -5294,78 +5302,78 @@ export const schemaDict = { }, AppRockskySongCreateSong: { lexicon: 1, - id: "app.rocksky.song.createSong", + id: 'app.rocksky.song.createSong', defs: { main: { - type: "procedure", - description: "Create a new song", + type: 'procedure', + description: 'Create a new song', input: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", - required: ["title", "artist", "album", "albumArtist"], + type: 'object', + required: ['title', 'artist', 'album', 'albumArtist'], properties: { title: { - type: "string", - description: "The title of the song", + type: 'string', + description: 'The title of the song', }, artist: { - type: "string", - description: "The artist of the song", + type: 'string', + description: 'The artist of the song', }, albumArtist: { - type: "string", + type: 'string', description: - "The album artist of the song, if different from the main artist", + 'The album artist of the song, if different from the main artist', }, album: { - type: "string", - description: "The album of the song, if applicable", + type: 'string', + description: 'The album of the song, if applicable', }, duration: { - type: "integer", - description: "The duration of the song in seconds", + type: 'integer', + description: 'The duration of the song in seconds', }, mbId: { - type: "string", - description: "The MusicBrainz ID of the song, if available", + type: 'string', + description: 'The MusicBrainz ID of the song, if available', }, albumArt: { - type: "string", - description: "The URL of the album art for the song", - format: "uri", + type: 'string', + description: 'The URL of the album art for the song', + format: 'uri', }, trackNumber: { - type: "integer", + type: 'integer', description: - "The track number of the song in the album, if applicable", + 'The track number of the song in the album, if applicable', }, releaseDate: { - type: "string", + type: 'string', description: - "The release date of the song, formatted as YYYY-MM-DD", + 'The release date of the song, formatted as YYYY-MM-DD', }, year: { - type: "integer", - description: "The year the song was released", + type: 'integer', + description: 'The year the song was released', }, discNumber: { - type: "integer", + type: 'integer', description: - "The disc number of the song in the album, if applicable", + 'The disc number of the song in the album, if applicable', }, lyrics: { - type: "string", - description: "The lyrics of the song, if available", + type: 'string', + description: 'The lyrics of the song, if available', }, }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewDetailed', }, }, }, @@ -5373,171 +5381,171 @@ export const schemaDict = { }, AppRockskySongDefs: { lexicon: 1, - id: "app.rocksky.song.defs", + id: 'app.rocksky.song.defs', defs: { songViewBasic: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the song.", + type: 'string', + description: 'The unique identifier of the song.', }, title: { - type: "string", - description: "The title of the song.", + type: 'string', + description: 'The title of the song.', }, artist: { - type: "string", - description: "The artist of the song.", + type: 'string', + description: 'The artist of the song.', }, albumArtist: { - type: "string", - description: "The artist of the album the song belongs to.", + type: 'string', + description: 'The artist of the album the song belongs to.', }, albumArt: { - type: "string", - description: "The URL of the album art image.", - format: "uri", + type: 'string', + description: 'The URL of the album art image.', + format: 'uri', }, uri: { - type: "string", - description: "The URI of the song.", - format: "at-uri", + type: 'string', + description: 'The URI of the song.', + format: 'at-uri', }, album: { - type: "string", - description: "The album of the song.", + type: 'string', + description: 'The album of the song.', }, duration: { - type: "integer", - description: "The duration of the song in milliseconds.", + type: 'integer', + description: 'The duration of the song in milliseconds.', }, trackNumber: { - type: "integer", - description: "The track number of the song in the album.", + type: 'integer', + description: 'The track number of the song in the album.', }, discNumber: { - type: "integer", - description: "The disc number of the song in the album.", + type: 'integer', + description: 'The disc number of the song in the album.', }, playCount: { - type: "integer", - description: "The number of times the song has been played.", + type: 'integer', + description: 'The number of times the song has been played.', minimum: 0, }, uniqueListeners: { - type: "integer", + type: 'integer', description: - "The number of unique listeners who have played the song.", + 'The number of unique listeners who have played the song.', minimum: 0, }, albumUri: { - type: "string", - description: "The URI of the album the song belongs to.", - format: "at-uri", + type: 'string', + description: 'The URI of the album the song belongs to.', + format: 'at-uri', }, artistUri: { - type: "string", - description: "The URI of the artist of the song.", - format: "at-uri", + type: 'string', + description: 'The URI of the artist of the song.', + format: 'at-uri', }, sha256: { - type: "string", - description: "The SHA256 hash of the song.", + type: 'string', + description: 'The SHA256 hash of the song.', }, tags: { - type: "array", + type: 'array', items: { - type: "string", + type: 'string', }, }, createdAt: { - type: "string", - description: "The timestamp when the song was created.", - format: "datetime", + type: 'string', + description: 'The timestamp when the song was created.', + format: 'datetime', }, }, }, songViewDetailed: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the song.", + type: 'string', + description: 'The unique identifier of the song.', }, title: { - type: "string", - description: "The title of the song.", + type: 'string', + description: 'The title of the song.', }, artist: { - type: "string", - description: "The artist of the song.", + type: 'string', + description: 'The artist of the song.', }, albumArtist: { - type: "string", - description: "The artist of the album the song belongs to.", + type: 'string', + description: 'The artist of the album the song belongs to.', }, albumArt: { - type: "string", - description: "The URL of the album art image.", - format: "uri", + type: 'string', + description: 'The URL of the album art image.', + format: 'uri', }, uri: { - type: "string", - description: "The URI of the song.", - format: "at-uri", + type: 'string', + description: 'The URI of the song.', + format: 'at-uri', }, album: { - type: "string", - description: "The album of the song.", + type: 'string', + description: 'The album of the song.', }, duration: { - type: "integer", - description: "The duration of the song in milliseconds.", + type: 'integer', + description: 'The duration of the song in milliseconds.', }, trackNumber: { - type: "integer", - description: "The track number of the song in the album.", + type: 'integer', + description: 'The track number of the song in the album.', }, discNumber: { - type: "integer", - description: "The disc number of the song in the album.", + type: 'integer', + description: 'The disc number of the song in the album.', }, playCount: { - type: "integer", - description: "The number of times the song has been played.", + type: 'integer', + description: 'The number of times the song has been played.', minimum: 0, }, uniqueListeners: { - type: "integer", + type: 'integer', description: - "The number of unique listeners who have played the song.", + 'The number of unique listeners who have played the song.', minimum: 0, }, albumUri: { - type: "string", - description: "The URI of the album the song belongs to.", - format: "at-uri", + type: 'string', + description: 'The URI of the album the song belongs to.', + format: 'at-uri', }, artistUri: { - type: "string", - description: "The URI of the artist of the song.", - format: "at-uri", + type: 'string', + description: 'The URI of the artist of the song.', + format: 'at-uri', }, sha256: { - type: "string", - description: "The SHA256 hash of the song.", + type: 'string', + description: 'The SHA256 hash of the song.', }, tags: { - type: "array", + type: 'array', items: { - type: "string", + type: 'string', }, }, createdAt: { - type: "string", - description: "The timestamp when the song was created.", - format: "datetime", + type: 'string', + description: 'The timestamp when the song was created.', + format: 'datetime', }, }, }, @@ -5545,27 +5553,27 @@ export const schemaDict = { }, AppRockskySongGetSong: { lexicon: 1, - id: "app.rocksky.song.getSong", + id: 'app.rocksky.song.getSong', defs: { main: { - type: "query", - description: "Get a song by its uri", + type: 'query', + description: 'Get a song by its uri', parameters: { - type: "params", - required: ["uri"], + type: 'params', + required: ['uri'], properties: { uri: { - type: "string", - description: "The unique identifier of the song to retrieve", - format: "at-uri", + type: 'string', + description: 'The unique identifier of the song to retrieve', + format: 'at-uri', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewDetailed', }, }, }, @@ -5573,36 +5581,40 @@ export const schemaDict = { }, AppRockskySongGetSongs: { lexicon: 1, - id: "app.rocksky.song.getSongs", + id: 'app.rocksky.song.getSongs', defs: { main: { - type: "query", - description: "Get songs", + type: 'query', + description: 'Get songs', parameters: { - type: "params", + type: 'params', properties: { limit: { - type: "integer", - description: "The maximum number of songs to return", + type: 'integer', + description: 'The maximum number of songs to return', minimum: 1, }, offset: { - type: "integer", - description: "The offset for pagination", + type: 'integer', + description: 'The offset for pagination', minimum: 0, }, + genre: { + type: 'string', + description: 'The genre to filter artists by', + }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "object", + type: 'object', properties: { songs: { - type: "array", + type: 'array', items: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewBasic", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewBasic', }, }, }, @@ -5613,31 +5625,31 @@ export const schemaDict = { }, AppRockskySongMatchSong: { lexicon: 1, - id: "app.rocksky.song.matchSong", + id: 'app.rocksky.song.matchSong', defs: { main: { - type: "query", + type: 'query', description: - "Matches a song against Rocksky’s music database and external metadata providers to resolve the best canonical track, artist, and album", + 'Matches a song against Rocksky’s music database and external metadata providers to resolve the best canonical track, artist, and album', parameters: { - type: "params", - required: ["title", "artist"], + type: 'params', + required: ['title', 'artist'], properties: { title: { - type: "string", - description: "The title of the song to retrieve", + type: 'string', + description: 'The title of the song to retrieve', }, artist: { - type: "string", - description: "The artist of the song to retrieve", + type: 'string', + description: 'The artist of the song to retrieve', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.song.defs#songViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.song.defs#songViewDetailed', }, }, }, @@ -5645,157 +5657,157 @@ export const schemaDict = { }, AppRockskySong: { lexicon: 1, - id: "app.rocksky.song", + id: 'app.rocksky.song', defs: { main: { - type: "record", - description: "A declaration of a song.", - key: "tid", + type: 'record', + description: 'A declaration of a song.', + key: 'tid', record: { - type: "object", + type: 'object', required: [ - "title", - "artist", - "album", - "albumArtist", - "duration", - "createdAt", + 'title', + 'artist', + 'album', + 'albumArtist', + 'duration', + 'createdAt', ], properties: { title: { - type: "string", - description: "The title of the song.", + type: 'string', + description: 'The title of the song.', minLength: 1, maxLength: 512, }, artist: { - type: "string", - description: "The artist of the song.", + type: 'string', + description: 'The artist of the song.', minLength: 1, maxLength: 256, }, artists: { - type: "array", - description: "The artists of the song with MusicBrainz IDs.", + type: 'array', + description: 'The artists of the song with MusicBrainz IDs.', items: { - type: "ref", - ref: "lex:app.rocksky.artist.defs#artistMbid", + type: 'ref', + ref: 'lex:app.rocksky.artist.defs#artistMbid', }, }, albumArtist: { - type: "string", - description: "The album artist of the song.", + type: 'string', + description: 'The album artist of the song.', minLength: 1, maxLength: 256, }, album: { - type: "string", - description: "The album of the song.", + type: 'string', + description: 'The album of the song.', minLength: 1, maxLength: 256, }, duration: { - type: "integer", - description: "The duration of the song in seconds.", + type: 'integer', + description: 'The duration of the song in seconds.', minimum: 1, }, trackNumber: { - type: "integer", - description: "The track number of the song in the album.", + type: 'integer', + description: 'The track number of the song in the album.', minimum: 1, }, discNumber: { - type: "integer", - description: "The disc number of the song in the album.", + type: 'integer', + description: 'The disc number of the song in the album.', minimum: 1, }, releaseDate: { - type: "string", - description: "The release date of the song.", - format: "datetime", + type: 'string', + description: 'The release date of the song.', + format: 'datetime', }, year: { - type: "integer", - description: "The year the song was released.", + type: 'integer', + description: 'The year the song was released.', }, genre: { - type: "string", - description: "The genre of the song.", + type: 'string', + description: 'The genre of the song.', minLength: 1, maxLength: 256, }, tags: { - type: "array", - description: "The tags of the song.", + type: 'array', + description: 'The tags of the song.', items: { - type: "string", + type: 'string', minLength: 1, maxLength: 256, }, }, composer: { - type: "string", - description: "The composer of the song.", + type: 'string', + description: 'The composer of the song.', maxLength: 256, }, lyrics: { - type: "string", - description: "The lyrics of the song.", + type: 'string', + description: 'The lyrics of the song.', maxLength: 10000, }, copyrightMessage: { - type: "string", - description: "The copyright message of the song.", + type: 'string', + description: 'The copyright message of the song.', maxLength: 256, }, wiki: { - type: "string", - description: "Informations about the song", + type: 'string', + description: 'Informations about the song', maxLength: 10000, }, albumArt: { - type: "blob", - description: "The album art of the song.", - accept: ["image/png", "image/jpeg"], + type: 'blob', + description: 'The album art of the song.', + accept: ['image/png', 'image/jpeg'], maxSize: 2000000, }, albumArtUrl: { - type: "string", - description: "The URL of the album art of the song.", - format: "uri", + type: 'string', + description: 'The URL of the album art of the song.', + format: 'uri', }, youtubeLink: { - type: "string", - description: "The YouTube link of the song.", - format: "uri", + type: 'string', + description: 'The YouTube link of the song.', + format: 'uri', }, spotifyLink: { - type: "string", - description: "The Spotify link of the song.", - format: "uri", + type: 'string', + description: 'The Spotify link of the song.', + format: 'uri', }, tidalLink: { - type: "string", - description: "The Tidal link of the song.", - format: "uri", + type: 'string', + description: 'The Tidal link of the song.', + format: 'uri', }, appleMusicLink: { - type: "string", - description: "The Apple Music link of the song.", - format: "uri", + type: 'string', + description: 'The Apple Music link of the song.', + format: 'uri', }, createdAt: { - type: "string", - description: "The date when the song was created.", - format: "datetime", + type: 'string', + description: 'The date when the song was created.', + format: 'datetime', }, mbid: { - type: "string", - description: "The MusicBrainz ID of the song.", + type: 'string', + description: 'The MusicBrainz ID of the song.', }, label: { - type: "string", - description: "The label of the song.", + type: 'string', + description: 'The label of the song.', maxLength: 256, }, }, @@ -5805,34 +5817,34 @@ export const schemaDict = { }, AppRockskySpotifyDefs: { lexicon: 1, - id: "app.rocksky.spotify.defs", + id: 'app.rocksky.spotify.defs', defs: { spotifyTrackView: { - type: "object", + type: 'object', properties: { id: { - type: "string", - description: "The unique identifier of the Spotify track.", + type: 'string', + description: 'The unique identifier of the Spotify track.', }, name: { - type: "string", - description: "The name of the track.", + type: 'string', + description: 'The name of the track.', }, artist: { - type: "string", - description: "The name of the artist.", + type: 'string', + description: 'The name of the artist.', }, album: { - type: "string", - description: "The name of the album.", + type: 'string', + description: 'The name of the album.', }, duration: { - type: "integer", - description: "The duration of the track in milliseconds.", + type: 'integer', + description: 'The duration of the track in milliseconds.', }, previewUrl: { - type: "string", - description: "A URL to a preview of the track.", + type: 'string', + description: 'A URL to a preview of the track.', }, }, }, @@ -5840,27 +5852,27 @@ export const schemaDict = { }, AppRockskySpotifyGetCurrentlyPlaying: { lexicon: 1, - id: "app.rocksky.spotify.getCurrentlyPlaying", + id: 'app.rocksky.spotify.getCurrentlyPlaying', defs: { main: { - type: "query", - description: "Get the currently playing track", + type: 'query', + description: 'Get the currently playing track', parameters: { - type: "params", + type: 'params', properties: { actor: { - type: "string", + type: 'string', description: - "Handle or DID of the actor to retrieve the currently playing track for. If not provided, defaults to the current user.", - format: "at-identifier", + 'Handle or DID of the actor to retrieve the currently playing track for. If not provided, defaults to the current user.', + format: 'at-identifier', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.player.defs#currentlyPlayingViewDetailed", + type: 'ref', + ref: 'lex:app.rocksky.player.defs#currentlyPlayingViewDetailed', }, }, }, @@ -5868,59 +5880,59 @@ export const schemaDict = { }, AppRockskySpotifyNext: { lexicon: 1, - id: "app.rocksky.spotify.next", + id: 'app.rocksky.spotify.next', defs: { main: { - type: "procedure", - description: "Play the next track in the queue", + type: 'procedure', + description: 'Play the next track in the queue', }, }, }, AppRockskySpotifyPause: { lexicon: 1, - id: "app.rocksky.spotify.pause", + id: 'app.rocksky.spotify.pause', defs: { main: { - type: "procedure", - description: "Pause the currently playing track", + type: 'procedure', + description: 'Pause the currently playing track', }, }, }, AppRockskySpotifyPlay: { lexicon: 1, - id: "app.rocksky.spotify.play", + id: 'app.rocksky.spotify.play', defs: { main: { - type: "procedure", - description: "Resume playback of the currently paused track", + type: 'procedure', + description: 'Resume playback of the currently paused track', }, }, }, AppRockskySpotifyPrevious: { lexicon: 1, - id: "app.rocksky.spotify.previous", + id: 'app.rocksky.spotify.previous', defs: { main: { - type: "procedure", - description: "Play the previous track in the queue", + type: 'procedure', + description: 'Play the previous track in the queue', }, }, }, AppRockskySpotifySeek: { lexicon: 1, - id: "app.rocksky.spotify.seek", + id: 'app.rocksky.spotify.seek', defs: { main: { - type: "procedure", + type: 'procedure', description: - "Seek to a specific position in the currently playing track", + 'Seek to a specific position in the currently playing track', parameters: { - type: "params", - required: ["position"], + type: 'params', + required: ['position'], properties: { position: { - type: "integer", - description: "The position in seconds to seek to", + type: 'integer', + description: 'The position in seconds to seek to', }, }, }, @@ -5929,30 +5941,30 @@ export const schemaDict = { }, AppRockskyStatsDefs: { lexicon: 1, - id: "app.rocksky.stats.defs", + id: 'app.rocksky.stats.defs', defs: { statsView: { - type: "object", + type: 'object', properties: { scrobbles: { - type: "integer", - description: "The total number of scrobbles.", + type: 'integer', + description: 'The total number of scrobbles.', }, artists: { - type: "integer", - description: "The total number of unique artists scrobbled.", + type: 'integer', + description: 'The total number of unique artists scrobbled.', }, lovedTracks: { - type: "integer", - description: "The total number of tracks marked as loved.", + type: 'integer', + description: 'The total number of tracks marked as loved.', }, albums: { - type: "integer", - description: "The total number of unique albums scrobbled.", + type: 'integer', + description: 'The total number of unique albums scrobbled.', }, tracks: { - type: "integer", - description: "The total number of unique tracks scrobbled.", + type: 'integer', + description: 'The total number of unique tracks scrobbled.', }, }, }, @@ -5960,26 +5972,26 @@ export const schemaDict = { }, AppRockskyStatsGetStats: { lexicon: 1, - id: "app.rocksky.stats.getStats", + id: 'app.rocksky.stats.getStats', defs: { main: { - type: "query", + type: 'query', parameters: { - type: "params", - required: ["did"], + type: 'params', + required: ['did'], properties: { did: { - type: "string", - description: "The DID or handle of the user to get stats for.", - format: "at-identifier", + type: 'string', + description: 'The DID or handle of the user to get stats for.', + format: 'at-identifier', }, }, }, output: { - encoding: "application/json", + encoding: 'application/json', schema: { - type: "ref", - ref: "lex:app.rocksky.stats.defs#statsView", + type: 'ref', + ref: 'lex:app.rocksky.stats.defs#statsView', }, }, }, @@ -5987,158 +5999,158 @@ export const schemaDict = { }, ComAtprotoRepoStrongRef: { lexicon: 1, - id: "com.atproto.repo.strongRef", - description: "A URI with a content-hash fingerprint.", + id: 'com.atproto.repo.strongRef', + description: 'A URI with a content-hash fingerprint.', defs: { main: { - type: "object", - required: ["uri", "cid"], + type: 'object', + required: ['uri', 'cid'], properties: { uri: { - type: "string", - format: "at-uri", + type: 'string', + format: 'at-uri', }, cid: { - type: "string", - format: "cid", + type: 'string', + format: 'cid', }, }, }, }, }, -} as const satisfies Record; +} as const satisfies Record -export const schemas = Object.values(schemaDict); -export const lexicons: Lexicons = new Lexicons(schemas); +export const schemas = Object.values(schemaDict) +export const lexicons: Lexicons = new Lexicons(schemas) export const ids = { - FmTealAlphaActorDefs: "fm.teal.alpha.actor.defs", - FmTealAlphaActorGetProfile: "fm.teal.alpha.actor.getProfile", - FmTealAlphaActorGetProfiles: "fm.teal.alpha.actor.getProfiles", - FmTealAlphaActorProfile: "fm.teal.alpha.actor.profile", - FmTealAlphaActorSearchActors: "fm.teal.alpha.actor.searchActors", - FmTealAlphaActorStatus: "fm.teal.alpha.actor.status", - FmTealAlphaFeedDefs: "fm.teal.alpha.feed.defs", - FmTealAlphaFeedGetActorFeed: "fm.teal.alpha.feed.getActorFeed", - FmTealAlphaFeedGetPlay: "fm.teal.alpha.feed.getPlay", - FmTealAlphaFeedPlay: "fm.teal.alpha.feed.play", - AppRockskyActorDefs: "app.rocksky.actor.defs", - AppRockskyActorGetActorAlbums: "app.rocksky.actor.getActorAlbums", - AppRockskyActorGetActorArtists: "app.rocksky.actor.getActorArtists", + FmTealAlphaActorDefs: 'fm.teal.alpha.actor.defs', + FmTealAlphaActorGetProfile: 'fm.teal.alpha.actor.getProfile', + FmTealAlphaActorGetProfiles: 'fm.teal.alpha.actor.getProfiles', + FmTealAlphaActorProfile: 'fm.teal.alpha.actor.profile', + FmTealAlphaActorSearchActors: 'fm.teal.alpha.actor.searchActors', + FmTealAlphaActorStatus: 'fm.teal.alpha.actor.status', + FmTealAlphaFeedDefs: 'fm.teal.alpha.feed.defs', + FmTealAlphaFeedGetActorFeed: 'fm.teal.alpha.feed.getActorFeed', + FmTealAlphaFeedGetPlay: 'fm.teal.alpha.feed.getPlay', + FmTealAlphaFeedPlay: 'fm.teal.alpha.feed.play', + AppRockskyActorDefs: 'app.rocksky.actor.defs', + AppRockskyActorGetActorAlbums: 'app.rocksky.actor.getActorAlbums', + AppRockskyActorGetActorArtists: 'app.rocksky.actor.getActorArtists', AppRockskyActorGetActorCompatibility: - "app.rocksky.actor.getActorCompatibility", - AppRockskyActorGetActorLovedSongs: "app.rocksky.actor.getActorLovedSongs", - AppRockskyActorGetActorNeighbours: "app.rocksky.actor.getActorNeighbours", - AppRockskyActorGetActorPlaylists: "app.rocksky.actor.getActorPlaylists", - AppRockskyActorGetActorScrobbles: "app.rocksky.actor.getActorScrobbles", - AppRockskyActorGetActorSongs: "app.rocksky.actor.getActorSongs", - AppRockskyActorGetProfile: "app.rocksky.actor.getProfile", - AppBskyActorProfile: "app.bsky.actor.profile", - AppRockskyAlbum: "app.rocksky.album", - AppRockskyAlbumDefs: "app.rocksky.album.defs", - AppRockskyAlbumGetAlbum: "app.rocksky.album.getAlbum", - AppRockskyAlbumGetAlbums: "app.rocksky.album.getAlbums", - AppRockskyAlbumGetAlbumTracks: "app.rocksky.album.getAlbumTracks", - AppRockskyApikeyCreateApikey: "app.rocksky.apikey.createApikey", - AppRockskyApikeyDefs: "app.rocksky.apikey.defs", - AppRockskyApikeysDefs: "app.rocksky.apikeys.defs", - AppRockskyApikeyGetApikeys: "app.rocksky.apikey.getApikeys", - AppRockskyApikeyRemoveApikey: "app.rocksky.apikey.removeApikey", - AppRockskyApikeyUpdateApikey: "app.rocksky.apikey.updateApikey", - AppRockskyArtist: "app.rocksky.artist", - AppRockskyArtistDefs: "app.rocksky.artist.defs", - AppRockskyArtistGetArtist: "app.rocksky.artist.getArtist", - AppRockskyArtistGetArtistAlbums: "app.rocksky.artist.getArtistAlbums", - AppRockskyArtistGetArtistListeners: "app.rocksky.artist.getArtistListeners", - AppRockskyArtistGetArtists: "app.rocksky.artist.getArtists", - AppRockskyArtistGetArtistTracks: "app.rocksky.artist.getArtistTracks", - AppRockskyChartsDefs: "app.rocksky.charts.defs", - AppRockskyChartsGetScrobblesChart: "app.rocksky.charts.getScrobblesChart", - AppRockskyDropboxDefs: "app.rocksky.dropbox.defs", - AppRockskyDropboxDownloadFile: "app.rocksky.dropbox.downloadFile", - AppRockskyDropboxGetFiles: "app.rocksky.dropbox.getFiles", - AppRockskyDropboxGetMetadata: "app.rocksky.dropbox.getMetadata", - AppRockskyDropboxGetTemporaryLink: "app.rocksky.dropbox.getTemporaryLink", - AppRockskyFeedDefs: "app.rocksky.feed.defs", - AppRockskyFeedDescribeFeedGenerator: "app.rocksky.feed.describeFeedGenerator", - AppRockskyFeedGenerator: "app.rocksky.feed.generator", - AppRockskyFeedGetFeed: "app.rocksky.feed.getFeed", - AppRockskyFeedGetFeedGenerator: "app.rocksky.feed.getFeedGenerator", - AppRockskyFeedGetFeedGenerators: "app.rocksky.feed.getFeedGenerators", - AppRockskyFeedGetFeedSkeleton: "app.rocksky.feed.getFeedSkeleton", - AppRockskyFeedGetNowPlayings: "app.rocksky.feed.getNowPlayings", - AppRockskyFeedSearch: "app.rocksky.feed.search", - AppRockskyGoogledriveDefs: "app.rocksky.googledrive.defs", - AppRockskyGoogledriveDownloadFile: "app.rocksky.googledrive.downloadFile", - AppRockskyGoogledriveGetFile: "app.rocksky.googledrive.getFile", - AppRockskyGoogledriveGetFiles: "app.rocksky.googledrive.getFiles", - AppRockskyGraphDefs: "app.rocksky.graph.defs", - AppRockskyGraphFollow: "app.rocksky.graph.follow", - AppRockskyGraphFollowAccount: "app.rocksky.graph.followAccount", - AppRockskyGraphGetFollowers: "app.rocksky.graph.getFollowers", - AppRockskyGraphGetFollows: "app.rocksky.graph.getFollows", - AppRockskyGraphGetKnownFollowers: "app.rocksky.graph.getKnownFollowers", - AppRockskyGraphUnfollowAccount: "app.rocksky.graph.unfollowAccount", - AppRockskyLikeDislikeShout: "app.rocksky.like.dislikeShout", - AppRockskyLikeDislikeSong: "app.rocksky.like.dislikeSong", - AppRockskyLike: "app.rocksky.like", - AppRockskyLikeLikeShout: "app.rocksky.like.likeShout", - AppRockskyLikeLikeSong: "app.rocksky.like.likeSong", - AppRockskyPlayerAddDirectoryToQueue: "app.rocksky.player.addDirectoryToQueue", - AppRockskyPlayerAddItemsToQueue: "app.rocksky.player.addItemsToQueue", - AppRockskyPlayerDefs: "app.rocksky.player.defs", - AppRockskyPlayerGetCurrentlyPlaying: "app.rocksky.player.getCurrentlyPlaying", - AppRockskyPlayerGetPlaybackQueue: "app.rocksky.player.getPlaybackQueue", - AppRockskyPlayerNext: "app.rocksky.player.next", - AppRockskyPlayerPause: "app.rocksky.player.pause", - AppRockskyPlayerPlay: "app.rocksky.player.play", - AppRockskyPlayerPlayDirectory: "app.rocksky.player.playDirectory", - AppRockskyPlayerPlayFile: "app.rocksky.player.playFile", - AppRockskyPlayerPrevious: "app.rocksky.player.previous", - AppRockskyPlayerSeek: "app.rocksky.player.seek", - AppRockskyPlaylistCreatePlaylist: "app.rocksky.playlist.createPlaylist", - AppRockskyPlaylistDefs: "app.rocksky.playlist.defs", - AppRockskyPlaylistGetPlaylist: "app.rocksky.playlist.getPlaylist", - AppRockskyPlaylistGetPlaylists: "app.rocksky.playlist.getPlaylists", - AppRockskyPlaylistInsertDirectory: "app.rocksky.playlist.insertDirectory", - AppRockskyPlaylistInsertFiles: "app.rocksky.playlist.insertFiles", - AppRockskyPlaylist: "app.rocksky.playlist", - AppRockskyPlaylistItem: "app.rocksky.playlistItem", - AppRockskyPlaylistRemovePlaylist: "app.rocksky.playlist.removePlaylist", - AppRockskyPlaylistRemoveTrack: "app.rocksky.playlist.removeTrack", - AppRockskyPlaylistStartPlaylist: "app.rocksky.playlist.startPlaylist", - AppRockskyRadioDefs: "app.rocksky.radio.defs", - AppRockskyRadio: "app.rocksky.radio", - AppRockskyScrobbleCreateScrobble: "app.rocksky.scrobble.createScrobble", - AppRockskyScrobbleDefs: "app.rocksky.scrobble.defs", - AppRockskyScrobbleGetScrobble: "app.rocksky.scrobble.getScrobble", - AppRockskyScrobbleGetScrobbles: "app.rocksky.scrobble.getScrobbles", - AppRockskyScrobble: "app.rocksky.scrobble", - AppRockskyShoutCreateShout: "app.rocksky.shout.createShout", - AppRockskyShoutDefs: "app.rocksky.shout.defs", - AppRockskyShoutGetAlbumShouts: "app.rocksky.shout.getAlbumShouts", - AppRockskyShoutGetArtistShouts: "app.rocksky.shout.getArtistShouts", - AppRockskyShoutGetProfileShouts: "app.rocksky.shout.getProfileShouts", - AppRockskyShoutGetShoutReplies: "app.rocksky.shout.getShoutReplies", - AppRockskyShoutGetTrackShouts: "app.rocksky.shout.getTrackShouts", - AppRockskyShoutRemoveShout: "app.rocksky.shout.removeShout", - AppRockskyShoutReplyShout: "app.rocksky.shout.replyShout", - AppRockskyShoutReportShout: "app.rocksky.shout.reportShout", - AppRockskyShout: "app.rocksky.shout", - AppRockskySongCreateSong: "app.rocksky.song.createSong", - AppRockskySongDefs: "app.rocksky.song.defs", - AppRockskySongGetSong: "app.rocksky.song.getSong", - AppRockskySongGetSongs: "app.rocksky.song.getSongs", - AppRockskySongMatchSong: "app.rocksky.song.matchSong", - AppRockskySong: "app.rocksky.song", - AppRockskySpotifyDefs: "app.rocksky.spotify.defs", + 'app.rocksky.actor.getActorCompatibility', + AppRockskyActorGetActorLovedSongs: 'app.rocksky.actor.getActorLovedSongs', + AppRockskyActorGetActorNeighbours: 'app.rocksky.actor.getActorNeighbours', + AppRockskyActorGetActorPlaylists: 'app.rocksky.actor.getActorPlaylists', + AppRockskyActorGetActorScrobbles: 'app.rocksky.actor.getActorScrobbles', + AppRockskyActorGetActorSongs: 'app.rocksky.actor.getActorSongs', + AppRockskyActorGetProfile: 'app.rocksky.actor.getProfile', + AppBskyActorProfile: 'app.bsky.actor.profile', + AppRockskyAlbum: 'app.rocksky.album', + AppRockskyAlbumDefs: 'app.rocksky.album.defs', + AppRockskyAlbumGetAlbum: 'app.rocksky.album.getAlbum', + AppRockskyAlbumGetAlbums: 'app.rocksky.album.getAlbums', + AppRockskyAlbumGetAlbumTracks: 'app.rocksky.album.getAlbumTracks', + AppRockskyApikeyCreateApikey: 'app.rocksky.apikey.createApikey', + AppRockskyApikeyDefs: 'app.rocksky.apikey.defs', + AppRockskyApikeysDefs: 'app.rocksky.apikeys.defs', + AppRockskyApikeyGetApikeys: 'app.rocksky.apikey.getApikeys', + AppRockskyApikeyRemoveApikey: 'app.rocksky.apikey.removeApikey', + AppRockskyApikeyUpdateApikey: 'app.rocksky.apikey.updateApikey', + AppRockskyArtist: 'app.rocksky.artist', + AppRockskyArtistDefs: 'app.rocksky.artist.defs', + AppRockskyArtistGetArtist: 'app.rocksky.artist.getArtist', + AppRockskyArtistGetArtistAlbums: 'app.rocksky.artist.getArtistAlbums', + AppRockskyArtistGetArtistListeners: 'app.rocksky.artist.getArtistListeners', + AppRockskyArtistGetArtists: 'app.rocksky.artist.getArtists', + AppRockskyArtistGetArtistTracks: 'app.rocksky.artist.getArtistTracks', + AppRockskyChartsDefs: 'app.rocksky.charts.defs', + AppRockskyChartsGetScrobblesChart: 'app.rocksky.charts.getScrobblesChart', + AppRockskyDropboxDefs: 'app.rocksky.dropbox.defs', + AppRockskyDropboxDownloadFile: 'app.rocksky.dropbox.downloadFile', + AppRockskyDropboxGetFiles: 'app.rocksky.dropbox.getFiles', + AppRockskyDropboxGetMetadata: 'app.rocksky.dropbox.getMetadata', + AppRockskyDropboxGetTemporaryLink: 'app.rocksky.dropbox.getTemporaryLink', + AppRockskyFeedDefs: 'app.rocksky.feed.defs', + AppRockskyFeedDescribeFeedGenerator: 'app.rocksky.feed.describeFeedGenerator', + AppRockskyFeedGenerator: 'app.rocksky.feed.generator', + AppRockskyFeedGetFeed: 'app.rocksky.feed.getFeed', + AppRockskyFeedGetFeedGenerator: 'app.rocksky.feed.getFeedGenerator', + AppRockskyFeedGetFeedGenerators: 'app.rocksky.feed.getFeedGenerators', + AppRockskyFeedGetFeedSkeleton: 'app.rocksky.feed.getFeedSkeleton', + AppRockskyFeedGetNowPlayings: 'app.rocksky.feed.getNowPlayings', + AppRockskyFeedSearch: 'app.rocksky.feed.search', + AppRockskyGoogledriveDefs: 'app.rocksky.googledrive.defs', + AppRockskyGoogledriveDownloadFile: 'app.rocksky.googledrive.downloadFile', + AppRockskyGoogledriveGetFile: 'app.rocksky.googledrive.getFile', + AppRockskyGoogledriveGetFiles: 'app.rocksky.googledrive.getFiles', + AppRockskyGraphDefs: 'app.rocksky.graph.defs', + AppRockskyGraphFollow: 'app.rocksky.graph.follow', + AppRockskyGraphFollowAccount: 'app.rocksky.graph.followAccount', + AppRockskyGraphGetFollowers: 'app.rocksky.graph.getFollowers', + AppRockskyGraphGetFollows: 'app.rocksky.graph.getFollows', + AppRockskyGraphGetKnownFollowers: 'app.rocksky.graph.getKnownFollowers', + AppRockskyGraphUnfollowAccount: 'app.rocksky.graph.unfollowAccount', + AppRockskyLikeDislikeShout: 'app.rocksky.like.dislikeShout', + AppRockskyLikeDislikeSong: 'app.rocksky.like.dislikeSong', + AppRockskyLike: 'app.rocksky.like', + AppRockskyLikeLikeShout: 'app.rocksky.like.likeShout', + AppRockskyLikeLikeSong: 'app.rocksky.like.likeSong', + AppRockskyPlayerAddDirectoryToQueue: 'app.rocksky.player.addDirectoryToQueue', + AppRockskyPlayerAddItemsToQueue: 'app.rocksky.player.addItemsToQueue', + AppRockskyPlayerDefs: 'app.rocksky.player.defs', + AppRockskyPlayerGetCurrentlyPlaying: 'app.rocksky.player.getCurrentlyPlaying', + AppRockskyPlayerGetPlaybackQueue: 'app.rocksky.player.getPlaybackQueue', + AppRockskyPlayerNext: 'app.rocksky.player.next', + AppRockskyPlayerPause: 'app.rocksky.player.pause', + AppRockskyPlayerPlay: 'app.rocksky.player.play', + AppRockskyPlayerPlayDirectory: 'app.rocksky.player.playDirectory', + AppRockskyPlayerPlayFile: 'app.rocksky.player.playFile', + AppRockskyPlayerPrevious: 'app.rocksky.player.previous', + AppRockskyPlayerSeek: 'app.rocksky.player.seek', + AppRockskyPlaylistCreatePlaylist: 'app.rocksky.playlist.createPlaylist', + AppRockskyPlaylistDefs: 'app.rocksky.playlist.defs', + AppRockskyPlaylistGetPlaylist: 'app.rocksky.playlist.getPlaylist', + AppRockskyPlaylistGetPlaylists: 'app.rocksky.playlist.getPlaylists', + AppRockskyPlaylistInsertDirectory: 'app.rocksky.playlist.insertDirectory', + AppRockskyPlaylistInsertFiles: 'app.rocksky.playlist.insertFiles', + AppRockskyPlaylist: 'app.rocksky.playlist', + AppRockskyPlaylistItem: 'app.rocksky.playlistItem', + AppRockskyPlaylistRemovePlaylist: 'app.rocksky.playlist.removePlaylist', + AppRockskyPlaylistRemoveTrack: 'app.rocksky.playlist.removeTrack', + AppRockskyPlaylistStartPlaylist: 'app.rocksky.playlist.startPlaylist', + AppRockskyRadioDefs: 'app.rocksky.radio.defs', + AppRockskyRadio: 'app.rocksky.radio', + AppRockskyScrobbleCreateScrobble: 'app.rocksky.scrobble.createScrobble', + AppRockskyScrobbleDefs: 'app.rocksky.scrobble.defs', + AppRockskyScrobbleGetScrobble: 'app.rocksky.scrobble.getScrobble', + AppRockskyScrobbleGetScrobbles: 'app.rocksky.scrobble.getScrobbles', + AppRockskyScrobble: 'app.rocksky.scrobble', + AppRockskyShoutCreateShout: 'app.rocksky.shout.createShout', + AppRockskyShoutDefs: 'app.rocksky.shout.defs', + AppRockskyShoutGetAlbumShouts: 'app.rocksky.shout.getAlbumShouts', + AppRockskyShoutGetArtistShouts: 'app.rocksky.shout.getArtistShouts', + AppRockskyShoutGetProfileShouts: 'app.rocksky.shout.getProfileShouts', + AppRockskyShoutGetShoutReplies: 'app.rocksky.shout.getShoutReplies', + AppRockskyShoutGetTrackShouts: 'app.rocksky.shout.getTrackShouts', + AppRockskyShoutRemoveShout: 'app.rocksky.shout.removeShout', + AppRockskyShoutReplyShout: 'app.rocksky.shout.replyShout', + AppRockskyShoutReportShout: 'app.rocksky.shout.reportShout', + AppRockskyShout: 'app.rocksky.shout', + AppRockskySongCreateSong: 'app.rocksky.song.createSong', + AppRockskySongDefs: 'app.rocksky.song.defs', + AppRockskySongGetSong: 'app.rocksky.song.getSong', + AppRockskySongGetSongs: 'app.rocksky.song.getSongs', + AppRockskySongMatchSong: 'app.rocksky.song.matchSong', + AppRockskySong: 'app.rocksky.song', + AppRockskySpotifyDefs: 'app.rocksky.spotify.defs', AppRockskySpotifyGetCurrentlyPlaying: - "app.rocksky.spotify.getCurrentlyPlaying", - AppRockskySpotifyNext: "app.rocksky.spotify.next", - AppRockskySpotifyPause: "app.rocksky.spotify.pause", - AppRockskySpotifyPlay: "app.rocksky.spotify.play", - AppRockskySpotifyPrevious: "app.rocksky.spotify.previous", - AppRockskySpotifySeek: "app.rocksky.spotify.seek", - AppRockskyStatsDefs: "app.rocksky.stats.defs", - AppRockskyStatsGetStats: "app.rocksky.stats.getStats", - ComAtprotoRepoStrongRef: "com.atproto.repo.strongRef", -}; + 'app.rocksky.spotify.getCurrentlyPlaying', + AppRockskySpotifyNext: 'app.rocksky.spotify.next', + AppRockskySpotifyPause: 'app.rocksky.spotify.pause', + AppRockskySpotifyPlay: 'app.rocksky.spotify.play', + AppRockskySpotifyPrevious: 'app.rocksky.spotify.previous', + AppRockskySpotifySeek: 'app.rocksky.spotify.seek', + AppRockskyStatsDefs: 'app.rocksky.stats.defs', + AppRockskyStatsGetStats: 'app.rocksky.stats.getStats', + ComAtprotoRepoStrongRef: 'com.atproto.repo.strongRef', +} diff --git a/apps/api/src/lexicon/types/app/bsky/actor/profile.ts b/apps/api/src/lexicon/types/app/bsky/actor/profile.ts index 119a7fb1..17882944 100644 --- a/apps/api/src/lexicon/types/app/bsky/actor/profile.ts +++ b/apps/api/src/lexicon/types/app/bsky/actor/profile.ts @@ -1,38 +1,38 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type * as ComAtprotoLabelDefs from "../../../com/atproto/label/defs"; -import type * as ComAtprotoRepoStrongRef from "../../../com/atproto/repo/strongRef"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs' +import type * as ComAtprotoRepoStrongRef from '../../../com/atproto/repo/strongRef' export interface Record { - displayName?: string; + displayName?: string /** Free-form profile description text. */ - description?: string; + description?: string /** Small image to be displayed next to posts from account. AKA, 'profile picture' */ - avatar?: BlobRef; + avatar?: BlobRef /** Larger horizontal image to display behind profile view. */ - banner?: BlobRef; + banner?: BlobRef labels?: | ComAtprotoLabelDefs.SelfLabels - | { $type: string; [k: string]: unknown }; - joinedViaStarterPack?: ComAtprotoRepoStrongRef.Main; - createdAt?: string; - [k: string]: unknown; + | { $type: string; [k: string]: unknown } + joinedViaStarterPack?: ComAtprotoRepoStrongRef.Main + createdAt?: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.bsky.actor.profile#main" || - v.$type === "app.bsky.actor.profile") - ); + hasProp(v, '$type') && + (v.$type === 'app.bsky.actor.profile#main' || + v.$type === 'app.bsky.actor.profile') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.bsky.actor.profile#main", v); + return lexicons.validate('app.bsky.actor.profile#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/defs.ts b/apps/api/src/lexicon/types/app/rocksky/actor/defs.ts index 14a9b3c9..187eeef4 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/defs.ts @@ -1,111 +1,111 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppRockskyArtistDefs from "../artist/defs"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type * as AppRockskyArtistDefs from '../artist/defs' export interface ProfileViewDetailed { /** The unique identifier of the actor. */ - id?: string; + id?: string /** The DID of the actor. */ - did?: string; + did?: string /** The handle of the actor. */ - handle?: string; + handle?: string /** The display name of the actor. */ - displayName?: string; + displayName?: string /** The URL of the actor's avatar image. */ - avatar?: string; + avatar?: string /** The date and time when the actor was created. */ - createdAt?: string; + createdAt?: string /** The date and time when the actor was last updated. */ - updatedAt?: string; - [k: string]: unknown; + updatedAt?: string + [k: string]: unknown } export function isProfileViewDetailed(v: unknown): v is ProfileViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.actor.defs#profileViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.actor.defs#profileViewDetailed' + ) } export function validateProfileViewDetailed(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.actor.defs#profileViewDetailed", v); + return lexicons.validate('app.rocksky.actor.defs#profileViewDetailed', v) } export interface ProfileViewBasic { /** The unique identifier of the actor. */ - id?: string; + id?: string /** The DID of the actor. */ - did?: string; + did?: string /** The handle of the actor. */ - handle?: string; + handle?: string /** The display name of the actor. */ - displayName?: string; + displayName?: string /** The URL of the actor's avatar image. */ - avatar?: string; + avatar?: string /** The date and time when the actor was created. */ - createdAt?: string; + createdAt?: string /** The date and time when the actor was last updated. */ - updatedAt?: string; - [k: string]: unknown; + updatedAt?: string + [k: string]: unknown } export function isProfileViewBasic(v: unknown): v is ProfileViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.actor.defs#profileViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.actor.defs#profileViewBasic' + ) } export function validateProfileViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.actor.defs#profileViewBasic", v); + return lexicons.validate('app.rocksky.actor.defs#profileViewBasic', v) } export interface NeighbourViewBasic { - userId?: string; - did?: string; - handle?: string; - displayName?: string; + userId?: string + did?: string + handle?: string + displayName?: string /** The URL of the actor's avatar image. */ - avatar?: string; + avatar?: string /** The number of artists shared with the actor. */ - sharedArtistsCount?: number; + sharedArtistsCount?: number /** The similarity score with the actor. */ - similarityScore?: number; + similarityScore?: number /** The top shared artist names with the actor. */ - topSharedArtistNames?: string[]; + topSharedArtistNames?: string[] /** The top shared artist details with the actor. */ - topSharedArtistsDetails?: AppRockskyArtistDefs.ArtistViewBasic[]; - [k: string]: unknown; + topSharedArtistsDetails?: AppRockskyArtistDefs.ArtistViewBasic[] + [k: string]: unknown } export function isNeighbourViewBasic(v: unknown): v is NeighbourViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.actor.defs#neighbourViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.actor.defs#neighbourViewBasic' + ) } export function validateNeighbourViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.actor.defs#neighbourViewBasic", v); + return lexicons.validate('app.rocksky.actor.defs#neighbourViewBasic', v) } export interface CompatibilityViewBasic { - compatibilityLevel?: number; - compatibilityPercentage?: number; - sharedArtists?: number; - topSharedArtistNames?: string[]; - topSharedDetailedArtists?: ArtistViewBasic[]; - user1ArtistCount?: number; - user2ArtistCount?: number; - [k: string]: unknown; + compatibilityLevel?: number + compatibilityPercentage?: number + sharedArtists?: number + topSharedArtistNames?: string[] + topSharedDetailedArtists?: ArtistViewBasic[] + user1ArtistCount?: number + user2ArtistCount?: number + [k: string]: unknown } export function isCompatibilityViewBasic( @@ -113,34 +113,34 @@ export function isCompatibilityViewBasic( ): v is CompatibilityViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.actor.defs#compatibilityViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.actor.defs#compatibilityViewBasic' + ) } export function validateCompatibilityViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.actor.defs#compatibilityViewBasic", v); + return lexicons.validate('app.rocksky.actor.defs#compatibilityViewBasic', v) } export interface ArtistViewBasic { - id?: string; - name?: string; - picture?: string; - uri?: string; - user1Rank?: number; - user2Rank?: number; - weight?: number; - [k: string]: unknown; + id?: string + name?: string + picture?: string + uri?: string + user1Rank?: number + user2Rank?: number + weight?: number + [k: string]: unknown } export function isArtistViewBasic(v: unknown): v is ArtistViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.actor.defs#artistViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.actor.defs#artistViewBasic' + ) } export function validateArtistViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.actor.defs#artistViewBasic", v); + return lexicons.validate('app.rocksky.actor.defs#artistViewBasic', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getActorAlbums.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getActorAlbums.ts index a137d493..d339084f 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getActorAlbums.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getActorAlbums.ts @@ -1,56 +1,56 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyAlbumDefs from "../album/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyAlbumDefs from '../album/defs' export interface QueryParams { /** The DID or handle of the actor */ - did: string; + did: string /** The maximum number of albums to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number /** The start date to filter albums from (ISO 8601 format) */ - startDate?: string; + startDate?: string /** The end date to filter albums to (ISO 8601 format) */ - endDate?: string; + endDate?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - albums?: AppRockskyAlbumDefs.AlbumViewBasic[]; - [k: string]: unknown; + albums?: AppRockskyAlbumDefs.AlbumViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getActorArtists.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getActorArtists.ts index 97c79d90..f28bbc2b 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getActorArtists.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getActorArtists.ts @@ -1,56 +1,56 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyArtistDefs from "../artist/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyArtistDefs from '../artist/defs' export interface QueryParams { /** The DID or handle of the actor */ - did: string; + did: string /** The maximum number of albums to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number /** The start date to filter albums from (ISO 8601 format) */ - startDate?: string; + startDate?: string /** The end date to filter albums to (ISO 8601 format) */ - endDate?: string; + endDate?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - artists?: AppRockskyArtistDefs.ArtistViewBasic[]; - [k: string]: unknown; + artists?: AppRockskyArtistDefs.ArtistViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getActorCompatibility.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getActorCompatibility.ts index 242cb566..3b0076b4 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getActorCompatibility.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getActorCompatibility.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyActorDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyActorDefs from './defs' export interface QueryParams { /** DID or handle to get compatibility for */ - did: string; + did: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - compatibility?: AppRockskyActorDefs.CompatibilityViewBasic; - [k: string]: unknown; + compatibility?: AppRockskyActorDefs.CompatibilityViewBasic + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getActorLovedSongs.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getActorLovedSongs.ts index b77438ca..8a1a75e9 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getActorLovedSongs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getActorLovedSongs.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "../song/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from '../song/defs' export interface QueryParams { /** The DID or handle of the actor */ - did: string; + did: string /** The maximum number of albums to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - tracks?: AppRockskySongDefs.SongViewBasic[]; - [k: string]: unknown; + tracks?: AppRockskySongDefs.SongViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getActorNeighbours.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getActorNeighbours.ts index a3e054f8..89ee7ae4 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getActorNeighbours.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getActorNeighbours.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyActorDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyActorDefs from './defs' export interface QueryParams { /** The DID or handle of the actor */ - did: string; + did: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - neighbours?: AppRockskyActorDefs.NeighbourViewBasic[]; - [k: string]: unknown; + neighbours?: AppRockskyActorDefs.NeighbourViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getActorPlaylists.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getActorPlaylists.ts index 4f3edadc..ceb752ec 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getActorPlaylists.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getActorPlaylists.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyPlaylistDefs from "../playlist/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyPlaylistDefs from '../playlist/defs' export interface QueryParams { /** The DID or handle of the actor */ - did: string; + did: string /** The maximum number of albums to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - playlists?: AppRockskyPlaylistDefs.PlaylistViewBasic[]; - [k: string]: unknown; + playlists?: AppRockskyPlaylistDefs.PlaylistViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getActorScrobbles.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getActorScrobbles.ts index 2fcf11a8..06dc2bba 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getActorScrobbles.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getActorScrobbles.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyScrobbleDefs from "../scrobble/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyScrobbleDefs from '../scrobble/defs' export interface QueryParams { /** The DID or handle of the actor */ - did: string; + did: string /** The maximum number of albums to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - scrobbles?: AppRockskyScrobbleDefs.ScrobbleViewBasic[]; - [k: string]: unknown; + scrobbles?: AppRockskyScrobbleDefs.ScrobbleViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getActorSongs.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getActorSongs.ts index c74d2026..21d5bf26 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getActorSongs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getActorSongs.ts @@ -1,56 +1,56 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "../song/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from '../song/defs' export interface QueryParams { /** The DID or handle of the actor */ - did: string; + did: string /** The maximum number of albums to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number /** The start date to filter albums from (ISO 8601 format) */ - startDate?: string; + startDate?: string /** The end date to filter albums to (ISO 8601 format) */ - endDate?: string; + endDate?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - songs?: AppRockskySongDefs.SongViewBasic[]; - [k: string]: unknown; + songs?: AppRockskySongDefs.SongViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/actor/getProfile.ts b/apps/api/src/lexicon/types/app/rocksky/actor/getProfile.ts index ed78b3d2..ae11ca31 100644 --- a/apps/api/src/lexicon/types/app/rocksky/actor/getProfile.ts +++ b/apps/api/src/lexicon/types/app/rocksky/actor/getProfile.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyActorDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyActorDefs from './defs' export interface QueryParams { /** The DID or handle of the actor */ - did?: string; + did?: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyActorDefs.ProfileViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyActorDefs.ProfileViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/album.ts b/apps/api/src/lexicon/types/app/rocksky/album.ts index 164682be..7b8cefcd 100644 --- a/apps/api/src/lexicon/types/app/rocksky/album.ts +++ b/apps/api/src/lexicon/types/app/rocksky/album.ts @@ -1,51 +1,51 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' export interface Record { /** The title of the album. */ - title: string; + title: string /** The artist of the album. */ - artist: string; + artist: string /** The duration of the album in seconds. */ - duration?: number; + duration?: number /** The release date of the album. */ - releaseDate?: string; + releaseDate?: string /** The year the album was released. */ - year?: number; + year?: number /** The genre of the album. */ - genre?: string; + genre?: string /** The album art of the album. */ - albumArt?: BlobRef; + albumArt?: BlobRef /** The URL of the album art of the album. */ - albumArtUrl?: string; + albumArtUrl?: string /** The tags of the album. */ - tags?: string[]; + tags?: string[] /** The YouTube link of the album. */ - youtubeLink?: string; + youtubeLink?: string /** The Spotify link of the album. */ - spotifyLink?: string; + spotifyLink?: string /** The tidal link of the album. */ - tidalLink?: string; + tidalLink?: string /** The Apple Music link of the album. */ - appleMusicLink?: string; + appleMusicLink?: string /** The date and time when the album was created. */ - createdAt: string; - [k: string]: unknown; + createdAt: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.album#main" || v.$type === "app.rocksky.album") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.album#main' || v.$type === 'app.rocksky.album') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.album#main", v); + return lexicons.validate('app.rocksky.album#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/album/defs.ts b/apps/api/src/lexicon/types/app/rocksky/album/defs.ts index f94a403d..2afbdf5c 100644 --- a/apps/api/src/lexicon/types/app/rocksky/album/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/album/defs.ts @@ -1,86 +1,86 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppRockskySongDefsSongViewBasic from "../song/defs/songViewBasic"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type * as AppRockskySongDefsSongViewBasic from '../song/defs/songViewBasic' export interface AlbumViewBasic { /** The unique identifier of the album. */ - id?: string; + id?: string /** The URI of the album. */ - uri?: string; + uri?: string /** The title of the album. */ - title?: string; + title?: string /** The artist of the album. */ - artist?: string; + artist?: string /** The URI of the album's artist. */ - artistUri?: string; + artistUri?: string /** The year the album was released. */ - year?: number; + year?: number /** The URL of the album art image. */ - albumArt?: string; + albumArt?: string /** The release date of the album. */ - releaseDate?: string; + releaseDate?: string /** The SHA256 hash of the album. */ - sha256?: string; + sha256?: string /** The number of times the album has been played. */ - playCount?: number; + playCount?: number /** The number of unique listeners who have played the album. */ - uniqueListeners?: number; - [k: string]: unknown; + uniqueListeners?: number + [k: string]: unknown } export function isAlbumViewBasic(v: unknown): v is AlbumViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.album.defs#albumViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.album.defs#albumViewBasic' + ) } export function validateAlbumViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.album.defs#albumViewBasic", v); + return lexicons.validate('app.rocksky.album.defs#albumViewBasic', v) } export interface AlbumViewDetailed { /** The unique identifier of the album. */ - id?: string; + id?: string /** The URI of the album. */ - uri?: string; + uri?: string /** The title of the album. */ - title?: string; + title?: string /** The artist of the album. */ - artist?: string; + artist?: string /** The URI of the album's artist. */ - artistUri?: string; + artistUri?: string /** The year the album was released. */ - year?: number; + year?: number /** The URL of the album art image. */ - albumArt?: string; + albumArt?: string /** The release date of the album. */ - releaseDate?: string; + releaseDate?: string /** The SHA256 hash of the album. */ - sha256?: string; + sha256?: string /** The number of times the album has been played. */ - playCount?: number; + playCount?: number /** The number of unique listeners who have played the album. */ - uniqueListeners?: number; - tags?: string[]; - tracks?: AppRockskySongDefsSongViewBasic.Main[]; - [k: string]: unknown; + uniqueListeners?: number + tags?: string[] + tracks?: AppRockskySongDefsSongViewBasic.Main[] + [k: string]: unknown } export function isAlbumViewDetailed(v: unknown): v is AlbumViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.album.defs#albumViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.album.defs#albumViewDetailed' + ) } export function validateAlbumViewDetailed(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.album.defs#albumViewDetailed", v); + return lexicons.validate('app.rocksky.album.defs#albumViewDetailed', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/album/getAlbum.ts b/apps/api/src/lexicon/types/app/rocksky/album/getAlbum.ts index 0b1c2f51..2767a0ca 100644 --- a/apps/api/src/lexicon/types/app/rocksky/album/getAlbum.ts +++ b/apps/api/src/lexicon/types/app/rocksky/album/getAlbum.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyAlbumDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyAlbumDefs from './defs' export interface QueryParams { /** The URI of the album to retrieve. */ - uri: string; + uri: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyAlbumDefs.AlbumViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyAlbumDefs.AlbumViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/album/getAlbumTracks.ts b/apps/api/src/lexicon/types/app/rocksky/album/getAlbumTracks.ts index c23ccd50..3ca7b5be 100644 --- a/apps/api/src/lexicon/types/app/rocksky/album/getAlbumTracks.ts +++ b/apps/api/src/lexicon/types/app/rocksky/album/getAlbumTracks.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "../song/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from '../song/defs' export interface QueryParams { /** The URI of the album to retrieve tracks from */ - uri: string; + uri: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - tracks?: AppRockskySongDefs.SongViewBasic[]; - [k: string]: unknown; + tracks?: AppRockskySongDefs.SongViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/album/getAlbums.ts b/apps/api/src/lexicon/types/app/rocksky/album/getAlbums.ts index d64cacb1..eafc429a 100644 --- a/apps/api/src/lexicon/types/app/rocksky/album/getAlbums.ts +++ b/apps/api/src/lexicon/types/app/rocksky/album/getAlbums.ts @@ -1,50 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyAlbumDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyAlbumDefs from './defs' export interface QueryParams { /** The maximum number of albums to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number + /** The genre to filter artists by */ + genre?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - albums?: AppRockskyAlbumDefs.AlbumViewBasic[]; - [k: string]: unknown; + albums?: AppRockskyAlbumDefs.AlbumViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/apikey/createApikey.ts b/apps/api/src/lexicon/types/app/rocksky/apikey/createApikey.ts index 5e12653e..092bd944 100644 --- a/apps/api/src/lexicon/types/app/rocksky/apikey/createApikey.ts +++ b/apps/api/src/lexicon/types/app/rocksky/apikey/createApikey.ts @@ -1,51 +1,51 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyApikeyDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyApikeyDefs from './defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The name of the API key. */ - name: string; + name: string /** A description for the API key. */ - description?: string; - [k: string]: unknown; + description?: string + [k: string]: unknown } -export type OutputSchema = AppRockskyApikeyDefs.ApiKey; +export type OutputSchema = AppRockskyApikeyDefs.ApiKey export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/apikey/defs.ts b/apps/api/src/lexicon/types/app/rocksky/apikey/defs.ts index 2ffbe945..c936aa24 100644 --- a/apps/api/src/lexicon/types/app/rocksky/apikey/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/apikey/defs.ts @@ -1,31 +1,31 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface ApiKeyView { /** The unique identifier of the API key. */ - id?: string; + id?: string /** The name of the API key. */ - name?: string; + name?: string /** A description for the API key. */ - description?: string; + description?: string /** The date and time when the API key was created. */ - createdAt?: string; - [k: string]: unknown; + createdAt?: string + [k: string]: unknown } export function isApiKeyView(v: unknown): v is ApiKeyView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.apikey.defs#apiKeyView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.apikey.defs#apiKeyView' + ) } export function validateApiKeyView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.apikey.defs#apiKeyView", v); + return lexicons.validate('app.rocksky.apikey.defs#apiKeyView', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/apikey/getApikeys.ts b/apps/api/src/lexicon/types/app/rocksky/apikey/getApikeys.ts index dd82a755..b71be12d 100644 --- a/apps/api/src/lexicon/types/app/rocksky/apikey/getApikeys.ts +++ b/apps/api/src/lexicon/types/app/rocksky/apikey/getApikeys.ts @@ -1,50 +1,50 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyApikeyDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyApikeyDefs from './defs' export interface QueryParams { /** The number of API keys to skip before starting to collect the result set. */ - offset?: number; + offset?: number /** The number of API keys to return per page. */ - limit?: number; + limit?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - apiKeys?: AppRockskyApikeyDefs.ApikeyView[]; - [k: string]: unknown; + apiKeys?: AppRockskyApikeyDefs.ApikeyView[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/apikey/removeApikey.ts b/apps/api/src/lexicon/types/app/rocksky/apikey/removeApikey.ts index f84c6257..d07978ba 100644 --- a/apps/api/src/lexicon/types/app/rocksky/apikey/removeApikey.ts +++ b/apps/api/src/lexicon/types/app/rocksky/apikey/removeApikey.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyApikeyDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyApikeyDefs from './defs' export interface QueryParams { /** The ID of the API key to remove. */ - id: string; + id: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyApikeyDefs.ApiKey; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyApikeyDefs.ApiKey +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/apikey/updateApikey.ts b/apps/api/src/lexicon/types/app/rocksky/apikey/updateApikey.ts index 639a3d05..711e03fc 100644 --- a/apps/api/src/lexicon/types/app/rocksky/apikey/updateApikey.ts +++ b/apps/api/src/lexicon/types/app/rocksky/apikey/updateApikey.ts @@ -1,53 +1,53 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyApikeyDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyApikeyDefs from './defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The ID of the API key to update. */ - id: string; + id: string /** The new name of the API key. */ - name: string; + name: string /** A new description for the API key. */ - description?: string; - [k: string]: unknown; + description?: string + [k: string]: unknown } -export type OutputSchema = AppRockskyApikeyDefs.ApiKey; +export type OutputSchema = AppRockskyApikeyDefs.ApiKey export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/apikeys/defs.ts b/apps/api/src/lexicon/types/app/rocksky/apikeys/defs.ts index 4c2e0c7e..3943ee36 100644 --- a/apps/api/src/lexicon/types/app/rocksky/apikeys/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/apikeys/defs.ts @@ -1,7 +1,7 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' diff --git a/apps/api/src/lexicon/types/app/rocksky/artist.ts b/apps/api/src/lexicon/types/app/rocksky/artist.ts index dcec30c5..bc2d00b2 100644 --- a/apps/api/src/lexicon/types/app/rocksky/artist.ts +++ b/apps/api/src/lexicon/types/app/rocksky/artist.ts @@ -1,41 +1,41 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' export interface Record { /** The name of the artist. */ - name: string; + name: string /** The biography of the artist. */ - bio?: string; + bio?: string /** The picture of the artist. */ - picture?: BlobRef; + picture?: BlobRef /** The URL of the picture of the artist. */ - pictureUrl?: string; + pictureUrl?: string /** The tags of the artist. */ - tags?: string[]; + tags?: string[] /** The birth date of the artist. */ - born?: string; + born?: string /** The death date of the artist. */ - died?: string; + died?: string /** The birth place of the artist. */ - bornIn?: string; + bornIn?: string /** The date when the artist was created. */ - createdAt: string; - [k: string]: unknown; + createdAt: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.artist#main" || v.$type === "app.rocksky.artist") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.artist#main' || v.$type === 'app.rocksky.artist') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.artist#main", v); + return lexicons.validate('app.rocksky.artist#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/artist/defs.ts b/apps/api/src/lexicon/types/app/rocksky/artist/defs.ts index 48b1a204..22d0d47c 100644 --- a/apps/api/src/lexicon/types/app/rocksky/artist/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/artist/defs.ts @@ -1,142 +1,142 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface ArtistViewBasic { /** The unique identifier of the artist. */ - id?: string; + id?: string /** The URI of the artist. */ - uri?: string; + uri?: string /** The name of the artist. */ - name?: string; + name?: string /** The picture of the artist. */ - picture?: string; + picture?: string /** The SHA256 hash of the artist. */ - sha256?: string; + sha256?: string /** The number of times the artist has been played. */ - playCount?: number; + playCount?: number /** The number of unique listeners who have played the artist. */ - uniqueListeners?: number; - tags?: string[]; - [k: string]: unknown; + uniqueListeners?: number + tags?: string[] + [k: string]: unknown } export function isArtistViewBasic(v: unknown): v is ArtistViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.artist.defs#artistViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.artist.defs#artistViewBasic' + ) } export function validateArtistViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.artist.defs#artistViewBasic", v); + return lexicons.validate('app.rocksky.artist.defs#artistViewBasic', v) } export interface ArtistViewDetailed { /** The unique identifier of the artist. */ - id?: string; + id?: string /** The URI of the artist. */ - uri?: string; + uri?: string /** The name of the artist. */ - name?: string; + name?: string /** The picture of the artist. */ - picture?: string; + picture?: string /** The SHA256 hash of the artist. */ - sha256?: string; + sha256?: string /** The number of times the artist has been played. */ - playCount?: number; + playCount?: number /** The number of unique listeners who have played the artist. */ - uniqueListeners?: number; - tags?: string[]; - [k: string]: unknown; + uniqueListeners?: number + tags?: string[] + [k: string]: unknown } export function isArtistViewDetailed(v: unknown): v is ArtistViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.artist.defs#artistViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.artist.defs#artistViewDetailed' + ) } export function validateArtistViewDetailed(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.artist.defs#artistViewDetailed", v); + return lexicons.validate('app.rocksky.artist.defs#artistViewDetailed', v) } export interface SongViewBasic { /** The URI of the song. */ - uri?: string; + uri?: string /** The title of the song. */ - title?: string; + title?: string /** The number of times the song has been played. */ - playCount?: number; - [k: string]: unknown; + playCount?: number + [k: string]: unknown } export function isSongViewBasic(v: unknown): v is SongViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.artist.defs#songViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.artist.defs#songViewBasic' + ) } export function validateSongViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.artist.defs#songViewBasic", v); + return lexicons.validate('app.rocksky.artist.defs#songViewBasic', v) } export interface ListenerViewBasic { /** The unique identifier of the actor. */ - id?: string; + id?: string /** The DID of the listener. */ - did?: string; + did?: string /** The handle of the listener. */ - handle?: string; + handle?: string /** The display name of the listener. */ - displayName?: string; + displayName?: string /** The URL of the listener's avatar image. */ - avatar?: string; - mostListenedSong?: SongViewBasic; + avatar?: string + mostListenedSong?: SongViewBasic /** The total number of plays by the listener. */ - totalPlays?: number; + totalPlays?: number /** The rank of the listener among all listeners of the artist. */ - rank?: number; - [k: string]: unknown; + rank?: number + [k: string]: unknown } export function isListenerViewBasic(v: unknown): v is ListenerViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.artist.defs#listenerViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.artist.defs#listenerViewBasic' + ) } export function validateListenerViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.artist.defs#listenerViewBasic", v); + return lexicons.validate('app.rocksky.artist.defs#listenerViewBasic', v) } export interface ArtistMbid { /** The MusicBrainz Identifier (MBID) of the artist. */ - mbid?: string; + mbid?: string /** The name of the artist. */ - name?: string; - [k: string]: unknown; + name?: string + [k: string]: unknown } export function isArtistMbid(v: unknown): v is ArtistMbid { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.artist.defs#artistMbid" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.artist.defs#artistMbid' + ) } export function validateArtistMbid(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.artist.defs#artistMbid", v); + return lexicons.validate('app.rocksky.artist.defs#artistMbid', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/artist/getArtist.ts b/apps/api/src/lexicon/types/app/rocksky/artist/getArtist.ts index 2c46caa1..2a91839b 100644 --- a/apps/api/src/lexicon/types/app/rocksky/artist/getArtist.ts +++ b/apps/api/src/lexicon/types/app/rocksky/artist/getArtist.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyArtistDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyArtistDefs from './defs' export interface QueryParams { /** The URI of the artist to retrieve details from */ - uri: string; + uri: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyArtistDefs.ArtistViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyArtistDefs.ArtistViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/artist/getArtistAlbums.ts b/apps/api/src/lexicon/types/app/rocksky/artist/getArtistAlbums.ts index 6030c2b3..f22cdeb6 100644 --- a/apps/api/src/lexicon/types/app/rocksky/artist/getArtistAlbums.ts +++ b/apps/api/src/lexicon/types/app/rocksky/artist/getArtistAlbums.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyAlbumDefs from "../album/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyAlbumDefs from '../album/defs' export interface QueryParams { /** The URI of the artist to retrieve albums from */ - uri: string; + uri: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - albums?: AppRockskyAlbumDefs.AlbumViewBasic[]; - [k: string]: unknown; + albums?: AppRockskyAlbumDefs.AlbumViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/artist/getArtistListeners.ts b/apps/api/src/lexicon/types/app/rocksky/artist/getArtistListeners.ts index 5a652de5..d2a3323c 100644 --- a/apps/api/src/lexicon/types/app/rocksky/artist/getArtistListeners.ts +++ b/apps/api/src/lexicon/types/app/rocksky/artist/getArtistListeners.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyArtistDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyArtistDefs from './defs' export interface QueryParams { /** The URI of the artist to retrieve listeners from */ - uri: string; + uri: string /** Number of items to skip before returning results */ - offset?: number; + offset?: number /** Maximum number of results to return */ - limit?: number; + limit?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - listeners?: AppRockskyArtistDefs.ListenerViewBasic[]; - [k: string]: unknown; + listeners?: AppRockskyArtistDefs.ListenerViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/artist/getArtistTracks.ts b/apps/api/src/lexicon/types/app/rocksky/artist/getArtistTracks.ts index 11e30249..72cc5240 100644 --- a/apps/api/src/lexicon/types/app/rocksky/artist/getArtistTracks.ts +++ b/apps/api/src/lexicon/types/app/rocksky/artist/getArtistTracks.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "../song/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from '../song/defs' export interface QueryParams { /** The URI of the artist to retrieve albums from */ - uri?: string; + uri?: string /** The maximum number of tracks to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - tracks?: AppRockskySongDefs.SongViewBasic[]; - [k: string]: unknown; + tracks?: AppRockskySongDefs.SongViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/artist/getArtists.ts b/apps/api/src/lexicon/types/app/rocksky/artist/getArtists.ts index 65fc5e9f..d462c460 100644 --- a/apps/api/src/lexicon/types/app/rocksky/artist/getArtists.ts +++ b/apps/api/src/lexicon/types/app/rocksky/artist/getArtists.ts @@ -1,52 +1,54 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyArtistDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyArtistDefs from './defs' export interface QueryParams { /** The maximum number of artists to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number /** The names of the artists to return */ - names?: string; + names?: string + /** The genre to filter artists by */ + genre?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - artists?: AppRockskyArtistDefs.ArtistViewBasic[]; - [k: string]: unknown; + artists?: AppRockskyArtistDefs.ArtistViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/charts/defs.ts b/apps/api/src/lexicon/types/app/rocksky/charts/defs.ts index 7e671a00..5ea76189 100644 --- a/apps/api/src/lexicon/types/app/rocksky/charts/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/charts/defs.ts @@ -1,44 +1,44 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface ChartsView { - scrobbles?: ScrobbleViewBasic[]; - [k: string]: unknown; + scrobbles?: ScrobbleViewBasic[] + [k: string]: unknown } export function isChartsView(v: unknown): v is ChartsView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.charts.defs#chartsView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.charts.defs#chartsView' + ) } export function validateChartsView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.charts.defs#chartsView", v); + return lexicons.validate('app.rocksky.charts.defs#chartsView', v) } export interface ScrobbleViewBasic { /** The date of the scrobble. */ - date?: string; + date?: string /** The number of scrobbles on this date. */ - count?: number; - [k: string]: unknown; + count?: number + [k: string]: unknown } export function isScrobbleViewBasic(v: unknown): v is ScrobbleViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.charts.defs#scrobbleViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.charts.defs#scrobbleViewBasic' + ) } export function validateScrobbleViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.charts.defs#scrobbleViewBasic", v); + return lexicons.validate('app.rocksky.charts.defs#scrobbleViewBasic', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/charts/getScrobblesChart.ts b/apps/api/src/lexicon/types/app/rocksky/charts/getScrobblesChart.ts index bf91da35..9eaf424d 100644 --- a/apps/api/src/lexicon/types/app/rocksky/charts/getScrobblesChart.ts +++ b/apps/api/src/lexicon/types/app/rocksky/charts/getScrobblesChart.ts @@ -1,49 +1,49 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyChartsDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyChartsDefs from './defs' export interface QueryParams { /** The DID or handle of the actor */ - did?: string; + did?: string /** The URI of the artist to filter by */ - artisturi?: string; + artisturi?: string /** The URI of the album to filter by */ - albumuri?: string; + albumuri?: string /** The URI of the track to filter by */ - songuri?: string; + songuri?: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyChartsDefs.ChartsView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyChartsDefs.ChartsView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/dropbox/defs.ts b/apps/api/src/lexicon/types/app/rocksky/dropbox/defs.ts index 222ebf1d..e4073a6a 100644 --- a/apps/api/src/lexicon/types/app/rocksky/dropbox/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/dropbox/defs.ts @@ -1,71 +1,71 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface FileView { /** The unique identifier of the file. */ - id?: string; + id?: string /** The name of the file. */ - name?: string; + name?: string /** The lowercased path of the file. */ - pathLower?: string; + pathLower?: string /** The display path of the file. */ - pathDisplay?: string; + pathDisplay?: string /** The last modified date and time of the file on the client. */ - clientModified?: string; + clientModified?: string /** The last modified date and time of the file on the server. */ - serverModified?: string; - [k: string]: unknown; + serverModified?: string + [k: string]: unknown } export function isFileView(v: unknown): v is FileView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.dropbox.defs#fileView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.dropbox.defs#fileView' + ) } export function validateFileView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.dropbox.defs#fileView", v); + return lexicons.validate('app.rocksky.dropbox.defs#fileView', v) } export interface FileListView { /** A list of files in the Dropbox. */ - files?: FileView[]; - [k: string]: unknown; + files?: FileView[] + [k: string]: unknown } export function isFileListView(v: unknown): v is FileListView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.dropbox.defs#fileListView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.dropbox.defs#fileListView' + ) } export function validateFileListView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.dropbox.defs#fileListView", v); + return lexicons.validate('app.rocksky.dropbox.defs#fileListView', v) } export interface TemporaryLinkView { /** The temporary link to access the file. */ - link?: string; - [k: string]: unknown; + link?: string + [k: string]: unknown } export function isTemporaryLinkView(v: unknown): v is TemporaryLinkView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.dropbox.defs#temporaryLinkView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.dropbox.defs#temporaryLinkView' + ) } export function validateTemporaryLinkView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.dropbox.defs#temporaryLinkView", v); + return lexicons.validate('app.rocksky.dropbox.defs#temporaryLinkView', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/dropbox/downloadFile.ts b/apps/api/src/lexicon/types/app/rocksky/dropbox/downloadFile.ts index 4f2023cd..8a22d8ab 100644 --- a/apps/api/src/lexicon/types/app/rocksky/dropbox/downloadFile.ts +++ b/apps/api/src/lexicon/types/app/rocksky/dropbox/downloadFile.ts @@ -1,42 +1,42 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import type stream from "stream"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import type stream from 'stream' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The unique identifier of the file to download */ - fileId: string; + fileId: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/octet-stream"; - body: Uint8Array | stream.Readable; - headers?: { [key: string]: string }; + encoding: 'application/octet-stream' + body: Uint8Array | stream.Readable + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/dropbox/getFiles.ts b/apps/api/src/lexicon/types/app/rocksky/dropbox/getFiles.ts index b6e92e56..15991594 100644 --- a/apps/api/src/lexicon/types/app/rocksky/dropbox/getFiles.ts +++ b/apps/api/src/lexicon/types/app/rocksky/dropbox/getFiles.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyDropboxDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyDropboxDefs from './defs' export interface QueryParams { /** Path to the Dropbox folder or root directory */ - at?: string; + at?: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyDropboxDefs.FileListView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyDropboxDefs.FileListView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/dropbox/getMetadata.ts b/apps/api/src/lexicon/types/app/rocksky/dropbox/getMetadata.ts index ea57a3da..178eecb9 100644 --- a/apps/api/src/lexicon/types/app/rocksky/dropbox/getMetadata.ts +++ b/apps/api/src/lexicon/types/app/rocksky/dropbox/getMetadata.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyDropboxDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyDropboxDefs from './defs' export interface QueryParams { /** Path to the file or folder in Dropbox */ - path: string; + path: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyDropboxDefs.FileView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyDropboxDefs.FileView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/dropbox/getTemporaryLink.ts b/apps/api/src/lexicon/types/app/rocksky/dropbox/getTemporaryLink.ts index 710abd88..47344292 100644 --- a/apps/api/src/lexicon/types/app/rocksky/dropbox/getTemporaryLink.ts +++ b/apps/api/src/lexicon/types/app/rocksky/dropbox/getTemporaryLink.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyDropboxDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyDropboxDefs from './defs' export interface QueryParams { /** Path to the file in Dropbox */ - path: string; + path: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyDropboxDefs.TemporaryLinkView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyDropboxDefs.TemporaryLinkView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/defs.ts b/apps/api/src/lexicon/types/app/rocksky/feed/defs.ts index 0175cec1..48131429 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/defs.ts @@ -1,16 +1,16 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppRockskySongDefs from "../song/defs"; -import type * as AppRockskyAlbumDefs from "../album/defs"; -import type * as AppRockskyArtistDefs from "../artist/defs"; -import type * as AppRockskyPlaylistDefs from "../playlist/defs"; -import type * as AppRockskyActorDefs from "../actor/defs"; -import type * as AppRockskyScrobbleDefs from "../scrobble/defs"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type * as AppRockskySongDefs from '../song/defs' +import type * as AppRockskyAlbumDefs from '../album/defs' +import type * as AppRockskyArtistDefs from '../artist/defs' +import type * as AppRockskyPlaylistDefs from '../playlist/defs' +import type * as AppRockskyActorDefs from '../actor/defs' +import type * as AppRockskyScrobbleDefs from '../scrobble/defs' export interface SearchResultsView { hits?: ( @@ -20,163 +20,163 @@ export interface SearchResultsView { | AppRockskyPlaylistDefs.PlaylistViewBasic | AppRockskyActorDefs.ProfileViewBasic | { $type: string; [k: string]: unknown } - )[]; - processingTimeMs?: number; - limit?: number; - offset?: number; - estimatedTotalHits?: number; - [k: string]: unknown; + )[] + processingTimeMs?: number + limit?: number + offset?: number + estimatedTotalHits?: number + [k: string]: unknown } export function isSearchResultsView(v: unknown): v is SearchResultsView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.feed.defs#searchResultsView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.feed.defs#searchResultsView' + ) } export function validateSearchResultsView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.defs#searchResultsView", v); + return lexicons.validate('app.rocksky.feed.defs#searchResultsView', v) } export interface NowPlayingView { - album?: string; - albumArt?: string; - albumArtist?: string; - albumUri?: string; - artist?: string; - artistUri?: string; - avatar?: string; - createdAt?: string; - did?: string; - handle?: string; - id?: string; - title?: string; - trackId?: string; - trackUri?: string; - uri?: string; - [k: string]: unknown; + album?: string + albumArt?: string + albumArtist?: string + albumUri?: string + artist?: string + artistUri?: string + avatar?: string + createdAt?: string + did?: string + handle?: string + id?: string + title?: string + trackId?: string + trackUri?: string + uri?: string + [k: string]: unknown } export function isNowPlayingView(v: unknown): v is NowPlayingView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.feed.defs#nowPlayingView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.feed.defs#nowPlayingView' + ) } export function validateNowPlayingView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.defs#nowPlayingView", v); + return lexicons.validate('app.rocksky.feed.defs#nowPlayingView', v) } export interface NowPlayingsView { - nowPlayings?: NowPlayingView[]; - [k: string]: unknown; + nowPlayings?: NowPlayingView[] + [k: string]: unknown } export function isNowPlayingsView(v: unknown): v is NowPlayingsView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.feed.defs#nowPlayingsView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.feed.defs#nowPlayingsView' + ) } export function validateNowPlayingsView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.defs#nowPlayingsView", v); + return lexicons.validate('app.rocksky.feed.defs#nowPlayingsView', v) } export interface FeedGeneratorsView { - feeds?: FeedGeneratorView[]; - [k: string]: unknown; + feeds?: FeedGeneratorView[] + [k: string]: unknown } export function isFeedGeneratorsView(v: unknown): v is FeedGeneratorsView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.feed.defs#feedGeneratorsView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.feed.defs#feedGeneratorsView' + ) } export function validateFeedGeneratorsView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.defs#feedGeneratorsView", v); + return lexicons.validate('app.rocksky.feed.defs#feedGeneratorsView', v) } export interface FeedGeneratorView { - id?: string; - name?: string; - description?: string; - uri?: string; - avatar?: string; - creator?: AppRockskyActorDefs.ProfileViewBasic; - [k: string]: unknown; + id?: string + name?: string + description?: string + uri?: string + avatar?: string + creator?: AppRockskyActorDefs.ProfileViewBasic + [k: string]: unknown } export function isFeedGeneratorView(v: unknown): v is FeedGeneratorView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.feed.defs#feedGeneratorView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.feed.defs#feedGeneratorView' + ) } export function validateFeedGeneratorView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.defs#feedGeneratorView", v); + return lexicons.validate('app.rocksky.feed.defs#feedGeneratorView', v) } export interface FeedUriView { /** The feed URI. */ - uri?: string; - [k: string]: unknown; + uri?: string + [k: string]: unknown } export function isFeedUriView(v: unknown): v is FeedUriView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.feed.defs#feedUriView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.feed.defs#feedUriView' + ) } export function validateFeedUriView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.defs#feedUriView", v); + return lexicons.validate('app.rocksky.feed.defs#feedUriView', v) } export interface FeedItemView { - scrobble?: AppRockskyScrobbleDefs.ScrobbleViewBasic; - [k: string]: unknown; + scrobble?: AppRockskyScrobbleDefs.ScrobbleViewBasic + [k: string]: unknown } export function isFeedItemView(v: unknown): v is FeedItemView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.feed.defs#feedItemView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.feed.defs#feedItemView' + ) } export function validateFeedItemView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.defs#feedItemView", v); + return lexicons.validate('app.rocksky.feed.defs#feedItemView', v) } export interface FeedView { - feed?: FeedItemView[]; + feed?: FeedItemView[] /** The pagination cursor for the next set of results. */ - cursor?: string; - [k: string]: unknown; + cursor?: string + [k: string]: unknown } export function isFeedView(v: unknown): v is FeedView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.feed.defs#feedView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.feed.defs#feedView' + ) } export function validateFeedView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.defs#feedView", v); + return lexicons.validate('app.rocksky.feed.defs#feedView', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/describeFeedGenerator.ts b/apps/api/src/lexicon/types/app/rocksky/feed/describeFeedGenerator.ts index be17fd31..a3eda3ba 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/describeFeedGenerator.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/describeFeedGenerator.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyFeedDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyFeedDefs from './defs' -export type QueryParams = {}; +export type QueryParams = {} -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { /** The DID of the feed generator. */ - did?: string; + did?: string /** List of feed URIs generated by this feed generator. */ - feeds?: AppRockskyFeedDefs.FeedUriView[]; - [k: string]: unknown; + feeds?: AppRockskyFeedDefs.FeedUriView[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/generator.ts b/apps/api/src/lexicon/types/app/rocksky/feed/generator.ts index fd3505d3..e591ff53 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/generator.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/generator.ts @@ -1,29 +1,29 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface Record { - did: string; - avatar?: BlobRef; - displayName: string; - description?: string; - createdAt: string; - [k: string]: unknown; + did: string + avatar?: BlobRef + displayName: string + description?: string + createdAt: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.feed.generator#main" || - v.$type === "app.rocksky.feed.generator") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.feed.generator#main' || + v.$type === 'app.rocksky.feed.generator') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.feed.generator#main", v); + return lexicons.validate('app.rocksky.feed.generator#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/getFeed.ts b/apps/api/src/lexicon/types/app/rocksky/feed/getFeed.ts index 39b472de..3336b867 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/getFeed.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/getFeed.ts @@ -1,47 +1,47 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyFeedDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyFeedDefs from './defs' export interface QueryParams { /** The feed URI. */ - feed: string; + feed: string /** The maximum number of scrobbles to return */ - limit?: number; + limit?: number /** The cursor for pagination */ - cursor?: string; + cursor?: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyFeedDefs.FeedView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyFeedDefs.FeedView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/getFeedGenerator.ts b/apps/api/src/lexicon/types/app/rocksky/feed/getFeedGenerator.ts index f389986c..a071b9f1 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/getFeedGenerator.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/getFeedGenerator.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyFeedDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyFeedDefs from './defs' export interface QueryParams { /** AT-URI of the feed generator record. */ - feed: string; + feed: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - view?: AppRockskyFeedDefs.FeedGeneratorView; - [k: string]: unknown; + view?: AppRockskyFeedDefs.FeedGeneratorView + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/getFeedGenerators.ts b/apps/api/src/lexicon/types/app/rocksky/feed/getFeedGenerators.ts index bf457916..01de3b7e 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/getFeedGenerators.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/getFeedGenerators.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyFeedDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyFeedDefs from './defs' export interface QueryParams { /** The maximum number of feed generators to return. */ - size?: number; + size?: number } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyFeedDefs.FeedGeneratorsView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyFeedDefs.FeedGeneratorsView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/getFeedSkeleton.ts b/apps/api/src/lexicon/types/app/rocksky/feed/getFeedSkeleton.ts index 8307cfa8..9d2c00b6 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/getFeedSkeleton.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/getFeedSkeleton.ts @@ -1,56 +1,56 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyScrobbleDefs from "../scrobble/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyScrobbleDefs from '../scrobble/defs' export interface QueryParams { /** The feed URI. */ - feed: string; + feed: string /** The maximum number of scrobbles to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number /** The pagination cursor. */ - cursor?: string; + cursor?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - scrobbles?: AppRockskyScrobbleDefs.ScrobbleViewBasic[]; + scrobbles?: AppRockskyScrobbleDefs.ScrobbleViewBasic[] /** The pagination cursor for the next set of results. */ - cursor?: string; - [k: string]: unknown; + cursor?: string + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/getNowPlayings.ts b/apps/api/src/lexicon/types/app/rocksky/feed/getNowPlayings.ts index dd108561..ece6c2d0 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/getNowPlayings.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/getNowPlayings.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyFeedDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyFeedDefs from './defs' export interface QueryParams { /** The maximum number of now playing tracks to return. */ - size?: number; + size?: number } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyFeedDefs.NowPlayingsView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyFeedDefs.NowPlayingsView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/feed/search.ts b/apps/api/src/lexicon/types/app/rocksky/feed/search.ts index 8cf409fa..802b621a 100644 --- a/apps/api/src/lexicon/types/app/rocksky/feed/search.ts +++ b/apps/api/src/lexicon/types/app/rocksky/feed/search.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyFeedDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyFeedDefs from './defs' export interface QueryParams { /** The search query string */ - query: string; + query: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyFeedDefs.SearchResultsView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyFeedDefs.SearchResultsView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/googledrive/defs.ts b/apps/api/src/lexicon/types/app/rocksky/googledrive/defs.ts index 34777d01..85ad82da 100644 --- a/apps/api/src/lexicon/types/app/rocksky/googledrive/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/googledrive/defs.ts @@ -1,42 +1,42 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface FileView { /** The unique identifier of the file. */ - id?: string; - [k: string]: unknown; + id?: string + [k: string]: unknown } export function isFileView(v: unknown): v is FileView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.googledrive.defs#fileView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.googledrive.defs#fileView' + ) } export function validateFileView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.googledrive.defs#fileView", v); + return lexicons.validate('app.rocksky.googledrive.defs#fileView', v) } export interface FileListView { - files?: FileView[]; - [k: string]: unknown; + files?: FileView[] + [k: string]: unknown } export function isFileListView(v: unknown): v is FileListView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.googledrive.defs#fileListView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.googledrive.defs#fileListView' + ) } export function validateFileListView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.googledrive.defs#fileListView", v); + return lexicons.validate('app.rocksky.googledrive.defs#fileListView', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/googledrive/downloadFile.ts b/apps/api/src/lexicon/types/app/rocksky/googledrive/downloadFile.ts index 4f2023cd..8a22d8ab 100644 --- a/apps/api/src/lexicon/types/app/rocksky/googledrive/downloadFile.ts +++ b/apps/api/src/lexicon/types/app/rocksky/googledrive/downloadFile.ts @@ -1,42 +1,42 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import type stream from "stream"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import type stream from 'stream' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The unique identifier of the file to download */ - fileId: string; + fileId: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/octet-stream"; - body: Uint8Array | stream.Readable; - headers?: { [key: string]: string }; + encoding: 'application/octet-stream' + body: Uint8Array | stream.Readable + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/googledrive/getFile.ts b/apps/api/src/lexicon/types/app/rocksky/googledrive/getFile.ts index f10d3c5e..0f894bd0 100644 --- a/apps/api/src/lexicon/types/app/rocksky/googledrive/getFile.ts +++ b/apps/api/src/lexicon/types/app/rocksky/googledrive/getFile.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyGoogledriveDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyGoogledriveDefs from './defs' export interface QueryParams { /** The unique identifier of the file to retrieve */ - fileId: string; + fileId: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyGoogledriveDefs.FileView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyGoogledriveDefs.FileView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/googledrive/getFiles.ts b/apps/api/src/lexicon/types/app/rocksky/googledrive/getFiles.ts index 0d4b1c64..4c23c2d8 100644 --- a/apps/api/src/lexicon/types/app/rocksky/googledrive/getFiles.ts +++ b/apps/api/src/lexicon/types/app/rocksky/googledrive/getFiles.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyGoogledriveDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyGoogledriveDefs from './defs' export interface QueryParams { /** Path to the Google Drive folder or root directory */ - at?: string; + at?: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyGoogledriveDefs.FileListView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyGoogledriveDefs.FileListView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/graph/defs.ts b/apps/api/src/lexicon/types/app/rocksky/graph/defs.ts index 654ae397..bb534021 100644 --- a/apps/api/src/lexicon/types/app/rocksky/graph/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/graph/defs.ts @@ -1,47 +1,47 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' /** indicates that a handle or DID could not be resolved */ export interface NotFoundActor { - actor: string; - notFound: boolean; - [k: string]: unknown; + actor: string + notFound: boolean + [k: string]: unknown } export function isNotFoundActor(v: unknown): v is NotFoundActor { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.graph.defs#notFoundActor" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.graph.defs#notFoundActor' + ) } export function validateNotFoundActor(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.graph.defs#notFoundActor", v); + return lexicons.validate('app.rocksky.graph.defs#notFoundActor', v) } export interface Relationship { - did: string; + did: string /** if the actor follows this DID, this is the AT-URI of the follow record */ - following?: string; + following?: string /** if the actor is followed by this DID, contains the AT-URI of the follow record */ - followedBy?: string; - [k: string]: unknown; + followedBy?: string + [k: string]: unknown } export function isRelationship(v: unknown): v is Relationship { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.graph.defs#relationship" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.graph.defs#relationship' + ) } export function validateRelationship(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.graph.defs#relationship", v); + return lexicons.validate('app.rocksky.graph.defs#relationship', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/graph/follow.ts b/apps/api/src/lexicon/types/app/rocksky/graph/follow.ts index 8808b783..28d91736 100644 --- a/apps/api/src/lexicon/types/app/rocksky/graph/follow.ts +++ b/apps/api/src/lexicon/types/app/rocksky/graph/follow.ts @@ -1,28 +1,28 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type * as ComAtprotoRepoStrongRef from "../../../com/atproto/repo/strongRef"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type * as ComAtprotoRepoStrongRef from '../../../com/atproto/repo/strongRef' export interface Record { - createdAt: string; - subject: string; - via?: ComAtprotoRepoStrongRef.Main; - [k: string]: unknown; + createdAt: string + subject: string + via?: ComAtprotoRepoStrongRef.Main + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.graph.follow#main" || - v.$type === "app.rocksky.graph.follow") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.graph.follow#main' || + v.$type === 'app.rocksky.graph.follow') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.graph.follow#main", v); + return lexicons.validate('app.rocksky.graph.follow#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/graph/followAccount.ts b/apps/api/src/lexicon/types/app/rocksky/graph/followAccount.ts index 99fc07a3..71421f5d 100644 --- a/apps/api/src/lexicon/types/app/rocksky/graph/followAccount.ts +++ b/apps/api/src/lexicon/types/app/rocksky/graph/followAccount.ts @@ -1,50 +1,50 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyActorDefs from "../actor/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyActorDefs from '../actor/defs' export interface QueryParams { - account: string; + account: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - subject: AppRockskyActorDefs.ProfileViewBasic; - followers: AppRockskyActorDefs.ProfileViewBasic[]; + subject: AppRockskyActorDefs.ProfileViewBasic + followers: AppRockskyActorDefs.ProfileViewBasic[] /** A cursor value to pass to subsequent calls to get the next page of results. */ - cursor?: string; - [k: string]: unknown; + cursor?: string + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/graph/getFollowers.ts b/apps/api/src/lexicon/types/app/rocksky/graph/getFollowers.ts index 173decdf..f3c9762f 100644 --- a/apps/api/src/lexicon/types/app/rocksky/graph/getFollowers.ts +++ b/apps/api/src/lexicon/types/app/rocksky/graph/getFollowers.ts @@ -1,56 +1,56 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyActorDefs from "../actor/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyActorDefs from '../actor/defs' export interface QueryParams { - actor: string; - limit: number; + actor: string + limit: number /** If provided, filters the followers to only include those with DIDs in this list. */ - dids?: string[]; - cursor?: string; + dids?: string[] + cursor?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - subject: AppRockskyActorDefs.ProfileViewBasic; - followers: AppRockskyActorDefs.ProfileViewBasic[]; + subject: AppRockskyActorDefs.ProfileViewBasic + followers: AppRockskyActorDefs.ProfileViewBasic[] /** A cursor value to pass to subsequent calls to get the next page of results. */ - cursor?: string; + cursor?: string /** The total number of followers. */ - count?: number; - [k: string]: unknown; + count?: number + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/graph/getFollows.ts b/apps/api/src/lexicon/types/app/rocksky/graph/getFollows.ts index 42bcdc86..46d3801d 100644 --- a/apps/api/src/lexicon/types/app/rocksky/graph/getFollows.ts +++ b/apps/api/src/lexicon/types/app/rocksky/graph/getFollows.ts @@ -1,56 +1,56 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyActorDefs from "../actor/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyActorDefs from '../actor/defs' export interface QueryParams { - actor: string; - limit: number; + actor: string + limit: number /** If provided, filters the follows to only include those with DIDs in this list. */ - dids?: string[]; - cursor?: string; + dids?: string[] + cursor?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - subject: AppRockskyActorDefs.ProfileViewBasic; - follows: AppRockskyActorDefs.ProfileViewBasic[]; + subject: AppRockskyActorDefs.ProfileViewBasic + follows: AppRockskyActorDefs.ProfileViewBasic[] /** A cursor value to pass to subsequent calls to get the next page of results. */ - cursor?: string; + cursor?: string /** The total number of follows. */ - count?: number; - [k: string]: unknown; + count?: number + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/graph/getKnownFollowers.ts b/apps/api/src/lexicon/types/app/rocksky/graph/getKnownFollowers.ts index 181407b8..e784ed58 100644 --- a/apps/api/src/lexicon/types/app/rocksky/graph/getKnownFollowers.ts +++ b/apps/api/src/lexicon/types/app/rocksky/graph/getKnownFollowers.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyActorDefs from "../actor/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyActorDefs from '../actor/defs' export interface QueryParams { - actor: string; - limit: number; - cursor?: string; + actor: string + limit: number + cursor?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - subject: AppRockskyActorDefs.ProfileViewBasic; - followers: AppRockskyActorDefs.ProfileViewBasic[]; + subject: AppRockskyActorDefs.ProfileViewBasic + followers: AppRockskyActorDefs.ProfileViewBasic[] /** A cursor value to pass to subsequent calls to get the next page of results. */ - cursor?: string; - [k: string]: unknown; + cursor?: string + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/graph/unfollowAccount.ts b/apps/api/src/lexicon/types/app/rocksky/graph/unfollowAccount.ts index 99fc07a3..71421f5d 100644 --- a/apps/api/src/lexicon/types/app/rocksky/graph/unfollowAccount.ts +++ b/apps/api/src/lexicon/types/app/rocksky/graph/unfollowAccount.ts @@ -1,50 +1,50 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyActorDefs from "../actor/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyActorDefs from '../actor/defs' export interface QueryParams { - account: string; + account: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - subject: AppRockskyActorDefs.ProfileViewBasic; - followers: AppRockskyActorDefs.ProfileViewBasic[]; + subject: AppRockskyActorDefs.ProfileViewBasic + followers: AppRockskyActorDefs.ProfileViewBasic[] /** A cursor value to pass to subsequent calls to get the next page of results. */ - cursor?: string; - [k: string]: unknown; + cursor?: string + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/like.ts b/apps/api/src/lexicon/types/app/rocksky/like.ts index 21035e90..337f3bb4 100644 --- a/apps/api/src/lexicon/types/app/rocksky/like.ts +++ b/apps/api/src/lexicon/types/app/rocksky/like.ts @@ -1,27 +1,27 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; -import type * as ComAtprotoRepoStrongRef from "../../com/atproto/repo/strongRef"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' +import type * as ComAtprotoRepoStrongRef from '../../com/atproto/repo/strongRef' export interface Record { /** The date when the like was created. */ - createdAt: string; - subject: ComAtprotoRepoStrongRef.Main; - [k: string]: unknown; + createdAt: string + subject: ComAtprotoRepoStrongRef.Main + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.like#main" || v.$type === "app.rocksky.like") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.like#main' || v.$type === 'app.rocksky.like') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.like#main", v); + return lexicons.validate('app.rocksky.like#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/like/dislikeShout.ts b/apps/api/src/lexicon/types/app/rocksky/like/dislikeShout.ts index cce29e93..9431959d 100644 --- a/apps/api/src/lexicon/types/app/rocksky/like/dislikeShout.ts +++ b/apps/api/src/lexicon/types/app/rocksky/like/dislikeShout.ts @@ -1,49 +1,49 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "../shout/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from '../shout/defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The unique identifier of the shout to dislike */ - uri?: string; - [k: string]: unknown; + uri?: string + [k: string]: unknown } -export type OutputSchema = AppRockskyShoutDefs.ShoutView; +export type OutputSchema = AppRockskyShoutDefs.ShoutView export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/like/dislikeSong.ts b/apps/api/src/lexicon/types/app/rocksky/like/dislikeSong.ts index ac21497a..a951d8db 100644 --- a/apps/api/src/lexicon/types/app/rocksky/like/dislikeSong.ts +++ b/apps/api/src/lexicon/types/app/rocksky/like/dislikeSong.ts @@ -1,49 +1,49 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "../song/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from '../song/defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The unique identifier of the song to dislike */ - uri?: string; - [k: string]: unknown; + uri?: string + [k: string]: unknown } -export type OutputSchema = AppRockskySongDefs.SongViewDetailed; +export type OutputSchema = AppRockskySongDefs.SongViewDetailed export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/like/likeShout.ts b/apps/api/src/lexicon/types/app/rocksky/like/likeShout.ts index 8d652876..aa996bb2 100644 --- a/apps/api/src/lexicon/types/app/rocksky/like/likeShout.ts +++ b/apps/api/src/lexicon/types/app/rocksky/like/likeShout.ts @@ -1,49 +1,49 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "../shout/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from '../shout/defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The unique identifier of the shout to like */ - uri?: string; - [k: string]: unknown; + uri?: string + [k: string]: unknown } -export type OutputSchema = AppRockskyShoutDefs.ShoutView; +export type OutputSchema = AppRockskyShoutDefs.ShoutView export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/like/likeSong.ts b/apps/api/src/lexicon/types/app/rocksky/like/likeSong.ts index 3f36fdb9..596e24e5 100644 --- a/apps/api/src/lexicon/types/app/rocksky/like/likeSong.ts +++ b/apps/api/src/lexicon/types/app/rocksky/like/likeSong.ts @@ -1,49 +1,49 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "../song/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from '../song/defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The unique identifier of the song to like */ - uri?: string; - [k: string]: unknown; + uri?: string + [k: string]: unknown } -export type OutputSchema = AppRockskySongDefs.SongViewDetailed; +export type OutputSchema = AppRockskySongDefs.SongViewDetailed export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/addDirectoryToQueue.ts b/apps/api/src/lexicon/types/app/rocksky/player/addDirectoryToQueue.ts index 585d9326..2fb660fa 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/addDirectoryToQueue.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/addDirectoryToQueue.ts @@ -1,40 +1,40 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; + playerId?: string /** The directory to add to the queue */ - directory: string; + directory: string /** Position in the queue to insert the directory at, defaults to the end if not specified */ - position?: number; + position?: number /** Whether to shuffle the added directory in the queue */ - shuffle?: boolean; + shuffle?: boolean } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/addItemsToQueue.ts b/apps/api/src/lexicon/types/app/rocksky/player/addItemsToQueue.ts index 06971d3c..272eb8ad 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/addItemsToQueue.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/addItemsToQueue.ts @@ -1,39 +1,39 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; - items: string[]; + playerId?: string + items: string[] /** Position in the queue to insert the items at, defaults to the end if not specified */ - position?: number; + position?: number /** Whether to shuffle the added items in the queue */ - shuffle?: boolean; + shuffle?: boolean } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/defs.ts b/apps/api/src/lexicon/types/app/rocksky/player/defs.ts index a31fa2cc..263cfaae 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/defs.ts @@ -1,16 +1,16 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppRockskySongDefsSongViewBasic from "../song/defs/songViewBasic"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type * as AppRockskySongDefsSongViewBasic from '../song/defs/songViewBasic' export interface CurrentlyPlayingViewDetailed { /** The title of the currently playing track */ - title?: string; - [k: string]: unknown; + title?: string + [k: string]: unknown } export function isCurrentlyPlayingViewDetailed( @@ -18,23 +18,23 @@ export function isCurrentlyPlayingViewDetailed( ): v is CurrentlyPlayingViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.player.defs#currentlyPlayingViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.player.defs#currentlyPlayingViewDetailed' + ) } export function validateCurrentlyPlayingViewDetailed( v: unknown, ): ValidationResult { return lexicons.validate( - "app.rocksky.player.defs#currentlyPlayingViewDetailed", + 'app.rocksky.player.defs#currentlyPlayingViewDetailed', v, - ); + ) } export interface PlaybackQueueViewDetailed { - tracks?: AppRockskySongDefsSongViewBasic.Main[]; - [k: string]: unknown; + tracks?: AppRockskySongDefsSongViewBasic.Main[] + [k: string]: unknown } export function isPlaybackQueueViewDetailed( @@ -42,16 +42,16 @@ export function isPlaybackQueueViewDetailed( ): v is PlaybackQueueViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.player.defs#playbackQueueViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.player.defs#playbackQueueViewDetailed' + ) } export function validatePlaybackQueueViewDetailed( v: unknown, ): ValidationResult { return lexicons.validate( - "app.rocksky.player.defs#playbackQueueViewDetailed", + 'app.rocksky.player.defs#playbackQueueViewDetailed', v, - ); + ) } diff --git a/apps/api/src/lexicon/types/app/rocksky/player/getCurrentlyPlaying.ts b/apps/api/src/lexicon/types/app/rocksky/player/getCurrentlyPlaying.ts index 2fc8b155..9f7dd15c 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/getCurrentlyPlaying.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/getCurrentlyPlaying.ts @@ -1,44 +1,44 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyPlayerDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyPlayerDefs from './defs' export interface QueryParams { - playerId?: string; + playerId?: string /** Handle or DID of the actor to retrieve the currently playing track for. If not provided, defaults to the current user. */ - actor?: string; + actor?: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyPlayerDefs.CurrentlyPlayingViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyPlayerDefs.CurrentlyPlayingViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/getPlaybackQueue.ts b/apps/api/src/lexicon/types/app/rocksky/player/getPlaybackQueue.ts index c9ba27d8..6853cec1 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/getPlaybackQueue.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/getPlaybackQueue.ts @@ -1,42 +1,42 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyPlayerDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyPlayerDefs from './defs' export interface QueryParams { - playerId?: string; + playerId?: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyPlayerDefs.PlaybackQueueViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyPlayerDefs.PlaybackQueueViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/next.ts b/apps/api/src/lexicon/types/app/rocksky/player/next.ts index 156fd6b1..fddb01fd 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/next.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/next.ts @@ -1,34 +1,34 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; + playerId?: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/pause.ts b/apps/api/src/lexicon/types/app/rocksky/player/pause.ts index 156fd6b1..fddb01fd 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/pause.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/pause.ts @@ -1,34 +1,34 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; + playerId?: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/play.ts b/apps/api/src/lexicon/types/app/rocksky/player/play.ts index 156fd6b1..fddb01fd 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/play.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/play.ts @@ -1,34 +1,34 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; + playerId?: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/playDirectory.ts b/apps/api/src/lexicon/types/app/rocksky/player/playDirectory.ts index bd12386e..f345f720 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/playDirectory.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/playDirectory.ts @@ -1,38 +1,38 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; - directoryId: string; - shuffle?: boolean; - recurse?: boolean; - position?: number; + playerId?: string + directoryId: string + shuffle?: boolean + recurse?: boolean + position?: number } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/playFile.ts b/apps/api/src/lexicon/types/app/rocksky/player/playFile.ts index c54f183a..62c704c5 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/playFile.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/playFile.ts @@ -1,35 +1,35 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; - fileId: string; + playerId?: string + fileId: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/previous.ts b/apps/api/src/lexicon/types/app/rocksky/player/previous.ts index 156fd6b1..fddb01fd 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/previous.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/previous.ts @@ -1,34 +1,34 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; + playerId?: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/player/seek.ts b/apps/api/src/lexicon/types/app/rocksky/player/seek.ts index cd90d0dd..4e7c6dc3 100644 --- a/apps/api/src/lexicon/types/app/rocksky/player/seek.ts +++ b/apps/api/src/lexicon/types/app/rocksky/player/seek.ts @@ -1,36 +1,36 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { - playerId?: string; + playerId?: string /** The position in seconds to seek to */ - position: number; + position: number } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist.ts b/apps/api/src/lexicon/types/app/rocksky/playlist.ts index afffe709..8c45ee78 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist.ts @@ -1,42 +1,42 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' export interface Record { /** The name of the playlist. */ - name: string; + name: string /** The playlist description. */ - description?: string; + description?: string /** The picture of the playlist. */ - picture?: BlobRef; + picture?: BlobRef /** The URL of the picture of the artist. */ - pictureUrl?: string; + pictureUrl?: string /** The date the playlist was created. */ - createdAt: string; + createdAt: string /** The Spotify link of the playlist. */ - spotifyLink?: string; + spotifyLink?: string /** The Tidal link of the playlist. */ - tidalLink?: string; + tidalLink?: string /** The YouTube link of the playlist. */ - youtubeLink?: string; + youtubeLink?: string /** The Apple Music link of the playlist. */ - appleMusicLink?: string; - [k: string]: unknown; + appleMusicLink?: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.playlist#main" || - v.$type === "app.rocksky.playlist") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.playlist#main' || + v.$type === 'app.rocksky.playlist') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.playlist#main", v); + return lexicons.validate('app.rocksky.playlist#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/createPlaylist.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/createPlaylist.ts index a3e7d89a..0ba568cd 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/createPlaylist.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/createPlaylist.ts @@ -1,37 +1,37 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The name of the playlist */ - name: string; + name: string /** A brief description of the playlist */ - description?: string; + description?: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/defs.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/defs.ts index d8c839f8..6072232a 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/defs.ts @@ -1,86 +1,86 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppRockskySongDefs from "../song/defs"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type * as AppRockskySongDefs from '../song/defs' /** Detailed view of a playlist, including its tracks and metadata */ export interface PlaylistViewDetailed { /** The unique identifier of the playlist. */ - id?: string; + id?: string /** The title of the playlist. */ - title?: string; + title?: string /** The URI of the playlist. */ - uri?: string; + uri?: string /** The DID of the curator of the playlist. */ - curatorDid?: string; + curatorDid?: string /** The handle of the curator of the playlist. */ - curatorHandle?: string; + curatorHandle?: string /** The name of the curator of the playlist. */ - curatorName?: string; + curatorName?: string /** The URL of the avatar image of the curator. */ - curatorAvatarUrl?: string; + curatorAvatarUrl?: string /** A description of the playlist. */ - description?: string; + description?: string /** The URL of the cover image for the playlist. */ - coverImageUrl?: string; + coverImageUrl?: string /** The date and time when the playlist was created. */ - createdAt?: string; + createdAt?: string /** A list of tracks in the playlist. */ - tracks?: AppRockskySongDefs.SongViewBasic[]; - [k: string]: unknown; + tracks?: AppRockskySongDefs.SongViewBasic[] + [k: string]: unknown } export function isPlaylistViewDetailed(v: unknown): v is PlaylistViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.playlist.defs#playlistViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.playlist.defs#playlistViewDetailed' + ) } export function validatePlaylistViewDetailed(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.playlist.defs#playlistViewDetailed", v); + return lexicons.validate('app.rocksky.playlist.defs#playlistViewDetailed', v) } /** Basic view of a playlist, including its metadata */ export interface PlaylistViewBasic { /** The unique identifier of the playlist. */ - id?: string; + id?: string /** The title of the playlist. */ - title?: string; + title?: string /** The URI of the playlist. */ - uri?: string; + uri?: string /** The DID of the curator of the playlist. */ - curatorDid?: string; + curatorDid?: string /** The handle of the curator of the playlist. */ - curatorHandle?: string; + curatorHandle?: string /** The name of the curator of the playlist. */ - curatorName?: string; + curatorName?: string /** The URL of the avatar image of the curator. */ - curatorAvatarUrl?: string; + curatorAvatarUrl?: string /** A description of the playlist. */ - description?: string; + description?: string /** The URL of the cover image for the playlist. */ - coverImageUrl?: string; + coverImageUrl?: string /** The date and time when the playlist was created. */ - createdAt?: string; + createdAt?: string /** The number of tracks in the playlist. */ - trackCount?: number; - [k: string]: unknown; + trackCount?: number + [k: string]: unknown } export function isPlaylistViewBasic(v: unknown): v is PlaylistViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.playlist.defs#playlistViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.playlist.defs#playlistViewBasic' + ) } export function validatePlaylistViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.playlist.defs#playlistViewBasic", v); + return lexicons.validate('app.rocksky.playlist.defs#playlistViewBasic', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/getPlaylist.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/getPlaylist.ts index 09739b6e..98a740dd 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/getPlaylist.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/getPlaylist.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyPlaylistDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyPlaylistDefs from './defs' export interface QueryParams { /** The URI of the playlist to retrieve. */ - uri: string; + uri: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyPlaylistDefs.PlaylistViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyPlaylistDefs.PlaylistViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/getPlaylists.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/getPlaylists.ts index 1b5973d5..ce360c68 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/getPlaylists.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/getPlaylists.ts @@ -1,50 +1,50 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyPlaylistDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyPlaylistDefs from './defs' export interface QueryParams { /** The maximum number of playlists to return. */ - limit?: number; + limit?: number /** The offset for pagination, used to skip a number of playlists. */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - playlists?: AppRockskyPlaylistDefs.PlaylistViewBasic[]; - [k: string]: unknown; + playlists?: AppRockskyPlaylistDefs.PlaylistViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/insertDirectory.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/insertDirectory.ts index ad8a2c41..4dcdde7e 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/insertDirectory.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/insertDirectory.ts @@ -1,39 +1,39 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The URI of the playlist to start */ - uri: string; + uri: string /** The directory (id) to insert into the playlist */ - directory: string; + directory: string /** The position in the playlist to insert the directory at, if not specified, the directory will be appended */ - position?: number; + position?: number } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/insertFiles.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/insertFiles.ts index fffa06c6..ffe2ed60 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/insertFiles.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/insertFiles.ts @@ -1,38 +1,38 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The URI of the playlist to start */ - uri: string; - files: string[]; + uri: string + files: string[] /** The position in the playlist to insert the files at, if not specified, files will be appended */ - position?: number; + position?: number } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/removePlaylist.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/removePlaylist.ts index bfa03748..9de6b0ad 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/removePlaylist.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/removePlaylist.ts @@ -1,35 +1,35 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The URI of the playlist to remove */ - uri: string; + uri: string } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/removeTrack.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/removeTrack.ts index 4f7d33a2..11c5a93b 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/removeTrack.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/removeTrack.ts @@ -1,37 +1,37 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The URI of the playlist to remove the track from */ - uri: string; + uri: string /** The position of the track to remove in the playlist */ - position: number; + position: number } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlist/startPlaylist.ts b/apps/api/src/lexicon/types/app/rocksky/playlist/startPlaylist.ts index ef30d1cd..763336b3 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlist/startPlaylist.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlist/startPlaylist.ts @@ -1,39 +1,39 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The URI of the playlist to start */ - uri: string; + uri: string /** Whether to shuffle the playlist when starting it */ - shuffle?: boolean; + shuffle?: boolean /** The position in the playlist to start from, if not specified, starts from the beginning */ - position?: number; + position?: number } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/playlistItem.ts b/apps/api/src/lexicon/types/app/rocksky/playlistItem.ts index 2362f7c7..098c49cc 100644 --- a/apps/api/src/lexicon/types/app/rocksky/playlistItem.ts +++ b/apps/api/src/lexicon/types/app/rocksky/playlistItem.ts @@ -1,32 +1,32 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; -import type * as ComAtprotoRepoStrongRef from "../../com/atproto/repo/strongRef"; -import type * as AppRockskySongDefs from "./song/defs"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' +import type * as ComAtprotoRepoStrongRef from '../../com/atproto/repo/strongRef' +import type * as AppRockskySongDefs from './song/defs' export interface Record { - subject: ComAtprotoRepoStrongRef.Main; + subject: ComAtprotoRepoStrongRef.Main /** The date the playlist was created. */ - createdAt: string; - track: AppRockskySongDefs.SongViewBasic; + createdAt: string + track: AppRockskySongDefs.SongViewBasic /** The order of the item in the playlist. */ - order: number; - [k: string]: unknown; + order: number + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.playlistItem#main" || - v.$type === "app.rocksky.playlistItem") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.playlistItem#main' || + v.$type === 'app.rocksky.playlistItem') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.playlistItem#main", v); + return lexicons.validate('app.rocksky.playlistItem#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/radio.ts b/apps/api/src/lexicon/types/app/rocksky/radio.ts index 210375b5..94231d27 100644 --- a/apps/api/src/lexicon/types/app/rocksky/radio.ts +++ b/apps/api/src/lexicon/types/app/rocksky/radio.ts @@ -1,37 +1,37 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' export interface Record { /** The name of the radio station. */ - name: string; + name: string /** The URL of the radio station. */ - url: string; + url: string /** A description of the radio station. */ - description?: string; + description?: string /** The genre of the radio station. */ - genre?: string; + genre?: string /** The logo of the radio station. */ - logo?: BlobRef; + logo?: BlobRef /** The website of the radio station. */ - website?: string; + website?: string /** The date when the radio station was created. */ - createdAt: string; - [k: string]: unknown; + createdAt: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.radio#main" || v.$type === "app.rocksky.radio") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.radio#main' || v.$type === 'app.rocksky.radio') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.radio#main", v); + return lexicons.validate('app.rocksky.radio#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/radio/defs.ts b/apps/api/src/lexicon/types/app/rocksky/radio/defs.ts index f03f75bc..7ba28f05 100644 --- a/apps/api/src/lexicon/types/app/rocksky/radio/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/radio/defs.ts @@ -1,63 +1,63 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface RadioViewBasic { /** The unique identifier of the radio. */ - id?: string; + id?: string /** The name of the radio. */ - name?: string; + name?: string /** A brief description of the radio. */ - description?: string; + description?: string /** The date and time when the radio was created. */ - createdAt?: string; - [k: string]: unknown; + createdAt?: string + [k: string]: unknown } export function isRadioViewBasic(v: unknown): v is RadioViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.radio.defs#radioViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.radio.defs#radioViewBasic' + ) } export function validateRadioViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.radio.defs#radioViewBasic", v); + return lexicons.validate('app.rocksky.radio.defs#radioViewBasic', v) } export interface RadioViewDetailed { /** The unique identifier of the radio. */ - id?: string; + id?: string /** The name of the radio. */ - name?: string; + name?: string /** A brief description of the radio. */ - description?: string; + description?: string /** The website of the radio. */ - website?: string; + website?: string /** The streaming URL of the radio. */ - url?: string; + url?: string /** The genre of the radio. */ - genre?: string; + genre?: string /** The logo of the radio station. */ - logo?: string; + logo?: string /** The date and time when the radio was created. */ - createdAt?: string; - [k: string]: unknown; + createdAt?: string + [k: string]: unknown } export function isRadioViewDetailed(v: unknown): v is RadioViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.radio.defs#radioViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.radio.defs#radioViewDetailed' + ) } export function validateRadioViewDetailed(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.radio.defs#radioViewDetailed", v); + return lexicons.validate('app.rocksky.radio.defs#radioViewDetailed', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/scrobble.ts b/apps/api/src/lexicon/types/app/rocksky/scrobble.ts index 58d637b9..0d709e55 100644 --- a/apps/api/src/lexicon/types/app/rocksky/scrobble.ts +++ b/apps/api/src/lexicon/types/app/rocksky/scrobble.ts @@ -1,75 +1,75 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppRockskyArtistDefs from "./artist/defs"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' +import type * as AppRockskyArtistDefs from './artist/defs' export interface Record { /** The title of the song. */ - title: string; + title: string /** The artist of the song. */ - artist: string; + artist: string /** The artists of the song with MusicBrainz IDs. */ - artists?: AppRockskyArtistDefs.ArtistMbid[]; + artists?: AppRockskyArtistDefs.ArtistMbid[] /** The album artist of the song. */ - albumArtist: string; + albumArtist: string /** The album of the song. */ - album: string; + album: string /** The duration of the song in seconds. */ - duration: number; + duration: number /** The track number of the song in the album. */ - trackNumber?: number; + trackNumber?: number /** The disc number of the song in the album. */ - discNumber?: number; + discNumber?: number /** The release date of the song. */ - releaseDate?: string; + releaseDate?: string /** The year the song was released. */ - year?: number; + year?: number /** The genre of the song. */ - genre?: string; + genre?: string /** The tags of the song. */ - tags?: string[]; + tags?: string[] /** The composer of the song. */ - composer?: string; + composer?: string /** The lyrics of the song. */ - lyrics?: string; + lyrics?: string /** The copyright message of the song. */ - copyrightMessage?: string; + copyrightMessage?: string /** Informations about the song */ - wiki?: string; + wiki?: string /** The album art of the song. */ - albumArt?: BlobRef; + albumArt?: BlobRef /** The URL of the album art of the song. */ - albumArtUrl?: string; + albumArtUrl?: string /** The YouTube link of the song. */ - youtubeLink?: string; + youtubeLink?: string /** The Spotify link of the song. */ - spotifyLink?: string; + spotifyLink?: string /** The Tidal link of the song. */ - tidalLink?: string; + tidalLink?: string /** The Apple Music link of the song. */ - appleMusicLink?: string; + appleMusicLink?: string /** The date when the song was created. */ - createdAt: string; + createdAt: string /** The MusicBrainz ID of the song. */ - mbid?: string; + mbid?: string /** The label of the song. */ - label?: string; - [k: string]: unknown; + label?: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.scrobble#main" || - v.$type === "app.rocksky.scrobble") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.scrobble#main' || + v.$type === 'app.rocksky.scrobble') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.scrobble#main", v); + return lexicons.validate('app.rocksky.scrobble#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/scrobble/createScrobble.ts b/apps/api/src/lexicon/types/app/rocksky/scrobble/createScrobble.ts index 507ad0e3..573135b5 100644 --- a/apps/api/src/lexicon/types/app/rocksky/scrobble/createScrobble.ts +++ b/apps/api/src/lexicon/types/app/rocksky/scrobble/createScrobble.ts @@ -1,91 +1,91 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyScrobbleDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyScrobbleDefs from './defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The title of the track being scrobbled */ - title: string; + title: string /** The artist of the track being scrobbled */ - artist: string; + artist: string /** The album of the track being scrobbled */ - album?: string; + album?: string /** The duration of the track in seconds */ - duration?: number; + duration?: number /** The MusicBrainz ID of the track, if available */ - mbId?: string; + mbId?: string /** The URL of the album art for the track */ - albumArt?: string; + albumArt?: string /** The track number of the track in the album */ - trackNumber?: number; + trackNumber?: number /** The release date of the track, formatted as YYYY-MM-DD */ - releaseDate?: string; + releaseDate?: string /** The year the track was released */ - year?: number; + year?: number /** The disc number of the track in the album, if applicable */ - discNumber?: number; + discNumber?: number /** The lyrics of the track, if available */ - lyrics?: string; + lyrics?: string /** The composer of the track, if available */ - composer?: string; + composer?: string /** The copyright message for the track, if available */ - copyrightMessage?: string; + copyrightMessage?: string /** The record label of the track, if available */ - label?: string; + label?: string /** The URL of the artist's picture, if available */ - artistPicture?: string; + artistPicture?: string /** The Spotify link for the track, if available */ - spotifyLink?: string; + spotifyLink?: string /** The Last.fm link for the track, if available */ - lastfmLink?: string; + lastfmLink?: string /** The Tidal link for the track, if available */ - tidalLink?: string; + tidalLink?: string /** The Apple Music link for the track, if available */ - appleMusicLink?: string; + appleMusicLink?: string /** The Youtube link for the track, if available */ - youtubeLink?: string; + youtubeLink?: string /** The Deezer link for the track, if available */ - deezerLink?: string; + deezerLink?: string /** The timestamp of the scrobble in milliseconds since epoch */ - timestamp?: number; - [k: string]: unknown; + timestamp?: number + [k: string]: unknown } -export type OutputSchema = AppRockskyScrobbleDefs.ScrobbleViewBasic; +export type OutputSchema = AppRockskyScrobbleDefs.ScrobbleViewBasic export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/scrobble/defs.ts b/apps/api/src/lexicon/types/app/rocksky/scrobble/defs.ts index 5302ea81..66a1a4b7 100644 --- a/apps/api/src/lexicon/types/app/rocksky/scrobble/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/scrobble/defs.ts @@ -1,93 +1,93 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface ScrobbleViewBasic { /** The unique identifier of the scrobble. */ - id?: string; + id?: string /** The handle of the user who created the scrobble. */ - user?: string; + user?: string /** The display name of the user who created the scrobble. */ - userDisplayName?: string; + userDisplayName?: string /** The avatar URL of the user who created the scrobble. */ - userAvatar?: string; + userAvatar?: string /** The title of the scrobble. */ - title?: string; + title?: string /** The artist of the song. */ - artist?: string; + artist?: string /** The URI of the artist. */ - artistUri?: string; + artistUri?: string /** The album of the song. */ - album?: string; + album?: string /** The URI of the album. */ - albumUri?: string; + albumUri?: string /** The album art URL of the song. */ - cover?: string; + cover?: string /** The timestamp when the scrobble was created. */ - date?: string; + date?: string /** The URI of the scrobble. */ - uri?: string; + uri?: string /** The SHA256 hash of the scrobble data. */ - sha256?: string; - liked?: boolean; - likesCount?: number; - [k: string]: unknown; + sha256?: string + liked?: boolean + likesCount?: number + [k: string]: unknown } export function isScrobbleViewBasic(v: unknown): v is ScrobbleViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.scrobble.defs#scrobbleViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.scrobble.defs#scrobbleViewBasic' + ) } export function validateScrobbleViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.scrobble.defs#scrobbleViewBasic", v); + return lexicons.validate('app.rocksky.scrobble.defs#scrobbleViewBasic', v) } export interface ScrobbleViewDetailed { /** The unique identifier of the scrobble. */ - id?: string; + id?: string /** The handle of the user who created the scrobble. */ - user?: string; + user?: string /** The title of the scrobble. */ - title?: string; + title?: string /** The artist of the song. */ - artist?: string; + artist?: string /** The URI of the artist. */ - artistUri?: string; + artistUri?: string /** The album of the song. */ - album?: string; + album?: string /** The URI of the album. */ - albumUri?: string; + albumUri?: string /** The album art URL of the song. */ - cover?: string; + cover?: string /** The timestamp when the scrobble was created. */ - date?: string; + date?: string /** The URI of the scrobble. */ - uri?: string; + uri?: string /** The SHA256 hash of the scrobble data. */ - sha256?: string; + sha256?: string /** The number of listeners */ - listeners?: number; + listeners?: number /** The number of scrobbles for this song */ - scrobbles?: number; - [k: string]: unknown; + scrobbles?: number + [k: string]: unknown } export function isScrobbleViewDetailed(v: unknown): v is ScrobbleViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.scrobble.defs#scrobbleViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.scrobble.defs#scrobbleViewDetailed' + ) } export function validateScrobbleViewDetailed(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.scrobble.defs#scrobbleViewDetailed", v); + return lexicons.validate('app.rocksky.scrobble.defs#scrobbleViewDetailed', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/scrobble/getScrobble.ts b/apps/api/src/lexicon/types/app/rocksky/scrobble/getScrobble.ts index cf6c8bd0..a6b96dfb 100644 --- a/apps/api/src/lexicon/types/app/rocksky/scrobble/getScrobble.ts +++ b/apps/api/src/lexicon/types/app/rocksky/scrobble/getScrobble.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyScrobbleDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyScrobbleDefs from './defs' export interface QueryParams { /** The unique identifier of the scrobble */ - uri: string; + uri: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyScrobbleDefs.ScrobbleViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyScrobbleDefs.ScrobbleViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/scrobble/getScrobbles.ts b/apps/api/src/lexicon/types/app/rocksky/scrobble/getScrobbles.ts index 3c871dc8..3a62fcc2 100644 --- a/apps/api/src/lexicon/types/app/rocksky/scrobble/getScrobbles.ts +++ b/apps/api/src/lexicon/types/app/rocksky/scrobble/getScrobbles.ts @@ -1,54 +1,54 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyScrobbleDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyScrobbleDefs from './defs' export interface QueryParams { /** The DID or handle of the actor */ - did?: string; + did?: string /** If true, only return scrobbles from actors the viewer is following. */ - following?: boolean; + following?: boolean /** The maximum number of scrobbles to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - scrobbles?: AppRockskyScrobbleDefs.ScrobbleViewBasic[]; - [k: string]: unknown; + scrobbles?: AppRockskyScrobbleDefs.ScrobbleViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout.ts b/apps/api/src/lexicon/types/app/rocksky/shout.ts index 893db47e..2b4f380d 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout.ts @@ -1,30 +1,30 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; -import type * as ComAtprotoRepoStrongRef from "../../com/atproto/repo/strongRef"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' +import type * as ComAtprotoRepoStrongRef from '../../com/atproto/repo/strongRef' export interface Record { /** The message of the shout. */ - message: string; + message: string /** The date when the shout was created. */ - createdAt: string; - parent?: ComAtprotoRepoStrongRef.Main; - subject: ComAtprotoRepoStrongRef.Main; - [k: string]: unknown; + createdAt: string + parent?: ComAtprotoRepoStrongRef.Main + subject: ComAtprotoRepoStrongRef.Main + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.shout#main" || v.$type === "app.rocksky.shout") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.shout#main' || v.$type === 'app.rocksky.shout') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.shout#main", v); + return lexicons.validate('app.rocksky.shout#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/createShout.ts b/apps/api/src/lexicon/types/app/rocksky/shout/createShout.ts index 8e4df585..a0f85b21 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/createShout.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/createShout.ts @@ -1,49 +1,49 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The content of the shout */ - message?: string; - [k: string]: unknown; + message?: string + [k: string]: unknown } -export type OutputSchema = AppRockskyShoutDefs.ShoutView; +export type OutputSchema = AppRockskyShoutDefs.ShoutView export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/defs.ts b/apps/api/src/lexicon/types/app/rocksky/shout/defs.ts index 028473ba..792e450a 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/defs.ts @@ -1,58 +1,58 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface Author { /** The unique identifier of the author. */ - id?: string; + id?: string /** The decentralized identifier (DID) of the author. */ - did?: string; + did?: string /** The handle of the author. */ - handle?: string; + handle?: string /** The display name of the author. */ - displayName?: string; + displayName?: string /** The URL of the author's avatar image. */ - avatar?: string; - [k: string]: unknown; + avatar?: string + [k: string]: unknown } export function isAuthor(v: unknown): v is Author { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.shout.defs#author" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.shout.defs#author' + ) } export function validateAuthor(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.shout.defs#author", v); + return lexicons.validate('app.rocksky.shout.defs#author', v) } export interface ShoutView { /** The unique identifier of the shout. */ - id?: string; + id?: string /** The content of the shout. */ - message?: string; + message?: string /** The ID of the parent shout if this is a reply, otherwise null. */ - parent?: string; + parent?: string /** The date and time when the shout was created. */ - createdAt?: string; - author?: Author; - [k: string]: unknown; + createdAt?: string + author?: Author + [k: string]: unknown } export function isShoutView(v: unknown): v is ShoutView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.shout.defs#shoutView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.shout.defs#shoutView' + ) } export function validateShoutView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.shout.defs#shoutView", v); + return lexicons.validate('app.rocksky.shout.defs#shoutView', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/getAlbumShouts.ts b/apps/api/src/lexicon/types/app/rocksky/shout/getAlbumShouts.ts index be939325..99568435 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/getAlbumShouts.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/getAlbumShouts.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' export interface QueryParams { /** The unique identifier of the album to retrieve shouts for */ - uri: string; + uri: string /** The maximum number of shouts to return */ - limit?: number; + limit?: number /** The number of shouts to skip before starting to collect the result set */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - shouts?: AppRockskyShoutDefs.ShoutViewBasic[]; - [k: string]: unknown; + shouts?: AppRockskyShoutDefs.ShoutViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/getArtistShouts.ts b/apps/api/src/lexicon/types/app/rocksky/shout/getArtistShouts.ts index a64d0529..e73c0d8c 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/getArtistShouts.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/getArtistShouts.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' export interface QueryParams { /** The URI of the artist to retrieve shouts for */ - uri: string; + uri: string /** The maximum number of shouts to return */ - limit?: number; + limit?: number /** The number of shouts to skip before starting to collect the result set */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - shouts?: AppRockskyShoutDefs.ShoutViewBasic[]; - [k: string]: unknown; + shouts?: AppRockskyShoutDefs.ShoutViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/getProfileShouts.ts b/apps/api/src/lexicon/types/app/rocksky/shout/getProfileShouts.ts index 958a1449..9f2f3059 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/getProfileShouts.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/getProfileShouts.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' export interface QueryParams { /** The DID or handle of the actor */ - did: string; + did: string /** The offset for pagination */ - offset?: number; + offset?: number /** The maximum number of shouts to return */ - limit?: number; + limit?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - shouts?: AppRockskyShoutDefs.ShoutViewBasic[]; - [k: string]: unknown; + shouts?: AppRockskyShoutDefs.ShoutViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/getShoutReplies.ts b/apps/api/src/lexicon/types/app/rocksky/shout/getShoutReplies.ts index 1c2e5c5b..f0f25e10 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/getShoutReplies.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/getShoutReplies.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' export interface QueryParams { /** The URI of the shout to retrieve replies for */ - uri: string; + uri: string /** The maximum number of shouts to return */ - limit?: number; + limit?: number /** The number of shouts to skip before starting to collect the result set */ - offset?: number; + offset?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - shouts?: AppRockskyShoutDefs.ShoutViewBasic[]; - [k: string]: unknown; + shouts?: AppRockskyShoutDefs.ShoutViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/getTrackShouts.ts b/apps/api/src/lexicon/types/app/rocksky/shout/getTrackShouts.ts index 41367003..01fcf917 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/getTrackShouts.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/getTrackShouts.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' export interface QueryParams { /** The URI of the track to retrieve shouts for */ - uri: string; + uri: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - shouts?: AppRockskyShoutDefs.ShoutViewBasic[]; - [k: string]: unknown; + shouts?: AppRockskyShoutDefs.ShoutViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/removeShout.ts b/apps/api/src/lexicon/types/app/rocksky/shout/removeShout.ts index 52c0bd11..3d716c7a 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/removeShout.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/removeShout.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' export interface QueryParams { /** The ID of the shout to be removed */ - id: string; + id: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyShoutDefs.ShoutView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyShoutDefs.ShoutView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/replyShout.ts b/apps/api/src/lexicon/types/app/rocksky/shout/replyShout.ts index f4f5e9bb..e729c3c2 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/replyShout.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/replyShout.ts @@ -1,51 +1,51 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The unique identifier of the shout to reply to */ - shoutId: string; + shoutId: string /** The content of the reply */ - message: string; - [k: string]: unknown; + message: string + [k: string]: unknown } -export type OutputSchema = AppRockskyShoutDefs.ShoutView; +export type OutputSchema = AppRockskyShoutDefs.ShoutView export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/shout/reportShout.ts b/apps/api/src/lexicon/types/app/rocksky/shout/reportShout.ts index b71fefbd..33bb265a 100644 --- a/apps/api/src/lexicon/types/app/rocksky/shout/reportShout.ts +++ b/apps/api/src/lexicon/types/app/rocksky/shout/reportShout.ts @@ -1,51 +1,51 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyShoutDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyShoutDefs from './defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The unique identifier of the shout to report */ - shoutId: string; + shoutId: string /** The reason for reporting the shout */ - reason?: string; - [k: string]: unknown; + reason?: string + [k: string]: unknown } -export type OutputSchema = AppRockskyShoutDefs.ShoutView; +export type OutputSchema = AppRockskyShoutDefs.ShoutView export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/song.ts b/apps/api/src/lexicon/types/app/rocksky/song.ts index c7c6d271..7ba656b3 100644 --- a/apps/api/src/lexicon/types/app/rocksky/song.ts +++ b/apps/api/src/lexicon/types/app/rocksky/song.ts @@ -1,74 +1,74 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../lexicons"; -import { isObj, hasProp } from "../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppRockskyArtistDefs from "./artist/defs"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../lexicons' +import { isObj, hasProp } from '../../../util' +import { CID } from 'multiformats/cid' +import type * as AppRockskyArtistDefs from './artist/defs' export interface Record { /** The title of the song. */ - title: string; + title: string /** The artist of the song. */ - artist: string; + artist: string /** The artists of the song with MusicBrainz IDs. */ - artists?: AppRockskyArtistDefs.ArtistMbid[]; + artists?: AppRockskyArtistDefs.ArtistMbid[] /** The album artist of the song. */ - albumArtist: string; + albumArtist: string /** The album of the song. */ - album: string; + album: string /** The duration of the song in seconds. */ - duration: number; + duration: number /** The track number of the song in the album. */ - trackNumber?: number; + trackNumber?: number /** The disc number of the song in the album. */ - discNumber?: number; + discNumber?: number /** The release date of the song. */ - releaseDate?: string; + releaseDate?: string /** The year the song was released. */ - year?: number; + year?: number /** The genre of the song. */ - genre?: string; + genre?: string /** The tags of the song. */ - tags?: string[]; + tags?: string[] /** The composer of the song. */ - composer?: string; + composer?: string /** The lyrics of the song. */ - lyrics?: string; + lyrics?: string /** The copyright message of the song. */ - copyrightMessage?: string; + copyrightMessage?: string /** Informations about the song */ - wiki?: string; + wiki?: string /** The album art of the song. */ - albumArt?: BlobRef; + albumArt?: BlobRef /** The URL of the album art of the song. */ - albumArtUrl?: string; + albumArtUrl?: string /** The YouTube link of the song. */ - youtubeLink?: string; + youtubeLink?: string /** The Spotify link of the song. */ - spotifyLink?: string; + spotifyLink?: string /** The Tidal link of the song. */ - tidalLink?: string; + tidalLink?: string /** The Apple Music link of the song. */ - appleMusicLink?: string; + appleMusicLink?: string /** The date when the song was created. */ - createdAt: string; + createdAt: string /** The MusicBrainz ID of the song. */ - mbid?: string; + mbid?: string /** The label of the song. */ - label?: string; - [k: string]: unknown; + label?: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "app.rocksky.song#main" || v.$type === "app.rocksky.song") - ); + hasProp(v, '$type') && + (v.$type === 'app.rocksky.song#main' || v.$type === 'app.rocksky.song') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.song#main", v); + return lexicons.validate('app.rocksky.song#main', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/song/createSong.ts b/apps/api/src/lexicon/types/app/rocksky/song/createSong.ts index 791c6966..49c8ee33 100644 --- a/apps/api/src/lexicon/types/app/rocksky/song/createSong.ts +++ b/apps/api/src/lexicon/types/app/rocksky/song/createSong.ts @@ -1,71 +1,71 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from './defs' -export type QueryParams = {}; +export type QueryParams = {} export interface InputSchema { /** The title of the song */ - title: string; + title: string /** The artist of the song */ - artist: string; + artist: string /** The album artist of the song, if different from the main artist */ - albumArtist: string; + albumArtist: string /** The album of the song, if applicable */ - album: string; + album: string /** The duration of the song in seconds */ - duration?: number; + duration?: number /** The MusicBrainz ID of the song, if available */ - mbId?: string; + mbId?: string /** The URL of the album art for the song */ - albumArt?: string; + albumArt?: string /** The track number of the song in the album, if applicable */ - trackNumber?: number; + trackNumber?: number /** The release date of the song, formatted as YYYY-MM-DD */ - releaseDate?: string; + releaseDate?: string /** The year the song was released */ - year?: number; + year?: number /** The disc number of the song in the album, if applicable */ - discNumber?: number; + discNumber?: number /** The lyrics of the song, if available */ - lyrics?: string; - [k: string]: unknown; + lyrics?: string + [k: string]: unknown } -export type OutputSchema = AppRockskySongDefs.SongViewDetailed; +export type OutputSchema = AppRockskySongDefs.SongViewDetailed export interface HandlerInput { - encoding: "application/json"; - body: InputSchema; + encoding: 'application/json' + body: InputSchema } export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/song/defs.ts b/apps/api/src/lexicon/types/app/rocksky/song/defs.ts index 2209bc01..838f90d6 100644 --- a/apps/api/src/lexicon/types/app/rocksky/song/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/song/defs.ts @@ -1,105 +1,105 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface SongViewBasic { /** The unique identifier of the song. */ - id?: string; + id?: string /** The title of the song. */ - title?: string; + title?: string /** The artist of the song. */ - artist?: string; + artist?: string /** The artist of the album the song belongs to. */ - albumArtist?: string; + albumArtist?: string /** The URL of the album art image. */ - albumArt?: string; + albumArt?: string /** The URI of the song. */ - uri?: string; + uri?: string /** The album of the song. */ - album?: string; + album?: string /** The duration of the song in milliseconds. */ - duration?: number; + duration?: number /** The track number of the song in the album. */ - trackNumber?: number; + trackNumber?: number /** The disc number of the song in the album. */ - discNumber?: number; + discNumber?: number /** The number of times the song has been played. */ - playCount?: number; + playCount?: number /** The number of unique listeners who have played the song. */ - uniqueListeners?: number; + uniqueListeners?: number /** The URI of the album the song belongs to. */ - albumUri?: string; + albumUri?: string /** The URI of the artist of the song. */ - artistUri?: string; + artistUri?: string /** The SHA256 hash of the song. */ - sha256?: string; - tags?: string[]; + sha256?: string + tags?: string[] /** The timestamp when the song was created. */ - createdAt?: string; - [k: string]: unknown; + createdAt?: string + [k: string]: unknown } export function isSongViewBasic(v: unknown): v is SongViewBasic { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.song.defs#songViewBasic" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.song.defs#songViewBasic' + ) } export function validateSongViewBasic(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.song.defs#songViewBasic", v); + return lexicons.validate('app.rocksky.song.defs#songViewBasic', v) } export interface SongViewDetailed { /** The unique identifier of the song. */ - id?: string; + id?: string /** The title of the song. */ - title?: string; + title?: string /** The artist of the song. */ - artist?: string; + artist?: string /** The artist of the album the song belongs to. */ - albumArtist?: string; + albumArtist?: string /** The URL of the album art image. */ - albumArt?: string; + albumArt?: string /** The URI of the song. */ - uri?: string; + uri?: string /** The album of the song. */ - album?: string; + album?: string /** The duration of the song in milliseconds. */ - duration?: number; + duration?: number /** The track number of the song in the album. */ - trackNumber?: number; + trackNumber?: number /** The disc number of the song in the album. */ - discNumber?: number; + discNumber?: number /** The number of times the song has been played. */ - playCount?: number; + playCount?: number /** The number of unique listeners who have played the song. */ - uniqueListeners?: number; + uniqueListeners?: number /** The URI of the album the song belongs to. */ - albumUri?: string; + albumUri?: string /** The URI of the artist of the song. */ - artistUri?: string; + artistUri?: string /** The SHA256 hash of the song. */ - sha256?: string; - tags?: string[]; + sha256?: string + tags?: string[] /** The timestamp when the song was created. */ - createdAt?: string; - [k: string]: unknown; + createdAt?: string + [k: string]: unknown } export function isSongViewDetailed(v: unknown): v is SongViewDetailed { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.song.defs#songViewDetailed" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.song.defs#songViewDetailed' + ) } export function validateSongViewDetailed(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.song.defs#songViewDetailed", v); + return lexicons.validate('app.rocksky.song.defs#songViewDetailed', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/song/getSong.ts b/apps/api/src/lexicon/types/app/rocksky/song/getSong.ts index 578be0e4..e240beb2 100644 --- a/apps/api/src/lexicon/types/app/rocksky/song/getSong.ts +++ b/apps/api/src/lexicon/types/app/rocksky/song/getSong.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from './defs' export interface QueryParams { /** The unique identifier of the song to retrieve */ - uri: string; + uri: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskySongDefs.SongViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskySongDefs.SongViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/song/getSongs.ts b/apps/api/src/lexicon/types/app/rocksky/song/getSongs.ts index 7c209584..220f32fd 100644 --- a/apps/api/src/lexicon/types/app/rocksky/song/getSongs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/song/getSongs.ts @@ -1,50 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from './defs' export interface QueryParams { /** The maximum number of songs to return */ - limit?: number; + limit?: number /** The offset for pagination */ - offset?: number; + offset?: number + /** The genre to filter artists by */ + genre?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - songs?: AppRockskySongDefs.SongViewBasic[]; - [k: string]: unknown; + songs?: AppRockskySongDefs.SongViewBasic[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/song/matchSong.ts b/apps/api/src/lexicon/types/app/rocksky/song/matchSong.ts index 522ef9f0..7dd77250 100644 --- a/apps/api/src/lexicon/types/app/rocksky/song/matchSong.ts +++ b/apps/api/src/lexicon/types/app/rocksky/song/matchSong.ts @@ -1,45 +1,45 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskySongDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskySongDefs from './defs' export interface QueryParams { /** The title of the song to retrieve */ - title: string; + title: string /** The artist of the song to retrieve */ - artist: string; + artist: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskySongDefs.SongViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskySongDefs.SongViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/spotify/defs.ts b/apps/api/src/lexicon/types/app/rocksky/spotify/defs.ts index 86a590f6..0cb404d0 100644 --- a/apps/api/src/lexicon/types/app/rocksky/spotify/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/spotify/defs.ts @@ -1,35 +1,35 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface SpotifyTrackView { /** The unique identifier of the Spotify track. */ - id?: string; + id?: string /** The name of the track. */ - name?: string; + name?: string /** The name of the artist. */ - artist?: string; + artist?: string /** The name of the album. */ - album?: string; + album?: string /** The duration of the track in milliseconds. */ - duration?: number; + duration?: number /** A URL to a preview of the track. */ - previewUrl?: string; - [k: string]: unknown; + previewUrl?: string + [k: string]: unknown } export function isSpotifyTrackView(v: unknown): v is SpotifyTrackView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.spotify.defs#spotifyTrackView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.spotify.defs#spotifyTrackView' + ) } export function validateSpotifyTrackView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.spotify.defs#spotifyTrackView", v); + return lexicons.validate('app.rocksky.spotify.defs#spotifyTrackView', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/spotify/getCurrentlyPlaying.ts b/apps/api/src/lexicon/types/app/rocksky/spotify/getCurrentlyPlaying.ts index c6be7e31..1302318a 100644 --- a/apps/api/src/lexicon/types/app/rocksky/spotify/getCurrentlyPlaying.ts +++ b/apps/api/src/lexicon/types/app/rocksky/spotify/getCurrentlyPlaying.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyPlayerDefs from "../player/defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyPlayerDefs from '../player/defs' export interface QueryParams { /** Handle or DID of the actor to retrieve the currently playing track for. If not provided, defaults to the current user. */ - actor?: string; + actor?: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyPlayerDefs.CurrentlyPlayingViewDetailed; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyPlayerDefs.CurrentlyPlayingViewDetailed +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/spotify/next.ts b/apps/api/src/lexicon/types/app/rocksky/spotify/next.ts index c404dc11..1aaf2dd9 100644 --- a/apps/api/src/lexicon/types/app/rocksky/spotify/next.ts +++ b/apps/api/src/lexicon/types/app/rocksky/spotify/next.ts @@ -1,32 +1,32 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' -export type QueryParams = {}; +export type QueryParams = {} -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/spotify/pause.ts b/apps/api/src/lexicon/types/app/rocksky/spotify/pause.ts index c404dc11..1aaf2dd9 100644 --- a/apps/api/src/lexicon/types/app/rocksky/spotify/pause.ts +++ b/apps/api/src/lexicon/types/app/rocksky/spotify/pause.ts @@ -1,32 +1,32 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' -export type QueryParams = {}; +export type QueryParams = {} -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/spotify/play.ts b/apps/api/src/lexicon/types/app/rocksky/spotify/play.ts index c404dc11..1aaf2dd9 100644 --- a/apps/api/src/lexicon/types/app/rocksky/spotify/play.ts +++ b/apps/api/src/lexicon/types/app/rocksky/spotify/play.ts @@ -1,32 +1,32 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' -export type QueryParams = {}; +export type QueryParams = {} -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/spotify/previous.ts b/apps/api/src/lexicon/types/app/rocksky/spotify/previous.ts index c404dc11..1aaf2dd9 100644 --- a/apps/api/src/lexicon/types/app/rocksky/spotify/previous.ts +++ b/apps/api/src/lexicon/types/app/rocksky/spotify/previous.ts @@ -1,32 +1,32 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' -export type QueryParams = {}; +export type QueryParams = {} -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/spotify/seek.ts b/apps/api/src/lexicon/types/app/rocksky/spotify/seek.ts index 7b47acff..8bcc26e5 100644 --- a/apps/api/src/lexicon/types/app/rocksky/spotify/seek.ts +++ b/apps/api/src/lexicon/types/app/rocksky/spotify/seek.ts @@ -1,35 +1,35 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import { type HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import { type HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' export interface QueryParams { /** The position in seconds to seek to */ - position: number; + position: number } -export type InputSchema = undefined; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type HandlerInput = undefined export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | void; +export type HandlerOutput = HandlerError | void export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/app/rocksky/stats/defs.ts b/apps/api/src/lexicon/types/app/rocksky/stats/defs.ts index e24d1a4c..ca70d320 100644 --- a/apps/api/src/lexicon/types/app/rocksky/stats/defs.ts +++ b/apps/api/src/lexicon/types/app/rocksky/stats/defs.ts @@ -1,33 +1,33 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface StatsView { /** The total number of scrobbles. */ - scrobbles?: number; + scrobbles?: number /** The total number of unique artists scrobbled. */ - artists?: number; + artists?: number /** The total number of tracks marked as loved. */ - lovedTracks?: number; + lovedTracks?: number /** The total number of unique albums scrobbled. */ - albums?: number; + albums?: number /** The total number of unique tracks scrobbled. */ - tracks?: number; - [k: string]: unknown; + tracks?: number + [k: string]: unknown } export function isStatsView(v: unknown): v is StatsView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "app.rocksky.stats.defs#statsView" - ); + hasProp(v, '$type') && + v.$type === 'app.rocksky.stats.defs#statsView' + ) } export function validateStatsView(v: unknown): ValidationResult { - return lexicons.validate("app.rocksky.stats.defs#statsView", v); + return lexicons.validate('app.rocksky.stats.defs#statsView', v) } diff --git a/apps/api/src/lexicon/types/app/rocksky/stats/getStats.ts b/apps/api/src/lexicon/types/app/rocksky/stats/getStats.ts index 5c1a3ced..aa3c390e 100644 --- a/apps/api/src/lexicon/types/app/rocksky/stats/getStats.ts +++ b/apps/api/src/lexicon/types/app/rocksky/stats/getStats.ts @@ -1,43 +1,43 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as AppRockskyStatsDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as AppRockskyStatsDefs from './defs' export interface QueryParams { /** The DID or handle of the user to get stats for. */ - did: string; + did: string } -export type InputSchema = undefined; -export type OutputSchema = AppRockskyStatsDefs.StatsView; -export type HandlerInput = undefined; +export type InputSchema = undefined +export type OutputSchema = AppRockskyStatsDefs.StatsView +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/com/atproto/repo/strongRef.ts b/apps/api/src/lexicon/types/com/atproto/repo/strongRef.ts index 089fdb69..0f8254db 100644 --- a/apps/api/src/lexicon/types/com/atproto/repo/strongRef.ts +++ b/apps/api/src/lexicon/types/com/atproto/repo/strongRef.ts @@ -1,26 +1,26 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../lexicons"; -import { isObj, hasProp } from "../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../lexicons' +import { isObj, hasProp } from '../../../../util' +import { CID } from 'multiformats/cid' export interface Main { - uri: string; - cid: string; - [k: string]: unknown; + uri: string + cid: string + [k: string]: unknown } export function isMain(v: unknown): v is Main { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "com.atproto.repo.strongRef#main" || - v.$type === "com.atproto.repo.strongRef") - ); + hasProp(v, '$type') && + (v.$type === 'com.atproto.repo.strongRef#main' || + v.$type === 'com.atproto.repo.strongRef') + ) } export function validateMain(v: unknown): ValidationResult { - return lexicons.validate("com.atproto.repo.strongRef#main", v); + return lexicons.validate('com.atproto.repo.strongRef#main', v) } diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/actor/defs.ts b/apps/api/src/lexicon/types/fm/teal/alpha/actor/defs.ts index 3483340b..49e32575 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/actor/defs.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/actor/defs.ts @@ -1,60 +1,60 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppBskyRichtextFacet from "../../../../app/bsky/richtext/facet"; -import type * as FmTealAlphaActorProfile from "./profile"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type * as AppBskyRichtextFacet from '../../../../app/bsky/richtext/facet' +import type * as FmTealAlphaActorProfile from './profile' export interface ProfileView { /** The decentralized identifier of the actor */ - did?: string; - displayName?: string; + did?: string + displayName?: string /** Free-form profile description text. */ - description?: string; + description?: string /** Annotations of text in the profile description (mentions, URLs, hashtags, etc). May be changed to another (backwards compatible) lexicon. */ - descriptionFacets?: AppBskyRichtextFacet.Main[]; - featuredItem?: FmTealAlphaActorProfile.FeaturedItem; + descriptionFacets?: AppBskyRichtextFacet.Main[] + featuredItem?: FmTealAlphaActorProfile.FeaturedItem /** IPLD of the avatar */ - avatar?: string; + avatar?: string /** IPLD of the banner image */ - banner?: string; - createdAt?: string; - [k: string]: unknown; + banner?: string + createdAt?: string + [k: string]: unknown } export function isProfileView(v: unknown): v is ProfileView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "fm.teal.alpha.actor.defs#profileView" - ); + hasProp(v, '$type') && + v.$type === 'fm.teal.alpha.actor.defs#profileView' + ) } export function validateProfileView(v: unknown): ValidationResult { - return lexicons.validate("fm.teal.alpha.actor.defs#profileView", v); + return lexicons.validate('fm.teal.alpha.actor.defs#profileView', v) } export interface MiniProfileView { /** The decentralized identifier of the actor */ - did?: string; - displayName?: string; - handle?: string; + did?: string + displayName?: string + handle?: string /** IPLD of the avatar */ - avatar?: string; - [k: string]: unknown; + avatar?: string + [k: string]: unknown } export function isMiniProfileView(v: unknown): v is MiniProfileView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "fm.teal.alpha.actor.defs#miniProfileView" - ); + hasProp(v, '$type') && + v.$type === 'fm.teal.alpha.actor.defs#miniProfileView' + ) } export function validateMiniProfileView(v: unknown): ValidationResult { - return lexicons.validate("fm.teal.alpha.actor.defs#miniProfileView", v); + return lexicons.validate('fm.teal.alpha.actor.defs#miniProfileView', v) } diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/actor/getProfile.ts b/apps/api/src/lexicon/types/fm/teal/alpha/actor/getProfile.ts index af4451b1..ec6ef3a2 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/actor/getProfile.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/actor/getProfile.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as FmTealAlphaActorDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as FmTealAlphaActorDefs from './defs' export interface QueryParams { /** The author's DID */ - actor: string; + actor: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - actor: FmTealAlphaActorDefs.ProfileView; - [k: string]: unknown; + actor: FmTealAlphaActorDefs.ProfileView + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/actor/getProfiles.ts b/apps/api/src/lexicon/types/fm/teal/alpha/actor/getProfiles.ts index 6ae2d32a..9fe839f9 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/actor/getProfiles.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/actor/getProfiles.ts @@ -1,48 +1,48 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as FmTealAlphaActorDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as FmTealAlphaActorDefs from './defs' export interface QueryParams { /** Array of actor DIDs */ - actors: string[]; + actors: string[] } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - actors: FmTealAlphaActorDefs.MiniProfileView[]; - [k: string]: unknown; + actors: FmTealAlphaActorDefs.MiniProfileView[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/actor/profile.ts b/apps/api/src/lexicon/types/fm/teal/alpha/actor/profile.ts index 31b43bf2..d1c35c29 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/actor/profile.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/actor/profile.ts @@ -1,56 +1,56 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type * as AppBskyRichtextFacet from "../../../../app/bsky/richtext/facet"; +import type { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type * as AppBskyRichtextFacet from '../../../../app/bsky/richtext/facet' export interface Record { - displayName?: string; + displayName?: string /** Free-form profile description text. */ - description?: string; + description?: string /** Annotations of text in the profile description (mentions, URLs, hashtags, etc). */ - descriptionFacets?: AppBskyRichtextFacet.Main[]; - featuredItem?: FeaturedItem; + descriptionFacets?: AppBskyRichtextFacet.Main[] + featuredItem?: FeaturedItem /** Small image to be displayed next to posts from account. AKA, 'profile picture' */ - avatar?: BlobRef; + avatar?: BlobRef /** Larger horizontal image to display behind profile view. */ - banner?: BlobRef; - createdAt?: string; - [k: string]: unknown; + banner?: BlobRef + createdAt?: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "fm.teal.alpha.actor.profile#main" || - v.$type === "fm.teal.alpha.actor.profile") - ); + hasProp(v, '$type') && + (v.$type === 'fm.teal.alpha.actor.profile#main' || + v.$type === 'fm.teal.alpha.actor.profile') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("fm.teal.alpha.actor.profile#main", v); + return lexicons.validate('fm.teal.alpha.actor.profile#main', v) } export interface FeaturedItem { /** The Musicbrainz ID of the item */ - mbid: string; + mbid: string /** The type of the item. Must be a valid Musicbrainz type, e.g. album, track, recording, etc. */ - type: string; - [k: string]: unknown; + type: string + [k: string]: unknown } export function isFeaturedItem(v: unknown): v is FeaturedItem { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "fm.teal.alpha.actor.profile#featuredItem" - ); + hasProp(v, '$type') && + v.$type === 'fm.teal.alpha.actor.profile#featuredItem' + ) } export function validateFeaturedItem(v: unknown): ValidationResult { - return lexicons.validate("fm.teal.alpha.actor.profile#featuredItem", v); + return lexicons.validate('fm.teal.alpha.actor.profile#featuredItem', v) } diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/actor/searchActors.ts b/apps/api/src/lexicon/types/fm/teal/alpha/actor/searchActors.ts index de844b90..945b4faf 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/actor/searchActors.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/actor/searchActors.ts @@ -1,54 +1,54 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as FmTealAlphaActorDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as FmTealAlphaActorDefs from './defs' export interface QueryParams { /** The search query */ - q: string; + q: string /** The maximum number of actors to return */ - limit?: number; + limit?: number /** Cursor for pagination */ - cursor?: string; + cursor?: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - actors: FmTealAlphaActorDefs.MiniProfileView[]; + actors: FmTealAlphaActorDefs.MiniProfileView[] /** Cursor for pagination */ - cursor?: string; - [k: string]: unknown; + cursor?: string + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/actor/status.ts b/apps/api/src/lexicon/types/fm/teal/alpha/actor/status.ts index b19d04f8..fdb721e5 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/actor/status.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/actor/status.ts @@ -1,30 +1,30 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type * as FmTealAlphaFeedDefs from "../feed/defs"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type * as FmTealAlphaFeedDefs from '../feed/defs' export interface Record { /** The unix timestamp of when the item was recorded */ - time: string; + time: string /** The unix timestamp of the expiry time of the item. If unavailable, default to 10 minutes past the start time. */ - expiry?: string; - item: FmTealAlphaFeedDefs.PlayView; - [k: string]: unknown; + expiry?: string + item: FmTealAlphaFeedDefs.PlayView + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "fm.teal.alpha.actor.status#main" || - v.$type === "fm.teal.alpha.actor.status") - ); + hasProp(v, '$type') && + (v.$type === 'fm.teal.alpha.actor.status#main' || + v.$type === 'fm.teal.alpha.actor.status') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("fm.teal.alpha.actor.status#main", v); + return lexicons.validate('fm.teal.alpha.actor.status#main', v) } diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/feed/defs.ts b/apps/api/src/lexicon/types/fm/teal/alpha/feed/defs.ts index 6fc4b00b..66701272 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/feed/defs.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/feed/defs.ts @@ -1,67 +1,67 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' export interface PlayView { /** The name of the track */ - trackName: string; + trackName: string /** The Musicbrainz ID of the track */ - trackMbId?: string; + trackMbId?: string /** The Musicbrainz recording ID of the track */ - recordingMbId?: string; + recordingMbId?: string /** The length of the track in seconds */ - duration?: number; + duration?: number /** Array of artists in order of original appearance. */ - artists: Artist[]; + artists: Artist[] /** The name of the release/album */ - releaseName?: string; + releaseName?: string /** The Musicbrainz release ID */ - releaseMbId?: string; + releaseMbId?: string /** The ISRC code associated with the recording */ - isrc?: string; + isrc?: string /** The URL associated with this track */ - originUrl?: string; + originUrl?: string /** The base domain of the music service. e.g. music.apple.com, tidal.com, spotify.com. Defaults to 'local' if not provided. */ - musicServiceBaseDomain?: string; + musicServiceBaseDomain?: string /** A user-agent style string specifying the user agent. e.g. tealtracker/0.0.1b (Linux; Android 13; SM-A715F). Defaults to 'manual/unknown' if not provided. */ - submissionClientAgent?: string; + submissionClientAgent?: string /** The unix timestamp of when the track was played */ - playedTime?: string; - [k: string]: unknown; + playedTime?: string + [k: string]: unknown } export function isPlayView(v: unknown): v is PlayView { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "fm.teal.alpha.feed.defs#playView" - ); + hasProp(v, '$type') && + v.$type === 'fm.teal.alpha.feed.defs#playView' + ) } export function validatePlayView(v: unknown): ValidationResult { - return lexicons.validate("fm.teal.alpha.feed.defs#playView", v); + return lexicons.validate('fm.teal.alpha.feed.defs#playView', v) } export interface Artist { /** The name of the artist */ - artistName: string; + artistName: string /** The Musicbrainz ID of the artist */ - artistMbId?: string; - [k: string]: unknown; + artistMbId?: string + [k: string]: unknown } export function isArtist(v: unknown): v is Artist { return ( isObj(v) && - hasProp(v, "$type") && - v.$type === "fm.teal.alpha.feed.defs#artist" - ); + hasProp(v, '$type') && + v.$type === 'fm.teal.alpha.feed.defs#artist' + ) } export function validateArtist(v: unknown): ValidationResult { - return lexicons.validate("fm.teal.alpha.feed.defs#artist", v); + return lexicons.validate('fm.teal.alpha.feed.defs#artist', v) } diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/feed/getActorFeed.ts b/apps/api/src/lexicon/types/fm/teal/alpha/feed/getActorFeed.ts index 3f132675..e09234f0 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/feed/getActorFeed.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/feed/getActorFeed.ts @@ -1,52 +1,52 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as FmTealAlphaFeedDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as FmTealAlphaFeedDefs from './defs' export interface QueryParams { /** The author's DID for the play */ - authorDID: string; + authorDID: string /** The cursor to start the query from */ - cursor?: string; + cursor?: string /** The upper limit of tracks to get per request. Default is 20, max is 50. */ - limit?: number; + limit?: number } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - plays: FmTealAlphaFeedDefs.PlayView[]; - [k: string]: unknown; + plays: FmTealAlphaFeedDefs.PlayView[] + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/feed/getPlay.ts b/apps/api/src/lexicon/types/fm/teal/alpha/feed/getPlay.ts index 139e6fea..7fdbcb65 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/feed/getPlay.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/feed/getPlay.ts @@ -1,50 +1,50 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import type express from "express"; -import { ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type { HandlerAuth, HandlerPipeThrough } from "@atproto/xrpc-server"; -import type * as FmTealAlphaFeedDefs from "./defs"; +import type express from 'express' +import { ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type { HandlerAuth, HandlerPipeThrough } from '@atproto/xrpc-server' +import type * as FmTealAlphaFeedDefs from './defs' export interface QueryParams { /** The author's DID for the play */ - authorDID: string; + authorDID: string /** The record key of the play */ - rkey: string; + rkey: string } -export type InputSchema = undefined; +export type InputSchema = undefined export interface OutputSchema { - play: FmTealAlphaFeedDefs.PlayView; - [k: string]: unknown; + play: FmTealAlphaFeedDefs.PlayView + [k: string]: unknown } -export type HandlerInput = undefined; +export type HandlerInput = undefined export interface HandlerSuccess { - encoding: "application/json"; - body: OutputSchema; - headers?: { [key: string]: string }; + encoding: 'application/json' + body: OutputSchema + headers?: { [key: string]: string } } export interface HandlerError { - status: number; - message?: string; + status: number + message?: string } -export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough; +export type HandlerOutput = HandlerError | HandlerSuccess | HandlerPipeThrough export type HandlerReqCtx = { - auth: HA; - params: QueryParams; - input: HandlerInput; - req: express.Request; - res: express.Response; - resetRouteRateLimits: () => Promise; -}; + auth: HA + params: QueryParams + input: HandlerInput + req: express.Request + res: express.Response + resetRouteRateLimits: () => Promise +} export type Handler = ( ctx: HandlerReqCtx, -) => Promise | HandlerOutput; +) => Promise | HandlerOutput diff --git a/apps/api/src/lexicon/types/fm/teal/alpha/feed/play.ts b/apps/api/src/lexicon/types/fm/teal/alpha/feed/play.ts index dbe7b90c..80560da1 100644 --- a/apps/api/src/lexicon/types/fm/teal/alpha/feed/play.ts +++ b/apps/api/src/lexicon/types/fm/teal/alpha/feed/play.ts @@ -1,53 +1,53 @@ /** * GENERATED CODE - DO NOT MODIFY */ -import { type ValidationResult, BlobRef } from "@atproto/lexicon"; -import { lexicons } from "../../../../../lexicons"; -import { isObj, hasProp } from "../../../../../util"; -import { CID } from "multiformats/cid"; -import type * as FmTealAlphaFeedDefs from "./defs"; +import { type ValidationResult, BlobRef } from '@atproto/lexicon' +import { lexicons } from '../../../../../lexicons' +import { isObj, hasProp } from '../../../../../util' +import { CID } from 'multiformats/cid' +import type * as FmTealAlphaFeedDefs from './defs' export interface Record { /** The name of the track */ - trackName: string; + trackName: string /** The Musicbrainz ID of the track */ - trackMbId?: string; + trackMbId?: string /** The Musicbrainz recording ID of the track */ - recordingMbId?: string; + recordingMbId?: string /** The length of the track in seconds */ - duration?: number; + duration?: number /** Array of artist names in order of original appearance. Prefer using 'artists'. */ - artistNames?: string[]; + artistNames?: string[] /** Array of Musicbrainz artist IDs. Prefer using 'artists'. */ - artistMbIds?: string[]; + artistMbIds?: string[] /** Array of artists in order of original appearance. */ - artists?: FmTealAlphaFeedDefs.Artist[]; + artists?: FmTealAlphaFeedDefs.Artist[] /** The name of the release/album */ - releaseName?: string; + releaseName?: string /** The Musicbrainz release ID */ - releaseMbId?: string; + releaseMbId?: string /** The ISRC code associated with the recording */ - isrc?: string; + isrc?: string /** The URL associated with this track */ - originUrl?: string; + originUrl?: string /** The base domain of the music service. e.g. music.apple.com, tidal.com, spotify.com. Defaults to 'local' if unavailable or not provided. */ - musicServiceBaseDomain?: string; + musicServiceBaseDomain?: string /** A metadata string specifying the user agent where the format is `/ (; ; )`. If string is provided, only `app-identifier` and `version` are required. `app-identifier` is recommended to be in reverse dns format. Defaults to 'manual/unknown' if unavailable or not provided. */ - submissionClientAgent?: string; + submissionClientAgent?: string /** The unix timestamp of when the track was played */ - playedTime?: string; - [k: string]: unknown; + playedTime?: string + [k: string]: unknown } export function isRecord(v: unknown): v is Record { return ( isObj(v) && - hasProp(v, "$type") && - (v.$type === "fm.teal.alpha.feed.play#main" || - v.$type === "fm.teal.alpha.feed.play") - ); + hasProp(v, '$type') && + (v.$type === 'fm.teal.alpha.feed.play#main' || + v.$type === 'fm.teal.alpha.feed.play') + ) } export function validateRecord(v: unknown): ValidationResult { - return lexicons.validate("fm.teal.alpha.feed.play#main", v); + return lexicons.validate('fm.teal.alpha.feed.play#main', v) } diff --git a/apps/api/src/lexicon/util.ts b/apps/api/src/lexicon/util.ts index e5546559..d7e70440 100644 --- a/apps/api/src/lexicon/util.ts +++ b/apps/api/src/lexicon/util.ts @@ -2,12 +2,12 @@ * GENERATED CODE - DO NOT MODIFY */ export function isObj(v: unknown): v is Record { - return typeof v === "object" && v !== null; + return typeof v === 'object' && v !== null } export function hasProp( data: object, prop: K, ): data is Record { - return prop in data; + return prop in data } diff --git a/apps/api/src/xrpc/app/rocksky/album/getAlbums.ts b/apps/api/src/xrpc/app/rocksky/album/getAlbums.ts index 967c459f..932df2ac 100644 --- a/apps/api/src/xrpc/app/rocksky/album/getAlbums.ts +++ b/apps/api/src/xrpc/app/rocksky/album/getAlbums.ts @@ -43,6 +43,7 @@ const retrieve = ({ pagination: { skip: params.offset || 0, take: params.limit || 100, + genre: params.genre, }, }), catch: (error) => new Error(`Failed to retrieve albums: ${error}`), diff --git a/apps/api/src/xrpc/app/rocksky/artist/getArtists.ts b/apps/api/src/xrpc/app/rocksky/artist/getArtists.ts index 0fe06f16..bda180d1 100644 --- a/apps/api/src/xrpc/app/rocksky/artist/getArtists.ts +++ b/apps/api/src/xrpc/app/rocksky/artist/getArtists.ts @@ -48,6 +48,7 @@ const retrieve = ({ take: params.limit || 100, }, names: params.names?.split(","), + genre: params.genre, }); return { data: response.data, ctx }; }, diff --git a/apps/api/src/xrpc/app/rocksky/song/getSongs.ts b/apps/api/src/xrpc/app/rocksky/song/getSongs.ts index 6dae950f..89517bf8 100644 --- a/apps/api/src/xrpc/app/rocksky/song/getSongs.ts +++ b/apps/api/src/xrpc/app/rocksky/song/getSongs.ts @@ -43,6 +43,7 @@ const retrieve = ({ pagination: { skip: params.offset || 0, take: params.limit || 100, + genre: params.genre, }, }), catch: (error) => new Error(`Failed to retrieve tracks: ${error}`), diff --git a/crates/analytics/src/handlers/albums.rs b/crates/analytics/src/handlers/albums.rs index f2f3d46e..26f95e3d 100644 --- a/crates/analytics/src/handlers/albums.rs +++ b/crates/analytics/src/handlers/albums.rs @@ -22,12 +22,20 @@ pub async fn get_albums( let offset = pagination.skip.unwrap_or(0); let limit = pagination.take.unwrap_or(20); let did = params.user_did; - tracing::info!(limit, offset, user_did = ?did, "Get albums"); + let genre = params.genre; + tracing::info!(limit, offset, user_did = ?did, genre = ?genre, "Get albums"); let conn = conn.lock().unwrap(); - let mut stmt = match did { - Some(_) => conn.prepare( - r#" + + match did { + Some(did) => { + let genre_filter = if genre.is_some() { + " AND list_contains(ar.genres, ?)" + } else { + "" + }; + let query = format!( + r#" SELECT a.*, COUNT(*) AS play_count, COUNT(DISTINCT s.user_id) AS unique_listeners @@ -35,53 +43,73 @@ pub async fn get_albums( LEFT JOIN albums a ON ua.album_id = a.id LEFT JOIN users u ON ua.user_id = u.id LEFT JOIN scrobbles s ON s.album_id = a.id - WHERE u.did = ? OR u.handle = ? + LEFT JOIN artists ar ON a.artist_uri = ar.uri + WHERE (u.did = ? OR u.handle = ?){} GROUP BY a.* - ORDER BY play_count DESC OFFSET ? LIMIT ?; + ORDER BY play_count DESC LIMIT ? OFFSET ?; "#, - )?, - None => conn.prepare( - "SELECT a.*, + genre_filter + ); + + let mut stmt = conn.prepare(&query)?; + let params: Vec<&dyn duckdb::ToSql> = if let Some(g) = &genre { + vec![&did, &did, g, &limit, &offset] + } else { + vec![&did, &did, &limit, &offset] + }; + + let albums_iter = stmt.query_map(duckdb::params_from_iter(params), |row| { + Ok(Album { + id: row.get(0)?, + title: row.get(1)?, + artist: row.get(2)?, + release_date: row.get(3)?, + album_art: row.get(4)?, + year: row.get(5)?, + spotify_link: row.get(6)?, + tidal_link: row.get(7)?, + youtube_link: row.get(8)?, + apple_music_link: row.get(9)?, + sha256: row.get(10)?, + uri: row.get(11)?, + artist_uri: row.get(12)?, + play_count: Some(row.get(13)?), + unique_listeners: Some(row.get(14)?), + ..Default::default() + }) + })?; + + let albums: Result, _> = albums_iter.collect(); + Ok(HttpResponse::Ok().json(web::Json(albums?))) + } + None => { + let genre_filter = if genre.is_some() { + " WHERE list_contains(ar.genres, ?)" + } else { + "" + }; + let query = format!( + r#" + SELECT a.*, COUNT(*) AS play_count, COUNT(DISTINCT s.user_id) AS unique_listeners FROM albums a LEFT JOIN scrobbles s ON s.album_id = a.id + LEFT JOIN artists ar ON a.artist_uri = ar.uri{} GROUP BY a.* - ORDER BY play_count DESC OFFSET ? LIMIT ?", - )?, - }; + ORDER BY play_count DESC LIMIT ? OFFSET ? + "#, + genre_filter + ); - match did { - Some(did) => { - let albums_iter = stmt.query_map( - [&did, &did, &limit.to_string(), &offset.to_string()], - |row| { - Ok(Album { - id: row.get(0)?, - title: row.get(1)?, - artist: row.get(2)?, - release_date: row.get(3)?, - album_art: row.get(4)?, - year: row.get(5)?, - spotify_link: row.get(6)?, - tidal_link: row.get(7)?, - youtube_link: row.get(8)?, - apple_music_link: row.get(9)?, - sha256: row.get(10)?, - uri: row.get(11)?, - artist_uri: row.get(12)?, - play_count: Some(row.get(13)?), - unique_listeners: Some(row.get(14)?), - ..Default::default() - }) - }, - )?; + let mut stmt = conn.prepare(&query)?; + let params: Vec<&dyn duckdb::ToSql> = if let Some(g) = &genre { + vec![g, &limit, &offset] + } else { + vec![&limit, &offset] + }; - let albums: Result, _> = albums_iter.collect(); - Ok(HttpResponse::Ok().json(web::Json(albums?))) - } - None => { - let albums_iter = stmt.query_map([limit, offset], |row| { + let albums_iter = stmt.query_map(duckdb::params_from_iter(params), |row| { Ok(Album { id: row.get(0)?, title: row.get(1)?, diff --git a/crates/analytics/src/handlers/artists.rs b/crates/analytics/src/handlers/artists.rs index 4ab0c2d5..1434b50a 100644 --- a/crates/analytics/src/handlers/artists.rs +++ b/crates/analytics/src/handlers/artists.rs @@ -27,6 +27,8 @@ pub async fn get_artists( let limit = pagination.take.unwrap_or(20); let did = params.user_did; let names = params.names; + let genre = params.genre; + tracing::info!(limit, offset, user_did = ?did, genre = ?genre, "Get artists"); let conn = conn.lock().unwrap(); @@ -36,6 +38,11 @@ pub async fn get_artists( // Both did and names provided (Some(d), Some(n)) if !n.is_empty() => { let placeholders = vec!["?"; n.len()].join(", "); + let genre_filter = if genre.is_some() { + " AND list_contains(a.genres, ?)" + } else { + "" + }; let query = format!( r#" SELECT a.*, @@ -46,25 +53,34 @@ pub async fn get_artists( LEFT JOIN users u ON ua.user_id = u.id LEFT JOIN scrobbles s ON s.artist_id = a.id WHERE (u.did = ? OR u.handle = ?) - AND a.name IN ({}) + AND a.name IN ({}){} GROUP BY a.* ORDER BY play_count DESC LIMIT ? OFFSET ? "#, - placeholders + placeholders, genre_filter ); let mut params: Vec> = vec![Box::new(d.clone()), Box::new(d.clone())]; for name in n { params.push(Box::new(name.clone())); } + if let Some(g) = &genre { + params.push(Box::new(g.clone())); + } params.push(Box::new(limit)); params.push(Box::new(offset)); (query, params) } // Only did provided (Some(d), _) => { - let query = r#" + let genre_filter = if genre.is_some() { + " AND list_contains(a.genres, ?)" + } else { + "" + }; + let query = format!( + r#" SELECT a.*, COUNT(*) AS play_count, COUNT(DISTINCT s.user_id) AS unique_listeners @@ -72,25 +88,30 @@ pub async fn get_artists( LEFT JOIN artists a ON ua.artist_id = a.id LEFT JOIN users u ON ua.user_id = u.id LEFT JOIN scrobbles s ON s.artist_id = a.id - WHERE (u.did = ? OR u.handle = ?) AND a.name != 'Various Artists' + WHERE (u.did = ? OR u.handle = ?) AND a.name != 'Various Artists'{} GROUP BY a.* ORDER BY play_count DESC LIMIT ? OFFSET ? - "# - .to_string(); - ( - query, - vec![ - Box::new(d.clone()), - Box::new(d.clone()), - Box::new(limit), - Box::new(offset), - ], - ) + "#, + genre_filter + ); + let mut params: Vec> = + vec![Box::new(d.clone()), Box::new(d.clone())]; + if let Some(g) = &genre { + params.push(Box::new(g.clone())); + } + params.push(Box::new(limit)); + params.push(Box::new(offset)); + (query, params) } // Only names provided (None, Some(n)) if !n.is_empty() => { let placeholders = vec!["?"; n.len()].join(", "); + let genre_filter = if genre.is_some() { + " AND list_contains(a.genres, ?)" + } else { + "" + }; let query = format!( r#" SELECT a.*, @@ -98,36 +119,52 @@ pub async fn get_artists( COUNT(DISTINCT s.user_id) AS unique_listeners FROM artists a LEFT JOIN scrobbles s ON s.artist_id = a.id - WHERE a.name IN ({}) + WHERE a.name IN ({}){} GROUP BY a.* ORDER BY play_count DESC LIMIT ? OFFSET ? "#, - placeholders + placeholders, genre_filter ); let mut params: Vec> = vec![]; for name in n { params.push(Box::new(name.clone())); } + if let Some(g) = &genre { + params.push(Box::new(g.clone())); + } params.push(Box::new(limit)); params.push(Box::new(offset)); (query, params) } // No filters (None, _) => { - let query = r#" + let genre_filter = if genre.is_some() { + " AND list_contains(a.genres, ?)" + } else { + "" + }; + let query = format!( + r#" SELECT a.*, COUNT(*) AS play_count, COUNT(DISTINCT s.user_id) AS unique_listeners FROM artists a LEFT JOIN scrobbles s ON s.artist_id = a.id - WHERE a.name != 'Various Artists' + WHERE a.name != 'Various Artists'{} GROUP BY a.* ORDER BY play_count DESC LIMIT ? OFFSET ? - "# - .to_string(); - (query, vec![Box::new(limit), Box::new(offset)]) + "#, + genre_filter + ); + let mut params: Vec> = vec![]; + if let Some(g) = &genre { + params.push(Box::new(g.clone())); + } + params.push(Box::new(limit)); + params.push(Box::new(offset)); + (query, params) } }; diff --git a/crates/analytics/src/handlers/tracks.rs b/crates/analytics/src/handlers/tracks.rs index f8b36d14..c3e73c9c 100644 --- a/crates/analytics/src/handlers/tracks.rs +++ b/crates/analytics/src/handlers/tracks.rs @@ -19,12 +19,19 @@ pub async fn get_tracks( let offset = pagination.skip.unwrap_or(0); let limit = pagination.take.unwrap_or(20); let did = params.user_did; - tracing::info!(limit, offset, user_did = ?did, "Get tracks"); + let genre = params.genre; + tracing::info!(limit, offset, user_did = ?did, genre = ?genre, "Get tracks"); let conn = conn.lock().unwrap(); match did { Some(did) => { - let mut stmt = conn.prepare(r#" + let genre_filter = if genre.is_some() { + " AND list_contains(a.genres, ?)" + } else { + "" + }; + let query = format!( + r#" SELECT t.id, t.title, @@ -55,50 +62,64 @@ pub async fn get_tracks( LEFT JOIN user_tracks ut ON t.id = ut.track_id LEFT JOIN users u ON ut.user_id = u.id LEFT JOIN scrobbles s ON s.track_id = t.id - WHERE u.did = ? OR u.handle = ? + LEFT JOIN artists a ON t.artist_uri = a.uri + WHERE (u.did = ? OR u.handle = ?){} GROUP BY t.id, t.title, t.artist, t.album_artist, t.album_art, t.album, t.track_number, t.duration, t.mb_id, t.youtube_link, t.spotify_link, t.tidal_link, t.apple_music_link, t.sha256, t.composer, t.genre, t.disc_number, t.label, t.copyright_message, t.uri, t.created_at, t.artist_uri, t.album_uri ORDER BY play_count DESC - OFFSET ? - LIMIT ?; - "#)?; - let tracks = stmt.query_map( - [&did, &did, &limit.to_string(), &offset.to_string()], - |row| { - Ok(Track { - id: row.get(0)?, - title: row.get(1)?, - artist: row.get(2)?, - album_artist: row.get(3)?, - album_art: row.get(4)?, - album: row.get(5)?, - track_number: row.get(6)?, - duration: row.get(7)?, - mb_id: row.get(8)?, - youtube_link: row.get(9)?, - spotify_link: row.get(10)?, - tidal_link: row.get(11)?, - apple_music_link: row.get(12)?, - sha256: row.get(13)?, - composer: row.get(14)?, - genre: row.get(15)?, - disc_number: row.get(16)?, - label: row.get(17)?, - uri: row.get(18)?, - copyright_message: row.get(19)?, - artist_uri: row.get(20)?, - album_uri: row.get(21)?, - created_at: row.get(22)?, - play_count: row.get(23)?, - unique_listeners: row.get(24)?, - ..Default::default() - }) - }, - )?; + LIMIT ? + OFFSET ?; + "#, + genre_filter + ); + + let mut stmt = conn.prepare(&query)?; + let params: Vec<&dyn duckdb::ToSql> = if let Some(g) = &genre { + vec![&did, &did, g, &limit, &offset] + } else { + vec![&did, &did, &limit, &offset] + }; + + let tracks = stmt.query_map(duckdb::params_from_iter(params), |row| { + Ok(Track { + id: row.get(0)?, + title: row.get(1)?, + artist: row.get(2)?, + album_artist: row.get(3)?, + album_art: row.get(4)?, + album: row.get(5)?, + track_number: row.get(6)?, + duration: row.get(7)?, + mb_id: row.get(8)?, + youtube_link: row.get(9)?, + spotify_link: row.get(10)?, + tidal_link: row.get(11)?, + apple_music_link: row.get(12)?, + sha256: row.get(13)?, + composer: row.get(14)?, + genre: row.get(15)?, + disc_number: row.get(16)?, + label: row.get(17)?, + uri: row.get(18)?, + copyright_message: row.get(19)?, + artist_uri: row.get(20)?, + album_uri: row.get(21)?, + created_at: row.get(22)?, + play_count: row.get(23)?, + unique_listeners: row.get(24)?, + ..Default::default() + }) + })?; let tracks: Result, _> = tracks.collect(); Ok(HttpResponse::Ok().json(tracks?)) } None => { - let mut stmt = conn.prepare(r#" + let genre_filter = if genre.is_some() { + " WHERE list_contains(a.genres, ?)" + } else { + "" + }; + let query = format!( + r#" SELECT t.id, t.title, @@ -127,12 +148,23 @@ pub async fn get_tracks( COUNT(DISTINCT s.user_id) AS unique_listeners FROM tracks t LEFT JOIN scrobbles s ON s.track_id = t.id + LEFT JOIN artists a ON t.artist_uri = a.uri{} GROUP BY t.id, t.title, t.artist, t.album_artist, t.album_art, t.album, t.track_number, t.duration, t.mb_id, t.youtube_link, t.spotify_link, t.tidal_link, t.apple_music_link, t.sha256, t.composer, t.genre, t.disc_number, t.label, t.copyright_message, t.uri, t.created_at, t.artist_uri, t.album_uri ORDER BY play_count DESC - OFFSET ? - LIMIT ?; - "#)?; - let tracks = stmt.query_map([limit, offset], |row| { + LIMIT ? + OFFSET ?; + "#, + genre_filter + ); + + let mut stmt = conn.prepare(&query)?; + let params: Vec<&dyn duckdb::ToSql> = if let Some(g) = &genre { + vec![g, &limit, &offset] + } else { + vec![&limit, &offset] + }; + + let tracks = stmt.query_map(duckdb::params_from_iter(params), |row| { Ok(Track { id: row.get(0)?, title: row.get(1)?, diff --git a/crates/analytics/src/types/album.rs b/crates/analytics/src/types/album.rs index fe678063..62092f77 100644 --- a/crates/analytics/src/types/album.rs +++ b/crates/analytics/src/types/album.rs @@ -36,6 +36,7 @@ pub struct Album { pub struct GetAlbumsParams { pub user_did: Option, pub pagination: Option, + pub genre: Option, } #[derive(Debug, Serialize, Deserialize, Default)] diff --git a/crates/analytics/src/types/artist.rs b/crates/analytics/src/types/artist.rs index 1949f6f0..5b28b08b 100644 --- a/crates/analytics/src/types/artist.rs +++ b/crates/analytics/src/types/artist.rs @@ -63,6 +63,7 @@ pub struct GetArtistsParams { pub user_did: Option, pub pagination: Option, pub names: Option>, + pub genre: Option, } #[derive(Debug, Serialize, Deserialize, Default)] diff --git a/crates/analytics/src/types/track.rs b/crates/analytics/src/types/track.rs index f60a7603..412386bd 100644 --- a/crates/analytics/src/types/track.rs +++ b/crates/analytics/src/types/track.rs @@ -57,6 +57,7 @@ pub struct Track { pub struct GetTracksParams { pub user_did: Option, pub pagination: Option, + pub genre: Option, } #[derive(Debug, Serialize, Deserialize, Default)] -- 2.51.2