@colibri-social/lexicons 2.14.0 → 2.16.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.
Files changed (84) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/generated/social/colibri/beta/actor/clientPreferences.d.ts +4 -0
  3. package/dist/generated/social/colibri/beta/actor/clientPreferences.d.ts.map +1 -0
  4. package/dist/generated/social/colibri/beta/actor/clientPreferences.defs.d.ts +193 -0
  5. package/dist/generated/social/colibri/beta/actor/clientPreferences.defs.d.ts.map +1 -0
  6. package/dist/generated/social/colibri/beta/actor/clientPreferences.defs.js +24 -0
  7. package/dist/generated/social/colibri/beta/actor/clientPreferences.defs.js.map +1 -0
  8. package/dist/generated/social/colibri/beta/actor/clientPreferences.js +7 -0
  9. package/dist/generated/social/colibri/beta/actor/clientPreferences.js.map +1 -0
  10. package/dist/generated/social/colibri/beta/actor/composerState.d.ts +4 -0
  11. package/dist/generated/social/colibri/beta/actor/composerState.d.ts.map +1 -0
  12. package/dist/generated/social/colibri/beta/actor/composerState.defs.d.ts +96 -0
  13. package/dist/generated/social/colibri/beta/actor/composerState.defs.d.ts.map +1 -0
  14. package/dist/generated/social/colibri/beta/actor/composerState.defs.js +25 -0
  15. package/dist/generated/social/colibri/beta/actor/composerState.defs.js.map +1 -0
  16. package/dist/generated/social/colibri/beta/actor/composerState.js +7 -0
  17. package/dist/generated/social/colibri/beta/actor/composerState.js.map +1 -0
  18. package/dist/generated/social/colibri/beta/actor/defs.defs.d.ts +161 -1
  19. package/dist/generated/social/colibri/beta/actor/defs.defs.d.ts.map +1 -1
  20. package/dist/generated/social/colibri/beta/actor/defs.defs.js +19 -1
  21. package/dist/generated/social/colibri/beta/actor/defs.defs.js.map +1 -1
  22. package/dist/generated/social/colibri/beta/actor/mute.defs.d.ts +12 -12
  23. package/dist/generated/social/colibri/beta/actor/mute.defs.d.ts.map +1 -1
  24. package/dist/generated/social/colibri/beta/actor/mute.defs.js +1 -1
  25. package/dist/generated/social/colibri/beta/actor/mute.defs.js.map +1 -1
  26. package/dist/generated/social/colibri/beta/actor/putSettings.defs.d.ts +6 -2
  27. package/dist/generated/social/colibri/beta/actor/putSettings.defs.d.ts.map +1 -1
  28. package/dist/generated/social/colibri/beta/actor/putSettings.defs.js +1 -1
  29. package/dist/generated/social/colibri/beta/actor/putSettings.defs.js.map +1 -1
  30. package/dist/generated/social/colibri/beta/actor/putSpaceNotification.d.ts +4 -0
  31. package/dist/generated/social/colibri/beta/actor/putSpaceNotification.d.ts.map +1 -0
  32. package/dist/generated/social/colibri/beta/actor/putSpaceNotification.defs.d.ts +40 -0
  33. package/dist/generated/social/colibri/beta/actor/putSpaceNotification.defs.d.ts.map +1 -0
  34. package/dist/generated/social/colibri/beta/actor/putSpaceNotification.defs.js +16 -0
  35. package/dist/generated/social/colibri/beta/actor/putSpaceNotification.defs.js.map +1 -0
  36. package/dist/generated/social/colibri/beta/actor/putSpaceNotification.js +7 -0
  37. package/dist/generated/social/colibri/beta/actor/putSpaceNotification.js.map +1 -0
  38. package/dist/generated/social/colibri/beta/actor/settings.defs.d.ts +11 -11
  39. package/dist/generated/social/colibri/beta/actor/settings.defs.d.ts.map +1 -1
  40. package/dist/generated/social/colibri/beta/actor/settings.defs.js.map +1 -1
  41. package/dist/generated/social/colibri/beta/actor/spaceNotification.d.ts +4 -0
  42. package/dist/generated/social/colibri/beta/actor/spaceNotification.d.ts.map +1 -0
  43. package/dist/generated/social/colibri/beta/actor/spaceNotification.defs.d.ts +80 -0
  44. package/dist/generated/social/colibri/beta/actor/spaceNotification.defs.d.ts.map +1 -0
  45. package/dist/generated/social/colibri/beta/actor/spaceNotification.defs.js +23 -0
  46. package/dist/generated/social/colibri/beta/actor/spaceNotification.defs.js.map +1 -0
  47. package/dist/generated/social/colibri/beta/actor/spaceNotification.js +7 -0
  48. package/dist/generated/social/colibri/beta/actor/spaceNotification.js.map +1 -0
  49. package/dist/generated/social/colibri/beta/actor.d.ts +4 -0
  50. package/dist/generated/social/colibri/beta/actor.d.ts.map +1 -1
  51. package/dist/generated/social/colibri/beta/actor.js +4 -0
  52. package/dist/generated/social/colibri/beta/actor.js.map +1 -1
  53. package/dist/generated/social/colibri/beta/channel/defs.defs.d.ts +4 -0
  54. package/dist/generated/social/colibri/beta/channel/defs.defs.d.ts.map +1 -1
  55. package/dist/generated/social/colibri/beta/channel/defs.defs.js +1 -1
  56. package/dist/generated/social/colibri/beta/channel/defs.defs.js.map +1 -1
  57. package/dist/generated/social/colibri/beta/channel/update.defs.d.ts +2 -0
  58. package/dist/generated/social/colibri/beta/channel/update.defs.d.ts.map +1 -1
  59. package/dist/generated/social/colibri/beta/channel/update.defs.js +1 -1
  60. package/dist/generated/social/colibri/beta/channel/update.defs.js.map +1 -1
  61. package/dist/generated/social/colibri/beta/message.defs.d.ts +4 -0
  62. package/dist/generated/social/colibri/beta/message.defs.d.ts.map +1 -1
  63. package/dist/generated/social/colibri/beta/message.defs.js +1 -1
  64. package/dist/generated/social/colibri/beta/message.defs.js.map +1 -1
  65. package/dist/generated/social/colibri/beta/permissionAccount.defs.d.ts.map +1 -1
  66. package/dist/generated/social/colibri/beta/permissionAccount.defs.js +1 -1
  67. package/dist/generated/social/colibri/beta/permissionAccount.defs.js.map +1 -1
  68. package/dist/nsids.d.ts +3 -0
  69. package/dist/nsids.d.ts.map +1 -1
  70. package/dist/nsids.js +3 -0
  71. package/dist/nsids.js.map +1 -1
  72. package/lexicons/social/colibri/beta/actor/clientPreferences.json +78 -0
  73. package/lexicons/social/colibri/beta/actor/composerState.json +41 -0
  74. package/lexicons/social/colibri/beta/actor/defs.json +199 -1
  75. package/lexicons/social/colibri/beta/actor/mute.json +3 -2
  76. package/lexicons/social/colibri/beta/actor/putSettings.json +11 -1
  77. package/lexicons/social/colibri/beta/actor/putSpaceNotification.json +57 -0
  78. package/lexicons/social/colibri/beta/actor/settings.json +1 -1
  79. package/lexicons/social/colibri/beta/actor/spaceNotification.json +27 -0
  80. package/lexicons/social/colibri/beta/channel/defs.json +4 -0
  81. package/lexicons/social/colibri/beta/channel/update.json +4 -0
  82. package/lexicons/social/colibri/beta/message.json +4 -0
  83. package/lexicons/social/colibri/beta/permissionAccount.json +5 -1
  84. package/package.json +1 -1
@@ -208,7 +208,7 @@
208
208
  "notificationLevel": {
209
209
  "type": "string",
210
210
  "description": "Which messages produce a notification.",
211
- "knownValues": ["all", "mentionsAndReplies"]
211
+ "knownValues": ["all", "mentionsAndReplies", "nothing"]
212
212
  },
213
213
  "communityOrder": {
214
214
  "type": "array",
@@ -238,6 +238,24 @@
238
238
  "shareActivity": {
239
239
  "type": "boolean",
240
240
  "description": "Whether the AppView may read what the user is listening to and show it to others."
241
+ },
242
+ "spaceNotifications": {
243
+ "type": "array",
244
+ "items": {
245
+ "type": "ref",
246
+ "ref": "#spaceNotification"
247
+ },
248
+ "description": "Notification levels the user set for single communities. A community without an entry follows notificationLevel."
249
+ },
250
+ "clientPreferences": {
251
+ "type": "ref",
252
+ "ref": "#clientPreferences",
253
+ "description": "Client settings that follow the user across devices."
254
+ },
255
+ "composerState": {
256
+ "type": "ref",
257
+ "ref": "#composerState",
258
+ "description": "Emoji usage, skin tone and recent GIFs."
241
259
  }
242
260
  }
243
261
  },
@@ -294,6 +312,186 @@
294
312
  "description": "The muted thread's space."
295
313
  }
296
314
  }
315
+ },
316
+ "spaceNotification": {
317
+ "type": "object",
318
+ "description": "A notification level for one community.",
319
+ "required": ["community", "level"],
320
+ "properties": {
321
+ "community": {
322
+ "type": "string",
323
+ "format": "did",
324
+ "description": "The community."
325
+ },
326
+ "level": {
327
+ "type": "string",
328
+ "knownValues": ["all", "mentionsAndReplies", "nothing"],
329
+ "description": "Which messages in this community produce a notification."
330
+ }
331
+ }
332
+ },
333
+ "clientPreferences": {
334
+ "type": "object",
335
+ "description": "Client settings that follow the user across devices. Every field is optional and a client applies its own default for an absent one.",
336
+ "properties": {
337
+ "controls": {
338
+ "type": "ref",
339
+ "ref": "#controls",
340
+ "description": "Touch gestures in a channel."
341
+ },
342
+ "theme": {
343
+ "type": "string",
344
+ "knownValues": ["system", "dark", "light"],
345
+ "description": "The color theme. system follows the operating system."
346
+ },
347
+ "messagePreviews": {
348
+ "type": "boolean",
349
+ "description": "Whether the channel list shows the latest message under each channel name."
350
+ },
351
+ "linkEmbedsByDefault": {
352
+ "type": "boolean",
353
+ "description": "Whether a link in a new message gets a preview by default."
354
+ },
355
+ "warnOnExternalLinks": {
356
+ "type": "boolean",
357
+ "description": "Whether opening a link to another site asks for confirmation first."
358
+ },
359
+ "blueskyClient": {
360
+ "type": "string",
361
+ "maxLength": 64,
362
+ "knownValues": [
363
+ "anisota",
364
+ "blacksky",
365
+ "bluesky",
366
+ "deer",
367
+ "mu",
368
+ "northsky",
369
+ "witchsky",
370
+ "custom"
371
+ ],
372
+ "description": "The client that Bluesky posts and profiles open in."
373
+ },
374
+ "customBlueskyClientBase": {
375
+ "type": "string",
376
+ "maxLength": 253,
377
+ "description": "The domain of the client used when blueskyClient is custom."
378
+ },
379
+ "developerMode": {
380
+ "type": "boolean",
381
+ "description": "Whether the client shows identifiers and links to inspect records."
382
+ },
383
+ "voiceView": {
384
+ "type": "ref",
385
+ "ref": "#voiceView",
386
+ "description": "Options for voice channels."
387
+ },
388
+ "experiments": {
389
+ "type": "array",
390
+ "maxLength": 64,
391
+ "items": {
392
+ "type": "string",
393
+ "maxLength": 64,
394
+ "description": "An experiment id."
395
+ },
396
+ "description": "The experiments the user turned on."
397
+ }
398
+ }
399
+ },
400
+ "controls": {
401
+ "type": "object",
402
+ "description": "Touch gestures in a channel.",
403
+ "properties": {
404
+ "swipeLeftAction": {
405
+ "type": "string",
406
+ "knownValues": ["members", "reply"],
407
+ "description": "What swiping left on a message does."
408
+ },
409
+ "doubleTapEnabled": {
410
+ "type": "boolean",
411
+ "description": "Whether double tapping a message does anything."
412
+ },
413
+ "doubleTapAction": {
414
+ "type": "string",
415
+ "knownValues": ["react", "editOrReply"],
416
+ "description": "What double tapping a message does."
417
+ },
418
+ "doubleTapReactionEmoji": {
419
+ "type": "string",
420
+ "maxLength": 64,
421
+ "maxGraphemes": 1,
422
+ "description": "The emoji a double tap reacts with."
423
+ }
424
+ }
425
+ },
426
+ "voiceView": {
427
+ "type": "object",
428
+ "description": "Options for voice channels.",
429
+ "properties": {
430
+ "confirmJoin": {
431
+ "type": "boolean",
432
+ "description": "Whether opening a voice channel waits for the user to press join."
433
+ },
434
+ "showNonVideoParticipants": {
435
+ "type": "boolean",
436
+ "description": "Whether the call grid shows participants without video."
437
+ },
438
+ "showOwnCamera": {
439
+ "type": "boolean",
440
+ "description": "Whether the call grid shows the user's own camera."
441
+ }
442
+ }
443
+ },
444
+ "composerState": {
445
+ "type": "object",
446
+ "description": "Emoji usage, skin tone and recent GIFs.",
447
+ "properties": {
448
+ "emojiUsage": {
449
+ "type": "array",
450
+ "maxLength": 50,
451
+ "items": {
452
+ "type": "ref",
453
+ "ref": "#emojiUse"
454
+ },
455
+ "description": "The emoji the user picks most, with counts."
456
+ },
457
+ "skinTone": {
458
+ "type": "integer",
459
+ "minimum": 0,
460
+ "maximum": 5,
461
+ "description": "The skin tone for emoji that support one. 0 is the default yellow."
462
+ },
463
+ "recentGifs": {
464
+ "type": "array",
465
+ "maxLength": 24,
466
+ "items": {
467
+ "type": "ref",
468
+ "ref": "social.colibri.beta.embed.defs#gifView"
469
+ },
470
+ "description": "The GIFs the user sent last, newest first, stored whole."
471
+ }
472
+ }
473
+ },
474
+ "emojiUse": {
475
+ "type": "object",
476
+ "description": "How often and how recently the user picked one emoji.",
477
+ "required": ["emoji", "count", "lastUsed"],
478
+ "properties": {
479
+ "emoji": {
480
+ "type": "string",
481
+ "maxLength": 512,
482
+ "description": "A Unicode emoji, or a custom emoji's AT URI."
483
+ },
484
+ "count": {
485
+ "type": "integer",
486
+ "minimum": 1,
487
+ "description": "How many times the user picked it."
488
+ },
489
+ "lastUsed": {
490
+ "type": "string",
491
+ "format": "datetime",
492
+ "description": "When the user last picked it."
493
+ }
494
+ }
297
495
  }
298
496
  }
299
497
  }
@@ -14,10 +14,11 @@
14
14
  "type": "union",
15
15
  "refs": [
16
16
  "social.colibri.beta.actor.defs#mutedActor",
17
- "social.colibri.beta.actor.defs#mutedChannel"
17
+ "social.colibri.beta.actor.defs#mutedChannel",
18
+ "social.colibri.beta.actor.defs#mutedThread"
18
19
  ],
19
20
  "closed": true,
20
- "description": "What is muted. A user or a community is named by DID, a channel by its space."
21
+ "description": "What is muted. A user or a community is named by DID, a channel or a thread by its space."
21
22
  },
22
23
  "createdAt": {
23
24
  "type": "string",
@@ -13,7 +13,7 @@
13
13
  "notificationLevel": {
14
14
  "type": "string",
15
15
  "description": "Which messages produce a notification. Absent leaves the current value unchanged.",
16
- "knownValues": ["all", "mentionsAndReplies"]
16
+ "knownValues": ["all", "mentionsAndReplies", "nothing"]
17
17
  },
18
18
  "communityOrder": {
19
19
  "type": "array",
@@ -35,6 +35,16 @@
35
35
  "shareActivity": {
36
36
  "type": "boolean",
37
37
  "description": "Whether the AppView may show what the user is listening to. Absent leaves the current value unchanged."
38
+ },
39
+ "clientPreferences": {
40
+ "type": "ref",
41
+ "ref": "social.colibri.beta.actor.defs#clientPreferences",
42
+ "description": "The contents of the user's social.colibri.beta.actor.clientPreferences record. Replaces the stored copy whole. Absent leaves the current value unchanged."
43
+ },
44
+ "composerState": {
45
+ "type": "ref",
46
+ "ref": "social.colibri.beta.actor.defs#composerState",
47
+ "description": "The contents of the user's social.colibri.beta.actor.composerState record. Replaces the stored copy whole. Absent leaves the current value unchanged."
38
48
  }
39
49
  }
40
50
  }
@@ -0,0 +1,57 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "social.colibri.beta.actor.putSpaceNotification",
4
+ "defs": {
5
+ "main": {
6
+ "type": "procedure",
7
+ "description": "Pushes one of the requesting user's social.colibri.beta.actor.spaceNotification records to the AppView, so it takes effect immediately instead of waiting for a sync notification. The client writes or deletes the record in its own personal space first, then calls this.",
8
+ "input": {
9
+ "encoding": "application/json",
10
+ "schema": {
11
+ "type": "object",
12
+ "required": ["community"],
13
+ "properties": {
14
+ "community": {
15
+ "type": "string",
16
+ "format": "did",
17
+ "description": "The community."
18
+ },
19
+ "level": {
20
+ "type": "string",
21
+ "knownValues": ["all", "mentionsAndReplies", "nothing"],
22
+ "description": "The new level. Absent together with removeLevel returns the community to the global level."
23
+ },
24
+ "removeLevel": {
25
+ "type": "boolean",
26
+ "description": "Removes the community's level so it follows the global one. Ignored when level is present."
27
+ }
28
+ }
29
+ }
30
+ },
31
+ "output": {
32
+ "encoding": "application/json",
33
+ "schema": {
34
+ "type": "object",
35
+ "required": ["preferences"],
36
+ "properties": {
37
+ "preferences": {
38
+ "type": "ref",
39
+ "ref": "social.colibri.beta.actor.defs#preferences",
40
+ "description": "The requesting user's settings, after the update."
41
+ }
42
+ }
43
+ }
44
+ },
45
+ "errors": [
46
+ {
47
+ "name": "AuthRequired",
48
+ "description": "The request has no valid service auth."
49
+ },
50
+ {
51
+ "name": "InvalidRequest",
52
+ "description": "Neither level nor removeLevel is present, or level does not hold an allowed value."
53
+ }
54
+ ]
55
+ }
56
+ }
57
+ }
@@ -12,7 +12,7 @@
12
12
  "properties": {
13
13
  "notificationLevel": {
14
14
  "type": "string",
15
- "knownValues": ["all", "mentionsAndReplies"],
15
+ "knownValues": ["all", "mentionsAndReplies", "nothing"],
16
16
  "default": "all",
17
17
  "description": "Which messages produce a notification."
18
18
  },
@@ -0,0 +1,27 @@
1
+ {
2
+ "lexicon": 1,
3
+ "id": "social.colibri.beta.actor.spaceNotification",
4
+ "defs": {
5
+ "main": {
6
+ "type": "record",
7
+ "description": "A notification level for one community, overriding the level in social.colibri.beta.actor.settings. The record key is the community's DID. Deleting the record returns the community to the global level.",
8
+ "key": "any",
9
+ "record": {
10
+ "type": "object",
11
+ "required": ["level", "createdAt"],
12
+ "properties": {
13
+ "level": {
14
+ "type": "string",
15
+ "knownValues": ["all", "mentionsAndReplies", "nothing"],
16
+ "description": "Which messages in this community produce a notification."
17
+ },
18
+ "createdAt": {
19
+ "type": "string",
20
+ "format": "datetime",
21
+ "description": "When the level was set."
22
+ }
23
+ }
24
+ }
25
+ }
26
+ }
27
+ }
@@ -216,6 +216,10 @@
216
216
  "height": {
217
217
  "type": "integer",
218
218
  "description": "Intrinsic pixel height, when the file is a decodable image or video."
219
+ },
220
+ "spoiler": {
221
+ "type": "boolean",
222
+ "description": "Whether the author marked the file as a spoiler. Clients hide it behind a reveal step."
219
223
  }
220
224
  }
221
225
  },
@@ -58,6 +58,10 @@
58
58
  "type": "boolean",
59
59
  "description": "Whether link previews are shown here. Absent leaves the current value unchanged."
60
60
  },
61
+ "removeLinkEmbeds": {
62
+ "type": "boolean",
63
+ "description": "Clears the channel's link preview setting so the community default applies. Ignored when linkEmbeds is also given."
64
+ },
61
65
  "visibleToRoles": {
62
66
  "type": "array",
63
67
  "description": "Roles that may read this channel. Empty means every member may.",
@@ -120,6 +120,10 @@
120
120
  "type": "string",
121
121
  "maxLength": 256,
122
122
  "description": "The original filename."
123
+ },
124
+ "spoiler": {
125
+ "type": "boolean",
126
+ "description": "Whether clients hide the file behind a reveal step until the reader chooses to see it."
123
127
  }
124
128
  }
125
129
  }
@@ -5,7 +5,7 @@
5
5
  "main": {
6
6
  "type": "permission-set",
7
7
  "title": "Your Colibri account",
8
- "detail": "Read and change your Colibri profile, settings, mutes and read state.",
8
+ "detail": "Read and change your Colibri profile, settings, mutes, notification levels and read state.",
9
9
  "permissions": [
10
10
  {
11
11
  "type": "permission",
@@ -14,8 +14,11 @@
14
14
  "authority": "self",
15
15
  "skey": "self",
16
16
  "collection": [
17
+ "social.colibri.beta.actor.clientPreferences",
18
+ "social.colibri.beta.actor.composerState",
17
19
  "social.colibri.beta.actor.mute",
18
20
  "social.colibri.beta.actor.settings",
21
+ "social.colibri.beta.actor.spaceNotification",
19
22
  "social.colibri.beta.channel.read"
20
23
  ],
21
24
  "action": ["read", "create", "update", "delete"],
@@ -36,6 +39,7 @@
36
39
  "social.colibri.beta.actor.getPreferences",
37
40
  "social.colibri.beta.actor.putSettings",
38
41
  "social.colibri.beta.actor.putMutes",
42
+ "social.colibri.beta.actor.putSpaceNotification",
39
43
  "social.colibri.beta.actor.grantSpaceAccess",
40
44
  "social.colibri.beta.actor.listCommunities",
41
45
  "social.colibri.beta.actor.setStatus",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colibri-social/lexicons",
3
- "version": "2.14.0",
3
+ "version": "2.16.0",
4
4
  "description": "Colibri lexicon schemas and the types generated from them",
5
5
  "type": "module",
6
6
  "exports": {