@atproto/ozone 0.2.1 → 0.2.2

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 (50) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/api/chat/getConvos.d.ts +4 -0
  3. package/dist/api/chat/getConvos.d.ts.map +1 -0
  4. package/dist/api/chat/getConvos.js +18 -0
  5. package/dist/api/chat/getConvos.js.map +1 -0
  6. package/dist/lexicon/lexicons.d.ts +290 -42
  7. package/dist/lexicon/lexicons.d.ts.map +1 -1
  8. package/dist/lexicon/lexicons.js +154 -16
  9. package/dist/lexicon/lexicons.js.map +1 -1
  10. package/dist/lexicon/types/app/bsky/draft/defs.d.ts +10 -0
  11. package/dist/lexicon/types/app/bsky/draft/defs.d.ts.map +1 -1
  12. package/dist/lexicon/types/app/bsky/draft/defs.js +7 -0
  13. package/dist/lexicon/types/app/bsky/draft/defs.js.map +1 -1
  14. package/dist/lexicon/types/app/bsky/embed/gallery.d.ts +45 -0
  15. package/dist/lexicon/types/app/bsky/embed/gallery.d.ts.map +1 -0
  16. package/dist/lexicon/types/app/bsky/embed/gallery.js +33 -0
  17. package/dist/lexicon/types/app/bsky/embed/gallery.js.map +1 -0
  18. package/dist/lexicon/types/app/bsky/embed/record.d.ts +2 -1
  19. package/dist/lexicon/types/app/bsky/embed/record.d.ts.map +1 -1
  20. package/dist/lexicon/types/app/bsky/embed/record.js.map +1 -1
  21. package/dist/lexicon/types/app/bsky/embed/recordWithMedia.d.ts +3 -2
  22. package/dist/lexicon/types/app/bsky/embed/recordWithMedia.d.ts.map +1 -1
  23. package/dist/lexicon/types/app/bsky/embed/recordWithMedia.js.map +1 -1
  24. package/dist/lexicon/types/app/bsky/feed/defs.d.ts +2 -1
  25. package/dist/lexicon/types/app/bsky/feed/defs.d.ts.map +1 -1
  26. package/dist/lexicon/types/app/bsky/feed/defs.js.map +1 -1
  27. package/dist/lexicon/types/app/bsky/feed/post.d.ts +2 -1
  28. package/dist/lexicon/types/app/bsky/feed/post.d.ts.map +1 -1
  29. package/dist/lexicon/types/app/bsky/feed/post.js.map +1 -1
  30. package/dist/lexicon/types/chat/bsky/embed/joinLink.d.ts +4 -1
  31. package/dist/lexicon/types/chat/bsky/embed/joinLink.d.ts.map +1 -1
  32. package/dist/lexicon/types/chat/bsky/embed/joinLink.js.map +1 -1
  33. package/dist/lexicon/types/chat/bsky/group/defs.d.ts +19 -2
  34. package/dist/lexicon/types/chat/bsky/group/defs.d.ts.map +1 -1
  35. package/dist/lexicon/types/chat/bsky/group/defs.js +14 -0
  36. package/dist/lexicon/types/chat/bsky/group/defs.js.map +1 -1
  37. package/dist/lexicon/types/chat/bsky/group/getJoinLinkPreviews.d.ts +4 -1
  38. package/dist/lexicon/types/chat/bsky/group/getJoinLinkPreviews.d.ts.map +1 -1
  39. package/dist/lexicon/types/chat/bsky/group/getJoinLinkPreviews.js.map +1 -1
  40. package/dist/mod-service/subject.d.ts +5 -0
  41. package/dist/mod-service/subject.d.ts.map +1 -1
  42. package/dist/mod-service/subject.js +5 -0
  43. package/dist/mod-service/subject.js.map +1 -1
  44. package/package.json +4 -4
  45. package/src/api/chat/getConvos.ts +23 -0
  46. package/src/mod-service/subject.ts +5 -0
  47. package/tsconfig.build.json +2 -2
  48. package/tsconfig.build.tsbuildinfo +1 -1
  49. package/tsconfig.json +2 -2
  50. package/tsconfig.tests.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # @atproto/ozone
2
2
 
3
+ ## 0.2.2
4
+
5
+ ### Patch Changes
6
+
7
+ - [#5054](https://github.com/bluesky-social/atproto/pull/5054) [`dfce9df`](https://github.com/bluesky-social/atproto/commit/dfce9dfe3584ea3057b06a21526b033b0adbd4c1) Thanks [@gcwill70](https://github.com/gcwill70)! - add chat.bsky.moderation.getConvos to ozone
8
+
9
+ - Updated dependencies [[`da8818f`](https://github.com/bluesky-social/atproto/commit/da8818f13577c91a5001a9998279d695fccb7bcf)]:
10
+ - @atproto/api@0.20.11
11
+
3
12
  ## 0.2.1
4
13
 
5
14
  ### Patch Changes
@@ -0,0 +1,4 @@
1
+ import { AppContext } from '../../context.js';
2
+ import { Server } from '../../lexicon/index.js';
3
+ export default function (server: Server, ctx: AppContext): void;
4
+ //# sourceMappingURL=getConvos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConvos.d.ts","sourceRoot":"","sources":["../../../src/api/chat/getConvos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAG/C,MAAM,CAAC,OAAO,WAAW,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,QAiBvD"}
@@ -0,0 +1,18 @@
1
+ import { InvalidRequestError } from '@atproto/xrpc-server';
2
+ import { ids } from '../../lexicon/lexicons.js';
3
+ export default function (server, ctx) {
4
+ server.chat.bsky.moderation.getConvos({
5
+ auth: ctx.authVerifier.modOrAdminToken,
6
+ handler: async ({ params }) => {
7
+ if (!ctx.chatAgent) {
8
+ throw new InvalidRequestError('No chat agent configured');
9
+ }
10
+ const res = await ctx.chatAgent.api.chat.bsky.moderation.getConvos(params, await ctx.chatAuth(ids.ChatBskyModerationGetConvos));
11
+ return {
12
+ encoding: 'application/json',
13
+ body: res.data,
14
+ };
15
+ },
16
+ });
17
+ }
18
+ //# sourceMappingURL=getConvos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConvos.js","sourceRoot":"","sources":["../../../src/api/chat/getConvos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAG1D,OAAO,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAA;AAE/C,MAAM,CAAC,OAAO,WAAW,MAAc,EAAE,GAAe;IACtD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QACpC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,eAAe;QACtC,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAC5B,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;gBACnB,MAAM,IAAI,mBAAmB,CAAC,0BAA0B,CAAC,CAAA;YAC3D,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAChE,MAAM,EACN,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,2BAA2B,CAAC,CACpD,CAAA;YACD,OAAO;gBACL,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,GAAG,CAAC,IAAI;aACf,CAAA;QACH,CAAC;KACF,CAAC,CAAA;AACJ,CAAC","sourcesContent":["import { InvalidRequestError } from '@atproto/xrpc-server'\nimport { AppContext } from '../../context.js'\nimport { Server } from '../../lexicon/index.js'\nimport { ids } from '../../lexicon/lexicons.js'\n\nexport default function (server: Server, ctx: AppContext) {\n server.chat.bsky.moderation.getConvos({\n auth: ctx.authVerifier.modOrAdminToken,\n handler: async ({ params }) => {\n if (!ctx.chatAgent) {\n throw new InvalidRequestError('No chat agent configured')\n }\n const res = await ctx.chatAgent.api.chat.bsky.moderation.getConvos(\n params,\n await ctx.chatAuth(ids.ChatBskyModerationGetConvos),\n )\n return {\n encoding: 'application/json',\n body: res.data,\n }\n },\n })\n}\n"]}
@@ -2238,6 +2238,10 @@ export declare const schemaDict: {
2238
2238
  };
2239
2239
  readonly maxLength: 4;
2240
2240
  };
2241
+ readonly embedGallery: {
2242
+ readonly type: "ref";
2243
+ readonly ref: "lex:app.bsky.draft.defs#draftEmbedGallery";
2244
+ };
2241
2245
  readonly embedVideos: {
2242
2246
  readonly type: "array";
2243
2247
  readonly items: {
@@ -2316,6 +2320,25 @@ export declare const schemaDict: {
2316
2320
  };
2317
2321
  };
2318
2322
  };
2323
+ readonly draftEmbedGallery: {
2324
+ readonly type: "object";
2325
+ readonly required: ["items"];
2326
+ readonly properties: {
2327
+ readonly items: {
2328
+ readonly type: "ref";
2329
+ readonly ref: "lex:app.bsky.draft.defs#draftEmbedGalleryItems";
2330
+ };
2331
+ };
2332
+ };
2333
+ readonly draftEmbedGalleryItems: {
2334
+ readonly type: "array";
2335
+ readonly items: {
2336
+ readonly type: "union";
2337
+ readonly refs: ["lex:app.bsky.draft.defs#draftEmbedImage"];
2338
+ };
2339
+ readonly maxLength: 20;
2340
+ readonly description: "The schema-level maxLength of 20 is a future-proof ceiling. Clients should currently enforce a soft limit of 10 items in authoring UIs.";
2341
+ };
2319
2342
  readonly draftEmbedImage: {
2320
2343
  readonly type: "object";
2321
2344
  readonly required: ["localRef"];
@@ -2672,6 +2695,85 @@ export declare const schemaDict: {
2672
2695
  };
2673
2696
  };
2674
2697
  };
2698
+ readonly AppBskyEmbedGallery: {
2699
+ readonly lexicon: 1;
2700
+ readonly id: "app.bsky.embed.gallery";
2701
+ readonly description: "An assortment of media embedded in a Bluesky record (eg, a post).";
2702
+ readonly defs: {
2703
+ readonly main: {
2704
+ readonly type: "object";
2705
+ readonly required: ["items"];
2706
+ readonly properties: {
2707
+ readonly items: {
2708
+ readonly type: "array";
2709
+ readonly maxLength: 20;
2710
+ readonly description: "The schema-level maxLength of 20 is a future-proof ceiling. Clients should currently enforce a soft limit of 10 items in authoring UIs.";
2711
+ readonly items: {
2712
+ readonly type: "union";
2713
+ readonly refs: ["lex:app.bsky.embed.gallery#image"];
2714
+ readonly description: "The media items in the gallery. Each item may be of a different type, but all types must be supported by the client.";
2715
+ };
2716
+ };
2717
+ };
2718
+ };
2719
+ readonly image: {
2720
+ readonly type: "object";
2721
+ readonly required: ["image", "alt", "aspectRatio"];
2722
+ readonly properties: {
2723
+ readonly image: {
2724
+ readonly type: "blob";
2725
+ readonly accept: ["image/*"];
2726
+ readonly maxSize: 2000000;
2727
+ };
2728
+ readonly alt: {
2729
+ readonly type: "string";
2730
+ readonly description: "Alt text description of the image, for accessibility.";
2731
+ };
2732
+ readonly aspectRatio: {
2733
+ readonly type: "ref";
2734
+ readonly ref: "lex:app.bsky.embed.defs#aspectRatio";
2735
+ };
2736
+ };
2737
+ };
2738
+ readonly view: {
2739
+ readonly type: "object";
2740
+ readonly required: ["items"];
2741
+ readonly properties: {
2742
+ readonly items: {
2743
+ readonly type: "array";
2744
+ readonly items: {
2745
+ readonly type: "union";
2746
+ readonly refs: ["lex:app.bsky.embed.gallery#viewImage"];
2747
+ };
2748
+ };
2749
+ };
2750
+ };
2751
+ readonly viewImage: {
2752
+ readonly type: "object";
2753
+ readonly required: ["thumbnail", "fullsize", "alt", "aspectRatio"];
2754
+ readonly properties: {
2755
+ readonly thumbnail: {
2756
+ readonly type: "string";
2757
+ readonly format: "uri";
2758
+ readonly description: "Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.";
2759
+ };
2760
+ readonly fullsize: {
2761
+ readonly type: "string";
2762
+ readonly format: "uri";
2763
+ readonly description: "Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.";
2764
+ };
2765
+ readonly alt: {
2766
+ readonly type: "string";
2767
+ readonly description: "Alt text description of the image, for accessibility.";
2768
+ };
2769
+ readonly aspectRatio: {
2770
+ readonly type: "ref";
2771
+ readonly ref: "lex:app.bsky.embed.defs#aspectRatio";
2772
+ };
2773
+ };
2774
+ };
2775
+ };
2776
+ };
2675
2777
  readonly AppBskyEmbedGetEmbedExternalView: {
2676
2778
  readonly lexicon: 1;
2677
2779
  readonly id: "app.bsky.embed.getEmbedExternalView";
@@ -2877,7 +2979,7 @@ export declare const schemaDict: {
2877
2979
  readonly type: "array";
2878
2980
  readonly items: {
2879
2981
  readonly type: "union";
2880
- readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.external#view", "lex:app.bsky.embed.record#view", "lex:app.bsky.embed.recordWithMedia#view"];
2982
+ readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.gallery#view", "lex:app.bsky.embed.external#view", "lex:app.bsky.embed.record#view", "lex:app.bsky.embed.recordWithMedia#view"];
2881
2983
  };
2882
2984
  };
2883
2985
  readonly indexedAt: {
@@ -2949,7 +3051,7 @@ export declare const schemaDict: {
2949
3051
  };
2950
3052
  readonly media: {
2951
3053
  readonly type: "union";
2952
- readonly refs: ["lex:app.bsky.embed.images", "lex:app.bsky.embed.video", "lex:app.bsky.embed.external"];
3054
+ readonly refs: ["lex:app.bsky.embed.images", "lex:app.bsky.embed.video", "lex:app.bsky.embed.gallery", "lex:app.bsky.embed.external"];
2953
3055
  };
2954
3056
  };
2955
3057
  };
@@ -2963,7 +3065,7 @@ export declare const schemaDict: {
2963
3065
  };
2964
3066
  readonly media: {
2965
3067
  readonly type: "union";
2966
- readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.external#view"];
3068
+ readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.gallery#view", "lex:app.bsky.embed.external#view"];
2967
3069
  };
2968
3070
  };
2969
3071
  };
@@ -3083,7 +3185,7 @@ export declare const schemaDict: {
3083
3185
  };
3084
3186
  readonly embed: {
3085
3187
  readonly type: "union";
3086
- readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.external#view", "lex:app.bsky.embed.record#view", "lex:app.bsky.embed.recordWithMedia#view"];
3188
+ readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.gallery#view", "lex:app.bsky.embed.external#view", "lex:app.bsky.embed.record#view", "lex:app.bsky.embed.recordWithMedia#view"];
3087
3189
  };
3088
3190
  readonly bookmarkCount: {
3089
3191
  readonly type: "integer";
@@ -4500,7 +4602,7 @@ export declare const schemaDict: {
4500
4602
  };
4501
4603
  readonly embed: {
4502
4604
  readonly type: "union";
4503
- readonly refs: ["lex:app.bsky.embed.images", "lex:app.bsky.embed.video", "lex:app.bsky.embed.external", "lex:app.bsky.embed.record", "lex:app.bsky.embed.recordWithMedia"];
4605
+ readonly refs: ["lex:app.bsky.embed.images", "lex:app.bsky.embed.video", "lex:app.bsky.embed.gallery", "lex:app.bsky.embed.external", "lex:app.bsky.embed.record", "lex:app.bsky.embed.recordWithMedia"];
4504
4606
  };
4505
4607
  readonly langs: {
4506
4608
  readonly type: "array";
@@ -11387,8 +11489,8 @@ export declare const schemaDict: {
11387
11489
  readonly required: ["joinLinkPreview"];
11388
11490
  readonly properties: {
11389
11491
  readonly joinLinkPreview: {
11390
- readonly type: "ref";
11391
- readonly ref: "lex:chat.bsky.group.defs#joinLinkPreviewView";
11492
+ readonly type: "union";
11493
+ readonly refs: ["lex:chat.bsky.group.defs#joinLinkPreviewView", "lex:chat.bsky.group.defs#disabledJoinLinkPreviewView", "lex:chat.bsky.group.defs#invalidJoinLinkPreviewView"];
11392
11494
  };
11393
11495
  };
11394
11496
  };
@@ -11550,8 +11652,8 @@ export declare const schemaDict: {
11550
11652
  readonly name: {
11551
11653
  readonly type: "string";
11552
11654
  readonly minLength: 1;
11553
- readonly maxGraphemes: 128;
11554
- readonly maxLength: 1280;
11655
+ readonly maxGraphemes: 50;
11656
+ readonly maxLength: 500;
11555
11657
  };
11556
11658
  };
11557
11659
  };
@@ -11636,6 +11738,7 @@ export declare const schemaDict: {
11636
11738
  readonly knownValues: ["anyone", "followedByOwner"];
11637
11739
  };
11638
11740
  readonly joinLinkView: {
11741
+ readonly description: "Join link view to be used within a group view, so the convo is surrounding, not specified inside this view.";
11639
11742
  readonly type: "object";
11640
11743
  readonly required: ["code", "enabledStatus", "requireApproval", "joinRule", "createdAt"];
11641
11744
  readonly properties: {
@@ -11660,9 +11763,13 @@ export declare const schemaDict: {
11660
11763
  };
11661
11764
  };
11662
11765
  readonly joinLinkPreviewView: {
11766
+ readonly description: "Preview that can be shown in feeds, including to unauthenticated viewers.";
11663
11767
  readonly type: "object";
11664
- readonly required: ["code", "name", "owner", "memberCount", "memberLimit", "requireApproval", "joinRule", "enabledStatus"];
11768
+ readonly required: ["convoId", "code", "name", "owner", "memberCount", "memberLimit", "requireApproval", "joinRule"];
11665
11769
  readonly properties: {
11770
+ readonly convoId: {
11771
+ readonly type: "string";
11772
+ };
11666
11773
  readonly code: {
11667
11774
  readonly type: "string";
11668
11775
  };
@@ -11686,10 +11793,6 @@ export declare const schemaDict: {
11686
11793
  readonly type: "ref";
11687
11794
  readonly ref: "lex:chat.bsky.group.defs#joinRule";
11688
11795
  };
11689
- readonly enabledStatus: {
11690
- readonly type: "ref";
11691
- readonly ref: "lex:chat.bsky.group.defs#linkEnabledStatus";
11692
- };
11693
11796
  readonly convo: {
11694
11797
  readonly type: "ref";
11695
11798
  readonly ref: "lex:chat.bsky.convo.defs#convoView";
@@ -11701,6 +11804,26 @@ export declare const schemaDict: {
11701
11804
  };
11702
11805
  };
11703
11806
  };
11807
+ readonly disabledJoinLinkPreviewView: {
11808
+ readonly description: "Preview for a disabled join link. Carries only the code so clients can correlate with the input and render a disabled state.";
11809
+ readonly type: "object";
11810
+ readonly required: ["code"];
11811
+ readonly properties: {
11812
+ readonly code: {
11813
+ readonly type: "string";
11814
+ };
11815
+ };
11816
+ };
11817
+ readonly invalidJoinLinkPreviewView: {
11818
+ readonly description: "Preview for a join link code that does not map to an existing link. Carries only the code so clients can correlate with the input and render an invalid state.";
11819
+ readonly type: "object";
11820
+ readonly required: ["code"];
11821
+ readonly properties: {
11822
+ readonly code: {
11823
+ readonly type: "string";
11824
+ };
11825
+ };
11826
+ };
11704
11827
  readonly joinLinkViewerState: {
11705
11828
  readonly type: "object";
11706
11829
  readonly properties: {
@@ -11711,6 +11834,7 @@ export declare const schemaDict: {
11711
11834
  };
11712
11835
  };
11713
11836
  readonly joinRequestView: {
11837
+ readonly description: "A join request from the perspective of the group owner.";
11714
11838
  readonly type: "object";
11715
11839
  readonly required: ["convoId", "requestedBy", "requestedAt"];
11716
11840
  readonly properties: {
@@ -11730,7 +11854,7 @@ export declare const schemaDict: {
11730
11854
  readonly joinRequestConvoView: {
11731
11855
  readonly description: "A join request from the perspective of the requester, including enough group context to render the request in a list (e.g. group name, owner, member count).";
11732
11856
  readonly type: "object";
11733
- readonly required: ["convoId", "name", "owner", "memberCount", "memberLimit", "requestedAt"];
11857
+ readonly required: ["convoId", "name", "owner", "memberCount", "memberLimit", "viewer"];
11734
11858
  readonly properties: {
11735
11859
  readonly convoId: {
11736
11860
  readonly type: "string";
@@ -11748,9 +11872,9 @@ export declare const schemaDict: {
11748
11872
  readonly memberLimit: {
11749
11873
  readonly type: "integer";
11750
11874
  };
11751
- readonly requestedAt: {
11752
- readonly type: "string";
11753
- readonly format: "datetime";
11875
+ readonly viewer: {
11876
+ readonly type: "ref";
11877
+ readonly ref: "lex:chat.bsky.group.defs#joinLinkViewerState";
11754
11878
  };
11755
11879
  };
11756
11880
  };
@@ -11945,7 +12069,7 @@ export declare const schemaDict: {
11945
12069
  readonly defs: {
11946
12070
  readonly main: {
11947
12071
  readonly type: "query";
11948
- readonly description: "[NOTE: This is under active development and should be considered unstable while this note is here]. Get public information about groups from join links. Invalid or disabled codes are silently omitted from results. Use the 'code' property on the views to correlate with the input codes, not array positions.";
12072
+ readonly description: "[NOTE: This is under active development and should be considered unstable while this note is here]. Get public information about groups from join links. The output array matches the input codes one-to-one by position (and each view also carries its 'code'). Disabled codes return a disabledJoinLinkPreviewView, and codes that do not map to a previewable link return an invalidJoinLinkPreviewView.";
11949
12073
  readonly parameters: {
11950
12074
  readonly type: "params";
11951
12075
  readonly required: ["codes"];
@@ -11969,8 +12093,8 @@ export declare const schemaDict: {
11969
12093
  readonly joinLinkPreviews: {
11970
12094
  readonly type: "array";
11971
12095
  readonly items: {
11972
- readonly type: "ref";
11973
- readonly ref: "lex:chat.bsky.group.defs#joinLinkPreviewView";
12096
+ readonly type: "union";
12097
+ readonly refs: ["lex:chat.bsky.group.defs#joinLinkPreviewView", "lex:chat.bsky.group.defs#disabledJoinLinkPreviewView", "lex:chat.bsky.group.defs#invalidJoinLinkPreviewView"];
11974
12098
  };
11975
12099
  };
11976
12100
  };
@@ -25904,6 +26028,10 @@ export declare const schemas: ({
25904
26028
  };
25905
26029
  readonly maxLength: 4;
25906
26030
  };
26031
+ readonly embedGallery: {
26032
+ readonly type: "ref";
26033
+ readonly ref: "lex:app.bsky.draft.defs#draftEmbedGallery";
26034
+ };
25907
26035
  readonly embedVideos: {
25908
26036
  readonly type: "array";
25909
26037
  readonly items: {
@@ -25982,6 +26110,25 @@ export declare const schemas: ({
25982
26110
  };
25983
26111
  };
25984
26112
  };
26113
+ readonly draftEmbedGallery: {
26114
+ readonly type: "object";
26115
+ readonly required: ["items"];
26116
+ readonly properties: {
26117
+ readonly items: {
26118
+ readonly type: "ref";
26119
+ readonly ref: "lex:app.bsky.draft.defs#draftEmbedGalleryItems";
26120
+ };
26121
+ };
26122
+ };
26123
+ readonly draftEmbedGalleryItems: {
26124
+ readonly type: "array";
26125
+ readonly items: {
26126
+ readonly type: "union";
26127
+ readonly refs: ["lex:app.bsky.draft.defs#draftEmbedImage"];
26128
+ };
26129
+ readonly maxLength: 20;
26130
+ readonly description: "The schema-level maxLength of 20 is a future-proof ceiling. Clients should currently enforce a soft limit of 10 items in authoring UIs.";
26131
+ };
25985
26132
  readonly draftEmbedImage: {
25986
26133
  readonly type: "object";
25987
26134
  readonly required: ["localRef"];
@@ -26332,6 +26479,84 @@ export declare const schemas: ({
26332
26479
  };
26333
26480
  };
26334
26481
  };
26482
+ } | {
26483
+ readonly lexicon: 1;
26484
+ readonly id: "app.bsky.embed.gallery";
26485
+ readonly description: "An assortment of media embedded in a Bluesky record (eg, a post).";
26486
+ readonly defs: {
26487
+ readonly main: {
26488
+ readonly type: "object";
26489
+ readonly required: ["items"];
26490
+ readonly properties: {
26491
+ readonly items: {
26492
+ readonly type: "array";
26493
+ readonly maxLength: 20;
26494
+ readonly description: "The schema-level maxLength of 20 is a future-proof ceiling. Clients should currently enforce a soft limit of 10 items in authoring UIs.";
26495
+ readonly items: {
26496
+ readonly type: "union";
26497
+ readonly refs: ["lex:app.bsky.embed.gallery#image"];
26498
+ readonly description: "The media items in the gallery. Each item may be of a different type, but all types must be supported by the client.";
26499
+ };
26500
+ };
26501
+ };
26502
+ };
26503
+ readonly image: {
26504
+ readonly type: "object";
26505
+ readonly required: ["image", "alt", "aspectRatio"];
26506
+ readonly properties: {
26507
+ readonly image: {
26508
+ readonly type: "blob";
26509
+ readonly accept: ["image/*"];
26510
+ readonly maxSize: 2000000;
26511
+ };
26512
+ readonly alt: {
26513
+ readonly type: "string";
26514
+ readonly description: "Alt text description of the image, for accessibility.";
26515
+ };
26516
+ readonly aspectRatio: {
26517
+ readonly type: "ref";
26518
+ readonly ref: "lex:app.bsky.embed.defs#aspectRatio";
26519
+ };
26520
+ };
26521
+ };
26522
+ readonly view: {
26523
+ readonly type: "object";
26524
+ readonly required: ["items"];
26525
+ readonly properties: {
26526
+ readonly items: {
26527
+ readonly type: "array";
26528
+ readonly items: {
26529
+ readonly type: "union";
26530
+ readonly refs: ["lex:app.bsky.embed.gallery#viewImage"];
26531
+ };
26532
+ };
26533
+ };
26534
+ };
26535
+ readonly viewImage: {
26536
+ readonly type: "object";
26537
+ readonly required: ["thumbnail", "fullsize", "alt", "aspectRatio"];
26538
+ readonly properties: {
26539
+ readonly thumbnail: {
26540
+ readonly type: "string";
26541
+ readonly format: "uri";
26542
+ readonly description: "Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.";
26543
+ };
26544
+ readonly fullsize: {
26545
+ readonly type: "string";
26546
+ readonly format: "uri";
26547
+ readonly description: "Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.";
26548
+ };
26549
+ readonly alt: {
26550
+ readonly type: "string";
26551
+ readonly description: "Alt text description of the image, for accessibility.";
26552
+ };
26553
+ readonly aspectRatio: {
26554
+ readonly type: "ref";
26555
+ readonly ref: "lex:app.bsky.embed.defs#aspectRatio";
26556
+ };
26557
+ };
26558
+ };
26559
+ };
26335
26560
  } | {
26336
26561
  readonly lexicon: 1;
26337
26562
  readonly id: "app.bsky.embed.getEmbedExternalView";
@@ -26535,7 +26760,7 @@ export declare const schemas: ({
26535
26760
  readonly type: "array";
26536
26761
  readonly items: {
26537
26762
  readonly type: "union";
26538
- readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.external#view", "lex:app.bsky.embed.record#view", "lex:app.bsky.embed.recordWithMedia#view"];
26763
+ readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.gallery#view", "lex:app.bsky.embed.external#view", "lex:app.bsky.embed.record#view", "lex:app.bsky.embed.recordWithMedia#view"];
26539
26764
  };
26540
26765
  };
26541
26766
  readonly indexedAt: {
@@ -26606,7 +26831,7 @@ export declare const schemas: ({
26606
26831
  };
26607
26832
  readonly media: {
26608
26833
  readonly type: "union";
26609
- readonly refs: ["lex:app.bsky.embed.images", "lex:app.bsky.embed.video", "lex:app.bsky.embed.external"];
26834
+ readonly refs: ["lex:app.bsky.embed.images", "lex:app.bsky.embed.video", "lex:app.bsky.embed.gallery", "lex:app.bsky.embed.external"];
26610
26835
  };
26611
26836
  };
26612
26837
  };
@@ -26620,7 +26845,7 @@ export declare const schemas: ({
26620
26845
  };
26621
26846
  readonly media: {
26622
26847
  readonly type: "union";
26623
- readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.external#view"];
26848
+ readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.gallery#view", "lex:app.bsky.embed.external#view"];
26624
26849
  };
26625
26850
  };
26626
26851
  };
@@ -26738,7 +26963,7 @@ export declare const schemas: ({
26738
26963
  };
26739
26964
  readonly embed: {
26740
26965
  readonly type: "union";
26741
- readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.external#view", "lex:app.bsky.embed.record#view", "lex:app.bsky.embed.recordWithMedia#view"];
26966
+ readonly refs: ["lex:app.bsky.embed.images#view", "lex:app.bsky.embed.video#view", "lex:app.bsky.embed.gallery#view", "lex:app.bsky.embed.external#view", "lex:app.bsky.embed.record#view", "lex:app.bsky.embed.recordWithMedia#view"];
26742
26967
  };
26743
26968
  readonly bookmarkCount: {
26744
26969
  readonly type: "integer";
@@ -28136,7 +28361,7 @@ export declare const schemas: ({
28136
28361
  };
28137
28362
  readonly embed: {
28138
28363
  readonly type: "union";
28139
- readonly refs: ["lex:app.bsky.embed.images", "lex:app.bsky.embed.video", "lex:app.bsky.embed.external", "lex:app.bsky.embed.record", "lex:app.bsky.embed.recordWithMedia"];
28364
+ readonly refs: ["lex:app.bsky.embed.images", "lex:app.bsky.embed.video", "lex:app.bsky.embed.gallery", "lex:app.bsky.embed.external", "lex:app.bsky.embed.record", "lex:app.bsky.embed.recordWithMedia"];
28140
28365
  };
28141
28366
  readonly langs: {
28142
28367
  readonly type: "array";
@@ -34908,8 +35133,8 @@ export declare const schemas: ({
34908
35133
  readonly required: ["joinLinkPreview"];
34909
35134
  readonly properties: {
34910
35135
  readonly joinLinkPreview: {
34911
- readonly type: "ref";
34912
- readonly ref: "lex:chat.bsky.group.defs#joinLinkPreviewView";
35136
+ readonly type: "union";
35137
+ readonly refs: ["lex:chat.bsky.group.defs#joinLinkPreviewView", "lex:chat.bsky.group.defs#disabledJoinLinkPreviewView", "lex:chat.bsky.group.defs#invalidJoinLinkPreviewView"];
34913
35138
  };
34914
35139
  };
34915
35140
  };
@@ -35068,8 +35293,8 @@ export declare const schemas: ({
35068
35293
  readonly name: {
35069
35294
  readonly type: "string";
35070
35295
  readonly minLength: 1;
35071
- readonly maxGraphemes: 128;
35072
- readonly maxLength: 1280;
35296
+ readonly maxGraphemes: 50;
35297
+ readonly maxLength: 500;
35073
35298
  };
35074
35299
  };
35075
35300
  };
@@ -35152,6 +35377,7 @@ export declare const schemas: ({
35152
35377
  readonly knownValues: ["anyone", "followedByOwner"];
35153
35378
  };
35154
35379
  readonly joinLinkView: {
35380
+ readonly description: "Join link view to be used within a group view, so the convo is surrounding, not specified inside this view.";
35155
35381
  readonly type: "object";
35156
35382
  readonly required: ["code", "enabledStatus", "requireApproval", "joinRule", "createdAt"];
35157
35383
  readonly properties: {
@@ -35176,9 +35402,13 @@ export declare const schemas: ({
35176
35402
  };
35177
35403
  };
35178
35404
  readonly joinLinkPreviewView: {
35405
+ readonly description: "Preview that can be shown in feeds, including to unauthenticated viewers.";
35179
35406
  readonly type: "object";
35180
- readonly required: ["code", "name", "owner", "memberCount", "memberLimit", "requireApproval", "joinRule", "enabledStatus"];
35407
+ readonly required: ["convoId", "code", "name", "owner", "memberCount", "memberLimit", "requireApproval", "joinRule"];
35181
35408
  readonly properties: {
35409
+ readonly convoId: {
35410
+ readonly type: "string";
35411
+ };
35182
35412
  readonly code: {
35183
35413
  readonly type: "string";
35184
35414
  };
@@ -35202,10 +35432,6 @@ export declare const schemas: ({
35202
35432
  readonly type: "ref";
35203
35433
  readonly ref: "lex:chat.bsky.group.defs#joinRule";
35204
35434
  };
35205
- readonly enabledStatus: {
35206
- readonly type: "ref";
35207
- readonly ref: "lex:chat.bsky.group.defs#linkEnabledStatus";
35208
- };
35209
35435
  readonly convo: {
35210
35436
  readonly type: "ref";
35211
35437
  readonly ref: "lex:chat.bsky.convo.defs#convoView";
@@ -35217,6 +35443,26 @@ export declare const schemas: ({
35217
35443
  };
35218
35444
  };
35219
35445
  };
35446
+ readonly disabledJoinLinkPreviewView: {
35447
+ readonly description: "Preview for a disabled join link. Carries only the code so clients can correlate with the input and render a disabled state.";
35448
+ readonly type: "object";
35449
+ readonly required: ["code"];
35450
+ readonly properties: {
35451
+ readonly code: {
35452
+ readonly type: "string";
35453
+ };
35454
+ };
35455
+ };
35456
+ readonly invalidJoinLinkPreviewView: {
35457
+ readonly description: "Preview for a join link code that does not map to an existing link. Carries only the code so clients can correlate with the input and render an invalid state.";
35458
+ readonly type: "object";
35459
+ readonly required: ["code"];
35460
+ readonly properties: {
35461
+ readonly code: {
35462
+ readonly type: "string";
35463
+ };
35464
+ };
35465
+ };
35220
35466
  readonly joinLinkViewerState: {
35221
35467
  readonly type: "object";
35222
35468
  readonly properties: {
@@ -35227,6 +35473,7 @@ export declare const schemas: ({
35227
35473
  };
35228
35474
  };
35229
35475
  readonly joinRequestView: {
35476
+ readonly description: "A join request from the perspective of the group owner.";
35230
35477
  readonly type: "object";
35231
35478
  readonly required: ["convoId", "requestedBy", "requestedAt"];
35232
35479
  readonly properties: {
@@ -35246,7 +35493,7 @@ export declare const schemas: ({
35246
35493
  readonly joinRequestConvoView: {
35247
35494
  readonly description: "A join request from the perspective of the requester, including enough group context to render the request in a list (e.g. group name, owner, member count).";
35248
35495
  readonly type: "object";
35249
- readonly required: ["convoId", "name", "owner", "memberCount", "memberLimit", "requestedAt"];
35496
+ readonly required: ["convoId", "name", "owner", "memberCount", "memberLimit", "viewer"];
35250
35497
  readonly properties: {
35251
35498
  readonly convoId: {
35252
35499
  readonly type: "string";
@@ -35264,9 +35511,9 @@ export declare const schemas: ({
35264
35511
  readonly memberLimit: {
35265
35512
  readonly type: "integer";
35266
35513
  };
35267
- readonly requestedAt: {
35268
- readonly type: "string";
35269
- readonly format: "datetime";
35514
+ readonly viewer: {
35515
+ readonly type: "ref";
35516
+ readonly ref: "lex:chat.bsky.group.defs#joinLinkViewerState";
35270
35517
  };
35271
35518
  };
35272
35519
  };
@@ -35456,7 +35703,7 @@ export declare const schemas: ({
35456
35703
  readonly defs: {
35457
35704
  readonly main: {
35458
35705
  readonly type: "query";
35459
- readonly description: "[NOTE: This is under active development and should be considered unstable while this note is here]. Get public information about groups from join links. Invalid or disabled codes are silently omitted from results. Use the 'code' property on the views to correlate with the input codes, not array positions.";
35706
+ readonly description: "[NOTE: This is under active development and should be considered unstable while this note is here]. Get public information about groups from join links. The output array matches the input codes one-to-one by position (and each view also carries its 'code'). Disabled codes return a disabledJoinLinkPreviewView, and codes that do not map to a previewable link return an invalidJoinLinkPreviewView.";
35460
35707
  readonly parameters: {
35461
35708
  readonly type: "params";
35462
35709
  readonly required: ["codes"];
@@ -35480,8 +35727,8 @@ export declare const schemas: ({
35480
35727
  readonly joinLinkPreviews: {
35481
35728
  readonly type: "array";
35482
35729
  readonly items: {
35483
- readonly type: "ref";
35484
- readonly ref: "lex:chat.bsky.group.defs#joinLinkPreviewView";
35730
+ readonly type: "union";
35731
+ readonly refs: ["lex:chat.bsky.group.defs#joinLinkPreviewView", "lex:chat.bsky.group.defs#disabledJoinLinkPreviewView", "lex:chat.bsky.group.defs#invalidJoinLinkPreviewView"];
35485
35732
  };
35486
35733
  };
35487
35734
  };
@@ -47064,6 +47311,7 @@ export declare const ids: {
47064
47311
  readonly AppBskyDraftUpdateDraft: "app.bsky.draft.updateDraft";
47065
47312
  readonly AppBskyEmbedDefs: "app.bsky.embed.defs";
47066
47313
  readonly AppBskyEmbedExternal: "app.bsky.embed.external";
47314
+ readonly AppBskyEmbedGallery: "app.bsky.embed.gallery";
47067
47315
  readonly AppBskyEmbedGetEmbedExternalView: "app.bsky.embed.getEmbedExternalView";
47068
47316
  readonly AppBskyEmbedImages: "app.bsky.embed.images";
47069
47317
  readonly AppBskyEmbedRecord: "app.bsky.embed.record";