at.inlay.canvas
Schema Diff
+17 -4
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 8 non-breaking changes.
Breaking Changes (2)
- RemovedVertex RemovedVertex { vertex_id: "at.inlay.canvas#window.element" }
- RemovedEdge RemovedEdge { src: "at.inlay.canvas#window", tgt: "at.inlay.canvas#window.element", kind: "prop", name: Some("element") }
Non-Breaking Changes (8)
- AddedVertex AddedVertex { vertex_id: "at.inlay.canvas#window.componentUri" }
- AddedVertex AddedVertex { vertex_id: "at.inlay.canvas#window.props" }
- AddedVertex AddedVertex { vertex_id: "at.inlay.canvas:body.overrides" }
- AddedVertex AddedVertex { vertex_id: "at.inlay.canvas:body.overrides:items" }
- AddedEdge AddedEdge { src: "at.inlay.canvas#window", tgt: "at.inlay.canvas#window.componentUri", kind: "prop", name: Some("componentUri") }
- AddedEdge AddedEdge { src: "at.inlay.canvas#window", tgt: "at.inlay.canvas#window.props", kind: "prop", name: Some("props") }
- AddedEdge AddedEdge { src: "at.inlay.canvas:body", tgt: "at.inlay.canvas:body.overrides", kind: "prop", name: Some("overrides") }
- AddedEdge AddedEdge { src: "at.inlay.canvas:body.overrides", tgt: "at.inlay.canvas:body.overrides:items", kind: "items", name: None }
Migration Guidance
Removed Elements
RemovedVertex { vertex_id: "at.inlay.canvas#window.element" }
Added Elements
AddedVertex { vertex_id: "at.inlay.canvas#window.componentUri" }AddedVertex { vertex_id: "at.inlay.canvas#window.props" }AddedVertex { vertex_id: "at.inlay.canvas:body.overrides" }AddedVertex { vertex_id: "at.inlay.canvas:body.overrides:items" }
Additional Notes
- Breaking: RemovedEdge { src: "at.inlay.canvas#window", tgt: "at.inlay.canvas#window.element", kind: "prop", name: Some("element") }
- Non-breaking: AddedEdge { src: "at.inlay.canvas#window", tgt: "at.inlay.canvas#window.componentUri", kind: "prop", name: Some("componentUri") }
- Non-breaking: AddedEdge { src: "at.inlay.canvas#window", tgt: "at.inlay.canvas#window.props", kind: "prop", name: Some("props") }
- Non-breaking: AddedEdge { src: "at.inlay.canvas:body", tgt: "at.inlay.canvas:body.overrides", kind: "prop", name: Some("overrides") }
- Non-breaking: AddedEdge { src: "at.inlay.canvas:body.overrides", tgt: "at.inlay.canvas:body.overrides:items", kind: "items", name: None }
1
1
{
2
2
"id": "at.inlay.canvas",
3
3
"defs": {
4
4
"main": {
5
5
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"windows"
11
11
],
12
12
"properties": {
13
13
"windows": {
14
14
"type": "array",
15
15
"items": {
16
16
"ref": "#window",
17
17
"type": "ref"
18
18
}
19
19
},
20
20
"createdAt": {
21
21
"type": "string",
22
22
"format": "datetime"
23
+
},
24
+
"overrides": {
25
+
"type": "array",
26
+
"items": {
27
+
"type": "string",
28
+
"format": "did"
29
+
},
30
+
"description": "Ordered DID stack for resolution overrides. DIDs listed here are prepended to every component's import stack during rendering."
23
31
}
24
32
}
25
33
},
26
34
"description": "Canvas - a spatial arrangement of component windows."
27
35
},
28
36
"window": {
29
37
"type": "object",
30
38
"required": [
31
39
"id",
32
40
"x",
33
41
"y",
34
42
"z",
35
-
"element"
43
+
"componentUri"
36
44
],
37
45
"properties": {
38
46
"x": {
39
47
"type": "integer"
40
48
},
41
49
"y": {
42
50
"type": "integer"
43
51
},
44
52
"z": {
45
53
"type": "integer"
46
54
},
47
55
"id": {
48
56
"type": "string",
49
57
"maxLength": 64
50
58
},
59
+
"props": {
60
+
"type": "unknown",
61
+
"description": "Properties to pass to the component."
62
+
},
51
63
"width": {
52
64
"type": "integer"
53
65
},
54
66
"height": {
55
67
"type": "integer"
56
68
},
57
-
"element": {
58
-
"ref": "at.inlay.defs#element",
59
-
"type": "ref"
69
+
"componentUri": {
70
+
"type": "string",
71
+
"format": "at-uri",
72
+
"description": "AT URI of the component record to render."
60
73
}
61
74
}
62
75
}
63
76
},
64
77
"$type": "com.atproto.lexicon.schema",
65
78
"lexicon": 1
66
79
}