social.colibri.community
Schema Diff
+18 -2
Compatibility Analysis
Backward Compatible
Backward compatible. 4 non-breaking changes.
Non-Breaking Changes (4)
- AddedVertex AddedVertex { vertex_id: "social.colibri.community:body.banner" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.community:body.linkEmbeds" }
- AddedEdge AddedEdge { src: "social.colibri.community:body", tgt: "social.colibri.community:body.banner", kind: "prop", name: Some("banner") }
- AddedEdge AddedEdge { src: "social.colibri.community:body", tgt: "social.colibri.community:body.linkEmbeds", kind: "prop", name: Some("linkEmbeds") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "social.colibri.community:body.banner" }AddedVertex { vertex_id: "social.colibri.community:body.linkEmbeds" }
Additional Notes
- Non-breaking: AddedEdge { src: "social.colibri.community:body", tgt: "social.colibri.community:body.banner", kind: "prop", name: Some("banner") }
- Non-breaking: AddedEdge { src: "social.colibri.community:body", tgt: "social.colibri.community:body.linkEmbeds", kind: "prop", name: Some("linkEmbeds") }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"description": "A community, or \"server\", is where users join to interact with each other on Colibri. Singleton record on the community DID's repo.",
6
6
"key": "literal:self",
7
7
"record": {
8
8
"properties": {
9
9
"$type": {
10
10
"description": "The type of the record.",
11
11
"format": "nsid",
12
12
"type": "string"
13
13
},
14
14
"appview": {
15
15
"description": "DID of the AppView that administers this community and acts as its off-protocol hub (Humming presence relay and voice SFU host). Written by the credential-holding AppView. Consumers that find this field absent fall back to did:web:api.colibri.social.",
16
16
"format": "did",
17
17
"type": "string"
18
18
},
19
+
"banner": {
20
+
"accept": [
21
+
"image/jpeg",
22
+
"image/png",
23
+
"image/gif",
24
+
"image/webp"
25
+
],
26
+
"description": "A banner for the community that will be shown to users.",
27
+
"type": "blob"
28
+
},
19
29
"categoryOrder": {
20
30
"description": "The order of the categories in this community.",
21
31
"items": {
22
32
"description": "A category in this community.",
23
33
"format": "record-key",
24
34
"type": "string"
25
35
},
26
36
"type": "array"
27
37
},
28
38
"description": {
29
39
"default": "",
30
40
"description": "A description of the community.",
31
41
"maxLength": 256,
32
42
"type": "string"
33
43
},
44
+
"linkEmbeds": {
45
+
"default": true,
46
+
"description": "Whether link previews are displayed in this community by default. Individual channels may override this.",
47
+
"type": "boolean"
48
+
},
34
49
"migratedFrom": {
35
50
"description": "Set on a community created by migrating a legacy community. Points at the legacy community record this one replaces.",
36
51
"format": "at-uri",
37
52
"type": "string"
38
53
},
39
54
"migratedTo": {
40
55
"description": "Set on a legacy community record once it has been migrated. Points at the new community record that replaces it; consumers treat this community as retired and hide it.",
41
56
"format": "at-uri",
42
57
"type": "string"
43
58
},
44
59
"name": {
45
60
"default": "New Community",
46
61
"description": "The name of the community.",
47
62
"maxLength": 32,
48
63
"minLength": 1,
49
64
"type": "string"
50
65
},
51
66
"picture": {
52
67
"accept": [
53
68
"image/jpeg",
54
69
"image/png",
55
-
"image/gif"
70
+
"image/gif",
71
+
"image/webp"
56
72
],
57
73
"description": "An image for the community that will be shown to users.",
58
74
"type": "blob"
59
75
},
60
76
"requiresApprovalToJoin": {
61
77
"default": true,
62
78
"description": "Whether users can chat in this community without the owner having to create an acknowledgement record.",
63
79
"type": "boolean"
64
80
}
65
81
},
66
82
"required": [
67
83
"name",
68
84
"description",
69
85
"categoryOrder",
70
86
"requiresApprovalToJoin"
71
87
],
72
88
"type": "object"
73
89
},
74
90
"type": "record"
75
91
}
76
92
},
77
93
"id": "social.colibri.community",
78
94
"lexicon": 1,
79
-
"revision": 4
95
+
"revision": 5
80
96
}