app.offprint.richtext.facet
Schema Diff
+28 -1
1
1
{
2
2
"id": "app.offprint.richtext.facet",
3
3
"defs": {
4
4
"bold": {
5
5
"type": "object",
6
6
"properties": []
7
7
},
8
8
"code": {
9
9
"type": "object",
10
10
"properties": []
11
11
},
12
12
"link": {
13
13
"type": "object",
14
14
"required": [
15
15
"uri"
16
16
],
17
17
"properties": {
18
18
"uri": {
19
19
"type": "string",
20
20
"format": "uri",
21
21
"required": true
22
22
}
23
23
}
24
24
},
25
25
"main": {
26
26
"type": "object",
27
27
"required": [
28
28
"index",
29
29
"features"
30
30
],
31
31
"properties": {
32
32
"index": {
33
33
"ref": "#byteSlice",
34
34
"type": "ref",
35
35
"required": true
36
36
},
37
37
"features": {
38
38
"type": "array",
39
39
"items": {
40
40
"refs": [
41
41
"#bold",
42
42
"#italic",
43
43
"#underline",
44
44
"#strikethrough",
45
45
"#code",
46
46
"#highlight",
47
47
"#link",
48
-
"#mention"
48
+
"#mention",
49
+
"#webMention"
49
50
],
50
51
"type": "union"
51
52
},
52
53
"required": true
53
54
}
54
55
}
55
56
},
56
57
"italic": {
57
58
"type": "object",
58
59
"properties": []
59
60
},
60
61
"mention": {
61
62
"type": "object",
62
63
"required": [
63
64
"did"
64
65
],
65
66
"properties": {
66
67
"did": {
67
68
"type": "string",
68
69
"format": "did",
69
70
"required": true
70
71
},
71
72
"handle": {
72
73
"type": "string",
73
74
"format": "handle",
74
75
"description": "Optional cached handle for display"
75
76
}
76
77
}
77
78
},
78
79
"byteSlice": {
79
80
"type": "object",
80
81
"required": [
81
82
"byteStart",
82
83
"byteEnd"
83
84
],
84
85
"properties": {
85
86
"byteEnd": {
86
87
"type": "integer",
87
88
"minimum": 0,
88
89
"required": true,
89
90
"description": "End index (exclusive), zero-indexed byte offset in UTF-8 encoded text."
90
91
},
91
92
"byteStart": {
92
93
"type": "integer",
93
94
"minimum": 0,
94
95
"required": true,
95
96
"description": "Start index (inclusive), zero-indexed byte offset in UTF-8 encoded text."
96
97
}
97
98
}
98
99
},
99
100
"highlight": {
100
101
"type": "object",
101
102
"properties": {
102
103
"color": {
103
104
"type": "string",
104
105
"description": "Optional highlight color (hex or CSS color)"
105
106
}
106
107
}
107
108
},
108
109
"underline": {
109
110
"type": "object",
110
111
"properties": []
111
112
},
113
+
"webMention": {
114
+
"type": "object",
115
+
"required": [
116
+
"uri",
117
+
"title"
118
+
],
119
+
"properties": {
120
+
"uri": {
121
+
"type": "string",
122
+
"format": "uri",
123
+
"required": true,
124
+
"description": "The URL being mentioned"
125
+
},
126
+
"title": {
127
+
"type": "string",
128
+
"required": true,
129
+
"description": "Page title for display",
130
+
"maxGraphemes": 100
131
+
},
132
+
"siteName": {
133
+
"type": "string",
134
+
"description": "Name of the website",
135
+
"maxGraphemes": 50
136
+
}
137
+
}
138
+
},
112
139
"strikethrough": {
113
140
"type": "object",
114
141
"properties": []
115
142
}
116
143
},
117
144
"$type": "com.atproto.lexicon.schema",
118
145
"lexicon": 1
119
146
}