tangled
alpha
login
or
join now
nonbinary.computer
/
weaver
atproto blogging
26
fork
atom
overview
issues
2
pulls
pipelines
lexicon updates
Orual
3 months ago
84b1cc9b
2c0b32a3
+184
-25
6 changed files
expand all
collapse all
unified
split
lexicons
sh
weaver
actor
defs.json
profile.json
edit
cursor.json
embed
images.json
records.json
notebook
defs.json
+52
-5
lexicons/sh/weaver/actor/defs.json
···
15
15
},
16
16
"description": {
17
17
"type": "string",
18
18
-
"maxGraphemes": 256,
19
19
-
"maxLength": 2560
18
18
+
"maxGraphemes": 1024,
19
19
+
"maxLength": 10240
20
20
},
21
21
"avatar": { "type": "string", "format": "uri" },
22
22
+
"banner": { "type": "string", "format": "uri" },
22
23
"location": {
23
24
"type": "string",
24
25
"description": "Free-form location text.",
···
37
38
},
38
39
"indexedAt": { "type": "string", "format": "datetime" },
39
40
"createdAt": { "type": "string", "format": "datetime" },
40
40
-
41
41
+
"pinned": {
42
42
+
"description": "Notebooks or other records pinned for display."
43
43
+
"type": "ref",
44
44
+
"ref": "sh.weaver.actor.profile#pinnedList"
45
45
+
}
46
46
+
"labels": {
47
47
+
"type": "array",
48
48
+
"items": { "type": "ref", "ref": "com.atproto.label.defs#label" }
49
49
+
},
50
50
+
"pronouns": {
51
51
+
"type": "ref",
52
52
+
"description": "Pronouns to use in user-generated content.",
53
53
+
"ref": "sh.weaver.actor.profile#pronounsList"
54
54
+
},
55
55
+
"subscriberCount": {
56
56
+
"type": "integer"
57
57
+
},
58
58
+
"subscribedCount": {
59
59
+
"type": "integer"
60
60
+
},
61
61
+
}
62
62
+
},
63
63
+
"profileViewBasic": {
64
64
+
"type": "object",
65
65
+
"required": ["did", "handle"],
66
66
+
"properties": {
67
67
+
"did": { "type": "string", "format": "did" },
68
68
+
"handle": { "type": "string", "format": "handle" },
69
69
+
"displayName": {
70
70
+
"type": "string",
71
71
+
"maxGraphemes": 64,
72
72
+
"maxLength": 640
73
73
+
},
74
74
+
"avatar": { "type": "string", "format": "uri" },
75
75
+
"indexedAt": { "type": "string", "format": "datetime" },
76
76
+
"createdAt": { "type": "string", "format": "datetime" },
41
77
"labels": {
42
78
"type": "array",
43
79
"items": { "type": "ref", "ref": "com.atproto.label.defs#label" }
···
46
82
"type": "ref",
47
83
"description": "Pronouns to use in user-generated content.",
48
84
"ref": "sh.weaver.actor.profile#pronounsList"
49
49
-
}
85
85
+
},
50
86
}
51
87
},
52
88
"profileDataView": {
···
55
91
"properties": {
56
92
"inner": {
57
93
"type": "union",
58
58
-
"refs": ["sh.weaver.actor.defs#profileView", "app.bsky.actor.defs#profileViewDetailed"]
94
94
+
"refs": ["sh.weaver.actor.defs#profileView", "app.bsky.actor.defs#profileViewDetailed", "#tangledProfileView"]
95
95
+
}
96
96
+
}
97
97
+
},
98
98
+
"profileDataViewBasic": {
99
99
+
"type": "object",
100
100
+
"required": ["inner"],
101
101
+
"properties": {
102
102
+
"inner": {
103
103
+
"type": "union",
104
104
+
"refs": ["sh.weaver.actor.defs#profileViewBasic", "app.bsky.actor.defs#profileViewBasic", "#tangledProfileView"]
59
105
}
60
106
}
61
107
},
···
73
119
}
74
120
}
75
121
},
122
122
+
76
123
"tangledProfileView": {
77
124
"type": "object",
78
125
"required": ["bluesky", "did", "handle"],
+34
-5
lexicons/sh/weaver/actor/profile.json
···
17
17
"description": {
18
18
"type": "string",
19
19
"description": "Free-form profile description text.",
20
20
-
"maxGraphemes": 256,
21
21
-
"maxLength": 2560
20
20
+
"maxGraphemes": 1024,
21
21
+
"maxLength": 10240
22
22
},
23
23
"avatar": {
24
24
"type": "blob",
···
26
26
"accept": ["image/png", "image/jpeg"],
27
27
"maxSize": 1000000
28
28
},
29
29
+
"banner": {
30
30
+
"type": "blob",
31
31
+
"description": "Larger horizontal image to display behind profile view.",
32
32
+
"accept": [
33
33
+
"image/png",
34
34
+
"image/jpeg"
35
35
+
],
36
36
+
"maxSize": 1000000
37
37
+
},
29
38
"links": {
30
39
"type": "array",
31
40
"minLength": 0,
···
41
50
"description": "Pronouns to use in user-generated content.",
42
51
"ref": "#pronounsList"
43
52
},
44
44
-
"pinnedPost": {
53
53
+
"pinned": {
54
54
+
"description": "Notebooks or other records pinned for display."
45
55
"type": "ref",
46
46
-
"ref": "com.atproto.repo.strongRef"
56
56
+
"ref": "#pinnedList"
47
57
},
48
58
"bluesky": {
49
59
"type": "boolean",
···
53
63
"type": "boolean",
54
64
"description": "Include link to this account on Tangled."
55
65
},
66
66
+
"streamplace": {
67
67
+
"type": "boolean",
68
68
+
"description": "Include link to this account on stream.place."
69
69
+
},
70
70
+
"labels": {
71
71
+
"type": "union",
72
72
+
"description": "Self-label values, specific to the application, on the overall account.",
73
73
+
"refs": [
74
74
+
"com.atproto.label.defs#selfLabels"
75
75
+
]
76
76
+
},
56
77
"location": {
57
78
"type": "string",
58
79
"description": "Free-form location text.",
···
67
88
"type": "array",
68
89
"items": {
69
90
"type": "string",
70
70
-
"enum": ["she/her", "he/him", "they/them", "it/its", "she/they", "he/they", "they/he", "they/she"]
91
91
+
"maxLength": "50",
92
92
+
"knownValues": ["she/her", "he/him", "they/them", "it/its", "she/they", "he/they", "they/he", "they/she", "any/all"]
93
93
+
}
94
94
+
},
95
95
+
"pinnedList": {
96
96
+
"type": "array",
97
97
+
"items": {
98
98
+
"type": "ref",
99
99
+
"ref": "com.atproto.repo.strongRef"
71
100
}
72
101
}
73
102
}
+1
-1
lexicons/sh/weaver/edit/cursor.json
···
8
8
"key": "tid",
9
9
"record": {
10
10
"type": "object",
11
11
-
"required": ["container", "die"],
11
11
+
"required": ["container", "id"],
12
12
"properties": {
13
13
"id": {
14
14
"type": "ref",
+55
-1
lexicons/sh/weaver/embed/images.json
···
18
18
"type": "object",
19
19
"required": ["image", "alt"],
20
20
"properties": {
21
21
+
"name": {
22
22
+
"type": "string",
23
23
+
"maxLength": 128
24
24
+
},
21
25
"image": {
22
26
"type": "blob",
23
27
"accept": ["image/*"],
···
34
38
},
35
39
"dimensions": {
36
40
"type": "union",
37
37
-
"refs": ["app.bsky.embed.defs#aspectRatio", "sh.weaver.embed.defs#percentSize", "sh.weaver.embed.defs#pixelSize"]
41
41
+
"refs": [
42
42
+
"app.bsky.embed.defs#aspectRatio",
43
43
+
"sh.weaver.embed.defs#percentSize",
44
44
+
"sh.weaver.embed.defs#pixelSize"
45
45
+
]
46
46
+
}
47
47
+
}
48
48
+
},
49
49
+
"view": {
50
50
+
"type": "object",
51
51
+
"required": ["images"],
52
52
+
"properties": {
53
53
+
"images": {
54
54
+
"type": "array",
55
55
+
"items": {
56
56
+
"type": "ref",
57
57
+
"ref": "#viewImage"
58
58
+
},
59
59
+
"maxLength": 48
60
60
+
}
61
61
+
}
62
62
+
},
63
63
+
"viewImage": {
64
64
+
"type": "object",
65
65
+
"required": ["thumb", "fullsize", "alt"],
66
66
+
"properties": {
67
67
+
"name": {
68
68
+
"type": "string",
69
69
+
"maxLength": 128
70
70
+
},
71
71
+
"alt": {
72
72
+
"type": "string",
73
73
+
"description": "Alt text description of the image, for accessibility."
74
74
+
},
75
75
+
"dimensions": {
76
76
+
"type": "union",
77
77
+
"refs": [
78
78
+
"app.bsky.embed.defs#aspectRatio",
79
79
+
"sh.weaver.embed.defs#percentSize",
80
80
+
"sh.weaver.embed.defs#pixelSize"
81
81
+
]
82
82
+
},
83
83
+
"fullsize": {
84
84
+
"type": "string",
85
85
+
"description": "Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.",
86
86
+
"format": "uri"
87
87
+
},
88
88
+
"thumb": {
89
89
+
"type": "string",
90
90
+
"description": "Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.",
91
91
+
"format": "uri"
38
92
}
39
93
}
40
94
}
+41
-12
lexicons/sh/weaver/embed/records.json
···
9
9
"properties": {
10
10
"records": {
11
11
"type": "array",
12
12
-
"items": { "type": "ref", "ref": "com.atproto.repo.strongRef" },
12
12
+
"items": { "type": "ref", "ref": "#recordEmbed" },
13
13
"maxLength": 48
14
14
}
15
15
}
16
16
},
17
17
+
"recordEmbed": {
18
18
+
"type": "object",
19
19
+
"required": ["record"],
20
20
+
"properties": {
21
21
+
"record": {
22
22
+
"type": "ref",
23
23
+
"ref": "com.atproto.repo.strongRef"
24
24
+
},
25
25
+
"name": {
26
26
+
"type": "string",
27
27
+
"maxLength": 128
28
28
+
}
29
29
+
}
30
30
+
},
31
31
+
"recordEmbedView": {
32
32
+
"type": "object",
33
33
+
"required": ["recordView"],
34
34
+
"properties": {
35
35
+
"recordView": {
36
36
+
"type": "union",
37
37
+
"refs": [
38
38
+
"app.bsky.embed.images#view",
39
39
+
"app.bsky.embed.video#view",
40
40
+
"app.bsky.embed.external#view",
41
41
+
"app.bsky.embed.record#view",
42
42
+
"app.bsky.embed.recordWithMedia#view",
43
43
+
"sh.weaver.embed.records#view",
44
44
+
"sh.weaver.embed.images#view"
45
45
+
]
46
46
+
},
47
47
+
"name": {
48
48
+
"type": "string",
49
49
+
"maxLength": 128
50
50
+
}
51
51
+
}
52
52
+
},
17
53
"view": {
18
54
"type": "object",
19
55
"required": ["record"],
···
40
76
"uri": { "type": "string", "format": "at-uri" },
41
77
"cid": { "type": "string", "format": "cid" },
42
78
"author": {
43
43
-
"type": "union",
44
44
-
"refs": ["app.bsky.actor.defs#profileViewBasic"]
79
79
+
"type": "ref",
80
80
+
"ref": "sh.weaver.actor.defs#profileDataViewBasic"
45
81
},
46
82
"value": {
47
83
"type": "unknown",
···
58
94
"embeds": {
59
95
"type": "array",
60
96
"items": {
61
61
-
"type": "union",
62
62
-
"refs": [
63
63
-
"app.bsky.embed.images#view",
64
64
-
"app.bsky.embed.video#view",
65
65
-
"app.bsky.embed.external#view",
66
66
-
"app.bsky.embed.record#view",
67
67
-
"app.bsky.embed.recordWithMedia#view",
68
68
-
"sh.weaver.embed.records#view"
69
69
-
]
97
97
+
"type": "ref",
98
98
+
"ref": "#recordEmbedView"
70
99
}
71
100
},
72
101
"indexedAt": { "type": "string", "format": "datetime" }
+1
-1
lexicons/sh/weaver/notebook/defs.json
···
101
101
},
102
102
"title": {
103
103
"type": "string",
104
104
-
"maxLength": 420,
104
104
+
"maxLength": 300,
105
105
"description": "The title of the notebook entry."
106
106
},
107
107
"tags": {