MCPcopy Create free account
hub / github.com/Moosync/Moosync / parse_canvaz

Function parse_canvaz

src-tauri/librespot/src/player.rs:131–166  ·  view source on GitHub ↗
(canvaz: EntityCanvazResponse)

Source from the content-addressed store, hash-verified

129
130#[tracing::instrument(level = "debug", skip(canvaz))]
131fn parse_canvaz(canvaz: EntityCanvazResponse) -> Result<CanvazResponse> {
132 Ok(CanvazResponse {
133 canvases: canvaz
134 .canvases
135 .iter()
136 .map(|c| {
137 let artist = CanvazArtist {
138 uri: c.artist.uri.clone(),
139 name: c.artist.name.clone(),
140 avatar: c.artist.avatar.clone(),
141 };
142 let type_ = match c.type_.enum_value_or_default() {
143 crate::canvaz::Type::IMAGE => Type::Image,
144 crate::canvaz::Type::VIDEO => Type::Video,
145 crate::canvaz::Type::VIDEO_LOOPING => Type::VideoLooping,
146 crate::canvaz::Type::VIDEO_LOOPING_RANDOM => Type::VideoLoopingRandom,
147 crate::canvaz::Type::GIF => Type::Gif,
148 };
149 Canvaz {
150 id: c.id.clone(),
151 url: c.url.clone(),
152 file_id: c.file_id.clone(),
153 type_,
154 entity_uri: c.entity_uri.clone(),
155 artist,
156 explicit: c.explicit,
157 uploaded_by: c.uploaded_by.clone(),
158 etag: c.etag.clone(),
159 canvas_uri: c.canvas_uri.clone(),
160 storylines_id: c.storylines_id.clone(),
161 }
162 })
163 .collect(),
164 ttl_in_seconds: canvaz.ttl_in_seconds,
165 })
166}
167
168#[tracing::instrument(level = "debug", skip(val))]
169fn validate_uri(val: &str) -> (Option<String>, Option<String>) {

Callers 1

get_canvasFunction · 0.85

Calls 1

cloneMethod · 0.80

Tested by

no test coverage detected