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