aboutsummaryrefslogtreecommitdiff
path: root/common/src
diff options
context:
space:
mode:
Diffstat (limited to 'common/src')
-rw-r--r--common/src/api.rs76
-rw-r--r--common/src/internal.rs4
-rw-r--r--common/src/lib.rs21
-rw-r--r--common/src/node.rs212
-rw-r--r--common/src/user.rs12
5 files changed, 151 insertions, 174 deletions
diff --git a/common/src/api.rs b/common/src/api.rs
index 2aac57b..13962a3 100644
--- a/common/src/api.rs
+++ b/common/src/api.rs
@@ -7,54 +7,54 @@
use jellyobject::{Object, Tag, enums, fields};
fields! {
- QUERY_PARENT: u64 = 2000 "parent";
- QUERY_SEARCH: &str = 2001 "search";
- QUERY_KIND: Tag = 2004 "kind"; // multi
- QUERY_SORT: Tag = 2002 "sort"; // one of RTYP_*, NU_RATING, NO_DURATION, NO_NAME
- QUERY_SORT_ASCENDING: () = 2003 "sort_ascending";
+ QUERY_PARENT: u64 = b"prnt";
+ QUERY_SEARCH: &str = b"sear";
+ QUERY_KIND: Tag = b"kind"; // multi
+ QUERY_SORT: Tag = b"sort"; // one of RTYP_*, NU_RATING, NO_DURATION, NO_NAME
+ QUERY_SORT_ASCENDING: () = b"sasc";
- VIEW_TITLE: &str = 2005 "title";
- VIEW_MESSAGE: Object = 2010 "message";
- VIEW_NODE_PAGE: Object = 2011 "node_page";
- VIEW_NODE_LIST: Object = 2012 "node_list"; // multi
- VIEW_PLAYER: u64 = 2028 "player";
- VIEW_STATGROUP: Object = 2041 "statgroup";
- VIEW_STATTEXT: Object = 2042 "stattext";
- VIEW_ACCOUNT_LOGIN: () = 2043 "account_login";
- VIEW_ACCOUNT_LOGOUT: () = 2044 "account_logout";
- VIEW_ACCOUNT_SET_PASSWORD: &str = 2045 "account_set_password";
- VIEW_ADMIN_DASHBOARD: () = 2046 "admin_dashboard";
- VIEW_ADMIN_IMPORT: Object = 2047 "admin_import";
+ VIEW_TITLE: &str = b"titl";
+ VIEW_MESSAGE: Object = b"mesg";
+ VIEW_NODE_PAGE: Object = b"npag";
+ VIEW_NODE_LIST: Object = b"nlis"; // multi
+ VIEW_PLAYER: u64 = b"play";
+ VIEW_STATGROUP: Object = b"stag";
+ VIEW_STATTEXT: Object = b"stat";
+ VIEW_ACCOUNT_LOGIN: () = b"acli";
+ VIEW_ACCOUNT_LOGOUT: () = b"aclo";
+ VIEW_ACCOUNT_SET_PASSWORD: &str = b"acsp";
+ VIEW_ADMIN_DASHBOARD: () = b"adda";
+ VIEW_ADMIN_IMPORT: Object = b"adim";
- ADMIN_IMPORT_BUSY: () = 2048 "busy";
- ADMIN_IMPORT_ERROR: &str = 2049 "error"; // multi
+ ADMIN_IMPORT_BUSY: () = b"busy";
+ ADMIN_IMPORT_ERROR: &str = b"erro"; // multi
- NKU_NODE: Object = 2025 "node";
- NKU_UDATA: Object = 2026 "udata";
- NKU_ROLE: &str = 2027 "role";
+ NKU_NODE: Object = b"node";
+ NKU_UDATA: Object = b"udat";
+ NKU_ROLE: &str = b"role";
- NODELIST_TITLE: &str = 2007 "title";
- NODELIST_DISPLAYSTYLE: Tag = 2008 "displaystyle";
- NODELIST_ITEM: Object = 2009 "item";
+ NODELIST_TITLE: &str = b"titl";
+ NODELIST_DISPLAYSTYLE: Tag = b"dsty";
+ NODELIST_ITEM: Object = b"item";
- MESSAGE_KIND: &str = 2029 "kind";
- MESSAGE_TEXT: &str = 2030 "text";
+ MESSAGE_KIND: &str = b"kind";
+ MESSAGE_TEXT: &str = b"text";
- STATGROUP_TITLE: &str = 2039 "title";
- STATGROUP_BIN: Object = 2040 "bin";
+ STATGROUP_TITLE: &str = b"titl";
+ STATGROUP_BIN: Object = b"bin1";
- STAT_NAME: &str = 2038 "name";
- STAT_COUNT: u64 = 2031 "count";
- STAT_TOTAL_SIZE: u64 = 2032 "total_size";
- STAT_TOTAL_DURATION: f64 = 2033 "total_duration";
- STAT_MAX_SIZE: u64 = 2036 "max_size";
- STAT_MAX_DURATION: f64 = 2037 "max_duration";
+ STAT_NAME: &str = b"name";
+ STAT_COUNT: u64 = b"cont";
+ STAT_TOTAL_SIZE: u64 = b"tlsz";
+ STAT_TOTAL_DURATION: f64 = b"tldu";
+ STAT_MAX_SIZE: u64 = b"mxsz";
+ STAT_MAX_DURATION: f64 = b"mxdu";
}
enums! {
- NLSTYLE_GRID = 1023 "grid";
- NLSTYLE_INLINE = 1024 "inline";
- NLSTYLE_LIST = 1025 "list";
+ NLSTYLE_GRID = b"grid";
+ NLSTYLE_INLINE = b"inli";
+ NLSTYLE_LIST = b"list";
}
// use crate::user::{NodeUserData, User};
diff --git a/common/src/internal.rs b/common/src/internal.rs
index 94876f1..58a2dae 100644
--- a/common/src/internal.rs
+++ b/common/src/internal.rs
@@ -7,6 +7,6 @@
use jellyobject::fields;
fields! {
- IM_PATH: &str = 0x11001 "path";
- IM_MTIME: u64 = 0x11002 "mtime";
+ IM_PATH: &str = b"Ipth";
+ IM_MTIME: u64 = b"Imtm";
}
diff --git a/common/src/lib.rs b/common/src/lib.rs
index 4f8ffca..d94c72c 100644
--- a/common/src/lib.rs
+++ b/common/src/lib.rs
@@ -15,24 +15,3 @@ pub use jellystream_types as stream;
pub use api::*;
pub use node::*;
pub use user::*;
-
-use jellyobject::{Registry, TypedTag};
-use std::sync::LazyLock;
-
-pub static TAGREG: LazyLock<Registry> = LazyLock::new(|| {
- let mut reg = Registry::default();
- node::register_fields(&mut reg);
- node::register_enums(&mut reg);
- user::register_fields(&mut reg);
- api::register_fields(&mut reg);
- api::register_enums(&mut reg);
- internal::register_fields(&mut reg);
- reg
-});
-
-#[test]
-fn check_tag_conflicts() {
- let _ = &*TAGREG;
-}
-
-pub struct Identifier(pub TypedTag<&'static str>, pub String);
diff --git a/common/src/node.rs b/common/src/node.rs
index 60544e2..42e07ca 100644
--- a/common/src/node.rs
+++ b/common/src/node.rs
@@ -9,125 +9,123 @@ use jellyobject::{Object, Tag, enums, fields};
fields! {
// Tag counter: 111
- NO_KIND: Tag = 1 "kind";
- NO_TITLE: &str = 2 "title";
- NO_PARENT: u64 = 3 "parent"; // multi
- NO_SUBTITLE: &str = 38 "subtitle";
- NO_TAGLINE: &str = 4 "tagline";
- NO_DESCRIPTION: &str = 5 "description";
- NO_RELEASEDATE: i64 = 6 "releasedate";
- NO_DURATION: f64 = 39 "duration";
- NO_INDEX: u64 = 7 "index";
- NO_SEASON_INDEX: u64 = 8 "season_index";
- NO_TRACK: Object = 9 "track"; // multi
- NO_CHAPTER: Object = 32 "chapter"; // multi
- NO_TAG: &str = 10 "tag"; // multi
- NO_RATINGS: Object = 11 "ratings";
- NO_PICTURES: Object = 12 "pictures";
- NO_IDENTIFIERS: Object = 13 "identifiers";
- NO_VISIBILITY: Tag = 14 "visibility";
- NO_STORAGE_SIZE: u64 = 15 "storage_size";
- NO_CREDIT: Object = 33 "credit"; // multi
- NO_SLUG: &str = 37 "slug";
+ NO_KIND: Tag = b"kind";
+ NO_TITLE: &str = b"titl";
+ NO_PARENT: u64 = b"prnt"; // multi
+ NO_SUBTITLE: &str = b"sbtl";
+ NO_TAGLINE: &str = b"tgln";
+ NO_DESCRIPTION: &str = b"desc";
+ NO_RELEASEDATE: i64 = b"rldt";
+ NO_DURATION: f64 = b"durn";
+ NO_INDEX: u64 = b"indx";
+ NO_SEASON_INDEX: u64 = b"sidx";
+ NO_TRACK: Object = b"trak"; // multi
+ NO_CHAPTER: Object = b"chpt"; // multi
+ NO_TAG: &str = b"tag1"; // multi
+ NO_RATINGS: Object = b"rtng";
+ NO_PICTURES: Object = b"pict";
+ NO_IDENTIFIERS: Object = b"iden";
+ NO_VISIBILITY: Tag = b"visi";
+ NO_STORAGE_SIZE: u64 = b"stsz";
+ NO_CREDIT: Object = b"crdt"; // multi
+ NO_SLUG: &str = b"slug";
- CR_NODE: u64 = 34 "node";
- CR_KIND: Tag = 35 "kind";
- CR_ROLE: &str = 36 "role"; // multi
+ CR_NODE: u64 = b"node";
+ CR_KIND: Tag = b"kind";
+ CR_ROLE: &str = b"role"; // multi
- TR_KIND: Tag = 16 "kind";
- TR_SOURCE: Object = 17 "source";
- TR_NAME: &str = 18 "name";
- TR_CODEC: &str = 19 "codec";
- TR_LANGUAGE: &str = 20 "language"; // BCP 47
- TR_RATE: f64 = 23 "rate";
- TR_BIT_DEPTH: u32 = 25 "bit_depth";
- TR_CHANNELS: u32 = 28 "channels";
- TR_PIXEL_WIDTH: u32 = 26 "pixel_width";
- TR_PIXEL_HEIGHT: u32 = 27 "pixel_height";
+ TR_KIND: Tag = b"kind";
+ TR_SOURCE: Object = b"sour";
+ TR_NAME: &str = b"name";
+ TR_CODEC: &str = b"codc";
+ TR_LANGUAGE: &str = b"lang"; // BCP 47
+ TR_RATE: f64 = b"rate";
+ TR_BIT_DEPTH: u32 = b"bdep";
+ TR_CHANNELS: u32 = b"chnl";
+ TR_PIXEL_WIDTH: u32 = b"pwid";
+ TR_PIXEL_HEIGHT: u32 = b"phei";
- TRSOURCE_LOCAL_PATH: &str = 21 "local_path";
- TRSOURCE_LOCAL_TRACKNUM: u64 = 22 "local_tracknum";
+ TRSOURCE_LOCAL_PATH: &str = b"lpat";
+ TRSOURCE_LOCAL_TRACKNUM: u64 = b"ltrn";
- CH_START: f64 = 29 "start";
- CH_END: f64 = 30 "end";
- CH_NAME: &str = 31 "name";
+ CH_START: f64 = b"strt";
+ CH_END: f64 = b"end1";
+ CH_NAME: &str = b"name";
- PICT_COVER: &str = 45 "cover";
- PICT_BACKDROP: &str = 46 "backdrop";
+ PICT_COVER: &str = b"covr";
+ PICT_BACKDROP: &str = b"bdro";
- RTYP_IMDB: f64 = 47 "imdb";
- RTYP_TMDB: f64 = 48 "tmdb";
- RTYP_ROTTEN_TOMATOES: f64 = 49 "rotten_tomatoes";
- RTYP_METACRITIC: f64 = 50 "metacritic";
- RTYP_YOUTUBE_VIEWS: f64 = 51 "youtube_views";
- RTYP_YOUTUBE_LIKES: f64 = 52 "youtube_likes";
- RTYP_YOUTUBE_FOLLOWERS: f64 = 53 "youtube_followers";
- RTYP_TRAKT: f64 = 54 "trakt";
+ RTYP_IMDB: f64 = b"imdb";
+ RTYP_TMDB: f64 = b"tmdb";
+ RTYP_ROTTEN_TOMATOES: f64 = b"rtom";
+ RTYP_METACRITIC: f64 = b"mcri";
+ RTYP_YOUTUBE_VIEWS: f64 = b"ytvi";
+ RTYP_YOUTUBE_LIKES: f64 = b"ytli";
+ RTYP_YOUTUBE_SUBSCRIBERS: f64 = b"ytsu";
+ RTYP_TRAKT: f64 = b"trkt";
- IDENT_MUSICBRAINZ_RECORDING: &str = 55 "musicbrainz_recording";
- IDENT_MUSICBRAINZ_ARTIST: &str = 56 "musicbrainz_artist";
- IDENT_MUSICBRAINZ_RELEASE: &str = 57 "musicbrainz_release";
- IDENT_MUSICBRAINZ_RELEASE_GROUP: &str = 58 "musicbrainz_release_group";
- IDENT_ACOUST_ID_TRACK: &str = 59 "acoust_id_track";
- IDENT_YOUTUBE_VIDEO: &str = 60 "youtube_video";
- IDENT_YOUTUBE_CHANNEL: &str = 61 "youtube_channel";
- IDENT_YOUTUBE_CHANNEL_HANDLE: &str = 62 "youtube_channel_handle";
- IDENT_BANDCAMP: &str = 63 "bandcamp";
- IDENT_ISRC: &str = 64 "isrc";
- IDENT_BARCODE: &str = 65 "barcode";
- IDENT_TRAKT_MOVIE: &str = 66 "trakt_movie";
- IDENT_TRAKT_SHOW: &str = 67 "trakt_show";
- IDENT_TRAKT_SEASON: &str = 68 "trakt_season";
- IDENT_TRAKT_EPISODE: &str = 69 "trakt_episode";
- IDENT_IMDB: &str = 70 "imdb";
- IDENT_TMDB_SERIES: &str = 71 "tmdb_series";
- IDENT_TMDB_MOVIE: &str = 72 "tmdb_movie";
- IDENT_TVDB: &str = 73 "tvdb";
- IDENT_OMDB: &str = 74 "omdb";
- IDENT_VGMDB_ARTIST: &str = 75 "vgmdb_artist";
+ IDENT_MUSICBRAINZ_RECORDING: &str = b"mbrc";
+ IDENT_MUSICBRAINZ_ARTIST: &str = b"mbar";
+ IDENT_MUSICBRAINZ_RELEASE: &str = b"mbrl";
+ IDENT_MUSICBRAINZ_RELEASE_GROUP: &str = b"mbrg";
+ IDENT_ACOUST_ID_TRACK: &str = b"actr";
+ IDENT_YOUTUBE_VIDEO: &str = b"ytvi";
+ IDENT_YOUTUBE_CHANNEL: &str = b"ytc1";
+ IDENT_YOUTUBE_CHANNEL_HANDLE: &str = b"ytch";
+ IDENT_BANDCAMP: &str = b"bcmp";
+ IDENT_ISRC: &str = b"isrc";
+ IDENT_BARCODE: &str = b"barc";
+ IDENT_TRAKT_MOVIE: &str = b"trmv";
+ IDENT_TRAKT_SHOW: &str = b"trsh";
+ IDENT_TRAKT_SEASON: &str = b"trse";
+ IDENT_TRAKT_EPISODE: &str = b"trep";
+ IDENT_IMDB: &str = b"imdb";
+ IDENT_TMDB_SERIES: &str = b"tmse";
+ IDENT_TMDB_MOVIE: &str = b"tmmv";
+ IDENT_TVDB: &str = b"tvdb";
+ IDENT_OMDB: &str = b"omdb";
+ IDENT_VGMDB_ARTIST: &str = b"vgar";
}
-pub type Kind = Tag;
-
enums! {
- VISI_HIDDEN = 76 "hidden";
- VISI_REDUCED = 77 "reduced";
- VISI_VISIBLE = 78 "visible";
+ VISI_HIDDEN = b"hidn";
+ VISI_REDUCED = b"rdcd";
+ VISI_VISIBLE = b"visi";
- TRKIND_VIDEO = 79 "video";
- TRKIND_AUDIO = 80 "audio";
- TRKIND_TEXT = 81 "text";
- TRKIND_UNKNOWN = 82 "unknown";
+ TRKIND_VIDEO = b"vide";
+ TRKIND_AUDIO = b"audi";
+ TRKIND_TEXT = b"text";
+ TRKIND_UNKNOWN = b"unkn";
- KIND_MOVIE = 83 "movie";
- KIND_VIDEO = 84 "video";
- KIND_MUSIC = 85 "music";
- KIND_SHORTFORMVIDEO = 86 "shortformvideo";
- KIND_COLLECTION = 87 "collection";
- KIND_CHANNEL = 88 "channel";
- KIND_SHOW = 89 "show";
- KIND_SERIES = 90 "series";
- KIND_SEASON = 91 "season";
- KIND_EPISODE = 92 "episode";
+ KIND_MOVIE = b"movi";
+ KIND_VIDEO = b"vide";
+ KIND_MUSIC = b"musi";
+ KIND_SHORTFORMVIDEO = b"sfvi";
+ KIND_COLLECTION = b"coll";
+ KIND_CHANNEL = b"chnl";
+ KIND_SHOW = b"show";
+ KIND_SERIES = b"seri";
+ KIND_SEASON = b"sesn";
+ KIND_EPISODE = b"epsd";
- CRCAT_CAST = 93 "cast";
- CRCAT_WRITING = 94 "writing";
- CRCAT_DIRECTING = 95 "directing";
- CRCAT_ART = 96 "art";
- CRCAT_SOUND = 97 "sound";
- CRCAT_CAMERA = 98 "camera";
- CRCAT_LIGHTING = 99 "lighting";
- CRCAT_CREW = 100 "crew";
- CRCAT_EDITING = 101 "editing";
- CRCAT_PRODUCTION = 102 "production";
- CRCAT_VFX = 0x200b "vfx";
- CRCAT_COSTUME_MAKEUP = 103 "costume_makeup";
- CRCAT_CREATED_BY = 104 "created_by";
- CRCAT_PERFORMANCE = 105 "performance";
- CRCAT_INSTRUMENT = 106 "instrument";
- CRCAT_VOCAL = 107 "vocal";
- CRCAT_ARRANGER = 108 "arranger";
- CRCAT_PRODUCER = 109 "producer";
- CRCAT_ENGINEER = 110 "engineer";
+ CRCAT_CAST = b"cast";
+ CRCAT_WRITING = b"writ";
+ CRCAT_DIRECTING = b"dire";
+ CRCAT_ART = b"art1";
+ CRCAT_SOUND = b"sond";
+ CRCAT_CAMERA = b"came";
+ CRCAT_LIGHTING = b"ligh";
+ CRCAT_CREW = b"crew";
+ CRCAT_EDITING = b"edit";
+ CRCAT_PRODUCTION = b"prod";
+ CRCAT_VFX = b"vfx1";
+ CRCAT_COSTUME_MAKEUP = b"coma";
+ CRCAT_CREATED_BY = b"crby";
+ CRCAT_PERFORMANCE = b"perf";
+ CRCAT_INSTRUMENT = b"inst";
+ CRCAT_VOCAL = b"voca";
+ CRCAT_ARRANGER = b"arra";
+ CRCAT_PRODUCER = b"pro2";
+ CRCAT_ENGINEER = b"engi";
}
diff --git a/common/src/user.rs b/common/src/user.rs
index 47716da..fcb8eea 100644
--- a/common/src/user.rs
+++ b/common/src/user.rs
@@ -7,11 +7,11 @@
use jellyobject::fields;
fields! {
- USER_LOGIN: &str = 1001 "login";
- USER_PASSWORD: &[u8] = 1002 "password";
- USER_NAME: &str = 1003 "name";
- USER_ADMIN: () = 1004 "admin";
+ USER_LOGIN: &str = b"Ulgn";
+ USER_PASSWORD: &[u8] = b"Upwd";
+ USER_NAME: &str = b"Unam";
+ USER_ADMIN: () = b"Uadm";
- UDATA_WATCHED: () = 1005 "watched";
- UDATA_RATING: f64 = 1006 "rating";
+ UDATA_WATCHED: () = b"Dwat";
+ UDATA_RATING: f64 = b"Drat";
}