@colibri-social/lexicons 2.12.1 → 2.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/generated/com/atproto/simplespace/createSpace.defs.d.ts +2 -2
- package/dist/generated/com/atproto/simplespace/createSpace.defs.d.ts.map +1 -1
- package/dist/generated/com/atproto/simplespace/createSpace.defs.js +1 -1
- package/dist/generated/com/atproto/simplespace/createSpace.defs.js.map +1 -1
- package/dist/generated/com/atproto/space/getSpaceCredential.defs.d.ts +1 -1
- package/dist/generated/com/atproto/space/getSpaceCredential.defs.d.ts.map +1 -1
- package/dist/generated/com/atproto/space/getSpaceCredential.defs.js +1 -1
- package/dist/generated/com/atproto/space/getSpaceCredential.defs.js.map +1 -1
- package/dist/generated/com/atproto/space/listRepos.defs.d.ts +8 -4
- package/dist/generated/com/atproto/space/listRepos.defs.d.ts.map +1 -1
- package/dist/generated/com/atproto/space/listRepos.defs.js +3 -3
- package/dist/generated/com/atproto/space/listRepos.defs.js.map +1 -1
- package/dist/generated/com/atproto/space/listSpaces.defs.d.ts +2 -2
- package/dist/generated/com/atproto/space/listSpaces.defs.d.ts.map +1 -1
- package/dist/generated/com/atproto/space/listSpaces.defs.js +1 -1
- package/dist/generated/com/atproto/space/listSpaces.defs.js.map +1 -1
- package/dist/generated/com/atproto/space/notifyCredentialRevoked.d.ts +4 -0
- package/dist/generated/com/atproto/space/notifyCredentialRevoked.d.ts.map +1 -0
- package/dist/generated/com/atproto/space/notifyCredentialRevoked.defs.d.ts +33 -0
- package/dist/generated/com/atproto/space/notifyCredentialRevoked.defs.d.ts.map +1 -0
- package/dist/generated/com/atproto/space/notifyCredentialRevoked.defs.js +15 -0
- package/dist/generated/com/atproto/space/notifyCredentialRevoked.defs.js.map +1 -0
- package/dist/generated/com/atproto/space/notifyCredentialRevoked.js +7 -0
- package/dist/generated/com/atproto/space/notifyCredentialRevoked.js.map +1 -0
- package/dist/generated/com/atproto/space/notifyWrite.defs.d.ts +16 -4
- package/dist/generated/com/atproto/space/notifyWrite.defs.d.ts.map +1 -1
- package/dist/generated/com/atproto/space/notifyWrite.defs.js +3 -3
- package/dist/generated/com/atproto/space/notifyWrite.defs.js.map +1 -1
- package/dist/generated/com/atproto/space.d.ts +1 -0
- package/dist/generated/com/atproto/space.d.ts.map +1 -1
- package/dist/generated/com/atproto/space.js +1 -0
- package/dist/generated/com/atproto/space.js.map +1 -1
- package/dist/generated/social/colibri/beta/actor/defs.defs.d.ts +8 -0
- package/dist/generated/social/colibri/beta/actor/defs.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/actor/defs.defs.js +1 -1
- package/dist/generated/social/colibri/beta/actor/defs.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/actor/setStatus.defs.d.ts +12 -2
- package/dist/generated/social/colibri/beta/actor/setStatus.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/actor/setStatus.defs.js +1 -1
- package/dist/generated/social/colibri/beta/actor/setStatus.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/bridge/defs.defs.d.ts +4 -0
- package/dist/generated/social/colibri/beta/bridge/defs.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/bridge/defs.defs.js +1 -1
- package/dist/generated/social/colibri/beta/bridge/defs.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/category/create.defs.d.ts +26 -0
- package/dist/generated/social/colibri/beta/category/create.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/category/create.defs.js +1 -1
- package/dist/generated/social/colibri/beta/category/create.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/category/update.defs.d.ts +27 -1
- package/dist/generated/social/colibri/beta/category/update.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/category/update.defs.js +2 -2
- package/dist/generated/social/colibri/beta/category/update.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/category.defs.d.ts +70 -0
- package/dist/generated/social/colibri/beta/category.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/category.defs.js +1 -1
- package/dist/generated/social/colibri/beta/category.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/channel/putReadCursors.defs.d.ts +1 -1
- package/dist/generated/social/colibri/beta/channel/putReadCursors.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/channel/putReadCursors.defs.js +1 -1
- package/dist/generated/social/colibri/beta/channel/putReadCursors.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/community/create.defs.d.ts +2 -0
- package/dist/generated/social/colibri/beta/community/create.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/community/create.defs.js +1 -1
- package/dist/generated/social/colibri/beta/community/create.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/community/defs.defs.d.ts +64 -0
- package/dist/generated/social/colibri/beta/community/defs.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/community/defs.defs.js +9 -3
- package/dist/generated/social/colibri/beta/community/defs.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/community/settings.defs.d.ts +28 -0
- package/dist/generated/social/colibri/beta/community/settings.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/community/settings.defs.js +1 -1
- package/dist/generated/social/colibri/beta/community/settings.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/community/transferOwnership.d.ts +4 -0
- package/dist/generated/social/colibri/beta/community/transferOwnership.d.ts.map +1 -0
- package/dist/generated/social/colibri/beta/community/transferOwnership.defs.d.ts +40 -0
- package/dist/generated/social/colibri/beta/community/transferOwnership.defs.d.ts.map +1 -0
- package/dist/generated/social/colibri/beta/community/transferOwnership.defs.js +16 -0
- package/dist/generated/social/colibri/beta/community/transferOwnership.defs.js.map +1 -0
- package/dist/generated/social/colibri/beta/community/transferOwnership.js +7 -0
- package/dist/generated/social/colibri/beta/community/transferOwnership.js.map +1 -0
- package/dist/generated/social/colibri/beta/community/update.defs.d.ts +8 -0
- package/dist/generated/social/colibri/beta/community/update.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/community/update.defs.js +1 -1
- package/dist/generated/social/colibri/beta/community/update.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/community.d.ts +1 -0
- package/dist/generated/social/colibri/beta/community.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/community.js +1 -0
- package/dist/generated/social/colibri/beta/community.js.map +1 -1
- package/dist/generated/social/colibri/beta/notification/registerPush.defs.d.ts +11 -5
- package/dist/generated/social/colibri/beta/notification/registerPush.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/notification/registerPush.defs.js +2 -2
- package/dist/generated/social/colibri/beta/notification/registerPush.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/notification/unregisterPush.defs.d.ts +2 -2
- package/dist/generated/social/colibri/beta/notification/unregisterPush.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/notification/unregisterPush.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/permissionCommunity.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/permissionCommunity.defs.js +1 -1
- package/dist/generated/social/colibri/beta/permissionCommunity.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/richtext/facet.defs.d.ts +27 -11
- package/dist/generated/social/colibri/beta/richtext/facet.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/richtext/facet.defs.js +4 -1
- package/dist/generated/social/colibri/beta/richtext/facet.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/role/create.defs.d.ts +2 -0
- package/dist/generated/social/colibri/beta/role/create.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/role/create.defs.js +1 -1
- package/dist/generated/social/colibri/beta/role/create.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/role/putBadgeImage.d.ts +4 -0
- package/dist/generated/social/colibri/beta/role/putBadgeImage.d.ts.map +1 -0
- package/dist/generated/social/colibri/beta/role/putBadgeImage.defs.d.ts +40 -0
- package/dist/generated/social/colibri/beta/role/putBadgeImage.defs.d.ts.map +1 -0
- package/dist/generated/social/colibri/beta/role/putBadgeImage.defs.js +16 -0
- package/dist/generated/social/colibri/beta/role/putBadgeImage.defs.js.map +1 -0
- package/dist/generated/social/colibri/beta/role/putBadgeImage.js +7 -0
- package/dist/generated/social/colibri/beta/role/putBadgeImage.js.map +1 -0
- package/dist/generated/social/colibri/beta/role/update.defs.d.ts +4 -0
- package/dist/generated/social/colibri/beta/role/update.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/role/update.defs.js +1 -1
- package/dist/generated/social/colibri/beta/role/update.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/role.d.ts +1 -0
- package/dist/generated/social/colibri/beta/role.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/role.defs.d.ts +42 -0
- package/dist/generated/social/colibri/beta/role.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/role.defs.js +7 -1
- package/dist/generated/social/colibri/beta/role.defs.js.map +1 -1
- package/dist/generated/social/colibri/beta/role.js +1 -0
- package/dist/generated/social/colibri/beta/role.js.map +1 -1
- package/dist/generated/social/colibri/beta/sync/defs.defs.d.ts +21 -0
- package/dist/generated/social/colibri/beta/sync/defs.defs.d.ts.map +1 -1
- package/dist/generated/social/colibri/beta/sync/defs.defs.js +5 -1
- package/dist/generated/social/colibri/beta/sync/defs.defs.js.map +1 -1
- package/lexicons/com/atproto/PINNED_COMMIT +1 -1
- package/lexicons/com/atproto/simplespace/createSpace.json +2 -2
- package/lexicons/com/atproto/space/getSpaceCredential.json +2 -2
- package/lexicons/com/atproto/space/listRepos.json +16 -8
- package/lexicons/com/atproto/space/listSpaces.json +2 -2
- package/lexicons/com/atproto/space/notifyCredentialRevoked.json +31 -0
- package/lexicons/com/atproto/space/notifyWrite.json +24 -5
- package/lexicons/social/colibri/beta/actor/defs.json +11 -1
- package/lexicons/social/colibri/beta/actor/setStatus.json +14 -1
- package/lexicons/social/colibri/beta/bridge/defs.json +5 -0
- package/lexicons/social/colibri/beta/category/create.json +41 -1
- package/lexicons/social/colibri/beta/category/update.json +42 -2
- package/lexicons/social/colibri/beta/category.json +41 -0
- package/lexicons/social/colibri/beta/channel/putReadCursors.json +2 -2
- package/lexicons/social/colibri/beta/community/create.json +4 -0
- package/lexicons/social/colibri/beta/community/defs.json +88 -0
- package/lexicons/social/colibri/beta/community/settings.json +11 -0
- package/lexicons/social/colibri/beta/community/transferOwnership.json +78 -0
- package/lexicons/social/colibri/beta/community/update.json +9 -0
- package/lexicons/social/colibri/beta/notification/registerPush.json +9 -4
- package/lexicons/social/colibri/beta/notification/unregisterPush.json +2 -2
- package/lexicons/social/colibri/beta/permissionCommunity.json +2 -0
- package/lexicons/social/colibri/beta/richtext/facet.json +19 -1
- package/lexicons/social/colibri/beta/role/create.json +5 -0
- package/lexicons/social/colibri/beta/role/putBadgeImage.json +80 -0
- package/lexicons/social/colibri/beta/role/update.json +9 -0
- package/lexicons/social/colibri/beta/role.json +36 -0
- package/lexicons/social/colibri/beta/sync/defs.json +25 -0
- package/package.json +3 -3
|
@@ -13,12 +13,25 @@
|
|
|
13
13
|
"text": {
|
|
14
14
|
"type": "string",
|
|
15
15
|
"description": "The status text. Absent leaves the current value unchanged.",
|
|
16
|
-
"maxLength":
|
|
16
|
+
"maxLength": 64
|
|
17
17
|
},
|
|
18
18
|
"emoji": {
|
|
19
19
|
"type": "string",
|
|
20
20
|
"description": "An emoji shown beside the status. Absent leaves the current value unchanged."
|
|
21
21
|
},
|
|
22
|
+
"expiresAt": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"format": "datetime",
|
|
25
|
+
"description": "When the status clears. Absent leaves the current value unchanged. Takes precedence over removeExpiresAt."
|
|
26
|
+
},
|
|
27
|
+
"removeExpiresAt": {
|
|
28
|
+
"type": "boolean",
|
|
29
|
+
"description": "Removes the status expiry, so the status stays until it is changed. Ignored when expiresAt is also given."
|
|
30
|
+
},
|
|
31
|
+
"showWhileOffline": {
|
|
32
|
+
"type": "boolean",
|
|
33
|
+
"description": "Whether a client shows the status while the user is offline. Absent leaves the current value unchanged."
|
|
34
|
+
},
|
|
22
35
|
"onlineState": {
|
|
23
36
|
"type": "string",
|
|
24
37
|
"description": "Derived online state. Absent leaves the current value unchanged.",
|
|
@@ -211,6 +211,11 @@
|
|
|
211
211
|
"format": "did",
|
|
212
212
|
"description": "The community the registration belongs to."
|
|
213
213
|
},
|
|
214
|
+
"communityName": {
|
|
215
|
+
"type": "string",
|
|
216
|
+
"maxLength": 32,
|
|
217
|
+
"description": "The community's name, when the AppView knows it."
|
|
218
|
+
},
|
|
214
219
|
"bridge": {
|
|
215
220
|
"type": "string",
|
|
216
221
|
"format": "did",
|
|
@@ -21,6 +21,46 @@
|
|
|
21
21
|
"minLength": 1,
|
|
22
22
|
"maxLength": 32,
|
|
23
23
|
"description": "The category's name."
|
|
24
|
+
},
|
|
25
|
+
"ownerOnly": {
|
|
26
|
+
"type": "boolean",
|
|
27
|
+
"description": "Whether only community admins may post in the category's channels. A channel that sets its own posting restriction overrides this."
|
|
28
|
+
},
|
|
29
|
+
"allowedRoles": {
|
|
30
|
+
"type": "array",
|
|
31
|
+
"items": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"format": "record-key",
|
|
34
|
+
"description": "A role permitted to post."
|
|
35
|
+
},
|
|
36
|
+
"description": "Roles allowed to post in the category's channels. Empty means no role restriction. A channel that sets its own posting restriction overrides this."
|
|
37
|
+
},
|
|
38
|
+
"allowedMembers": {
|
|
39
|
+
"type": "array",
|
|
40
|
+
"items": {
|
|
41
|
+
"type": "string",
|
|
42
|
+
"format": "did",
|
|
43
|
+
"description": "A member permitted to post."
|
|
44
|
+
},
|
|
45
|
+
"description": "Members allowed to post in the category's channels in addition to allowedRoles."
|
|
46
|
+
},
|
|
47
|
+
"visibleToRoles": {
|
|
48
|
+
"type": "array",
|
|
49
|
+
"description": "Roles that may read the category's channels. Empty or absent means every member may read them. A channel with its own non-empty visibleToRoles or visibleToMembers overrides this. A non-empty list makes the category's other channels private, enforced the same way as a private channel.",
|
|
50
|
+
"items": {
|
|
51
|
+
"type": "string",
|
|
52
|
+
"format": "record-key",
|
|
53
|
+
"description": "A role permitted to read."
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
"visibleToMembers": {
|
|
57
|
+
"type": "array",
|
|
58
|
+
"description": "Members that may read the category's channels in addition to visibleToRoles.",
|
|
59
|
+
"items": {
|
|
60
|
+
"type": "string",
|
|
61
|
+
"format": "did",
|
|
62
|
+
"description": "A member permitted to read."
|
|
63
|
+
}
|
|
24
64
|
}
|
|
25
65
|
}
|
|
26
66
|
}
|
|
@@ -46,7 +86,7 @@
|
|
|
46
86
|
},
|
|
47
87
|
{
|
|
48
88
|
"name": "Forbidden",
|
|
49
|
-
"description": "The caller lacks the category.create permission."
|
|
89
|
+
"description": "The caller lacks the category.create permission, or grants visibility to a role at or above their own highest position."
|
|
50
90
|
},
|
|
51
91
|
{
|
|
52
92
|
"name": "CommunityNotFound",
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"defs": {
|
|
5
5
|
"main": {
|
|
6
6
|
"type": "procedure",
|
|
7
|
-
"description": "Updates a category's name.",
|
|
7
|
+
"description": "Updates a category's name and the permissions its channels inherit.",
|
|
8
8
|
"input": {
|
|
9
9
|
"encoding": "application/json",
|
|
10
10
|
"schema": {
|
|
@@ -26,6 +26,46 @@
|
|
|
26
26
|
"minLength": 1,
|
|
27
27
|
"maxLength": 32,
|
|
28
28
|
"description": "The category's new name."
|
|
29
|
+
},
|
|
30
|
+
"ownerOnly": {
|
|
31
|
+
"type": "boolean",
|
|
32
|
+
"description": "Whether only community admins may post in the category's channels. Absent leaves the current value unchanged."
|
|
33
|
+
},
|
|
34
|
+
"allowedRoles": {
|
|
35
|
+
"type": "array",
|
|
36
|
+
"items": {
|
|
37
|
+
"type": "string",
|
|
38
|
+
"format": "record-key",
|
|
39
|
+
"description": "A role permitted to post."
|
|
40
|
+
},
|
|
41
|
+
"description": "Roles allowed to post in the category's channels. Absent leaves the current value unchanged."
|
|
42
|
+
},
|
|
43
|
+
"allowedMembers": {
|
|
44
|
+
"type": "array",
|
|
45
|
+
"items": {
|
|
46
|
+
"type": "string",
|
|
47
|
+
"format": "did",
|
|
48
|
+
"description": "A member permitted to post."
|
|
49
|
+
},
|
|
50
|
+
"description": "Members allowed to post in the category's channels in addition to allowedRoles. Absent leaves the current value unchanged."
|
|
51
|
+
},
|
|
52
|
+
"visibleToRoles": {
|
|
53
|
+
"type": "array",
|
|
54
|
+
"description": "Roles that may read the category's channels. Absent leaves the current value unchanged.",
|
|
55
|
+
"items": {
|
|
56
|
+
"type": "string",
|
|
57
|
+
"format": "record-key",
|
|
58
|
+
"description": "A role permitted to read."
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"visibleToMembers": {
|
|
62
|
+
"type": "array",
|
|
63
|
+
"description": "Members that may read the category's channels in addition to visibleToRoles. Absent leaves the current value unchanged.",
|
|
64
|
+
"items": {
|
|
65
|
+
"type": "string",
|
|
66
|
+
"format": "did",
|
|
67
|
+
"description": "A member permitted to read."
|
|
68
|
+
}
|
|
29
69
|
}
|
|
30
70
|
}
|
|
31
71
|
}
|
|
@@ -51,7 +91,7 @@
|
|
|
51
91
|
},
|
|
52
92
|
{
|
|
53
93
|
"name": "Forbidden",
|
|
54
|
-
"description": "The caller lacks the category.update permission."
|
|
94
|
+
"description": "The caller lacks the category.update permission, or grants visibility to a role at or above their own highest position."
|
|
55
95
|
},
|
|
56
96
|
{
|
|
57
97
|
"name": "CommunityNotFound",
|
|
@@ -24,6 +24,47 @@
|
|
|
24
24
|
"description": "The space key of a channel in this category."
|
|
25
25
|
},
|
|
26
26
|
"description": "The channels in this category, in display order, by space key."
|
|
27
|
+
},
|
|
28
|
+
"ownerOnly": {
|
|
29
|
+
"type": "boolean",
|
|
30
|
+
"default": false,
|
|
31
|
+
"description": "Whether only community admins may post in the category's channels. A channel that sets its own posting restriction overrides this."
|
|
32
|
+
},
|
|
33
|
+
"allowedRoles": {
|
|
34
|
+
"type": "array",
|
|
35
|
+
"items": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"format": "record-key",
|
|
38
|
+
"description": "A role permitted to post."
|
|
39
|
+
},
|
|
40
|
+
"description": "Roles allowed to post in the category's channels. Empty means no role restriction. A channel that sets its own posting restriction overrides this."
|
|
41
|
+
},
|
|
42
|
+
"allowedMembers": {
|
|
43
|
+
"type": "array",
|
|
44
|
+
"items": {
|
|
45
|
+
"type": "string",
|
|
46
|
+
"format": "did",
|
|
47
|
+
"description": "A member permitted to post."
|
|
48
|
+
},
|
|
49
|
+
"description": "Members allowed to post in the category's channels in addition to allowedRoles."
|
|
50
|
+
},
|
|
51
|
+
"visibleToRoles": {
|
|
52
|
+
"type": "array",
|
|
53
|
+
"description": "Roles that may read the category's channels. Empty or absent means every member may read them. A channel with its own non-empty visibleToRoles or visibleToMembers overrides this. A non-empty list makes the category's other channels private, enforced the same way as a private channel.",
|
|
54
|
+
"items": {
|
|
55
|
+
"type": "string",
|
|
56
|
+
"format": "record-key",
|
|
57
|
+
"description": "A role permitted to read."
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
"visibleToMembers": {
|
|
61
|
+
"type": "array",
|
|
62
|
+
"description": "Members that may read the category's channels in addition to visibleToRoles.",
|
|
63
|
+
"items": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"format": "did",
|
|
66
|
+
"description": "A member permitted to read."
|
|
67
|
+
}
|
|
27
68
|
}
|
|
28
69
|
}
|
|
29
70
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"defs": {
|
|
5
5
|
"main": {
|
|
6
6
|
"type": "procedure",
|
|
7
|
-
"description": "Pushes the requesting user's read cursors for one community to the AppView, so unread counts update immediately instead of waiting for a sync notification. The client writes its social.colibri.beta.channel.read record for the community to its own personal space first, then calls this. Clients should debounce this rather than calling it on every message.",
|
|
7
|
+
"description": "Pushes the requesting user's read cursors for one community to the AppView, so unread counts update immediately instead of waiting for a sync notification. The client writes its social.colibri.beta.channel.read record for the community to its own personal space first, then calls this. Clients should debounce this rather than calling it on every message. The user's other sessions receive the cursors that moved as a social.colibri.beta.sync.defs#readCursorEvent.",
|
|
8
8
|
"input": {
|
|
9
9
|
"encoding": "application/json",
|
|
10
10
|
"schema": {
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
},
|
|
19
19
|
"cursors": {
|
|
20
20
|
"type": "array",
|
|
21
|
-
"description": "
|
|
21
|
+
"description": "Read cursors for the community's channels and threads. Each one replaces the stored cursor only when it is newer, and channels left out keep their stored cursor.",
|
|
22
22
|
"items": {
|
|
23
23
|
"type": "ref",
|
|
24
24
|
"ref": "social.colibri.beta.channel.read#cursor"
|
|
@@ -29,6 +29,10 @@
|
|
|
29
29
|
"requiresApprovalToJoin": {
|
|
30
30
|
"type": "boolean",
|
|
31
31
|
"description": "Whether joining produces an application a moderator must approve. Defaults to false."
|
|
32
|
+
},
|
|
33
|
+
"overrideUserNameColors": {
|
|
34
|
+
"type": "boolean",
|
|
35
|
+
"description": "Whether only role colours are shown in chat. Members' own name colours are hidden, and a member without a coloured role shows the default name colour. Defaults to false."
|
|
32
36
|
}
|
|
33
37
|
}
|
|
34
38
|
}
|
|
@@ -56,6 +56,15 @@
|
|
|
56
56
|
"type": "boolean",
|
|
57
57
|
"description": "Whether link previews are shown by default."
|
|
58
58
|
},
|
|
59
|
+
"overrideUserNameColors": {
|
|
60
|
+
"type": "boolean",
|
|
61
|
+
"description": "Whether only role colours are shown in chat. Members' own name colours are hidden, and a member without a coloured role shows the default name colour. Absent means false."
|
|
62
|
+
},
|
|
63
|
+
"customEmoji": {
|
|
64
|
+
"type": "string",
|
|
65
|
+
"knownValues": ["all", "local", "none"],
|
|
66
|
+
"description": "Which custom emoji render in this community. all allows custom emoji from any source, local only the community's own emoji, none disables custom emoji. Disallowed emoji show their fallback text. Absent means all."
|
|
67
|
+
},
|
|
59
68
|
"labelers": {
|
|
60
69
|
"type": "array",
|
|
61
70
|
"items": {
|
|
@@ -142,6 +151,50 @@
|
|
|
142
151
|
"ref": "#channelView"
|
|
143
152
|
},
|
|
144
153
|
"description": "Channels in display order."
|
|
154
|
+
},
|
|
155
|
+
"ownerOnly": {
|
|
156
|
+
"type": "boolean",
|
|
157
|
+
"description": "Whether only community admins may post in the category's channels. A channel that sets its own posting restriction overrides this."
|
|
158
|
+
},
|
|
159
|
+
"allowedRoles": {
|
|
160
|
+
"type": "array",
|
|
161
|
+
"items": {
|
|
162
|
+
"type": "string",
|
|
163
|
+
"format": "record-key",
|
|
164
|
+
"description": "A role permitted to post."
|
|
165
|
+
},
|
|
166
|
+
"description": "Roles allowed to post in the category's channels. Empty means no role restriction. A channel that sets its own posting restriction overrides this."
|
|
167
|
+
},
|
|
168
|
+
"allowedMembers": {
|
|
169
|
+
"type": "array",
|
|
170
|
+
"items": {
|
|
171
|
+
"type": "string",
|
|
172
|
+
"format": "did",
|
|
173
|
+
"description": "A member permitted to post."
|
|
174
|
+
},
|
|
175
|
+
"description": "Members allowed to post in the category's channels in addition to allowedRoles."
|
|
176
|
+
},
|
|
177
|
+
"visibleToRoles": {
|
|
178
|
+
"type": "array",
|
|
179
|
+
"description": "Roles that may read the category's channels. Empty or absent means every member may read them. A channel with its own non-empty visibleToRoles or visibleToMembers overrides this. A non-empty list makes the category's other channels private, enforced the same way as a private channel.",
|
|
180
|
+
"items": {
|
|
181
|
+
"type": "string",
|
|
182
|
+
"format": "record-key",
|
|
183
|
+
"description": "A role permitted to read."
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
"visibleToMembers": {
|
|
187
|
+
"type": "array",
|
|
188
|
+
"description": "Members that may read the category's channels in addition to visibleToRoles.",
|
|
189
|
+
"items": {
|
|
190
|
+
"type": "string",
|
|
191
|
+
"format": "did",
|
|
192
|
+
"description": "A member permitted to read."
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
"private": {
|
|
196
|
+
"type": "boolean",
|
|
197
|
+
"description": "Whether the category restricts who may read its channels."
|
|
145
198
|
}
|
|
146
199
|
}
|
|
147
200
|
},
|
|
@@ -275,6 +328,11 @@
|
|
|
275
328
|
"description": "Hex colour as #rrggbb.",
|
|
276
329
|
"maxLength": 7
|
|
277
330
|
},
|
|
331
|
+
"badge": {
|
|
332
|
+
"type": "union",
|
|
333
|
+
"refs": ["#roleIconBadge", "#roleImageBadgeView"],
|
|
334
|
+
"description": "The role's badge, if it has one."
|
|
335
|
+
},
|
|
278
336
|
"permissions": {
|
|
279
337
|
"type": "array",
|
|
280
338
|
"items": {
|
|
@@ -341,6 +399,36 @@
|
|
|
341
399
|
}
|
|
342
400
|
}
|
|
343
401
|
},
|
|
402
|
+
"roleIconBadge": {
|
|
403
|
+
"type": "object",
|
|
404
|
+
"description": "A role badge drawn from the client's curated icon set.",
|
|
405
|
+
"required": ["icon"],
|
|
406
|
+
"properties": {
|
|
407
|
+
"icon": {
|
|
408
|
+
"type": "string",
|
|
409
|
+
"minLength": 1,
|
|
410
|
+
"maxLength": 64,
|
|
411
|
+
"description": "The icon's identifier in the client's curated set, for example shield-check."
|
|
412
|
+
},
|
|
413
|
+
"color": {
|
|
414
|
+
"type": "string",
|
|
415
|
+
"maxLength": 7,
|
|
416
|
+
"description": "Hex colour as #rrggbb. Absent means the role colour, or the client's default badge colour."
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
},
|
|
420
|
+
"roleImageBadgeView": {
|
|
421
|
+
"type": "object",
|
|
422
|
+
"description": "A badge drawn from an uploaded image.",
|
|
423
|
+
"required": ["image"],
|
|
424
|
+
"properties": {
|
|
425
|
+
"image": {
|
|
426
|
+
"type": "string",
|
|
427
|
+
"format": "uri",
|
|
428
|
+
"description": "URL of the badge image, served by this AppView's blob proxy."
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
},
|
|
344
432
|
"memberView": {
|
|
345
433
|
"type": "object",
|
|
346
434
|
"description": "An admitted community member.",
|
|
@@ -29,6 +29,17 @@
|
|
|
29
29
|
"default": true,
|
|
30
30
|
"description": "Whether link previews are shown by default. Channels may override this."
|
|
31
31
|
},
|
|
32
|
+
"overrideUserNameColors": {
|
|
33
|
+
"type": "boolean",
|
|
34
|
+
"default": false,
|
|
35
|
+
"description": "Whether only role colours are shown in chat. Members' own name colours are hidden, and a member without a coloured role shows the default name colour. Defaults to false."
|
|
36
|
+
},
|
|
37
|
+
"customEmoji": {
|
|
38
|
+
"type": "string",
|
|
39
|
+
"knownValues": ["all", "local", "none"],
|
|
40
|
+
"default": "all",
|
|
41
|
+
"description": "Which custom emoji render in this community. all allows custom emoji from any source, local only the community's own emoji, none disables custom emoji. Disallowed emoji show their fallback text. Defaults to all."
|
|
42
|
+
},
|
|
32
43
|
"labelers": {
|
|
33
44
|
"type": "array",
|
|
34
45
|
"items": {
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
{
|
|
2
|
+
"lexicon": 1,
|
|
3
|
+
"id": "social.colibri.beta.community.transferOwnership",
|
|
4
|
+
"defs": {
|
|
5
|
+
"main": {
|
|
6
|
+
"type": "procedure",
|
|
7
|
+
"description": "Hands the community's protected owner role from the caller to another member. The subject gains every protected role the caller holds, then the caller loses them. The caller keeps their other roles.",
|
|
8
|
+
"input": {
|
|
9
|
+
"encoding": "application/json",
|
|
10
|
+
"schema": {
|
|
11
|
+
"type": "object",
|
|
12
|
+
"required": ["community", "subject"],
|
|
13
|
+
"properties": {
|
|
14
|
+
"community": {
|
|
15
|
+
"type": "string",
|
|
16
|
+
"format": "did",
|
|
17
|
+
"description": "The community whose ownership is transferred."
|
|
18
|
+
},
|
|
19
|
+
"subject": {
|
|
20
|
+
"type": "string",
|
|
21
|
+
"format": "did",
|
|
22
|
+
"description": "The member who becomes the owner."
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"output": {
|
|
28
|
+
"encoding": "application/json",
|
|
29
|
+
"schema": {
|
|
30
|
+
"type": "object",
|
|
31
|
+
"required": ["owner", "previousOwner"],
|
|
32
|
+
"properties": {
|
|
33
|
+
"owner": {
|
|
34
|
+
"type": "ref",
|
|
35
|
+
"ref": "social.colibri.beta.community.defs#memberView",
|
|
36
|
+
"description": "The new owner, with their updated roles."
|
|
37
|
+
},
|
|
38
|
+
"previousOwner": {
|
|
39
|
+
"type": "ref",
|
|
40
|
+
"ref": "social.colibri.beta.community.defs#memberView",
|
|
41
|
+
"description": "The caller, with their updated roles."
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"errors": [
|
|
47
|
+
{
|
|
48
|
+
"name": "AuthRequired",
|
|
49
|
+
"description": "The request is missing, malformed, or unverifiable service auth."
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"name": "Forbidden",
|
|
53
|
+
"description": "The caller does not hold a protected owner role in this community."
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "CommunityNotFound",
|
|
57
|
+
"description": "No community exists with that DID."
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"name": "MemberNotFound",
|
|
61
|
+
"description": "The subject does not hold a member record in this community."
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"name": "Banned",
|
|
65
|
+
"description": "The subject is banned from this community."
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"name": "AlreadyOwner",
|
|
69
|
+
"description": "The subject already holds a protected owner role."
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"name": "CredentialsUnavailable",
|
|
73
|
+
"description": "The AppView's stored credentials for this community are missing or unusable."
|
|
74
|
+
}
|
|
75
|
+
]
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -43,6 +43,15 @@
|
|
|
43
43
|
"description": "A labeler."
|
|
44
44
|
},
|
|
45
45
|
"description": "DIDs whose labels this community honours."
|
|
46
|
+
},
|
|
47
|
+
"overrideUserNameColors": {
|
|
48
|
+
"type": "boolean",
|
|
49
|
+
"description": "Whether only role colours are shown in chat. Members' own name colours are hidden, and a member without a coloured role shows the default name colour."
|
|
50
|
+
},
|
|
51
|
+
"customEmoji": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"knownValues": ["all", "local", "none"],
|
|
54
|
+
"description": "Which custom emoji render in this community. all allows custom emoji from any source, local only the community's own emoji, none disables custom emoji. Disallowed emoji show their fallback text."
|
|
46
55
|
}
|
|
47
56
|
}
|
|
48
57
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"defs": {
|
|
5
5
|
"main": {
|
|
6
6
|
"type": "procedure",
|
|
7
|
-
"description": "Registers a push endpoint for the requesting user's device. Web Push requires endpoint, p256dh, and auth. FCM requires token.",
|
|
7
|
+
"description": "Registers a push endpoint for the requesting user's device. Web Push requires endpoint, p256dh, and auth. FCM requires token. APNs requires token and environment.",
|
|
8
8
|
"input": {
|
|
9
9
|
"encoding": "application/json",
|
|
10
10
|
"schema": {
|
|
@@ -14,12 +14,12 @@
|
|
|
14
14
|
"provider": {
|
|
15
15
|
"type": "string",
|
|
16
16
|
"description": "The push provider to register with.",
|
|
17
|
-
"knownValues": ["webpush", "fcm"]
|
|
17
|
+
"knownValues": ["webpush", "fcm", "apns"]
|
|
18
18
|
},
|
|
19
19
|
"platform": {
|
|
20
20
|
"type": "string",
|
|
21
21
|
"description": "The platform the device runs.",
|
|
22
|
-
"knownValues": ["web", "ios", "android"]
|
|
22
|
+
"knownValues": ["web", "ios", "android", "macos"]
|
|
23
23
|
},
|
|
24
24
|
"endpoint": {
|
|
25
25
|
"type": "string",
|
|
@@ -36,7 +36,12 @@
|
|
|
36
36
|
},
|
|
37
37
|
"token": {
|
|
38
38
|
"type": "string",
|
|
39
|
-
"description": "The FCM registration token. Required when provider is fcm."
|
|
39
|
+
"description": "The FCM registration token or the hex-encoded APNs device token. Required when provider is fcm or apns."
|
|
40
|
+
},
|
|
41
|
+
"environment": {
|
|
42
|
+
"type": "string",
|
|
43
|
+
"description": "The APNs environment the device token belongs to. Required when provider is apns.",
|
|
44
|
+
"knownValues": ["sandbox", "production"]
|
|
40
45
|
}
|
|
41
46
|
}
|
|
42
47
|
}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"provider": {
|
|
15
15
|
"type": "string",
|
|
16
16
|
"description": "The push provider to unregister from.",
|
|
17
|
-
"knownValues": ["webpush", "fcm"]
|
|
17
|
+
"knownValues": ["webpush", "fcm", "apns"]
|
|
18
18
|
},
|
|
19
19
|
"endpoint": {
|
|
20
20
|
"type": "string",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
},
|
|
24
24
|
"token": {
|
|
25
25
|
"type": "string",
|
|
26
|
-
"description": "The FCM registration token to remove."
|
|
26
|
+
"description": "The FCM registration token or APNs device token to remove."
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
}
|
|
@@ -78,6 +78,7 @@
|
|
|
78
78
|
"social.colibri.beta.community.migrate",
|
|
79
79
|
"social.colibri.beta.community.registerCredentials",
|
|
80
80
|
"social.colibri.beta.community.setMemberRoles",
|
|
81
|
+
"social.colibri.beta.community.transferOwnership",
|
|
81
82
|
"social.colibri.beta.community.reorderCategories",
|
|
82
83
|
"social.colibri.beta.community.createInvitation",
|
|
83
84
|
"social.colibri.beta.community.listInvitations",
|
|
@@ -103,6 +104,7 @@
|
|
|
103
104
|
"social.colibri.beta.role.create",
|
|
104
105
|
"social.colibri.beta.role.update",
|
|
105
106
|
"social.colibri.beta.role.delete",
|
|
107
|
+
"social.colibri.beta.role.putBadgeImage",
|
|
106
108
|
"social.colibri.beta.voice.moderate",
|
|
107
109
|
"social.colibri.beta.thread.delete",
|
|
108
110
|
"social.colibri.beta.thread.repoint",
|
|
@@ -33,7 +33,8 @@
|
|
|
33
33
|
"#role",
|
|
34
34
|
"#channel",
|
|
35
35
|
"#link",
|
|
36
|
-
"#time"
|
|
36
|
+
"#time",
|
|
37
|
+
"#customEmoji"
|
|
37
38
|
]
|
|
38
39
|
},
|
|
39
40
|
"description": "What the range means. A range may carry more than one feature."
|
|
@@ -232,6 +233,23 @@
|
|
|
232
233
|
"description": "How to render it."
|
|
233
234
|
}
|
|
234
235
|
}
|
|
236
|
+
},
|
|
237
|
+
"customEmoji": {
|
|
238
|
+
"type": "object",
|
|
239
|
+
"description": "A custom emoji. The text under the facet is the emoji's fallback: a Unicode alternative when the emoji has one, otherwise its :name: shortcode.",
|
|
240
|
+
"required": ["uri"],
|
|
241
|
+
"properties": {
|
|
242
|
+
"uri": {
|
|
243
|
+
"type": "string",
|
|
244
|
+
"format": "at-uri",
|
|
245
|
+
"description": "The emoji record. Its collection identifies the emoji lexicon, for example blue.moji.collection.item."
|
|
246
|
+
},
|
|
247
|
+
"cid": {
|
|
248
|
+
"type": "string",
|
|
249
|
+
"format": "cid",
|
|
250
|
+
"description": "The version of the emoji record the message was written against."
|
|
251
|
+
}
|
|
252
|
+
}
|
|
235
253
|
}
|
|
236
254
|
}
|
|
237
255
|
}
|
|
@@ -35,6 +35,11 @@
|
|
|
35
35
|
"maxLength": 7,
|
|
36
36
|
"description": "Hex colour as #rrggbb."
|
|
37
37
|
},
|
|
38
|
+
"badge": {
|
|
39
|
+
"type": "ref",
|
|
40
|
+
"ref": "social.colibri.beta.community.defs#roleIconBadge",
|
|
41
|
+
"description": "An icon badge. Image badges are set with social.colibri.beta.role.putBadgeImage."
|
|
42
|
+
},
|
|
38
43
|
"position": {
|
|
39
44
|
"type": "integer",
|
|
40
45
|
"description": "Hierarchy position. Higher outranks lower."
|