A better Rust ATProto crate

oops forgot to adjust cbor blob parsing

Changed files
+13 -17
crates
jacquard-common
src
types
+13 -17
crates/jacquard-common/src/types/value.rs
··· 634 634 None 635 635 } 636 636 }); 637 - if let Some(value) = blob.get("ref") { 638 - if let Ipld::Map(value) = value { 639 - if let Some(Ipld::String(value)) = value.get("$link") { 640 - let size = blob.get("size").and_then(|o| { 641 - if let Ipld::Integer(i) = o { 642 - Some(*i as i64) 643 - } else { 644 - None 645 - } 646 - }); 647 - if let (Some(mime_type), Some(size)) = (mime_type, size) { 648 - return Some(Blob { 649 - r#ref: Cid::str(value), 650 - mime_type: MimeType::raw(mime_type), 651 - size: size as usize, 652 - }); 653 - } 637 + if let Some(Ipld::Link(value)) = blob.get("ref") { 638 + let size = blob.get("size").and_then(|o| { 639 + if let Ipld::Integer(i) = o { 640 + Some(*i as i64) 641 + } else { 642 + None 654 643 } 644 + }); 645 + if let (Some(mime_type), Some(size)) = (mime_type, size) { 646 + return Some(Blob { 647 + r#ref: Cid::ipld(*value), 648 + mime_type: MimeType::raw(mime_type), 649 + size: size as usize, 650 + }); 655 651 } 656 652 } else if let Some(Ipld::String(value)) = blob.get("cid") { 657 653 if let Some(mime_type) = mime_type {