app.atmobb.actor.profile

lexicons.atmobb.app

Schema Diff

+299 -2

From

CID
bafyreibwmmhxrkj...
Indexed At
2026-09-13 00:02 UTC
View this version

To

CID
bafyreihifpmqhfl...
Indexed At
2026-10-07 04:30 UTC
View this version

Compatibility Analysis

Breaking Changes Detected

5 breaking changes, 121 non-breaking changes.

Breaking Changes (5)
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#forumTheme", src: "app.atmobb.actor.profile#forumTheme", tgt: "app.atmobb.actor.profile#forumTheme.theme", kind: "prop", name: Some("theme") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#forumTheme", src: "app.atmobb.actor.profile#forumTheme", tgt: "app.atmobb.actor.profile#forumTheme.forum", kind: "prop", name: Some("forum") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#panel", src: "app.atmobb.actor.profile#panel", tgt: "app.atmobb.actor.profile#panel.id", kind: "prop", name: Some("id") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#forumProfile", src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.fields", kind: "prop", name: Some("fields") }
  • RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#forumProfile", src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.forum", kind: "prop", name: Some("forum") }
Non-Breaking Changes (121)
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#banner" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#banner.pattern" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#banner.swatch" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items:variant0" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items:variant1" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items:variant2" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items:variant3" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.avatar" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.banner" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.currently" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.description" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.displayName" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.fields" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.fields:items" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.forum" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.headline" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.notifications" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.panels" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.panels:items" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.profileSkin" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.pronouns" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items:variant0" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items:variant1" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items:variant2" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items:variant3" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.title" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.website" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumTheme" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumTheme.forum" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#forumTheme.theme" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#panel" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#panel.hidden" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile#panel.id" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items:variant0" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items:variant1" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items:variant2" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items:variant3" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.banner" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.currently" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.forumProfiles" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.forumProfiles:items" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.forumThemes" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.forumThemes:items" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.headline" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.notifications" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.panels" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.panels:items" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.profileSkin" }
  • AddedVertex AddedVertex { vertex_id: "app.atmobb.actor.profile:body.theme" }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#banner", tgt: "app.atmobb.actor.profile#banner.pattern", kind: "prop", name: Some("pattern") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#banner", tgt: "app.atmobb.actor.profile#banner.swatch", kind: "prop", name: Some("swatch") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.about", kind: "prop", name: Some("about") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.avatar", kind: "prop", name: Some("avatar") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.banner", kind: "prop", name: Some("banner") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.currently", kind: "prop", name: Some("currently") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.description", kind: "prop", name: Some("description") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.displayName", kind: "prop", name: Some("displayName") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.headline", kind: "prop", name: Some("headline") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.notifications", kind: "prop", name: Some("notifications") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.panels", kind: "prop", name: Some("panels") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.profileSkin", kind: "prop", name: Some("profileSkin") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.pronouns", kind: "prop", name: Some("pronouns") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.signature", kind: "prop", name: Some("signature") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.title", kind: "prop", name: Some("title") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.website", kind: "prop", name: Some("website") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about", tgt: "app.atmobb.actor.profile#forumProfile.about:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items", tgt: "app.atmobb.actor.profile#forumProfile.about:items:variant0", kind: "variant", name: Some("app.atmobb.richtext.block#text") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items", tgt: "app.atmobb.actor.profile#forumProfile.about:items:variant1", kind: "variant", name: Some("app.atmobb.richtext.block#quote") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items", tgt: "app.atmobb.actor.profile#forumProfile.about:items:variant2", kind: "variant", name: Some("app.atmobb.richtext.block#code") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items", tgt: "app.atmobb.actor.profile#forumProfile.about:items:variant3", kind: "variant", name: Some("app.atmobb.richtext.block#image") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items:variant0", tgt: "app.atmobb.richtext.block#text", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items:variant1", tgt: "app.atmobb.richtext.block#quote", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items:variant2", tgt: "app.atmobb.richtext.block#code", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items:variant3", tgt: "app.atmobb.richtext.block#image", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.banner", tgt: "app.atmobb.actor.profile#banner", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.fields", tgt: "app.atmobb.actor.profile#forumProfile.fields:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.panels", tgt: "app.atmobb.actor.profile#forumProfile.panels:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.panels:items", tgt: "app.atmobb.actor.profile#panel", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature", tgt: "app.atmobb.actor.profile#forumProfile.signature:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items", tgt: "app.atmobb.actor.profile#forumProfile.signature:items:variant0", kind: "variant", name: Some("app.atmobb.richtext.block#text") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items", tgt: "app.atmobb.actor.profile#forumProfile.signature:items:variant1", kind: "variant", name: Some("app.atmobb.richtext.block#quote") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items", tgt: "app.atmobb.actor.profile#forumProfile.signature:items:variant2", kind: "variant", name: Some("app.atmobb.richtext.block#code") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items", tgt: "app.atmobb.actor.profile#forumProfile.signature:items:variant3", kind: "variant", name: Some("app.atmobb.richtext.block#image") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items:variant0", tgt: "app.atmobb.richtext.block#text", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items:variant1", tgt: "app.atmobb.richtext.block#quote", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items:variant2", tgt: "app.atmobb.richtext.block#code", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items:variant3", tgt: "app.atmobb.richtext.block#image", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile#panel", tgt: "app.atmobb.actor.profile#panel.hidden", kind: "prop", name: Some("hidden") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.about", kind: "prop", name: Some("about") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.banner", kind: "prop", name: Some("banner") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.currently", kind: "prop", name: Some("currently") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.forumProfiles", kind: "prop", name: Some("forumProfiles") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.forumThemes", kind: "prop", name: Some("forumThemes") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.headline", kind: "prop", name: Some("headline") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.notifications", kind: "prop", name: Some("notifications") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.panels", kind: "prop", name: Some("panels") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.profileSkin", kind: "prop", name: Some("profileSkin") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.theme", kind: "prop", name: Some("theme") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about", tgt: "app.atmobb.actor.profile:body.about:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about:items", tgt: "app.atmobb.actor.profile:body.about:items:variant0", kind: "variant", name: Some("app.atmobb.richtext.block#text") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about:items", tgt: "app.atmobb.actor.profile:body.about:items:variant1", kind: "variant", name: Some("app.atmobb.richtext.block#quote") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about:items", tgt: "app.atmobb.actor.profile:body.about:items:variant2", kind: "variant", name: Some("app.atmobb.richtext.block#code") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about:items", tgt: "app.atmobb.actor.profile:body.about:items:variant3", kind: "variant", name: Some("app.atmobb.richtext.block#image") }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about:items:variant0", tgt: "app.atmobb.richtext.block#text", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about:items:variant1", tgt: "app.atmobb.richtext.block#quote", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about:items:variant2", tgt: "app.atmobb.richtext.block#code", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.about:items:variant3", tgt: "app.atmobb.richtext.block#image", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.banner", tgt: "app.atmobb.actor.profile#banner", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.forumProfiles", tgt: "app.atmobb.actor.profile:body.forumProfiles:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.forumProfiles:items", tgt: "app.atmobb.actor.profile#forumProfile", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.forumThemes", tgt: "app.atmobb.actor.profile:body.forumThemes:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.forumThemes:items", tgt: "app.atmobb.actor.profile#forumTheme", kind: "ref", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.panels", tgt: "app.atmobb.actor.profile:body.panels:items", kind: "items", name: None }
  • AddedEdge AddedEdge { src: "app.atmobb.actor.profile:body.panels:items", tgt: "app.atmobb.actor.profile#panel", kind: "ref", name: None }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "app.atmobb.actor.profile#banner" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#banner.pattern" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#banner.swatch" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items:variant0" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items:variant1" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items:variant2" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.about:items:variant3" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.avatar" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.banner" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.currently" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.description" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.displayName" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.fields" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.fields:items" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.forum" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.headline" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.notifications" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.panels" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.panels:items" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.profileSkin" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.pronouns" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items:variant0" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items:variant1" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items:variant2" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.signature:items:variant3" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.title" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumProfile.website" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumTheme" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumTheme.forum" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#forumTheme.theme" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#panel" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#panel.hidden" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile#panel.id" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items:variant0" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items:variant1" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items:variant2" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.about:items:variant3" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.banner" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.currently" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.forumProfiles" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.forumProfiles:items" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.forumThemes" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.forumThemes:items" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.headline" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.notifications" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.panels" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.panels:items" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.profileSkin" }
  • AddedVertex { vertex_id: "app.atmobb.actor.profile:body.theme" }

Additional Notes

  • Breaking: RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#panel", src: "app.atmobb.actor.profile#panel", tgt: "app.atmobb.actor.profile#panel.id", kind: "prop", name: Some("id") }
  • Breaking: RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#forumTheme", src: "app.atmobb.actor.profile#forumTheme", tgt: "app.atmobb.actor.profile#forumTheme.theme", kind: "prop", name: Some("theme") }
  • Breaking: RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#forumTheme", src: "app.atmobb.actor.profile#forumTheme", tgt: "app.atmobb.actor.profile#forumTheme.forum", kind: "prop", name: Some("forum") }
  • Breaking: RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#forumProfile", src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.fields", kind: "prop", name: Some("fields") }
  • Breaking: RequiredEdgeAdded { vertex_id: "app.atmobb.actor.profile#forumProfile", src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.forum", kind: "prop", name: Some("forum") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#banner", tgt: "app.atmobb.actor.profile#banner.pattern", kind: "prop", name: Some("pattern") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#banner", tgt: "app.atmobb.actor.profile#banner.swatch", kind: "prop", name: Some("swatch") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.about", kind: "prop", name: Some("about") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.avatar", kind: "prop", name: Some("avatar") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.banner", kind: "prop", name: Some("banner") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.currently", kind: "prop", name: Some("currently") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.description", kind: "prop", name: Some("description") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.displayName", kind: "prop", name: Some("displayName") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.headline", kind: "prop", name: Some("headline") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.notifications", kind: "prop", name: Some("notifications") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.panels", kind: "prop", name: Some("panels") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.profileSkin", kind: "prop", name: Some("profileSkin") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.pronouns", kind: "prop", name: Some("pronouns") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.signature", kind: "prop", name: Some("signature") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.title", kind: "prop", name: Some("title") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile", tgt: "app.atmobb.actor.profile#forumProfile.website", kind: "prop", name: Some("website") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about", tgt: "app.atmobb.actor.profile#forumProfile.about:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items", tgt: "app.atmobb.actor.profile#forumProfile.about:items:variant0", kind: "variant", name: Some("app.atmobb.richtext.block#text") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items", tgt: "app.atmobb.actor.profile#forumProfile.about:items:variant1", kind: "variant", name: Some("app.atmobb.richtext.block#quote") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items", tgt: "app.atmobb.actor.profile#forumProfile.about:items:variant2", kind: "variant", name: Some("app.atmobb.richtext.block#code") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items", tgt: "app.atmobb.actor.profile#forumProfile.about:items:variant3", kind: "variant", name: Some("app.atmobb.richtext.block#image") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items:variant0", tgt: "app.atmobb.richtext.block#text", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items:variant1", tgt: "app.atmobb.richtext.block#quote", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items:variant2", tgt: "app.atmobb.richtext.block#code", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.about:items:variant3", tgt: "app.atmobb.richtext.block#image", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.banner", tgt: "app.atmobb.actor.profile#banner", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.fields", tgt: "app.atmobb.actor.profile#forumProfile.fields:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.panels", tgt: "app.atmobb.actor.profile#forumProfile.panels:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.panels:items", tgt: "app.atmobb.actor.profile#panel", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature", tgt: "app.atmobb.actor.profile#forumProfile.signature:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items", tgt: "app.atmobb.actor.profile#forumProfile.signature:items:variant0", kind: "variant", name: Some("app.atmobb.richtext.block#text") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items", tgt: "app.atmobb.actor.profile#forumProfile.signature:items:variant1", kind: "variant", name: Some("app.atmobb.richtext.block#quote") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items", tgt: "app.atmobb.actor.profile#forumProfile.signature:items:variant2", kind: "variant", name: Some("app.atmobb.richtext.block#code") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items", tgt: "app.atmobb.actor.profile#forumProfile.signature:items:variant3", kind: "variant", name: Some("app.atmobb.richtext.block#image") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items:variant0", tgt: "app.atmobb.richtext.block#text", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items:variant1", tgt: "app.atmobb.richtext.block#quote", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items:variant2", tgt: "app.atmobb.richtext.block#code", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#forumProfile.signature:items:variant3", tgt: "app.atmobb.richtext.block#image", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile#panel", tgt: "app.atmobb.actor.profile#panel.hidden", kind: "prop", name: Some("hidden") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.about", kind: "prop", name: Some("about") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.banner", kind: "prop", name: Some("banner") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.currently", kind: "prop", name: Some("currently") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.forumProfiles", kind: "prop", name: Some("forumProfiles") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.forumThemes", kind: "prop", name: Some("forumThemes") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.headline", kind: "prop", name: Some("headline") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.notifications", kind: "prop", name: Some("notifications") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.panels", kind: "prop", name: Some("panels") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.profileSkin", kind: "prop", name: Some("profileSkin") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body", tgt: "app.atmobb.actor.profile:body.theme", kind: "prop", name: Some("theme") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about", tgt: "app.atmobb.actor.profile:body.about:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about:items", tgt: "app.atmobb.actor.profile:body.about:items:variant0", kind: "variant", name: Some("app.atmobb.richtext.block#text") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about:items", tgt: "app.atmobb.actor.profile:body.about:items:variant1", kind: "variant", name: Some("app.atmobb.richtext.block#quote") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about:items", tgt: "app.atmobb.actor.profile:body.about:items:variant2", kind: "variant", name: Some("app.atmobb.richtext.block#code") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about:items", tgt: "app.atmobb.actor.profile:body.about:items:variant3", kind: "variant", name: Some("app.atmobb.richtext.block#image") }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about:items:variant0", tgt: "app.atmobb.richtext.block#text", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about:items:variant1", tgt: "app.atmobb.richtext.block#quote", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about:items:variant2", tgt: "app.atmobb.richtext.block#code", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.about:items:variant3", tgt: "app.atmobb.richtext.block#image", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.banner", tgt: "app.atmobb.actor.profile#banner", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.forumProfiles", tgt: "app.atmobb.actor.profile:body.forumProfiles:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.forumProfiles:items", tgt: "app.atmobb.actor.profile#forumProfile", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.forumThemes", tgt: "app.atmobb.actor.profile:body.forumThemes:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.forumThemes:items", tgt: "app.atmobb.actor.profile#forumTheme", kind: "ref", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.panels", tgt: "app.atmobb.actor.profile:body.panels:items", kind: "items", name: None }
  • Non-breaking: AddedEdge { src: "app.atmobb.actor.profile:body.panels:items", tgt: "app.atmobb.actor.profile#panel", kind: "ref", name: None }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "avatarBuilder": {
5 5
      "description": "Legacy built avatar as part + colour choices. Kept so existing records stay valid.",
6 6
      "properties": {
7 7
        "accessory": {
8 8
          "ref": "#part",
9 9
          "type": "ref"
10 10
        },
11 11
        "eyebrows": {
12 12
          "ref": "#part",
13 13
          "type": "ref"
14 14
        },
15 15
        "eyes": {
16 16
          "ref": "#part",
17 17
          "type": "ref"
18 18
        },
19 19
        "facialFeature": {
20 20
          "ref": "#part",
21 21
          "type": "ref"
22 22
        },
23 23
        "facialHair": {
24 24
          "ref": "#part",
25 25
          "type": "ref"
26 26
        },
27 27
        "hairBack": {
28 28
          "ref": "#part",
29 29
          "type": "ref"
30 30
        },
31 31
        "hairFront": {
32 32
          "ref": "#part",
33 33
          "type": "ref"
34 34
        },
35 35
        "hat": {
36 36
          "ref": "#part",
37 37
          "type": "ref"
38 38
        },
39 39
        "mouth": {
40 40
          "ref": "#part",
41 41
          "type": "ref"
42 42
        },
43 43
        "neckwear": {
44 44
          "ref": "#garment",
45 45
          "type": "ref"
46 46
        },
47 47
        "nose": {
48 48
          "ref": "#part",
49 49
          "type": "ref"
50 50
        },
51 51
        "skin": {
52 52
          "description": "Skin tone id; drives body, head, nose and facial-feature colouring.",
53 53
          "type": "string"
54 54
        },
55 55
        "top": {
56 56
          "ref": "#garment",
57 57
          "type": "ref"
58 58
        },
59 59
        "v": {
60 60
          "description": "Recipe schema version.",
61 61
          "minimum": 1,
62 62
          "type": "integer"
63 63
        }
64 64
      },
65 65
      "required": [
66 66
        "v",
67 67
        "skin"
68 68
      ],
69 69
      "type": "object"
70 70
    },
71 +
    "banner": {
72 +
      "description": "A CSS-drawn banner: a pattern over a color swatch.",
73 +
      "properties": {
74 +
        "pattern": {
75 +
          "knownValues": [
76 +
            "plain",
77 +
            "stars",
78 +
            "scanlines",
79 +
            "checker"
80 +
          ],
81 +
          "maxLength": 32,
82 +
          "type": "string"
83 +
        },
84 +
        "swatch": {
85 +
          "knownValues": [
86 +
            "coral",
87 +
            "rust",
88 +
            "plum",
89 +
            "berry",
90 +
            "navy",
91 +
            "teal",
92 +
            "pine",
93 +
            "slate"
94 +
          ],
95 +
          "maxLength": 32,
96 +
          "type": "string"
97 +
        }
98 +
      },
99 +
      "type": "object"
100 +
    },
101 +
    "forumProfile": {
102 +
      "properties": {
103 +
        "about": {
104 +
          "items": {
105 +
            "refs": [
106 +
              "app.atmobb.richtext.block#text",
107 +
              "app.atmobb.richtext.block#quote",
108 +
              "app.atmobb.richtext.block#code",
109 +
              "app.atmobb.richtext.block#image"
110 +
            ],
111 +
            "type": "union"
112 +
          },
113 +
          "maxLength": 20,
114 +
          "type": "array"
115 +
        },
116 +
        "avatar": {
117 +
          "accept": [
118 +
            "image/png",
119 +
            "image/jpeg",
120 +
            "image/webp",
121 +
            "image/gif"
122 +
          ],
123 +
          "maxSize": 1000000,
124 +
          "type": "blob"
125 +
        },
126 +
        "banner": {
127 +
          "ref": "#banner",
128 +
          "type": "ref"
129 +
        },
130 +
        "currently": {
131 +
          "maxGraphemes": 80,
132 +
          "maxLength": 800,
133 +
          "type": "string"
134 +
        },
135 +
        "description": {
136 +
          "maxGraphemes": 256,
137 +
          "maxLength": 2560,
138 +
          "type": "string"
139 +
        },
140 +
        "displayName": {
141 +
          "maxGraphemes": 64,
142 +
          "maxLength": 640,
143 +
          "type": "string"
144 +
        },
145 +
        "fields": {
146 +
          "description": "Only listed fields override defaults. A listed field with no value explicitly clears it (avatar falls back to Bluesky); remove it from this list to inherit again.",
147 +
          "items": {
148 +
            "knownValues": [
149 +
              "displayName",
150 +
              "description",
151 +
              "pronouns",
152 +
              "website",
153 +
              "signature",
154 +
              "avatar",
155 +
              "title",
156 +
              "notifications",
157 +
              "profileSkin",
158 +
              "banner",
159 +
              "headline",
160 +
              "currently",
161 +
              "about",
162 +
              "panels"
163 +
            ],
164 +
            "type": "string"
165 +
          },
166 +
          "type": "array"
167 +
        },
168 +
        "forum": {
169 +
          "format": "did",
170 +
          "type": "string"
171 +
        },
172 +
        "headline": {
173 +
          "maxGraphemes": 80,
174 +
          "maxLength": 800,
175 +
          "type": "string"
176 +
        },
177 +
        "notifications": {
178 +
          "type": "boolean"
179 +
        },
180 +
        "panels": {
181 +
          "items": {
182 +
            "ref": "#panel",
183 +
            "type": "ref"
184 +
          },
185 +
          "maxLength": 32,
186 +
          "type": "array"
187 +
        },
188 +
        "profileSkin": {
189 +
          "knownValues": [
190 +
            "classic",
191 +
            "sky",
192 +
            "bubblegum",
193 +
            "midnight",
194 +
            "forest"
195 +
          ],
196 +
          "maxLength": 64,
197 +
          "type": "string"
198 +
        },
199 +
        "pronouns": {
200 +
          "maxGraphemes": 64,
201 +
          "maxLength": 640,
202 +
          "type": "string"
203 +
        },
204 +
        "signature": {
205 +
          "items": {
206 +
            "refs": [
207 +
              "app.atmobb.richtext.block#text",
208 +
              "app.atmobb.richtext.block#quote",
209 +
              "app.atmobb.richtext.block#code",
210 +
              "app.atmobb.richtext.block#image"
211 +
            ],
212 +
            "type": "union"
213 +
          },
214 +
          "maxLength": 3,
215 +
          "type": "array"
216 +
        },
217 +
        "title": {
218 +
          "maxGraphemes": 64,
219 +
          "maxLength": 640,
220 +
          "type": "string"
221 +
        },
222 +
        "website": {
223 +
          "format": "uri",
224 +
          "type": "string"
225 +
        }
226 +
      },
227 +
      "required": [
228 +
        "forum",
229 +
        "fields"
230 +
      ],
231 +
      "type": "object"
232 +
    },
233 +
    "forumTheme": {
234 +
      "properties": {
235 +
        "forum": {
236 +
          "format": "did",
237 +
          "type": "string"
238 +
        },
239 +
        "theme": {
240 +
          "knownValues": [
241 +
            "",
242 +
            "classic",
243 +
            "sky",
244 +
            "bubblegum",
245 +
            "midnight",
246 +
            "forest"
247 +
          ],
248 +
          "maxLength": 64,
249 +
          "type": "string"
250 +
        }
251 +
      },
252 +
      "required": [
253 +
        "forum",
254 +
        "theme"
255 +
      ],
256 +
      "type": "object"
257 +
    },
71 258
    "garment": {
72 259
      "description": "A garment choice: which type (e.g. jacket, tie) in which colour.",
73 260
      "properties": {
74 261
        "color": {
75 262
          "type": "string"
76 263
        },
77 264
        "type": {
78 265
          "type": "string"
79 266
        }
80 267
      },
81 268
      "required": [
82 269
        "type",
83 270
        "color"
84 271
      ],
85 272
      "type": "object"
86 273
    },
87 274
    "main": {
88 -
      "description": "A user's atmoBB profile, global across all forums. Lives in the user's repo.",
275 +
      "description": "A user's atmoBB account defaults and per-forum overrides. Lives in the user's repo.",
89 276
      "key": "literal:self",
90 277
      "record": {
91 278
        "properties": {
279 +
          "about": {
280 +
            "description": "Long-form About me on the profile page, separate from the short bio in description.",
281 +
            "items": {
282 +
              "refs": [
283 +
                "app.atmobb.richtext.block#text",
284 +
                "app.atmobb.richtext.block#quote",
285 +
                "app.atmobb.richtext.block#code",
286 +
                "app.atmobb.richtext.block#image"
287 +
              ],
288 +
              "type": "union"
289 +
            },
290 +
            "maxLength": 20,
291 +
            "type": "array"
292 +
          },
92 293
          "avatar": {
93 294
            "accept": [
94 295
              "image/png",
95 296
              "image/jpeg",
96 297
              "image/webp",
97 298
              "image/gif"
98 299
            ],
99 300
            "maxSize": 1000000,
100 301
            "type": "blob"
101 302
          },
102 303
          "avatarBuilder": {
103 304
            "description": "Legacy layered-avatar recipe from an earlier builder. atmobb ignores it; clients should read the `avatar` blob.",
104 305
            "ref": "#avatarBuilder",
105 306
            "type": "ref"
106 307
          },
308 +
          "banner": {
309 +
            "description": "Patterned banner across the top of the profile page.",
310 +
            "ref": "#banner",
311 +
            "type": "ref"
312 +
          },
107 313
          "createdAt": {
108 314
            "format": "datetime",
109 315
            "type": "string"
110 316
          },
317 +
          "currently": {
318 +
            "description": "What the member is up to right now, shown under the headline.",
319 +
            "maxGraphemes": 80,
320 +
            "maxLength": 800,
321 +
            "type": "string"
322 +
          },
111 323
          "description": {
112 -
            "description": "Free-text bio, shown on the profile's About panel. Global across forums.",
324 +
            "description": "Default free-text bio, shown on the profile's About panel unless overridden for a forum.",
113 325
            "maxGraphemes": 256,
114 326
            "maxLength": 2560,
115 327
            "type": "string"
116 328
          },
117 329
          "displayName": {
118 330
            "maxGraphemes": 64,
119 331
            "maxLength": 640,
120 332
            "type": "string"
121 333
          },
334 +
          "forumProfiles": {
335 +
            "description": "Per-forum overrides for profile fields and notification preferences. Other fields inherit account defaults.",
336 +
            "items": {
337 +
              "ref": "#forumProfile",
338 +
              "type": "ref"
339 +
            },
340 +
            "type": "array"
341 +
          },
342 +
          "forumThemes": {
343 +
            "description": "Per-forum personal theme overrides. Omit a forum to use the global theme; an empty theme preserves that forum's own styling.",
344 +
            "items": {
345 +
              "ref": "#forumTheme",
346 +
              "type": "ref"
347 +
            },
348 +
            "type": "array"
349 +
          },
350 +
          "headline": {
351 +
            "description": "Short line shown under the member's name on their profile page.",
352 +
            "maxGraphemes": 80,
353 +
            "maxLength": 800,
354 +
            "type": "string"
355 +
          },
356 +
          "notifications": {
357 +
            "description": "Whether connected forums may notify this account. Defaults to true; never grants relay permission.",
358 +
            "type": "boolean"
359 +
          },
360 +
          "panels": {
361 +
            "description": "Profile page panels in display order. Panels missing from the list follow in the default order; unknown ids are ignored.",
362 +
            "items": {
363 +
              "ref": "#panel",
364 +
              "type": "ref"
365 +
            },
366 +
            "maxLength": 32,
367 +
            "type": "array"
368 +
          },
369 +
          "profileSkin": {
370 +
            "description": "Color skin visitors see on this member's profile page. Omit to use the forum's look; forums may turn skins off.",
371 +
            "knownValues": [
372 +
              "classic",
373 +
              "sky",
374 +
              "bubblegum",
375 +
              "midnight",
376 +
              "forest"
377 +
            ],
378 +
            "maxLength": 64,
379 +
            "type": "string"
380 +
          },
122 381
          "pronouns": {
123 382
            "maxGraphemes": 64,
124 383
            "maxLength": 640,
125 384
            "type": "string"
126 385
          },
127 386
          "signature": {
128 387
            "description": "Rendered under every post, phpBB style. Keep it short; clients may truncate.",
129 388
            "items": {
130 389
              "refs": [
131 390
                "app.atmobb.richtext.block#text",
132 391
                "app.atmobb.richtext.block#quote",
133 392
                "app.atmobb.richtext.block#code",
134 393
                "app.atmobb.richtext.block#image"
135 394
              ],
136 395
              "type": "union"
137 396
            },
138 397
            "maxLength": 3,
139 398
            "type": "array"
140 399
          },
400 +
          "theme": {
401 +
            "description": "Personal color theme across forums. Omit to follow each forum's default styling.",
402 +
            "knownValues": [
403 +
              "classic",
404 +
              "sky",
405 +
              "bubblegum",
406 +
              "midnight",
407 +
              "forest"
408 +
            ],
409 +
            "maxLength": 64,
410 +
            "type": "string"
411 +
          },
141 412
          "title": {
142 413
            "description": "Self-chosen user title, shown under the username where the forum allows it.",
143 414
            "maxGraphemes": 64,
144 415
            "maxLength": 640,
145 416
            "type": "string"
146 417
          },
147 418
          "website": {
148 419
            "format": "uri",
149 420
            "type": "string"
150 421
          }
151 422
        },
152 423
        "type": "object"
153 424
      },
154 425
      "type": "record"
155 426
    },
427 +
    "panel": {
428 +
      "properties": {
429 +
        "hidden": {
430 +
          "description": "Hidden from visitors. Absent means shown.",
431 +
          "type": "boolean"
432 +
        },
433 +
        "id": {
434 +
          "knownValues": [
435 +
            "about",
436 +
            "pinned",
437 +
            "stamps",
438 +
            "regulars",
439 +
            "activity",
440 +
            "guestbook",
441 +
            "bluesky",
442 +
            "signature"
443 +
          ],
444 +
          "maxLength": 32,
445 +
          "type": "string"
446 +
        }
447 +
      },
448 +
      "required": [
449 +
        "id"
450 +
      ],
451 +
      "type": "object"
452 +
    },
156 453
    "part": {
157 454
      "description": "A part choice: a shape id and, where the part is colourable, a palette colour id.",
158 455
      "properties": {
159 456
        "color": {
160 457
          "type": "string"
161 458
        },
162 459
        "shape": {
163 460
          "type": "string"
164 461
        }
165 462
      },
166 463
      "required": [
167 464
        "shape"
168 465
      ],
169 466
      "type": "object"
170 467
    }
171 468
  },
172 469
  "id": "app.atmobb.actor.profile",
173 470
  "lexicon": 1
174 471
}

Compare Other Versions

Lexicon Garden

@