pub.leaflet.blocks.drawing
Schema Diff
+29 -0
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 10 non-breaking changes.
Breaking Changes (2)
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "pub.leaflet.blocks.drawing#fill", src: "pub.leaflet.blocks.drawing#fill", tgt: "pub.leaflet.blocks.drawing#fill.points", kind: "prop", name: Some("points") }
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "pub.leaflet.blocks.drawing#fill", src: "pub.leaflet.blocks.drawing#fill", tgt: "pub.leaflet.blocks.drawing#fill.color", kind: "prop", name: Some("color") }
Non-Breaking Changes (10)
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.blocks.drawing#fill" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.blocks.drawing#fill.color" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.blocks.drawing#fill.points" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.blocks.drawing#fill.points:items" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.blocks.drawing.fills" }
- AddedVertex AddedVertex { vertex_id: "pub.leaflet.blocks.drawing.fills:items" }
- AddedEdge AddedEdge { src: "pub.leaflet.blocks.drawing", tgt: "pub.leaflet.blocks.drawing.fills", kind: "prop", name: Some("fills") }
- AddedEdge AddedEdge { src: "pub.leaflet.blocks.drawing#fill.points", tgt: "pub.leaflet.blocks.drawing#fill.points:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.blocks.drawing.fills", tgt: "pub.leaflet.blocks.drawing.fills:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "pub.leaflet.blocks.drawing.fills:items", tgt: "pub.leaflet.blocks.drawing#fill", kind: "ref", name: None }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "pub.leaflet.blocks.drawing#fill" }AddedVertex { vertex_id: "pub.leaflet.blocks.drawing#fill.color" }AddedVertex { vertex_id: "pub.leaflet.blocks.drawing#fill.points" }AddedVertex { vertex_id: "pub.leaflet.blocks.drawing#fill.points:items" }AddedVertex { vertex_id: "pub.leaflet.blocks.drawing.fills" }AddedVertex { vertex_id: "pub.leaflet.blocks.drawing.fills:items" }
Additional Notes
- Breaking: RequiredEdgeAdded { vertex_id: "pub.leaflet.blocks.drawing#fill", src: "pub.leaflet.blocks.drawing#fill", tgt: "pub.leaflet.blocks.drawing#fill.points", kind: "prop", name: Some("points") }
- Breaking: RequiredEdgeAdded { vertex_id: "pub.leaflet.blocks.drawing#fill", src: "pub.leaflet.blocks.drawing#fill", tgt: "pub.leaflet.blocks.drawing#fill.color", kind: "prop", name: Some("color") }
- Non-breaking: AddedEdge { src: "pub.leaflet.blocks.drawing", tgt: "pub.leaflet.blocks.drawing.fills", kind: "prop", name: Some("fills") }
- Non-breaking: AddedEdge { src: "pub.leaflet.blocks.drawing#fill.points", tgt: "pub.leaflet.blocks.drawing#fill.points:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.blocks.drawing.fills", tgt: "pub.leaflet.blocks.drawing.fills:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "pub.leaflet.blocks.drawing.fills:items", tgt: "pub.leaflet.blocks.drawing#fill", kind: "ref", name: None }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
+
"fill": {
5
+
"description": "A filled polygon, painted with the nonzero rule: the region a stroke encloses.",
6
+
"properties": {
7
+
"color": {
8
+
"description": "A CSS hex color, or one of the document theme's colors: primary (text), accent, or tertiary (faded text).",
9
+
"type": "string"
10
+
},
11
+
"points": {
12
+
"description": "Flattened vertices as x, y pairs in drawing space. The last joins back to the first.",
13
+
"items": {
14
+
"type": "integer"
15
+
},
16
+
"type": "array"
17
+
}
18
+
},
19
+
"required": [
20
+
"points",
21
+
"color"
22
+
],
23
+
"type": "object"
24
+
},
4
25
"main": {
5
26
"description": "Freehand ink strokes. The view box is the area of drawing space the block shows, scaled to the block's width; strokes may reach past it.",
6
27
"properties": {
28
+
"fills": {
29
+
"description": "Painted in order, beneath the strokes.",
30
+
"items": {
31
+
"ref": "#fill",
32
+
"type": "ref"
33
+
},
34
+
"type": "array"
35
+
},
7
36
"strokes": {
8
37
"items": {
9
38
"ref": "#stroke",
10
39
"type": "ref"
11
40
},
12
41
"type": "array"
13
42
},
14
43
"viewBox": {
15
44
"ref": "#viewBox",
16
45
"type": "ref"
17
46
}
18
47
},
19
48
"required": [
20
49
"viewBox",
21
50
"strokes"
22
51
],
23
52
"type": "object"
24
53
},
25
54
"stroke": {
26
55
"description": "One pen stroke, drawn in order, rendered as a variable-width outline of its input points (as perfect-freehand does).",
27
56
"properties": {
28
57
"color": {
29
58
"description": "A CSS hex color, or one of the document theme's colors: primary (text), accent, or tertiary (faded text).",
30
59
"type": "string"
31
60
},
32
61
"points": {
33
62
"description": "Flattened input points as x, y, pressure triples: x and y in drawing space, pressure from 0 to 1000.",
34
63
"items": {
35
64
"type": "integer"
36
65
},
37
66
"type": "array"
38
67
},
39
68
"simulatePressure": {
40
69
"description": "The input had no real pressure (a mouse or finger); derive it from the stroke's speed instead.",
41
70
"type": "boolean"
42
71
},
43
72
"size": {
44
73
"description": "The stroke's base diameter in drawing space.",
45
74
"minimum": 1,
46
75
"type": "integer"
47
76
}
48
77
},
49
78
"required": [
50
79
"points",
51
80
"color",
52
81
"size"
53
82
],
54
83
"type": "object"
55
84
},
56
85
"viewBox": {
57
86
"properties": {
58
87
"height": {
59
88
"minimum": 1,
60
89
"type": "integer"
61
90
},
62
91
"width": {
63
92
"minimum": 1,
64
93
"type": "integer"
65
94
},
66
95
"x": {
67
96
"type": "integer"
68
97
},
69
98
"y": {
70
99
"type": "integer"
71
100
}
72
101
},
73
102
"required": [
74
103
"x",
75
104
"y",
76
105
"width",
77
106
"height"
78
107
],
79
108
"type": "object"
80
109
}
81
110
},
82
111
"id": "pub.leaflet.blocks.drawing",
83
112
"lexicon": 1
84
113
}