]> Untitled Git - lemmy.git/blob - crates/apub/src/extensions/context.rs
1d6f83bd74df9519d3454355cf506aeb18abc897
[lemmy.git] / crates / apub / src / extensions / context.rs
1 use activitystreams::{base::AnyBase, context, primitives::OneOrMany};
2 use serde_json::json;
3 use url::Url;
4
5 pub fn lemmy_context() -> OneOrMany<AnyBase> {
6   let context_ext = AnyBase::from_arbitrary_json(json!(
7   {
8     "sc": "http://schema.org#",
9     "sensitive": "as:sensitive",
10     "stickied": "as:stickied",
11     "pt": "https://join-lemmy.org#",
12     "comments_enabled": {
13       "type": "sc:Boolean",
14       "id": "pt:commentsEnabled"
15     },
16     "moderators": "as:moderators",
17     "matrixUserId": {
18       "type": "sc:Text",
19       "id": "as:alsoKnownAs"
20     },
21   }))
22   .expect("parse context");
23   OneOrMany::from(vec![
24     AnyBase::from(context()),
25     context_ext,
26     AnyBase::from(Url::parse("https://w3id.org/security/v1").expect("parse context")),
27   ])
28 }