nostralink 0.2.1

Linked data library for nostr
Documentation
use super::lang::lang_jsonld;
use language::Language;
use serde_json::{json, Value};

/// Builds a <http://schema.org/VideoObject>
pub fn video_object(
    url: String,
    caption: Option<String>,
    language: Option<Language>,
) -> Value {
    let lang = match language {
        Some(l) => l,
        None => Language::EnGb,
    };

    let obj = json!({
        "@context": "https://schema.org",
        "@type": "VideoObject",
        "@id": url.to_owned(),
        "contentUrl": url.to_owned(),
        "inLanguage": lang_jsonld(lang),
        "caption": caption.unwrap_or_default()
    });

    obj
}