chatBskyActorDefs top-level constant

Map<String, dynamic> const chatBskyActorDefs

chat.bsky.actor.defs

Implementation

const chatBskyActorDefs = <String, dynamic>{
  "lexicon": 1,
  "id": "chat.bsky.actor.defs",
  "defs": {
    "memberRole": {
      "type": "string",
      "knownValues": ["owner", "standard"],
    },
    "profileViewBasic": {
      "type": "object",
      "required": ["did", "handle"],
      "properties": {
        "did": {"type": "string", "format": "did"},
        "handle": {"type": "string", "format": "handle"},
        "displayName": {"type": "string", "maxLength": 640, "maxGraphemes": 64},
        "avatar": {"type": "string", "format": "uri"},
        "associated": {
          "type": "ref",
          "ref": "app.bsky.actor.defs#profileAssociated",
        },
        "viewer": {"type": "ref", "ref": "app.bsky.actor.defs#viewerState"},
        "labels": {
          "type": "array",
          "items": {"type": "ref", "ref": "com.atproto.label.defs#label"},
        },
        "createdAt": {"type": "string", "format": "datetime"},
        "chatDisabled": {
          "type": "boolean",
          "description":
              "Set to true when the actor cannot actively participate in conversations",
        },
        "verification": {
          "type": "ref",
          "ref": "app.bsky.actor.defs#verificationState",
        },
        "kind": {
          "type": "union",
          "description":
              "Union field that has data specific to different kinds of convos.",
          "refs": [
            "#directConvoMember",
            "#groupConvoMember",
            "#pastGroupConvoMember",
          ],
        },
      },
    },
    "directConvoMember": {"type": "object", "properties": {}},
    "groupConvoMember": {
      "type": "object",
      "description": "A current group convo member.",
      "required": ["role"],
      "properties": {
        "addedBy": {
          "type": "ref",
          "description":
              "Who added this member. Only present if the member was added (instead of joining via link).",
          "ref": "#profileViewBasic",
        },
        "role": {
          "type": "ref",
          "description":
              "The member's role within this conversation. Only present in group conversation member lists.",
          "ref": "#memberRole",
        },
      },
    },
    "pastGroupConvoMember": {
      "type": "object",
      "description": "A past group convo member.",
      "required": [],
      "properties": {},
    },
  },
};