{
"id": "page.corvus.facets",
"defs": {
"bold": {
"type": "object",
"properties": {},
"description": "A bold facet"
},
"link": {
"type": "object",
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "The URL of the linked resource"
}
},
"description": "A link facet"
},
"main": {
"type": "object",
"required": [
"index"
],
"properties": {
"index": {
"ref": "#index",
"type": "ref",
"description": "The atom range this facet covers"
},
"features": {
"type": "array",
"items": {
"refs": [
"#bold",
"#italic",
"#underline",
"#strikethrough",
"#link",
"#highlight"
],
"type": "union",
"closed": false
},
"description": "The features applied to the facet"
}
},
"description": "A facet"
},
"index": {
"type": "object",
"required": [
"atomStart",
"atomEnd"
],
"properties": {
"atomEnd": {
"type": "string",
"description": "The end atom id of the facet (inclusive) - formatted as `operationId.atomIdx`"
},
"atomStart": {
"type": "string",
"description": "The start atom id of the facet (inclusive) - formatted as `operationId.atomIdx`"
}
},
"description": "An atom range of a facet"
},
"italic": {
"type": "object",
"properties": {},
"description": "An italic facet"
},
"mention": {
"type": "object",
"properties": {
"did": {
"type": "string",
"format": "did",
"description": "The did of the mentioned user"
}
},
"description": "A mention facet"
},
"dateTime": {
"type": "object",
"properties": {
"value": {
"type": "string",
"format": "datetime",
"description": "The date/time value"
},
"dateOnly": {
"type": "boolean",
"default": false,
"description": "True if the time component should be ignored - defaults to false"
}
},
"description": "A date/time facet"
},
"highlight": {
"type": "object",
"properties": {
"color": {
"type": "string",
"description": "The color of the highlight"
}
},
"description": "A highlight facet"
},
"underline": {
"type": "object",
"properties": {},
"description": "An underline facet"
},
"strikethrough": {
"type": "object",
"properties": {},
"description": "A strikethrough facet"
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1,
"description": "A facet, facets are features that apply to a range of text, they're immutable. So changing a facet requires dropping the old facet and inserting a new one."
}