a tool for shared writing and social publishing
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

update lex-cli

+1478 -1206
+374 -280
lexicons/api/index.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { XrpcClient, FetchHandler, FetchHandlerOptions } from '@atproto/xrpc' 4 + import { 5 + XrpcClient, 6 + type FetchHandler, 7 + type FetchHandlerOptions, 8 + } from '@atproto/xrpc' 5 9 import { schemas } from './lexicons' 6 10 import { CID } from 'multiformats/cid' 7 - import { OmitKey, Un$Typed } from './util' 8 - import * as PubLeafletComment from './types/pub/leaflet/comment' 9 - import * as PubLeafletDocument from './types/pub/leaflet/document' 10 - import * as PubLeafletPublication from './types/pub/leaflet/publication' 11 + import { type OmitKey, type Un$Typed } from './util' 12 + import * as AppBskyActorProfile from './types/app/bsky/actor/profile' 13 + import * as ComAtprotoLabelDefs from './types/com/atproto/label/defs' 14 + import * as ComAtprotoRepoApplyWrites from './types/com/atproto/repo/applyWrites' 15 + import * as ComAtprotoRepoCreateRecord from './types/com/atproto/repo/createRecord' 16 + import * as ComAtprotoRepoDefs from './types/com/atproto/repo/defs' 17 + import * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repo/deleteRecord' 18 + import * as ComAtprotoRepoDescribeRepo from './types/com/atproto/repo/describeRepo' 19 + import * as ComAtprotoRepoGetRecord from './types/com/atproto/repo/getRecord' 20 + import * as ComAtprotoRepoImportRepo from './types/com/atproto/repo/importRepo' 21 + import * as ComAtprotoRepoListMissingBlobs from './types/com/atproto/repo/listMissingBlobs' 22 + import * as ComAtprotoRepoListRecords from './types/com/atproto/repo/listRecords' 23 + import * as ComAtprotoRepoPutRecord from './types/com/atproto/repo/putRecord' 24 + import * as ComAtprotoRepoStrongRef from './types/com/atproto/repo/strongRef' 25 + import * as ComAtprotoRepoUploadBlob from './types/com/atproto/repo/uploadBlob' 11 26 import * as PubLeafletBlocksBlockquote from './types/pub/leaflet/blocks/blockquote' 12 27 import * as PubLeafletBlocksBskyPost from './types/pub/leaflet/blocks/bskyPost' 13 28 import * as PubLeafletBlocksCode from './types/pub/leaflet/blocks/code' ··· 19 34 import * as PubLeafletBlocksText from './types/pub/leaflet/blocks/text' 20 35 import * as PubLeafletBlocksUnorderedList from './types/pub/leaflet/blocks/unorderedList' 21 36 import * as PubLeafletBlocksWebsite from './types/pub/leaflet/blocks/website' 37 + import * as PubLeafletComment from './types/pub/leaflet/comment' 38 + import * as PubLeafletDocument from './types/pub/leaflet/document' 22 39 import * as PubLeafletGraphSubscription from './types/pub/leaflet/graph/subscription' 23 40 import * as PubLeafletPagesLinearDocument from './types/pub/leaflet/pages/linearDocument' 41 + import * as PubLeafletPublication from './types/pub/leaflet/publication' 24 42 import * as PubLeafletRichtextFacet from './types/pub/leaflet/richtext/facet' 25 43 import * as PubLeafletThemeBackgroundImage from './types/pub/leaflet/theme/backgroundImage' 26 44 import * as PubLeafletThemeColor from './types/pub/leaflet/theme/color' 27 - import * as ComAtprotoLabelDefs from './types/com/atproto/label/defs' 28 - import * as ComAtprotoRepoApplyWrites from './types/com/atproto/repo/applyWrites' 29 - import * as ComAtprotoRepoCreateRecord from './types/com/atproto/repo/createRecord' 30 - import * as ComAtprotoRepoDefs from './types/com/atproto/repo/defs' 31 - import * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repo/deleteRecord' 32 - import * as ComAtprotoRepoDescribeRepo from './types/com/atproto/repo/describeRepo' 33 - import * as ComAtprotoRepoGetRecord from './types/com/atproto/repo/getRecord' 34 - import * as ComAtprotoRepoImportRepo from './types/com/atproto/repo/importRepo' 35 - import * as ComAtprotoRepoListMissingBlobs from './types/com/atproto/repo/listMissingBlobs' 36 - import * as ComAtprotoRepoListRecords from './types/com/atproto/repo/listRecords' 37 - import * as ComAtprotoRepoPutRecord from './types/com/atproto/repo/putRecord' 38 - import * as ComAtprotoRepoStrongRef from './types/com/atproto/repo/strongRef' 39 - import * as ComAtprotoRepoUploadBlob from './types/com/atproto/repo/uploadBlob' 40 - import * as AppBskyActorProfile from './types/app/bsky/actor/profile' 41 45 42 - export * as PubLeafletComment from './types/pub/leaflet/comment' 43 - export * as PubLeafletDocument from './types/pub/leaflet/document' 44 - export * as PubLeafletPublication from './types/pub/leaflet/publication' 46 + export * as AppBskyActorProfile from './types/app/bsky/actor/profile' 47 + export * as ComAtprotoLabelDefs from './types/com/atproto/label/defs' 48 + export * as ComAtprotoRepoApplyWrites from './types/com/atproto/repo/applyWrites' 49 + export * as ComAtprotoRepoCreateRecord from './types/com/atproto/repo/createRecord' 50 + export * as ComAtprotoRepoDefs from './types/com/atproto/repo/defs' 51 + export * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repo/deleteRecord' 52 + export * as ComAtprotoRepoDescribeRepo from './types/com/atproto/repo/describeRepo' 53 + export * as ComAtprotoRepoGetRecord from './types/com/atproto/repo/getRecord' 54 + export * as ComAtprotoRepoImportRepo from './types/com/atproto/repo/importRepo' 55 + export * as ComAtprotoRepoListMissingBlobs from './types/com/atproto/repo/listMissingBlobs' 56 + export * as ComAtprotoRepoListRecords from './types/com/atproto/repo/listRecords' 57 + export * as ComAtprotoRepoPutRecord from './types/com/atproto/repo/putRecord' 58 + export * as ComAtprotoRepoStrongRef from './types/com/atproto/repo/strongRef' 59 + export * as ComAtprotoRepoUploadBlob from './types/com/atproto/repo/uploadBlob' 45 60 export * as PubLeafletBlocksBlockquote from './types/pub/leaflet/blocks/blockquote' 46 61 export * as PubLeafletBlocksBskyPost from './types/pub/leaflet/blocks/bskyPost' 47 62 export * as PubLeafletBlocksCode from './types/pub/leaflet/blocks/code' ··· 53 68 export * as PubLeafletBlocksText from './types/pub/leaflet/blocks/text' 54 69 export * as PubLeafletBlocksUnorderedList from './types/pub/leaflet/blocks/unorderedList' 55 70 export * as PubLeafletBlocksWebsite from './types/pub/leaflet/blocks/website' 71 + export * as PubLeafletComment from './types/pub/leaflet/comment' 72 + export * as PubLeafletDocument from './types/pub/leaflet/document' 56 73 export * as PubLeafletGraphSubscription from './types/pub/leaflet/graph/subscription' 57 74 export * as PubLeafletPagesLinearDocument from './types/pub/leaflet/pages/linearDocument' 75 + export * as PubLeafletPublication from './types/pub/leaflet/publication' 58 76 export * as PubLeafletRichtextFacet from './types/pub/leaflet/richtext/facet' 59 77 export * as PubLeafletThemeBackgroundImage from './types/pub/leaflet/theme/backgroundImage' 60 78 export * as PubLeafletThemeColor from './types/pub/leaflet/theme/color' 61 - export * as ComAtprotoLabelDefs from './types/com/atproto/label/defs' 62 - export * as ComAtprotoRepoApplyWrites from './types/com/atproto/repo/applyWrites' 63 - export * as ComAtprotoRepoCreateRecord from './types/com/atproto/repo/createRecord' 64 - export * as ComAtprotoRepoDefs from './types/com/atproto/repo/defs' 65 - export * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repo/deleteRecord' 66 - export * as ComAtprotoRepoDescribeRepo from './types/com/atproto/repo/describeRepo' 67 - export * as ComAtprotoRepoGetRecord from './types/com/atproto/repo/getRecord' 68 - export * as ComAtprotoRepoImportRepo from './types/com/atproto/repo/importRepo' 69 - export * as ComAtprotoRepoListMissingBlobs from './types/com/atproto/repo/listMissingBlobs' 70 - export * as ComAtprotoRepoListRecords from './types/com/atproto/repo/listRecords' 71 - export * as ComAtprotoRepoPutRecord from './types/com/atproto/repo/putRecord' 72 - export * as ComAtprotoRepoStrongRef from './types/com/atproto/repo/strongRef' 73 - export * as ComAtprotoRepoUploadBlob from './types/com/atproto/repo/uploadBlob' 74 - export * as AppBskyActorProfile from './types/app/bsky/actor/profile' 75 79 76 80 export const PUB_LEAFLET_PAGES = { 77 81 LinearDocumentTextAlignLeft: 'pub.leaflet.pages.linearDocument#textAlignLeft', ··· 82 86 } 83 87 84 88 export class AtpBaseClient extends XrpcClient { 85 - pub: PubNS 89 + app: AppNS 86 90 com: ComNS 87 - app: AppNS 91 + pub: PubNS 88 92 89 93 constructor(options: FetchHandler | FetchHandlerOptions) { 90 94 super(options, schemas) 91 - this.pub = new PubNS(this) 92 - this.com = new ComNS(this) 93 95 this.app = new AppNS(this) 96 + this.com = new ComNS(this) 97 + this.pub = new PubNS(this) 94 98 } 95 99 96 100 /** @deprecated use `this` instead */ ··· 99 103 } 100 104 } 101 105 106 + export class AppNS { 107 + _client: XrpcClient 108 + bsky: AppBskyNS 109 + 110 + constructor(client: XrpcClient) { 111 + this._client = client 112 + this.bsky = new AppBskyNS(client) 113 + } 114 + } 115 + 116 + export class AppBskyNS { 117 + _client: XrpcClient 118 + actor: AppBskyActorNS 119 + 120 + constructor(client: XrpcClient) { 121 + this._client = client 122 + this.actor = new AppBskyActorNS(client) 123 + } 124 + } 125 + 126 + export class AppBskyActorNS { 127 + _client: XrpcClient 128 + profile: AppBskyActorProfileRecord 129 + 130 + constructor(client: XrpcClient) { 131 + this._client = client 132 + this.profile = new AppBskyActorProfileRecord(client) 133 + } 134 + } 135 + 136 + export class AppBskyActorProfileRecord { 137 + _client: XrpcClient 138 + 139 + constructor(client: XrpcClient) { 140 + this._client = client 141 + } 142 + 143 + async list( 144 + params: OmitKey<ComAtprotoRepoListRecords.QueryParams, 'collection'>, 145 + ): Promise<{ 146 + cursor?: string 147 + records: { uri: string; value: AppBskyActorProfile.Record }[] 148 + }> { 149 + const res = await this._client.call('com.atproto.repo.listRecords', { 150 + collection: 'app.bsky.actor.profile', 151 + ...params, 152 + }) 153 + return res.data 154 + } 155 + 156 + async get( 157 + params: OmitKey<ComAtprotoRepoGetRecord.QueryParams, 'collection'>, 158 + ): Promise<{ uri: string; cid: string; value: AppBskyActorProfile.Record }> { 159 + const res = await this._client.call('com.atproto.repo.getRecord', { 160 + collection: 'app.bsky.actor.profile', 161 + ...params, 162 + }) 163 + return res.data 164 + } 165 + 166 + async create( 167 + params: OmitKey< 168 + ComAtprotoRepoCreateRecord.InputSchema, 169 + 'collection' | 'record' 170 + >, 171 + record: Un$Typed<AppBskyActorProfile.Record>, 172 + headers?: Record<string, string>, 173 + ): Promise<{ uri: string; cid: string }> { 174 + const collection = 'app.bsky.actor.profile' 175 + const res = await this._client.call( 176 + 'com.atproto.repo.createRecord', 177 + undefined, 178 + { 179 + collection, 180 + rkey: 'self', 181 + ...params, 182 + record: { ...record, $type: collection }, 183 + }, 184 + { encoding: 'application/json', headers }, 185 + ) 186 + return res.data 187 + } 188 + 189 + async put( 190 + params: OmitKey< 191 + ComAtprotoRepoPutRecord.InputSchema, 192 + 'collection' | 'record' 193 + >, 194 + record: Un$Typed<AppBskyActorProfile.Record>, 195 + headers?: Record<string, string>, 196 + ): Promise<{ uri: string; cid: string }> { 197 + const collection = 'app.bsky.actor.profile' 198 + const res = await this._client.call( 199 + 'com.atproto.repo.putRecord', 200 + undefined, 201 + { collection, ...params, record: { ...record, $type: collection } }, 202 + { encoding: 'application/json', headers }, 203 + ) 204 + return res.data 205 + } 206 + 207 + async delete( 208 + params: OmitKey<ComAtprotoRepoDeleteRecord.InputSchema, 'collection'>, 209 + headers?: Record<string, string>, 210 + ): Promise<void> { 211 + await this._client.call( 212 + 'com.atproto.repo.deleteRecord', 213 + undefined, 214 + { collection: 'app.bsky.actor.profile', ...params }, 215 + { headers }, 216 + ) 217 + } 218 + } 219 + 220 + export class ComNS { 221 + _client: XrpcClient 222 + atproto: ComAtprotoNS 223 + 224 + constructor(client: XrpcClient) { 225 + this._client = client 226 + this.atproto = new ComAtprotoNS(client) 227 + } 228 + } 229 + 230 + export class ComAtprotoNS { 231 + _client: XrpcClient 232 + repo: ComAtprotoRepoNS 233 + 234 + constructor(client: XrpcClient) { 235 + this._client = client 236 + this.repo = new ComAtprotoRepoNS(client) 237 + } 238 + } 239 + 240 + export class ComAtprotoRepoNS { 241 + _client: XrpcClient 242 + 243 + constructor(client: XrpcClient) { 244 + this._client = client 245 + } 246 + 247 + applyWrites( 248 + data?: ComAtprotoRepoApplyWrites.InputSchema, 249 + opts?: ComAtprotoRepoApplyWrites.CallOptions, 250 + ): Promise<ComAtprotoRepoApplyWrites.Response> { 251 + return this._client 252 + .call('com.atproto.repo.applyWrites', opts?.qp, data, opts) 253 + .catch((e) => { 254 + throw ComAtprotoRepoApplyWrites.toKnownErr(e) 255 + }) 256 + } 257 + 258 + createRecord( 259 + data?: ComAtprotoRepoCreateRecord.InputSchema, 260 + opts?: ComAtprotoRepoCreateRecord.CallOptions, 261 + ): Promise<ComAtprotoRepoCreateRecord.Response> { 262 + return this._client 263 + .call('com.atproto.repo.createRecord', opts?.qp, data, opts) 264 + .catch((e) => { 265 + throw ComAtprotoRepoCreateRecord.toKnownErr(e) 266 + }) 267 + } 268 + 269 + deleteRecord( 270 + data?: ComAtprotoRepoDeleteRecord.InputSchema, 271 + opts?: ComAtprotoRepoDeleteRecord.CallOptions, 272 + ): Promise<ComAtprotoRepoDeleteRecord.Response> { 273 + return this._client 274 + .call('com.atproto.repo.deleteRecord', opts?.qp, data, opts) 275 + .catch((e) => { 276 + throw ComAtprotoRepoDeleteRecord.toKnownErr(e) 277 + }) 278 + } 279 + 280 + describeRepo( 281 + params?: ComAtprotoRepoDescribeRepo.QueryParams, 282 + opts?: ComAtprotoRepoDescribeRepo.CallOptions, 283 + ): Promise<ComAtprotoRepoDescribeRepo.Response> { 284 + return this._client.call( 285 + 'com.atproto.repo.describeRepo', 286 + params, 287 + undefined, 288 + opts, 289 + ) 290 + } 291 + 292 + getRecord( 293 + params?: ComAtprotoRepoGetRecord.QueryParams, 294 + opts?: ComAtprotoRepoGetRecord.CallOptions, 295 + ): Promise<ComAtprotoRepoGetRecord.Response> { 296 + return this._client 297 + .call('com.atproto.repo.getRecord', params, undefined, opts) 298 + .catch((e) => { 299 + throw ComAtprotoRepoGetRecord.toKnownErr(e) 300 + }) 301 + } 302 + 303 + importRepo( 304 + data?: ComAtprotoRepoImportRepo.InputSchema, 305 + opts?: ComAtprotoRepoImportRepo.CallOptions, 306 + ): Promise<ComAtprotoRepoImportRepo.Response> { 307 + return this._client.call( 308 + 'com.atproto.repo.importRepo', 309 + opts?.qp, 310 + data, 311 + opts, 312 + ) 313 + } 314 + 315 + listMissingBlobs( 316 + params?: ComAtprotoRepoListMissingBlobs.QueryParams, 317 + opts?: ComAtprotoRepoListMissingBlobs.CallOptions, 318 + ): Promise<ComAtprotoRepoListMissingBlobs.Response> { 319 + return this._client.call( 320 + 'com.atproto.repo.listMissingBlobs', 321 + params, 322 + undefined, 323 + opts, 324 + ) 325 + } 326 + 327 + listRecords( 328 + params?: ComAtprotoRepoListRecords.QueryParams, 329 + opts?: ComAtprotoRepoListRecords.CallOptions, 330 + ): Promise<ComAtprotoRepoListRecords.Response> { 331 + return this._client.call( 332 + 'com.atproto.repo.listRecords', 333 + params, 334 + undefined, 335 + opts, 336 + ) 337 + } 338 + 339 + putRecord( 340 + data?: ComAtprotoRepoPutRecord.InputSchema, 341 + opts?: ComAtprotoRepoPutRecord.CallOptions, 342 + ): Promise<ComAtprotoRepoPutRecord.Response> { 343 + return this._client 344 + .call('com.atproto.repo.putRecord', opts?.qp, data, opts) 345 + .catch((e) => { 346 + throw ComAtprotoRepoPutRecord.toKnownErr(e) 347 + }) 348 + } 349 + 350 + uploadBlob( 351 + data?: ComAtprotoRepoUploadBlob.InputSchema, 352 + opts?: ComAtprotoRepoUploadBlob.CallOptions, 353 + ): Promise<ComAtprotoRepoUploadBlob.Response> { 354 + return this._client.call( 355 + 'com.atproto.repo.uploadBlob', 356 + opts?.qp, 357 + data, 358 + opts, 359 + ) 360 + } 361 + } 362 + 102 363 export class PubNS { 103 364 _client: XrpcClient 104 365 leaflet: PubLeafletNS ··· 111 372 112 373 export class PubLeafletNS { 113 374 _client: XrpcClient 114 - comment: CommentRecord 115 - document: DocumentRecord 116 - publication: PublicationRecord 375 + comment: PubLeafletCommentRecord 376 + document: PubLeafletDocumentRecord 377 + publication: PubLeafletPublicationRecord 117 378 blocks: PubLeafletBlocksNS 118 379 graph: PubLeafletGraphNS 119 380 pages: PubLeafletPagesNS ··· 127 388 this.pages = new PubLeafletPagesNS(client) 128 389 this.richtext = new PubLeafletRichtextNS(client) 129 390 this.theme = new PubLeafletThemeNS(client) 130 - this.comment = new CommentRecord(client) 131 - this.document = new DocumentRecord(client) 132 - this.publication = new PublicationRecord(client) 391 + this.comment = new PubLeafletCommentRecord(client) 392 + this.document = new PubLeafletDocumentRecord(client) 393 + this.publication = new PubLeafletPublicationRecord(client) 133 394 } 134 395 } 135 396 ··· 143 404 144 405 export class PubLeafletGraphNS { 145 406 _client: XrpcClient 146 - subscription: SubscriptionRecord 407 + subscription: PubLeafletGraphSubscriptionRecord 147 408 148 409 constructor(client: XrpcClient) { 149 410 this._client = client 150 - this.subscription = new SubscriptionRecord(client) 411 + this.subscription = new PubLeafletGraphSubscriptionRecord(client) 151 412 } 152 413 } 153 414 154 - export class SubscriptionRecord { 415 + export class PubLeafletGraphSubscriptionRecord { 155 416 _client: XrpcClient 156 417 157 418 constructor(client: XrpcClient) { ··· 203 464 return res.data 204 465 } 205 466 467 + async put( 468 + params: OmitKey< 469 + ComAtprotoRepoPutRecord.InputSchema, 470 + 'collection' | 'record' 471 + >, 472 + record: Un$Typed<PubLeafletGraphSubscription.Record>, 473 + headers?: Record<string, string>, 474 + ): Promise<{ uri: string; cid: string }> { 475 + const collection = 'pub.leaflet.graph.subscription' 476 + const res = await this._client.call( 477 + 'com.atproto.repo.putRecord', 478 + undefined, 479 + { collection, ...params, record: { ...record, $type: collection } }, 480 + { encoding: 'application/json', headers }, 481 + ) 482 + return res.data 483 + } 484 + 206 485 async delete( 207 486 params: OmitKey<ComAtprotoRepoDeleteRecord.InputSchema, 'collection'>, 208 487 headers?: Record<string, string>, ··· 240 519 } 241 520 } 242 521 243 - export class CommentRecord { 522 + export class PubLeafletCommentRecord { 244 523 _client: XrpcClient 245 524 246 525 constructor(client: XrpcClient) { ··· 288 567 return res.data 289 568 } 290 569 570 + async put( 571 + params: OmitKey< 572 + ComAtprotoRepoPutRecord.InputSchema, 573 + 'collection' | 'record' 574 + >, 575 + record: Un$Typed<PubLeafletComment.Record>, 576 + headers?: Record<string, string>, 577 + ): Promise<{ uri: string; cid: string }> { 578 + const collection = 'pub.leaflet.comment' 579 + const res = await this._client.call( 580 + 'com.atproto.repo.putRecord', 581 + undefined, 582 + { collection, ...params, record: { ...record, $type: collection } }, 583 + { encoding: 'application/json', headers }, 584 + ) 585 + return res.data 586 + } 587 + 291 588 async delete( 292 589 params: OmitKey<ComAtprotoRepoDeleteRecord.InputSchema, 'collection'>, 293 590 headers?: Record<string, string>, ··· 301 598 } 302 599 } 303 600 304 - export class DocumentRecord { 601 + export class PubLeafletDocumentRecord { 305 602 _client: XrpcClient 306 603 307 604 constructor(client: XrpcClient) { ··· 349 646 return res.data 350 647 } 351 648 649 + async put( 650 + params: OmitKey< 651 + ComAtprotoRepoPutRecord.InputSchema, 652 + 'collection' | 'record' 653 + >, 654 + record: Un$Typed<PubLeafletDocument.Record>, 655 + headers?: Record<string, string>, 656 + ): Promise<{ uri: string; cid: string }> { 657 + const collection = 'pub.leaflet.document' 658 + const res = await this._client.call( 659 + 'com.atproto.repo.putRecord', 660 + undefined, 661 + { collection, ...params, record: { ...record, $type: collection } }, 662 + { encoding: 'application/json', headers }, 663 + ) 664 + return res.data 665 + } 666 + 352 667 async delete( 353 668 params: OmitKey<ComAtprotoRepoDeleteRecord.InputSchema, 'collection'>, 354 669 headers?: Record<string, string>, ··· 362 677 } 363 678 } 364 679 365 - export class PublicationRecord { 680 + export class PubLeafletPublicationRecord { 366 681 _client: XrpcClient 367 682 368 683 constructor(client: XrpcClient) { ··· 414 729 return res.data 415 730 } 416 731 417 - async delete( 418 - params: OmitKey<ComAtprotoRepoDeleteRecord.InputSchema, 'collection'>, 419 - headers?: Record<string, string>, 420 - ): Promise<void> { 421 - await this._client.call( 422 - 'com.atproto.repo.deleteRecord', 423 - undefined, 424 - { collection: 'pub.leaflet.publication', ...params }, 425 - { headers }, 426 - ) 427 - } 428 - } 429 - 430 - export class ComNS { 431 - _client: XrpcClient 432 - atproto: ComAtprotoNS 433 - 434 - constructor(client: XrpcClient) { 435 - this._client = client 436 - this.atproto = new ComAtprotoNS(client) 437 - } 438 - } 439 - 440 - export class ComAtprotoNS { 441 - _client: XrpcClient 442 - repo: ComAtprotoRepoNS 443 - 444 - constructor(client: XrpcClient) { 445 - this._client = client 446 - this.repo = new ComAtprotoRepoNS(client) 447 - } 448 - } 449 - 450 - export class ComAtprotoRepoNS { 451 - _client: XrpcClient 452 - 453 - constructor(client: XrpcClient) { 454 - this._client = client 455 - } 456 - 457 - applyWrites( 458 - data?: ComAtprotoRepoApplyWrites.InputSchema, 459 - opts?: ComAtprotoRepoApplyWrites.CallOptions, 460 - ): Promise<ComAtprotoRepoApplyWrites.Response> { 461 - return this._client 462 - .call('com.atproto.repo.applyWrites', opts?.qp, data, opts) 463 - .catch((e) => { 464 - throw ComAtprotoRepoApplyWrites.toKnownErr(e) 465 - }) 466 - } 467 - 468 - createRecord( 469 - data?: ComAtprotoRepoCreateRecord.InputSchema, 470 - opts?: ComAtprotoRepoCreateRecord.CallOptions, 471 - ): Promise<ComAtprotoRepoCreateRecord.Response> { 472 - return this._client 473 - .call('com.atproto.repo.createRecord', opts?.qp, data, opts) 474 - .catch((e) => { 475 - throw ComAtprotoRepoCreateRecord.toKnownErr(e) 476 - }) 477 - } 478 - 479 - deleteRecord( 480 - data?: ComAtprotoRepoDeleteRecord.InputSchema, 481 - opts?: ComAtprotoRepoDeleteRecord.CallOptions, 482 - ): Promise<ComAtprotoRepoDeleteRecord.Response> { 483 - return this._client 484 - .call('com.atproto.repo.deleteRecord', opts?.qp, data, opts) 485 - .catch((e) => { 486 - throw ComAtprotoRepoDeleteRecord.toKnownErr(e) 487 - }) 488 - } 489 - 490 - describeRepo( 491 - params?: ComAtprotoRepoDescribeRepo.QueryParams, 492 - opts?: ComAtprotoRepoDescribeRepo.CallOptions, 493 - ): Promise<ComAtprotoRepoDescribeRepo.Response> { 494 - return this._client.call( 495 - 'com.atproto.repo.describeRepo', 496 - params, 497 - undefined, 498 - opts, 499 - ) 500 - } 501 - 502 - getRecord( 503 - params?: ComAtprotoRepoGetRecord.QueryParams, 504 - opts?: ComAtprotoRepoGetRecord.CallOptions, 505 - ): Promise<ComAtprotoRepoGetRecord.Response> { 506 - return this._client 507 - .call('com.atproto.repo.getRecord', params, undefined, opts) 508 - .catch((e) => { 509 - throw ComAtprotoRepoGetRecord.toKnownErr(e) 510 - }) 511 - } 512 - 513 - importRepo( 514 - data?: ComAtprotoRepoImportRepo.InputSchema, 515 - opts?: ComAtprotoRepoImportRepo.CallOptions, 516 - ): Promise<ComAtprotoRepoImportRepo.Response> { 517 - return this._client.call( 518 - 'com.atproto.repo.importRepo', 519 - opts?.qp, 520 - data, 521 - opts, 522 - ) 523 - } 524 - 525 - listMissingBlobs( 526 - params?: ComAtprotoRepoListMissingBlobs.QueryParams, 527 - opts?: ComAtprotoRepoListMissingBlobs.CallOptions, 528 - ): Promise<ComAtprotoRepoListMissingBlobs.Response> { 529 - return this._client.call( 530 - 'com.atproto.repo.listMissingBlobs', 531 - params, 532 - undefined, 533 - opts, 534 - ) 535 - } 536 - 537 - listRecords( 538 - params?: ComAtprotoRepoListRecords.QueryParams, 539 - opts?: ComAtprotoRepoListRecords.CallOptions, 540 - ): Promise<ComAtprotoRepoListRecords.Response> { 541 - return this._client.call( 542 - 'com.atproto.repo.listRecords', 543 - params, 544 - undefined, 545 - opts, 546 - ) 547 - } 548 - 549 - putRecord( 550 - data?: ComAtprotoRepoPutRecord.InputSchema, 551 - opts?: ComAtprotoRepoPutRecord.CallOptions, 552 - ): Promise<ComAtprotoRepoPutRecord.Response> { 553 - return this._client 554 - .call('com.atproto.repo.putRecord', opts?.qp, data, opts) 555 - .catch((e) => { 556 - throw ComAtprotoRepoPutRecord.toKnownErr(e) 557 - }) 558 - } 559 - 560 - uploadBlob( 561 - data?: ComAtprotoRepoUploadBlob.InputSchema, 562 - opts?: ComAtprotoRepoUploadBlob.CallOptions, 563 - ): Promise<ComAtprotoRepoUploadBlob.Response> { 564 - return this._client.call( 565 - 'com.atproto.repo.uploadBlob', 566 - opts?.qp, 567 - data, 568 - opts, 569 - ) 570 - } 571 - } 572 - 573 - export class AppNS { 574 - _client: XrpcClient 575 - bsky: AppBskyNS 576 - 577 - constructor(client: XrpcClient) { 578 - this._client = client 579 - this.bsky = new AppBskyNS(client) 580 - } 581 - } 582 - 583 - export class AppBskyNS { 584 - _client: XrpcClient 585 - actor: AppBskyActorNS 586 - 587 - constructor(client: XrpcClient) { 588 - this._client = client 589 - this.actor = new AppBskyActorNS(client) 590 - } 591 - } 592 - 593 - export class AppBskyActorNS { 594 - _client: XrpcClient 595 - profile: ProfileRecord 596 - 597 - constructor(client: XrpcClient) { 598 - this._client = client 599 - this.profile = new ProfileRecord(client) 600 - } 601 - } 602 - 603 - export class ProfileRecord { 604 - _client: XrpcClient 605 - 606 - constructor(client: XrpcClient) { 607 - this._client = client 608 - } 609 - 610 - async list( 611 - params: OmitKey<ComAtprotoRepoListRecords.QueryParams, 'collection'>, 612 - ): Promise<{ 613 - cursor?: string 614 - records: { uri: string; value: AppBskyActorProfile.Record }[] 615 - }> { 616 - const res = await this._client.call('com.atproto.repo.listRecords', { 617 - collection: 'app.bsky.actor.profile', 618 - ...params, 619 - }) 620 - return res.data 621 - } 622 - 623 - async get( 624 - params: OmitKey<ComAtprotoRepoGetRecord.QueryParams, 'collection'>, 625 - ): Promise<{ uri: string; cid: string; value: AppBskyActorProfile.Record }> { 626 - const res = await this._client.call('com.atproto.repo.getRecord', { 627 - collection: 'app.bsky.actor.profile', 628 - ...params, 629 - }) 630 - return res.data 631 - } 632 - 633 - async create( 732 + async put( 634 733 params: OmitKey< 635 - ComAtprotoRepoCreateRecord.InputSchema, 734 + ComAtprotoRepoPutRecord.InputSchema, 636 735 'collection' | 'record' 637 736 >, 638 - record: Un$Typed<AppBskyActorProfile.Record>, 737 + record: Un$Typed<PubLeafletPublication.Record>, 639 738 headers?: Record<string, string>, 640 739 ): Promise<{ uri: string; cid: string }> { 641 - const collection = 'app.bsky.actor.profile' 740 + const collection = 'pub.leaflet.publication' 642 741 const res = await this._client.call( 643 - 'com.atproto.repo.createRecord', 742 + 'com.atproto.repo.putRecord', 644 743 undefined, 645 - { 646 - collection, 647 - rkey: 'self', 648 - ...params, 649 - record: { ...record, $type: collection }, 650 - }, 744 + { collection, ...params, record: { ...record, $type: collection } }, 651 745 { encoding: 'application/json', headers }, 652 746 ) 653 747 return res.data ··· 660 754 await this._client.call( 661 755 'com.atproto.repo.deleteRecord', 662 756 undefined, 663 - { collection: 'app.bsky.actor.profile', ...params }, 757 + { collection: 'pub.leaflet.publication', ...params }, 664 758 { headers }, 665 759 ) 666 760 }
+800 -801
lexicons/api/lexicons.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { 5 - LexiconDoc, 5 + type LexiconDoc, 6 6 Lexicons, 7 7 ValidationError, 8 - ValidationResult, 8 + type ValidationResult, 9 9 } from '@atproto/lexicon' 10 - import { $Typed, is$typed, maybe$typed } from './util' 10 + import { type $Typed, is$typed, maybe$typed } from './util' 11 11 12 12 export const schemaDict = { 13 - PubLeafletComment: { 13 + AppBskyActorProfile: { 14 14 lexicon: 1, 15 - id: 'pub.leaflet.comment', 16 - revision: 1, 17 - description: 'A lexicon for comments on documents', 15 + id: 'app.bsky.actor.profile', 18 16 defs: { 19 17 main: { 20 18 type: 'record', 21 - key: 'tid', 22 - description: 'Record containing a comment', 19 + description: 'A declaration of a Bluesky account profile.', 20 + key: 'literal:self', 23 21 record: { 24 22 type: 'object', 25 - required: ['subject', 'plaintext', 'createdAt'], 26 23 properties: { 27 - subject: { 28 - type: 'string', 29 - format: 'at-uri', 30 - }, 31 - createdAt: { 32 - type: 'string', 33 - format: 'datetime', 34 - }, 35 - reply: { 36 - type: 'ref', 37 - ref: 'lex:pub.leaflet.comment#replyRef', 38 - }, 39 - plaintext: { 24 + displayName: { 40 25 type: 'string', 41 - }, 42 - facets: { 43 - type: 'array', 44 - items: { 45 - type: 'ref', 46 - ref: 'lex:pub.leaflet.richtext.facet', 47 - }, 48 - }, 49 - attachment: { 50 - type: 'union', 51 - refs: ['lex:pub.leaflet.comment#linearDocumentQuote'], 52 - }, 53 - }, 54 - }, 55 - }, 56 - linearDocumentQuote: { 57 - type: 'object', 58 - required: ['document', 'quote'], 59 - properties: { 60 - document: { 61 - type: 'string', 62 - format: 'at-uri', 63 - }, 64 - quote: { 65 - type: 'ref', 66 - ref: 'lex:pub.leaflet.pages.linearDocument#quote', 67 - }, 68 - }, 69 - }, 70 - replyRef: { 71 - type: 'object', 72 - required: ['parent'], 73 - properties: { 74 - parent: { 75 - type: 'string', 76 - format: 'at-uri', 77 - }, 78 - }, 79 - }, 80 - }, 81 - }, 82 - PubLeafletDocument: { 83 - lexicon: 1, 84 - id: 'pub.leaflet.document', 85 - revision: 1, 86 - description: 'A lexicon for long form rich media documents', 87 - defs: { 88 - main: { 89 - type: 'record', 90 - key: 'tid', 91 - description: 'Record containing a document', 92 - record: { 93 - type: 'object', 94 - required: ['pages', 'author', 'title', 'publication'], 95 - properties: { 96 - title: { 97 - type: 'string', 98 - maxLength: 1280, 99 - maxGraphemes: 128, 100 - }, 101 - postRef: { 102 - type: 'ref', 103 - ref: 'lex:com.atproto.repo.strongRef', 26 + maxGraphemes: 64, 27 + maxLength: 640, 104 28 }, 105 29 description: { 106 30 type: 'string', 107 - maxLength: 3000, 108 - maxGraphemes: 300, 31 + description: 'Free-form profile description text.', 32 + maxGraphemes: 256, 33 + maxLength: 2560, 109 34 }, 110 - publishedAt: { 111 - type: 'string', 112 - format: 'datetime', 113 - }, 114 - publication: { 115 - type: 'string', 116 - format: 'at-uri', 117 - }, 118 - author: { 119 - type: 'string', 120 - format: 'at-identifier', 121 - }, 122 - pages: { 123 - type: 'array', 124 - items: { 125 - type: 'union', 126 - refs: ['lex:pub.leaflet.pages.linearDocument'], 127 - }, 128 - }, 129 - }, 130 - }, 131 - }, 132 - }, 133 - }, 134 - PubLeafletPublication: { 135 - lexicon: 1, 136 - id: 'pub.leaflet.publication', 137 - defs: { 138 - main: { 139 - type: 'record', 140 - key: 'tid', 141 - description: 'Record declaring a publication', 142 - record: { 143 - type: 'object', 144 - required: ['name'], 145 - properties: { 146 - name: { 147 - type: 'string', 148 - maxLength: 2000, 149 - }, 150 - base_path: { 151 - type: 'string', 152 - format: 'uri', 153 - }, 154 - description: { 155 - type: 'string', 156 - maxLength: 2000, 35 + avatar: { 36 + type: 'blob', 37 + description: 38 + "Small image to be displayed next to posts from account. AKA, 'profile picture'", 39 + accept: ['image/png', 'image/jpeg'], 40 + maxSize: 1000000, 157 41 }, 158 - icon: { 42 + banner: { 159 43 type: 'blob', 160 - accept: ['image/*'], 44 + description: 45 + 'Larger horizontal image to display behind profile view.', 46 + accept: ['image/png', 'image/jpeg'], 161 47 maxSize: 1000000, 162 48 }, 163 - theme: { 164 - type: 'ref', 165 - ref: 'lex:pub.leaflet.publication#theme', 49 + labels: { 50 + type: 'union', 51 + description: 52 + 'Self-label values, specific to the Bluesky application, on the overall account.', 53 + refs: ['lex:com.atproto.label.defs#selfLabels'], 166 54 }, 167 - preferences: { 55 + joinedViaStarterPack: { 168 56 type: 'ref', 169 - ref: 'lex:pub.leaflet.publication#preferences', 57 + ref: 'lex:com.atproto.repo.strongRef', 170 58 }, 171 - }, 172 - }, 173 - }, 174 - preferences: { 175 - type: 'object', 176 - properties: { 177 - showInDiscover: { 178 - type: 'boolean', 179 - default: true, 180 - }, 181 - showComments: { 182 - type: 'boolean', 183 - default: true, 184 - }, 185 - }, 186 - }, 187 - theme: { 188 - type: 'object', 189 - properties: { 190 - backgroundColor: { 191 - type: 'union', 192 - refs: [ 193 - 'lex:pub.leaflet.theme.color#rgba', 194 - 'lex:pub.leaflet.theme.color#rgb', 195 - ], 196 - }, 197 - backgroundImage: { 198 - type: 'ref', 199 - ref: 'lex:pub.leaflet.theme.backgroundImage', 200 - }, 201 - primary: { 202 - type: 'union', 203 - refs: [ 204 - 'lex:pub.leaflet.theme.color#rgba', 205 - 'lex:pub.leaflet.theme.color#rgb', 206 - ], 207 - }, 208 - pageBackground: { 209 - type: 'union', 210 - refs: [ 211 - 'lex:pub.leaflet.theme.color#rgba', 212 - 'lex:pub.leaflet.theme.color#rgb', 213 - ], 214 - }, 215 - showPageBackground: { 216 - type: 'boolean', 217 - default: false, 218 - }, 219 - accentBackground: { 220 - type: 'union', 221 - refs: [ 222 - 'lex:pub.leaflet.theme.color#rgba', 223 - 'lex:pub.leaflet.theme.color#rgb', 224 - ], 225 - }, 226 - accentText: { 227 - type: 'union', 228 - refs: [ 229 - 'lex:pub.leaflet.theme.color#rgba', 230 - 'lex:pub.leaflet.theme.color#rgb', 231 - ], 232 - }, 233 - }, 234 - }, 235 - }, 236 - }, 237 - PubLeafletBlocksBlockquote: { 238 - lexicon: 1, 239 - id: 'pub.leaflet.blocks.blockquote', 240 - defs: { 241 - main: { 242 - type: 'object', 243 - required: ['plaintext'], 244 - properties: { 245 - plaintext: { 246 - type: 'string', 247 - }, 248 - facets: { 249 - type: 'array', 250 - items: { 59 + pinnedPost: { 251 60 type: 'ref', 252 - ref: 'lex:pub.leaflet.richtext.facet', 253 - }, 254 - }, 255 - }, 256 - }, 257 - }, 258 - }, 259 - PubLeafletBlocksBskyPost: { 260 - lexicon: 1, 261 - id: 'pub.leaflet.blocks.bskyPost', 262 - defs: { 263 - main: { 264 - type: 'object', 265 - required: ['postRef'], 266 - properties: { 267 - postRef: { 268 - type: 'ref', 269 - ref: 'lex:com.atproto.repo.strongRef', 270 - }, 271 - }, 272 - }, 273 - }, 274 - }, 275 - PubLeafletBlocksCode: { 276 - lexicon: 1, 277 - id: 'pub.leaflet.blocks.code', 278 - defs: { 279 - main: { 280 - type: 'object', 281 - required: ['plaintext'], 282 - properties: { 283 - plaintext: { 284 - type: 'string', 285 - }, 286 - language: { 287 - type: 'string', 288 - }, 289 - syntaxHighlightingTheme: { 290 - type: 'string', 291 - }, 292 - }, 293 - }, 294 - }, 295 - }, 296 - PubLeafletBlocksHeader: { 297 - lexicon: 1, 298 - id: 'pub.leaflet.blocks.header', 299 - defs: { 300 - main: { 301 - type: 'object', 302 - required: ['plaintext'], 303 - properties: { 304 - level: { 305 - type: 'integer', 306 - minimum: 1, 307 - maximum: 6, 308 - }, 309 - plaintext: { 310 - type: 'string', 311 - }, 312 - facets: { 313 - type: 'array', 314 - items: { 315 - type: 'ref', 316 - ref: 'lex:pub.leaflet.richtext.facet', 61 + ref: 'lex:com.atproto.repo.strongRef', 317 62 }, 318 - }, 319 - }, 320 - }, 321 - }, 322 - }, 323 - PubLeafletBlocksHorizontalRule: { 324 - lexicon: 1, 325 - id: 'pub.leaflet.blocks.horizontalRule', 326 - defs: { 327 - main: { 328 - type: 'object', 329 - required: [], 330 - properties: {}, 331 - }, 332 - }, 333 - }, 334 - PubLeafletBlocksIframe: { 335 - lexicon: 1, 336 - id: 'pub.leaflet.blocks.iframe', 337 - defs: { 338 - main: { 339 - type: 'object', 340 - required: ['url'], 341 - properties: { 342 - url: { 343 - type: 'string', 344 - format: 'uri', 345 - }, 346 - height: { 347 - type: 'integer', 348 - minimum: 16, 349 - maximum: 1600, 350 - }, 351 - }, 352 - }, 353 - }, 354 - }, 355 - PubLeafletBlocksImage: { 356 - lexicon: 1, 357 - id: 'pub.leaflet.blocks.image', 358 - defs: { 359 - main: { 360 - type: 'object', 361 - required: ['image', 'aspectRatio'], 362 - properties: { 363 - image: { 364 - type: 'blob', 365 - accept: ['image/*'], 366 - maxSize: 1000000, 367 - }, 368 - alt: { 369 - type: 'string', 370 - description: 371 - 'Alt text description of the image, for accessibility.', 372 - }, 373 - aspectRatio: { 374 - type: 'ref', 375 - ref: 'lex:pub.leaflet.blocks.image#aspectRatio', 376 - }, 377 - }, 378 - }, 379 - aspectRatio: { 380 - type: 'object', 381 - required: ['width', 'height'], 382 - properties: { 383 - width: { 384 - type: 'integer', 385 - }, 386 - height: { 387 - type: 'integer', 388 - }, 389 - }, 390 - }, 391 - }, 392 - }, 393 - PubLeafletBlocksMath: { 394 - lexicon: 1, 395 - id: 'pub.leaflet.blocks.math', 396 - defs: { 397 - main: { 398 - type: 'object', 399 - required: ['tex'], 400 - properties: { 401 - tex: { 402 - type: 'string', 403 - }, 404 - }, 405 - }, 406 - }, 407 - }, 408 - PubLeafletBlocksText: { 409 - lexicon: 1, 410 - id: 'pub.leaflet.blocks.text', 411 - defs: { 412 - main: { 413 - type: 'object', 414 - required: ['plaintext'], 415 - properties: { 416 - plaintext: { 417 - type: 'string', 418 - }, 419 - facets: { 420 - type: 'array', 421 - items: { 422 - type: 'ref', 423 - ref: 'lex:pub.leaflet.richtext.facet', 424 - }, 425 - }, 426 - }, 427 - }, 428 - }, 429 - }, 430 - PubLeafletBlocksUnorderedList: { 431 - lexicon: 1, 432 - id: 'pub.leaflet.blocks.unorderedList', 433 - defs: { 434 - main: { 435 - type: 'object', 436 - required: ['children'], 437 - properties: { 438 - children: { 439 - type: 'array', 440 - items: { 441 - type: 'ref', 442 - ref: 'lex:pub.leaflet.blocks.unorderedList#listItem', 443 - }, 444 - }, 445 - }, 446 - }, 447 - listItem: { 448 - type: 'object', 449 - required: ['content'], 450 - properties: { 451 - content: { 452 - type: 'union', 453 - refs: [ 454 - 'lex:pub.leaflet.blocks.text', 455 - 'lex:pub.leaflet.blocks.header', 456 - 'lex:pub.leaflet.blocks.image', 457 - ], 458 - }, 459 - children: { 460 - type: 'array', 461 - items: { 462 - type: 'ref', 463 - ref: 'lex:pub.leaflet.blocks.unorderedList#listItem', 464 - }, 465 - }, 466 - }, 467 - }, 468 - }, 469 - }, 470 - PubLeafletBlocksWebsite: { 471 - lexicon: 1, 472 - id: 'pub.leaflet.blocks.website', 473 - defs: { 474 - main: { 475 - type: 'object', 476 - required: ['src'], 477 - properties: { 478 - previewImage: { 479 - type: 'blob', 480 - accept: ['image/*'], 481 - maxSize: 1000000, 482 - }, 483 - title: { 484 - type: 'string', 485 - }, 486 - description: { 487 - type: 'string', 488 - }, 489 - src: { 490 - type: 'string', 491 - format: 'uri', 492 - }, 493 - }, 494 - }, 495 - }, 496 - }, 497 - PubLeafletGraphSubscription: { 498 - lexicon: 1, 499 - id: 'pub.leaflet.graph.subscription', 500 - defs: { 501 - main: { 502 - type: 'record', 503 - key: 'tid', 504 - description: 'Record declaring a subscription to a publication', 505 - record: { 506 - type: 'object', 507 - required: ['publication'], 508 - properties: { 509 - publication: { 63 + createdAt: { 510 64 type: 'string', 511 - format: 'at-uri', 512 - }, 513 - }, 514 - }, 515 - }, 516 - }, 517 - }, 518 - PubLeafletPagesLinearDocument: { 519 - lexicon: 1, 520 - id: 'pub.leaflet.pages.linearDocument', 521 - defs: { 522 - main: { 523 - type: 'object', 524 - properties: { 525 - blocks: { 526 - type: 'array', 527 - items: { 528 - type: 'ref', 529 - ref: 'lex:pub.leaflet.pages.linearDocument#block', 530 - }, 531 - }, 532 - }, 533 - }, 534 - block: { 535 - type: 'object', 536 - required: ['block'], 537 - properties: { 538 - block: { 539 - type: 'union', 540 - refs: [ 541 - 'lex:pub.leaflet.blocks.iframe', 542 - 'lex:pub.leaflet.blocks.text', 543 - 'lex:pub.leaflet.blocks.blockquote', 544 - 'lex:pub.leaflet.blocks.header', 545 - 'lex:pub.leaflet.blocks.image', 546 - 'lex:pub.leaflet.blocks.unorderedList', 547 - 'lex:pub.leaflet.blocks.website', 548 - 'lex:pub.leaflet.blocks.math', 549 - 'lex:pub.leaflet.blocks.code', 550 - 'lex:pub.leaflet.blocks.horizontalRule', 551 - 'lex:pub.leaflet.blocks.bskyPost', 552 - ], 553 - }, 554 - alignment: { 555 - type: 'string', 556 - knownValues: [ 557 - 'lex:pub.leaflet.pages.linearDocument#textAlignLeft', 558 - 'lex:pub.leaflet.pages.linearDocument#textAlignCenter', 559 - 'lex:pub.leaflet.pages.linearDocument#textAlignRight', 560 - 'lex:pub.leaflet.pages.linearDocument#textAlignJustify', 561 - ], 562 - }, 563 - }, 564 - }, 565 - textAlignLeft: { 566 - type: 'token', 567 - }, 568 - textAlignCenter: { 569 - type: 'token', 570 - }, 571 - textAlignRight: { 572 - type: 'token', 573 - }, 574 - quote: { 575 - type: 'object', 576 - required: ['start', 'end'], 577 - properties: { 578 - start: { 579 - type: 'ref', 580 - ref: 'lex:pub.leaflet.pages.linearDocument#position', 581 - }, 582 - end: { 583 - type: 'ref', 584 - ref: 'lex:pub.leaflet.pages.linearDocument#position', 585 - }, 586 - }, 587 - }, 588 - position: { 589 - type: 'object', 590 - required: ['block', 'offset'], 591 - properties: { 592 - block: { 593 - type: 'array', 594 - items: { 595 - type: 'integer', 65 + format: 'datetime', 596 66 }, 597 - }, 598 - offset: { 599 - type: 'integer', 600 - }, 601 - }, 602 - }, 603 - }, 604 - }, 605 - PubLeafletRichtextFacet: { 606 - lexicon: 1, 607 - id: 'pub.leaflet.richtext.facet', 608 - defs: { 609 - main: { 610 - type: 'object', 611 - description: 'Annotation of a sub-string within rich text.', 612 - required: ['index', 'features'], 613 - properties: { 614 - index: { 615 - type: 'ref', 616 - ref: 'lex:pub.leaflet.richtext.facet#byteSlice', 617 - }, 618 - features: { 619 - type: 'array', 620 - items: { 621 - type: 'union', 622 - refs: [ 623 - 'lex:pub.leaflet.richtext.facet#link', 624 - 'lex:pub.leaflet.richtext.facet#code', 625 - 'lex:pub.leaflet.richtext.facet#highlight', 626 - 'lex:pub.leaflet.richtext.facet#underline', 627 - 'lex:pub.leaflet.richtext.facet#strikethrough', 628 - 'lex:pub.leaflet.richtext.facet#id', 629 - 'lex:pub.leaflet.richtext.facet#bold', 630 - 'lex:pub.leaflet.richtext.facet#italic', 631 - ], 632 - }, 633 - }, 634 - }, 635 - }, 636 - byteSlice: { 637 - type: 'object', 638 - description: 639 - 'Specifies the sub-string range a facet feature applies to. Start index is inclusive, end index is exclusive. Indices are zero-indexed, counting bytes of the UTF-8 encoded text. NOTE: some languages, like Javascript, use UTF-16 or Unicode codepoints for string slice indexing; in these languages, convert to byte arrays before working with facets.', 640 - required: ['byteStart', 'byteEnd'], 641 - properties: { 642 - byteStart: { 643 - type: 'integer', 644 - minimum: 0, 645 - }, 646 - byteEnd: { 647 - type: 'integer', 648 - minimum: 0, 649 - }, 650 - }, 651 - }, 652 - link: { 653 - type: 'object', 654 - description: 655 - 'Facet feature for a URL. The text URL may have been simplified or truncated, but the facet reference should be a complete URL.', 656 - required: ['uri'], 657 - properties: { 658 - uri: { 659 - type: 'string', 660 - format: 'uri', 661 - }, 662 - }, 663 - }, 664 - code: { 665 - type: 'object', 666 - description: 'Facet feature for inline code.', 667 - required: [], 668 - properties: {}, 669 - }, 670 - highlight: { 671 - type: 'object', 672 - description: 'Facet feature for highlighted text.', 673 - required: [], 674 - properties: {}, 675 - }, 676 - underline: { 677 - type: 'object', 678 - description: 'Facet feature for underline markup', 679 - required: [], 680 - properties: {}, 681 - }, 682 - strikethrough: { 683 - type: 'object', 684 - description: 'Facet feature for strikethrough markup', 685 - required: [], 686 - properties: {}, 687 - }, 688 - id: { 689 - type: 'object', 690 - description: 691 - 'Facet feature for an identifier. Used for linking to a segment', 692 - required: [], 693 - properties: { 694 - id: { 695 - type: 'string', 696 - }, 697 - }, 698 - }, 699 - bold: { 700 - type: 'object', 701 - description: 'Facet feature for bold text', 702 - required: [], 703 - properties: {}, 704 - }, 705 - italic: { 706 - type: 'object', 707 - description: 'Facet feature for italic text', 708 - required: [], 709 - properties: {}, 710 - }, 711 - }, 712 - }, 713 - PubLeafletThemeBackgroundImage: { 714 - lexicon: 1, 715 - id: 'pub.leaflet.theme.backgroundImage', 716 - defs: { 717 - main: { 718 - type: 'object', 719 - required: ['image'], 720 - properties: { 721 - image: { 722 - type: 'blob', 723 - accept: ['image/*'], 724 - maxSize: 1000000, 725 - }, 726 - width: { 727 - type: 'integer', 728 - }, 729 - repeat: { 730 - type: 'boolean', 731 - }, 732 - }, 733 - }, 734 - }, 735 - }, 736 - PubLeafletThemeColor: { 737 - lexicon: 1, 738 - id: 'pub.leaflet.theme.color', 739 - defs: { 740 - rgba: { 741 - type: 'object', 742 - required: ['r', 'g', 'b', 'a'], 743 - properties: { 744 - r: { 745 - type: 'integer', 746 - maximum: 255, 747 - minimum: 0, 748 - }, 749 - g: { 750 - type: 'integer', 751 - maximum: 255, 752 - minimum: 0, 753 - }, 754 - b: { 755 - type: 'integer', 756 - maximum: 255, 757 - minimum: 0, 758 - }, 759 - a: { 760 - type: 'integer', 761 - maximum: 100, 762 - minimum: 0, 763 - }, 764 - }, 765 - }, 766 - rgb: { 767 - type: 'object', 768 - required: ['r', 'g', 'b'], 769 - properties: { 770 - r: { 771 - type: 'integer', 772 - maximum: 255, 773 - minimum: 0, 774 - }, 775 - g: { 776 - type: 'integer', 777 - maximum: 255, 778 - minimum: 0, 779 - }, 780 - b: { 781 - type: 'integer', 782 - maximum: 255, 783 - minimum: 0, 784 67 }, 785 68 }, 786 69 }, ··· 1731 1014 }, 1732 1015 }, 1733 1016 }, 1734 - AppBskyActorProfile: { 1017 + PubLeafletBlocksBlockquote: { 1018 + lexicon: 1, 1019 + id: 'pub.leaflet.blocks.blockquote', 1020 + defs: { 1021 + main: { 1022 + type: 'object', 1023 + required: ['plaintext'], 1024 + properties: { 1025 + plaintext: { 1026 + type: 'string', 1027 + }, 1028 + facets: { 1029 + type: 'array', 1030 + items: { 1031 + type: 'ref', 1032 + ref: 'lex:pub.leaflet.richtext.facet', 1033 + }, 1034 + }, 1035 + }, 1036 + }, 1037 + }, 1038 + }, 1039 + PubLeafletBlocksBskyPost: { 1040 + lexicon: 1, 1041 + id: 'pub.leaflet.blocks.bskyPost', 1042 + defs: { 1043 + main: { 1044 + type: 'object', 1045 + required: ['postRef'], 1046 + properties: { 1047 + postRef: { 1048 + type: 'ref', 1049 + ref: 'lex:com.atproto.repo.strongRef', 1050 + }, 1051 + }, 1052 + }, 1053 + }, 1054 + }, 1055 + PubLeafletBlocksCode: { 1735 1056 lexicon: 1, 1736 - id: 'app.bsky.actor.profile', 1057 + id: 'pub.leaflet.blocks.code', 1058 + defs: { 1059 + main: { 1060 + type: 'object', 1061 + required: ['plaintext'], 1062 + properties: { 1063 + plaintext: { 1064 + type: 'string', 1065 + }, 1066 + language: { 1067 + type: 'string', 1068 + }, 1069 + syntaxHighlightingTheme: { 1070 + type: 'string', 1071 + }, 1072 + }, 1073 + }, 1074 + }, 1075 + }, 1076 + PubLeafletBlocksHeader: { 1077 + lexicon: 1, 1078 + id: 'pub.leaflet.blocks.header', 1079 + defs: { 1080 + main: { 1081 + type: 'object', 1082 + required: ['plaintext'], 1083 + properties: { 1084 + level: { 1085 + type: 'integer', 1086 + minimum: 1, 1087 + maximum: 6, 1088 + }, 1089 + plaintext: { 1090 + type: 'string', 1091 + }, 1092 + facets: { 1093 + type: 'array', 1094 + items: { 1095 + type: 'ref', 1096 + ref: 'lex:pub.leaflet.richtext.facet', 1097 + }, 1098 + }, 1099 + }, 1100 + }, 1101 + }, 1102 + }, 1103 + PubLeafletBlocksHorizontalRule: { 1104 + lexicon: 1, 1105 + id: 'pub.leaflet.blocks.horizontalRule', 1106 + defs: { 1107 + main: { 1108 + type: 'object', 1109 + required: [], 1110 + properties: {}, 1111 + }, 1112 + }, 1113 + }, 1114 + PubLeafletBlocksIframe: { 1115 + lexicon: 1, 1116 + id: 'pub.leaflet.blocks.iframe', 1117 + defs: { 1118 + main: { 1119 + type: 'object', 1120 + required: ['url'], 1121 + properties: { 1122 + url: { 1123 + type: 'string', 1124 + format: 'uri', 1125 + }, 1126 + height: { 1127 + type: 'integer', 1128 + minimum: 16, 1129 + maximum: 1600, 1130 + }, 1131 + }, 1132 + }, 1133 + }, 1134 + }, 1135 + PubLeafletBlocksImage: { 1136 + lexicon: 1, 1137 + id: 'pub.leaflet.blocks.image', 1138 + defs: { 1139 + main: { 1140 + type: 'object', 1141 + required: ['image', 'aspectRatio'], 1142 + properties: { 1143 + image: { 1144 + type: 'blob', 1145 + accept: ['image/*'], 1146 + maxSize: 1000000, 1147 + }, 1148 + alt: { 1149 + type: 'string', 1150 + description: 1151 + 'Alt text description of the image, for accessibility.', 1152 + }, 1153 + aspectRatio: { 1154 + type: 'ref', 1155 + ref: 'lex:pub.leaflet.blocks.image#aspectRatio', 1156 + }, 1157 + }, 1158 + }, 1159 + aspectRatio: { 1160 + type: 'object', 1161 + required: ['width', 'height'], 1162 + properties: { 1163 + width: { 1164 + type: 'integer', 1165 + }, 1166 + height: { 1167 + type: 'integer', 1168 + }, 1169 + }, 1170 + }, 1171 + }, 1172 + }, 1173 + PubLeafletBlocksMath: { 1174 + lexicon: 1, 1175 + id: 'pub.leaflet.blocks.math', 1176 + defs: { 1177 + main: { 1178 + type: 'object', 1179 + required: ['tex'], 1180 + properties: { 1181 + tex: { 1182 + type: 'string', 1183 + }, 1184 + }, 1185 + }, 1186 + }, 1187 + }, 1188 + PubLeafletBlocksText: { 1189 + lexicon: 1, 1190 + id: 'pub.leaflet.blocks.text', 1191 + defs: { 1192 + main: { 1193 + type: 'object', 1194 + required: ['plaintext'], 1195 + properties: { 1196 + plaintext: { 1197 + type: 'string', 1198 + }, 1199 + facets: { 1200 + type: 'array', 1201 + items: { 1202 + type: 'ref', 1203 + ref: 'lex:pub.leaflet.richtext.facet', 1204 + }, 1205 + }, 1206 + }, 1207 + }, 1208 + }, 1209 + }, 1210 + PubLeafletBlocksUnorderedList: { 1211 + lexicon: 1, 1212 + id: 'pub.leaflet.blocks.unorderedList', 1213 + defs: { 1214 + main: { 1215 + type: 'object', 1216 + required: ['children'], 1217 + properties: { 1218 + children: { 1219 + type: 'array', 1220 + items: { 1221 + type: 'ref', 1222 + ref: 'lex:pub.leaflet.blocks.unorderedList#listItem', 1223 + }, 1224 + }, 1225 + }, 1226 + }, 1227 + listItem: { 1228 + type: 'object', 1229 + required: ['content'], 1230 + properties: { 1231 + content: { 1232 + type: 'union', 1233 + refs: [ 1234 + 'lex:pub.leaflet.blocks.text', 1235 + 'lex:pub.leaflet.blocks.header', 1236 + 'lex:pub.leaflet.blocks.image', 1237 + ], 1238 + }, 1239 + children: { 1240 + type: 'array', 1241 + items: { 1242 + type: 'ref', 1243 + ref: 'lex:pub.leaflet.blocks.unorderedList#listItem', 1244 + }, 1245 + }, 1246 + }, 1247 + }, 1248 + }, 1249 + }, 1250 + PubLeafletBlocksWebsite: { 1251 + lexicon: 1, 1252 + id: 'pub.leaflet.blocks.website', 1253 + defs: { 1254 + main: { 1255 + type: 'object', 1256 + required: ['src'], 1257 + properties: { 1258 + previewImage: { 1259 + type: 'blob', 1260 + accept: ['image/*'], 1261 + maxSize: 1000000, 1262 + }, 1263 + title: { 1264 + type: 'string', 1265 + }, 1266 + description: { 1267 + type: 'string', 1268 + }, 1269 + src: { 1270 + type: 'string', 1271 + format: 'uri', 1272 + }, 1273 + }, 1274 + }, 1275 + }, 1276 + }, 1277 + PubLeafletComment: { 1278 + lexicon: 1, 1279 + id: 'pub.leaflet.comment', 1280 + revision: 1, 1281 + description: 'A lexicon for comments on documents', 1737 1282 defs: { 1738 1283 main: { 1739 1284 type: 'record', 1740 - description: 'A declaration of a Bluesky account profile.', 1741 - key: 'literal:self', 1285 + key: 'tid', 1286 + description: 'Record containing a comment', 1742 1287 record: { 1743 1288 type: 'object', 1289 + required: ['subject', 'plaintext', 'createdAt'], 1744 1290 properties: { 1745 - displayName: { 1291 + subject: { 1746 1292 type: 'string', 1747 - maxGraphemes: 64, 1748 - maxLength: 640, 1293 + format: 'at-uri', 1749 1294 }, 1750 - description: { 1295 + createdAt: { 1751 1296 type: 'string', 1752 - description: 'Free-form profile description text.', 1753 - maxGraphemes: 256, 1754 - maxLength: 2560, 1297 + format: 'datetime', 1755 1298 }, 1756 - avatar: { 1757 - type: 'blob', 1758 - description: 1759 - "Small image to be displayed next to posts from account. AKA, 'profile picture'", 1760 - accept: ['image/png', 'image/jpeg'], 1761 - maxSize: 1000000, 1299 + reply: { 1300 + type: 'ref', 1301 + ref: 'lex:pub.leaflet.comment#replyRef', 1762 1302 }, 1763 - banner: { 1764 - type: 'blob', 1765 - description: 1766 - 'Larger horizontal image to display behind profile view.', 1767 - accept: ['image/png', 'image/jpeg'], 1768 - maxSize: 1000000, 1303 + plaintext: { 1304 + type: 'string', 1769 1305 }, 1770 - labels: { 1306 + facets: { 1307 + type: 'array', 1308 + items: { 1309 + type: 'ref', 1310 + ref: 'lex:pub.leaflet.richtext.facet', 1311 + }, 1312 + }, 1313 + attachment: { 1771 1314 type: 'union', 1772 - description: 1773 - 'Self-label values, specific to the Bluesky application, on the overall account.', 1774 - refs: ['lex:com.atproto.label.defs#selfLabels'], 1315 + refs: ['lex:pub.leaflet.comment#linearDocumentQuote'], 1775 1316 }, 1776 - joinedViaStarterPack: { 1777 - type: 'ref', 1778 - ref: 'lex:com.atproto.repo.strongRef', 1317 + }, 1318 + }, 1319 + }, 1320 + linearDocumentQuote: { 1321 + type: 'object', 1322 + required: ['document', 'quote'], 1323 + properties: { 1324 + document: { 1325 + type: 'string', 1326 + format: 'at-uri', 1327 + }, 1328 + quote: { 1329 + type: 'ref', 1330 + ref: 'lex:pub.leaflet.pages.linearDocument#quote', 1331 + }, 1332 + }, 1333 + }, 1334 + replyRef: { 1335 + type: 'object', 1336 + required: ['parent'], 1337 + properties: { 1338 + parent: { 1339 + type: 'string', 1340 + format: 'at-uri', 1341 + }, 1342 + }, 1343 + }, 1344 + }, 1345 + }, 1346 + PubLeafletDocument: { 1347 + lexicon: 1, 1348 + id: 'pub.leaflet.document', 1349 + revision: 1, 1350 + description: 'A lexicon for long form rich media documents', 1351 + defs: { 1352 + main: { 1353 + type: 'record', 1354 + key: 'tid', 1355 + description: 'Record containing a document', 1356 + record: { 1357 + type: 'object', 1358 + required: ['pages', 'author', 'title', 'publication'], 1359 + properties: { 1360 + title: { 1361 + type: 'string', 1362 + maxLength: 1280, 1363 + maxGraphemes: 128, 1779 1364 }, 1780 - pinnedPost: { 1365 + postRef: { 1781 1366 type: 'ref', 1782 1367 ref: 'lex:com.atproto.repo.strongRef', 1783 1368 }, 1784 - createdAt: { 1369 + description: { 1370 + type: 'string', 1371 + maxLength: 3000, 1372 + maxGraphemes: 300, 1373 + }, 1374 + publishedAt: { 1785 1375 type: 'string', 1786 1376 format: 'datetime', 1787 1377 }, 1378 + publication: { 1379 + type: 'string', 1380 + format: 'at-uri', 1381 + }, 1382 + author: { 1383 + type: 'string', 1384 + format: 'at-identifier', 1385 + }, 1386 + pages: { 1387 + type: 'array', 1388 + items: { 1389 + type: 'union', 1390 + refs: ['lex:pub.leaflet.pages.linearDocument'], 1391 + }, 1392 + }, 1393 + }, 1394 + }, 1395 + }, 1396 + }, 1397 + }, 1398 + PubLeafletGraphSubscription: { 1399 + lexicon: 1, 1400 + id: 'pub.leaflet.graph.subscription', 1401 + defs: { 1402 + main: { 1403 + type: 'record', 1404 + key: 'tid', 1405 + description: 'Record declaring a subscription to a publication', 1406 + record: { 1407 + type: 'object', 1408 + required: ['publication'], 1409 + properties: { 1410 + publication: { 1411 + type: 'string', 1412 + format: 'at-uri', 1413 + }, 1414 + }, 1415 + }, 1416 + }, 1417 + }, 1418 + }, 1419 + PubLeafletPagesLinearDocument: { 1420 + lexicon: 1, 1421 + id: 'pub.leaflet.pages.linearDocument', 1422 + defs: { 1423 + main: { 1424 + type: 'object', 1425 + properties: { 1426 + blocks: { 1427 + type: 'array', 1428 + items: { 1429 + type: 'ref', 1430 + ref: 'lex:pub.leaflet.pages.linearDocument#block', 1431 + }, 1432 + }, 1433 + }, 1434 + }, 1435 + block: { 1436 + type: 'object', 1437 + required: ['block'], 1438 + properties: { 1439 + block: { 1440 + type: 'union', 1441 + refs: [ 1442 + 'lex:pub.leaflet.blocks.iframe', 1443 + 'lex:pub.leaflet.blocks.text', 1444 + 'lex:pub.leaflet.blocks.blockquote', 1445 + 'lex:pub.leaflet.blocks.header', 1446 + 'lex:pub.leaflet.blocks.image', 1447 + 'lex:pub.leaflet.blocks.unorderedList', 1448 + 'lex:pub.leaflet.blocks.website', 1449 + 'lex:pub.leaflet.blocks.math', 1450 + 'lex:pub.leaflet.blocks.code', 1451 + 'lex:pub.leaflet.blocks.horizontalRule', 1452 + 'lex:pub.leaflet.blocks.bskyPost', 1453 + ], 1454 + }, 1455 + alignment: { 1456 + type: 'string', 1457 + knownValues: [ 1458 + 'lex:pub.leaflet.pages.linearDocument#textAlignLeft', 1459 + 'lex:pub.leaflet.pages.linearDocument#textAlignCenter', 1460 + 'lex:pub.leaflet.pages.linearDocument#textAlignRight', 1461 + 'lex:pub.leaflet.pages.linearDocument#textAlignJustify', 1462 + ], 1463 + }, 1464 + }, 1465 + }, 1466 + textAlignLeft: { 1467 + type: 'token', 1468 + }, 1469 + textAlignCenter: { 1470 + type: 'token', 1471 + }, 1472 + textAlignRight: { 1473 + type: 'token', 1474 + }, 1475 + quote: { 1476 + type: 'object', 1477 + required: ['start', 'end'], 1478 + properties: { 1479 + start: { 1480 + type: 'ref', 1481 + ref: 'lex:pub.leaflet.pages.linearDocument#position', 1482 + }, 1483 + end: { 1484 + type: 'ref', 1485 + ref: 'lex:pub.leaflet.pages.linearDocument#position', 1486 + }, 1487 + }, 1488 + }, 1489 + position: { 1490 + type: 'object', 1491 + required: ['block', 'offset'], 1492 + properties: { 1493 + block: { 1494 + type: 'array', 1495 + items: { 1496 + type: 'integer', 1497 + }, 1498 + }, 1499 + offset: { 1500 + type: 'integer', 1501 + }, 1502 + }, 1503 + }, 1504 + }, 1505 + }, 1506 + PubLeafletPublication: { 1507 + lexicon: 1, 1508 + id: 'pub.leaflet.publication', 1509 + defs: { 1510 + main: { 1511 + type: 'record', 1512 + key: 'tid', 1513 + description: 'Record declaring a publication', 1514 + record: { 1515 + type: 'object', 1516 + required: ['name'], 1517 + properties: { 1518 + name: { 1519 + type: 'string', 1520 + maxLength: 2000, 1521 + }, 1522 + base_path: { 1523 + type: 'string', 1524 + format: 'uri', 1525 + }, 1526 + description: { 1527 + type: 'string', 1528 + maxLength: 2000, 1529 + }, 1530 + icon: { 1531 + type: 'blob', 1532 + accept: ['image/*'], 1533 + maxSize: 1000000, 1534 + }, 1535 + theme: { 1536 + type: 'ref', 1537 + ref: 'lex:pub.leaflet.publication#theme', 1538 + }, 1539 + preferences: { 1540 + type: 'ref', 1541 + ref: 'lex:pub.leaflet.publication#preferences', 1542 + }, 1543 + }, 1544 + }, 1545 + }, 1546 + preferences: { 1547 + type: 'object', 1548 + properties: { 1549 + showInDiscover: { 1550 + type: 'boolean', 1551 + default: true, 1552 + }, 1553 + showComments: { 1554 + type: 'boolean', 1555 + default: true, 1556 + }, 1557 + }, 1558 + }, 1559 + theme: { 1560 + type: 'object', 1561 + properties: { 1562 + backgroundColor: { 1563 + type: 'union', 1564 + refs: [ 1565 + 'lex:pub.leaflet.theme.color#rgba', 1566 + 'lex:pub.leaflet.theme.color#rgb', 1567 + ], 1568 + }, 1569 + backgroundImage: { 1570 + type: 'ref', 1571 + ref: 'lex:pub.leaflet.theme.backgroundImage', 1572 + }, 1573 + primary: { 1574 + type: 'union', 1575 + refs: [ 1576 + 'lex:pub.leaflet.theme.color#rgba', 1577 + 'lex:pub.leaflet.theme.color#rgb', 1578 + ], 1579 + }, 1580 + pageBackground: { 1581 + type: 'union', 1582 + refs: [ 1583 + 'lex:pub.leaflet.theme.color#rgba', 1584 + 'lex:pub.leaflet.theme.color#rgb', 1585 + ], 1586 + }, 1587 + showPageBackground: { 1588 + type: 'boolean', 1589 + default: false, 1590 + }, 1591 + accentBackground: { 1592 + type: 'union', 1593 + refs: [ 1594 + 'lex:pub.leaflet.theme.color#rgba', 1595 + 'lex:pub.leaflet.theme.color#rgb', 1596 + ], 1597 + }, 1598 + accentText: { 1599 + type: 'union', 1600 + refs: [ 1601 + 'lex:pub.leaflet.theme.color#rgba', 1602 + 'lex:pub.leaflet.theme.color#rgb', 1603 + ], 1604 + }, 1605 + }, 1606 + }, 1607 + }, 1608 + }, 1609 + PubLeafletRichtextFacet: { 1610 + lexicon: 1, 1611 + id: 'pub.leaflet.richtext.facet', 1612 + defs: { 1613 + main: { 1614 + type: 'object', 1615 + description: 'Annotation of a sub-string within rich text.', 1616 + required: ['index', 'features'], 1617 + properties: { 1618 + index: { 1619 + type: 'ref', 1620 + ref: 'lex:pub.leaflet.richtext.facet#byteSlice', 1621 + }, 1622 + features: { 1623 + type: 'array', 1624 + items: { 1625 + type: 'union', 1626 + refs: [ 1627 + 'lex:pub.leaflet.richtext.facet#link', 1628 + 'lex:pub.leaflet.richtext.facet#code', 1629 + 'lex:pub.leaflet.richtext.facet#highlight', 1630 + 'lex:pub.leaflet.richtext.facet#underline', 1631 + 'lex:pub.leaflet.richtext.facet#strikethrough', 1632 + 'lex:pub.leaflet.richtext.facet#id', 1633 + 'lex:pub.leaflet.richtext.facet#bold', 1634 + 'lex:pub.leaflet.richtext.facet#italic', 1635 + ], 1636 + }, 1637 + }, 1638 + }, 1639 + }, 1640 + byteSlice: { 1641 + type: 'object', 1642 + description: 1643 + 'Specifies the sub-string range a facet feature applies to. Start index is inclusive, end index is exclusive. Indices are zero-indexed, counting bytes of the UTF-8 encoded text. NOTE: some languages, like Javascript, use UTF-16 or Unicode codepoints for string slice indexing; in these languages, convert to byte arrays before working with facets.', 1644 + required: ['byteStart', 'byteEnd'], 1645 + properties: { 1646 + byteStart: { 1647 + type: 'integer', 1648 + minimum: 0, 1649 + }, 1650 + byteEnd: { 1651 + type: 'integer', 1652 + minimum: 0, 1653 + }, 1654 + }, 1655 + }, 1656 + link: { 1657 + type: 'object', 1658 + description: 1659 + 'Facet feature for a URL. The text URL may have been simplified or truncated, but the facet reference should be a complete URL.', 1660 + required: ['uri'], 1661 + properties: { 1662 + uri: { 1663 + type: 'string', 1664 + format: 'uri', 1665 + }, 1666 + }, 1667 + }, 1668 + code: { 1669 + type: 'object', 1670 + description: 'Facet feature for inline code.', 1671 + required: [], 1672 + properties: {}, 1673 + }, 1674 + highlight: { 1675 + type: 'object', 1676 + description: 'Facet feature for highlighted text.', 1677 + required: [], 1678 + properties: {}, 1679 + }, 1680 + underline: { 1681 + type: 'object', 1682 + description: 'Facet feature for underline markup', 1683 + required: [], 1684 + properties: {}, 1685 + }, 1686 + strikethrough: { 1687 + type: 'object', 1688 + description: 'Facet feature for strikethrough markup', 1689 + required: [], 1690 + properties: {}, 1691 + }, 1692 + id: { 1693 + type: 'object', 1694 + description: 1695 + 'Facet feature for an identifier. Used for linking to a segment', 1696 + required: [], 1697 + properties: { 1698 + id: { 1699 + type: 'string', 1700 + }, 1701 + }, 1702 + }, 1703 + bold: { 1704 + type: 'object', 1705 + description: 'Facet feature for bold text', 1706 + required: [], 1707 + properties: {}, 1708 + }, 1709 + italic: { 1710 + type: 'object', 1711 + description: 'Facet feature for italic text', 1712 + required: [], 1713 + properties: {}, 1714 + }, 1715 + }, 1716 + }, 1717 + PubLeafletThemeBackgroundImage: { 1718 + lexicon: 1, 1719 + id: 'pub.leaflet.theme.backgroundImage', 1720 + defs: { 1721 + main: { 1722 + type: 'object', 1723 + required: ['image'], 1724 + properties: { 1725 + image: { 1726 + type: 'blob', 1727 + accept: ['image/*'], 1728 + maxSize: 1000000, 1729 + }, 1730 + width: { 1731 + type: 'integer', 1732 + }, 1733 + repeat: { 1734 + type: 'boolean', 1735 + }, 1736 + }, 1737 + }, 1738 + }, 1739 + }, 1740 + PubLeafletThemeColor: { 1741 + lexicon: 1, 1742 + id: 'pub.leaflet.theme.color', 1743 + defs: { 1744 + rgba: { 1745 + type: 'object', 1746 + required: ['r', 'g', 'b', 'a'], 1747 + properties: { 1748 + r: { 1749 + type: 'integer', 1750 + maximum: 255, 1751 + minimum: 0, 1752 + }, 1753 + g: { 1754 + type: 'integer', 1755 + maximum: 255, 1756 + minimum: 0, 1757 + }, 1758 + b: { 1759 + type: 'integer', 1760 + maximum: 255, 1761 + minimum: 0, 1762 + }, 1763 + a: { 1764 + type: 'integer', 1765 + maximum: 100, 1766 + minimum: 0, 1767 + }, 1768 + }, 1769 + }, 1770 + rgb: { 1771 + type: 'object', 1772 + required: ['r', 'g', 'b'], 1773 + properties: { 1774 + r: { 1775 + type: 'integer', 1776 + maximum: 255, 1777 + minimum: 0, 1778 + }, 1779 + g: { 1780 + type: 'integer', 1781 + maximum: 255, 1782 + minimum: 0, 1783 + }, 1784 + b: { 1785 + type: 'integer', 1786 + maximum: 255, 1787 + minimum: 0, 1788 1788 }, 1789 1789 }, 1790 1790 }, 1791 1791 }, 1792 1792 }, 1793 1793 } as const satisfies Record<string, LexiconDoc> 1794 - 1795 1794 export const schemas = Object.values(schemaDict) satisfies LexiconDoc[] 1796 1795 export const lexicons: Lexicons = new Lexicons(schemas) 1797 1796 ··· 1824 1823 } 1825 1824 1826 1825 export const ids = { 1827 - PubLeafletComment: 'pub.leaflet.comment', 1828 - PubLeafletDocument: 'pub.leaflet.document', 1829 - PubLeafletPublication: 'pub.leaflet.publication', 1826 + AppBskyActorProfile: 'app.bsky.actor.profile', 1827 + ComAtprotoLabelDefs: 'com.atproto.label.defs', 1828 + ComAtprotoRepoApplyWrites: 'com.atproto.repo.applyWrites', 1829 + ComAtprotoRepoCreateRecord: 'com.atproto.repo.createRecord', 1830 + ComAtprotoRepoDefs: 'com.atproto.repo.defs', 1831 + ComAtprotoRepoDeleteRecord: 'com.atproto.repo.deleteRecord', 1832 + ComAtprotoRepoDescribeRepo: 'com.atproto.repo.describeRepo', 1833 + ComAtprotoRepoGetRecord: 'com.atproto.repo.getRecord', 1834 + ComAtprotoRepoImportRepo: 'com.atproto.repo.importRepo', 1835 + ComAtprotoRepoListMissingBlobs: 'com.atproto.repo.listMissingBlobs', 1836 + ComAtprotoRepoListRecords: 'com.atproto.repo.listRecords', 1837 + ComAtprotoRepoPutRecord: 'com.atproto.repo.putRecord', 1838 + ComAtprotoRepoStrongRef: 'com.atproto.repo.strongRef', 1839 + ComAtprotoRepoUploadBlob: 'com.atproto.repo.uploadBlob', 1830 1840 PubLeafletBlocksBlockquote: 'pub.leaflet.blocks.blockquote', 1831 1841 PubLeafletBlocksBskyPost: 'pub.leaflet.blocks.bskyPost', 1832 1842 PubLeafletBlocksCode: 'pub.leaflet.blocks.code', ··· 1838 1848 PubLeafletBlocksText: 'pub.leaflet.blocks.text', 1839 1849 PubLeafletBlocksUnorderedList: 'pub.leaflet.blocks.unorderedList', 1840 1850 PubLeafletBlocksWebsite: 'pub.leaflet.blocks.website', 1851 + PubLeafletComment: 'pub.leaflet.comment', 1852 + PubLeafletDocument: 'pub.leaflet.document', 1841 1853 PubLeafletGraphSubscription: 'pub.leaflet.graph.subscription', 1842 1854 PubLeafletPagesLinearDocument: 'pub.leaflet.pages.linearDocument', 1855 + PubLeafletPublication: 'pub.leaflet.publication', 1843 1856 PubLeafletRichtextFacet: 'pub.leaflet.richtext.facet', 1844 1857 PubLeafletThemeBackgroundImage: 'pub.leaflet.theme.backgroundImage', 1845 1858 PubLeafletThemeColor: 'pub.leaflet.theme.color', 1846 - ComAtprotoLabelDefs: 'com.atproto.label.defs', 1847 - ComAtprotoRepoApplyWrites: 'com.atproto.repo.applyWrites', 1848 - ComAtprotoRepoCreateRecord: 'com.atproto.repo.createRecord', 1849 - ComAtprotoRepoDefs: 'com.atproto.repo.defs', 1850 - ComAtprotoRepoDeleteRecord: 'com.atproto.repo.deleteRecord', 1851 - ComAtprotoRepoDescribeRepo: 'com.atproto.repo.describeRepo', 1852 - ComAtprotoRepoGetRecord: 'com.atproto.repo.getRecord', 1853 - ComAtprotoRepoImportRepo: 'com.atproto.repo.importRepo', 1854 - ComAtprotoRepoListMissingBlobs: 'com.atproto.repo.listMissingBlobs', 1855 - ComAtprotoRepoListRecords: 'com.atproto.repo.listRecords', 1856 - ComAtprotoRepoPutRecord: 'com.atproto.repo.putRecord', 1857 - ComAtprotoRepoStrongRef: 'com.atproto.repo.strongRef', 1858 - ComAtprotoRepoUploadBlob: 'com.atproto.repo.uploadBlob', 1859 - AppBskyActorProfile: 'app.bsky.actor.profile', 1860 1859 } as const
+6 -2
lexicons/api/types/app/bsky/actor/profile.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 import type * as ComAtprotoLabelDefs from '../../../com/atproto/label/defs' 9 13 import type * as ComAtprotoRepoStrongRef from '../../../com/atproto/repo/strongRef' 10 14
+6 -2
lexicons/api/types/com/atproto/label/defs.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+7 -3
lexicons/api/types/com/atproto/repo/applyWrites.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 import type * as ComAtprotoRepoDefs from './defs' 10 14 11 15 const is$typed = _is$typed, 12 16 validate = _validate 13 17 const id = 'com.atproto.repo.applyWrites' 14 18 15 - export interface QueryParams {} 19 + export type QueryParams = {} 16 20 17 21 export interface InputSchema { 18 22 /** The handle or DID of the repo (aka, current account). */
+7 -3
lexicons/api/types/com/atproto/repo/createRecord.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 import type * as ComAtprotoRepoDefs from './defs' 10 14 11 15 const is$typed = _is$typed, 12 16 validate = _validate 13 17 const id = 'com.atproto.repo.createRecord' 14 18 15 - export interface QueryParams {} 19 + export type QueryParams = {} 16 20 17 21 export interface InputSchema { 18 22 /** The handle or DID of the repo (aka, current account). */
+6 -2
lexicons/api/types/com/atproto/repo/defs.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+7 -3
lexicons/api/types/com/atproto/repo/deleteRecord.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 import type * as ComAtprotoRepoDefs from './defs' 10 14 11 15 const is$typed = _is$typed, 12 16 validate = _validate 13 17 const id = 'com.atproto.repo.deleteRecord' 14 18 15 - export interface QueryParams {} 19 + export type QueryParams = {} 16 20 17 21 export interface InputSchema { 18 22 /** The handle or DID of the repo (aka, current account). */
+7 -4
lexicons/api/types/com/atproto/repo/describeRepo.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 10 14 const is$typed = _is$typed, 11 15 validate = _validate 12 16 const id = 'com.atproto.repo.describeRepo' 13 17 14 - export interface QueryParams { 18 + export type QueryParams = { 15 19 /** The handle or DID of the repo. */ 16 20 repo: string 17 21 } 18 - 19 22 export type InputSchema = undefined 20 23 21 24 export interface OutputSchema {
+7 -4
lexicons/api/types/com/atproto/repo/getRecord.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 10 14 const is$typed = _is$typed, 11 15 validate = _validate 12 16 const id = 'com.atproto.repo.getRecord' 13 17 14 - export interface QueryParams { 18 + export type QueryParams = { 15 19 /** The handle or DID of the repo. */ 16 20 repo: string 17 21 /** The NSID of the record collection. */ ··· 21 25 /** The CID of the version of the record. If not specified, then return the most recent version. */ 22 26 cid?: string 23 27 } 24 - 25 28 export type InputSchema = undefined 26 29 27 30 export interface OutputSchema {
+7 -4
lexicons/api/types/com/atproto/repo/importRepo.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 10 14 const is$typed = _is$typed, 11 15 validate = _validate 12 16 const id = 'com.atproto.repo.importRepo' 13 17 14 - export interface QueryParams {} 15 - 18 + export type QueryParams = {} 16 19 export type InputSchema = string | Uint8Array | Blob 17 20 18 21 export interface CallOptions {
+7 -4
lexicons/api/types/com/atproto/repo/listMissingBlobs.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 10 14 const is$typed = _is$typed, 11 15 validate = _validate 12 16 const id = 'com.atproto.repo.listMissingBlobs' 13 17 14 - export interface QueryParams { 18 + export type QueryParams = { 15 19 limit?: number 16 20 cursor?: string 17 21 } 18 - 19 22 export type InputSchema = undefined 20 23 21 24 export interface OutputSchema {
+7 -4
lexicons/api/types/com/atproto/repo/listRecords.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 10 14 const is$typed = _is$typed, 11 15 validate = _validate 12 16 const id = 'com.atproto.repo.listRecords' 13 17 14 - export interface QueryParams { 18 + export type QueryParams = { 15 19 /** The handle or DID of the repo. */ 16 20 repo: string 17 21 /** The NSID of the record type. */ ··· 26 30 /** Flag to reverse the order of the returned records. */ 27 31 reverse?: boolean 28 32 } 29 - 30 33 export type InputSchema = undefined 31 34 32 35 export interface OutputSchema {
+7 -3
lexicons/api/types/com/atproto/repo/putRecord.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 import type * as ComAtprotoRepoDefs from './defs' 10 14 11 15 const is$typed = _is$typed, 12 16 validate = _validate 13 17 const id = 'com.atproto.repo.putRecord' 14 18 15 - export interface QueryParams {} 19 + export type QueryParams = {} 16 20 17 21 export interface InputSchema { 18 22 /** The handle or DID of the repo (aka, current account). */
+6 -2
lexicons/api/types/com/atproto/repo/strongRef.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+7 -4
lexicons/api/types/com/atproto/repo/uploadBlob.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 import { HeadersMap, XRPCError } from '@atproto/xrpc' 5 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 5 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 6 6 import { CID } from 'multiformats/cid' 7 7 import { validate as _validate } from '../../../../lexicons' 8 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 8 + import { 9 + type $Typed, 10 + is$typed as _is$typed, 11 + type OmitKey, 12 + } from '../../../../util' 9 13 10 14 const is$typed = _is$typed, 11 15 validate = _validate 12 16 const id = 'com.atproto.repo.uploadBlob' 13 17 14 - export interface QueryParams {} 15 - 18 + export type QueryParams = {} 16 19 export type InputSchema = string | Uint8Array | Blob 17 20 18 21 export interface OutputSchema {
+6 -2
lexicons/api/types/pub/leaflet/blocks/blockquote.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 import type * as PubLeafletRichtextFacet from '../richtext/facet' 9 13 10 14 const is$typed = _is$typed,
+6 -2
lexicons/api/types/pub/leaflet/blocks/bskyPost.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 import type * as ComAtprotoRepoStrongRef from '../../../com/atproto/repo/strongRef' 9 13 10 14 const is$typed = _is$typed,
+6 -2
lexicons/api/types/pub/leaflet/blocks/code.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+6 -2
lexicons/api/types/pub/leaflet/blocks/header.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 import type * as PubLeafletRichtextFacet from '../richtext/facet' 9 13 10 14 const is$typed = _is$typed,
+6 -2
lexicons/api/types/pub/leaflet/blocks/horizontalRule.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+6 -2
lexicons/api/types/pub/leaflet/blocks/iframe.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+6 -2
lexicons/api/types/pub/leaflet/blocks/image.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+6 -2
lexicons/api/types/pub/leaflet/blocks/math.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+6 -2
lexicons/api/types/pub/leaflet/blocks/text.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 import type * as PubLeafletRichtextFacet from '../richtext/facet' 9 13 10 14 const is$typed = _is$typed,
+6 -2
lexicons/api/types/pub/leaflet/blocks/unorderedList.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 import type * as PubLeafletBlocksText from './text' 9 13 import type * as PubLeafletBlocksHeader from './header' 10 14 import type * as PubLeafletBlocksImage from './image'
+6 -2
lexicons/api/types/pub/leaflet/blocks/website.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+2 -2
lexicons/api/types/pub/leaflet/comment.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../util' 7 + import { type $Typed, is$typed as _is$typed, type OmitKey } from '../../../util' 8 8 import type * as PubLeafletRichtextFacet from './richtext/facet' 9 9 import type * as PubLeafletPagesLinearDocument from './pages/linearDocument' 10 10
+2 -2
lexicons/api/types/pub/leaflet/document.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../util' 7 + import { type $Typed, is$typed as _is$typed, type OmitKey } from '../../../util' 8 8 import type * as ComAtprotoRepoStrongRef from '../../com/atproto/repo/strongRef' 9 9 import type * as PubLeafletPagesLinearDocument from './pages/linearDocument' 10 10
+6 -2
lexicons/api/types/pub/leaflet/graph/subscription.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+6 -2
lexicons/api/types/pub/leaflet/pages/linearDocument.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 import type * as PubLeafletBlocksIframe from '../blocks/iframe' 9 13 import type * as PubLeafletBlocksText from '../blocks/text' 10 14 import type * as PubLeafletBlocksBlockquote from '../blocks/blockquote'
+2 -2
lexicons/api/types/pub/leaflet/publication.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../util' 7 + import { type $Typed, is$typed as _is$typed, type OmitKey } from '../../../util' 8 8 import type * as PubLeafletThemeColor from './theme/color' 9 9 import type * as PubLeafletThemeBackgroundImage from './theme/backgroundImage' 10 10
+6 -2
lexicons/api/types/pub/leaflet/richtext/facet.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+6 -2
lexicons/api/types/pub/leaflet/theme/backgroundImage.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+6 -2
lexicons/api/types/pub/leaflet/theme/color.ts
··· 1 1 /** 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 - import { ValidationResult, BlobRef } from '@atproto/lexicon' 4 + import { type ValidationResult, BlobRef } from '@atproto/lexicon' 5 5 import { CID } from 'multiformats/cid' 6 6 import { validate as _validate } from '../../../../lexicons' 7 - import { $Typed, is$typed as _is$typed, OmitKey } from '../../../../util' 7 + import { 8 + type $Typed, 9 + is$typed as _is$typed, 10 + type OmitKey, 11 + } from '../../../../util' 8 12 9 13 const is$typed = _is$typed, 10 14 validate = _validate
+1 -1
lexicons/api/util.ts
··· 2 2 * GENERATED CODE - DO NOT MODIFY 3 3 */ 4 4 5 - import { ValidationResult } from '@atproto/lexicon' 5 + import { type ValidationResult } from '@atproto/lexicon' 6 6 7 7 export type OmitKey<T, K extends keyof T> = { 8 8 [K2 in keyof T as K2 extends K ? never : K2]: T[K2]
+106 -41
package-lock.json
··· 83 83 "zustand": "^5.0.4" 84 84 }, 85 85 "devDependencies": { 86 - "@atproto/lex-cli": "^0.6.1", 86 + "@atproto/lex-cli": "^0.9.5", 87 87 "@atproto/lexicon": "^0.4.7", 88 88 "@cloudflare/workers-types": "^4.20240512.0", 89 89 "@types/katex": "^0.16.7", ··· 369 369 "license": "(Apache-2.0 AND MIT)" 370 370 }, 371 371 "node_modules/@atproto/lex-cli": { 372 - "version": "0.6.2", 373 - "resolved": "https://registry.npmjs.org/@atproto/lex-cli/-/lex-cli-0.6.2.tgz", 374 - "integrity": "sha512-YbypfXBOYdZQATgQRRMpTwcG42/JmRs3iYnN6hQH4ljjn+t5nbDtdZjUF5okiWI7LK+yvOrgagxosIAjjjSe8Q==", 372 + "version": "0.9.5", 373 + "resolved": "https://registry.npmjs.org/@atproto/lex-cli/-/lex-cli-0.9.5.tgz", 374 + "integrity": "sha512-zun4jhD1dbjD7IHtLIjh/1UsMx+6E8+OyOT2GXYAKIj9N6wmLKM/v2OeQBKxcyqUmtRi57lxWnGikWjjU7pplQ==", 375 375 "dev": true, 376 376 "license": "MIT", 377 377 "dependencies": { 378 - "@atproto/lexicon": "^0.4.8", 379 - "@atproto/syntax": "^0.3.4", 378 + "@atproto/lexicon": "^0.5.1", 379 + "@atproto/syntax": "^0.4.1", 380 380 "chalk": "^4.1.2", 381 381 "commander": "^9.4.0", 382 382 "prettier": "^3.2.5", 383 - "ts-morph": "^16.0.0", 383 + "ts-morph": "^24.0.0", 384 384 "yesno": "^0.4.0", 385 385 "zod": "^3.23.8" 386 386 }, ··· 390 390 "engines": { 391 391 "node": ">=18.7.0" 392 392 } 393 + }, 394 + "node_modules/@atproto/lex-cli/node_modules/@atproto/lexicon": { 395 + "version": "0.5.1", 396 + "resolved": "https://registry.npmjs.org/@atproto/lexicon/-/lexicon-0.5.1.tgz", 397 + "integrity": "sha512-y8AEtYmfgVl4fqFxqXAeGvhesiGkxiy3CWoJIfsFDDdTlZUC8DFnZrYhcqkIop3OlCkkljvpSJi1hbeC1tbi8A==", 398 + "dev": true, 399 + "license": "MIT", 400 + "dependencies": { 401 + "@atproto/common-web": "^0.4.3", 402 + "@atproto/syntax": "^0.4.1", 403 + "iso-datestring-validator": "^2.2.2", 404 + "multiformats": "^9.9.0", 405 + "zod": "^3.23.8" 406 + } 407 + }, 408 + "node_modules/@atproto/lex-cli/node_modules/@atproto/syntax": { 409 + "version": "0.4.1", 410 + "resolved": "https://registry.npmjs.org/@atproto/syntax/-/syntax-0.4.1.tgz", 411 + "integrity": "sha512-CJdImtLAiFO+0z3BWTtxwk6aY5w4t8orHTMVJgkf++QRJWTxPbIFko/0hrkADB7n2EruDxDSeAgfUGehpH6ngw==", 412 + "dev": true, 413 + "license": "MIT" 414 + }, 415 + "node_modules/@atproto/lex-cli/node_modules/multiformats": { 416 + "version": "9.9.0", 417 + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", 418 + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==", 419 + "dev": true, 420 + "license": "(Apache-2.0 AND MIT)" 393 421 }, 394 422 "node_modules/@atproto/lexicon": { 395 423 "version": "0.4.14", ··· 6002 6030 } 6003 6031 }, 6004 6032 "node_modules/@ts-morph/common": { 6005 - "version": "0.17.0", 6006 - "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.17.0.tgz", 6007 - "integrity": "sha512-RMSSvSfs9kb0VzkvQ2NWobwnj7TxCA9vI/IjR9bDHqgAyVbu2T0DN4wiKVqomyDWqO7dPr/tErSfq7urQ1Q37g==", 6033 + "version": "0.25.0", 6034 + "resolved": "https://registry.npmjs.org/@ts-morph/common/-/common-0.25.0.tgz", 6035 + "integrity": "sha512-kMnZz+vGGHi4GoHnLmMhGNjm44kGtKUXGnOvrKmMwAuvNjM/PgKVGfUnL7IDvK7Jb2QQ82jq3Zmp04Gy+r3Dkg==", 6008 6036 "dev": true, 6009 6037 "license": "MIT", 6010 6038 "dependencies": { 6011 - "fast-glob": "^3.2.11", 6012 - "minimatch": "^5.1.0", 6013 - "mkdirp": "^1.0.4", 6014 - "path-browserify": "^1.0.1" 6039 + "minimatch": "^9.0.4", 6040 + "path-browserify": "^1.0.1", 6041 + "tinyglobby": "^0.2.9" 6015 6042 } 6016 6043 }, 6017 6044 "node_modules/@ts-morph/common/node_modules/brace-expansion": { 6018 - "version": "2.0.1", 6019 - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", 6020 - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", 6045 + "version": "2.0.2", 6046 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 6047 + "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 6021 6048 "dev": true, 6022 6049 "license": "MIT", 6023 6050 "dependencies": { ··· 6025 6052 } 6026 6053 }, 6027 6054 "node_modules/@ts-morph/common/node_modules/minimatch": { 6028 - "version": "5.1.6", 6029 - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", 6030 - "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", 6055 + "version": "9.0.5", 6056 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 6057 + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 6031 6058 "dev": true, 6032 6059 "license": "ISC", 6033 6060 "dependencies": { 6034 6061 "brace-expansion": "^2.0.1" 6035 6062 }, 6036 6063 "engines": { 6037 - "node": ">=10" 6038 - } 6039 - }, 6040 - "node_modules/@ts-morph/common/node_modules/mkdirp": { 6041 - "version": "1.0.4", 6042 - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", 6043 - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", 6044 - "dev": true, 6045 - "license": "MIT", 6046 - "bin": { 6047 - "mkdirp": "bin/cmd.js" 6064 + "node": ">=16 || 14 >=14.17" 6048 6065 }, 6049 - "engines": { 6050 - "node": ">=10" 6066 + "funding": { 6067 + "url": "https://github.com/sponsors/isaacs" 6051 6068 } 6052 6069 }, 6053 6070 "node_modules/@types/acorn": { ··· 7599 7616 } 7600 7617 }, 7601 7618 "node_modules/code-block-writer": { 7602 - "version": "11.0.3", 7603 - "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-11.0.3.tgz", 7604 - "integrity": "sha512-NiujjUFB4SwScJq2bwbYUtXbZhBSlY6vYzm++3Q6oC+U+injTqfPYFK8wS9COOmb2lueqp0ZRB4nK1VYeHgNyw==", 7619 + "version": "13.0.3", 7620 + "resolved": "https://registry.npmjs.org/code-block-writer/-/code-block-writer-13.0.3.tgz", 7621 + "integrity": "sha512-Oofo0pq3IKnsFtuHqSF7TqBfr71aeyZDVJ0HpmqB7FBM2qEigL0iPONSCZSO9pE9dZTAxANe5XHG9Uy0YMv8cg==", 7605 7622 "dev": true, 7606 7623 "license": "MIT" 7607 7624 }, ··· 16427 16444 "next-tick": "1" 16428 16445 } 16429 16446 }, 16447 + "node_modules/tinyglobby": { 16448 + "version": "0.2.15", 16449 + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", 16450 + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", 16451 + "dev": true, 16452 + "license": "MIT", 16453 + "dependencies": { 16454 + "fdir": "^6.5.0", 16455 + "picomatch": "^4.0.3" 16456 + }, 16457 + "engines": { 16458 + "node": ">=12.0.0" 16459 + }, 16460 + "funding": { 16461 + "url": "https://github.com/sponsors/SuperchupuDev" 16462 + } 16463 + }, 16464 + "node_modules/tinyglobby/node_modules/fdir": { 16465 + "version": "6.5.0", 16466 + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", 16467 + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", 16468 + "dev": true, 16469 + "license": "MIT", 16470 + "engines": { 16471 + "node": ">=12.0.0" 16472 + }, 16473 + "peerDependencies": { 16474 + "picomatch": "^3 || ^4" 16475 + }, 16476 + "peerDependenciesMeta": { 16477 + "picomatch": { 16478 + "optional": true 16479 + } 16480 + } 16481 + }, 16482 + "node_modules/tinyglobby/node_modules/picomatch": { 16483 + "version": "4.0.3", 16484 + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", 16485 + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", 16486 + "dev": true, 16487 + "license": "MIT", 16488 + "engines": { 16489 + "node": ">=12" 16490 + }, 16491 + "funding": { 16492 + "url": "https://github.com/sponsors/jonschlinkert" 16493 + } 16494 + }, 16430 16495 "node_modules/tlds": { 16431 16496 "version": "1.256.0", 16432 16497 "resolved": "https://registry.npmjs.org/tlds/-/tlds-1.256.0.tgz", ··· 16525 16590 "dev": true 16526 16591 }, 16527 16592 "node_modules/ts-morph": { 16528 - "version": "16.0.0", 16529 - "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-16.0.0.tgz", 16530 - "integrity": "sha512-jGNF0GVpFj0orFw55LTsQxVYEUOCWBAbR5Ls7fTYE5pQsbW18ssTb/6UXx/GYAEjS+DQTp8VoTw0vqYMiaaQuw==", 16593 + "version": "24.0.0", 16594 + "resolved": "https://registry.npmjs.org/ts-morph/-/ts-morph-24.0.0.tgz", 16595 + "integrity": "sha512-2OAOg/Ob5yx9Et7ZX4CvTCc0UFoZHwLEJ+dpDPSUi5TgwwlTlX47w+iFRrEwzUZwYACjq83cgjS/Da50Ga37uw==", 16531 16596 "dev": true, 16532 16597 "license": "MIT", 16533 16598 "dependencies": { 16534 - "@ts-morph/common": "~0.17.0", 16535 - "code-block-writer": "^11.0.3" 16599 + "@ts-morph/common": "~0.25.0", 16600 + "code-block-writer": "^13.0.3" 16536 16601 } 16537 16602 }, 16538 16603 "node_modules/tsconfig-paths": {
+1 -1
package.json
··· 93 93 "zustand": "^5.0.4" 94 94 }, 95 95 "devDependencies": { 96 - "@atproto/lex-cli": "^0.6.1", 96 + "@atproto/lex-cli": "^0.9.5", 97 97 "@atproto/lexicon": "^0.4.7", 98 98 "@cloudflare/workers-types": "^4.20240512.0", 99 99 "@types/katex": "^0.16.7",