atproto blogging
1{
2 "lexicon": 1,
3 "id": "sh.weaver.edit.cursor",
4 "defs": {
5 "containerId": {
6 "type": "object",
7 "required": [
8 "value"
9 ],
10 "properties": {
11 "value": {
12 "type": "union",
13 "refs": [
14 "#normalContainerId",
15 "#rootContainerId"
16 ]
17 }
18 }
19 },
20 "cursorSide": {
21 "type": "object",
22 "required": [
23 "value"
24 ],
25 "properties": {
26 "value": {
27 "type": "integer",
28 "description": "The side of an item the cursor is on (left = -1, right = 1, middle = 0)",
29 "enum": [
30 -1,
31 0,
32 1
33 ]
34 }
35 }
36 },
37 "id": {
38 "type": "object",
39 "required": [
40 "peer",
41 "counter"
42 ],
43 "properties": {
44 "counter": {
45 "type": "integer"
46 },
47 "peer": {
48 "type": "integer"
49 }
50 }
51 },
52 "main": {
53 "type": "record",
54 "description": "An edit record for a notebook.",
55 "key": "tid",
56 "record": {
57 "type": "object",
58 "required": [
59 "container",
60 "id"
61 ],
62 "properties": {
63 "container": {
64 "type": "ref",
65 "ref": "#containerId"
66 },
67 "id": {
68 "type": "ref",
69 "ref": "#id"
70 },
71 "side": {
72 "type": "ref",
73 "ref": "#cursorSide"
74 }
75 }
76 }
77 },
78 "normalContainerId": {
79 "type": "object",
80 "required": [
81 "peer",
82 "counter",
83 "container_type"
84 ],
85 "properties": {
86 "container_type": {
87 "type": "string",
88 "enum": [
89 "Map",
90 "List",
91 "Text",
92 "Tree",
93 "MovableList",
94 "Counter"
95 ]
96 },
97 "counter": {
98 "type": "integer"
99 },
100 "peer": {
101 "type": "integer"
102 }
103 }
104 },
105 "rootContainerId": {
106 "type": "object",
107 "required": [
108 "name",
109 "container_type"
110 ],
111 "properties": {
112 "container_type": {
113 "type": "string",
114 "enum": [
115 "Map",
116 "List",
117 "Text",
118 "Tree",
119 "MovableList",
120 "Counter"
121 ]
122 },
123 "name": {
124 "type": "string"
125 }
126 }
127 }
128 }
129}