From 84b1cc9b89c8be63033208382f2cd687fe9381d3 Mon Sep 17 00:00:00 2001 From: Orual Date: Thu, 30 Oct 2025 19:26:45 -0400 Subject: [PATCH] lexicon updates --- lexicons/sh/weaver/actor/defs.json | 57 ++++++++++++++++++++++++--- lexicons/sh/weaver/actor/profile.json | 39 +++++++++++++++--- lexicons/sh/weaver/edit/cursor.json | 2 +- lexicons/sh/weaver/embed/images.json | 56 +++++++++++++++++++++++++- lexicons/sh/weaver/embed/records.json | 53 +++++++++++++++++++------ lexicons/sh/weaver/notebook/defs.json | 2 +- 6 files changed, 184 insertions(+), 25 deletions(-) diff --git a/lexicons/sh/weaver/actor/defs.json b/lexicons/sh/weaver/actor/defs.json index afd97d5..a1c852f 100644 --- a/lexicons/sh/weaver/actor/defs.json +++ b/lexicons/sh/weaver/actor/defs.json @@ -15,10 +15,11 @@ }, "description": { "type": "string", - "maxGraphemes": 256, - "maxLength": 2560 + "maxGraphemes": 1024, + "maxLength": 10240 }, "avatar": { "type": "string", "format": "uri" }, + "banner": { "type": "string", "format": "uri" }, "location": { "type": "string", "description": "Free-form location text.", @@ -37,7 +38,11 @@ }, "indexedAt": { "type": "string", "format": "datetime" }, "createdAt": { "type": "string", "format": "datetime" }, - + "pinned": { + "description": "Notebooks or other records pinned for display." + "type": "ref", + "ref": "sh.weaver.actor.profile#pinnedList" + } "labels": { "type": "array", "items": { "type": "ref", "ref": "com.atproto.label.defs#label" } @@ -46,7 +51,38 @@ "type": "ref", "description": "Pronouns to use in user-generated content.", "ref": "sh.weaver.actor.profile#pronounsList" - } + }, + "subscriberCount": { + "type": "integer" + }, + "subscribedCount": { + "type": "integer" + }, + } + }, + "profileViewBasic": { + "type": "object", + "required": ["did", "handle"], + "properties": { + "did": { "type": "string", "format": "did" }, + "handle": { "type": "string", "format": "handle" }, + "displayName": { + "type": "string", + "maxGraphemes": 64, + "maxLength": 640 + }, + "avatar": { "type": "string", "format": "uri" }, + "indexedAt": { "type": "string", "format": "datetime" }, + "createdAt": { "type": "string", "format": "datetime" }, + "labels": { + "type": "array", + "items": { "type": "ref", "ref": "com.atproto.label.defs#label" } + }, + "pronouns": { + "type": "ref", + "description": "Pronouns to use in user-generated content.", + "ref": "sh.weaver.actor.profile#pronounsList" + }, } }, "profileDataView": { @@ -55,7 +91,17 @@ "properties": { "inner": { "type": "union", - "refs": ["sh.weaver.actor.defs#profileView", "app.bsky.actor.defs#profileViewDetailed"] + "refs": ["sh.weaver.actor.defs#profileView", "app.bsky.actor.defs#profileViewDetailed", "#tangledProfileView"] + } + } + }, + "profileDataViewBasic": { + "type": "object", + "required": ["inner"], + "properties": { + "inner": { + "type": "union", + "refs": ["sh.weaver.actor.defs#profileViewBasic", "app.bsky.actor.defs#profileViewBasic", "#tangledProfileView"] } } }, @@ -73,6 +119,7 @@ } } }, + "tangledProfileView": { "type": "object", "required": ["bluesky", "did", "handle"], diff --git a/lexicons/sh/weaver/actor/profile.json b/lexicons/sh/weaver/actor/profile.json index cfe1004..306efb1 100644 --- a/lexicons/sh/weaver/actor/profile.json +++ b/lexicons/sh/weaver/actor/profile.json @@ -17,8 +17,8 @@ "description": { "type": "string", "description": "Free-form profile description text.", - "maxGraphemes": 256, - "maxLength": 2560 + "maxGraphemes": 1024, + "maxLength": 10240 }, "avatar": { "type": "blob", @@ -26,6 +26,15 @@ "accept": ["image/png", "image/jpeg"], "maxSize": 1000000 }, + "banner": { + "type": "blob", + "description": "Larger horizontal image to display behind profile view.", + "accept": [ + "image/png", + "image/jpeg" + ], + "maxSize": 1000000 + }, "links": { "type": "array", "minLength": 0, @@ -41,9 +50,10 @@ "description": "Pronouns to use in user-generated content.", "ref": "#pronounsList" }, - "pinnedPost": { + "pinned": { + "description": "Notebooks or other records pinned for display." "type": "ref", - "ref": "com.atproto.repo.strongRef" + "ref": "#pinnedList" }, "bluesky": { "type": "boolean", @@ -53,6 +63,17 @@ "type": "boolean", "description": "Include link to this account on Tangled." }, + "streamplace": { + "type": "boolean", + "description": "Include link to this account on stream.place." + }, + "labels": { + "type": "union", + "description": "Self-label values, specific to the application, on the overall account.", + "refs": [ + "com.atproto.label.defs#selfLabels" + ] + }, "location": { "type": "string", "description": "Free-form location text.", @@ -67,7 +88,15 @@ "type": "array", "items": { "type": "string", - "enum": ["she/her", "he/him", "they/them", "it/its", "she/they", "he/they", "they/he", "they/she"] + "maxLength": "50", + "knownValues": ["she/her", "he/him", "they/them", "it/its", "she/they", "he/they", "they/he", "they/she", "any/all"] + } + }, + "pinnedList": { + "type": "array", + "items": { + "type": "ref", + "ref": "com.atproto.repo.strongRef" } } } diff --git a/lexicons/sh/weaver/edit/cursor.json b/lexicons/sh/weaver/edit/cursor.json index da84639..b8404f2 100644 --- a/lexicons/sh/weaver/edit/cursor.json +++ b/lexicons/sh/weaver/edit/cursor.json @@ -8,7 +8,7 @@ "key": "tid", "record": { "type": "object", - "required": ["container", "die"], + "required": ["container", "id"], "properties": { "id": { "type": "ref", diff --git a/lexicons/sh/weaver/embed/images.json b/lexicons/sh/weaver/embed/images.json index 5f04d3c..249620c 100644 --- a/lexicons/sh/weaver/embed/images.json +++ b/lexicons/sh/weaver/embed/images.json @@ -18,6 +18,10 @@ "type": "object", "required": ["image", "alt"], "properties": { + "name": { + "type": "string", + "maxLength": 128 + }, "image": { "type": "blob", "accept": ["image/*"], @@ -34,7 +38,57 @@ }, "dimensions": { "type": "union", - "refs": ["app.bsky.embed.defs#aspectRatio", "sh.weaver.embed.defs#percentSize", "sh.weaver.embed.defs#pixelSize"] + "refs": [ + "app.bsky.embed.defs#aspectRatio", + "sh.weaver.embed.defs#percentSize", + "sh.weaver.embed.defs#pixelSize" + ] + } + } + }, + "view": { + "type": "object", + "required": ["images"], + "properties": { + "images": { + "type": "array", + "items": { + "type": "ref", + "ref": "#viewImage" + }, + "maxLength": 48 + } + } + }, + "viewImage": { + "type": "object", + "required": ["thumb", "fullsize", "alt"], + "properties": { + "name": { + "type": "string", + "maxLength": 128 + }, + "alt": { + "type": "string", + "description": "Alt text description of the image, for accessibility." + }, + "dimensions": { + "type": "union", + "refs": [ + "app.bsky.embed.defs#aspectRatio", + "sh.weaver.embed.defs#percentSize", + "sh.weaver.embed.defs#pixelSize" + ] + }, + "fullsize": { + "type": "string", + "description": "Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.", + "format": "uri" + }, + "thumb": { + "type": "string", + "description": "Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.", + "format": "uri" } } } diff --git a/lexicons/sh/weaver/embed/records.json b/lexicons/sh/weaver/embed/records.json index c26e438..1fe2ec9 100644 --- a/lexicons/sh/weaver/embed/records.json +++ b/lexicons/sh/weaver/embed/records.json @@ -9,11 +9,47 @@ "properties": { "records": { "type": "array", - "items": { "type": "ref", "ref": "com.atproto.repo.strongRef" }, + "items": { "type": "ref", "ref": "#recordEmbed" }, "maxLength": 48 } } }, + "recordEmbed": { + "type": "object", + "required": ["record"], + "properties": { + "record": { + "type": "ref", + "ref": "com.atproto.repo.strongRef" + }, + "name": { + "type": "string", + "maxLength": 128 + } + } + }, + "recordEmbedView": { + "type": "object", + "required": ["recordView"], + "properties": { + "recordView": { + "type": "union", + "refs": [ + "app.bsky.embed.images#view", + "app.bsky.embed.video#view", + "app.bsky.embed.external#view", + "app.bsky.embed.record#view", + "app.bsky.embed.recordWithMedia#view", + "sh.weaver.embed.records#view", + "sh.weaver.embed.images#view" + ] + }, + "name": { + "type": "string", + "maxLength": 128 + } + } + }, "view": { "type": "object", "required": ["record"], @@ -40,8 +76,8 @@ "uri": { "type": "string", "format": "at-uri" }, "cid": { "type": "string", "format": "cid" }, "author": { - "type": "union", - "refs": ["app.bsky.actor.defs#profileViewBasic"] + "type": "ref", + "ref": "sh.weaver.actor.defs#profileDataViewBasic" }, "value": { "type": "unknown", @@ -58,15 +94,8 @@ "embeds": { "type": "array", "items": { - "type": "union", - "refs": [ - "app.bsky.embed.images#view", - "app.bsky.embed.video#view", - "app.bsky.embed.external#view", - "app.bsky.embed.record#view", - "app.bsky.embed.recordWithMedia#view", - "sh.weaver.embed.records#view" - ] + "type": "ref", + "ref": "#recordEmbedView" } }, "indexedAt": { "type": "string", "format": "datetime" } diff --git a/lexicons/sh/weaver/notebook/defs.json b/lexicons/sh/weaver/notebook/defs.json index 7ae7d74..ca1a940 100644 --- a/lexicons/sh/weaver/notebook/defs.json +++ b/lexicons/sh/weaver/notebook/defs.json @@ -101,7 +101,7 @@ }, "title": { "type": "string", - "maxLength": 420, + "maxLength": 300, "description": "The title of the notebook entry." }, "tags": { -- 2.54.0