pub.leaflet.pages.canvas

leaflet.pub

Schema Diff

+10 -0

From

CID
bafyreie4woxmfnq...
Indexed At
2026-09-27 03:36 UTC
View this version

To

CID
bafyreifidxorq5x...
Indexed At
2026-09-29 04:39 UTC
View this version

Compatibility Analysis

Backward Compatible

Backward compatible. 2 non-breaking changes.

Non-Breaking Changes (2)
  • AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.canvas#block.alignment" }
  • AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block", tgt: "pub.leaflet.pages.canvas#block.alignment", kind: "prop", name: Some("alignment") }

Migration Guidance

Added Elements

  • AddedVertex { vertex_id: "pub.leaflet.pages.canvas#block.alignment" }

Additional Notes

  • Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block", tgt: "pub.leaflet.pages.canvas#block.alignment", kind: "prop", name: Some("alignment") }
1 1
{
2 2
  "$type": "com.atproto.lexicon.schema",
3 3
  "defs": {
4 4
    "block": {
5 5
      "properties": {
6 +
        "alignment": {
7 +
          "description": "Alignment of a single block's content. A linear document's blocks carry their own.",
8 +
          "knownValues": [
9 +
            "lex:pub.leaflet.pages.linearDocument#textAlignLeft",
10 +
            "lex:pub.leaflet.pages.linearDocument#textAlignCenter",
11 +
            "lex:pub.leaflet.pages.linearDocument#textAlignRight",
12 +
            "lex:pub.leaflet.pages.linearDocument#textAlignJustify"
13 +
          ],
14 +
          "type": "string"
15 +
        },
6 16
        "block": {
7 17
          "description": "A single block, or a linear document: blocks grouped in reading order that are positioned, sized and rotated on the canvas as one.",
8 18
          "refs": [
9 19
            "pub.leaflet.blocks.iframe",
10 20
            "pub.leaflet.blocks.html",
11 21
            "pub.leaflet.blocks.text",
12 22
            "pub.leaflet.blocks.blockquote",
13 23
            "pub.leaflet.blocks.header",
14 24
            "pub.leaflet.blocks.image",
15 25
            "pub.leaflet.blocks.imageGallery",
16 26
            "pub.leaflet.blocks.unorderedList",
17 27
            "pub.leaflet.blocks.orderedList",
18 28
            "pub.leaflet.blocks.website",
19 29
            "pub.leaflet.blocks.math",
20 30
            "pub.leaflet.blocks.code",
21 31
            "pub.leaflet.blocks.horizontalRule",
22 32
            "pub.leaflet.blocks.bskyPost",
23 33
            "pub.leaflet.blocks.standardSitePost",
24 34
            "pub.leaflet.blocks.standardSitePublication",
25 35
            "pub.leaflet.blocks.page",
26 36
            "pub.leaflet.blocks.embeddedCanvas",
27 37
            "pub.leaflet.blocks.poll",
28 38
            "pub.leaflet.blocks.button",
29 39
            "pub.leaflet.blocks.postsList",
30 40
            "pub.leaflet.blocks.signup",
31 41
            "pub.leaflet.blocks.recommendedPubs",
32 42
            "pub.leaflet.blocks.membersOnlyDelimiter",
33 43
            "pub.leaflet.blocks.postHeader",
34 44
            "pub.leaflet.blocks.drawing",
35 45
            "pub.leaflet.pages.linearDocument"
36 46
          ],
37 47
          "type": "union"
38 48
        },
39 49
        "height": {
40 50
          "type": "integer"
41 51
        },
42 52
        "rotation": {
43 53
          "description": "The rotation of the block in degrees",
44 54
          "type": "integer"
45 55
        },
46 56
        "stackOrder": {
47 57
          "description": "Fractional index ordering this block against its siblings on the z axis. Blocks without one stack below every block with one, ordered by position.",
48 58
          "type": "string"
49 59
        },
50 60
        "width": {
51 61
          "type": "integer"
52 62
        },
53 63
        "x": {
54 64
          "type": "integer"
55 65
        },
56 66
        "y": {
57 67
          "type": "integer"
58 68
        }
59 69
      },
60 70
      "required": [
61 71
        "block",
62 72
        "x",
63 73
        "y",
64 74
        "width"
65 75
      ],
66 76
      "type": "object"
67 77
    },
68 78
    "main": {
69 79
      "properties": {
70 80
        "blocks": {
71 81
          "items": {
72 82
            "ref": "#block",
73 83
            "type": "ref"
74 84
          },
75 85
          "type": "array"
76 86
        },
77 87
        "height": {
78 88
          "description": "Fixed canvas height in canvas px; see width.",
79 89
          "type": "integer"
80 90
        },
81 91
        "id": {
82 92
          "type": "string"
83 93
        },
84 94
        "lockViewerZoom": {
85 95
          "description": "Viewers cannot zoom the canvas or scroll it sideways: no wheel, pinch, double-tap or zoom controls, and the initial framing (see mobileView) stays. Vertical scrolling is unaffected.",
86 96
          "type": "boolean"
87 97
        },
88 98
        "mobileView": {
89 99
          "description": "How a narrow viewport frames the canvas: the whole canvas scaled to fit the width (unconstrained, the default), or a phone-width area anchored to the canvas's left edge or centered on it, shown at up to 1:1.",
90 100
          "knownValues": [
91 101
            "unconstrained",
92 102
            "left",
93 103
            "center"
94 104
          ],
95 105
          "type": "string"
96 106
        },
97 107
        "width": {
98 108
          "description": "Fixed canvas width in canvas px. With height, bounds the canvas: blocks are clipped to the area. Absent, the canvas is 1272px wide and grows with its content.",
99 109
          "type": "integer"
100 110
        }
101 111
      },
102 112
      "required": [
103 113
        "blocks"
104 114
      ],
105 115
      "type": "object"
106 116
    },
107 117
    "position": {
108 118
      "properties": {
109 119
        "block": {
110 120
          "items": {
111 121
            "type": "integer"
112 122
          },
113 123
          "type": "array"
114 124
        },
115 125
        "offset": {
116 126
          "type": "integer"
117 127
        }
118 128
      },
119 129
      "required": [
120 130
        "block",
121 131
        "offset"
122 132
      ],
123 133
      "type": "object"
124 134
    },
125 135
    "quote": {
126 136
      "properties": {
127 137
        "end": {
128 138
          "ref": "#position",
129 139
          "type": "ref"
130 140
        },
131 141
        "start": {
132 142
          "ref": "#position",
133 143
          "type": "ref"
134 144
        }
135 145
      },
136 146
      "required": [
137 147
        "start",
138 148
        "end"
139 149
      ],
140 150
      "type": "object"
141 151
    },
142 152
    "textAlignCenter": {
143 153
      "type": "token"
144 154
    },
145 155
    "textAlignLeft": {
146 156
      "type": "token"
147 157
    },
148 158
    "textAlignRight": {
149 159
      "type": "token"
150 160
    }
151 161
  },
152 162
  "id": "pub.leaflet.pages.canvas",
153 163
  "lexicon": 1
154 164
}

Compare Other Versions

Lexicon Garden

@