pub.leaflet.pages.canvas
Schema Diff
+26 -1
Compatibility Analysis
Breaking Changes Detected
14 breaking changes, 34 non-breaking changes.
Breaking Changes (14)
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant17", kind: "variant", name: Some("pub.leaflet.blocks.poll") }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant18", kind: "variant", name: Some("pub.leaflet.blocks.button") }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant19", kind: "variant", name: Some("pub.leaflet.blocks.postsList") }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant20", kind: "variant", name: Some("pub.leaflet.blocks.signup") }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant21", kind: "variant", name: Some("pub.leaflet.blocks.recommendedPubs") }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant22", kind: "variant", name: Some("pub.leaflet.blocks.membersOnlyDelimiter") }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant23", kind: "variant", name: Some("pub.leaflet.blocks.postHeader") }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant17", tgt: "pub.leaflet.blocks.poll", kind: "ref", name: None }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant18", tgt: "pub.leaflet.blocks.button", kind: "ref", name: None }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant19", tgt: "pub.leaflet.blocks.postsList", kind: "ref", name: None }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant20", tgt: "pub.leaflet.blocks.signup", kind: "ref", name: None }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant21", tgt: "pub.leaflet.blocks.recommendedPubs", kind: "ref", name: None }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant22", tgt: "pub.leaflet.blocks.membersOnlyDelimiter", kind: "ref", name: None }
- RemovedEdge RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant23", tgt: "pub.leaflet.blocks.postHeader", kind: "ref", name: None }
Non-Breaking Changes (34)
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.blocks.drawing" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.blocks.embeddedCanvas" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.canvas#block.block:variant24" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.canvas#block.block:variant25" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.canvas#block.block:variant26" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.canvas.height" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.canvas.lockViewerZoom" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.canvas.mobileView" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.canvas.width" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.pages.linearDocument" }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas", tgt: "pub.leaflet.pages.canvas.height", kind: "prop", name: Some("height") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas", tgt: "pub.leaflet.pages.canvas.lockViewerZoom", kind: "prop", name: Some("lockViewerZoom") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas", tgt: "pub.leaflet.pages.canvas.mobileView", kind: "prop", name: Some("mobileView") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas", tgt: "pub.leaflet.pages.canvas.width", kind: "prop", name: Some("width") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant17", kind: "variant", name: Some("pub.leaflet.blocks.embeddedCanvas") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant18", kind: "variant", name: Some("pub.leaflet.blocks.poll") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant19", kind: "variant", name: Some("pub.leaflet.blocks.button") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant20", kind: "variant", name: Some("pub.leaflet.blocks.postsList") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant21", kind: "variant", name: Some("pub.leaflet.blocks.signup") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant22", kind: "variant", name: Some("pub.leaflet.blocks.recommendedPubs") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant23", kind: "variant", name: Some("pub.leaflet.blocks.membersOnlyDelimiter") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant24", kind: "variant", name: Some("pub.leaflet.blocks.postHeader") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant25", kind: "variant", name: Some("pub.leaflet.blocks.drawing") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant26", kind: "variant", name: Some("pub.leaflet.pages.linearDocument") }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant17", tgt: "pub.leaflet.blocks.embeddedCanvas", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant18", tgt: "pub.leaflet.blocks.poll", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant19", tgt: "pub.leaflet.blocks.button", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant20", tgt: "pub.leaflet.blocks.postsList", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant21", tgt: "pub.leaflet.blocks.signup", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant22", tgt: "pub.leaflet.blocks.recommendedPubs", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant23", tgt: "pub.leaflet.blocks.membersOnlyDelimiter", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant24", tgt: "pub.leaflet.blocks.postHeader", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant25", tgt: "pub.leaflet.blocks.drawing", kind: "ref", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant26", tgt: "pub.leaflet.pages.linearDocument", kind: "ref", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "pub.leaflet.blocks.drawing" }AddedVertex { vertex_id: "pub.leaflet.blocks.embeddedCanvas" }AddedVertex { vertex_id: "pub.leaflet.pages.canvas#block.block:variant24" }AddedVertex { vertex_id: "pub.leaflet.pages.canvas#block.block:variant25" }AddedVertex { vertex_id: "pub.leaflet.pages.canvas#block.block:variant26" }AddedVertex { vertex_id: "pub.leaflet.pages.canvas.height" }AddedVertex { vertex_id: "pub.leaflet.pages.canvas.lockViewerZoom" }AddedVertex { vertex_id: "pub.leaflet.pages.canvas.mobileView" }AddedVertex { vertex_id: "pub.leaflet.pages.canvas.width" }AddedVertex { vertex_id: "pub.leaflet.pages.linearDocument" }
Additional Notes
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant17", kind: "variant", name: Some("pub.leaflet.blocks.poll") }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant18", kind: "variant", name: Some("pub.leaflet.blocks.button") }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant19", kind: "variant", name: Some("pub.leaflet.blocks.postsList") }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant20", kind: "variant", name: Some("pub.leaflet.blocks.signup") }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant21", kind: "variant", name: Some("pub.leaflet.blocks.recommendedPubs") }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant22", kind: "variant", name: Some("pub.leaflet.blocks.membersOnlyDelimiter") }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant23", kind: "variant", name: Some("pub.leaflet.blocks.postHeader") }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant17", tgt: "pub.leaflet.blocks.poll", kind: "ref", name: None }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant18", tgt: "pub.leaflet.blocks.button", kind: "ref", name: None }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant19", tgt: "pub.leaflet.blocks.postsList", kind: "ref", name: None }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant20", tgt: "pub.leaflet.blocks.signup", kind: "ref", name: None }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant21", tgt: "pub.leaflet.blocks.recommendedPubs", kind: "ref", name: None }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant22", tgt: "pub.leaflet.blocks.membersOnlyDelimiter", kind: "ref", name: None }
- Breaking: RemovedEdge { src: "pub.leaflet.pages.canvas#block.block:variant23", tgt: "pub.leaflet.blocks.postHeader", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas", tgt: "pub.leaflet.pages.canvas.height", kind: "prop", name: Some("height") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas", tgt: "pub.leaflet.pages.canvas.lockViewerZoom", kind: "prop", name: Some("lockViewerZoom") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas", tgt: "pub.leaflet.pages.canvas.mobileView", kind: "prop", name: Some("mobileView") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas", tgt: "pub.leaflet.pages.canvas.width", kind: "prop", name: Some("width") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant17", kind: "variant", name: Some("pub.leaflet.blocks.embeddedCanvas") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant18", kind: "variant", name: Some("pub.leaflet.blocks.poll") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant19", kind: "variant", name: Some("pub.leaflet.blocks.button") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant20", kind: "variant", name: Some("pub.leaflet.blocks.postsList") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant21", kind: "variant", name: Some("pub.leaflet.blocks.signup") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant22", kind: "variant", name: Some("pub.leaflet.blocks.recommendedPubs") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant23", kind: "variant", name: Some("pub.leaflet.blocks.membersOnlyDelimiter") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant24", kind: "variant", name: Some("pub.leaflet.blocks.postHeader") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant25", kind: "variant", name: Some("pub.leaflet.blocks.drawing") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block", tgt: "pub.leaflet.pages.canvas#block.block:variant26", kind: "variant", name: Some("pub.leaflet.pages.linearDocument") }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant17", tgt: "pub.leaflet.blocks.embeddedCanvas", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant18", tgt: "pub.leaflet.blocks.poll", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant19", tgt: "pub.leaflet.blocks.button", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant20", tgt: "pub.leaflet.blocks.postsList", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant21", tgt: "pub.leaflet.blocks.signup", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant22", tgt: "pub.leaflet.blocks.recommendedPubs", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant23", tgt: "pub.leaflet.blocks.membersOnlyDelimiter", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant24", tgt: "pub.leaflet.blocks.postHeader", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant25", tgt: "pub.leaflet.blocks.drawing", kind: "ref", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.pages.canvas#block.block:variant26", tgt: "pub.leaflet.pages.linearDocument", kind: "ref", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"block": {
5
5
"properties": {
6
6
"block": {
7
+
"description": "A single block, or a linear document: blocks grouped in reading order that are positioned, sized and rotated on the canvas as one.",
7
8
"refs": [
8
9
"pub.leaflet.blocks.iframe",
9
10
"pub.leaflet.blocks.html",
10
11
"pub.leaflet.blocks.text",
11
12
"pub.leaflet.blocks.blockquote",
12
13
"pub.leaflet.blocks.header",
13
14
"pub.leaflet.blocks.image",
14
15
"pub.leaflet.blocks.imageGallery",
15
16
"pub.leaflet.blocks.unorderedList",
16
17
"pub.leaflet.blocks.orderedList",
17
18
"pub.leaflet.blocks.website",
18
19
"pub.leaflet.blocks.math",
19
20
"pub.leaflet.blocks.code",
20
21
"pub.leaflet.blocks.horizontalRule",
21
22
"pub.leaflet.blocks.bskyPost",
22
23
"pub.leaflet.blocks.standardSitePost",
23
24
"pub.leaflet.blocks.standardSitePublication",
24
25
"pub.leaflet.blocks.page",
26
+
"pub.leaflet.blocks.embeddedCanvas",
25
27
"pub.leaflet.blocks.poll",
26
28
"pub.leaflet.blocks.button",
27
29
"pub.leaflet.blocks.postsList",
28
30
"pub.leaflet.blocks.signup",
29
31
"pub.leaflet.blocks.recommendedPubs",
30
32
"pub.leaflet.blocks.membersOnlyDelimiter",
31
-
"pub.leaflet.blocks.postHeader"
33
+
"pub.leaflet.blocks.postHeader",
34
+
"pub.leaflet.blocks.drawing",
35
+
"pub.leaflet.pages.linearDocument"
32
36
],
33
37
"type": "union"
34
38
},
35
39
"height": {
36
40
"type": "integer"
37
41
},
38
42
"rotation": {
39
43
"description": "The rotation of the block in degrees",
40
44
"type": "integer"
41
45
},
42
46
"stackOrder": {
43
47
"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.",
44
48
"type": "string"
45
49
},
46
50
"width": {
47
51
"type": "integer"
48
52
},
49
53
"x": {
50
54
"type": "integer"
51
55
},
52
56
"y": {
53
57
"type": "integer"
54
58
}
55
59
},
56
60
"required": [
57
61
"block",
58
62
"x",
59
63
"y",
60
64
"width"
61
65
],
62
66
"type": "object"
63
67
},
64
68
"main": {
65
69
"properties": {
66
70
"blocks": {
67
71
"items": {
68
72
"ref": "#block",
69
73
"type": "ref"
70
74
},
71
75
"type": "array"
72
76
},
77
+
"height": {
78
+
"description": "Fixed canvas height in canvas px; see width.",
79
+
"type": "integer"
80
+
},
73
81
"id": {
74
82
"type": "string"
83
+
},
84
+
"lockViewerZoom": {
85
+
"description": "Viewers cannot zoom the canvas: no wheel, pinch, double-tap or zoom controls.",
86
+
"type": "boolean"
87
+
},
88
+
"mobileView": {
89
+
"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
+
"knownValues": [
91
+
"unconstrained",
92
+
"left",
93
+
"center"
94
+
],
95
+
"type": "string"
96
+
},
97
+
"width": {
98
+
"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
+
"type": "integer"
75
100
}
76
101
},
77
102
"required": [
78
103
"blocks"
79
104
],
80
105
"type": "object"
81
106
},
82
107
"position": {
83
108
"properties": {
84
109
"block": {
85
110
"items": {
86
111
"type": "integer"
87
112
},
88
113
"type": "array"
89
114
},
90
115
"offset": {
91
116
"type": "integer"
92
117
}
93
118
},
94
119
"required": [
95
120
"block",
96
121
"offset"
97
122
],
98
123
"type": "object"
99
124
},
100
125
"quote": {
101
126
"properties": {
102
127
"end": {
103
128
"ref": "#position",
104
129
"type": "ref"
105
130
},
106
131
"start": {
107
132
"ref": "#position",
108
133
"type": "ref"
109
134
}
110
135
},
111
136
"required": [
112
137
"start",
113
138
"end"
114
139
],
115
140
"type": "object"
116
141
},
117
142
"textAlignCenter": {
118
143
"type": "token"
119
144
},
120
145
"textAlignLeft": {
121
146
"type": "token"
122
147
},
123
148
"textAlignRight": {
124
149
"type": "token"
125
150
}
126
151
},
127
152
"id": "pub.leaflet.pages.canvas",
128
153
"lexicon": 1
129
154
}