social.colibri.beta.emoji.defs

colibri.social

Schema Diff

+126 -6

From

CID
bafyreiebaa2mftp...
Indexed At
2026-10-18 08:25 UTC
View this version

To

CID
bafyreihmy73xj5b...
Indexed At
2026-10-18 11:51 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

13 breaking changes, 31 non-breaking changes.

Breaking Changes (13)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#libraryView", src: "social.colibri.beta.emoji.defs#libraryView", tgt: "social.colibri.beta.emoji.defs#libraryView.follows", kind: "prop", name: Some("follows") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#libraryView", src: "social.colibri.beta.emoji.defs#libraryView", tgt: "social.colibri.beta.emoji.defs#libraryView.own", kind: "prop", name: Some("own") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.emojis", kind: "prop", name: Some("emojis") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.owner", kind: "prop", name: Some("owner") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.subject", kind: "prop", name: Some("subject") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.createdAt", kind: "prop", name: Some("createdAt") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.kind", kind: "prop", name: Some("kind") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.state", kind: "prop", name: Some("state") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.uri", kind: "prop", name: Some("uri") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner", src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.did", kind: "prop", name: Some("did") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner", src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.kind", kind: "prop", name: Some("kind") }
  • RemovedVertex RemovedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiView.copyOf" }
  • RemovedEdge RemovedEdge { src: "social.colibri.beta.emoji.defs#emojiView", tgt: "social.colibri.beta.emoji.defs#emojiView.copyOf", kind: "prop", name: Some("copyOf") }
Non-Breaking Changes (31)
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.avatar" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.did" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.displayName" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.handle" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.kind" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.createdAt" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.emojis" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.emojis:items" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.kind" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.owner" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.pack" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.state" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.subject" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.uri" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#libraryView" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#libraryView.follows" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#libraryView.follows:items" }
  • AddedVertex AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#libraryView.own" }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.avatar", kind: "prop", name: Some("avatar") }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.displayName", kind: "prop", name: Some("displayName") }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.handle", kind: "prop", name: Some("handle") }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.pack", kind: "prop", name: Some("pack") }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#followView.emojis", tgt: "social.colibri.beta.emoji.defs#followView.emojis:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#followView.emojis:items", tgt: "social.colibri.beta.emoji.defs#emojiView", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#followView.owner", tgt: "social.colibri.beta.emoji.defs#emojiOwner", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#followView.pack", tgt: "social.colibri.beta.emoji.defs#packView", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#libraryView.follows", tgt: "social.colibri.beta.emoji.defs#libraryView.follows:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#libraryView.follows:items", tgt: "social.colibri.beta.emoji.defs#followView", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "social.colibri.beta.emoji.defs#libraryView.own", tgt: "social.colibri.beta.emoji.defs#catalogView", kind: "ref", name: None }

Migration Guidance

Removed Elements

  • RemovedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiView.copyOf" }

Added Elements

  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.avatar" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.did" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.displayName" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.handle" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner.kind" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.createdAt" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.emojis" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.emojis:items" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.kind" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.owner" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.pack" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.state" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.subject" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#followView.uri" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#libraryView" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#libraryView.follows" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#libraryView.follows:items" }
  • AddedVertex { vertex_id: "social.colibri.beta.emoji.defs#libraryView.own" }

Additional Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#libraryView", src: "social.colibri.beta.emoji.defs#libraryView", tgt: "social.colibri.beta.emoji.defs#libraryView.follows", kind: "prop", name: Some("follows") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#libraryView", src: "social.colibri.beta.emoji.defs#libraryView", tgt: "social.colibri.beta.emoji.defs#libraryView.own", kind: "prop", name: Some("own") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.emojis", kind: "prop", name: Some("emojis") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.owner", kind: "prop", name: Some("owner") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.subject", kind: "prop", name: Some("subject") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.createdAt", kind: "prop", name: Some("createdAt") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.kind", kind: "prop", name: Some("kind") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.state", kind: "prop", name: Some("state") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#followView", src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.uri", kind: "prop", name: Some("uri") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner", src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.did", kind: "prop", name: Some("did") }
  • Breaking: RequiredEdgeAdded { vertex_id: "social.colibri.beta.emoji.defs#emojiOwner", src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.kind", kind: "prop", name: Some("kind") }
  • Breaking: RemovedEdge { src: "social.colibri.beta.emoji.defs#emojiView", tgt: "social.colibri.beta.emoji.defs#emojiView.copyOf", kind: "prop", name: Some("copyOf") }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.avatar", kind: "prop", name: Some("avatar") }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.displayName", kind: "prop", name: Some("displayName") }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#emojiOwner", tgt: "social.colibri.beta.emoji.defs#emojiOwner.handle", kind: "prop", name: Some("handle") }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#followView", tgt: "social.colibri.beta.emoji.defs#followView.pack", kind: "prop", name: Some("pack") }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#followView.emojis", tgt: "social.colibri.beta.emoji.defs#followView.emojis:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#followView.emojis:items", tgt: "social.colibri.beta.emoji.defs#emojiView", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#followView.owner", tgt: "social.colibri.beta.emoji.defs#emojiOwner", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#followView.pack", tgt: "social.colibri.beta.emoji.defs#packView", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#libraryView.follows", tgt: "social.colibri.beta.emoji.defs#libraryView.follows:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#libraryView.follows:items", tgt: "social.colibri.beta.emoji.defs#followView", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "social.colibri.beta.emoji.defs#libraryView.own", tgt: "social.colibri.beta.emoji.defs#catalogView", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "catalogView": {
5 -
      "description": "Every custom emoji and pack in one repo. For a community this is its own emoji. For a user it is the emoji they uploaded or copied.",
5 +
      "description": "Every custom emoji and pack in one repo.",
6 6
      "properties": {
7 7
        "emojis": {
8 8
          "description": "Every emoji in the repo.",
9 9
          "items": {
10 10
            "ref": "#emojiView",
11 11
            "type": "ref"
12 12
          },
13 13
          "type": "array"
14 14
        },
15 15
        "owner": {
16 16
          "description": "The repo the catalog belongs to.",
17 17
          "format": "did",
18 18
          "type": "string"
19 19
        },
20 20
        "packs": {
21 21
          "description": "Every pack in the repo.",
22 22
          "items": {
23 23
            "ref": "#packView",
24 24
            "type": "ref"
25 25
          },
26 26
          "type": "array"
27 27
        }
28 28
      },
29 29
      "required": [
30 30
        "owner",
31 31
        "emojis",
32 32
        "packs"
33 33
      ],
34 34
      "type": "object"
35 35
    },
36 36
    "emojiImage": {
37 37
      "description": "One stored rendition of an emoji.",
38 38
      "properties": {
39 39
        "animated": {
40 40
          "description": "Whether the format is animated.",
41 41
          "type": "boolean"
42 42
        },
43 43
        "cid": {
44 44
          "description": "The blob's CID in the owner's repo.",
45 45
          "format": "cid",
46 46
          "type": "string"
47 47
        },
48 48
        "format": {
49 49
          "description": "The image format.",
50 50
          "knownValues": [
51 51
            "png",
52 52
            "webp",
53 53
            "gif",
54 54
            "apng",
55 55
            "lottie",
56 56
            "other"
57 57
          ],
58 58
          "type": "string"
59 59
        },
60 60
        "mimeType": {
61 61
          "description": "The blob's MIME type.",
62 62
          "type": "string"
63 63
        },
64 64
        "pixels": {
65 65
          "description": "The rendition's longest edge in pixels, when the provider fixes one.",
66 66
          "minimum": 1,
67 67
          "type": "integer"
68 68
        },
69 69
        "size": {
70 70
          "description": "The blob's size in bytes.",
71 71
          "minimum": 0,
72 72
          "type": "integer"
73 73
        }
74 74
      },
75 75
      "required": [
76 76
        "cid",
77 77
        "format",
78 78
        "animated"
79 79
      ],
80 80
      "type": "object"
81 81
    },
82 +
    "emojiOwner": {
83 +
      "description": "The user or community that holds an emoji or pack.",
84 +
      "properties": {
85 +
        "avatar": {
86 +
          "description": "The user's avatar or the community's icon.",
87 +
          "format": "uri",
88 +
          "type": "string"
89 +
        },
90 +
        "did": {
91 +
          "description": "The owner.",
92 +
          "format": "did",
93 +
          "type": "string"
94 +
        },
95 +
        "displayName": {
96 +
          "description": "The user's display name or the community's name.",
97 +
          "type": "string"
98 +
        },
99 +
        "handle": {
100 +
          "description": "The owner's handle.",
101 +
          "format": "handle",
102 +
          "type": "string"
103 +
        },
104 +
        "kind": {
105 +
          "description": "Whether the owner is a user or a community.",
106 +
          "knownValues": [
107 +
            "user",
108 +
            "community"
109 +
          ],
110 +
          "type": "string"
111 +
        }
112 +
      },
113 +
      "required": [
114 +
        "did",
115 +
        "kind"
116 +
      ],
117 +
      "type": "object"
118 +
    },
82 119
    "emojiView": {
83 120
      "description": "A custom emoji, normalised from its provider's record.",
84 121
      "properties": {
85 122
        "adultOnly": {
86 123
          "description": "Whether the owner marked the emoji as adult content.",
87 124
          "type": "boolean"
88 125
        },
89 126
        "alt": {
90 127
          "description": "Alt text for the image.",
91 128
          "type": "string"
92 129
        },
93 130
        "cid": {
94 131
          "description": "The record's CID.",
95 132
          "format": "cid",
96 133
          "type": "string"
97 134
        },
98 -
        "copyOf": {
99 -
          "description": "The emoji this one was copied from.",
100 -
          "format": "at-uri",
101 -
          "type": "string"
102 -
        },
103 135
        "createdAt": {
104 136
          "description": "When the record was created.",
105 137
          "format": "datetime",
106 138
          "type": "string"
107 139
        },
108 140
        "fallback": {
109 141
          "description": "The text shown where the image cannot render.",
110 142
          "type": "string"
111 143
        },
112 144
        "images": {
113 145
          "description": "Every rendition the record carries.",
114 146
          "items": {
115 147
            "ref": "#emojiImage",
116 148
            "type": "ref"
117 149
          },
118 150
          "type": "array"
119 151
        },
120 152
        "name": {
121 153
          "description": "The name without colons.",
122 154
          "type": "string"
123 155
        },
124 156
        "owner": {
125 157
          "description": "The repo that holds the record and its blobs.",
126 158
          "format": "did",
127 159
          "type": "string"
128 160
        },
129 161
        "provider": {
130 162
          "description": "The emoji provider whose lexicon the record uses.",
131 163
          "knownValues": [
132 164
            "blue.moji"
133 165
          ],
134 166
          "type": "string"
135 167
        },
136 168
        "uri": {
137 169
          "description": "The emoji's record URI.",
138 170
          "format": "at-uri",
139 171
          "type": "string"
140 172
        }
141 173
      },
142 174
      "required": [
143 175
        "uri",
144 176
        "provider",
145 177
        "owner",
146 178
        "name",
147 179
        "images",
148 180
        "createdAt"
149 181
      ],
150 182
      "type": "object"
151 183
    },
184 +
    "followView": {
185 +
      "description": "A pack or single emoji the user follows, resolved against the owner's current catalog.",
186 +
      "properties": {
187 +
        "createdAt": {
188 +
          "description": "When the user started following.",
189 +
          "format": "datetime",
190 +
          "type": "string"
191 +
        },
192 +
        "emojis": {
193 +
          "description": "The pack's current emoji in pack order, or the single followed emoji. Empty unless state is available.",
194 +
          "items": {
195 +
            "ref": "#emojiView",
196 +
            "type": "ref"
197 +
          },
198 +
          "type": "array"
199 +
        },
200 +
        "kind": {
201 +
          "description": "Whether the subject is a pack or a single emoji.",
202 +
          "knownValues": [
203 +
            "pack",
204 +
            "emoji"
205 +
          ],
206 +
          "type": "string"
207 +
        },
208 +
        "owner": {
209 +
          "description": "Who holds the subject.",
210 +
          "ref": "#emojiOwner",
211 +
          "type": "ref"
212 +
        },
213 +
        "pack": {
214 +
          "description": "The pack, when kind is pack and state is available.",
215 +
          "ref": "#packView",
216 +
          "type": "ref"
217 +
        },
218 +
        "state": {
219 +
          "description": "available when the subject resolves. missing when the owner deleted it. unreachable when the owner's repo cannot be read, for example a deactivated or taken down account.",
220 +
          "knownValues": [
221 +
            "available",
222 +
            "missing",
223 +
            "unreachable"
224 +
          ],
225 +
          "type": "string"
226 +
        },
227 +
        "subject": {
228 +
          "description": "The followed pack or emoji.",
229 +
          "format": "at-uri",
230 +
          "type": "string"
231 +
        },
232 +
        "uri": {
233 +
          "description": "The follow record.",
234 +
          "format": "at-uri",
235 +
          "type": "string"
236 +
        }
237 +
      },
238 +
      "required": [
239 +
        "uri",
240 +
        "subject",
241 +
        "kind",
242 +
        "state",
243 +
        "owner",
244 +
        "emojis",
245 +
        "createdAt"
246 +
      ],
247 +
      "type": "object"
248 +
    },
249 +
    "libraryView": {
250 +
      "description": "A user's emoji library.",
251 +
      "properties": {
252 +
        "follows": {
253 +
          "description": "Everything the user follows, oldest follow first.",
254 +
          "items": {
255 +
            "ref": "#followView",
256 +
            "type": "ref"
257 +
          },
258 +
          "type": "array"
259 +
        },
260 +
        "own": {
261 +
          "description": "The emoji and packs in the user's own repo.",
262 +
          "ref": "#catalogView",
263 +
          "type": "ref"
264 +
        }
265 +
      },
266 +
      "required": [
267 +
        "own",
268 +
        "follows"
269 +
      ],
270 +
      "type": "object"
271 +
    },
152 272
    "packView": {
153 273
      "description": "A named group of custom emoji, normalised from its provider's records.",
154 274
      "properties": {
155 275
        "createdAt": {
156 276
          "description": "When the record was created.",
157 277
          "format": "datetime",
158 278
          "type": "string"
159 279
        },
160 280
        "description": {
161 281
          "description": "The pack's description.",
162 282
          "type": "string"
163 283
        },
164 284
        "emojis": {
165 285
          "description": "The URIs of the emoji in the pack, in the order they were added. Only emoji present in the catalog are listed.",
166 286
          "items": {
167 287
            "format": "at-uri",
168 288
            "type": "string"
169 289
          },
170 290
          "type": "array"
171 291
        },
172 292
        "name": {
173 293
          "description": "The pack's name.",
174 294
          "type": "string"
175 295
        },
176 296
        "owner": {
177 297
          "description": "The repo that holds the pack.",
178 298
          "format": "did",
179 299
          "type": "string"
180 300
        },
181 301
        "provider": {
182 302
          "description": "The emoji provider whose lexicon the record uses.",
183 303
          "knownValues": [
184 304
            "blue.moji"
185 305
          ],
186 306
          "type": "string"
187 307
        },
188 308
        "uri": {
189 309
          "description": "The pack's record URI.",
190 310
          "format": "at-uri",
191 311
          "type": "string"
192 312
        }
193 313
      },
194 314
      "required": [
195 315
        "uri",
196 316
        "provider",
197 317
        "owner",
198 318
        "name",
199 319
        "emojis",
200 320
        "createdAt"
201 321
      ],
202 322
      "type": "object"
203 323
    }
204 324
  },
205 325
  "id": "social.colibri.beta.emoji.defs",
206 326
  "lexicon": 1
207 327
}

Compare Other Versions

Lexicon Garden

@