9579bec720
* lexicons: update descriptions in com.atproto.* * lexicons: update descriptions in app.bsky.* * Apply suggestions from code review Thanks Emily! Co-authored-by: Emily Liu <emilyliu7321@gmail.com> * codegen description-only Lexicon updates --------- Co-authored-by: Emily Liu <emilyliu7321@gmail.com>
52 lines
2.0 KiB
JSON
52 lines
2.0 KiB
JSON
{
|
|
"lexicon": 1,
|
|
"id": "app.bsky.richtext.facet",
|
|
"defs": {
|
|
"main": {
|
|
"type": "object",
|
|
"description": "Annotation of a sub-string within rich text.",
|
|
"required": ["index", "features"],
|
|
"properties": {
|
|
"index": { "type": "ref", "ref": "#byteSlice" },
|
|
"features": {
|
|
"type": "array",
|
|
"items": { "type": "union", "refs": ["#mention", "#link", "#tag"] }
|
|
}
|
|
}
|
|
},
|
|
"mention": {
|
|
"type": "object",
|
|
"description": "Facet feature for mention of another account. The text is usually a handle, including a '@' prefix, but the facet reference is a DID.",
|
|
"required": ["did"],
|
|
"properties": {
|
|
"did": { "type": "string", "format": "did" }
|
|
}
|
|
},
|
|
"link": {
|
|
"type": "object",
|
|
"description": "Facet feature for a URL. The text URL may have been simplified or truncated, but the facet reference should be a complete URL.",
|
|
"required": ["uri"],
|
|
"properties": {
|
|
"uri": { "type": "string", "format": "uri" }
|
|
}
|
|
},
|
|
"tag": {
|
|
"type": "object",
|
|
"description": "Facet feature for a hashtag. The text usually includes a '#' prefix, but the facet reference should not (except in the case of 'double hash tags').",
|
|
"required": ["tag"],
|
|
"properties": {
|
|
"tag": { "type": "string", "maxLength": 640, "maxGraphemes": 64 }
|
|
}
|
|
},
|
|
"byteSlice": {
|
|
"type": "object",
|
|
"description": "Specifies the sub-string range a facet feature applies to. Start index is inclusive, end index is exclusive. Indices are zero-indexed, counting bytes of the UTF-8 encoded text. NOTE: some languages, like Javascript, use UTF-16 or Unicode codepoints for string slice indexing; in these languages, convert to byte arrays before working with facets.",
|
|
"required": ["byteStart", "byteEnd"],
|
|
"properties": {
|
|
"byteStart": { "type": "integer", "minimum": 0 },
|
|
"byteEnd": { "type": "integer", "minimum": 0 }
|
|
}
|
|
}
|
|
}
|
|
}
|