{
"$type": "com.atproto.lexicon.schema",
"defs": {
"main": {
"description": "A user's Flushes preferences, so that a choice made on one device is the same choice on the next. One record per repo.",
"key": "literal:self",
"record": {
"properties": {
"hiddenFlushEmojis": {
"description": "Emoji to leave out of the flush composer's picker. Absent means none are hidden. Stored as what to hide rather than what to show, so emoji added to the palette later appear without every existing record having to be rewritten.",
"items": {
"maxGraphemes": 1,
"maxLength": 32,
"type": "string"
},
"maxLength": 256,
"type": "array"
},
"hiddenReactionEmojis": {
"description": "Emoji to leave out of the reaction picker. Absent means none are hidden.",
"items": {
"maxGraphemes": 1,
"maxLength": 32,
"type": "string"
},
"maxLength": 256,
"type": "array"
},
"randomizeFlushEmoji": {
"description": "Start the flush composer's picker on a different emoji each time it opens, rather than always the same one.",
"type": "boolean"
},
"randomizeReactionEmoji": {
"description": "Start the reaction dial on a different emoji each time it opens.",
"type": "boolean"
},
"sound": {
"description": "Whether the app is allowed to make noise.",
"type": "boolean"
},
"swipeLeftEmoji": {
"description": "The reaction a leftward swipe on a feed row leaves.",
"maxGraphemes": 1,
"maxLength": 32,
"type": "string"
},
"swipeRightEmoji": {
"description": "The reaction a rightward swipe on a feed row leaves.",
"maxGraphemes": 1,
"maxLength": 32,
"type": "string"
},
"theme": {
"description": "Which palette the site is drawn in.",
"knownValues": [
"light",
"dark"
],
"maxLength": 16,
"type": "string"
},
"updatedAt": {
"description": "When these preferences were last changed. Two devices resolve a disagreement by taking the later one.",
"format": "datetime",
"type": "string"
}
},
"required": [
"updatedAt"
],
"type": "object"
},
"type": "record"
}
},
"id": "im.flushing.preferences",
"lexicon": 1
}