@atproto/api 0.13.0 → 0.13.2-next.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 (67) hide show
  1. package/CHANGELOG.md +96 -90
  2. package/dist/client/index.d.ts +17 -0
  3. package/dist/client/index.d.ts.map +1 -1
  4. package/dist/client/index.js +39 -4
  5. package/dist/client/index.js.map +1 -1
  6. package/dist/client/lexicons.d.ts +236 -15
  7. package/dist/client/lexicons.d.ts.map +1 -1
  8. package/dist/client/lexicons.js +247 -18
  9. package/dist/client/lexicons.js.map +1 -1
  10. package/dist/client/types/app/bsky/embed/defs.d.ts +13 -0
  11. package/dist/client/types/app/bsky/embed/defs.d.ts.map +1 -0
  12. package/dist/client/types/app/bsky/embed/defs.js +16 -0
  13. package/dist/client/types/app/bsky/embed/defs.js.map +1 -0
  14. package/dist/client/types/app/bsky/embed/images.d.ts +3 -10
  15. package/dist/client/types/app/bsky/embed/images.d.ts.map +1 -1
  16. package/dist/client/types/app/bsky/embed/images.js +1 -11
  17. package/dist/client/types/app/bsky/embed/images.js.map +1 -1
  18. package/dist/client/types/app/bsky/embed/record.d.ts +2 -1
  19. package/dist/client/types/app/bsky/embed/record.d.ts.map +1 -1
  20. package/dist/client/types/app/bsky/embed/record.js.map +1 -1
  21. package/dist/client/types/app/bsky/embed/recordWithMedia.d.ts +3 -2
  22. package/dist/client/types/app/bsky/embed/recordWithMedia.d.ts.map +1 -1
  23. package/dist/client/types/app/bsky/embed/recordWithMedia.js.map +1 -1
  24. package/dist/client/types/app/bsky/embed/video.d.ts +33 -0
  25. package/dist/client/types/app/bsky/embed/video.d.ts.map +1 -0
  26. package/dist/client/types/app/bsky/embed/video.js +35 -0
  27. package/dist/client/types/app/bsky/embed/video.js.map +1 -0
  28. package/dist/client/types/app/bsky/feed/defs.d.ts +2 -1
  29. package/dist/client/types/app/bsky/feed/defs.d.ts.map +1 -1
  30. package/dist/client/types/app/bsky/feed/defs.js.map +1 -1
  31. package/dist/client/types/app/bsky/feed/post.d.ts +2 -1
  32. package/dist/client/types/app/bsky/feed/post.d.ts.map +1 -1
  33. package/dist/client/types/app/bsky/feed/post.js.map +1 -1
  34. package/dist/client/types/app/bsky/video/defs.d.ts +19 -0
  35. package/dist/client/types/app/bsky/video/defs.d.ts.map +1 -0
  36. package/dist/client/types/app/bsky/video/defs.js +16 -0
  37. package/dist/client/types/app/bsky/video/defs.js.map +1 -0
  38. package/dist/client/types/app/bsky/video/getJobStatus.d.ts +24 -0
  39. package/dist/client/types/app/bsky/video/getJobStatus.d.ts.map +1 -0
  40. package/dist/client/types/app/bsky/video/getJobStatus.js +8 -0
  41. package/dist/client/types/app/bsky/video/getJobStatus.js.map +1 -0
  42. package/dist/client/types/app/bsky/video/getUploadLimits.d.ts +26 -0
  43. package/dist/client/types/app/bsky/video/getUploadLimits.d.ts.map +1 -0
  44. package/dist/client/types/app/bsky/video/getUploadLimits.js +8 -0
  45. package/dist/client/types/app/bsky/video/getUploadLimits.js.map +1 -0
  46. package/dist/client/types/app/bsky/video/uploadVideo.d.ts +25 -0
  47. package/dist/client/types/app/bsky/video/uploadVideo.d.ts.map +1 -0
  48. package/dist/client/types/app/bsky/video/uploadVideo.js +8 -0
  49. package/dist/client/types/app/bsky/video/uploadVideo.js.map +1 -0
  50. package/dist/index.d.ts +1 -1
  51. package/dist/index.d.ts.map +1 -1
  52. package/dist/index.js.map +1 -1
  53. package/package.json +4 -4
  54. package/src/client/index.ts +53 -0
  55. package/src/client/lexicons.ts +250 -19
  56. package/src/client/types/app/bsky/embed/defs.ts +26 -0
  57. package/src/client/types/app/bsky/embed/images.ts +3 -21
  58. package/src/client/types/app/bsky/embed/record.ts +2 -0
  59. package/src/client/types/app/bsky/embed/recordWithMedia.ts +3 -0
  60. package/src/client/types/app/bsky/embed/video.ts +67 -0
  61. package/src/client/types/app/bsky/feed/defs.ts +2 -0
  62. package/src/client/types/app/bsky/feed/post.ts +2 -0
  63. package/src/client/types/app/bsky/video/defs.ts +32 -0
  64. package/src/client/types/app/bsky/video/getJobStatus.ts +35 -0
  65. package/src/client/types/app/bsky/video/getUploadLimits.ts +36 -0
  66. package/src/client/types/app/bsky/video/uploadVideo.ts +35 -0
  67. package/src/index.ts +1 -1
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAA2C;AAC3C,gDAAgE;AAEhE,0CAAuC;AAA9B,+FAAA,KAAK,OAAA;AACd,4CAMyB;AALvB,kGAAA,OAAO,OAAA;AACP,oGAAA,SAAS,OAAA;AACT,uGAAA,YAAY,OAAA;AACZ,oGAAA,SAAS,OAAA;AACT,0GAAA,eAAe,OAAA;AAEjB,kDAAmD;AAA1C,2GAAA,aAAa,OAAA;AACtB,0CAAuB;AACvB,0CAAuB;AACvB,yCAAsB;AACtB,2CAAwB;AACxB,wDAAqC;AACrC,2DAAwC;AACxC,sDAAmC;AACnC,mDAAgC;AAChC,+CAA4B;AAC5B,qDAAkC;AAClC,2CAAwB;AACxB,oDAA0E;AAAjE,gGAAA,MAAM,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AACvC,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AAEd,yCAAsC;AAA7B,qGAAA,QAAQ,OAAA;AACjB,2CAAwC;AAA/B,uGAAA,SAAS,OAAA;AAElB,kBAAkB;AAClB,yCAAiD;AAAxC,oGAAA,QAAQ,OAAW;AAE5B,+EAA+E;AAC/E,2BAA2B;AACd,QAAA,QAAQ,GAAG,IAAI,kBAAQ,CAAC,mBAAgB,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,8CAA2C;AAC3C,gDAAgE;AAEhE,0CAAuC;AAA9B,+FAAA,KAAK,OAAA;AACd,4CAMyB;AALvB,kGAAA,OAAO,OAAA;AACP,oGAAA,SAAS,OAAA;AACT,uGAAA,YAAY,OAAA;AACZ,oGAAA,SAAS,OAAA;AACT,0GAAA,eAAe,OAAA;AAEjB,kDAAmD;AAA1C,2GAAA,aAAa,OAAA;AACtB,0CAAuB;AACvB,0CAAuB;AACvB,yCAAsB;AACtB,2CAAwB;AACxB,wDAAqC;AACrC,2DAAwC;AACxC,sDAAmC;AACnC,mDAAgC;AAChC,+CAA4B;AAC5B,qDAAkC;AAClC,2CAAwB;AACxB,oDAA0E;AAAjE,gGAAA,MAAM,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AACvC,iCAA+B;AAAtB,8FAAA,KAAK,OAAA;AAEd,yCAA4D;AAAnD,qGAAA,QAAQ,OAAA;AACjB,2CAAwC;AAA/B,uGAAA,SAAS,OAAA;AAElB,kBAAkB;AAClB,yCAAiD;AAAxC,oGAAA,QAAQ,OAAW;AAE5B,+EAA+E;AAC/E,2BAA2B;AACd,QAAA,QAAQ,GAAG,IAAI,kBAAQ,CAAC,mBAAgB,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atproto/api",
3
- "version": "0.13.0",
3
+ "version": "0.13.2-next.0",
4
4
  "license": "MIT",
5
5
  "description": "Client library for atproto and Bluesky",
6
6
  "keywords": [
@@ -20,10 +20,10 @@
20
20
  "await-lock": "^2.2.2",
21
21
  "multiformats": "^9.9.0",
22
22
  "tlds": "^1.234.0",
23
- "@atproto/common-web": "^0.3.0",
24
23
  "@atproto/lexicon": "^0.4.1",
25
- "@atproto/syntax": "^0.3.0",
26
- "@atproto/xrpc": "^0.6.0"
24
+ "@atproto/common-web": "^0.3.0",
25
+ "@atproto/xrpc": "^0.6.0",
26
+ "@atproto/syntax": "^0.3.0"
27
27
  },
28
28
  "devDependencies": {
29
29
  "get-port": "^6.1.2",
@@ -92,10 +92,12 @@ import * as AppBskyActorProfile from './types/app/bsky/actor/profile'
92
92
  import * as AppBskyActorPutPreferences from './types/app/bsky/actor/putPreferences'
93
93
  import * as AppBskyActorSearchActors from './types/app/bsky/actor/searchActors'
94
94
  import * as AppBskyActorSearchActorsTypeahead from './types/app/bsky/actor/searchActorsTypeahead'
95
+ import * as AppBskyEmbedDefs from './types/app/bsky/embed/defs'
95
96
  import * as AppBskyEmbedExternal from './types/app/bsky/embed/external'
96
97
  import * as AppBskyEmbedImages from './types/app/bsky/embed/images'
97
98
  import * as AppBskyEmbedRecord from './types/app/bsky/embed/record'
98
99
  import * as AppBskyEmbedRecordWithMedia from './types/app/bsky/embed/recordWithMedia'
100
+ import * as AppBskyEmbedVideo from './types/app/bsky/embed/video'
99
101
  import * as AppBskyFeedDefs from './types/app/bsky/feed/defs'
100
102
  import * as AppBskyFeedDescribeFeedGenerator from './types/app/bsky/feed/describeFeedGenerator'
101
103
  import * as AppBskyFeedGenerator from './types/app/bsky/feed/generator'
@@ -161,6 +163,10 @@ import * as AppBskyUnspeccedGetSuggestionsSkeleton from './types/app/bsky/unspec
161
163
  import * as AppBskyUnspeccedGetTaggedSuggestions from './types/app/bsky/unspecced/getTaggedSuggestions'
162
164
  import * as AppBskyUnspeccedSearchActorsSkeleton from './types/app/bsky/unspecced/searchActorsSkeleton'
163
165
  import * as AppBskyUnspeccedSearchPostsSkeleton from './types/app/bsky/unspecced/searchPostsSkeleton'
166
+ import * as AppBskyVideoDefs from './types/app/bsky/video/defs'
167
+ import * as AppBskyVideoGetJobStatus from './types/app/bsky/video/getJobStatus'
168
+ import * as AppBskyVideoGetUploadLimits from './types/app/bsky/video/getUploadLimits'
169
+ import * as AppBskyVideoUploadVideo from './types/app/bsky/video/uploadVideo'
164
170
  import * as ChatBskyActorDeclaration from './types/chat/bsky/actor/declaration'
165
171
  import * as ChatBskyActorDefs from './types/chat/bsky/actor/defs'
166
172
  import * as ChatBskyActorDeleteAccount from './types/chat/bsky/actor/deleteAccount'
@@ -289,10 +295,12 @@ export * as AppBskyActorProfile from './types/app/bsky/actor/profile'
289
295
  export * as AppBskyActorPutPreferences from './types/app/bsky/actor/putPreferences'
290
296
  export * as AppBskyActorSearchActors from './types/app/bsky/actor/searchActors'
291
297
  export * as AppBskyActorSearchActorsTypeahead from './types/app/bsky/actor/searchActorsTypeahead'
298
+ export * as AppBskyEmbedDefs from './types/app/bsky/embed/defs'
292
299
  export * as AppBskyEmbedExternal from './types/app/bsky/embed/external'
293
300
  export * as AppBskyEmbedImages from './types/app/bsky/embed/images'
294
301
  export * as AppBskyEmbedRecord from './types/app/bsky/embed/record'
295
302
  export * as AppBskyEmbedRecordWithMedia from './types/app/bsky/embed/recordWithMedia'
303
+ export * as AppBskyEmbedVideo from './types/app/bsky/embed/video'
296
304
  export * as AppBskyFeedDefs from './types/app/bsky/feed/defs'
297
305
  export * as AppBskyFeedDescribeFeedGenerator from './types/app/bsky/feed/describeFeedGenerator'
298
306
  export * as AppBskyFeedGenerator from './types/app/bsky/feed/generator'
@@ -358,6 +366,10 @@ export * as AppBskyUnspeccedGetSuggestionsSkeleton from './types/app/bsky/unspec
358
366
  export * as AppBskyUnspeccedGetTaggedSuggestions from './types/app/bsky/unspecced/getTaggedSuggestions'
359
367
  export * as AppBskyUnspeccedSearchActorsSkeleton from './types/app/bsky/unspecced/searchActorsSkeleton'
360
368
  export * as AppBskyUnspeccedSearchPostsSkeleton from './types/app/bsky/unspecced/searchPostsSkeleton'
369
+ export * as AppBskyVideoDefs from './types/app/bsky/video/defs'
370
+ export * as AppBskyVideoGetJobStatus from './types/app/bsky/video/getJobStatus'
371
+ export * as AppBskyVideoGetUploadLimits from './types/app/bsky/video/getUploadLimits'
372
+ export * as AppBskyVideoUploadVideo from './types/app/bsky/video/uploadVideo'
361
373
  export * as ChatBskyActorDeclaration from './types/chat/bsky/actor/declaration'
362
374
  export * as ChatBskyActorDefs from './types/chat/bsky/actor/defs'
363
375
  export * as ChatBskyActorDeleteAccount from './types/chat/bsky/actor/deleteAccount'
@@ -1417,6 +1429,7 @@ export class AppBskyNS {
1417
1429
  notification: AppBskyNotificationNS
1418
1430
  richtext: AppBskyRichtextNS
1419
1431
  unspecced: AppBskyUnspeccedNS
1432
+ video: AppBskyVideoNS
1420
1433
 
1421
1434
  constructor(client: XrpcClient) {
1422
1435
  this._client = client
@@ -1428,6 +1441,7 @@ export class AppBskyNS {
1428
1441
  this.notification = new AppBskyNotificationNS(client)
1429
1442
  this.richtext = new AppBskyRichtextNS(client)
1430
1443
  this.unspecced = new AppBskyUnspeccedNS(client)
1444
+ this.video = new AppBskyVideoNS(client)
1431
1445
  }
1432
1446
  }
1433
1447
 
@@ -2945,6 +2959,45 @@ export class AppBskyUnspeccedNS {
2945
2959
  }
2946
2960
  }
2947
2961
 
2962
+ export class AppBskyVideoNS {
2963
+ _client: XrpcClient
2964
+
2965
+ constructor(client: XrpcClient) {
2966
+ this._client = client
2967
+ }
2968
+
2969
+ getJobStatus(
2970
+ params?: AppBskyVideoGetJobStatus.QueryParams,
2971
+ opts?: AppBskyVideoGetJobStatus.CallOptions,
2972
+ ): Promise<AppBskyVideoGetJobStatus.Response> {
2973
+ return this._client.call(
2974
+ 'app.bsky.video.getJobStatus',
2975
+ params,
2976
+ undefined,
2977
+ opts,
2978
+ )
2979
+ }
2980
+
2981
+ getUploadLimits(
2982
+ params?: AppBskyVideoGetUploadLimits.QueryParams,
2983
+ opts?: AppBskyVideoGetUploadLimits.CallOptions,
2984
+ ): Promise<AppBskyVideoGetUploadLimits.Response> {
2985
+ return this._client.call(
2986
+ 'app.bsky.video.getUploadLimits',
2987
+ params,
2988
+ undefined,
2989
+ opts,
2990
+ )
2991
+ }
2992
+
2993
+ uploadVideo(
2994
+ data?: AppBskyVideoUploadVideo.InputSchema,
2995
+ opts?: AppBskyVideoUploadVideo.CallOptions,
2996
+ ): Promise<AppBskyVideoUploadVideo.Response> {
2997
+ return this._client.call('app.bsky.video.uploadVideo', opts?.qp, data, opts)
2998
+ }
2999
+ }
3000
+
2948
3001
  export class ChatNS {
2949
3002
  _client: XrpcClient
2950
3003
  bsky: ChatBskyNS
@@ -4796,6 +4796,28 @@ export const schemaDict = {
4796
4796
  },
4797
4797
  },
4798
4798
  },
4799
+ AppBskyEmbedDefs: {
4800
+ lexicon: 1,
4801
+ id: 'app.bsky.embed.defs',
4802
+ defs: {
4803
+ aspectRatio: {
4804
+ type: 'object',
4805
+ description:
4806
+ 'width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit.',
4807
+ required: ['width', 'height'],
4808
+ properties: {
4809
+ width: {
4810
+ type: 'integer',
4811
+ minimum: 1,
4812
+ },
4813
+ height: {
4814
+ type: 'integer',
4815
+ minimum: 1,
4816
+ },
4817
+ },
4818
+ },
4819
+ },
4820
+ },
4799
4821
  AppBskyEmbedExternal: {
4800
4822
  lexicon: 1,
4801
4823
  id: 'app.bsky.embed.external',
@@ -4900,23 +4922,7 @@ export const schemaDict = {
4900
4922
  },
4901
4923
  aspectRatio: {
4902
4924
  type: 'ref',
4903
- ref: 'lex:app.bsky.embed.images#aspectRatio',
4904
- },
4905
- },
4906
- },
4907
- aspectRatio: {
4908
- type: 'object',
4909
- description:
4910
- 'width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit.',
4911
- required: ['width', 'height'],
4912
- properties: {
4913
- width: {
4914
- type: 'integer',
4915
- minimum: 1,
4916
- },
4917
- height: {
4918
- type: 'integer',
4919
- minimum: 1,
4925
+ ref: 'lex:app.bsky.embed.defs#aspectRatio',
4920
4926
  },
4921
4927
  },
4922
4928
  },
@@ -4957,7 +4963,7 @@ export const schemaDict = {
4957
4963
  },
4958
4964
  aspectRatio: {
4959
4965
  type: 'ref',
4960
- ref: 'lex:app.bsky.embed.images#aspectRatio',
4966
+ ref: 'lex:app.bsky.embed.defs#aspectRatio',
4961
4967
  },
4962
4968
  },
4963
4969
  },
@@ -5039,6 +5045,7 @@ export const schemaDict = {
5039
5045
  type: 'union',
5040
5046
  refs: [
5041
5047
  'lex:app.bsky.embed.images#view',
5048
+ 'lex:app.bsky.embed.video#view',
5042
5049
  'lex:app.bsky.embed.external#view',
5043
5050
  'lex:app.bsky.embed.record#view',
5044
5051
  'lex:app.bsky.embed.recordWithMedia#view',
@@ -5101,7 +5108,11 @@ export const schemaDict = {
5101
5108
  },
5102
5109
  media: {
5103
5110
  type: 'union',
5104
- refs: ['lex:app.bsky.embed.images', 'lex:app.bsky.embed.external'],
5111
+ refs: [
5112
+ 'lex:app.bsky.embed.images',
5113
+ 'lex:app.bsky.embed.video',
5114
+ 'lex:app.bsky.embed.external',
5115
+ ],
5105
5116
  },
5106
5117
  },
5107
5118
  },
@@ -5117,6 +5128,7 @@ export const schemaDict = {
5117
5128
  type: 'union',
5118
5129
  refs: [
5119
5130
  'lex:app.bsky.embed.images#view',
5131
+ 'lex:app.bsky.embed.video#view',
5120
5132
  'lex:app.bsky.embed.external#view',
5121
5133
  ],
5122
5134
  },
@@ -5124,6 +5136,85 @@ export const schemaDict = {
5124
5136
  },
5125
5137
  },
5126
5138
  },
5139
+ AppBskyEmbedVideo: {
5140
+ lexicon: 1,
5141
+ id: 'app.bsky.embed.video',
5142
+ description: 'A video embedded in a Bluesky record (eg, a post).',
5143
+ defs: {
5144
+ main: {
5145
+ type: 'object',
5146
+ required: ['video'],
5147
+ properties: {
5148
+ video: {
5149
+ type: 'blob',
5150
+ accept: ['video/mp4'],
5151
+ maxSize: 50000000,
5152
+ },
5153
+ captions: {
5154
+ type: 'array',
5155
+ items: {
5156
+ type: 'ref',
5157
+ ref: 'lex:app.bsky.embed.video#caption',
5158
+ },
5159
+ maxLength: 20,
5160
+ },
5161
+ alt: {
5162
+ type: 'string',
5163
+ description:
5164
+ 'Alt text description of the video, for accessibility.',
5165
+ maxGraphemes: 1000,
5166
+ maxLength: 10000,
5167
+ },
5168
+ aspectRatio: {
5169
+ type: 'ref',
5170
+ ref: 'lex:app.bsky.embed.defs#aspectRatio',
5171
+ },
5172
+ },
5173
+ },
5174
+ caption: {
5175
+ type: 'object',
5176
+ required: ['lang', 'file'],
5177
+ properties: {
5178
+ lang: {
5179
+ type: 'string',
5180
+ format: 'language',
5181
+ },
5182
+ file: {
5183
+ type: 'blob',
5184
+ accept: ['text/vtt'],
5185
+ maxSize: 20000,
5186
+ },
5187
+ },
5188
+ },
5189
+ view: {
5190
+ type: 'object',
5191
+ required: ['cid', 'playlist'],
5192
+ properties: {
5193
+ cid: {
5194
+ type: 'string',
5195
+ format: 'cid',
5196
+ },
5197
+ playlist: {
5198
+ type: 'string',
5199
+ format: 'uri',
5200
+ },
5201
+ thumbnail: {
5202
+ type: 'string',
5203
+ format: 'uri',
5204
+ },
5205
+ alt: {
5206
+ type: 'string',
5207
+ maxGraphemes: 1000,
5208
+ maxLength: 10000,
5209
+ },
5210
+ aspectRatio: {
5211
+ type: 'ref',
5212
+ ref: 'lex:app.bsky.embed.defs#aspectRatio',
5213
+ },
5214
+ },
5215
+ },
5216
+ },
5217
+ },
5127
5218
  AppBskyFeedDefs: {
5128
5219
  lexicon: 1,
5129
5220
  id: 'app.bsky.feed.defs',
@@ -5151,6 +5242,7 @@ export const schemaDict = {
5151
5242
  type: 'union',
5152
5243
  refs: [
5153
5244
  'lex:app.bsky.embed.images#view',
5245
+ 'lex:app.bsky.embed.video#view',
5154
5246
  'lex:app.bsky.embed.external#view',
5155
5247
  'lex:app.bsky.embed.record#view',
5156
5248
  'lex:app.bsky.embed.recordWithMedia#view',
@@ -6505,6 +6597,7 @@ export const schemaDict = {
6505
6597
  type: 'union',
6506
6598
  refs: [
6507
6599
  'lex:app.bsky.embed.images',
6600
+ 'lex:app.bsky.embed.video',
6508
6601
  'lex:app.bsky.embed.external',
6509
6602
  'lex:app.bsky.embed.record',
6510
6603
  'lex:app.bsky.embed.recordWithMedia',
@@ -9049,6 +9142,138 @@ export const schemaDict = {
9049
9142
  },
9050
9143
  },
9051
9144
  },
9145
+ AppBskyVideoDefs: {
9146
+ lexicon: 1,
9147
+ id: 'app.bsky.video.defs',
9148
+ defs: {
9149
+ jobStatus: {
9150
+ type: 'object',
9151
+ required: ['jobId', 'did', 'state'],
9152
+ properties: {
9153
+ jobId: {
9154
+ type: 'string',
9155
+ },
9156
+ did: {
9157
+ type: 'string',
9158
+ format: 'did',
9159
+ },
9160
+ state: {
9161
+ type: 'string',
9162
+ description:
9163
+ 'The state of the video processing job. All values not listed as a known value indicate that the job is in process.',
9164
+ knownValues: ['JOB_STATE_COMPLETED', 'JOB_STATE_FAILED'],
9165
+ },
9166
+ progress: {
9167
+ type: 'integer',
9168
+ minimum: 0,
9169
+ maximum: 100,
9170
+ description: 'Progress within the current processing state.',
9171
+ },
9172
+ blob: {
9173
+ type: 'blob',
9174
+ },
9175
+ error: {
9176
+ type: 'string',
9177
+ },
9178
+ message: {
9179
+ type: 'string',
9180
+ },
9181
+ },
9182
+ },
9183
+ },
9184
+ },
9185
+ AppBskyVideoGetJobStatus: {
9186
+ lexicon: 1,
9187
+ id: 'app.bsky.video.getJobStatus',
9188
+ defs: {
9189
+ main: {
9190
+ type: 'query',
9191
+ description: 'Get status details for a video processing job.',
9192
+ parameters: {
9193
+ type: 'params',
9194
+ required: ['jobId'],
9195
+ properties: {
9196
+ jobId: {
9197
+ type: 'string',
9198
+ },
9199
+ },
9200
+ },
9201
+ output: {
9202
+ encoding: 'application/json',
9203
+ schema: {
9204
+ type: 'object',
9205
+ required: ['jobStatus'],
9206
+ properties: {
9207
+ jobStatus: {
9208
+ type: 'ref',
9209
+ ref: 'lex:app.bsky.video.defs#jobStatus',
9210
+ },
9211
+ },
9212
+ },
9213
+ },
9214
+ },
9215
+ },
9216
+ },
9217
+ AppBskyVideoGetUploadLimits: {
9218
+ lexicon: 1,
9219
+ id: 'app.bsky.video.getUploadLimits',
9220
+ defs: {
9221
+ main: {
9222
+ type: 'query',
9223
+ description: 'Get video upload limits for the authenticated user.',
9224
+ output: {
9225
+ encoding: 'application/json',
9226
+ schema: {
9227
+ type: 'object',
9228
+ required: ['canUpload'],
9229
+ properties: {
9230
+ canUpload: {
9231
+ type: 'boolean',
9232
+ },
9233
+ remainingDailyVideos: {
9234
+ type: 'integer',
9235
+ },
9236
+ remainingDailyBytes: {
9237
+ type: 'integer',
9238
+ },
9239
+ message: {
9240
+ type: 'string',
9241
+ },
9242
+ error: {
9243
+ type: 'string',
9244
+ },
9245
+ },
9246
+ },
9247
+ },
9248
+ },
9249
+ },
9250
+ },
9251
+ AppBskyVideoUploadVideo: {
9252
+ lexicon: 1,
9253
+ id: 'app.bsky.video.uploadVideo',
9254
+ defs: {
9255
+ main: {
9256
+ type: 'procedure',
9257
+ description: 'Upload a video to be processed then stored on the PDS.',
9258
+ input: {
9259
+ encoding: 'video/mp4',
9260
+ },
9261
+ output: {
9262
+ encoding: 'application/json',
9263
+ schema: {
9264
+ type: 'object',
9265
+ required: ['jobStatus'],
9266
+ properties: {
9267
+ jobStatus: {
9268
+ type: 'ref',
9269
+ ref: 'lex:app.bsky.video.defs#jobStatus',
9270
+ },
9271
+ },
9272
+ },
9273
+ },
9274
+ },
9275
+ },
9276
+ },
9052
9277
  ChatBskyActorDeclaration: {
9053
9278
  lexicon: 1,
9054
9279
  id: 'chat.bsky.actor.declaration',
@@ -11774,10 +11999,12 @@ export const ids = {
11774
11999
  AppBskyActorPutPreferences: 'app.bsky.actor.putPreferences',
11775
12000
  AppBskyActorSearchActors: 'app.bsky.actor.searchActors',
11776
12001
  AppBskyActorSearchActorsTypeahead: 'app.bsky.actor.searchActorsTypeahead',
12002
+ AppBskyEmbedDefs: 'app.bsky.embed.defs',
11777
12003
  AppBskyEmbedExternal: 'app.bsky.embed.external',
11778
12004
  AppBskyEmbedImages: 'app.bsky.embed.images',
11779
12005
  AppBskyEmbedRecord: 'app.bsky.embed.record',
11780
12006
  AppBskyEmbedRecordWithMedia: 'app.bsky.embed.recordWithMedia',
12007
+ AppBskyEmbedVideo: 'app.bsky.embed.video',
11781
12008
  AppBskyFeedDefs: 'app.bsky.feed.defs',
11782
12009
  AppBskyFeedDescribeFeedGenerator: 'app.bsky.feed.describeFeedGenerator',
11783
12010
  AppBskyFeedGenerator: 'app.bsky.feed.generator',
@@ -11849,6 +12076,10 @@ export const ids = {
11849
12076
  AppBskyUnspeccedSearchActorsSkeleton:
11850
12077
  'app.bsky.unspecced.searchActorsSkeleton',
11851
12078
  AppBskyUnspeccedSearchPostsSkeleton: 'app.bsky.unspecced.searchPostsSkeleton',
12079
+ AppBskyVideoDefs: 'app.bsky.video.defs',
12080
+ AppBskyVideoGetJobStatus: 'app.bsky.video.getJobStatus',
12081
+ AppBskyVideoGetUploadLimits: 'app.bsky.video.getUploadLimits',
12082
+ AppBskyVideoUploadVideo: 'app.bsky.video.uploadVideo',
11852
12083
  ChatBskyActorDeclaration: 'chat.bsky.actor.declaration',
11853
12084
  ChatBskyActorDefs: 'chat.bsky.actor.defs',
11854
12085
  ChatBskyActorDeleteAccount: 'chat.bsky.actor.deleteAccount',
@@ -0,0 +1,26 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
5
+ import { isObj, hasProp } from '../../../../util'
6
+ import { lexicons } from '../../../../lexicons'
7
+ import { CID } from 'multiformats/cid'
8
+
9
+ /** width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit. */
10
+ export interface AspectRatio {
11
+ width: number
12
+ height: number
13
+ [k: string]: unknown
14
+ }
15
+
16
+ export function isAspectRatio(v: unknown): v is AspectRatio {
17
+ return (
18
+ isObj(v) &&
19
+ hasProp(v, '$type') &&
20
+ v.$type === 'app.bsky.embed.defs#aspectRatio'
21
+ )
22
+ }
23
+
24
+ export function validateAspectRatio(v: unknown): ValidationResult {
25
+ return lexicons.validate('app.bsky.embed.defs#aspectRatio', v)
26
+ }
@@ -5,6 +5,7 @@ import { ValidationResult, BlobRef } from '@atproto/lexicon'
5
5
  import { isObj, hasProp } from '../../../../util'
6
6
  import { lexicons } from '../../../../lexicons'
7
7
  import { CID } from 'multiformats/cid'
8
+ import * as AppBskyEmbedDefs from './defs'
8
9
 
9
10
  export interface Main {
10
11
  images: Image[]
@@ -28,7 +29,7 @@ export interface Image {
28
29
  image: BlobRef
29
30
  /** Alt text description of the image, for accessibility. */
30
31
  alt: string
31
- aspectRatio?: AspectRatio
32
+ aspectRatio?: AppBskyEmbedDefs.AspectRatio
32
33
  [k: string]: unknown
33
34
  }
34
35
 
@@ -42,25 +43,6 @@ export function validateImage(v: unknown): ValidationResult {
42
43
  return lexicons.validate('app.bsky.embed.images#image', v)
43
44
  }
44
45
 
45
- /** width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit. */
46
- export interface AspectRatio {
47
- width: number
48
- height: number
49
- [k: string]: unknown
50
- }
51
-
52
- export function isAspectRatio(v: unknown): v is AspectRatio {
53
- return (
54
- isObj(v) &&
55
- hasProp(v, '$type') &&
56
- v.$type === 'app.bsky.embed.images#aspectRatio'
57
- )
58
- }
59
-
60
- export function validateAspectRatio(v: unknown): ValidationResult {
61
- return lexicons.validate('app.bsky.embed.images#aspectRatio', v)
62
- }
63
-
64
46
  export interface View {
65
47
  images: ViewImage[]
66
48
  [k: string]: unknown
@@ -83,7 +65,7 @@ export interface ViewImage {
83
65
  fullsize: string
84
66
  /** Alt text description of the image, for accessibility. */
85
67
  alt: string
86
- aspectRatio?: AspectRatio
68
+ aspectRatio?: AppBskyEmbedDefs.AspectRatio
87
69
  [k: string]: unknown
88
70
  }
89
71
 
@@ -12,6 +12,7 @@ import * as AppBskyLabelerDefs from '../labeler/defs'
12
12
  import * as AppBskyActorDefs from '../actor/defs'
13
13
  import * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs'
14
14
  import * as AppBskyEmbedImages from './images'
15
+ import * as AppBskyEmbedVideo from './video'
15
16
  import * as AppBskyEmbedExternal from './external'
16
17
  import * as AppBskyEmbedRecordWithMedia from './recordWithMedia'
17
18
 
@@ -68,6 +69,7 @@ export interface ViewRecord {
68
69
  likeCount?: number
69
70
  embeds?: (
70
71
  | AppBskyEmbedImages.View
72
+ | AppBskyEmbedVideo.View
71
73
  | AppBskyEmbedExternal.View
72
74
  | View
73
75
  | AppBskyEmbedRecordWithMedia.View
@@ -7,12 +7,14 @@ import { lexicons } from '../../../../lexicons'
7
7
  import { CID } from 'multiformats/cid'
8
8
  import * as AppBskyEmbedRecord from './record'
9
9
  import * as AppBskyEmbedImages from './images'
10
+ import * as AppBskyEmbedVideo from './video'
10
11
  import * as AppBskyEmbedExternal from './external'
11
12
 
12
13
  export interface Main {
13
14
  record: AppBskyEmbedRecord.Main
14
15
  media:
15
16
  | AppBskyEmbedImages.Main
17
+ | AppBskyEmbedVideo.Main
16
18
  | AppBskyEmbedExternal.Main
17
19
  | { $type: string; [k: string]: unknown }
18
20
  [k: string]: unknown
@@ -35,6 +37,7 @@ export interface View {
35
37
  record: AppBskyEmbedRecord.View
36
38
  media:
37
39
  | AppBskyEmbedImages.View
40
+ | AppBskyEmbedVideo.View
38
41
  | AppBskyEmbedExternal.View
39
42
  | { $type: string; [k: string]: unknown }
40
43
  [k: string]: unknown
@@ -0,0 +1,67 @@
1
+ /**
2
+ * GENERATED CODE - DO NOT MODIFY
3
+ */
4
+ import { ValidationResult, BlobRef } from '@atproto/lexicon'
5
+ import { isObj, hasProp } from '../../../../util'
6
+ import { lexicons } from '../../../../lexicons'
7
+ import { CID } from 'multiformats/cid'
8
+ import * as AppBskyEmbedDefs from './defs'
9
+
10
+ export interface Main {
11
+ video: BlobRef
12
+ captions?: Caption[]
13
+ /** Alt text description of the video, for accessibility. */
14
+ alt?: string
15
+ aspectRatio?: AppBskyEmbedDefs.AspectRatio
16
+ [k: string]: unknown
17
+ }
18
+
19
+ export function isMain(v: unknown): v is Main {
20
+ return (
21
+ isObj(v) &&
22
+ hasProp(v, '$type') &&
23
+ (v.$type === 'app.bsky.embed.video#main' ||
24
+ v.$type === 'app.bsky.embed.video')
25
+ )
26
+ }
27
+
28
+ export function validateMain(v: unknown): ValidationResult {
29
+ return lexicons.validate('app.bsky.embed.video#main', v)
30
+ }
31
+
32
+ export interface Caption {
33
+ lang: string
34
+ file: BlobRef
35
+ [k: string]: unknown
36
+ }
37
+
38
+ export function isCaption(v: unknown): v is Caption {
39
+ return (
40
+ isObj(v) &&
41
+ hasProp(v, '$type') &&
42
+ v.$type === 'app.bsky.embed.video#caption'
43
+ )
44
+ }
45
+
46
+ export function validateCaption(v: unknown): ValidationResult {
47
+ return lexicons.validate('app.bsky.embed.video#caption', v)
48
+ }
49
+
50
+ export interface View {
51
+ cid: string
52
+ playlist: string
53
+ thumbnail?: string
54
+ alt?: string
55
+ aspectRatio?: AppBskyEmbedDefs.AspectRatio
56
+ [k: string]: unknown
57
+ }
58
+
59
+ export function isView(v: unknown): v is View {
60
+ return (
61
+ isObj(v) && hasProp(v, '$type') && v.$type === 'app.bsky.embed.video#view'
62
+ )
63
+ }
64
+
65
+ export function validateView(v: unknown): ValidationResult {
66
+ return lexicons.validate('app.bsky.embed.video#view', v)
67
+ }