@atcute/bluesky 4.0.2 → 4.0.4

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 (93) hide show
  1. package/dist/lexicons/index.d.ts +9 -1
  2. package/dist/lexicons/index.d.ts.map +1 -1
  3. package/dist/lexicons/index.js +9 -1
  4. package/dist/lexicons/index.js.map +1 -1
  5. package/dist/lexicons/types/app/bsky/actor/defs.d.ts +4 -0
  6. package/dist/lexicons/types/app/bsky/actor/defs.d.ts.map +1 -1
  7. package/dist/lexicons/types/app/bsky/actor/defs.js +4 -0
  8. package/dist/lexicons/types/app/bsky/actor/defs.js.map +1 -1
  9. package/dist/lexicons/types/app/bsky/embed/external.d.ts +72 -5
  10. package/dist/lexicons/types/app/bsky/embed/external.d.ts.map +1 -1
  11. package/dist/lexicons/types/app/bsky/embed/external.js +75 -5
  12. package/dist/lexicons/types/app/bsky/embed/external.js.map +1 -1
  13. package/dist/lexicons/types/app/bsky/embed/getEmbedExternalView.d.ts +49 -0
  14. package/dist/lexicons/types/app/bsky/embed/getEmbedExternalView.d.ts.map +1 -0
  15. package/dist/lexicons/types/app/bsky/embed/getEmbedExternalView.js +45 -0
  16. package/dist/lexicons/types/app/bsky/embed/getEmbedExternalView.js.map +1 -0
  17. package/dist/lexicons/types/chat/bsky/actor/getStatus.d.ts +30 -0
  18. package/dist/lexicons/types/chat/bsky/actor/getStatus.d.ts.map +1 -0
  19. package/dist/lexicons/types/chat/bsky/actor/getStatus.js +20 -0
  20. package/dist/lexicons/types/chat/bsky/actor/getStatus.js.map +1 -0
  21. package/dist/lexicons/types/chat/bsky/convo/defs.d.ts +47 -2
  22. package/dist/lexicons/types/chat/bsky/convo/defs.d.ts.map +1 -1
  23. package/dist/lexicons/types/chat/bsky/convo/defs.js +38 -2
  24. package/dist/lexicons/types/chat/bsky/convo/defs.js.map +1 -1
  25. package/dist/lexicons/types/chat/bsky/convo/getLog.d.ts +1 -1
  26. package/dist/lexicons/types/chat/bsky/convo/getLog.d.ts.map +1 -1
  27. package/dist/lexicons/types/chat/bsky/convo/getLog.js +3 -0
  28. package/dist/lexicons/types/chat/bsky/convo/getLog.js.map +1 -1
  29. package/dist/lexicons/types/chat/bsky/convo/listConvoRequests.d.ts +1 -1
  30. package/dist/lexicons/types/chat/bsky/convo/listConvoRequests.js +1 -1
  31. package/dist/lexicons/types/chat/bsky/convo/listConvoRequests.js.map +1 -1
  32. package/dist/lexicons/types/chat/bsky/embed/joinLink.d.ts +25 -0
  33. package/dist/lexicons/types/chat/bsky/embed/joinLink.d.ts.map +1 -0
  34. package/dist/lexicons/types/chat/bsky/embed/joinLink.js +16 -0
  35. package/dist/lexicons/types/chat/bsky/embed/joinLink.js.map +1 -0
  36. package/dist/lexicons/types/chat/bsky/group/defs.d.ts +30 -0
  37. package/dist/lexicons/types/chat/bsky/group/defs.d.ts.map +1 -1
  38. package/dist/lexicons/types/chat/bsky/group/defs.js +28 -0
  39. package/dist/lexicons/types/chat/bsky/group/defs.js.map +1 -1
  40. package/dist/lexicons/types/chat/bsky/group/getJoinLinkPreviews.d.ts +29 -0
  41. package/dist/lexicons/types/chat/bsky/group/getJoinLinkPreviews.d.ts.map +1 -0
  42. package/dist/lexicons/types/chat/bsky/group/getJoinLinkPreviews.js +23 -0
  43. package/dist/lexicons/types/chat/bsky/group/getJoinLinkPreviews.js.map +1 -0
  44. package/dist/lexicons/types/chat/bsky/group/updateJoinRequestsRead.d.ts +27 -0
  45. package/dist/lexicons/types/chat/bsky/group/updateJoinRequestsRead.d.ts.map +1 -0
  46. package/dist/lexicons/types/chat/bsky/group/updateJoinRequestsRead.js +16 -0
  47. package/dist/lexicons/types/chat/bsky/group/updateJoinRequestsRead.js.map +1 -0
  48. package/dist/lexicons/types/chat/bsky/group/withdrawJoinRequest.d.ts +27 -0
  49. package/dist/lexicons/types/chat/bsky/group/withdrawJoinRequest.d.ts.map +1 -0
  50. package/dist/lexicons/types/chat/bsky/group/withdrawJoinRequest.js +16 -0
  51. package/dist/lexicons/types/chat/bsky/group/withdrawJoinRequest.js.map +1 -0
  52. package/dist/lexicons/types/chat/bsky/moderation/defs.d.ts +56 -0
  53. package/dist/lexicons/types/chat/bsky/moderation/defs.d.ts.map +1 -0
  54. package/dist/lexicons/types/chat/bsky/moderation/defs.js +49 -0
  55. package/dist/lexicons/types/chat/bsky/moderation/defs.js.map +1 -0
  56. package/dist/lexicons/types/chat/bsky/{group/getJoinLinkPreview.d.ts → moderation/getConvo.d.ts} +6 -6
  57. package/dist/lexicons/types/chat/bsky/moderation/getConvo.d.ts.map +1 -0
  58. package/dist/lexicons/types/chat/bsky/moderation/getConvo.js +17 -0
  59. package/dist/lexicons/types/chat/bsky/moderation/getConvo.js.map +1 -0
  60. package/dist/lexicons/types/chat/bsky/moderation/getConvoMembers.d.ts +33 -0
  61. package/dist/lexicons/types/chat/bsky/moderation/getConvoMembers.d.ts.map +1 -0
  62. package/dist/lexicons/types/chat/bsky/moderation/getConvoMembers.js +26 -0
  63. package/dist/lexicons/types/chat/bsky/moderation/getConvoMembers.js.map +1 -0
  64. package/dist/lexicons/types/chat/bsky/moderation/subscribeModEvents.d.ts +16 -1
  65. package/dist/lexicons/types/chat/bsky/moderation/subscribeModEvents.d.ts.map +1 -1
  66. package/dist/lexicons/types/chat/bsky/moderation/subscribeModEvents.js +12 -0
  67. package/dist/lexicons/types/chat/bsky/moderation/subscribeModEvents.js.map +1 -1
  68. package/dist/limits.d.ts +11 -0
  69. package/dist/limits.d.ts.map +1 -1
  70. package/dist/limits.js +5 -0
  71. package/dist/limits.js.map +1 -1
  72. package/lib/lexicons/index.ts +9 -1
  73. package/lib/lexicons/types/app/bsky/actor/defs.ts +4 -0
  74. package/lib/lexicons/types/app/bsky/embed/external.ts +85 -5
  75. package/lib/lexicons/types/app/bsky/embed/getEmbedExternalView.ts +62 -0
  76. package/lib/lexicons/types/chat/bsky/actor/getStatus.ts +36 -0
  77. package/lib/lexicons/types/chat/bsky/convo/defs.ts +57 -2
  78. package/lib/lexicons/types/chat/bsky/convo/getLog.ts +3 -0
  79. package/lib/lexicons/types/chat/bsky/convo/listConvoRequests.ts +1 -1
  80. package/lib/lexicons/types/chat/bsky/embed/joinLink.ts +28 -0
  81. package/lib/lexicons/types/chat/bsky/group/defs.ts +34 -0
  82. package/lib/lexicons/types/chat/bsky/group/getJoinLinkPreviews.ts +40 -0
  83. package/lib/lexicons/types/chat/bsky/group/updateJoinRequestsRead.ts +33 -0
  84. package/lib/lexicons/types/chat/bsky/group/withdrawJoinRequest.ts +33 -0
  85. package/lib/lexicons/types/chat/bsky/moderation/defs.ts +64 -0
  86. package/lib/lexicons/types/chat/bsky/{group/getJoinLinkPreview.ts → moderation/getConvo.ts} +6 -6
  87. package/lib/lexicons/types/chat/bsky/moderation/getConvoMembers.ts +45 -0
  88. package/lib/lexicons/types/chat/bsky/moderation/subscribeModEvents.ts +16 -0
  89. package/lib/limits.ts +5 -0
  90. package/package.json +3 -3
  91. package/dist/lexicons/types/chat/bsky/group/getJoinLinkPreview.d.ts.map +0 -1
  92. package/dist/lexicons/types/chat/bsky/group/getJoinLinkPreview.js +0 -17
  93. package/dist/lexicons/types/chat/bsky/group/getJoinLinkPreview.js.map +0 -1
@@ -4,6 +4,7 @@ import * as v from '@atcute/lexicons/validations';
4
4
  import * as AppBskyEmbedRecord from '../../../app/bsky/embed/record.ts';
5
5
  import * as AppBskyRichtextFacet from '../../../app/bsky/richtext/facet.ts';
6
6
  import * as ChatBskyActorDefs from '../actor/defs.ts';
7
+ import * as ChatBskyEmbedJoinLink from '../embed/joinLink.ts';
7
8
  import * as ChatBskyGroupDefs from '../group/defs.ts';
8
9
 
9
10
  const _convoKindSchema = /*#__PURE__*/ v.string<'direct' | 'group' | (string & {})>();
@@ -66,12 +67,19 @@ const _groupConvoSchema = /*#__PURE__*/ v.object({
66
67
  get joinLink() {
67
68
  return /*#__PURE__*/ v.optional(ChatBskyGroupDefs.joinLinkViewSchema);
68
69
  },
70
+ /**
71
+ * The total number of pending join requests for the group conversation. Only present for the owner. Capped
72
+ * at 21.
73
+ */
74
+ joinRequestCount: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()),
69
75
  /** The lock status of the conversation. */
70
76
  get lockStatus() {
71
77
  return convoLockStatusSchema;
72
78
  },
73
79
  /** The total number of members in the group conversation. */
74
80
  memberCount: /*#__PURE__*/ v.integer(),
81
+ /** The maximum number of members allowed in the group conversation. */
82
+ memberLimit: /*#__PURE__*/ v.integer(),
75
83
  /**
76
84
  * The display name of the group conversation.
77
85
  *
@@ -82,6 +90,8 @@ const _groupConvoSchema = /*#__PURE__*/ v.object({
82
90
  /*#__PURE__*/ v.stringLength(0, 1280),
83
91
  /*#__PURE__*/ v.stringGraphemes(0, 128),
84
92
  ]),
93
+ /** The number of unread join requests for the group conversation. Only present for the owner. */
94
+ unreadJoinRequestCount: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()),
85
95
  });
86
96
  const _logAcceptConvoSchema = /*#__PURE__*/ v.object({
87
97
  $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.convo.defs#logAcceptConvo')),
@@ -285,6 +295,11 @@ const _logReadConvoSchema = /*#__PURE__*/ v.object({
285
295
  },
286
296
  rev: /*#__PURE__*/ v.string(),
287
297
  });
298
+ const _logReadJoinRequestsSchema = /*#__PURE__*/ v.object({
299
+ $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.convo.defs#logReadJoinRequests')),
300
+ convoId: /*#__PURE__*/ v.string(),
301
+ rev: /*#__PURE__*/ v.string(),
302
+ });
288
303
  const _logReadMessageSchema = /*#__PURE__*/ v.object({
289
304
  $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.convo.defs#logReadMessage')),
290
305
  convoId: /*#__PURE__*/ v.string(),
@@ -351,6 +366,24 @@ const _logUnmuteConvoSchema = /*#__PURE__*/ v.object({
351
366
  convoId: /*#__PURE__*/ v.string(),
352
367
  rev: /*#__PURE__*/ v.string(),
353
368
  });
369
+ const _logWithdrawIncomingJoinRequestSchema = /*#__PURE__*/ v.object({
370
+ $type: /*#__PURE__*/ v.optional(
371
+ /*#__PURE__*/ v.literal('chat.bsky.convo.defs#logWithdrawIncomingJoinRequest'),
372
+ ),
373
+ convoId: /*#__PURE__*/ v.string(),
374
+ /** Prospective member who withdrew their join request. */
375
+ get member() {
376
+ return ChatBskyActorDefs.profileViewBasicSchema;
377
+ },
378
+ rev: /*#__PURE__*/ v.string(),
379
+ });
380
+ const _logWithdrawOutgoingJoinRequestSchema = /*#__PURE__*/ v.object({
381
+ $type: /*#__PURE__*/ v.optional(
382
+ /*#__PURE__*/ v.literal('chat.bsky.convo.defs#logWithdrawOutgoingJoinRequest'),
383
+ ),
384
+ convoId: /*#__PURE__*/ v.string(),
385
+ rev: /*#__PURE__*/ v.string(),
386
+ });
354
387
  const _messageAndReactionViewSchema = /*#__PURE__*/ v.object({
355
388
  $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.convo.defs#messageAndReactionView')),
356
389
  get message() {
@@ -363,7 +396,9 @@ const _messageAndReactionViewSchema = /*#__PURE__*/ v.object({
363
396
  const _messageInputSchema = /*#__PURE__*/ v.object({
364
397
  $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.convo.defs#messageInput')),
365
398
  get embed() {
366
- return /*#__PURE__*/ v.optional(/*#__PURE__*/ v.variant([AppBskyEmbedRecord.mainSchema]));
399
+ return /*#__PURE__*/ v.optional(
400
+ /*#__PURE__*/ v.variant([AppBskyEmbedRecord.mainSchema, ChatBskyEmbedJoinLink.mainSchema]),
401
+ );
367
402
  },
368
403
  /** Annotations of text (mentions, URLs, hashtags, etc) */
369
404
  get facets() {
@@ -387,7 +422,9 @@ const _messageRefSchema = /*#__PURE__*/ v.object({
387
422
  const _messageViewSchema = /*#__PURE__*/ v.object({
388
423
  $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.convo.defs#messageView')),
389
424
  get embed() {
390
- return /*#__PURE__*/ v.optional(/*#__PURE__*/ v.variant([AppBskyEmbedRecord.viewSchema]));
425
+ return /*#__PURE__*/ v.optional(
426
+ /*#__PURE__*/ v.variant([AppBskyEmbedRecord.viewSchema, ChatBskyEmbedJoinLink.viewSchema]),
427
+ );
391
428
  },
392
429
  /** Annotations of text (mentions, URLs, hashtags, etc) */
393
430
  get facets() {
@@ -597,12 +634,15 @@ type logMemberLeave$schematype = typeof _logMemberLeaveSchema;
597
634
  type logMuteConvo$schematype = typeof _logMuteConvoSchema;
598
635
  type logOutgoingJoinRequest$schematype = typeof _logOutgoingJoinRequestSchema;
599
636
  type logReadConvo$schematype = typeof _logReadConvoSchema;
637
+ type logReadJoinRequests$schematype = typeof _logReadJoinRequestsSchema;
600
638
  type logReadMessage$schematype = typeof _logReadMessageSchema;
601
639
  type logRejectJoinRequest$schematype = typeof _logRejectJoinRequestSchema;
602
640
  type logRemoveMember$schematype = typeof _logRemoveMemberSchema;
603
641
  type logRemoveReaction$schematype = typeof _logRemoveReactionSchema;
604
642
  type logUnlockConvo$schematype = typeof _logUnlockConvoSchema;
605
643
  type logUnmuteConvo$schematype = typeof _logUnmuteConvoSchema;
644
+ type logWithdrawIncomingJoinRequest$schematype = typeof _logWithdrawIncomingJoinRequestSchema;
645
+ type logWithdrawOutgoingJoinRequest$schematype = typeof _logWithdrawOutgoingJoinRequestSchema;
606
646
  type messageAndReactionView$schematype = typeof _messageAndReactionViewSchema;
607
647
  type messageInput$schematype = typeof _messageInputSchema;
608
648
  type messageRef$schematype = typeof _messageRefSchema;
@@ -654,12 +694,15 @@ export interface logMemberLeaveSchema extends logMemberLeave$schematype {}
654
694
  export interface logMuteConvoSchema extends logMuteConvo$schematype {}
655
695
  export interface logOutgoingJoinRequestSchema extends logOutgoingJoinRequest$schematype {}
656
696
  export interface logReadConvoSchema extends logReadConvo$schematype {}
697
+ export interface logReadJoinRequestsSchema extends logReadJoinRequests$schematype {}
657
698
  export interface logReadMessageSchema extends logReadMessage$schematype {}
658
699
  export interface logRejectJoinRequestSchema extends logRejectJoinRequest$schematype {}
659
700
  export interface logRemoveMemberSchema extends logRemoveMember$schematype {}
660
701
  export interface logRemoveReactionSchema extends logRemoveReaction$schematype {}
661
702
  export interface logUnlockConvoSchema extends logUnlockConvo$schematype {}
662
703
  export interface logUnmuteConvoSchema extends logUnmuteConvo$schematype {}
704
+ export interface logWithdrawIncomingJoinRequestSchema extends logWithdrawIncomingJoinRequest$schematype {}
705
+ export interface logWithdrawOutgoingJoinRequestSchema extends logWithdrawOutgoingJoinRequest$schematype {}
663
706
  export interface messageAndReactionViewSchema extends messageAndReactionView$schematype {}
664
707
  export interface messageInputSchema extends messageInput$schematype {}
665
708
  export interface messageRefSchema extends messageRef$schematype {}
@@ -711,12 +754,17 @@ export const logMemberLeaveSchema = _logMemberLeaveSchema as logMemberLeaveSchem
711
754
  export const logMuteConvoSchema = _logMuteConvoSchema as logMuteConvoSchema;
712
755
  export const logOutgoingJoinRequestSchema = _logOutgoingJoinRequestSchema as logOutgoingJoinRequestSchema;
713
756
  export const logReadConvoSchema = _logReadConvoSchema as logReadConvoSchema;
757
+ export const logReadJoinRequestsSchema = _logReadJoinRequestsSchema as logReadJoinRequestsSchema;
714
758
  export const logReadMessageSchema = _logReadMessageSchema as logReadMessageSchema;
715
759
  export const logRejectJoinRequestSchema = _logRejectJoinRequestSchema as logRejectJoinRequestSchema;
716
760
  export const logRemoveMemberSchema = _logRemoveMemberSchema as logRemoveMemberSchema;
717
761
  export const logRemoveReactionSchema = _logRemoveReactionSchema as logRemoveReactionSchema;
718
762
  export const logUnlockConvoSchema = _logUnlockConvoSchema as logUnlockConvoSchema;
719
763
  export const logUnmuteConvoSchema = _logUnmuteConvoSchema as logUnmuteConvoSchema;
764
+ export const logWithdrawIncomingJoinRequestSchema =
765
+ _logWithdrawIncomingJoinRequestSchema as logWithdrawIncomingJoinRequestSchema;
766
+ export const logWithdrawOutgoingJoinRequestSchema =
767
+ _logWithdrawOutgoingJoinRequestSchema as logWithdrawOutgoingJoinRequestSchema;
720
768
  export const messageAndReactionViewSchema = _messageAndReactionViewSchema as messageAndReactionViewSchema;
721
769
  export const messageInputSchema = _messageInputSchema as messageInputSchema;
722
770
  export const messageRefSchema = _messageRefSchema as messageRefSchema;
@@ -781,12 +829,19 @@ export interface LogMemberLeave extends v.InferInput<typeof logMemberLeaveSchema
781
829
  export interface LogMuteConvo extends v.InferInput<typeof logMuteConvoSchema> {}
782
830
  export interface LogOutgoingJoinRequest extends v.InferInput<typeof logOutgoingJoinRequestSchema> {}
783
831
  export interface LogReadConvo extends v.InferInput<typeof logReadConvoSchema> {}
832
+ export interface LogReadJoinRequests extends v.InferInput<typeof logReadJoinRequestsSchema> {}
784
833
  export interface LogReadMessage extends v.InferInput<typeof logReadMessageSchema> {}
785
834
  export interface LogRejectJoinRequest extends v.InferInput<typeof logRejectJoinRequestSchema> {}
786
835
  export interface LogRemoveMember extends v.InferInput<typeof logRemoveMemberSchema> {}
787
836
  export interface LogRemoveReaction extends v.InferInput<typeof logRemoveReactionSchema> {}
788
837
  export interface LogUnlockConvo extends v.InferInput<typeof logUnlockConvoSchema> {}
789
838
  export interface LogUnmuteConvo extends v.InferInput<typeof logUnmuteConvoSchema> {}
839
+ export interface LogWithdrawIncomingJoinRequest extends v.InferInput<
840
+ typeof logWithdrawIncomingJoinRequestSchema
841
+ > {}
842
+ export interface LogWithdrawOutgoingJoinRequest extends v.InferInput<
843
+ typeof logWithdrawOutgoingJoinRequestSchema
844
+ > {}
790
845
  export interface MessageAndReactionView extends v.InferInput<typeof messageAndReactionViewSchema> {}
791
846
  export interface MessageInput extends v.InferInput<typeof messageInputSchema> {}
792
847
  export interface MessageRef extends v.InferInput<typeof messageRefSchema> {}
@@ -36,12 +36,15 @@ const _mainSchema = /*#__PURE__*/ v.query('chat.bsky.convo.getLog', {
36
36
  ChatBskyConvoDefs.logMuteConvoSchema,
37
37
  ChatBskyConvoDefs.logOutgoingJoinRequestSchema,
38
38
  ChatBskyConvoDefs.logReadConvoSchema,
39
+ ChatBskyConvoDefs.logReadJoinRequestsSchema,
39
40
  ChatBskyConvoDefs.logReadMessageSchema,
40
41
  ChatBskyConvoDefs.logRejectJoinRequestSchema,
41
42
  ChatBskyConvoDefs.logRemoveMemberSchema,
42
43
  ChatBskyConvoDefs.logRemoveReactionSchema,
43
44
  ChatBskyConvoDefs.logUnlockConvoSchema,
44
45
  ChatBskyConvoDefs.logUnmuteConvoSchema,
46
+ ChatBskyConvoDefs.logWithdrawIncomingJoinRequestSchema,
47
+ ChatBskyConvoDefs.logWithdrawOutgoingJoinRequestSchema,
45
48
  ]),
46
49
  );
47
50
  },
@@ -27,7 +27,7 @@ const _mainSchema = /*#__PURE__*/ v.query('chat.bsky.convo.listConvoRequests', {
27
27
  return /*#__PURE__*/ v.array(
28
28
  /*#__PURE__*/ v.variant([
29
29
  ChatBskyConvoDefs.convoViewSchema,
30
- ChatBskyGroupDefs.joinRequestViewSchema,
30
+ ChatBskyGroupDefs.joinRequestConvoViewSchema,
31
31
  ]),
32
32
  );
33
33
  },
@@ -0,0 +1,28 @@
1
+ import type {} from '@atcute/lexicons';
2
+ import * as v from '@atcute/lexicons/validations';
3
+
4
+ import * as ChatBskyGroupDefs from '../group/defs.ts';
5
+
6
+ const _mainSchema = /*#__PURE__*/ v.object({
7
+ $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.embed.joinLink')),
8
+ /** The join link code. */
9
+ code: /*#__PURE__*/ v.string(),
10
+ });
11
+ const _viewSchema = /*#__PURE__*/ v.object({
12
+ $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.embed.joinLink#view')),
13
+ get joinLinkPreview() {
14
+ return ChatBskyGroupDefs.joinLinkPreviewViewSchema;
15
+ },
16
+ });
17
+
18
+ type main$schematype = typeof _mainSchema;
19
+ type view$schematype = typeof _viewSchema;
20
+
21
+ export interface mainSchema extends main$schematype {}
22
+ export interface viewSchema extends view$schematype {}
23
+
24
+ export const mainSchema = _mainSchema as mainSchema;
25
+ export const viewSchema = _viewSchema as viewSchema;
26
+
27
+ export interface Main extends v.InferInput<typeof mainSchema> {}
28
+ export interface View extends v.InferInput<typeof viewSchema> {}
@@ -6,16 +6,27 @@ import * as ChatBskyConvoDefs from '../convo/defs.ts';
6
6
 
7
7
  const _joinLinkPreviewViewSchema = /*#__PURE__*/ v.object({
8
8
  $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.group.defs#joinLinkPreviewView')),
9
+ code: /*#__PURE__*/ v.string(),
9
10
  /** Present only if the request is authenticated and the user is a member of the group. */
10
11
  get convo() {
11
12
  return /*#__PURE__*/ v.optional(ChatBskyConvoDefs.convoViewSchema);
12
13
  },
14
+ get enabledStatus() {
15
+ return linkEnabledStatusSchema;
16
+ },
17
+ get joinRule() {
18
+ return joinRuleSchema;
19
+ },
13
20
  memberCount: /*#__PURE__*/ v.integer(),
21
+ memberLimit: /*#__PURE__*/ v.integer(),
14
22
  name: /*#__PURE__*/ v.string(),
15
23
  get owner() {
16
24
  return ChatBskyActorDefs.profileViewBasicSchema;
17
25
  },
18
26
  requireApproval: /*#__PURE__*/ v.boolean(),
27
+ get viewer() {
28
+ return /*#__PURE__*/ v.optional(joinLinkViewerStateSchema);
29
+ },
19
30
  });
20
31
  const _joinLinkViewSchema = /*#__PURE__*/ v.object({
21
32
  $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.group.defs#joinLinkView')),
@@ -29,6 +40,21 @@ const _joinLinkViewSchema = /*#__PURE__*/ v.object({
29
40
  },
30
41
  requireApproval: /*#__PURE__*/ v.boolean(),
31
42
  });
43
+ const _joinLinkViewerStateSchema = /*#__PURE__*/ v.object({
44
+ $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.group.defs#joinLinkViewerState')),
45
+ requestedAt: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.datetimeString()),
46
+ });
47
+ const _joinRequestConvoViewSchema = /*#__PURE__*/ v.object({
48
+ $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.group.defs#joinRequestConvoView')),
49
+ convoId: /*#__PURE__*/ v.string(),
50
+ memberCount: /*#__PURE__*/ v.integer(),
51
+ memberLimit: /*#__PURE__*/ v.integer(),
52
+ name: /*#__PURE__*/ v.string(),
53
+ get owner() {
54
+ return ChatBskyActorDefs.profileViewBasicSchema;
55
+ },
56
+ requestedAt: /*#__PURE__*/ v.datetimeString(),
57
+ });
32
58
  const _joinRequestViewSchema = /*#__PURE__*/ v.object({
33
59
  $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.group.defs#joinRequestView')),
34
60
  convoId: /*#__PURE__*/ v.string(),
@@ -42,24 +68,32 @@ const _linkEnabledStatusSchema = /*#__PURE__*/ v.string<'disabled' | 'enabled' |
42
68
 
43
69
  type joinLinkPreviewView$schematype = typeof _joinLinkPreviewViewSchema;
44
70
  type joinLinkView$schematype = typeof _joinLinkViewSchema;
71
+ type joinLinkViewerState$schematype = typeof _joinLinkViewerStateSchema;
72
+ type joinRequestConvoView$schematype = typeof _joinRequestConvoViewSchema;
45
73
  type joinRequestView$schematype = typeof _joinRequestViewSchema;
46
74
  type joinRule$schematype = typeof _joinRuleSchema;
47
75
  type linkEnabledStatus$schematype = typeof _linkEnabledStatusSchema;
48
76
 
49
77
  export interface joinLinkPreviewViewSchema extends joinLinkPreviewView$schematype {}
50
78
  export interface joinLinkViewSchema extends joinLinkView$schematype {}
79
+ export interface joinLinkViewerStateSchema extends joinLinkViewerState$schematype {}
80
+ export interface joinRequestConvoViewSchema extends joinRequestConvoView$schematype {}
51
81
  export interface joinRequestViewSchema extends joinRequestView$schematype {}
52
82
  export interface joinRuleSchema extends joinRule$schematype {}
53
83
  export interface linkEnabledStatusSchema extends linkEnabledStatus$schematype {}
54
84
 
55
85
  export const joinLinkPreviewViewSchema = _joinLinkPreviewViewSchema as joinLinkPreviewViewSchema;
56
86
  export const joinLinkViewSchema = _joinLinkViewSchema as joinLinkViewSchema;
87
+ export const joinLinkViewerStateSchema = _joinLinkViewerStateSchema as joinLinkViewerStateSchema;
88
+ export const joinRequestConvoViewSchema = _joinRequestConvoViewSchema as joinRequestConvoViewSchema;
57
89
  export const joinRequestViewSchema = _joinRequestViewSchema as joinRequestViewSchema;
58
90
  export const joinRuleSchema = _joinRuleSchema as joinRuleSchema;
59
91
  export const linkEnabledStatusSchema = _linkEnabledStatusSchema as linkEnabledStatusSchema;
60
92
 
61
93
  export interface JoinLinkPreviewView extends v.InferInput<typeof joinLinkPreviewViewSchema> {}
62
94
  export interface JoinLinkView extends v.InferInput<typeof joinLinkViewSchema> {}
95
+ export interface JoinLinkViewerState extends v.InferInput<typeof joinLinkViewerStateSchema> {}
96
+ export interface JoinRequestConvoView extends v.InferInput<typeof joinRequestConvoViewSchema> {}
63
97
  export interface JoinRequestView extends v.InferInput<typeof joinRequestViewSchema> {}
64
98
  export type JoinRule = v.InferInput<typeof joinRuleSchema>;
65
99
  export type LinkEnabledStatus = v.InferInput<typeof linkEnabledStatusSchema>;
@@ -0,0 +1,40 @@
1
+ import type {} from '@atcute/lexicons';
2
+ import type {} from '@atcute/lexicons/ambient';
3
+ import * as v from '@atcute/lexicons/validations';
4
+
5
+ import * as ChatBskyGroupDefs from './defs.ts';
6
+
7
+ const _mainSchema = /*#__PURE__*/ v.query('chat.bsky.group.getJoinLinkPreviews', {
8
+ params: /*#__PURE__*/ v.object({
9
+ /**
10
+ * @minLength 1
11
+ * @maxLength 50
12
+ */
13
+ codes: /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.array(/*#__PURE__*/ v.string()), [
14
+ /*#__PURE__*/ v.arrayLength(1, 50),
15
+ ]),
16
+ }),
17
+ output: {
18
+ type: 'lex',
19
+ schema: /*#__PURE__*/ v.object({
20
+ get joinLinkPreviews() {
21
+ return /*#__PURE__*/ v.array(ChatBskyGroupDefs.joinLinkPreviewViewSchema);
22
+ },
23
+ }),
24
+ },
25
+ });
26
+
27
+ type main$schematype = typeof _mainSchema;
28
+
29
+ export interface mainSchema extends main$schematype {}
30
+
31
+ export const mainSchema = _mainSchema as mainSchema;
32
+
33
+ export interface $params extends v.InferInput<mainSchema['params']> {}
34
+ export interface $output extends v.InferXRPCBodyInput<mainSchema['output']> {}
35
+
36
+ declare module '@atcute/lexicons/ambient' {
37
+ interface XRPCQueries {
38
+ 'chat.bsky.group.getJoinLinkPreviews': mainSchema;
39
+ }
40
+ }
@@ -0,0 +1,33 @@
1
+ import type {} from '@atcute/lexicons';
2
+ import type {} from '@atcute/lexicons/ambient';
3
+ import * as v from '@atcute/lexicons/validations';
4
+
5
+ const _mainSchema = /*#__PURE__*/ v.procedure('chat.bsky.group.updateJoinRequestsRead', {
6
+ params: null,
7
+ input: {
8
+ type: 'lex',
9
+ schema: /*#__PURE__*/ v.object({
10
+ convoId: /*#__PURE__*/ v.string(),
11
+ }),
12
+ },
13
+ output: {
14
+ type: 'lex',
15
+ schema: /*#__PURE__*/ v.object({}),
16
+ },
17
+ });
18
+
19
+ type main$schematype = typeof _mainSchema;
20
+
21
+ export interface mainSchema extends main$schematype {}
22
+
23
+ export const mainSchema = _mainSchema as mainSchema;
24
+
25
+ export interface $params {}
26
+ export interface $input extends v.InferXRPCBodyInput<mainSchema['input']> {}
27
+ export interface $output extends v.InferXRPCBodyInput<mainSchema['output']> {}
28
+
29
+ declare module '@atcute/lexicons/ambient' {
30
+ interface XRPCProcedures {
31
+ 'chat.bsky.group.updateJoinRequestsRead': mainSchema;
32
+ }
33
+ }
@@ -0,0 +1,33 @@
1
+ import type {} from '@atcute/lexicons';
2
+ import type {} from '@atcute/lexicons/ambient';
3
+ import * as v from '@atcute/lexicons/validations';
4
+
5
+ const _mainSchema = /*#__PURE__*/ v.procedure('chat.bsky.group.withdrawJoinRequest', {
6
+ params: null,
7
+ input: {
8
+ type: 'lex',
9
+ schema: /*#__PURE__*/ v.object({
10
+ convoId: /*#__PURE__*/ v.string(),
11
+ }),
12
+ },
13
+ output: {
14
+ type: 'lex',
15
+ schema: /*#__PURE__*/ v.object({}),
16
+ },
17
+ });
18
+
19
+ type main$schematype = typeof _mainSchema;
20
+
21
+ export interface mainSchema extends main$schematype {}
22
+
23
+ export const mainSchema = _mainSchema as mainSchema;
24
+
25
+ export interface $params {}
26
+ export interface $input extends v.InferXRPCBodyInput<mainSchema['input']> {}
27
+ export interface $output extends v.InferXRPCBodyInput<mainSchema['output']> {}
28
+
29
+ declare module '@atcute/lexicons/ambient' {
30
+ interface XRPCProcedures {
31
+ 'chat.bsky.group.withdrawJoinRequest': mainSchema;
32
+ }
33
+ }
@@ -0,0 +1,64 @@
1
+ import type {} from '@atcute/lexicons';
2
+ import * as v from '@atcute/lexicons/validations';
3
+
4
+ import * as ChatBskyConvoDefs from '../convo/defs.ts';
5
+ import * as ChatBskyGroupDefs from '../group/defs.ts';
6
+
7
+ const _convoViewSchema = /*#__PURE__*/ v.object({
8
+ $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.moderation.defs#convoView')),
9
+ id: /*#__PURE__*/ v.string(),
10
+ /** Union field that has data specific to different kinds of convos. */
11
+ get kind() {
12
+ return /*#__PURE__*/ v.optional(/*#__PURE__*/ v.variant([directConvoSchema, groupConvoSchema]));
13
+ },
14
+ rev: /*#__PURE__*/ v.string(),
15
+ });
16
+ const _directConvoSchema = /*#__PURE__*/ v.object({
17
+ $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.moderation.defs#directConvo')),
18
+ });
19
+ const _groupConvoSchema = /*#__PURE__*/ v.object({
20
+ $type: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.literal('chat.bsky.moderation.defs#groupConvo')),
21
+ createdAt: /*#__PURE__*/ v.datetimeString(),
22
+ get joinLink() {
23
+ return /*#__PURE__*/ v.optional(ChatBskyGroupDefs.joinLinkViewSchema);
24
+ },
25
+ /**
26
+ * The total number of pending join requests for the group conversation. This information is only visible to
27
+ * the owner and to moderators. Capped at 21.
28
+ */
29
+ joinRequestCount: /*#__PURE__*/ v.integer(),
30
+ /** The lock status of the conversation. */
31
+ get lockStatus() {
32
+ return ChatBskyConvoDefs.convoLockStatusSchema;
33
+ },
34
+ /** The total number of members in the group conversation. */
35
+ memberCount: /*#__PURE__*/ v.integer(),
36
+ /** The maximum number of members allowed in the group conversation. */
37
+ memberLimit: /*#__PURE__*/ v.integer(),
38
+ /**
39
+ * The display name of the group conversation.
40
+ *
41
+ * @maxLength 1280
42
+ * @maxGraphemes 128
43
+ */
44
+ name: /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [
45
+ /*#__PURE__*/ v.stringLength(0, 1280),
46
+ /*#__PURE__*/ v.stringGraphemes(0, 128),
47
+ ]),
48
+ });
49
+
50
+ type convoView$schematype = typeof _convoViewSchema;
51
+ type directConvo$schematype = typeof _directConvoSchema;
52
+ type groupConvo$schematype = typeof _groupConvoSchema;
53
+
54
+ export interface convoViewSchema extends convoView$schematype {}
55
+ export interface directConvoSchema extends directConvo$schematype {}
56
+ export interface groupConvoSchema extends groupConvo$schematype {}
57
+
58
+ export const convoViewSchema = _convoViewSchema as convoViewSchema;
59
+ export const directConvoSchema = _directConvoSchema as directConvoSchema;
60
+ export const groupConvoSchema = _groupConvoSchema as groupConvoSchema;
61
+
62
+ export interface ConvoView extends v.InferInput<typeof convoViewSchema> {}
63
+ export interface DirectConvo extends v.InferInput<typeof directConvoSchema> {}
64
+ export interface GroupConvo extends v.InferInput<typeof groupConvoSchema> {}
@@ -2,17 +2,17 @@ import type {} from '@atcute/lexicons';
2
2
  import type {} from '@atcute/lexicons/ambient';
3
3
  import * as v from '@atcute/lexicons/validations';
4
4
 
5
- import * as ChatBskyGroupDefs from './defs.ts';
5
+ import * as ChatBskyModerationDefs from './defs.ts';
6
6
 
7
- const _mainSchema = /*#__PURE__*/ v.query('chat.bsky.group.getJoinLinkPreview', {
7
+ const _mainSchema = /*#__PURE__*/ v.query('chat.bsky.moderation.getConvo', {
8
8
  params: /*#__PURE__*/ v.object({
9
- code: /*#__PURE__*/ v.string(),
9
+ convoId: /*#__PURE__*/ v.string(),
10
10
  }),
11
11
  output: {
12
12
  type: 'lex',
13
13
  schema: /*#__PURE__*/ v.object({
14
- get joinLinkPreview() {
15
- return ChatBskyGroupDefs.joinLinkPreviewViewSchema;
14
+ get convo() {
15
+ return ChatBskyModerationDefs.convoViewSchema;
16
16
  },
17
17
  }),
18
18
  },
@@ -29,6 +29,6 @@ export interface $output extends v.InferXRPCBodyInput<mainSchema['output']> {}
29
29
 
30
30
  declare module '@atcute/lexicons/ambient' {
31
31
  interface XRPCQueries {
32
- 'chat.bsky.group.getJoinLinkPreview': mainSchema;
32
+ 'chat.bsky.moderation.getConvo': mainSchema;
33
33
  }
34
34
  }
@@ -0,0 +1,45 @@
1
+ import type {} from '@atcute/lexicons';
2
+ import type {} from '@atcute/lexicons/ambient';
3
+ import * as v from '@atcute/lexicons/validations';
4
+
5
+ import * as ChatBskyActorDefs from '../actor/defs.ts';
6
+
7
+ const _mainSchema = /*#__PURE__*/ v.query('chat.bsky.moderation.getConvoMembers', {
8
+ params: /*#__PURE__*/ v.object({
9
+ convoId: /*#__PURE__*/ v.string(),
10
+ cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()),
11
+ /**
12
+ * @default 50
13
+ * @minimum 1
14
+ * @maximum 100
15
+ */
16
+ limit: /*#__PURE__*/ v.optional(
17
+ /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [/*#__PURE__*/ v.integerRange(1, 100)]),
18
+ 50,
19
+ ),
20
+ }),
21
+ output: {
22
+ type: 'lex',
23
+ schema: /*#__PURE__*/ v.object({
24
+ cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()),
25
+ get members() {
26
+ return /*#__PURE__*/ v.array(ChatBskyActorDefs.profileViewBasicSchema);
27
+ },
28
+ }),
29
+ },
30
+ });
31
+
32
+ type main$schematype = typeof _mainSchema;
33
+
34
+ export interface mainSchema extends main$schematype {}
35
+
36
+ export const mainSchema = _mainSchema as mainSchema;
37
+
38
+ export interface $params extends v.InferInput<mainSchema['params']> {}
39
+ export interface $output extends v.InferXRPCBodyInput<mainSchema['output']> {}
40
+
41
+ declare module '@atcute/lexicons/ambient' {
42
+ interface XRPCQueries {
43
+ 'chat.bsky.moderation.getConvoMembers': mainSchema;
44
+ }
45
+ }
@@ -234,6 +234,17 @@ const _eventGroupChatUpdatedSchema = /*#__PURE__*/ v.object({
234
234
  | (string & {})
235
235
  >(),
236
236
  });
237
+ const _eventRateLimitExceededSchema = /*#__PURE__*/ v.object({
238
+ $type: /*#__PURE__*/ v.optional(
239
+ /*#__PURE__*/ v.literal('chat.bsky.moderation.subscribeModEvents#eventRateLimitExceeded'),
240
+ ),
241
+ /** The DID of the user who hit the rate limit. */
242
+ actorDid: /*#__PURE__*/ v.didString(),
243
+ createdAt: /*#__PURE__*/ v.datetimeString(),
244
+ /** The NSID of the endpoint that was rate limited. */
245
+ endpoint: /*#__PURE__*/ v.string(),
246
+ rev: /*#__PURE__*/ v.string(),
247
+ });
237
248
  const _mainSchema = /*#__PURE__*/ v.subscription('chat.bsky.moderation.subscribeModEvents', {
238
249
  params: /*#__PURE__*/ v.object({
239
250
  /**
@@ -254,6 +265,7 @@ const _mainSchema = /*#__PURE__*/ v.subscription('chat.bsky.moderation.subscribe
254
265
  eventGroupChatMemberJoinedSchema,
255
266
  eventGroupChatMemberLeftSchema,
256
267
  eventGroupChatUpdatedSchema,
268
+ eventRateLimitExceededSchema,
257
269
  ]);
258
270
  },
259
271
  });
@@ -268,6 +280,7 @@ type eventGroupChatMemberAdded$schematype = typeof _eventGroupChatMemberAddedSch
268
280
  type eventGroupChatMemberJoined$schematype = typeof _eventGroupChatMemberJoinedSchema;
269
281
  type eventGroupChatMemberLeft$schematype = typeof _eventGroupChatMemberLeftSchema;
270
282
  type eventGroupChatUpdated$schematype = typeof _eventGroupChatUpdatedSchema;
283
+ type eventRateLimitExceeded$schematype = typeof _eventRateLimitExceededSchema;
271
284
  type main$schematype = typeof _mainSchema;
272
285
 
273
286
  export interface eventChatAcceptedSchema extends eventChatAccepted$schematype {}
@@ -280,6 +293,7 @@ export interface eventGroupChatMemberAddedSchema extends eventGroupChatMemberAdd
280
293
  export interface eventGroupChatMemberJoinedSchema extends eventGroupChatMemberJoined$schematype {}
281
294
  export interface eventGroupChatMemberLeftSchema extends eventGroupChatMemberLeft$schematype {}
282
295
  export interface eventGroupChatUpdatedSchema extends eventGroupChatUpdated$schematype {}
296
+ export interface eventRateLimitExceededSchema extends eventRateLimitExceeded$schematype {}
283
297
  export interface mainSchema extends main$schematype {}
284
298
 
285
299
  export const eventChatAcceptedSchema = _eventChatAcceptedSchema as eventChatAcceptedSchema;
@@ -298,6 +312,7 @@ export const eventGroupChatMemberJoinedSchema =
298
312
  export const eventGroupChatMemberLeftSchema =
299
313
  _eventGroupChatMemberLeftSchema as eventGroupChatMemberLeftSchema;
300
314
  export const eventGroupChatUpdatedSchema = _eventGroupChatUpdatedSchema as eventGroupChatUpdatedSchema;
315
+ export const eventRateLimitExceededSchema = _eventRateLimitExceededSchema as eventRateLimitExceededSchema;
301
316
  export const mainSchema = _mainSchema as mainSchema;
302
317
 
303
318
  export interface EventChatAccepted extends v.InferInput<typeof eventChatAcceptedSchema> {}
@@ -314,6 +329,7 @@ export interface EventGroupChatMemberAdded extends v.InferInput<typeof eventGrou
314
329
  export interface EventGroupChatMemberJoined extends v.InferInput<typeof eventGroupChatMemberJoinedSchema> {}
315
330
  export interface EventGroupChatMemberLeft extends v.InferInput<typeof eventGroupChatMemberLeftSchema> {}
316
331
  export interface EventGroupChatUpdated extends v.InferInput<typeof eventGroupChatUpdatedSchema> {}
332
+ export interface EventRateLimitExceeded extends v.InferInput<typeof eventRateLimitExceededSchema> {}
317
333
 
318
334
  export interface $params extends v.InferInput<mainSchema['params']> {}
319
335
  export type $message = v.InferInput<mainSchema['message']>;
package/lib/limits.ts CHANGED
@@ -73,6 +73,11 @@ export const embedVideo = {
73
73
 
74
74
  /** limits for `app.bsky.embed.external` */
75
75
  export const embedExternal = {
76
+ colorRGB: {
77
+ b: { maximum: 255 },
78
+ g: { maximum: 255 },
79
+ r: { maximum: 255 },
80
+ },
76
81
  external: {
77
82
  thumb: { maxSize: 1_000_000 },
78
83
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atcute/bluesky",
3
- "version": "4.0.2",
3
+ "version": "4.0.4",
4
4
  "description": "Bluesky (app.bsky.* and chat.bsky.*) schema definitions",
5
5
  "keywords": [
6
6
  "atcute",
@@ -30,8 +30,8 @@
30
30
  "access": "public"
31
31
  },
32
32
  "dependencies": {
33
- "@atcute/atproto": "^4.0.0",
34
- "@atcute/lexicons": "^2.0.0"
33
+ "@atcute/lexicons": "^2.0.0",
34
+ "@atcute/atproto": "^4.0.1"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@atcute/bluesky": "file:",
@@ -1 +0,0 @@
1
- {"version":3,"file":"getJoinLinkPreview.d.ts","sourceRoot":"","sources":["../../../../../../lib/lexicons/types/chat/bsky/group/getJoinLinkPreview.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,CAAC,MAAM,8BAA8B,CAAC;AAElD,OAAO,KAAK,iBAAiB,MAAM,WAAW,CAAC;AAE/C,QAAA,MAAM,WAAW;;;;;;;wCAYf,CAAC;AAEH,KAAK,eAAe,GAAG,OAAO,WAAW,CAAC;AAE1C,MAAM,WAAW,UAAW,SAAQ,eAAe;CAAG;AAEtD,eAAO,MAAM,UAAU,EAAkB,UAAU,CAAC;AAEpD,MAAM,WAAW,OAAQ,SAAQ,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;CAAG;AACtE,MAAM,WAAW,OAAQ,SAAQ,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;CAAG;AAE9E,OAAO,QAAQ,0BAA0B,CAAC;IACzC,UAAU,WAAW;QACpB,oCAAoC,EAAE,UAAU,CAAC;KACjD;CACD"}