diff --git a/src/state/index.ts b/src/state/index.ts index 87047721..78c14714 100644 --- a/src/state/index.ts +++ b/src/state/index.ts @@ -1,11 +1,8 @@ import {autorun} from 'mobx' -import AtpApi from '../third-party/api' +import {sessionClient as AtpApi} from '../third-party/api' import {RootStoreModel} from './models/root-store' import * as libapi from './lib/api' import * as storage from './lib/storage' -// import * as auth from './auth' TODO - -import {ShellModel} from './models/shell' const ROOT_STATE_STORAGE_KEY = 'root' const DEFAULT_SERVICE = 'http://localhost:2583' diff --git a/src/state/lib/api.ts b/src/state/lib/api.ts index ee79248c..3d2d26a5 100644 --- a/src/state/lib/api.ts +++ b/src/state/lib/api.ts @@ -4,9 +4,9 @@ */ // import {ReactNativeStore} from './auth' -import AtpApi from '../../third-party/api' -import * as Profile from '../../third-party/api/src/types/app/bsky/profile' -import * as Post from '../../third-party/api/src/types/app/bsky/post' +import {sessionClient as AtpApi} from '../../third-party/api' +import * as Profile from '../../third-party/api/src/client/types/app/bsky/actor/profile' +import * as Post from '../../third-party/api/src/client/types/app/bsky/feed/post' import {AtUri} from '../../third-party/uri' import {RootStoreModel} from '../models/root-store' import {extractEntities} from '../../view/lib/strings' @@ -23,7 +23,7 @@ export async function post( let reply if (replyTo) { const replyToUrip = new AtUri(replyTo.uri) - const parentPost = await store.api.app.bsky.post.get({ + const parentPost = await store.api.app.bsky.feed.post.get({ user: replyToUrip.host, rkey: replyToUrip.rkey, }) @@ -39,7 +39,7 @@ export async function post( } } const entities = extractEntities(text) - return await store.api.app.bsky.post.create( + return await store.api.app.bsky.feed.post.create( {did: store.me.did || ''}, { text, @@ -51,7 +51,7 @@ export async function post( } export async function like(store: RootStoreModel, uri: string, cid: string) { - return await store.api.app.bsky.like.create( + return await store.api.app.bsky.feed.like.create( {did: store.me.did || ''}, { subject: {uri, cid}, @@ -62,14 +62,14 @@ export async function like(store: RootStoreModel, uri: string, cid: string) { export async function unlike(store: RootStoreModel, likeUri: string) { const likeUrip = new AtUri(likeUri) - return await store.api.app.bsky.like.delete({ + return await store.api.app.bsky.feed.like.delete({ did: likeUrip.hostname, rkey: likeUrip.rkey, }) } export async function repost(store: RootStoreModel, uri: string, cid: string) { - return await store.api.app.bsky.repost.create( + return await store.api.app.bsky.feed.repost.create( {did: store.me.did || ''}, { subject: {uri, cid}, @@ -80,14 +80,15 @@ export async function repost(store: RootStoreModel, uri: string, cid: string) { export async function unrepost(store: RootStoreModel, repostUri: string) { const repostUrip = new AtUri(repostUri) - return await store.api.app.bsky.repost.delete({ + return await store.api.app.bsky.feed.repost.delete({ did: repostUrip.hostname, rkey: repostUrip.rkey, }) } export async function follow(store: RootStoreModel, subject: string) { - return await store.api.app.bsky.follow.create( + // TODO NOW needs update + return await store.api.app.bsky.graph.follow.create( {did: store.me.did || ''}, { subject, @@ -98,7 +99,7 @@ export async function follow(store: RootStoreModel, subject: string) { export async function unfollow(store: RootStoreModel, followUri: string) { const followUrip = new AtUri(followUri) - return await store.api.app.bsky.follow.delete({ + return await store.api.app.bsky.graph.follow.delete({ did: followUrip.hostname, rkey: followUrip.rkey, }) @@ -108,13 +109,13 @@ export async function updateProfile( store: RootStoreModel, modifyFn: (existing?: Profile.Record) => Profile.Record, ) { - // TODO: replaceme - const res = await store.api.app.bsky.profile.list({ + // TODO NOW replaceme + const res = await store.api.app.bsky.actor.profile.list({ user: store.me.did || '', }) const existing = res.records[0] if (existing) { - await store.api.app.bsky.profile.put( + await store.api.app.bsky.actor.profile.put( { did: store.me.did || '', rkey: new AtUri(existing.uri).rkey, @@ -122,7 +123,7 @@ export async function updateProfile( modifyFn(existing.value), ) } else { - await store.api.app.bsky.profile.create( + await store.api.app.bsky.actor.profile.create( { did: store.me.did || '', }, diff --git a/src/state/models/badges-view.ts b/src/state/models/badges-view.ts deleted file mode 100644 index 644ec7d9..00000000 --- a/src/state/models/badges-view.ts +++ /dev/null @@ -1,49 +0,0 @@ -import {makeAutoObservable} from 'mobx' -import {RootStoreModel} from './root-store' - -// TODO / DEBUG -// this is a temporary fake for the model until the view actually gets implemented in the bsky api -// -prf - -export class BadgesViewModel { - // state - isLoading = false - isRefreshing = false - hasLoaded = false - error = '' - - constructor(public rootStore: RootStoreModel) { - makeAutoObservable( - this, - { - rootStore: false, - }, - {autoBind: true}, - ) - } - - get hasContent() { - return false - } - - get hasError() { - return this.error !== '' - } - - get isEmpty() { - return this.hasLoaded && !this.hasContent - } - - // public api - // = - - async setup() { - this.hasLoaded = true - } - - async refresh() {} - - async loadMore() {} - - async update() {} -} diff --git a/src/state/models/feed-view.ts b/src/state/models/feed-view.ts index 4b2fa9a5..9505ad55 100644 --- a/src/state/models/feed-view.ts +++ b/src/state/models/feed-view.ts @@ -1,6 +1,6 @@ import {makeAutoObservable, runInAction} from 'mobx' -import * as GetHomeFeed from '../../third-party/api/src/types/app/bsky/getHomeFeed' -import * as GetAuthorFeed from '../../third-party/api/src/types/app/bsky/getAuthorFeed' +import * as GetTimeline from '../../third-party/api/src/client/types/app/bsky/feed/getTimeline' +import * as GetAuthorFeed from '../../third-party/api/src/client/types/app/bsky/feed/getAuthorFeed' import {RootStoreModel} from './root-store' import * as apilib from '../lib/api' @@ -13,20 +13,20 @@ export class FeedItemMyStateModel { } } -export class FeedItemModel implements GetHomeFeed.FeedItem { +export class FeedItemModel implements GetTimeline.FeedItem { // ui state _reactKey: string = '' // data uri: string = '' cid: string = '' - author: GetHomeFeed.User = {did: '', name: '', displayName: ''} - repostedBy?: GetHomeFeed.User + author: GetTimeline.User = {did: '', handle: '', displayName: ''} + repostedBy?: GetTimeline.User record: Record = {} embed?: - | GetHomeFeed.RecordEmbed - | GetHomeFeed.ExternalEmbed - | GetHomeFeed.UnknownEmbed + | GetTimeline.RecordEmbed + | GetTimeline.ExternalEmbed + | GetTimeline.UnknownEmbed replyCount: number = 0 repostCount: number = 0 likeCount: number = 0 @@ -36,14 +36,14 @@ export class FeedItemModel implements GetHomeFeed.FeedItem { constructor( public rootStore: RootStoreModel, reactKey: string, - v: GetHomeFeed.FeedItem | GetAuthorFeed.FeedItem, + v: GetTimeline.FeedItem | GetAuthorFeed.FeedItem, ) { makeAutoObservable(this, {rootStore: false}) this._reactKey = reactKey this.copy(v) } - copy(v: GetHomeFeed.FeedItem | GetAuthorFeed.FeedItem) { + copy(v: GetTimeline.FeedItem | GetAuthorFeed.FeedItem) { this.uri = v.uri this.cid = v.cid this.author = v.author @@ -100,7 +100,7 @@ export class FeedModel { hasLoaded = false hasReachedEnd = false error = '' - params: GetHomeFeed.QueryParams | GetAuthorFeed.QueryParams + params: GetTimeline.QueryParams | GetAuthorFeed.QueryParams loadMoreCursor: string | undefined _loadPromise: Promise | undefined _loadMorePromise: Promise | undefined @@ -113,7 +113,7 @@ export class FeedModel { constructor( public rootStore: RootStoreModel, public feedType: 'home' | 'author', - params: GetHomeFeed.QueryParams | GetAuthorFeed.QueryParams, + params: GetTimeline.QueryParams | GetAuthorFeed.QueryParams, ) { makeAutoObservable( this, @@ -286,7 +286,7 @@ export class FeedModel { let cursor = undefined try { do { - const res: GetHomeFeed.Response = await this._getFeed({ + const res: GetTimeline.Response = await this._getFeed({ before: cursor, limit: Math.min(numToFetch, 100), }) @@ -304,13 +304,13 @@ export class FeedModel { } } - private _replaceAll(res: GetHomeFeed.Response | GetAuthorFeed.Response) { + private _replaceAll(res: GetTimeline.Response | GetAuthorFeed.Response) { this.feed.length = 0 this.hasReachedEnd = false this._appendAll(res) } - private _appendAll(res: GetHomeFeed.Response | GetAuthorFeed.Response) { + private _appendAll(res: GetTimeline.Response | GetAuthorFeed.Response) { this.loadMoreCursor = res.data.cursor let counter = this.feed.length for (const item of res.data.feed) { @@ -320,13 +320,13 @@ export class FeedModel { private _append( keyId: number, - item: GetHomeFeed.FeedItem | GetAuthorFeed.FeedItem, + item: GetTimeline.FeedItem | GetAuthorFeed.FeedItem, ) { // TODO: validate .record this.feed.push(new FeedItemModel(this.rootStore, `item-${keyId}`, item)) } - private _prependAll(res: GetHomeFeed.Response | GetAuthorFeed.Response) { + private _prependAll(res: GetTimeline.Response | GetAuthorFeed.Response) { let counter = this.feed.length for (const item of res.data.feed) { if (this.feed.find(item2 => item2.uri === item.uri)) { @@ -338,13 +338,13 @@ export class FeedModel { private _prepend( keyId: number, - item: GetHomeFeed.FeedItem | GetAuthorFeed.FeedItem, + item: GetTimeline.FeedItem | GetAuthorFeed.FeedItem, ) { // TODO: validate .record this.feed.unshift(new FeedItemModel(this.rootStore, `item-${keyId}`, item)) } - private _updateAll(res: GetHomeFeed.Response | GetAuthorFeed.Response) { + private _updateAll(res: GetTimeline.Response | GetAuthorFeed.Response) { for (const item of res.data.feed) { const existingItem = this.feed.find( // this find function has a key subtley- the indexedAt comparison @@ -359,15 +359,15 @@ export class FeedModel { } protected _getFeed( - params: GetHomeFeed.QueryParams | GetAuthorFeed.QueryParams = {}, - ): Promise { + params: GetTimeline.QueryParams | GetAuthorFeed.QueryParams = {}, + ): Promise { params = Object.assign({}, this.params, params) if (this.feedType === 'home') { - return this.rootStore.api.app.bsky.getHomeFeed( - params as GetHomeFeed.QueryParams, + return this.rootStore.api.app.bsky.feed.getTimeline( + params as GetTimeline.QueryParams, ) } else { - return this.rootStore.api.app.bsky.getAuthorFeed( + return this.rootStore.api.app.bsky.feed.getAuthorFeed( params as GetAuthorFeed.QueryParams, ) } diff --git a/src/state/models/liked-by-view.ts b/src/state/models/liked-by-view.ts index c2256e95..facda903 100644 --- a/src/state/models/liked-by-view.ts +++ b/src/state/models/liked-by-view.ts @@ -1,6 +1,6 @@ import {makeAutoObservable, runInAction} from 'mobx' import {AtUri} from '../../third-party/uri' -import * as GetLikedBy from '../../third-party/api/src/types/app/bsky/getLikedBy' +import * as GetLikedBy from '../../third-party/api/src/client/types/app/bsky/feed/getLikedBy' import {RootStoreModel} from './root-store' type LikedByItem = GetLikedBy.OutputSchema['likedBy'][number] @@ -11,7 +11,7 @@ export class LikedByViewItemModel implements LikedByItem { // data did: string = '' - name: string = '' + handle: string = '' displayName: string = '' createdAt?: string indexedAt: string = '' @@ -113,7 +113,7 @@ export class LikedByViewModel { private async _fetch(isRefreshing = false) { this._xLoading(isRefreshing) try { - const res = await this.rootStore.api.app.bsky.getLikedBy( + const res = await this.rootStore.api.app.bsky.feed.getLikedBy( Object.assign({}, this.params, {uri: this.resolvedUri}), ) this._replaceAll(res) diff --git a/src/state/models/me.ts b/src/state/models/me.ts index 333cf562..7a94d63a 100644 --- a/src/state/models/me.ts +++ b/src/state/models/me.ts @@ -3,7 +3,7 @@ import {RootStoreModel} from './root-store' export class MeModel { did?: string - name?: string + handle?: string displayName?: string description?: string notificationCount: number = 0 @@ -14,7 +14,7 @@ export class MeModel { clear() { this.did = undefined - this.name = undefined + this.handle = undefined this.displayName = undefined this.description = undefined this.notificationCount = 0 @@ -23,9 +23,9 @@ export class MeModel { async load() { const sess = this.rootStore.session if (sess.isAuthed && sess.data) { - this.did = sess.data.userdid || '' - this.name = sess.data.username - const profile = await this.rootStore.api.app.bsky.getProfile({ + this.did = sess.data.did || '' + this.handle = sess.data.handle + const profile = await this.rootStore.api.app.bsky.actor.getProfile({ user: this.did, }) runInAction(() => { @@ -43,7 +43,7 @@ export class MeModel { } async fetchStateUpdate() { - const res = await this.rootStore.api.app.bsky.getNotificationCount({}) + const res = await this.rootStore.api.app.bsky.notification.getCount() runInAction(() => { this.notificationCount = res.data.count }) diff --git a/src/state/models/notifications-view.ts b/src/state/models/notifications-view.ts index 8dd1cdf1..8d8eede0 100644 --- a/src/state/models/notifications-view.ts +++ b/src/state/models/notifications-view.ts @@ -1,10 +1,10 @@ import {makeAutoObservable} from 'mobx' -import * as GetNotifications from '../../third-party/api/src/types/app/bsky/getNotifications' +import * as ListNotifications from '../../third-party/api/src/client/types/app/bsky/notification/list' import {RootStoreModel} from './root-store' import {hasProp} from '../lib/type-guards' -export interface GroupedNotification extends GetNotifications.Notification { - additional?: GetNotifications.Notification[] +export interface GroupedNotification extends ListNotifications.Notification { + additional?: ListNotifications.Notification[] } export class NotificationsViewItemModel implements GroupedNotification { @@ -16,9 +16,9 @@ export class NotificationsViewItemModel implements GroupedNotification { cid: string = '' author: { did: string - name: string + handle: string displayName?: string - } = {did: '', name: ''} + } = {did: '', handle: ''} reason: string = '' reasonSubject?: string record: any = {} @@ -93,7 +93,7 @@ export class NotificationsViewModel { isRefreshing = false hasLoaded = false error = '' - params: GetNotifications.QueryParams + params: ListNotifications.QueryParams loadMoreCursor?: string _loadPromise: Promise | undefined _loadMorePromise: Promise | undefined @@ -104,7 +104,7 @@ export class NotificationsViewModel { constructor( public rootStore: RootStoreModel, - params: GetNotifications.QueryParams, + params: ListNotifications.QueryParams, ) { makeAutoObservable( this, @@ -216,7 +216,7 @@ export class NotificationsViewModel { private async _initialLoad(isRefreshing = false) { this._xLoading(isRefreshing) try { - const res = await this.rootStore.api.app.bsky.getNotifications( + const res = await this.rootStore.api.app.bsky.notification.list( this.params, ) this._replaceAll(res) @@ -232,7 +232,7 @@ export class NotificationsViewModel { const params = Object.assign({}, this.params, { before: this.loadMoreCursor, }) - const res = await this.rootStore.api.app.bsky.getNotifications(params) + const res = await this.rootStore.api.app.bsky.notification.list(params) this._appendAll(res) this._xIdle() } catch (e: any) { @@ -246,8 +246,8 @@ export class NotificationsViewModel { let cursor = undefined try { do { - const res: GetNotifications.Response = - await this.rootStore.api.app.bsky.getNotifications({ + const res: ListNotifications.Response = + await this.rootStore.api.app.bsky.notification.list({ before: cursor, limit: Math.min(numToFetch, 100), }) @@ -265,12 +265,12 @@ export class NotificationsViewModel { } } - private _replaceAll(res: GetNotifications.Response) { + private _replaceAll(res: ListNotifications.Response) { this.notifications.length = 0 this._appendAll(res) } - private _appendAll(res: GetNotifications.Response) { + private _appendAll(res: ListNotifications.Response) { this.loadMoreCursor = res.data.cursor let counter = this.notifications.length for (const item of groupNotifications(res.data.notifications)) { @@ -285,7 +285,7 @@ export class NotificationsViewModel { ) } - private _updateAll(res: GetNotifications.Response) { + private _updateAll(res: ListNotifications.Response) { for (const item of res.data.notifications) { const existingItem = this.notifications.find( // this find function has a key subtlety- the indexedAt comparison @@ -301,10 +301,9 @@ export class NotificationsViewModel { private async _updateReadState() { try { - await this.rootStore.api.app.bsky.postNotificationsSeen( - {}, - {seenAt: new Date().toISOString()}, - ) + await this.rootStore.api.app.bsky.notification.updateSeen({ + seenAt: new Date().toISOString(), + }) } catch (e) { console.log('Failed to update notifications read state', e) } @@ -312,7 +311,7 @@ export class NotificationsViewModel { } function groupNotifications( - items: GetNotifications.Notification[], + items: ListNotifications.Notification[], ): GroupedNotification[] { const items2: GroupedNotification[] = [] for (const item of items) { diff --git a/src/state/models/post-thread-view.ts b/src/state/models/post-thread-view.ts index 72e9513a..0fc0dadb 100644 --- a/src/state/models/post-thread-view.ts +++ b/src/state/models/post-thread-view.ts @@ -1,5 +1,5 @@ import {makeAutoObservable, runInAction} from 'mobx' -import * as GetPostThread from '../../third-party/api/src/types/app/bsky/getPostThread' +import * as GetPostThread from '../../third-party/api/src/client/types/app/bsky/feed/getPostThread' import {AtUri} from '../../third-party/uri' import _omit from 'lodash.omit' import {RootStoreModel} from './root-store' @@ -30,7 +30,7 @@ export class PostThreadViewPostModel implements GetPostThread.Post { // data uri: string = '' cid: string = '' - author: GetPostThread.User = {did: '', name: '', displayName: ''} + author: GetPostThread.User = {did: '', handle: '', displayName: ''} record: Record = {} embed?: | GetPostThread.RecordEmbed @@ -82,8 +82,8 @@ export class PostThreadViewPostModel implements GetPostThread.Post { } this.parent = parentModel } - if (v.parent?.author.name) { - this.replyingToAuthor = v.parent.author.name + if (v.parent?.author.handle) { + this.replyingToAuthor = v.parent.author.handle } // replies if (includeChildren && v.replies) { @@ -239,7 +239,7 @@ export class PostThreadViewModel { private async _load(isRefreshing = false) { this._xLoading(isRefreshing) try { - const res = await this.rootStore.api.app.bsky.getPostThread( + const res = await this.rootStore.api.app.bsky.feed.getPostThread( Object.assign({}, this.params, {uri: this.resolvedUri}), ) this._replaceAll(res) diff --git a/src/state/models/post.ts b/src/state/models/post.ts index 12a554f5..7ecd6228 100644 --- a/src/state/models/post.ts +++ b/src/state/models/post.ts @@ -1,5 +1,5 @@ import {makeAutoObservable} from 'mobx' -import * as Post from '../../third-party/api/src/types/app/bsky/post' +import * as Post from '../../third-party/api/src/client/types/app/bsky/feed/post' import {AtUri} from '../../third-party/uri' import {RootStoreModel} from './root-store' @@ -77,7 +77,7 @@ export class PostModel implements RemoveIndex { this._xLoading() try { const urip = new AtUri(this.uri) - const res = await this.rootStore.api.app.bsky.post.get({ + const res = await this.rootStore.api.app.bsky.feed.post.get({ user: urip.host, rkey: urip.rkey, }) diff --git a/src/state/models/profile-ui.ts b/src/state/models/profile-ui.ts index cd29c35d..830dc22b 100644 --- a/src/state/models/profile-ui.ts +++ b/src/state/models/profile-ui.ts @@ -2,7 +2,6 @@ import {makeAutoObservable} from 'mobx' import {RootStoreModel} from './root-store' import {ProfileViewModel} from './profile-view' import {FeedModel} from './feed-view' -import {BadgesViewModel} from './badges-view' export const SECTION_IDS = { POSTS: 0, @@ -20,7 +19,6 @@ export class ProfileUiModel { // data profile: ProfileViewModel feed: FeedModel - badges: BadgesViewModel // ui state selectedViewIndex = 0 @@ -42,16 +40,12 @@ export class ProfileUiModel { author: params.user, limit: 10, }) - this.badges = new BadgesViewModel(rootStore) } - get currentView(): FeedModel | BadgesViewModel { + get currentView(): FeedModel { if (this.selectedViewIndex === SECTION_IDS.POSTS) { return this.feed } - if (this.selectedViewIndex === SECTION_IDS.BADGES) { - return this.badges - } throw new Error(`Invalid selector value: ${this.selectedViewIndex}`) } @@ -79,9 +73,6 @@ export class ProfileUiModel { this.feed .setup() .catch(err => console.error('Failed to fetch feed', err)), - this.badges - .setup() - .catch(err => console.error('Failed to fetch badges', err)), ]) } diff --git a/src/state/models/profile-view.ts b/src/state/models/profile-view.ts index 64c16247..ebb75bdb 100644 --- a/src/state/models/profile-view.ts +++ b/src/state/models/profile-view.ts @@ -1,6 +1,6 @@ import {makeAutoObservable, runInAction} from 'mobx' -import * as GetProfile from '../../third-party/api/src/types/app/bsky/getProfile' -import * as Profile from '../../third-party/api/src/types/app/bsky/profile' +import * as GetProfile from '../../third-party/api/src/client/types/app/bsky/actor/getProfile' +import * as Profile from '../../third-party/api/src/client/types/app/bsky/actor/profile' import {RootStoreModel} from './root-store' import * as apilib from '../lib/api' @@ -22,13 +22,12 @@ export class ProfileViewModel { // data did: string = '' - name: string = '' + handle: string = '' displayName?: string description?: string followersCount: number = 0 followsCount: number = 0 postsCount: number = 0 - pinnedBadges: GetProfile.Badge[] = [] myState = new ProfileViewMyStateModel() constructor( @@ -118,7 +117,9 @@ export class ProfileViewModel { private async _load(isRefreshing = false) { this._xLoading(isRefreshing) try { - const res = await this.rootStore.api.app.bsky.getProfile(this.params) + const res = await this.rootStore.api.app.bsky.actor.getProfile( + this.params, + ) this._replaceAll(res) this._xIdle() } catch (e: any) { @@ -128,13 +129,12 @@ export class ProfileViewModel { private _replaceAll(res: GetProfile.Response) { this.did = res.data.did - this.name = res.data.name + this.handle = res.data.handle this.displayName = res.data.displayName this.description = res.data.description this.followersCount = res.data.followersCount this.followsCount = res.data.followsCount this.postsCount = res.data.postsCount - this.pinnedBadges = res.data.pinnedBadges if (res.data.myState) { Object.assign(this.myState, res.data.myState) } diff --git a/src/state/models/reposted-by-view.ts b/src/state/models/reposted-by-view.ts index 507a8bbb..2911ae7e 100644 --- a/src/state/models/reposted-by-view.ts +++ b/src/state/models/reposted-by-view.ts @@ -1,6 +1,6 @@ import {makeAutoObservable, runInAction} from 'mobx' import {AtUri} from '../../third-party/uri' -import * as GetRepostedBy from '../../third-party/api/src/types/app/bsky/getRepostedBy' +import * as GetRepostedBy from '../../third-party/api/src/client/types/app/bsky/feed/getRepostedBy' import {RootStoreModel} from './root-store' type RepostedByItem = GetRepostedBy.OutputSchema['repostedBy'][number] @@ -11,7 +11,7 @@ export class RepostedByViewItemModel implements RepostedByItem { // data did: string = '' - name: string = '' + handle: string = '' displayName: string = '' createdAt?: string indexedAt: string = '' @@ -113,7 +113,7 @@ export class RepostedByViewModel { private async _fetch(isRefreshing = false) { this._xLoading(isRefreshing) try { - const res = await this.rootStore.api.app.bsky.getRepostedBy( + const res = await this.rootStore.api.app.bsky.feed.getRepostedBy( Object.assign({}, this.params, {uri: this.resolvedUri}), ) this._replaceAll(res) diff --git a/src/state/models/root-store.ts b/src/state/models/root-store.ts index 949049a1..68b042d6 100644 --- a/src/state/models/root-store.ts +++ b/src/state/models/root-store.ts @@ -3,8 +3,8 @@ */ import {makeAutoObservable} from 'mobx' -import AtpApi from '../../third-party/api' -import type {ServiceClient} from '../../third-party/api/src/index' +import {sessionClient as AtpApi} from '../../third-party/api' +import type {SessionServiceClient} from '../../third-party/api/src/index' import {createContext, useContext} from 'react' import {isObj, hasProp} from '../lib/type-guards' import {SessionModel} from './session' @@ -18,7 +18,7 @@ export class RootStoreModel { shell = new ShellModel() me = new MeModel(this) - constructor(public api: ServiceClient) { + constructor(public api: SessionServiceClient) { makeAutoObservable(this, { api: false, resolveName: false, @@ -27,14 +27,14 @@ export class RootStoreModel { }) } - async resolveName(didOrName: string) { - if (!didOrName) { - throw new Error('Invalid name: ""') + async resolveName(didOrHandle: string) { + if (!didOrHandle) { + throw new Error('Invalid handle: ""') } - if (didOrName.startsWith('did:')) { - return didOrName + if (didOrHandle.startsWith('did:')) { + return didOrHandle } - const res = await this.api.com.atproto.resolveName({name: didOrName}) + const res = await this.api.com.atproto.handle.resolve({handle: didOrHandle}) return res.data.did } diff --git a/src/state/models/session.ts b/src/state/models/session.ts index 6be43e6f..e2996095 100644 --- a/src/state/models/session.ts +++ b/src/state/models/session.ts @@ -1,6 +1,7 @@ import {makeAutoObservable} from 'mobx' -import AtpApi from '../../third-party/api' -import type * as GetAccountsConfig from '../../third-party/api/src/types/com/atproto/getAccountsConfig' +import {sessionClient as AtpApi} from '../../third-party/api/index' +import type {SessionServiceClient} from '../../third-party/api/src/index' +import type * as GetAccountsConfig from '../../third-party/api/src/client/types/com/atproto/server/getAccountsConfig' import {isObj, hasProp} from '../lib/type-guards' import {RootStoreModel} from './root-store' @@ -8,9 +9,10 @@ export type ServiceDescription = GetAccountsConfig.OutputSchema interface SessionData { service: string - token: string - username: string - userdid: string + refreshJwt: string + accessJwt: string + handle: string + did: string } export enum OnboardingStage { @@ -49,26 +51,39 @@ export class SessionModel { if (hasProp(v, 'data') && isObj(v.data)) { const data: SessionData = { service: '', - token: '', - username: '', - userdid: '', + refreshJwt: '', + accessJwt: '', + handle: '', + did: '', } if (hasProp(v.data, 'service') && typeof v.data.service === 'string') { data.service = v.data.service } - if (hasProp(v.data, 'token') && typeof v.data.token === 'string') { - data.token = v.data.token + if ( + hasProp(v.data, 'refreshJwt') && + typeof v.data.refreshJwt === 'string' + ) { + data.refreshJwt = v.data.refreshJwt } if ( - hasProp(v.data, 'username') && - typeof v.data.username === 'string' + hasProp(v.data, 'accessJwt') && + typeof v.data.accessJwt === 'string' ) { - data.username = v.data.username + data.accessJwt = v.data.accessJwt } - if (hasProp(v.data, 'userdid') && typeof v.data.userdid === 'string') { - data.userdid = v.data.userdid + if (hasProp(v.data, 'handle') && typeof v.data.handle === 'string') { + data.handle = v.data.handle } - if (data.service && data.token && data.username && data.userdid) { + if (hasProp(v.data, 'did') && typeof v.data.did === 'string') { + data.did = v.data.did + } + if ( + data.service && + data.refreshJwt && + data.accessJwt && + data.handle && + data.did + ) { this.data = data } } @@ -112,7 +127,10 @@ export class SessionModel { return false } - this.rootStore.api.setHeader('Authorization', `Bearer ${this.data.token}`) + this.rootStore.api.sessionManager.set({ + refreshJwt: this.data.refreshJwt, + accessJwt: this.data.accessJwt, + }) return true } @@ -122,8 +140,8 @@ export class SessionModel { } try { - const sess = await this.rootStore.api.com.atproto.getSession({}) - if (sess.success && this.data && this.data.userdid === sess.data.did) { + const sess = await this.rootStore.api.com.atproto.session.get() + if (sess.success && this.data && this.data.did === sess.data.did) { this.rootStore.me.load().catch(e => { console.error('Failed to fetch local user information', e) }) @@ -135,28 +153,29 @@ export class SessionModel { } async describeService(service: string): Promise { - const api = AtpApi.service(service) - const res = await api.com.atproto.getAccountsConfig({}) + const api = AtpApi.service(service) as SessionServiceClient + const res = await api.com.atproto.server.getAccountsConfig({}) return res.data } async login({ service, - username, + handle, password, }: { service: string - username: string + handle: string password: string }) { - const api = AtpApi.service(service) - const res = await api.com.atproto.createSession({}, {username, password}) - if (res.data.jwt) { + const api = AtpApi.service(service) as SessionServiceClient + const res = await api.com.atproto.session.create({handle, password}) + if (res.data.accessJwt && res.data.refreshJwt) { this.setState({ service: service, - token: res.data.jwt, - username: res.data.name, - userdid: res.data.did, + accessJwt: res.data.accessJwt, + refreshJwt: res.data.refreshJwt, + handle: res.data.handle, + did: res.data.did, }) this.configureApi() this.rootStore.me.load().catch(e => { @@ -169,26 +188,29 @@ export class SessionModel { service, email, password, - username, + handle, inviteCode, }: { service: string email: string password: string - username: string + handle: string inviteCode?: string }) { - const api = AtpApi.service(service) - const res = await api.com.atproto.createAccount( - {}, - {username, password, email, inviteCode}, - ) - if (res.data.jwt) { + const api = AtpApi.service(service) as SessionServiceClient + const res = await api.com.atproto.account.create({ + handle, + password, + email, + inviteCode, + }) + if (res.data.accessJwt && res.data.refreshJwt) { this.setState({ service: service, - token: res.data.jwt, - username: res.data.name, - userdid: res.data.did, + accessJwt: res.data.accessJwt, + refreshJwt: res.data.refreshJwt, + handle: res.data.handle, + did: res.data.did, }) this.setOnboardingStage(OnboardingStage.Init) this.configureApi() @@ -200,7 +222,7 @@ export class SessionModel { async logout() { if (this.isAuthed) { - this.rootStore.api.com.atproto.deleteSession({}).catch((e: any) => { + this.rootStore.api.com.atproto.session.delete().catch((e: any) => { console.error('(Minor issue) Failed to delete session on the server', e) }) } diff --git a/src/state/models/shell.ts b/src/state/models/shell.ts index 33b8eef3..bef6ef76 100644 --- a/src/state/models/shell.ts +++ b/src/state/models/shell.ts @@ -1,6 +1,6 @@ import {makeAutoObservable} from 'mobx' import {ProfileViewModel} from './profile-view' -import * as Post from '../../third-party/api/src/types/app/bsky/post' +import * as Post from '../../third-party/api/src/client/types/app/bsky/feed/post' export interface LinkActionsModelOpts { newTab?: boolean diff --git a/src/state/models/user-followers-view.ts b/src/state/models/user-followers-view.ts index 9ec5a42a..1edd9523 100644 --- a/src/state/models/user-followers-view.ts +++ b/src/state/models/user-followers-view.ts @@ -1,10 +1,11 @@ import {makeAutoObservable} from 'mobx' -import * as GetUserFollowers from '../../third-party/api/src/types/app/bsky/getUserFollowers' +import * as GetFollowers from '../../third-party/api/src/client/types/app/bsky/graph/getFollowers' import {RootStoreModel} from './root-store' -type Subject = GetUserFollowers.OutputSchema['subject'] -export type FollowerItem = - GetUserFollowers.OutputSchema['followers'][number] & {_reactKey: string} +type Subject = GetFollowers.OutputSchema['subject'] +export type FollowerItem = GetFollowers.OutputSchema['followers'][number] & { + _reactKey: string +} export class UserFollowersViewModel { // state @@ -12,15 +13,15 @@ export class UserFollowersViewModel { isRefreshing = false hasLoaded = false error = '' - params: GetUserFollowers.QueryParams + params: GetFollowers.QueryParams // data - subject: Subject = {did: '', name: '', displayName: ''} + subject: Subject = {did: '', handle: '', displayName: ''} followers: FollowerItem[] = [] constructor( public rootStore: RootStoreModel, - params: GetUserFollowers.QueryParams, + params: GetFollowers.QueryParams, ) { makeAutoObservable( this, @@ -82,7 +83,7 @@ export class UserFollowersViewModel { private async _fetch(isRefreshing = false) { this._xLoading(isRefreshing) try { - const res = await this.rootStore.api.app.bsky.getUserFollowers( + const res = await this.rootStore.api.app.bsky.graph.getFollowers( this.params, ) this._replaceAll(res) @@ -92,9 +93,9 @@ export class UserFollowersViewModel { } } - private _replaceAll(res: GetUserFollowers.Response) { + private _replaceAll(res: GetFollowers.Response) { this.subject.did = res.data.subject.did - this.subject.name = res.data.subject.name + this.subject.handle = res.data.subject.handle this.subject.displayName = res.data.subject.displayName this.followers.length = 0 let counter = 0 diff --git a/src/state/models/user-follows-view.ts b/src/state/models/user-follows-view.ts index 92f9b4bc..b7875c22 100644 --- a/src/state/models/user-follows-view.ts +++ b/src/state/models/user-follows-view.ts @@ -1,9 +1,9 @@ import {makeAutoObservable} from 'mobx' -import * as GetUserFollows from '../../third-party/api/src/types/app/bsky/getUserFollows' +import * as GetFollows from '../../third-party/api/src/client/types/app/bsky/graph/getFollows' import {RootStoreModel} from './root-store' -type Subject = GetUserFollows.OutputSchema['subject'] -export type FollowItem = GetUserFollows.OutputSchema['follows'][number] & { +type Subject = GetFollows.OutputSchema['subject'] +export type FollowItem = GetFollows.OutputSchema['follows'][number] & { _reactKey: string } @@ -13,15 +13,15 @@ export class UserFollowsViewModel { isRefreshing = false hasLoaded = false error = '' - params: GetUserFollows.QueryParams + params: GetFollows.QueryParams // data - subject: Subject = {did: '', name: '', displayName: ''} + subject: Subject = {did: '', handle: '', displayName: ''} follows: FollowItem[] = [] constructor( public rootStore: RootStoreModel, - params: GetUserFollows.QueryParams, + params: GetFollows.QueryParams, ) { makeAutoObservable( this, @@ -83,7 +83,9 @@ export class UserFollowsViewModel { private async _fetch(isRefreshing = false) { this._xLoading(isRefreshing) try { - const res = await this.rootStore.api.app.bsky.getUserFollows(this.params) + const res = await this.rootStore.api.app.bsky.graph.getFollows( + this.params, + ) this._replaceAll(res) this._xIdle() } catch (e: any) { @@ -91,9 +93,9 @@ export class UserFollowsViewModel { } } - private _replaceAll(res: GetUserFollows.Response) { + private _replaceAll(res: GetFollows.Response) { this.subject.did = res.data.subject.did - this.subject.name = res.data.subject.name + this.subject.handle = res.data.subject.handle this.subject.displayName = res.data.subject.displayName this.follows.length = 0 let counter = 0 diff --git a/src/third-party/api/index.js b/src/third-party/api/index.js index f5b0c5f5..b8045f9e 100644 --- a/src/third-party/api/index.js +++ b/src/third-party/api/index.js @@ -6935,67 +6935,84 @@ var require_dist = __commonJS({ // src/index.ts var src_exports = {}; __export(src_exports, { - AppBskyBadge: () => badge_exports, - AppBskyBadgeAccept: () => badgeAccept_exports, - AppBskyBadgeOffer: () => badgeOffer_exports, - AppBskyFollow: () => follow_exports, - AppBskyGetAuthorFeed: () => getAuthorFeed_exports, - AppBskyGetBadgeMembers: () => getBadgeMembers_exports, - AppBskyGetHomeFeed: () => getHomeFeed_exports, - AppBskyGetLikedBy: () => getLikedBy_exports, - AppBskyGetNotificationCount: () => getNotificationCount_exports, - AppBskyGetNotifications: () => getNotifications_exports, - AppBskyGetPostThread: () => getPostThread_exports, - AppBskyGetProfile: () => getProfile_exports, - AppBskyGetRepostedBy: () => getRepostedBy_exports, - AppBskyGetUserFollowers: () => getUserFollowers_exports, - AppBskyGetUserFollows: () => getUserFollows_exports, - AppBskyGetUsersSearch: () => getUsersSearch_exports, - AppBskyGetUsersTypeahead: () => getUsersTypeahead_exports, - AppBskyLike: () => like_exports, - AppBskyMediaEmbed: () => mediaEmbed_exports, - AppBskyPost: () => post_exports, - AppBskyPostNotificationsSeen: () => postNotificationsSeen_exports, - AppBskyProfile: () => profile_exports, - AppBskyRepost: () => repost_exports, - AppBskyUpdateProfile: () => updateProfile_exports, + APP_BSKY_SYSTEM: () => APP_BSKY_SYSTEM, + AccountNS: () => AccountNS, + ActorNS: () => ActorNS, + AppBskyActorGetProfile: () => getProfile_exports, + AppBskyActorProfile: () => profile_exports, + AppBskyActorSearch: () => search_exports, + AppBskyActorSearchTypeahead: () => searchTypeahead_exports, + AppBskyActorUpdateProfile: () => updateProfile_exports, + AppBskyFeedGetAuthorFeed: () => getAuthorFeed_exports, + AppBskyFeedGetLikedBy: () => getLikedBy_exports, + AppBskyFeedGetPostThread: () => getPostThread_exports, + AppBskyFeedGetRepostedBy: () => getRepostedBy_exports, + AppBskyFeedGetTimeline: () => getTimeline_exports, + AppBskyFeedLike: () => like_exports, + AppBskyFeedMediaEmbed: () => mediaEmbed_exports, + AppBskyFeedPost: () => post_exports, + AppBskyFeedRepost: () => repost_exports, + AppBskyGraphFollow: () => follow_exports, + AppBskyGraphGetFollowers: () => getFollowers_exports, + AppBskyGraphGetFollows: () => getFollows_exports, + AppBskyGraphInvite: () => invite_exports, + AppBskyGraphInviteAccept: () => inviteAccept_exports, + AppBskyNotificationGetCount: () => getCount_exports, + AppBskyNotificationList: () => list_exports, + AppBskyNotificationUpdateSeen: () => updateSeen_exports, + AppBskySystemDeclaration: () => declaration_exports, AppNS: () => AppNS, AtprotoNS: () => AtprotoNS, - BadgeAcceptRecord: () => BadgeAcceptRecord, - BadgeOfferRecord: () => BadgeOfferRecord, - BadgeRecord: () => BadgeRecord, BskyNS: () => BskyNS, Client: () => Client2, - ComAtprotoCreateAccount: () => createAccount_exports, - ComAtprotoCreateInviteCode: () => createInviteCode_exports, - ComAtprotoCreateSession: () => createSession_exports, - ComAtprotoDeleteAccount: () => deleteAccount_exports, - ComAtprotoDeleteSession: () => deleteSession_exports, - ComAtprotoGetAccount: () => getAccount_exports, - ComAtprotoGetAccountsConfig: () => getAccountsConfig_exports, - ComAtprotoGetSession: () => getSession_exports, - ComAtprotoRepoBatchWrite: () => repoBatchWrite_exports, - ComAtprotoRepoCreateRecord: () => repoCreateRecord_exports, - ComAtprotoRepoDeleteRecord: () => repoDeleteRecord_exports, - ComAtprotoRepoDescribe: () => repoDescribe_exports, - ComAtprotoRepoGetRecord: () => repoGetRecord_exports, - ComAtprotoRepoListRecords: () => repoListRecords_exports, - ComAtprotoRepoPutRecord: () => repoPutRecord_exports, - ComAtprotoRequestAccountPasswordReset: () => requestAccountPasswordReset_exports, - ComAtprotoResetAccountPassword: () => resetAccountPassword_exports, - ComAtprotoResolveName: () => resolveName_exports, - ComAtprotoSyncGetRepo: () => syncGetRepo_exports, - ComAtprotoSyncGetRoot: () => syncGetRoot_exports, - ComAtprotoSyncUpdateRepo: () => syncUpdateRepo_exports, + ComAtprotoAccountCreate: () => create_exports, + ComAtprotoAccountCreateInviteCode: () => createInviteCode_exports, + ComAtprotoAccountDelete: () => delete_exports, + ComAtprotoAccountGet: () => get_exports, + ComAtprotoAccountRequestPasswordReset: () => requestPasswordReset_exports, + ComAtprotoAccountResetPassword: () => resetPassword_exports, + ComAtprotoHandleResolve: () => resolve_exports, + ComAtprotoRepoBatchWrite: () => batchWrite_exports, + ComAtprotoRepoCreateRecord: () => createRecord_exports, + ComAtprotoRepoDeleteRecord: () => deleteRecord_exports, + ComAtprotoRepoDescribe: () => describe_exports, + ComAtprotoRepoGetRecord: () => getRecord_exports, + ComAtprotoRepoListRecords: () => listRecords_exports, + ComAtprotoRepoPutRecord: () => putRecord_exports, + ComAtprotoServerGetAccountsConfig: () => getAccountsConfig_exports, + ComAtprotoSessionCreate: () => create_exports2, + ComAtprotoSessionDelete: () => delete_exports2, + ComAtprotoSessionGet: () => get_exports2, + ComAtprotoSessionRefresh: () => refresh_exports, + ComAtprotoSyncGetRepo: () => getRepo_exports, + ComAtprotoSyncGetRoot: () => getRoot_exports, + ComAtprotoSyncUpdateRepo: () => updateRepo_exports, ComNS: () => ComNS, + DeclarationRecord: () => DeclarationRecord, + FeedNS: () => FeedNS, FollowRecord: () => FollowRecord, + GraphNS: () => GraphNS, + HandleNS: () => HandleNS, + InviteAcceptRecord: () => InviteAcceptRecord, + InviteRecord: () => InviteRecord, LikeRecord: () => LikeRecord, MediaEmbedRecord: () => MediaEmbedRecord, + NotificationNS: () => NotificationNS, PostRecord: () => PostRecord, ProfileRecord: () => ProfileRecord, + RepoNS: () => RepoNS, RepostRecord: () => RepostRecord, + ServerNS: () => ServerNS, ServiceClient: () => ServiceClient2, - default: () => src_default + SessionClient: () => SessionClient, + SessionManager: () => SessionManager, + SessionNS: () => SessionNS, + SessionServiceClient: () => SessionServiceClient, + SessionXrpcServiceClient: () => SessionXrpcServiceClient, + SyncNS: () => SyncNS, + SystemNS: () => SystemNS, + default: () => client_default, + sessionClient: () => session_default }); module.exports = __toCommonJS(src_exports); @@ -10040,6 +10057,16 @@ var NSID = class { }; // ../lexicon/src/types.ts +var tokenSchema = mod.object({ + lexicon: mod.literal(1), + id: mod.string().refine((v) => NSID.isValid(v), { + message: "Must be a valid NSID" + }), + type: mod.enum(["token"]), + revision: mod.number().optional(), + description: mod.string().optional(), + defs: mod.any().optional() +}); var recordSchema = mod.object({ lexicon: mod.literal(1), id: mod.string().refine((v) => NSID.isValid(v), { @@ -10260,6 +10287,9 @@ var ServiceClient = class { setHeader(key, value) { this.headers[key] = value; } + unsetHeader(key) { + delete this.headers[key]; + } async call(methodNsid, params, data, opts) { const schema = this.baseClient.schemas.get(methodNsid); if (!schema) { @@ -10316,24 +10346,23 @@ function isErrorResponseBody(v) { // ../xrpc/src/index.ts var defaultInst = new Client(); -// src/schemas.ts +// src/client/schemas.ts var methodSchemaDict = { - "com.atproto.createAccount": { + "com.atproto.account.create": { lexicon: 1, - id: "com.atproto.createAccount", + id: "com.atproto.account.create", type: "procedure", description: "Create an account.", - parameters: {}, input: { encoding: "application/json", schema: { type: "object", - required: ["username", "email", "password"], + required: ["handle", "email", "password"], properties: { email: { type: "string" }, - username: { + handle: { type: "string" }, inviteCode: { @@ -10353,16 +10382,28 @@ var methodSchemaDict = { encoding: "application/json", schema: { type: "object", - required: ["jwt", "username", "did"], + required: [ + "accessJwt", + "refreshJwt", + "handle", + "did", + "declarationCid" + ], properties: { - jwt: { + accessJwt: { type: "string" }, - username: { + refreshJwt: { + type: "string" + }, + handle: { type: "string" }, did: { type: "string" + }, + declarationCid: { + type: "string" } }, $defs: {} @@ -10370,7 +10411,7 @@ var methodSchemaDict = { }, errors: [ { - name: "InvalidUsername" + name: "InvalidHandle" }, { name: "InvalidPassword" @@ -10379,16 +10420,15 @@ var methodSchemaDict = { name: "InvalidInviteCode" }, { - name: "UsernameNotAvailable" + name: "HandleNotAvailable" } ] }, - "com.atproto.createInviteCode": { + "com.atproto.account.createInviteCode": { lexicon: 1, - id: "com.atproto.createInviteCode", + id: "com.atproto.account.createInviteCode", type: "procedure", description: "Create an invite code.", - parameters: {}, input: { encoding: "application/json", schema: { @@ -10416,19 +10456,76 @@ var methodSchemaDict = { } } }, - "com.atproto.createSession": { + "com.atproto.account.delete": { lexicon: 1, - id: "com.atproto.createSession", + id: "com.atproto.account.delete", type: "procedure", - description: "Create an authentication session.", + description: "Delete an account.", + input: { + encoding: "", + schema: { + $defs: {} + } + }, + output: { + encoding: "", + schema: { + $defs: {} + } + } + }, + "com.atproto.account.get": { + lexicon: 1, + id: "com.atproto.account.get", + type: "query", + description: "Get information about an account.", parameters: {}, + output: { + encoding: "", + schema: { + $defs: {} + } + } + }, + "com.atproto.account.requestPasswordReset": { + lexicon: 1, + id: "com.atproto.account.requestPasswordReset", + type: "procedure", + description: "Initiate a user account password reset via email", input: { encoding: "application/json", schema: { type: "object", - required: ["username", "password"], + required: ["email"], properties: { - username: { + email: { + type: "string" + } + }, + $defs: {} + } + }, + output: { + encoding: "application/json", + schema: { + type: "object", + properties: {}, + $defs: {} + } + } + }, + "com.atproto.account.resetPassword": { + lexicon: 1, + id: "com.atproto.account.resetPassword", + type: "procedure", + description: "Reset a user account password using a token", + input: { + encoding: "application/json", + schema: { + type: "object", + required: ["token", "password"], + properties: { + token: { type: "string" }, password: { @@ -10442,14 +10539,36 @@ var methodSchemaDict = { encoding: "application/json", schema: { type: "object", - required: ["jwt", "name", "did"], + properties: {}, + $defs: {} + } + }, + errors: [ + { + name: "ExpiredToken" + }, + { + name: "InvalidToken" + } + ] + }, + "com.atproto.handle.resolve": { + lexicon: 1, + id: "com.atproto.handle.resolve", + type: "query", + description: "Provides the DID of a repo.", + parameters: { + handle: { + type: "string", + description: "The handle to resolve. If not supplied, will resolve the host's own handle." + } + }, + output: { + encoding: "application/json", + schema: { + type: "object", + required: ["did"], properties: { - jwt: { - type: "string" - }, - name: { - type: "string" - }, did: { type: "string" } @@ -10458,135 +10577,26 @@ var methodSchemaDict = { } } }, - "com.atproto.deleteAccount": { + "com.atproto.repo.batchWrite": { lexicon: 1, - id: "com.atproto.deleteAccount", - type: "procedure", - description: "Delete an account.", - parameters: {}, - input: { - encoding: "", - schema: { - $defs: {} - } - }, - output: { - encoding: "", - schema: { - $defs: {} - } - } - }, - "com.atproto.deleteSession": { - lexicon: 1, - id: "com.atproto.deleteSession", - type: "procedure", - description: "Delete the current session.", - parameters: {}, - input: { - encoding: "", - schema: { - $defs: {} - } - }, - output: { - encoding: "", - schema: { - $defs: {} - } - } - }, - "com.atproto.getAccount": { - lexicon: 1, - id: "com.atproto.getAccount", - type: "query", - description: "Get information about an account.", - parameters: {}, - input: { - encoding: "", - schema: { - $defs: {} - } - }, - output: { - encoding: "", - schema: { - $defs: {} - } - } - }, - "com.atproto.getAccountsConfig": { - lexicon: 1, - id: "com.atproto.getAccountsConfig", - type: "query", - description: "Get a document describing the service's accounts configuration.", - parameters: {}, - output: { - encoding: "application/json", - schema: { - type: "object", - required: ["availableUserDomains"], - properties: { - inviteCodeRequired: { - type: "boolean" - }, - availableUserDomains: { - type: "array", - items: { - type: "string" - } - } - }, - $defs: {} - } - } - }, - "com.atproto.getSession": { - lexicon: 1, - id: "com.atproto.getSession", - type: "query", - description: "Get information about the current session.", - parameters: {}, - output: { - encoding: "application/json", - schema: { - type: "object", - required: ["name", "did"], - properties: { - name: { - type: "string" - }, - did: { - type: "string" - } - }, - $defs: {} - } - } - }, - "com.atproto.repoBatchWrite": { - lexicon: 1, - id: "com.atproto.repoBatchWrite", + id: "com.atproto.repo.batchWrite", type: "procedure", description: "Apply a batch transaction of creates, puts, and deletes.", - parameters: { - did: { - type: "string", - required: true, - description: "The DID of the repo." - }, - validate: { - type: "boolean", - default: true, - description: "Validate the records?" - } - }, input: { encoding: "application/json", schema: { type: "object", - required: ["writes"], + required: ["did", "writes"], properties: { + did: { + type: "string", + description: "The DID of the repo." + }, + validate: { + type: "boolean", + default: true, + description: "Validate the records?" + }, writes: { type: "array", items: { @@ -10655,32 +10665,35 @@ var methodSchemaDict = { } } }, - "com.atproto.repoCreateRecord": { + "com.atproto.repo.createRecord": { lexicon: 1, - id: "com.atproto.repoCreateRecord", + id: "com.atproto.repo.createRecord", type: "procedure", description: "Create a new record.", - parameters: { - did: { - type: "string", - required: true, - description: "The DID of the repo." - }, - collection: { - type: "string", - required: true, - description: "The NSID of the record collection." - }, - validate: { - type: "boolean", - default: true, - description: "Validate the record?" - } - }, input: { encoding: "application/json", - description: "The record to create", schema: { + type: "object", + required: ["did", "collection", "record"], + properties: { + did: { + type: "string", + description: "The DID of the repo." + }, + collection: { + type: "string", + description: "The NSID of the record collection." + }, + validate: { + type: "boolean", + default: true, + description: "Validate the record?" + }, + record: { + type: "object", + description: "The record to create" + } + }, $defs: {} } }, @@ -10701,48 +10714,53 @@ var methodSchemaDict = { } } }, - "com.atproto.repoDeleteRecord": { + "com.atproto.repo.deleteRecord": { lexicon: 1, - id: "com.atproto.repoDeleteRecord", + id: "com.atproto.repo.deleteRecord", type: "procedure", description: "Delete a record.", - parameters: { - did: { - type: "string", - required: true, - description: "The DID of the repo." - }, - collection: { - type: "string", - required: true, - description: "The NSID of the record collection." - }, - rkey: { - type: "string", - required: true, - description: "The key of the record." + input: { + encoding: "application/json", + schema: { + type: "object", + required: ["did", "collection", "rkey"], + properties: { + did: { + type: "string", + description: "The DID of the repo." + }, + collection: { + type: "string", + description: "The NSID of the record collection." + }, + rkey: { + type: "string", + description: "The key of the record." + } + }, + $defs: {} } } }, - "com.atproto.repoDescribe": { + "com.atproto.repo.describe": { lexicon: 1, - id: "com.atproto.repoDescribe", + id: "com.atproto.repo.describe", type: "query", description: "Get information about the repo, including the list of collections.", parameters: { user: { type: "string", required: true, - description: "The username or DID of the repo." + description: "The handle or DID of the repo." } }, output: { encoding: "application/json", schema: { type: "object", - required: ["name", "did", "didDoc", "collections", "nameIsCorrect"], + required: ["handle", "did", "didDoc", "collections", "handleIsCorrect"], properties: { - name: { + handle: { type: "string" }, did: { @@ -10757,7 +10775,7 @@ var methodSchemaDict = { type: "string" } }, - nameIsCorrect: { + handleIsCorrect: { type: "boolean" } }, @@ -10765,16 +10783,16 @@ var methodSchemaDict = { } } }, - "com.atproto.repoGetRecord": { + "com.atproto.repo.getRecord": { lexicon: 1, - id: "com.atproto.repoGetRecord", + id: "com.atproto.repo.getRecord", type: "query", description: "Fetch a record.", parameters: { user: { type: "string", required: true, - description: "The username or DID of the repo." + description: "The handle or DID of the repo." }, collection: { type: "string", @@ -10812,16 +10830,16 @@ var methodSchemaDict = { } } }, - "com.atproto.repoListRecords": { + "com.atproto.repo.listRecords": { lexicon: 1, - id: "com.atproto.repoListRecords", + id: "com.atproto.repo.listRecords", type: "query", description: "List a range of records in a collection.", parameters: { user: { type: "string", required: true, - description: "The username or DID of the repo." + description: "The handle or DID of the repo." }, collection: { type: "string", @@ -10880,36 +10898,39 @@ var methodSchemaDict = { } } }, - "com.atproto.repoPutRecord": { + "com.atproto.repo.putRecord": { lexicon: 1, - id: "com.atproto.repoPutRecord", + id: "com.atproto.repo.putRecord", type: "procedure", description: "Write a record.", - parameters: { - did: { - type: "string", - required: true, - description: "The DID of the repo." - }, - collection: { - type: "string", - required: true, - description: "The NSID of the record type." - }, - rkey: { - type: "string", - required: true, - description: "The TID of the record." - }, - validate: { - type: "boolean", - default: true, - description: "Validate the record?" - } - }, input: { encoding: "application/json", schema: { + type: "object", + required: ["did", "collection", "rkey", "record"], + properties: { + did: { + type: "string", + description: "The DID of the repo." + }, + collection: { + type: "string", + description: "The NSID of the record type." + }, + rkey: { + type: "string", + description: "The TID of the record." + }, + validate: { + type: "boolean", + default: true, + description: "Validate the record?" + }, + record: { + type: "object", + description: "The record to create" + } + }, $defs: {} } }, @@ -10930,47 +10951,44 @@ var methodSchemaDict = { } } }, - "com.atproto.requestAccountPasswordReset": { + "com.atproto.server.getAccountsConfig": { lexicon: 1, - id: "com.atproto.requestAccountPasswordReset", - type: "procedure", - description: "Initiate a user account password reset via email", + id: "com.atproto.server.getAccountsConfig", + type: "query", + description: "Get a document describing the service's accounts configuration.", parameters: {}, - input: { - encoding: "application/json", - schema: { - type: "object", - required: ["email"], - properties: { - email: { - type: "string" - } - }, - $defs: {} - } - }, output: { encoding: "application/json", schema: { type: "object", - properties: {}, + required: ["availableUserDomains"], + properties: { + inviteCodeRequired: { + type: "boolean" + }, + availableUserDomains: { + type: "array", + items: { + type: "string" + } + } + }, $defs: {} } } }, - "com.atproto.resetAccountPassword": { + "com.atproto.session.create": { lexicon: 1, - id: "com.atproto.resetAccountPassword", + id: "com.atproto.session.create", type: "procedure", - description: "Reset a user account password using a token", - parameters: {}, + description: "Create an authentication session.", input: { encoding: "application/json", schema: { type: "object", - required: ["token", "password"], + required: ["handle", "password"], properties: { - token: { + handle: { type: "string" }, password: { @@ -10984,36 +11002,17 @@ var methodSchemaDict = { encoding: "application/json", schema: { type: "object", - properties: {}, - $defs: {} - } - }, - errors: [ - { - name: "ExpiredToken" - }, - { - name: "InvalidToken" - } - ] - }, - "com.atproto.resolveName": { - lexicon: 1, - id: "com.atproto.resolveName", - type: "query", - description: "Provides the DID of a repo.", - parameters: { - name: { - type: "string", - description: "The name to resolve. If not supplied, will resolve the host's own name." - } - }, - output: { - encoding: "application/json", - schema: { - type: "object", - required: ["did"], + required: ["accessJwt", "refreshJwt", "handle", "did"], properties: { + accessJwt: { + type: "string" + }, + refreshJwt: { + type: "string" + }, + handle: { + type: "string" + }, did: { type: "string" } @@ -11022,9 +11021,72 @@ var methodSchemaDict = { } } }, - "com.atproto.syncGetRepo": { + "com.atproto.session.delete": { lexicon: 1, - id: "com.atproto.syncGetRepo", + id: "com.atproto.session.delete", + type: "procedure", + description: "Delete the current session.", + output: { + encoding: "application/json", + schema: { + $defs: {} + } + } + }, + "com.atproto.session.get": { + lexicon: 1, + id: "com.atproto.session.get", + type: "query", + description: "Get information about the current session.", + parameters: {}, + output: { + encoding: "application/json", + schema: { + type: "object", + required: ["handle", "did"], + properties: { + handle: { + type: "string" + }, + did: { + type: "string" + } + }, + $defs: {} + } + } + }, + "com.atproto.session.refresh": { + lexicon: 1, + id: "com.atproto.session.refresh", + type: "procedure", + description: "Refresh an authentication session.", + output: { + encoding: "application/json", + schema: { + type: "object", + required: ["accessJwt", "refreshJwt", "handle", "did"], + properties: { + accessJwt: { + type: "string" + }, + refreshJwt: { + type: "string" + }, + handle: { + type: "string" + }, + did: { + type: "string" + } + }, + $defs: {} + } + } + }, + "com.atproto.sync.getRepo": { + lexicon: 1, + id: "com.atproto.sync.getRepo", type: "query", description: "Gets the repo state.", parameters: { @@ -11042,9 +11104,9 @@ var methodSchemaDict = { encoding: "application/cbor" } }, - "com.atproto.syncGetRoot": { + "com.atproto.sync.getRoot": { lexicon: 1, - id: "com.atproto.syncGetRoot", + id: "com.atproto.sync.getRoot", type: "query", description: "Gets the current root CID of a repo.", parameters: { @@ -11068,9 +11130,9 @@ var methodSchemaDict = { } } }, - "com.atproto.syncUpdateRepo": { + "com.atproto.sync.updateRepo": { lexicon: 1, - id: "com.atproto.syncUpdateRepo", + id: "com.atproto.sync.updateRepo", type: "procedure", description: "Writes commits to a repo.", parameters: { @@ -11084,9 +11146,213 @@ var methodSchemaDict = { encoding: "application/cbor" } }, - "app.bsky.getAuthorFeed": { + "app.bsky.actor.getProfile": { lexicon: 1, - id: "app.bsky.getAuthorFeed", + id: "app.bsky.actor.getProfile", + type: "query", + parameters: { + user: { + type: "string", + required: true + } + }, + output: { + encoding: "application/json", + schema: { + type: "object", + required: [ + "did", + "handle", + "followersCount", + "followsCount", + "postsCount" + ], + properties: { + did: { + type: "string" + }, + handle: { + type: "string" + }, + displayName: { + type: "string", + maxLength: 64 + }, + description: { + type: "string", + maxLength: 256 + }, + followersCount: { + type: "number" + }, + followsCount: { + type: "number" + }, + postsCount: { + type: "number" + }, + myState: { + type: "object", + properties: { + follow: { + type: "string" + } + } + } + }, + $defs: {} + } + } + }, + "app.bsky.actor.search": { + lexicon: 1, + id: "app.bsky.actor.search", + type: "query", + description: "Find users matching search criteria", + parameters: { + term: { + type: "string", + required: true + }, + limit: { + type: "number", + maximum: 100 + }, + before: { + type: "string" + } + }, + output: { + encoding: "application/json", + schema: { + type: "object", + required: ["users"], + properties: { + cursor: { + type: "string" + }, + users: { + type: "array", + items: { + type: "object", + required: ["did", "handle"], + properties: { + did: { + type: "string" + }, + handle: { + type: "string" + }, + displayName: { + type: "string", + maxLength: 64 + }, + description: { + type: "string" + }, + indexedAt: { + type: "string", + format: "date-time" + } + } + } + } + }, + $defs: {} + } + } + }, + "app.bsky.actor.searchTypeahead": { + lexicon: 1, + id: "app.bsky.actor.searchTypeahead", + type: "query", + description: "Find user suggestions for a search term", + parameters: { + term: { + type: "string", + required: true + }, + limit: { + type: "number", + maximum: 100 + } + }, + output: { + encoding: "application/json", + schema: { + type: "object", + required: ["users"], + properties: { + users: { + type: "array", + items: { + type: "object", + required: ["did", "handle"], + properties: { + did: { + type: "string" + }, + handle: { + type: "string" + }, + displayName: { + type: "string", + maxLength: 64 + } + } + } + } + }, + $defs: {} + } + } + }, + "app.bsky.actor.updateProfile": { + lexicon: 1, + id: "app.bsky.actor.updateProfile", + type: "procedure", + description: "Notify server that the user has seen notifications", + input: { + encoding: "application/json", + schema: { + type: "object", + required: [], + properties: { + displayName: { + type: "string", + maxLength: 64 + }, + description: { + type: "string", + maxLength: 256 + } + }, + $defs: {} + } + }, + output: { + encoding: "application/json", + schema: { + type: "object", + required: ["uri", "cid", "record"], + properties: { + uri: { + type: "string" + }, + cid: { + type: "string" + }, + record: { + type: "object" + } + }, + $defs: {} + } + } + }, + "app.bsky.feed.getAuthorFeed": { + lexicon: 1, + id: "app.bsky.feed.getAuthorFeed", type: "query", description: "A view of a user's feed", parameters: { @@ -11188,12 +11454,12 @@ var methodSchemaDict = { }, user: { type: "object", - required: ["did", "name"], + required: ["did", "handle"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -11323,12 +11589,12 @@ var methodSchemaDict = { }, user: { type: "object", - required: ["did", "name"], + required: ["did", "handle"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -11387,379 +11653,9 @@ var methodSchemaDict = { } } }, - "app.bsky.getBadgeMembers": { + "app.bsky.feed.getLikedBy": { lexicon: 1, - id: "app.bsky.getBadgeMembers", - type: "query", - parameters: { - uri: { - type: "string", - required: true - }, - cid: { - type: "string", - required: false - }, - limit: { - type: "number", - maximum: 100 - }, - before: { - type: "string" - } - }, - output: { - encoding: "application/json", - schema: { - type: "object", - required: ["uri", "members"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - }, - cursor: { - type: "string" - }, - members: { - type: "array", - items: { - type: "object", - required: ["did", "name", "acceptedAt", "offeredAt"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - }, - offeredAt: { - type: "string", - format: "date-time" - }, - acceptedAt: { - type: "string", - format: "date-time" - } - } - } - } - }, - $defs: {} - } - } - }, - "app.bsky.getHomeFeed": { - lexicon: 1, - id: "app.bsky.getHomeFeed", - type: "query", - description: "A view of the user's home feed", - parameters: { - algorithm: { - type: "string" - }, - limit: { - type: "number", - maximum: 100 - }, - before: { - type: "string" - } - }, - output: { - encoding: "application/json", - schema: { - type: "object", - required: ["feed"], - properties: { - cursor: { - type: "string" - }, - feed: { - type: "array", - items: { - $ref: "#/$defs/feedItem" - } - } - }, - $defs: { - feedItem: { - type: "object", - required: [ - "uri", - "cid", - "author", - "record", - "replyCount", - "repostCount", - "likeCount", - "indexedAt" - ], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - }, - author: { - $ref: "#/$defs/user" - }, - repostedBy: { - $ref: "#/$defs/user" - }, - record: { - type: "object" - }, - embed: { - oneOf: [ - { - $ref: "#/$defs/recordEmbed" - }, - { - $ref: "#/$defs/externalEmbed" - }, - { - $ref: "#/$defs/unknownEmbed" - } - ] - }, - replyCount: { - type: "number" - }, - repostCount: { - type: "number" - }, - likeCount: { - type: "number" - }, - indexedAt: { - type: "string", - format: "date-time" - }, - myState: { - type: "object", - properties: { - repost: { - type: "string" - }, - like: { - type: "string" - } - } - } - } - }, - user: { - type: "object", - required: ["did", "name"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - } - } - }, - recordEmbed: { - type: "object", - required: ["type", "author", "record"], - properties: { - type: { - const: "record" - }, - author: { - $ref: "#/$defs/user" - }, - record: { - type: "object" - } - } - }, - externalEmbed: { - type: "object", - required: ["type", "uri", "title", "description", "imageUri"], - properties: { - type: { - const: "external" - }, - uri: { - type: "string" - }, - title: { - type: "string" - }, - description: { - type: "string" - }, - imageUri: { - type: "string" - } - } - }, - unknownEmbed: { - type: "object", - required: ["type"], - properties: { - type: { - type: "string", - not: { - enum: ["record", "external"] - } - } - } - } - } - } - }, - defs: { - feedItem: { - type: "object", - required: [ - "uri", - "cid", - "author", - "record", - "replyCount", - "repostCount", - "likeCount", - "indexedAt" - ], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - }, - author: { - $ref: "#/$defs/user" - }, - repostedBy: { - $ref: "#/$defs/user" - }, - record: { - type: "object" - }, - embed: { - oneOf: [ - { - $ref: "#/$defs/recordEmbed" - }, - { - $ref: "#/$defs/externalEmbed" - }, - { - $ref: "#/$defs/unknownEmbed" - } - ] - }, - replyCount: { - type: "number" - }, - repostCount: { - type: "number" - }, - likeCount: { - type: "number" - }, - indexedAt: { - type: "string", - format: "date-time" - }, - myState: { - type: "object", - properties: { - repost: { - type: "string" - }, - like: { - type: "string" - } - } - } - } - }, - user: { - type: "object", - required: ["did", "name"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - } - } - }, - recordEmbed: { - type: "object", - required: ["type", "author", "record"], - properties: { - type: { - const: "record" - }, - author: { - $ref: "#/$defs/user" - }, - record: { - type: "object" - } - } - }, - externalEmbed: { - type: "object", - required: ["type", "uri", "title", "description", "imageUri"], - properties: { - type: { - const: "external" - }, - uri: { - type: "string" - }, - title: { - type: "string" - }, - description: { - type: "string" - }, - imageUri: { - type: "string" - } - } - }, - unknownEmbed: { - type: "object", - required: ["type"], - properties: { - type: { - type: "string", - not: { - enum: ["record", "external"] - } - } - } - } - } - }, - "app.bsky.getLikedBy": { - lexicon: 1, - id: "app.bsky.getLikedBy", + id: "app.bsky.feed.getLikedBy", type: "query", parameters: { uri: { @@ -11797,12 +11693,12 @@ var methodSchemaDict = { type: "array", items: { type: "object", - required: ["did", "name", "indexedAt"], + required: ["did", "handle", "indexedAt"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -11825,172 +11721,9 @@ var methodSchemaDict = { } } }, - "app.bsky.getNotificationCount": { + "app.bsky.feed.getPostThread": { lexicon: 1, - id: "app.bsky.getNotificationCount", - type: "query", - parameters: {}, - output: { - encoding: "application/json", - schema: { - type: "object", - required: ["count"], - properties: { - count: { - type: "number" - } - }, - $defs: {} - } - } - }, - "app.bsky.getNotifications": { - lexicon: 1, - id: "app.bsky.getNotifications", - type: "query", - parameters: { - limit: { - type: "number", - maximum: 100 - }, - before: { - type: "string" - } - }, - output: { - encoding: "application/json", - schema: { - type: "object", - required: ["notifications"], - properties: { - cursor: { - type: "string" - }, - notifications: { - type: "array", - items: { - $ref: "#/$defs/notification" - } - } - }, - $defs: { - notification: { - type: "object", - required: [ - "uri", - "cid", - "author", - "reason", - "record", - "isRead", - "indexedAt" - ], - properties: { - uri: { - type: "string", - format: "uri" - }, - cid: { - type: "string" - }, - author: { - type: "object", - required: ["did", "name"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - } - } - }, - reason: { - type: "string", - $comment: "Expected values are 'like', 'repost', 'follow', 'badge', 'mention' and 'reply'." - }, - reasonSubject: { - type: "string" - }, - record: { - type: "object" - }, - isRead: { - type: "boolean" - }, - indexedAt: { - type: "string", - format: "date-time" - } - } - } - } - } - }, - defs: { - notification: { - type: "object", - required: [ - "uri", - "cid", - "author", - "reason", - "record", - "isRead", - "indexedAt" - ], - properties: { - uri: { - type: "string", - format: "uri" - }, - cid: { - type: "string" - }, - author: { - type: "object", - required: ["did", "name"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - } - } - }, - reason: { - type: "string", - $comment: "Expected values are 'like', 'repost', 'follow', 'badge', 'mention' and 'reply'." - }, - reasonSubject: { - type: "string" - }, - record: { - type: "object" - }, - isRead: { - type: "boolean" - }, - indexedAt: { - type: "string", - format: "date-time" - } - } - } - } - }, - "app.bsky.getPostThread": { - lexicon: 1, - id: "app.bsky.getPostThread", + id: "app.bsky.feed.getPostThread", type: "query", parameters: { uri: { @@ -12087,12 +11820,12 @@ var methodSchemaDict = { }, user: { type: "object", - required: ["did", "name"], + required: ["did", "handle"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -12228,12 +11961,12 @@ var methodSchemaDict = { }, user: { type: "object", - required: ["did", "name"], + required: ["did", "handle"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -12292,173 +12025,9 @@ var methodSchemaDict = { } } }, - "app.bsky.getProfile": { + "app.bsky.feed.getRepostedBy": { lexicon: 1, - id: "app.bsky.getProfile", - type: "query", - parameters: { - user: { - type: "string", - required: true - } - }, - output: { - encoding: "application/json", - schema: { - type: "object", - required: [ - "did", - "name", - "followersCount", - "followsCount", - "postsCount", - "pinnedBadges" - ], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - }, - description: { - type: "string", - maxLength: 256 - }, - followersCount: { - type: "number" - }, - followsCount: { - type: "number" - }, - postsCount: { - type: "number" - }, - pinnedBadges: { - type: "array", - items: { - $ref: "#/$defs/badge" - } - }, - myState: { - type: "object", - properties: { - follow: { - type: "string" - } - } - } - }, - $defs: { - badge: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - }, - error: { - type: "string" - }, - issuer: { - type: "object", - required: ["did", "name"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - } - } - }, - assertion: { - type: "object", - required: ["type"], - properties: { - type: { - type: "string" - }, - tag: { - type: "string", - maxLength: 64 - } - } - }, - createdAt: { - type: "string", - format: "date-time" - } - } - } - } - } - }, - defs: { - badge: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - }, - error: { - type: "string" - }, - issuer: { - type: "object", - required: ["did", "name"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - } - } - }, - assertion: { - type: "object", - required: ["type"], - properties: { - type: { - type: "string" - }, - tag: { - type: "string", - maxLength: 64 - } - } - }, - createdAt: { - type: "string", - format: "date-time" - } - } - } - } - }, - "app.bsky.getRepostedBy": { - lexicon: 1, - id: "app.bsky.getRepostedBy", + id: "app.bsky.feed.getRepostedBy", type: "query", parameters: { uri: { @@ -12496,12 +12065,12 @@ var methodSchemaDict = { type: "array", items: { type: "object", - required: ["did", "name", "indexedAt"], + required: ["did", "handle", "indexedAt"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -12524,9 +12093,311 @@ var methodSchemaDict = { } } }, - "app.bsky.getUserFollowers": { + "app.bsky.feed.getTimeline": { lexicon: 1, - id: "app.bsky.getUserFollowers", + id: "app.bsky.feed.getTimeline", + type: "query", + description: "A view of the user's home timeline", + parameters: { + algorithm: { + type: "string" + }, + limit: { + type: "number", + maximum: 100 + }, + before: { + type: "string" + } + }, + output: { + encoding: "application/json", + schema: { + type: "object", + required: ["feed"], + properties: { + cursor: { + type: "string" + }, + feed: { + type: "array", + items: { + $ref: "#/$defs/feedItem" + } + } + }, + $defs: { + feedItem: { + type: "object", + required: [ + "uri", + "cid", + "author", + "record", + "replyCount", + "repostCount", + "likeCount", + "indexedAt" + ], + properties: { + uri: { + type: "string" + }, + cid: { + type: "string" + }, + author: { + $ref: "#/$defs/user" + }, + repostedBy: { + $ref: "#/$defs/user" + }, + record: { + type: "object" + }, + embed: { + oneOf: [ + { + $ref: "#/$defs/recordEmbed" + }, + { + $ref: "#/$defs/externalEmbed" + }, + { + $ref: "#/$defs/unknownEmbed" + } + ] + }, + replyCount: { + type: "number" + }, + repostCount: { + type: "number" + }, + likeCount: { + type: "number" + }, + indexedAt: { + type: "string", + format: "date-time" + }, + myState: { + type: "object", + properties: { + repost: { + type: "string" + }, + like: { + type: "string" + } + } + } + } + }, + user: { + type: "object", + required: ["did", "handle"], + properties: { + did: { + type: "string" + }, + handle: { + type: "string" + }, + displayName: { + type: "string", + maxLength: 64 + } + } + }, + recordEmbed: { + type: "object", + required: ["type", "author", "record"], + properties: { + type: { + const: "record" + }, + author: { + $ref: "#/$defs/user" + }, + record: { + type: "object" + } + } + }, + externalEmbed: { + type: "object", + required: ["type", "uri", "title", "description", "imageUri"], + properties: { + type: { + const: "external" + }, + uri: { + type: "string" + }, + title: { + type: "string" + }, + description: { + type: "string" + }, + imageUri: { + type: "string" + } + } + }, + unknownEmbed: { + type: "object", + required: ["type"], + properties: { + type: { + type: "string", + not: { + enum: ["record", "external"] + } + } + } + } + } + } + }, + defs: { + feedItem: { + type: "object", + required: [ + "uri", + "cid", + "author", + "record", + "replyCount", + "repostCount", + "likeCount", + "indexedAt" + ], + properties: { + uri: { + type: "string" + }, + cid: { + type: "string" + }, + author: { + $ref: "#/$defs/user" + }, + repostedBy: { + $ref: "#/$defs/user" + }, + record: { + type: "object" + }, + embed: { + oneOf: [ + { + $ref: "#/$defs/recordEmbed" + }, + { + $ref: "#/$defs/externalEmbed" + }, + { + $ref: "#/$defs/unknownEmbed" + } + ] + }, + replyCount: { + type: "number" + }, + repostCount: { + type: "number" + }, + likeCount: { + type: "number" + }, + indexedAt: { + type: "string", + format: "date-time" + }, + myState: { + type: "object", + properties: { + repost: { + type: "string" + }, + like: { + type: "string" + } + } + } + } + }, + user: { + type: "object", + required: ["did", "handle"], + properties: { + did: { + type: "string" + }, + handle: { + type: "string" + }, + displayName: { + type: "string", + maxLength: 64 + } + } + }, + recordEmbed: { + type: "object", + required: ["type", "author", "record"], + properties: { + type: { + const: "record" + }, + author: { + $ref: "#/$defs/user" + }, + record: { + type: "object" + } + } + }, + externalEmbed: { + type: "object", + required: ["type", "uri", "title", "description", "imageUri"], + properties: { + type: { + const: "external" + }, + uri: { + type: "string" + }, + title: { + type: "string" + }, + description: { + type: "string" + }, + imageUri: { + type: "string" + } + } + }, + unknownEmbed: { + type: "object", + required: ["type"], + properties: { + type: { + type: "string", + not: { + enum: ["record", "external"] + } + } + } + } + } + }, + "app.bsky.graph.getFollowers": { + lexicon: 1, + id: "app.bsky.graph.getFollowers", type: "query", description: "Who is following a user?", parameters: { @@ -12550,12 +12421,12 @@ var methodSchemaDict = { properties: { subject: { type: "object", - required: ["did", "name"], + required: ["did", "handle"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -12571,12 +12442,12 @@ var methodSchemaDict = { type: "array", items: { type: "object", - required: ["did", "name", "indexedAt"], + required: ["did", "handle", "indexedAt"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -12599,9 +12470,9 @@ var methodSchemaDict = { } } }, - "app.bsky.getUserFollows": { + "app.bsky.graph.getFollows": { lexicon: 1, - id: "app.bsky.getUserFollows", + id: "app.bsky.graph.getFollows", type: "query", description: "Who is a user following?", parameters: { @@ -12625,12 +12496,12 @@ var methodSchemaDict = { properties: { subject: { type: "object", - required: ["did", "name"], + required: ["did", "handle"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -12646,12 +12517,12 @@ var methodSchemaDict = { type: "array", items: { type: "object", - required: ["did", "name", "indexedAt"], + required: ["did", "handle", "indexedAt"], properties: { did: { type: "string" }, - name: { + handle: { type: "string" }, displayName: { @@ -12674,16 +12545,30 @@ var methodSchemaDict = { } } }, - "app.bsky.getUsersSearch": { + "app.bsky.notification.getCount": { lexicon: 1, - id: "app.bsky.getUsersSearch", + id: "app.bsky.notification.getCount", + type: "query", + parameters: {}, + output: { + encoding: "application/json", + schema: { + type: "object", + required: ["count"], + properties: { + count: { + type: "number" + } + }, + $defs: {} + } + } + }, + "app.bsky.notification.list": { + lexicon: 1, + id: "app.bsky.notification.list", type: "query", - description: "Find users matching search criteria", parameters: { - term: { - type: "string", - required: true - }, limit: { type: "number", maximum: 100 @@ -12696,97 +12581,138 @@ var methodSchemaDict = { encoding: "application/json", schema: { type: "object", - required: ["users"], + required: ["notifications"], properties: { cursor: { type: "string" }, - users: { + notifications: { type: "array", items: { - type: "object", - required: ["did", "name", "createdAt", "indexedAt"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - }, - description: { - type: "string" - }, - createdAt: { - type: "string", - format: "date-time" - }, - indexedAt: { - type: "string", - format: "date-time" - } - } + $ref: "#/$defs/notification" } } }, - $defs: {} - } - } - }, - "app.bsky.getUsersTypeahead": { - lexicon: 1, - id: "app.bsky.getUsersTypeahead", - type: "query", - description: "Find user suggestions for a search term", - parameters: { - term: { - type: "string", - required: true - }, - limit: { - type: "number", - maximum: 100 + $defs: { + notification: { + type: "object", + required: [ + "uri", + "cid", + "author", + "reason", + "record", + "isRead", + "indexedAt" + ], + properties: { + uri: { + type: "string", + format: "uri" + }, + cid: { + type: "string" + }, + author: { + type: "object", + required: ["did", "handle"], + properties: { + did: { + type: "string" + }, + handle: { + type: "string" + }, + displayName: { + type: "string", + maxLength: 64 + } + } + }, + reason: { + type: "string", + $comment: "Expected values are 'like', 'repost', 'follow', 'invite', 'mention' and 'reply'." + }, + reasonSubject: { + type: "string" + }, + record: { + type: "object" + }, + isRead: { + type: "boolean" + }, + indexedAt: { + type: "string", + format: "date-time" + } + } + } + } } }, - output: { - encoding: "application/json", - schema: { + defs: { + notification: { type: "object", - required: ["users"], + required: [ + "uri", + "cid", + "author", + "reason", + "record", + "isRead", + "indexedAt" + ], properties: { - users: { - type: "array", - items: { - type: "object", - required: ["did", "name"], - properties: { - did: { - type: "string" - }, - name: { - type: "string" - }, - displayName: { - type: "string", - maxLength: 64 - } + uri: { + type: "string", + format: "uri" + }, + cid: { + type: "string" + }, + author: { + type: "object", + required: ["did", "handle"], + properties: { + did: { + type: "string" + }, + handle: { + type: "string" + }, + displayName: { + type: "string", + maxLength: 64 } } + }, + reason: { + type: "string", + $comment: "Expected values are 'like', 'repost', 'follow', 'invite', 'mention' and 'reply'." + }, + reasonSubject: { + type: "string" + }, + record: { + type: "object" + }, + isRead: { + type: "boolean" + }, + indexedAt: { + type: "string", + format: "date-time" } - }, - $defs: {} + } } } }, - "app.bsky.postNotificationsSeen": { + "app.bsky.notification.updateSeen": { lexicon: 1, - id: "app.bsky.postNotificationsSeen", + id: "app.bsky.notification.updateSeen", type: "procedure", description: "Notify server that the user has seen notifications", - parameters: {}, input: { encoding: "application/json", schema: { @@ -12807,320 +12733,34 @@ var methodSchemaDict = { $defs: {} } } - }, - "app.bsky.updateProfile": { - lexicon: 1, - id: "app.bsky.updateProfile", - type: "procedure", - description: "Notify server that the user has seen notifications", - parameters: {}, - input: { - encoding: "application/json", - schema: { - type: "object", - required: [], - properties: { - displayName: { - type: "string", - maxLength: 64 - }, - description: { - type: "string", - maxLength: 256 - }, - pinnedBadges: { - type: "array", - items: { - $ref: "#/$defs/badgeRef" - } - } - }, - $defs: { - badgeRef: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - } - } - } - } - } - }, - output: { - encoding: "application/json", - schema: { - type: "object", - required: ["uri", "cid", "record"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - }, - record: { - type: "object" - } - }, - $defs: {} - } - } } }; var methodSchemas = Object.values(methodSchemaDict); var recordSchemaDict = { - "app.bsky.badge": { + "app.bsky.actor.profile": { lexicon: 1, - id: "app.bsky.badge", + id: "app.bsky.actor.profile", type: "record", - description: "An assertion about the subject by this user.", - key: "tid", + key: "literal:self", record: { type: "object", - required: ["assertion", "createdAt"], + required: ["displayName"], properties: { - assertion: { - oneOf: [ - { - $ref: "#/$defs/inviteAssertion" - }, - { - $ref: "#/$defs/employeeAssertion" - }, - { - $ref: "#/$defs/tagAssertion" - }, - { - $ref: "#/$defs/unknownAssertion" - } - ] - }, - createdAt: { + displayName: { type: "string", - format: "date-time" - } - }, - $defs: { - inviteAssertion: { - type: "object", - required: ["type"], - properties: { - type: { - const: "invite" - } - } + maxLength: 64 }, - employeeAssertion: { - type: "object", - required: ["type"], - properties: { - type: { - const: "employee" - } - } - }, - tagAssertion: { - type: "object", - required: ["type", "tag"], - properties: { - type: { - const: "tag" - }, - tag: { - type: "string", - maxLength: 64 - } - } - }, - unknownAssertion: { - type: "object", - required: ["type"], - properties: { - type: { - type: "string", - not: { - enum: ["invite", "employee", "tag"] - } - } - } - } - } - }, - defs: { - inviteAssertion: { - type: "object", - required: ["type"], - properties: { - type: { - const: "invite" - } - } - }, - employeeAssertion: { - type: "object", - required: ["type"], - properties: { - type: { - const: "employee" - } - } - }, - tagAssertion: { - type: "object", - required: ["type", "tag"], - properties: { - type: { - const: "tag" - }, - tag: { - type: "string", - maxLength: 64 - } - } - }, - unknownAssertion: { - type: "object", - required: ["type"], - properties: { - type: { - type: "string", - not: { - enum: ["invite", "employee", "tag"] - } - } - } - } - } - }, - "app.bsky.badgeAccept": { - lexicon: 1, - id: "app.bsky.badgeAccept", - type: "record", - key: "tid", - record: { - type: "object", - required: ["badge", "offer", "createdAt"], - properties: { - badge: { - $ref: "#/$defs/subject" - }, - offer: { - $ref: "#/$defs/subject" - }, - createdAt: { + description: { type: "string", - format: "date-time" - } - }, - $defs: { - subject: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - } - } - } - } - }, - defs: { - subject: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - } - } - } - } - }, - "app.bsky.badgeOffer": { - lexicon: 1, - id: "app.bsky.badgeOffer", - type: "record", - key: "tid", - record: { - type: "object", - required: ["badge", "subject", "createdAt"], - properties: { - badge: { - $ref: "#/$defs/badge" - }, - subject: { - type: "string" - }, - createdAt: { - type: "string", - format: "date-time" - } - }, - $defs: { - badge: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - } - } - } - } - }, - defs: { - badge: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - } - } - } - } - }, - "app.bsky.follow": { - lexicon: 1, - id: "app.bsky.follow", - type: "record", - description: "A social follow", - key: "tid", - record: { - type: "object", - required: ["subject", "createdAt"], - properties: { - subject: { - type: "string" - }, - createdAt: { - type: "string", - format: "date-time" + maxLength: 256 } }, $defs: {} } }, - "app.bsky.like": { + "app.bsky.feed.like": { lexicon: 1, - id: "app.bsky.like", + id: "app.bsky.feed.like", type: "record", key: "tid", record: { @@ -13165,9 +12805,9 @@ var recordSchemaDict = { } } }, - "app.bsky.mediaEmbed": { + "app.bsky.feed.mediaEmbed": { lexicon: 1, - id: "app.bsky.mediaEmbed", + id: "app.bsky.feed.mediaEmbed", type: "record", description: "A list of media embedded in a post or document.", key: "tid", @@ -13242,9 +12882,9 @@ var recordSchemaDict = { } } }, - "app.bsky.post": { + "app.bsky.feed.post": { lexicon: 1, - id: "app.bsky.post", + id: "app.bsky.feed.post", type: "record", key: "tid", record: { @@ -13256,7 +12896,10 @@ var recordSchemaDict = { maxLength: 256 }, entities: { - $ref: "#/$defs/entity" + type: "array", + items: { + $ref: "#/$defs/entity" + } }, reply: { type: "object", @@ -13277,21 +12920,18 @@ var recordSchemaDict = { }, $defs: { entity: { - type: "array", - items: { - type: "object", - required: ["index", "type", "value"], - properties: { - index: { - $ref: "#/$defs/textSlice" - }, - type: { - type: "string", - $comment: "Expected values are 'mention', 'hashtag', and 'link'." - }, - value: { - type: "string" - } + type: "object", + required: ["index", "type", "value"], + properties: { + index: { + $ref: "#/$defs/textSlice" + }, + type: { + type: "string", + $comment: "Expected values are 'mention', 'hashtag', and 'link'." + }, + value: { + type: "string" } } }, @@ -13336,21 +12976,18 @@ var recordSchemaDict = { } }, entity: { - type: "array", - items: { - type: "object", - required: ["index", "type", "value"], - properties: { - index: { - $ref: "#/$defs/textSlice" - }, - type: { - type: "string", - $comment: "Expected values are 'mention', 'hashtag', and 'link'." - }, - value: { - type: "string" - } + type: "object", + required: ["index", "type", "value"], + properties: { + index: { + $ref: "#/$defs/textSlice" + }, + type: { + type: "string", + $comment: "Expected values are 'mention', 'hashtag', and 'link'." + }, + value: { + type: "string" } } }, @@ -13369,63 +13006,9 @@ var recordSchemaDict = { } } }, - "app.bsky.profile": { + "app.bsky.feed.repost": { lexicon: 1, - id: "app.bsky.profile", - type: "record", - key: "literal:self", - record: { - type: "object", - required: ["displayName"], - properties: { - displayName: { - type: "string", - maxLength: 64 - }, - description: { - type: "string", - maxLength: 256 - }, - pinnedBadges: { - type: "array", - items: { - $ref: "#/$defs/badgeRef" - } - } - }, - $defs: { - badgeRef: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - } - } - } - } - }, - defs: { - badgeRef: { - type: "object", - required: ["uri", "cid"], - properties: { - uri: { - type: "string" - }, - cid: { - type: "string" - } - } - } - } - }, - "app.bsky.repost": { - lexicon: 1, - id: "app.bsky.repost", + id: "app.bsky.feed.repost", type: "record", key: "tid", record: { @@ -13469,20 +13052,170 @@ var recordSchemaDict = { } } } + }, + "app.bsky.graph.follow": { + lexicon: 1, + id: "app.bsky.graph.follow", + type: "record", + description: "A social follow", + key: "tid", + record: { + type: "object", + required: ["subject", "createdAt"], + properties: { + subject: { + type: "object", + required: ["did", "declarationCid"], + properties: { + did: { + type: "string" + }, + declarationCid: { + type: "string" + } + } + }, + createdAt: { + type: "string", + format: "date-time" + } + }, + $defs: {} + } + }, + "app.bsky.graph.invite": { + lexicon: 1, + id: "app.bsky.graph.invite", + type: "record", + key: "tid", + record: { + type: "object", + required: ["group", "subject", "createdAt"], + properties: { + group: { + type: "string" + }, + subject: { + type: "object", + required: ["did", "declarationCid"], + properties: { + did: { + type: "string" + }, + declarationCid: { + type: "string" + } + } + }, + createdAt: { + type: "string", + format: "date-time" + } + }, + $defs: {} + } + }, + "app.bsky.graph.inviteAccept": { + lexicon: 1, + id: "app.bsky.graph.inviteAccept", + type: "record", + key: "tid", + record: { + type: "object", + required: ["group", "invite", "createdAt"], + properties: { + group: { + type: "object", + required: ["did", "declarationCid"], + properties: { + did: { + type: "string" + }, + declarationCid: { + type: "string" + } + } + }, + invite: { + type: "object", + required: ["uri", "cid"], + properties: { + uri: { + type: "string" + }, + cid: { + type: "string" + } + } + }, + createdAt: { + type: "string", + format: "date-time" + } + }, + $defs: {} + } + }, + "app.bsky.system.declaration": { + lexicon: 1, + id: "app.bsky.system.declaration", + description: "Context for an account that is considered intrinsic to it and alters the fundamental understanding of an account of changed. A declaration should be treated as immutable.", + type: "record", + key: "literal:self", + record: { + type: "object", + required: ["actorType"], + properties: { + actorType: { + oneOf: [ + { + $ref: "#/$defs/actorKnown" + }, + { + $ref: "#/$defs/actorUnknown" + } + ] + } + }, + $defs: { + actorKnown: { + type: "string", + enum: ["app.bsky.system.actorUser", "app.bsky.system.actorScene"] + }, + actorUnknown: { + type: "string", + not: { + enum: ["app.bsky.system.actorUser", "app.bsky.system.actorScene"] + } + } + } + }, + defs: { + actorKnown: { + type: "string", + enum: ["app.bsky.system.actorUser", "app.bsky.system.actorScene"] + }, + actorUnknown: { + type: "string", + not: { + enum: ["app.bsky.system.actorUser", "app.bsky.system.actorScene"] + } + } + } } }; var recordSchemas = Object.values(recordSchemaDict); -// src/types/com/atproto/createAccount.ts -var createAccount_exports = {}; -__export(createAccount_exports, { +// src/client/types/com/atproto/account/create.ts +var create_exports = {}; +__export(create_exports, { + HandleNotAvailableError: () => HandleNotAvailableError, + InvalidHandleError: () => InvalidHandleError, InvalidInviteCodeError: () => InvalidInviteCodeError, InvalidPasswordError: () => InvalidPasswordError, - InvalidUsernameError: () => InvalidUsernameError, - UsernameNotAvailableError: () => UsernameNotAvailableError, toKnownErr: () => toKnownErr }); -var InvalidUsernameError = class extends XRPCError { +var InvalidHandleError = class extends XRPCError { constructor(src) { super(src.status, src.error, src.message); } @@ -13497,26 +13230,26 @@ var InvalidInviteCodeError = class extends XRPCError { super(src.status, src.error, src.message); } }; -var UsernameNotAvailableError = class extends XRPCError { +var HandleNotAvailableError = class extends XRPCError { constructor(src) { super(src.status, src.error, src.message); } }; function toKnownErr(e) { if (e instanceof XRPCError) { - if (e.error === "InvalidUsername") - return new InvalidUsernameError(e); + if (e.error === "InvalidHandle") + return new InvalidHandleError(e); if (e.error === "InvalidPassword") return new InvalidPasswordError(e); if (e.error === "InvalidInviteCode") return new InvalidInviteCodeError(e); - if (e.error === "UsernameNotAvailable") - return new UsernameNotAvailableError(e); + if (e.error === "HandleNotAvailable") + return new HandleNotAvailableError(e); } return e; } -// src/types/com/atproto/createInviteCode.ts +// src/client/types/com/atproto/account/createInviteCode.ts var createInviteCode_exports = {}; __export(createInviteCode_exports, { toKnownErr: () => toKnownErr2 @@ -13527,9 +13260,9 @@ function toKnownErr2(e) { return e; } -// src/types/com/atproto/createSession.ts -var createSession_exports = {}; -__export(createSession_exports, { +// src/client/types/com/atproto/account/delete.ts +var delete_exports = {}; +__export(delete_exports, { toKnownErr: () => toKnownErr3 }); function toKnownErr3(e) { @@ -13538,9 +13271,9 @@ function toKnownErr3(e) { return e; } -// src/types/com/atproto/deleteAccount.ts -var deleteAccount_exports = {}; -__export(deleteAccount_exports, { +// src/client/types/com/atproto/account/get.ts +var get_exports = {}; +__export(get_exports, { toKnownErr: () => toKnownErr4 }); function toKnownErr4(e) { @@ -13549,9 +13282,9 @@ function toKnownErr4(e) { return e; } -// src/types/com/atproto/deleteSession.ts -var deleteSession_exports = {}; -__export(deleteSession_exports, { +// src/client/types/com/atproto/account/requestPasswordReset.ts +var requestPasswordReset_exports = {}; +__export(requestPasswordReset_exports, { toKnownErr: () => toKnownErr5 }); function toKnownErr5(e) { @@ -13560,133 +13293,12 @@ function toKnownErr5(e) { return e; } -// src/types/com/atproto/getAccount.ts -var getAccount_exports = {}; -__export(getAccount_exports, { - toKnownErr: () => toKnownErr6 -}); -function toKnownErr6(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/getAccountsConfig.ts -var getAccountsConfig_exports = {}; -__export(getAccountsConfig_exports, { - toKnownErr: () => toKnownErr7 -}); -function toKnownErr7(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/getSession.ts -var getSession_exports = {}; -__export(getSession_exports, { - toKnownErr: () => toKnownErr8 -}); -function toKnownErr8(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/repoBatchWrite.ts -var repoBatchWrite_exports = {}; -__export(repoBatchWrite_exports, { - toKnownErr: () => toKnownErr9 -}); -function toKnownErr9(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/repoCreateRecord.ts -var repoCreateRecord_exports = {}; -__export(repoCreateRecord_exports, { - toKnownErr: () => toKnownErr10 -}); -function toKnownErr10(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/repoDeleteRecord.ts -var repoDeleteRecord_exports = {}; -__export(repoDeleteRecord_exports, { - toKnownErr: () => toKnownErr11 -}); -function toKnownErr11(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/repoDescribe.ts -var repoDescribe_exports = {}; -__export(repoDescribe_exports, { - toKnownErr: () => toKnownErr12 -}); -function toKnownErr12(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/repoGetRecord.ts -var repoGetRecord_exports = {}; -__export(repoGetRecord_exports, { - toKnownErr: () => toKnownErr13 -}); -function toKnownErr13(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/repoListRecords.ts -var repoListRecords_exports = {}; -__export(repoListRecords_exports, { - toKnownErr: () => toKnownErr14 -}); -function toKnownErr14(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/repoPutRecord.ts -var repoPutRecord_exports = {}; -__export(repoPutRecord_exports, { - toKnownErr: () => toKnownErr15 -}); -function toKnownErr15(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/requestAccountPasswordReset.ts -var requestAccountPasswordReset_exports = {}; -__export(requestAccountPasswordReset_exports, { - toKnownErr: () => toKnownErr16 -}); -function toKnownErr16(e) { - if (e instanceof XRPCError) { - } - return e; -} - -// src/types/com/atproto/resetAccountPassword.ts -var resetAccountPassword_exports = {}; -__export(resetAccountPassword_exports, { +// src/client/types/com/atproto/account/resetPassword.ts +var resetPassword_exports = {}; +__export(resetPassword_exports, { ExpiredTokenError: () => ExpiredTokenError, InvalidTokenError: () => InvalidTokenError, - toKnownErr: () => toKnownErr17 + toKnownErr: () => toKnownErr6 }); var ExpiredTokenError = class extends XRPCError { constructor(src) { @@ -13698,7 +13310,7 @@ var InvalidTokenError = class extends XRPCError { super(src.status, src.error, src.message); } }; -function toKnownErr17(e) { +function toKnownErr6(e) { if (e instanceof XRPCError) { if (e.error === "ExpiredToken") return new ExpiredTokenError(e); @@ -13708,9 +13320,130 @@ function toKnownErr17(e) { return e; } -// src/types/com/atproto/resolveName.ts -var resolveName_exports = {}; -__export(resolveName_exports, { +// src/client/types/com/atproto/handle/resolve.ts +var resolve_exports = {}; +__export(resolve_exports, { + toKnownErr: () => toKnownErr7 +}); +function toKnownErr7(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/repo/batchWrite.ts +var batchWrite_exports = {}; +__export(batchWrite_exports, { + toKnownErr: () => toKnownErr8 +}); +function toKnownErr8(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/repo/createRecord.ts +var createRecord_exports = {}; +__export(createRecord_exports, { + toKnownErr: () => toKnownErr9 +}); +function toKnownErr9(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/repo/deleteRecord.ts +var deleteRecord_exports = {}; +__export(deleteRecord_exports, { + toKnownErr: () => toKnownErr10 +}); +function toKnownErr10(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/repo/describe.ts +var describe_exports = {}; +__export(describe_exports, { + toKnownErr: () => toKnownErr11 +}); +function toKnownErr11(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/repo/getRecord.ts +var getRecord_exports = {}; +__export(getRecord_exports, { + toKnownErr: () => toKnownErr12 +}); +function toKnownErr12(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/repo/listRecords.ts +var listRecords_exports = {}; +__export(listRecords_exports, { + toKnownErr: () => toKnownErr13 +}); +function toKnownErr13(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/repo/putRecord.ts +var putRecord_exports = {}; +__export(putRecord_exports, { + toKnownErr: () => toKnownErr14 +}); +function toKnownErr14(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/server/getAccountsConfig.ts +var getAccountsConfig_exports = {}; +__export(getAccountsConfig_exports, { + toKnownErr: () => toKnownErr15 +}); +function toKnownErr15(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/session/create.ts +var create_exports2 = {}; +__export(create_exports2, { + toKnownErr: () => toKnownErr16 +}); +function toKnownErr16(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/session/delete.ts +var delete_exports2 = {}; +__export(delete_exports2, { + toKnownErr: () => toKnownErr17 +}); +function toKnownErr17(e) { + if (e instanceof XRPCError) { + } + return e; +} + +// src/client/types/com/atproto/session/get.ts +var get_exports2 = {}; +__export(get_exports2, { toKnownErr: () => toKnownErr18 }); function toKnownErr18(e) { @@ -13719,9 +13452,9 @@ function toKnownErr18(e) { return e; } -// src/types/com/atproto/syncGetRepo.ts -var syncGetRepo_exports = {}; -__export(syncGetRepo_exports, { +// src/client/types/com/atproto/session/refresh.ts +var refresh_exports = {}; +__export(refresh_exports, { toKnownErr: () => toKnownErr19 }); function toKnownErr19(e) { @@ -13730,9 +13463,9 @@ function toKnownErr19(e) { return e; } -// src/types/com/atproto/syncGetRoot.ts -var syncGetRoot_exports = {}; -__export(syncGetRoot_exports, { +// src/client/types/com/atproto/sync/getRepo.ts +var getRepo_exports = {}; +__export(getRepo_exports, { toKnownErr: () => toKnownErr20 }); function toKnownErr20(e) { @@ -13741,9 +13474,9 @@ function toKnownErr20(e) { return e; } -// src/types/com/atproto/syncUpdateRepo.ts -var syncUpdateRepo_exports = {}; -__export(syncUpdateRepo_exports, { +// src/client/types/com/atproto/sync/getRoot.ts +var getRoot_exports = {}; +__export(getRoot_exports, { toKnownErr: () => toKnownErr21 }); function toKnownErr21(e) { @@ -13752,9 +13485,9 @@ function toKnownErr21(e) { return e; } -// src/types/app/bsky/getAuthorFeed.ts -var getAuthorFeed_exports = {}; -__export(getAuthorFeed_exports, { +// src/client/types/com/atproto/sync/updateRepo.ts +var updateRepo_exports = {}; +__export(updateRepo_exports, { toKnownErr: () => toKnownErr22 }); function toKnownErr22(e) { @@ -13763,9 +13496,9 @@ function toKnownErr22(e) { return e; } -// src/types/app/bsky/getBadgeMembers.ts -var getBadgeMembers_exports = {}; -__export(getBadgeMembers_exports, { +// src/client/types/app/bsky/actor/getProfile.ts +var getProfile_exports = {}; +__export(getProfile_exports, { toKnownErr: () => toKnownErr23 }); function toKnownErr23(e) { @@ -13774,9 +13507,9 @@ function toKnownErr23(e) { return e; } -// src/types/app/bsky/getHomeFeed.ts -var getHomeFeed_exports = {}; -__export(getHomeFeed_exports, { +// src/client/types/app/bsky/actor/search.ts +var search_exports = {}; +__export(search_exports, { toKnownErr: () => toKnownErr24 }); function toKnownErr24(e) { @@ -13785,9 +13518,9 @@ function toKnownErr24(e) { return e; } -// src/types/app/bsky/getLikedBy.ts -var getLikedBy_exports = {}; -__export(getLikedBy_exports, { +// src/client/types/app/bsky/actor/searchTypeahead.ts +var searchTypeahead_exports = {}; +__export(searchTypeahead_exports, { toKnownErr: () => toKnownErr25 }); function toKnownErr25(e) { @@ -13796,9 +13529,9 @@ function toKnownErr25(e) { return e; } -// src/types/app/bsky/getNotificationCount.ts -var getNotificationCount_exports = {}; -__export(getNotificationCount_exports, { +// src/client/types/app/bsky/actor/updateProfile.ts +var updateProfile_exports = {}; +__export(updateProfile_exports, { toKnownErr: () => toKnownErr26 }); function toKnownErr26(e) { @@ -13807,9 +13540,9 @@ function toKnownErr26(e) { return e; } -// src/types/app/bsky/getNotifications.ts -var getNotifications_exports = {}; -__export(getNotifications_exports, { +// src/client/types/app/bsky/feed/getAuthorFeed.ts +var getAuthorFeed_exports = {}; +__export(getAuthorFeed_exports, { toKnownErr: () => toKnownErr27 }); function toKnownErr27(e) { @@ -13818,9 +13551,9 @@ function toKnownErr27(e) { return e; } -// src/types/app/bsky/getPostThread.ts -var getPostThread_exports = {}; -__export(getPostThread_exports, { +// src/client/types/app/bsky/feed/getLikedBy.ts +var getLikedBy_exports = {}; +__export(getLikedBy_exports, { toKnownErr: () => toKnownErr28 }); function toKnownErr28(e) { @@ -13829,9 +13562,9 @@ function toKnownErr28(e) { return e; } -// src/types/app/bsky/getProfile.ts -var getProfile_exports = {}; -__export(getProfile_exports, { +// src/client/types/app/bsky/feed/getPostThread.ts +var getPostThread_exports = {}; +__export(getPostThread_exports, { toKnownErr: () => toKnownErr29 }); function toKnownErr29(e) { @@ -13840,7 +13573,7 @@ function toKnownErr29(e) { return e; } -// src/types/app/bsky/getRepostedBy.ts +// src/client/types/app/bsky/feed/getRepostedBy.ts var getRepostedBy_exports = {}; __export(getRepostedBy_exports, { toKnownErr: () => toKnownErr30 @@ -13851,9 +13584,9 @@ function toKnownErr30(e) { return e; } -// src/types/app/bsky/getUserFollowers.ts -var getUserFollowers_exports = {}; -__export(getUserFollowers_exports, { +// src/client/types/app/bsky/feed/getTimeline.ts +var getTimeline_exports = {}; +__export(getTimeline_exports, { toKnownErr: () => toKnownErr31 }); function toKnownErr31(e) { @@ -13862,9 +13595,9 @@ function toKnownErr31(e) { return e; } -// src/types/app/bsky/getUserFollows.ts -var getUserFollows_exports = {}; -__export(getUserFollows_exports, { +// src/client/types/app/bsky/graph/getFollowers.ts +var getFollowers_exports = {}; +__export(getFollowers_exports, { toKnownErr: () => toKnownErr32 }); function toKnownErr32(e) { @@ -13873,9 +13606,9 @@ function toKnownErr32(e) { return e; } -// src/types/app/bsky/getUsersSearch.ts -var getUsersSearch_exports = {}; -__export(getUsersSearch_exports, { +// src/client/types/app/bsky/graph/getFollows.ts +var getFollows_exports = {}; +__export(getFollows_exports, { toKnownErr: () => toKnownErr33 }); function toKnownErr33(e) { @@ -13884,9 +13617,9 @@ function toKnownErr33(e) { return e; } -// src/types/app/bsky/getUsersTypeahead.ts -var getUsersTypeahead_exports = {}; -__export(getUsersTypeahead_exports, { +// src/client/types/app/bsky/notification/getCount.ts +var getCount_exports = {}; +__export(getCount_exports, { toKnownErr: () => toKnownErr34 }); function toKnownErr34(e) { @@ -13895,9 +13628,9 @@ function toKnownErr34(e) { return e; } -// src/types/app/bsky/postNotificationsSeen.ts -var postNotificationsSeen_exports = {}; -__export(postNotificationsSeen_exports, { +// src/client/types/app/bsky/notification/list.ts +var list_exports = {}; +__export(list_exports, { toKnownErr: () => toKnownErr35 }); function toKnownErr35(e) { @@ -13906,9 +13639,9 @@ function toKnownErr35(e) { return e; } -// src/types/app/bsky/updateProfile.ts -var updateProfile_exports = {}; -__export(updateProfile_exports, { +// src/client/types/app/bsky/notification/updateSeen.ts +var updateSeen_exports = {}; +__export(updateSeen_exports, { toKnownErr: () => toKnownErr36 }); function toKnownErr36(e) { @@ -13917,34 +13650,38 @@ function toKnownErr36(e) { return e; } -// src/types/app/bsky/badge.ts -var badge_exports = {}; - -// src/types/app/bsky/badgeAccept.ts -var badgeAccept_exports = {}; - -// src/types/app/bsky/badgeOffer.ts -var badgeOffer_exports = {}; - -// src/types/app/bsky/follow.ts -var follow_exports = {}; - -// src/types/app/bsky/like.ts -var like_exports = {}; - -// src/types/app/bsky/mediaEmbed.ts -var mediaEmbed_exports = {}; - -// src/types/app/bsky/post.ts -var post_exports = {}; - -// src/types/app/bsky/profile.ts +// src/client/types/app/bsky/actor/profile.ts var profile_exports = {}; -// src/types/app/bsky/repost.ts +// src/client/types/app/bsky/feed/like.ts +var like_exports = {}; + +// src/client/types/app/bsky/feed/mediaEmbed.ts +var mediaEmbed_exports = {}; + +// src/client/types/app/bsky/feed/post.ts +var post_exports = {}; + +// src/client/types/app/bsky/feed/repost.ts var repost_exports = {}; -// src/index.ts +// src/client/types/app/bsky/graph/follow.ts +var follow_exports = {}; + +// src/client/types/app/bsky/graph/invite.ts +var invite_exports = {}; + +// src/client/types/app/bsky/graph/inviteAccept.ts +var inviteAccept_exports = {}; + +// src/client/types/app/bsky/system/declaration.ts +var declaration_exports = {}; + +// src/client/index.ts +var APP_BSKY_SYSTEM = { + ActorScene: "app.bsky.system.actorScene", + ActorUser: "app.bsky.system.actorUser" +}; var Client2 = class { constructor() { this.xrpc = new Client(); @@ -13955,7 +13692,7 @@ var Client2 = class { } }; var defaultInst2 = new Client2(); -var src_default = defaultInst2; +var client_default = defaultInst2; var ServiceClient2 = class { constructor(baseClient, xrpcService) { this._baseClient = baseClient; @@ -13976,112 +13713,153 @@ var ComNS = class { var AtprotoNS = class { constructor(service) { this._service = service; + this.account = new AccountNS(service); + this.handle = new HandleNS(service); + this.repo = new RepoNS(service); + this.server = new ServerNS(service); + this.session = new SessionNS(service); + this.sync = new SyncNS(service); } - createAccount(params, data, opts) { - return this._service.xrpc.call("com.atproto.createAccount", params, data, opts).catch((e) => { +}; +var AccountNS = class { + constructor(service) { + this._service = service; + } + create(data, opts) { + return this._service.xrpc.call("com.atproto.account.create", opts?.qp, data, opts).catch((e) => { throw toKnownErr(e); }); } - createInviteCode(params, data, opts) { - return this._service.xrpc.call("com.atproto.createInviteCode", params, data, opts).catch((e) => { + createInviteCode(data, opts) { + return this._service.xrpc.call("com.atproto.account.createInviteCode", opts?.qp, data, opts).catch((e) => { throw toKnownErr2(e); }); } - createSession(params, data, opts) { - return this._service.xrpc.call("com.atproto.createSession", params, data, opts).catch((e) => { + delete(data, opts) { + return this._service.xrpc.call("com.atproto.account.delete", opts?.qp, data, opts).catch((e) => { throw toKnownErr3(e); }); } - deleteAccount(params, data, opts) { - return this._service.xrpc.call("com.atproto.deleteAccount", params, data, opts).catch((e) => { + get(params, opts) { + return this._service.xrpc.call("com.atproto.account.get", params, void 0, opts).catch((e) => { throw toKnownErr4(e); }); } - deleteSession(params, data, opts) { - return this._service.xrpc.call("com.atproto.deleteSession", params, data, opts).catch((e) => { + requestPasswordReset(data, opts) { + return this._service.xrpc.call("com.atproto.account.requestPasswordReset", opts?.qp, data, opts).catch((e) => { throw toKnownErr5(e); }); } - getAccount(params, data, opts) { - return this._service.xrpc.call("com.atproto.getAccount", params, data, opts).catch((e) => { + resetPassword(data, opts) { + return this._service.xrpc.call("com.atproto.account.resetPassword", opts?.qp, data, opts).catch((e) => { throw toKnownErr6(e); }); } - getAccountsConfig(params, data, opts) { - return this._service.xrpc.call("com.atproto.getAccountsConfig", params, data, opts).catch((e) => { +}; +var HandleNS = class { + constructor(service) { + this._service = service; + } + resolve(params, opts) { + return this._service.xrpc.call("com.atproto.handle.resolve", params, void 0, opts).catch((e) => { throw toKnownErr7(e); }); } - getSession(params, data, opts) { - return this._service.xrpc.call("com.atproto.getSession", params, data, opts).catch((e) => { +}; +var RepoNS = class { + constructor(service) { + this._service = service; + } + batchWrite(data, opts) { + return this._service.xrpc.call("com.atproto.repo.batchWrite", opts?.qp, data, opts).catch((e) => { throw toKnownErr8(e); }); } - repoBatchWrite(params, data, opts) { - return this._service.xrpc.call("com.atproto.repoBatchWrite", params, data, opts).catch((e) => { + createRecord(data, opts) { + return this._service.xrpc.call("com.atproto.repo.createRecord", opts?.qp, data, opts).catch((e) => { throw toKnownErr9(e); }); } - repoCreateRecord(params, data, opts) { - return this._service.xrpc.call("com.atproto.repoCreateRecord", params, data, opts).catch((e) => { + deleteRecord(data, opts) { + return this._service.xrpc.call("com.atproto.repo.deleteRecord", opts?.qp, data, opts).catch((e) => { throw toKnownErr10(e); }); } - repoDeleteRecord(params, data, opts) { - return this._service.xrpc.call("com.atproto.repoDeleteRecord", params, data, opts).catch((e) => { + describe(params, opts) { + return this._service.xrpc.call("com.atproto.repo.describe", params, void 0, opts).catch((e) => { throw toKnownErr11(e); }); } - repoDescribe(params, data, opts) { - return this._service.xrpc.call("com.atproto.repoDescribe", params, data, opts).catch((e) => { + getRecord(params, opts) { + return this._service.xrpc.call("com.atproto.repo.getRecord", params, void 0, opts).catch((e) => { throw toKnownErr12(e); }); } - repoGetRecord(params, data, opts) { - return this._service.xrpc.call("com.atproto.repoGetRecord", params, data, opts).catch((e) => { + listRecords(params, opts) { + return this._service.xrpc.call("com.atproto.repo.listRecords", params, void 0, opts).catch((e) => { throw toKnownErr13(e); }); } - repoListRecords(params, data, opts) { - return this._service.xrpc.call("com.atproto.repoListRecords", params, data, opts).catch((e) => { + putRecord(data, opts) { + return this._service.xrpc.call("com.atproto.repo.putRecord", opts?.qp, data, opts).catch((e) => { throw toKnownErr14(e); }); } - repoPutRecord(params, data, opts) { - return this._service.xrpc.call("com.atproto.repoPutRecord", params, data, opts).catch((e) => { +}; +var ServerNS = class { + constructor(service) { + this._service = service; + } + getAccountsConfig(params, opts) { + return this._service.xrpc.call("com.atproto.server.getAccountsConfig", params, void 0, opts).catch((e) => { throw toKnownErr15(e); }); } - requestAccountPasswordReset(params, data, opts) { - return this._service.xrpc.call("com.atproto.requestAccountPasswordReset", params, data, opts).catch((e) => { +}; +var SessionNS = class { + constructor(service) { + this._service = service; + } + create(data, opts) { + return this._service.xrpc.call("com.atproto.session.create", opts?.qp, data, opts).catch((e) => { throw toKnownErr16(e); }); } - resetAccountPassword(params, data, opts) { - return this._service.xrpc.call("com.atproto.resetAccountPassword", params, data, opts).catch((e) => { + delete(data, opts) { + return this._service.xrpc.call("com.atproto.session.delete", opts?.qp, data, opts).catch((e) => { throw toKnownErr17(e); }); } - resolveName(params, data, opts) { - return this._service.xrpc.call("com.atproto.resolveName", params, data, opts).catch((e) => { + get(params, opts) { + return this._service.xrpc.call("com.atproto.session.get", params, void 0, opts).catch((e) => { throw toKnownErr18(e); }); } - syncGetRepo(params, data, opts) { - return this._service.xrpc.call("com.atproto.syncGetRepo", params, data, opts).catch((e) => { + refresh(data, opts) { + return this._service.xrpc.call("com.atproto.session.refresh", opts?.qp, data, opts).catch((e) => { throw toKnownErr19(e); }); } - syncGetRoot(params, data, opts) { - return this._service.xrpc.call("com.atproto.syncGetRoot", params, data, opts).catch((e) => { +}; +var SyncNS = class { + constructor(service) { + this._service = service; + } + getRepo(params, opts) { + return this._service.xrpc.call("com.atproto.sync.getRepo", params, void 0, opts).catch((e) => { throw toKnownErr20(e); }); } - syncUpdateRepo(params, data, opts) { - return this._service.xrpc.call("com.atproto.syncUpdateRepo", params, data, opts).catch((e) => { + getRoot(params, opts) { + return this._service.xrpc.call("com.atproto.sync.getRoot", params, void 0, opts).catch((e) => { throw toKnownErr21(e); }); } + updateRepo(data, opts) { + return this._service.xrpc.call("com.atproto.sync.updateRepo", opts?.qp, data, opts).catch((e) => { + throw toKnownErr22(e); + }); + } }; var AppNS = class { constructor(service) { @@ -14092,273 +13870,143 @@ var AppNS = class { var BskyNS = class { constructor(service) { this._service = service; - this.badge = new BadgeRecord(service); - this.badgeAccept = new BadgeAcceptRecord(service); - this.badgeOffer = new BadgeOfferRecord(service); - this.follow = new FollowRecord(service); - this.like = new LikeRecord(service); - this.mediaEmbed = new MediaEmbedRecord(service); - this.post = new PostRecord(service); + this.actor = new ActorNS(service); + this.feed = new FeedNS(service); + this.graph = new GraphNS(service); + this.notification = new NotificationNS(service); + this.system = new SystemNS(service); + } +}; +var ActorNS = class { + constructor(service) { + this._service = service; this.profile = new ProfileRecord(service); - this.repost = new RepostRecord(service); } - getAuthorFeed(params, data, opts) { - return this._service.xrpc.call("app.bsky.getAuthorFeed", params, data, opts).catch((e) => { - throw toKnownErr22(e); - }); - } - getBadgeMembers(params, data, opts) { - return this._service.xrpc.call("app.bsky.getBadgeMembers", params, data, opts).catch((e) => { + getProfile(params, opts) { + return this._service.xrpc.call("app.bsky.actor.getProfile", params, void 0, opts).catch((e) => { throw toKnownErr23(e); }); } - getHomeFeed(params, data, opts) { - return this._service.xrpc.call("app.bsky.getHomeFeed", params, data, opts).catch((e) => { + search(params, opts) { + return this._service.xrpc.call("app.bsky.actor.search", params, void 0, opts).catch((e) => { throw toKnownErr24(e); }); } - getLikedBy(params, data, opts) { - return this._service.xrpc.call("app.bsky.getLikedBy", params, data, opts).catch((e) => { + searchTypeahead(params, opts) { + return this._service.xrpc.call("app.bsky.actor.searchTypeahead", params, void 0, opts).catch((e) => { throw toKnownErr25(e); }); } - getNotificationCount(params, data, opts) { - return this._service.xrpc.call("app.bsky.getNotificationCount", params, data, opts).catch((e) => { + updateProfile(data, opts) { + return this._service.xrpc.call("app.bsky.actor.updateProfile", opts?.qp, data, opts).catch((e) => { throw toKnownErr26(e); }); } - getNotifications(params, data, opts) { - return this._service.xrpc.call("app.bsky.getNotifications", params, data, opts).catch((e) => { +}; +var ProfileRecord = class { + constructor(service) { + this._service = service; + } + async list(params) { + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.actor.profile", + ...params + }); + return res.data; + } + async get(params) { + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.actor.profile", + ...params + }); + return res.data; + } + async create(params, record, headers) { + record.$type = "app.bsky.actor.profile"; + const res = await this._service.xrpc.call( + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.actor.profile", ...params, record }, + { encoding: "application/json", headers } + ); + return res.data; + } + async delete(params, headers) { + await this._service.xrpc.call( + "com.atproto.repo.deleteRecord", + void 0, + { collection: "app.bsky.actor.profile", ...params }, + { headers } + ); + } +}; +var FeedNS = class { + constructor(service) { + this._service = service; + this.like = new LikeRecord(service); + this.mediaEmbed = new MediaEmbedRecord(service); + this.post = new PostRecord(service); + this.repost = new RepostRecord(service); + } + getAuthorFeed(params, opts) { + return this._service.xrpc.call("app.bsky.feed.getAuthorFeed", params, void 0, opts).catch((e) => { throw toKnownErr27(e); }); } - getPostThread(params, data, opts) { - return this._service.xrpc.call("app.bsky.getPostThread", params, data, opts).catch((e) => { + getLikedBy(params, opts) { + return this._service.xrpc.call("app.bsky.feed.getLikedBy", params, void 0, opts).catch((e) => { throw toKnownErr28(e); }); } - getProfile(params, data, opts) { - return this._service.xrpc.call("app.bsky.getProfile", params, data, opts).catch((e) => { + getPostThread(params, opts) { + return this._service.xrpc.call("app.bsky.feed.getPostThread", params, void 0, opts).catch((e) => { throw toKnownErr29(e); }); } - getRepostedBy(params, data, opts) { - return this._service.xrpc.call("app.bsky.getRepostedBy", params, data, opts).catch((e) => { + getRepostedBy(params, opts) { + return this._service.xrpc.call("app.bsky.feed.getRepostedBy", params, void 0, opts).catch((e) => { throw toKnownErr30(e); }); } - getUserFollowers(params, data, opts) { - return this._service.xrpc.call("app.bsky.getUserFollowers", params, data, opts).catch((e) => { + getTimeline(params, opts) { + return this._service.xrpc.call("app.bsky.feed.getTimeline", params, void 0, opts).catch((e) => { throw toKnownErr31(e); }); } - getUserFollows(params, data, opts) { - return this._service.xrpc.call("app.bsky.getUserFollows", params, data, opts).catch((e) => { - throw toKnownErr32(e); - }); - } - getUsersSearch(params, data, opts) { - return this._service.xrpc.call("app.bsky.getUsersSearch", params, data, opts).catch((e) => { - throw toKnownErr33(e); - }); - } - getUsersTypeahead(params, data, opts) { - return this._service.xrpc.call("app.bsky.getUsersTypeahead", params, data, opts).catch((e) => { - throw toKnownErr34(e); - }); - } - postNotificationsSeen(params, data, opts) { - return this._service.xrpc.call("app.bsky.postNotificationsSeen", params, data, opts).catch((e) => { - throw toKnownErr35(e); - }); - } - updateProfile(params, data, opts) { - return this._service.xrpc.call("app.bsky.updateProfile", params, data, opts).catch((e) => { - throw toKnownErr36(e); - }); - } -}; -var BadgeRecord = class { - constructor(service) { - this._service = service; - } - async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.badge", - ...params - }); - return res.data; - } - async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.badge", - ...params - }); - return res.data; - } - async create(params, record, headers) { - record.$type = "app.bsky.badge"; - const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.badge", ...params }, - record, - { encoding: "application/json", headers } - ); - return res.data; - } - async delete(params, headers) { - await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.badge", ...params }, - void 0, - { headers } - ); - } -}; -var BadgeAcceptRecord = class { - constructor(service) { - this._service = service; - } - async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.badgeAccept", - ...params - }); - return res.data; - } - async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.badgeAccept", - ...params - }); - return res.data; - } - async create(params, record, headers) { - record.$type = "app.bsky.badgeAccept"; - const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.badgeAccept", ...params }, - record, - { encoding: "application/json", headers } - ); - return res.data; - } - async delete(params, headers) { - await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.badgeAccept", ...params }, - void 0, - { headers } - ); - } -}; -var BadgeOfferRecord = class { - constructor(service) { - this._service = service; - } - async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.badgeOffer", - ...params - }); - return res.data; - } - async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.badgeOffer", - ...params - }); - return res.data; - } - async create(params, record, headers) { - record.$type = "app.bsky.badgeOffer"; - const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.badgeOffer", ...params }, - record, - { encoding: "application/json", headers } - ); - return res.data; - } - async delete(params, headers) { - await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.badgeOffer", ...params }, - void 0, - { headers } - ); - } -}; -var FollowRecord = class { - constructor(service) { - this._service = service; - } - async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.follow", - ...params - }); - return res.data; - } - async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.follow", - ...params - }); - return res.data; - } - async create(params, record, headers) { - record.$type = "app.bsky.follow"; - const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.follow", ...params }, - record, - { encoding: "application/json", headers } - ); - return res.data; - } - async delete(params, headers) { - await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.follow", ...params }, - void 0, - { headers } - ); - } }; var LikeRecord = class { constructor(service) { this._service = service; } async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.like", + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.feed.like", ...params }); return res.data; } async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.like", + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.feed.like", ...params }); return res.data; } async create(params, record, headers) { - record.$type = "app.bsky.like"; + record.$type = "app.bsky.feed.like"; const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.like", ...params }, - record, + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.feed.like", ...params, record }, { encoding: "application/json", headers } ); return res.data; } async delete(params, headers) { await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.like", ...params }, + "com.atproto.repo.deleteRecord", void 0, + { collection: "app.bsky.feed.like", ...params }, { headers } ); } @@ -14368,34 +14016,34 @@ var MediaEmbedRecord = class { this._service = service; } async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.mediaEmbed", + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.feed.mediaEmbed", ...params }); return res.data; } async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.mediaEmbed", + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.feed.mediaEmbed", ...params }); return res.data; } async create(params, record, headers) { - record.$type = "app.bsky.mediaEmbed"; + record.$type = "app.bsky.feed.mediaEmbed"; const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.mediaEmbed", ...params }, - record, + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.feed.mediaEmbed", ...params, record }, { encoding: "application/json", headers } ); return res.data; } async delete(params, headers) { await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.mediaEmbed", ...params }, + "com.atproto.repo.deleteRecord", void 0, + { collection: "app.bsky.feed.mediaEmbed", ...params }, { headers } ); } @@ -14405,71 +14053,34 @@ var PostRecord = class { this._service = service; } async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.post", + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.feed.post", ...params }); return res.data; } async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.post", + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.feed.post", ...params }); return res.data; } async create(params, record, headers) { - record.$type = "app.bsky.post"; + record.$type = "app.bsky.feed.post"; const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.post", ...params }, - record, + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.feed.post", ...params, record }, { encoding: "application/json", headers } ); return res.data; } async delete(params, headers) { await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.post", ...params }, - void 0, - { headers } - ); - } -}; -var ProfileRecord = class { - constructor(service) { - this._service = service; - } - async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.profile", - ...params - }); - return res.data; - } - async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.profile", - ...params - }); - return res.data; - } - async create(params, record, headers) { - record.$type = "app.bsky.profile"; - const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.profile", ...params }, - record, - { encoding: "application/json", headers } - ); - return res.data; - } - async delete(params, headers) { - await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.profile", ...params }, + "com.atproto.repo.deleteRecord", void 0, + { collection: "app.bsky.feed.post", ...params }, { headers } ); } @@ -14479,79 +14090,393 @@ var RepostRecord = class { this._service = service; } async list(params) { - const res = await this._service.xrpc.call("com.atproto.repoListRecords", { - collection: "app.bsky.repost", + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.feed.repost", ...params }); return res.data; } async get(params) { - const res = await this._service.xrpc.call("com.atproto.repoGetRecord", { - collection: "app.bsky.repost", + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.feed.repost", ...params }); return res.data; } async create(params, record, headers) { - record.$type = "app.bsky.repost"; + record.$type = "app.bsky.feed.repost"; const res = await this._service.xrpc.call( - "com.atproto.repoCreateRecord", - { collection: "app.bsky.repost", ...params }, - record, + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.feed.repost", ...params, record }, { encoding: "application/json", headers } ); return res.data; } async delete(params, headers) { await this._service.xrpc.call( - "com.atproto.repoDeleteRecord", - { collection: "app.bsky.repost", ...params }, + "com.atproto.repo.deleteRecord", void 0, + { collection: "app.bsky.feed.repost", ...params }, { headers } ); } }; +var GraphNS = class { + constructor(service) { + this._service = service; + this.follow = new FollowRecord(service); + this.invite = new InviteRecord(service); + this.inviteAccept = new InviteAcceptRecord(service); + } + getFollowers(params, opts) { + return this._service.xrpc.call("app.bsky.graph.getFollowers", params, void 0, opts).catch((e) => { + throw toKnownErr32(e); + }); + } + getFollows(params, opts) { + return this._service.xrpc.call("app.bsky.graph.getFollows", params, void 0, opts).catch((e) => { + throw toKnownErr33(e); + }); + } +}; +var FollowRecord = class { + constructor(service) { + this._service = service; + } + async list(params) { + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.graph.follow", + ...params + }); + return res.data; + } + async get(params) { + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.graph.follow", + ...params + }); + return res.data; + } + async create(params, record, headers) { + record.$type = "app.bsky.graph.follow"; + const res = await this._service.xrpc.call( + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.graph.follow", ...params, record }, + { encoding: "application/json", headers } + ); + return res.data; + } + async delete(params, headers) { + await this._service.xrpc.call( + "com.atproto.repo.deleteRecord", + void 0, + { collection: "app.bsky.graph.follow", ...params }, + { headers } + ); + } +}; +var InviteRecord = class { + constructor(service) { + this._service = service; + } + async list(params) { + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.graph.invite", + ...params + }); + return res.data; + } + async get(params) { + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.graph.invite", + ...params + }); + return res.data; + } + async create(params, record, headers) { + record.$type = "app.bsky.graph.invite"; + const res = await this._service.xrpc.call( + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.graph.invite", ...params, record }, + { encoding: "application/json", headers } + ); + return res.data; + } + async delete(params, headers) { + await this._service.xrpc.call( + "com.atproto.repo.deleteRecord", + void 0, + { collection: "app.bsky.graph.invite", ...params }, + { headers } + ); + } +}; +var InviteAcceptRecord = class { + constructor(service) { + this._service = service; + } + async list(params) { + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.graph.inviteAccept", + ...params + }); + return res.data; + } + async get(params) { + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.graph.inviteAccept", + ...params + }); + return res.data; + } + async create(params, record, headers) { + record.$type = "app.bsky.graph.inviteAccept"; + const res = await this._service.xrpc.call( + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.graph.inviteAccept", ...params, record }, + { encoding: "application/json", headers } + ); + return res.data; + } + async delete(params, headers) { + await this._service.xrpc.call( + "com.atproto.repo.deleteRecord", + void 0, + { collection: "app.bsky.graph.inviteAccept", ...params }, + { headers } + ); + } +}; +var NotificationNS = class { + constructor(service) { + this._service = service; + } + getCount(params, opts) { + return this._service.xrpc.call("app.bsky.notification.getCount", params, void 0, opts).catch((e) => { + throw toKnownErr34(e); + }); + } + list(params, opts) { + return this._service.xrpc.call("app.bsky.notification.list", params, void 0, opts).catch((e) => { + throw toKnownErr35(e); + }); + } + updateSeen(data, opts) { + return this._service.xrpc.call("app.bsky.notification.updateSeen", opts?.qp, data, opts).catch((e) => { + throw toKnownErr36(e); + }); + } +}; +var SystemNS = class { + constructor(service) { + this._service = service; + this.declaration = new DeclarationRecord(service); + } +}; +var DeclarationRecord = class { + constructor(service) { + this._service = service; + } + async list(params) { + const res = await this._service.xrpc.call("com.atproto.repo.listRecords", { + collection: "app.bsky.system.declaration", + ...params + }); + return res.data; + } + async get(params) { + const res = await this._service.xrpc.call("com.atproto.repo.getRecord", { + collection: "app.bsky.system.declaration", + ...params + }); + return res.data; + } + async create(params, record, headers) { + record.$type = "app.bsky.system.declaration"; + const res = await this._service.xrpc.call( + "com.atproto.repo.createRecord", + void 0, + { collection: "app.bsky.system.declaration", ...params, record }, + { encoding: "application/json", headers } + ); + return res.data; + } + async delete(params, headers) { + await this._service.xrpc.call( + "com.atproto.repo.deleteRecord", + void 0, + { collection: "app.bsky.system.declaration", ...params }, + { headers } + ); + } +}; + +// src/session.ts +var import_events = __toESM(require("events")); +var CREATE_SESSION = "com.atproto.session.create"; +var REFRESH_SESSION = "com.atproto.session.refresh"; +var DELETE_SESSION = "com.atproto.session.delete"; +var CREATE_ACCOUNT = "com.atproto.account.create"; +var SessionClient = class extends Client2 { + service(serviceUri) { + const xrpcService = new SessionXrpcServiceClient(this.xrpc, serviceUri); + return new SessionServiceClient(this, xrpcService); + } +}; +var defaultInst3 = new SessionClient(); +var session_default = defaultInst3; +var SessionServiceClient = class extends ServiceClient2 { + constructor(baseClient, xrpcService) { + super(baseClient, xrpcService); + this.sessionManager = this.xrpc.sessionManager; + } +}; +var SessionXrpcServiceClient = class extends ServiceClient { + constructor(baseClient, serviceUri) { + super(baseClient, serviceUri); + this.sessionManager = new SessionManager(); + this.sessionManager.on("session", () => { + const accessHeaders = this.sessionManager.accessHeaders(); + if (accessHeaders) { + this.setHeader("authorization", accessHeaders.authorization); + } else { + this.unsetHeader("authorization"); + } + }); + } + async call(methodNsid, params, data, opts) { + const original = (overrideOpts) => super.call(methodNsid, params, data, overrideOpts ?? opts); + if (opts?.headers?.authorization) { + return await original(); + } + if (methodNsid === REFRESH_SESSION) { + return await this.refresh(opts); + } + await this.refreshing; + if (methodNsid === CREATE_SESSION || methodNsid === CREATE_ACCOUNT) { + const result = await original(); + const { accessJwt, refreshJwt } = result.data; + this.sessionManager.set({ accessJwt, refreshJwt }); + return result; + } + if (methodNsid === DELETE_SESSION) { + const result = await original({ + ...opts, + headers: { + ...opts?.headers, + ...this.sessionManager.refreshHeaders() + } + }); + this.sessionManager.unset(); + return result; + } + try { + return await original(); + } catch (err) { + if (err instanceof XRPCError && err.status === 400 /* InvalidRequest */ && err.error === "ExpiredToken" && this.sessionManager.active()) { + await this.refresh(opts); + return await original(); + } + throw err; + } + } + async refresh(opts) { + this.refreshing ?? (this.refreshing = this._refresh(opts)); + try { + return await this.refreshing; + } finally { + this.refreshing = void 0; + } + } + async _refresh(opts) { + try { + const result = await super.call(REFRESH_SESSION, void 0, void 0, { + ...opts, + headers: { + ...opts?.headers, + ...this.sessionManager.refreshHeaders() + } + }); + const { accessJwt, refreshJwt } = result.data; + this.sessionManager.set({ accessJwt, refreshJwt }); + return result; + } catch (err) { + if (err instanceof XRPCError && err.status === 400 /* InvalidRequest */ && (err.error === "ExpiredToken" || err.error === "InvalidToken")) { + this.sessionManager.unset(); + } + throw err; + } + } +}; +var SessionManager = class extends import_events.default { + get() { + return this.session; + } + set(session) { + this.session = session; + this.emit("session", session); + } + unset() { + this.session = void 0; + this.emit("session", void 0); + } + active() { + return !!this.session; + } + accessHeaders() { + return this.session && { + authorization: `Bearer ${this.session.accessJwt}` + }; + } + refreshHeaders() { + return this.session && { + authorization: `Bearer ${this.session.refreshJwt}` + }; + } +}; // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { - AppBskyBadge, - AppBskyBadgeAccept, - AppBskyBadgeOffer, - AppBskyFollow, - AppBskyGetAuthorFeed, - AppBskyGetBadgeMembers, - AppBskyGetHomeFeed, - AppBskyGetLikedBy, - AppBskyGetNotificationCount, - AppBskyGetNotifications, - AppBskyGetPostThread, - AppBskyGetProfile, - AppBskyGetRepostedBy, - AppBskyGetUserFollowers, - AppBskyGetUserFollows, - AppBskyGetUsersSearch, - AppBskyGetUsersTypeahead, - AppBskyLike, - AppBskyMediaEmbed, - AppBskyPost, - AppBskyPostNotificationsSeen, - AppBskyProfile, - AppBskyRepost, - AppBskyUpdateProfile, + APP_BSKY_SYSTEM, + AccountNS, + ActorNS, + AppBskyActorGetProfile, + AppBskyActorProfile, + AppBskyActorSearch, + AppBskyActorSearchTypeahead, + AppBskyActorUpdateProfile, + AppBskyFeedGetAuthorFeed, + AppBskyFeedGetLikedBy, + AppBskyFeedGetPostThread, + AppBskyFeedGetRepostedBy, + AppBskyFeedGetTimeline, + AppBskyFeedLike, + AppBskyFeedMediaEmbed, + AppBskyFeedPost, + AppBskyFeedRepost, + AppBskyGraphFollow, + AppBskyGraphGetFollowers, + AppBskyGraphGetFollows, + AppBskyGraphInvite, + AppBskyGraphInviteAccept, + AppBskyNotificationGetCount, + AppBskyNotificationList, + AppBskyNotificationUpdateSeen, + AppBskySystemDeclaration, AppNS, AtprotoNS, - BadgeAcceptRecord, - BadgeOfferRecord, - BadgeRecord, BskyNS, Client, - ComAtprotoCreateAccount, - ComAtprotoCreateInviteCode, - ComAtprotoCreateSession, - ComAtprotoDeleteAccount, - ComAtprotoDeleteSession, - ComAtprotoGetAccount, - ComAtprotoGetAccountsConfig, - ComAtprotoGetSession, + ComAtprotoAccountCreate, + ComAtprotoAccountCreateInviteCode, + ComAtprotoAccountDelete, + ComAtprotoAccountGet, + ComAtprotoAccountRequestPasswordReset, + ComAtprotoAccountResetPassword, + ComAtprotoHandleResolve, ComAtprotoRepoBatchWrite, ComAtprotoRepoCreateRecord, ComAtprotoRepoDeleteRecord, @@ -14559,20 +14484,39 @@ var RepostRecord = class { ComAtprotoRepoGetRecord, ComAtprotoRepoListRecords, ComAtprotoRepoPutRecord, - ComAtprotoRequestAccountPasswordReset, - ComAtprotoResetAccountPassword, - ComAtprotoResolveName, + ComAtprotoServerGetAccountsConfig, + ComAtprotoSessionCreate, + ComAtprotoSessionDelete, + ComAtprotoSessionGet, + ComAtprotoSessionRefresh, ComAtprotoSyncGetRepo, ComAtprotoSyncGetRoot, ComAtprotoSyncUpdateRepo, ComNS, + DeclarationRecord, + FeedNS, FollowRecord, + GraphNS, + HandleNS, + InviteAcceptRecord, + InviteRecord, LikeRecord, MediaEmbedRecord, + NotificationNS, PostRecord, ProfileRecord, + RepoNS, RepostRecord, - ServiceClient + ServerNS, + ServiceClient, + SessionClient, + SessionManager, + SessionNS, + SessionServiceClient, + SessionXrpcServiceClient, + SyncNS, + SystemNS, + sessionClient }); /** @license URI.js v4.4.1 (c) 2011 Gary Court. License: http://github.com/garycourt/uri-js */ //# sourceMappingURL=index.js.map diff --git a/src/third-party/api/index.js.map b/src/third-party/api/index.js.map index 895fe3fe..511376da 100644 --- a/src/third-party/api/index.js.map +++ b/src/third-party/api/index.js.map @@ -1,7 +1,7 @@ { "version": 3, - "sources": ["../../../node_modules/ajv/lib/compile/codegen/code.ts", "../../../node_modules/ajv/lib/compile/codegen/scope.ts", "../../../node_modules/ajv/lib/compile/codegen/index.ts", "../../../node_modules/ajv/lib/compile/util.ts", "../../../node_modules/ajv/lib/compile/names.ts", "../../../node_modules/ajv/lib/compile/errors.ts", "../../../node_modules/ajv/lib/compile/validate/boolSchema.ts", "../../../node_modules/ajv/lib/compile/rules.ts", "../../../node_modules/ajv/lib/compile/validate/applicability.ts", "../../../node_modules/ajv/lib/compile/validate/dataType.ts", "../../../node_modules/ajv/lib/compile/validate/defaults.ts", "../../../node_modules/ajv/lib/vocabularies/code.ts", "../../../node_modules/ajv/lib/compile/validate/keyword.ts", "../../../node_modules/ajv/lib/compile/validate/subschema.ts", "../../../node_modules/fast-deep-equal/index.js", "../../../node_modules/json-schema-traverse/index.js", "../../../node_modules/ajv/lib/compile/resolve.ts", "../../../node_modules/ajv/lib/compile/validate/index.ts", "../../../node_modules/ajv/lib/runtime/validation_error.ts", "../../../node_modules/ajv/lib/compile/ref_error.ts", "../../../node_modules/ajv/lib/compile/index.ts", "../../../node_modules/uri-js/src/index.ts", "../../../node_modules/uri-js/src/schemes/urn-uuid.ts", "../../../node_modules/uri-js/src/schemes/urn.ts", "../../../node_modules/uri-js/src/schemes/mailto.ts", "../../../node_modules/uri-js/src/schemes/wss.ts", "../../../node_modules/uri-js/src/schemes/ws.ts", "../../../node_modules/uri-js/src/schemes/https.ts", "../../../node_modules/uri-js/src/schemes/http.ts", "../../../node_modules/uri-js/src/uri.ts", "../../../node_modules/uri-js/node_modules/punycode/punycode.es6.js", "../../../node_modules/uri-js/src/regexps-iri.ts", "../../../node_modules/uri-js/src/regexps-uri.ts", "../../../node_modules/uri-js/src/util.ts", "../../../node_modules/ajv/lib/runtime/uri.ts", "../../../node_modules/ajv/lib/core.ts", "../../../node_modules/ajv/lib/vocabularies/core/id.ts", "../../../node_modules/ajv/lib/vocabularies/core/ref.ts", "../../../node_modules/ajv/lib/vocabularies/core/index.ts", "../../../node_modules/ajv/lib/vocabularies/validation/limitNumber.ts", "../../../node_modules/ajv/lib/vocabularies/validation/multipleOf.ts", "../../../node_modules/ajv/lib/runtime/ucs2length.ts", "../../../node_modules/ajv/lib/vocabularies/validation/limitLength.ts", "../../../node_modules/ajv/lib/vocabularies/validation/pattern.ts", "../../../node_modules/ajv/lib/vocabularies/validation/limitProperties.ts", "../../../node_modules/ajv/lib/vocabularies/validation/required.ts", "../../../node_modules/ajv/lib/vocabularies/validation/limitItems.ts", "../../../node_modules/ajv/lib/runtime/equal.ts", "../../../node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts", "../../../node_modules/ajv/lib/vocabularies/validation/const.ts", "../../../node_modules/ajv/lib/vocabularies/validation/enum.ts", "../../../node_modules/ajv/lib/vocabularies/validation/index.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/items.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/items2020.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/contains.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/dependencies.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/properties.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/not.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/anyOf.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/oneOf.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/allOf.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/if.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/thenElse.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/index.ts", "../../../node_modules/ajv/lib/vocabularies/format/format.ts", "../../../node_modules/ajv/lib/vocabularies/format/index.ts", "../../../node_modules/ajv/lib/vocabularies/metadata.ts", "../../../node_modules/ajv/lib/vocabularies/draft7.ts", "../../../node_modules/ajv/lib/vocabularies/discriminator/types.ts", "../../../node_modules/ajv/lib/vocabularies/discriminator/index.ts", "../../../node_modules/ajv/lib/ajv.ts", "../../../node_modules/ajv-formats/src/formats.ts", "../../../node_modules/ajv-formats/src/limit.ts", "../../../node_modules/ajv-formats/src/index.ts", "../src/index.ts", "../../../node_modules/zod/lib/index.mjs", "../../xrpc/src/types.ts", "../../nsid/src/index.ts", "../../lexicon/src/types.ts", "../../lexicon/src/record/schema.ts", "../../lexicon/src/record/validator.ts", "../../xrpc/src/util.ts", "../../xrpc/src/client.ts", "../../xrpc/src/index.ts", "../src/schemas.ts", "../src/types/com/atproto/createAccount.ts", "../src/types/com/atproto/createInviteCode.ts", "../src/types/com/atproto/createSession.ts", "../src/types/com/atproto/deleteAccount.ts", "../src/types/com/atproto/deleteSession.ts", "../src/types/com/atproto/getAccount.ts", "../src/types/com/atproto/getAccountsConfig.ts", "../src/types/com/atproto/getSession.ts", "../src/types/com/atproto/repoBatchWrite.ts", "../src/types/com/atproto/repoCreateRecord.ts", "../src/types/com/atproto/repoDeleteRecord.ts", "../src/types/com/atproto/repoDescribe.ts", "../src/types/com/atproto/repoGetRecord.ts", "../src/types/com/atproto/repoListRecords.ts", "../src/types/com/atproto/repoPutRecord.ts", "../src/types/com/atproto/requestAccountPasswordReset.ts", "../src/types/com/atproto/resetAccountPassword.ts", "../src/types/com/atproto/resolveName.ts", "../src/types/com/atproto/syncGetRepo.ts", "../src/types/com/atproto/syncGetRoot.ts", "../src/types/com/atproto/syncUpdateRepo.ts", "../src/types/app/bsky/getAuthorFeed.ts", "../src/types/app/bsky/getBadgeMembers.ts", "../src/types/app/bsky/getHomeFeed.ts", "../src/types/app/bsky/getLikedBy.ts", "../src/types/app/bsky/getNotificationCount.ts", "../src/types/app/bsky/getNotifications.ts", "../src/types/app/bsky/getPostThread.ts", "../src/types/app/bsky/getProfile.ts", "../src/types/app/bsky/getRepostedBy.ts", "../src/types/app/bsky/getUserFollowers.ts", "../src/types/app/bsky/getUserFollows.ts", "../src/types/app/bsky/getUsersSearch.ts", "../src/types/app/bsky/getUsersTypeahead.ts", "../src/types/app/bsky/postNotificationsSeen.ts", "../src/types/app/bsky/updateProfile.ts", "../src/types/app/bsky/badge.ts", "../src/types/app/bsky/badgeAccept.ts", "../src/types/app/bsky/badgeOffer.ts", "../src/types/app/bsky/follow.ts", "../src/types/app/bsky/like.ts", "../src/types/app/bsky/mediaEmbed.ts", "../src/types/app/bsky/post.ts", "../src/types/app/bsky/profile.ts", "../src/types/app/bsky/repost.ts"], - "sourcesContent": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, "'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n", "'use strict';\n\nvar traverse = module.exports = function (schema, opts, cb) {\n // Legacy support for v0.3.1 and earlier.\n if (typeof opts == 'function') {\n cb = opts;\n opts = {};\n }\n\n cb = opts.cb || cb;\n var pre = (typeof cb == 'function') ? cb : cb.pre || function() {};\n var post = cb.post || function() {};\n\n _traverse(opts, pre, post, schema, '', schema);\n};\n\n\ntraverse.keywords = {\n additionalItems: true,\n items: true,\n contains: true,\n additionalProperties: true,\n propertyNames: true,\n not: true,\n if: true,\n then: true,\n else: true\n};\n\ntraverse.arrayKeywords = {\n items: true,\n allOf: true,\n anyOf: true,\n oneOf: true\n};\n\ntraverse.propsKeywords = {\n $defs: true,\n definitions: true,\n properties: true,\n patternProperties: true,\n dependencies: true\n};\n\ntraverse.skipKeywords = {\n default: true,\n enum: true,\n const: true,\n required: true,\n maximum: true,\n minimum: true,\n exclusiveMaximum: true,\n exclusiveMinimum: true,\n multipleOf: true,\n maxLength: true,\n minLength: true,\n pattern: true,\n format: true,\n maxItems: true,\n minItems: true,\n uniqueItems: true,\n maxProperties: true,\n minProperties: true\n};\n\n\nfunction _traverse(opts, pre, post, schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex) {\n if (schema && typeof schema == 'object' && !Array.isArray(schema)) {\n pre(schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex);\n for (var key in schema) {\n var sch = schema[key];\n if (Array.isArray(sch)) {\n if (key in traverse.arrayKeywords) {\n for (var i=0; i = {\n\tscheme : \"urn:uuid\",\n\n\tparse : function (urnComponents:URNComponents, options:URIOptions):UUIDComponents {\n\t\tconst uuidComponents = urnComponents as UUIDComponents;\n\t\tuuidComponents.uuid = uuidComponents.nss;\n\t\tuuidComponents.nss = undefined;\n\n\t\tif (!options.tolerant && (!uuidComponents.uuid || !uuidComponents.uuid.match(UUID))) {\n\t\t\tuuidComponents.error = uuidComponents.error || \"UUID is not valid.\";\n\t\t}\n\n\t\treturn uuidComponents;\n\t},\n\n\tserialize : function (uuidComponents:UUIDComponents, options:URIOptions):URNComponents {\n\t\tconst urnComponents = uuidComponents as URNComponents;\n\t\t//normalize UUID\n\t\turnComponents.nss = (uuidComponents.uuid || \"\").toLowerCase();\n\t\treturn urnComponents;\n\t},\n};\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\nimport { pctEncChar, SCHEMES } from \"../uri\";\n\nexport interface URNComponents extends URIComponents {\n\tnid?:string;\n\tnss?:string;\n}\n\nexport interface URNOptions extends URIOptions {\n\tnid?:string;\n}\n\nconst NID$ = \"(?:[0-9A-Za-z][0-9A-Za-z\\\\-]{1,31})\";\nconst PCT_ENCODED$ = \"(?:\\\\%[0-9A-Fa-f]{2})\";\nconst TRANS$$ = \"[0-9A-Za-z\\\\(\\\\)\\\\+\\\\,\\\\-\\\\.\\\\:\\\\=\\\\@\\\\;\\\\$\\\\_\\\\!\\\\*\\\\'\\\\/\\\\?\\\\#]\";\nconst NSS$ = \"(?:(?:\" + PCT_ENCODED$ + \"|\" + TRANS$$ + \")+)\";\nconst URN_SCHEME = new RegExp(\"^urn\\\\:(\" + NID$ + \")$\");\nconst URN_PATH = new RegExp(\"^(\" + NID$ + \")\\\\:(\" + NSS$ + \")$\");\nconst URN_PARSE = /^([^\\:]+)\\:(.*)/;\nconst URN_EXCLUDED = /[\\x00-\\x20\\\\\\\"\\&\\<\\>\\[\\]\\^\\`\\{\\|\\}\\~\\x7F-\\xFF]/g;\n\n//RFC 2141\nconst handler:URISchemeHandler = {\n\tscheme : \"urn\",\n\n\tparse : function (components:URIComponents, options:URNOptions):URNComponents {\n\t\tconst matches = components.path && components.path.match(URN_PARSE);\n\t\tlet urnComponents = components as URNComponents;\n\n\t\tif (matches) {\n\t\t\tconst scheme = options.scheme || urnComponents.scheme || \"urn\";\n\t\t\tconst nid = matches[1].toLowerCase();\n\t\t\tconst nss = matches[2];\n\t\t\tconst urnScheme = `${scheme}:${options.nid || nid}`;\n\t\t\tconst schemeHandler = SCHEMES[urnScheme];\n\n\t\t\turnComponents.nid = nid;\n\t\t\turnComponents.nss = nss;\n\t\t\turnComponents.path = undefined;\n\n\t\t\tif (schemeHandler) {\n\t\t\t\turnComponents = schemeHandler.parse(urnComponents, options) as URNComponents;\n\t\t\t}\n\t\t} else {\n\t\t\turnComponents.error = urnComponents.error || \"URN can not be parsed.\";\n\t\t}\n\n\t\treturn urnComponents;\n\t},\n\n\tserialize : function (urnComponents:URNComponents, options:URNOptions):URIComponents {\n\t\tconst scheme = options.scheme || urnComponents.scheme || \"urn\";\n\t\tconst nid = urnComponents.nid;\n\t\tconst urnScheme = `${scheme}:${options.nid || nid}`;\n\t\tconst schemeHandler = SCHEMES[urnScheme];\n\n\t\tif (schemeHandler) {\n\t\t\turnComponents = schemeHandler.serialize(urnComponents, options) as URNComponents;\n\t\t}\n\n\t\tconst uriComponents = urnComponents as URIComponents;\n\t\tconst nss = urnComponents.nss;\n\t\turiComponents.path = `${nid || options.nid}:${nss}`;\n\n\t\treturn uriComponents;\n\t},\n};\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\nimport { pctEncChar, pctDecChars, unescapeComponent } from \"../uri\";\nimport punycode from \"punycode\";\nimport { merge, subexp, toUpperCase, toArray } from \"../util\";\n\nexport interface MailtoHeaders {\n\t[hfname:string]:string\n}\n\nexport interface MailtoComponents extends URIComponents {\n\tto:Array,\n\theaders?:MailtoHeaders,\n\tsubject?:string,\n\tbody?:string\n}\n\nconst O:MailtoHeaders = {};\nconst isIRI = true;\n\n//RFC 3986\nconst UNRESERVED$$ = \"[A-Za-z0-9\\\\-\\\\.\\\\_\\\\~\" + (isIRI ? \"\\\\xA0-\\\\u200D\\\\u2010-\\\\u2029\\\\u202F-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFEF\" : \"\") + \"]\";\nconst HEXDIG$$ = \"[0-9A-Fa-f]\"; //case-insensitive\nconst PCT_ENCODED$ = subexp(subexp(\"%[EFef]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%[89A-Fa-f]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%\" + HEXDIG$$ + HEXDIG$$)); //expanded\n\n//RFC 5322, except these symbols as per RFC 6068: @ : / ? # [ ] & ; =\n//const ATEXT$$ = \"[A-Za-z0-9\\\\!\\\\#\\\\$\\\\%\\\\&\\\\'\\\\*\\\\+\\\\-\\\\/\\\\=\\\\?\\\\^\\\\_\\\\`\\\\{\\\\|\\\\}\\\\~]\";\n//const WSP$$ = \"[\\\\x20\\\\x09]\";\n//const OBS_QTEXT$$ = \"[\\\\x01-\\\\x08\\\\x0B\\\\x0C\\\\x0E-\\\\x1F\\\\x7F]\"; //(%d1-8 / %d11-12 / %d14-31 / %d127)\n//const QTEXT$$ = merge(\"[\\\\x21\\\\x23-\\\\x5B\\\\x5D-\\\\x7E]\", OBS_QTEXT$$); //%d33 / %d35-91 / %d93-126 / obs-qtext\n//const VCHAR$$ = \"[\\\\x21-\\\\x7E]\";\n//const WSP$$ = \"[\\\\x20\\\\x09]\";\n//const OBS_QP$ = subexp(\"\\\\\\\\\" + merge(\"[\\\\x00\\\\x0D\\\\x0A]\", OBS_QTEXT$$)); //%d0 / CR / LF / obs-qtext\n//const FWS$ = subexp(subexp(WSP$$ + \"*\" + \"\\\\x0D\\\\x0A\") + \"?\" + WSP$$ + \"+\");\n//const QUOTED_PAIR$ = subexp(subexp(\"\\\\\\\\\" + subexp(VCHAR$$ + \"|\" + WSP$$)) + \"|\" + OBS_QP$);\n//const QUOTED_STRING$ = subexp('\\\\\"' + subexp(FWS$ + \"?\" + QCONTENT$) + \"*\" + FWS$ + \"?\" + '\\\\\"');\nconst ATEXT$$ = \"[A-Za-z0-9\\\\!\\\\$\\\\%\\\\'\\\\*\\\\+\\\\-\\\\^\\\\_\\\\`\\\\{\\\\|\\\\}\\\\~]\";\nconst QTEXT$$ = \"[\\\\!\\\\$\\\\%\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\-\\\\.0-9\\\\<\\\\>A-Z\\\\x5E-\\\\x7E]\";\nconst VCHAR$$ = merge(QTEXT$$, \"[\\\\\\\"\\\\\\\\]\");\nconst DOT_ATOM_TEXT$ = subexp(ATEXT$$ + \"+\" + subexp(\"\\\\.\" + ATEXT$$ + \"+\") + \"*\");\nconst QUOTED_PAIR$ = subexp(\"\\\\\\\\\" + VCHAR$$);\nconst QCONTENT$ = subexp(QTEXT$$ + \"|\" + QUOTED_PAIR$);\nconst QUOTED_STRING$ = subexp('\\\\\"' + QCONTENT$ + \"*\" + '\\\\\"');\n\n//RFC 6068\nconst DTEXT_NO_OBS$$ = \"[\\\\x21-\\\\x5A\\\\x5E-\\\\x7E]\"; //%d33-90 / %d94-126\nconst SOME_DELIMS$$ = \"[\\\\!\\\\$\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\;\\\\:\\\\@]\";\nconst QCHAR$ = subexp(UNRESERVED$$ + \"|\" + PCT_ENCODED$ + \"|\" + SOME_DELIMS$$);\nconst DOMAIN$ = subexp(DOT_ATOM_TEXT$ + \"|\" + \"\\\\[\" + DTEXT_NO_OBS$$ + \"*\" + \"\\\\]\");\nconst LOCAL_PART$ = subexp(DOT_ATOM_TEXT$ + \"|\" + QUOTED_STRING$);\nconst ADDR_SPEC$ = subexp(LOCAL_PART$ + \"\\\\@\" + DOMAIN$);\nconst TO$ = subexp(ADDR_SPEC$ + subexp(\"\\\\,\" + ADDR_SPEC$) + \"*\");\nconst HFNAME$ = subexp(QCHAR$ + \"*\");\nconst HFVALUE$ = HFNAME$;\nconst HFIELD$ = subexp(HFNAME$ + \"\\\\=\" + HFVALUE$);\nconst HFIELDS2$ = subexp(HFIELD$ + subexp(\"\\\\&\" + HFIELD$) + \"*\");\nconst HFIELDS$ = subexp(\"\\\\?\" + HFIELDS2$);\nconst MAILTO_URI = new RegExp(\"^mailto\\\\:\" + TO$ + \"?\" + HFIELDS$ + \"?$\");\n\nconst UNRESERVED = new RegExp(UNRESERVED$$, \"g\");\nconst PCT_ENCODED = new RegExp(PCT_ENCODED$, \"g\");\nconst NOT_LOCAL_PART = new RegExp(merge(\"[^]\", ATEXT$$, \"[\\\\.]\", '[\\\\\"]', VCHAR$$), \"g\");\nconst NOT_DOMAIN = new RegExp(merge(\"[^]\", ATEXT$$, \"[\\\\.]\", \"[\\\\[]\", DTEXT_NO_OBS$$, \"[\\\\]]\"), \"g\");\nconst NOT_HFNAME = new RegExp(merge(\"[^]\", UNRESERVED$$, SOME_DELIMS$$), \"g\");\nconst NOT_HFVALUE = NOT_HFNAME;\nconst TO = new RegExp(\"^\" + TO$ + \"$\");\nconst HFIELDS = new RegExp(\"^\" + HFIELDS2$ + \"$\");\n\nfunction decodeUnreserved(str:string):string {\n\tconst decStr = pctDecChars(str);\n\treturn (!decStr.match(UNRESERVED) ? str : decStr);\n}\n\nconst handler:URISchemeHandler = {\n\tscheme : \"mailto\",\n\n\tparse : function (components:URIComponents, options:URIOptions):MailtoComponents {\n\t\tconst mailtoComponents = components as MailtoComponents;\n\t\tconst to = mailtoComponents.to = (mailtoComponents.path ? mailtoComponents.path.split(\",\") : []);\n\t\tmailtoComponents.path = undefined;\n\n\t\tif (mailtoComponents.query) {\n\t\t\tlet unknownHeaders = false\n\t\t\tconst headers:MailtoHeaders = {};\n\t\t\tconst hfields = mailtoComponents.query.split(\"&\");\n\n\t\t\tfor (let x = 0, xl = hfields.length; x < xl; ++x) {\n\t\t\t\tconst hfield = hfields[x].split(\"=\");\n\n\t\t\t\tswitch (hfield[0]) {\n\t\t\t\t\tcase \"to\":\n\t\t\t\t\t\tconst toAddrs = hfield[1].split(\",\");\n\t\t\t\t\t\tfor (let x = 0, xl = toAddrs.length; x < xl; ++x) {\n\t\t\t\t\t\t\tto.push(toAddrs[x]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"subject\":\n\t\t\t\t\t\tmailtoComponents.subject = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"body\":\n\t\t\t\t\t\tmailtoComponents.body = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tunknownHeaders = true;\n\t\t\t\t\t\theaders[unescapeComponent(hfield[0], options)] = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (unknownHeaders) mailtoComponents.headers = headers;\n\t\t}\n\n\t\tmailtoComponents.query = undefined;\n\n\t\tfor (let x = 0, xl = to.length; x < xl; ++x) {\n\t\t\tconst addr = to[x].split(\"@\");\n\n\t\t\taddr[0] = unescapeComponent(addr[0]);\n\n\t\t\tif (!options.unicodeSupport) {\n\t\t\t\t//convert Unicode IDN -> ASCII IDN\n\t\t\t\ttry {\n\t\t\t\t\taddr[1] = punycode.toASCII(unescapeComponent(addr[1], options).toLowerCase());\n\t\t\t\t} catch (e) {\n\t\t\t\t\tmailtoComponents.error = mailtoComponents.error || \"Email address's domain name can not be converted to ASCII via punycode: \" + e;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\taddr[1] = unescapeComponent(addr[1], options).toLowerCase();\n\t\t\t}\n\n\t\t\tto[x] = addr.join(\"@\");\n\t\t}\n\n\t\treturn mailtoComponents;\n\t},\n\n\tserialize : function (mailtoComponents:MailtoComponents, options:URIOptions):URIComponents {\n\t\tconst components = mailtoComponents as URIComponents;\n\t\tconst to = toArray(mailtoComponents.to);\n\t\tif (to) {\n\t\t\tfor (let x = 0, xl = to.length; x < xl; ++x) {\n\t\t\t\tconst toAddr = String(to[x]);\n\t\t\t\tconst atIdx = toAddr.lastIndexOf(\"@\");\n\t\t\t\tconst localPart = (toAddr.slice(0, atIdx)).replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_LOCAL_PART, pctEncChar);\n\t\t\t\tlet domain = toAddr.slice(atIdx + 1);\n\n\t\t\t\t//convert IDN via punycode\n\t\t\t\ttry {\n\t\t\t\t\tdomain = (!options.iri ? punycode.toASCII(unescapeComponent(domain, options).toLowerCase()) : punycode.toUnicode(domain));\n\t\t\t\t} catch (e) {\n\t\t\t\t\tcomponents.error = components.error || \"Email address's domain name can not be converted to \" + (!options.iri ? \"ASCII\" : \"Unicode\") + \" via punycode: \" + e;\n\t\t\t\t}\n\n\t\t\t\tto[x] = localPart + \"@\" + domain;\n\t\t\t}\n\n\t\t\tcomponents.path = to.join(\",\");\n\t\t}\n\n\t\tconst headers = mailtoComponents.headers = mailtoComponents.headers || {};\n\n\t\tif (mailtoComponents.subject) headers[\"subject\"] = mailtoComponents.subject;\n\t\tif (mailtoComponents.body) headers[\"body\"] = mailtoComponents.body;\n\n\t\tconst fields = [];\n\t\tfor (const name in headers) {\n\t\t\tif (headers[name] !== O[name]) {\n\t\t\t\tfields.push(\n\t\t\t\t\tname.replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFNAME, pctEncChar) +\n\t\t\t\t\t\"=\" +\n\t\t\t\t\theaders[name].replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFVALUE, pctEncChar)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tif (fields.length) {\n\t\t\tcomponents.query = fields.join(\"&\");\n\t\t}\n\n\t\treturn components;\n\t}\n}\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\nimport ws from \"./ws\";\n\nconst handler:URISchemeHandler = {\n\tscheme : \"wss\",\n\tdomainHost : ws.domainHost,\n\tparse : ws.parse,\n\tserialize : ws.serialize\n}\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\n\nexport interface WSComponents extends URIComponents {\n\tresourceName?: string;\n\tsecure?: boolean;\n}\n\nfunction isSecure(wsComponents:WSComponents):boolean {\n\treturn typeof wsComponents.secure === 'boolean' ? wsComponents.secure : String(wsComponents.scheme).toLowerCase() === \"wss\";\n}\n\n//RFC 6455\nconst handler:URISchemeHandler = {\n\tscheme : \"ws\",\n\n\tdomainHost : true,\n\n\tparse : function (components:URIComponents, options:URIOptions):WSComponents {\n\t\tconst wsComponents = components as WSComponents;\n\n\t\t//indicate if the secure flag is set\n\t\twsComponents.secure = isSecure(wsComponents);\n\n\t\t//construct resouce name\n\t\twsComponents.resourceName = (wsComponents.path || '/') + (wsComponents.query ? '?' + wsComponents.query : '');\n\t\twsComponents.path = undefined;\n\t\twsComponents.query = undefined;\n\n\t\treturn wsComponents;\n\t},\n\n\tserialize : function (wsComponents:WSComponents, options:URIOptions):URIComponents {\n\t\t//normalize the default port\n\t\tif (wsComponents.port === (isSecure(wsComponents) ? 443 : 80) || wsComponents.port === \"\") {\n\t\t\twsComponents.port = undefined;\n\t\t}\n\n\t\t//ensure scheme matches secure flag\n\t\tif (typeof wsComponents.secure === 'boolean') {\n\t\t\twsComponents.scheme = (wsComponents.secure ? 'wss' : 'ws');\n\t\t\twsComponents.secure = undefined;\n\t\t}\n\n\t\t//reconstruct path from resource name\n\t\tif (wsComponents.resourceName) {\n\t\t\tconst [path, query] = wsComponents.resourceName.split('?');\n\t\t\twsComponents.path = (path && path !== '/' ? path : undefined);\n\t\t\twsComponents.query = query;\n\t\t\twsComponents.resourceName = undefined;\n\t\t}\n\n\t\t//forbid fragment component\n\t\twsComponents.fragment = undefined;\n\n\t\treturn wsComponents;\n\t}\n};\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\nimport http from \"./http\";\n\nconst handler:URISchemeHandler = {\n\tscheme : \"https\",\n\tdomainHost : http.domainHost,\n\tparse : http.parse,\n\tserialize : http.serialize\n}\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\n\nconst handler:URISchemeHandler = {\n\tscheme : \"http\",\n\n\tdomainHost : true,\n\n\tparse : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\t//report missing host\n\t\tif (!components.host) {\n\t\t\tcomponents.error = components.error || \"HTTP URIs must have a host.\";\n\t\t}\n\n\t\treturn components;\n\t},\n\n\tserialize : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\tconst secure = String(components.scheme).toLowerCase() === \"https\";\n\n\t\t//normalize the default port\n\t\tif (components.port === (secure ? 443 : 80) || components.port === \"\") {\n\t\t\tcomponents.port = undefined;\n\t\t}\n\t\t\n\t\t//normalize the empty path\n\t\tif (!components.path) {\n\t\t\tcomponents.path = \"/\";\n\t\t}\n\n\t\t//NOTE: We do not parse query strings for HTTP URIs\n\t\t//as WWW Form Url Encoded query strings are part of the HTML4+ spec,\n\t\t//and not the HTTP spec.\n\n\t\treturn components;\n\t}\n};\n\nexport default handler;", "/**\n * URI.js\n *\n * @fileoverview An RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for JavaScript.\n * @author Gary Court\n * @see http://github.com/garycourt/uri-js\n */\n\n/**\n * Copyright 2011 Gary Court. All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without modification, are\n * permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this list of\n * conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice, this list\n * of conditions and the following disclaimer in the documentation and/or other materials\n * provided with the distribution.\n *\n * THIS SOFTWARE IS PROVIDED BY GARY COURT ``AS IS'' AND ANY EXPRESS OR IMPLIED\n * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND\n * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GARY COURT OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\n * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF\n * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * The views and conclusions contained in the software and documentation are those of the\n * authors and should not be interpreted as representing official policies, either expressed\n * or implied, of Gary Court.\n */\n\nimport URI_PROTOCOL from \"./regexps-uri\";\nimport IRI_PROTOCOL from \"./regexps-iri\";\nimport punycode from \"punycode\";\nimport { toUpperCase, typeOf, assign } from \"./util\";\n\nexport interface URIComponents {\n\tscheme?:string;\n\tuserinfo?:string;\n\thost?:string;\n\tport?:number|string;\n\tpath?:string;\n\tquery?:string;\n\tfragment?:string;\n\treference?:string;\n\terror?:string;\n}\n\nexport interface URIOptions {\n\tscheme?:string;\n\treference?:string;\n\ttolerant?:boolean;\n\tabsolutePath?:boolean;\n\tiri?:boolean;\n\tunicodeSupport?:boolean;\n\tdomainHost?:boolean;\n}\n\nexport interface URISchemeHandler {\n\tscheme:string;\n\tparse(components:ParentComponents, options:Options):Components;\n\tserialize(components:Components, options:Options):ParentComponents;\n\tunicodeSupport?:boolean;\n\tdomainHost?:boolean;\n\tabsolutePath?:boolean;\n}\n\nexport interface URIRegExps {\n\tNOT_SCHEME : RegExp,\n\tNOT_USERINFO : RegExp,\n\tNOT_HOST : RegExp,\n\tNOT_PATH : RegExp,\n\tNOT_PATH_NOSCHEME : RegExp,\n\tNOT_QUERY : RegExp,\n\tNOT_FRAGMENT : RegExp,\n\tESCAPE : RegExp,\n\tUNRESERVED : RegExp,\n\tOTHER_CHARS : RegExp,\n\tPCT_ENCODED : RegExp,\n\tIPV4ADDRESS : RegExp,\n\tIPV6ADDRESS : RegExp,\n}\n\nexport const SCHEMES:{[scheme:string]:URISchemeHandler} = {};\n\nexport function pctEncChar(chr:string):string {\n\tconst c = chr.charCodeAt(0);\n\tlet e:string;\n\n\tif (c < 16) e = \"%0\" + c.toString(16).toUpperCase();\n\telse if (c < 128) e = \"%\" + c.toString(16).toUpperCase();\n\telse if (c < 2048) e = \"%\" + ((c >> 6) | 192).toString(16).toUpperCase() + \"%\" + ((c & 63) | 128).toString(16).toUpperCase();\n\telse e = \"%\" + ((c >> 12) | 224).toString(16).toUpperCase() + \"%\" + (((c >> 6) & 63) | 128).toString(16).toUpperCase() + \"%\" + ((c & 63) | 128).toString(16).toUpperCase();\n\n\treturn e;\n}\n\nexport function pctDecChars(str:string):string {\n\tlet newStr = \"\";\n\tlet i = 0;\n\tconst il = str.length;\n\n\twhile (i < il) {\n\t\tconst c = parseInt(str.substr(i + 1, 2), 16);\n\n\t\tif (c < 128) {\n\t\t\tnewStr += String.fromCharCode(c);\n\t\t\ti += 3;\n\t\t}\n\t\telse if (c >= 194 && c < 224) {\n\t\t\tif ((il - i) >= 6) {\n\t\t\t\tconst c2 = parseInt(str.substr(i + 4, 2), 16);\n\t\t\t\tnewStr += String.fromCharCode(((c & 31) << 6) | (c2 & 63));\n\t\t\t} else {\n\t\t\t\tnewStr += str.substr(i, 6);\n\t\t\t}\n\t\t\ti += 6;\n\t\t}\n\t\telse if (c >= 224) {\n\t\t\tif ((il - i) >= 9) {\n\t\t\t\tconst c2 = parseInt(str.substr(i + 4, 2), 16);\n\t\t\t\tconst c3 = parseInt(str.substr(i + 7, 2), 16);\n\t\t\t\tnewStr += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));\n\t\t\t} else {\n\t\t\t\tnewStr += str.substr(i, 9);\n\t\t\t}\n\t\t\ti += 9;\n\t\t}\n\t\telse {\n\t\t\tnewStr += str.substr(i, 3);\n\t\t\ti += 3;\n\t\t}\n\t}\n\n\treturn newStr;\n}\n\nfunction _normalizeComponentEncoding(components:URIComponents, protocol:URIRegExps) {\n\tfunction decodeUnreserved(str:string):string {\n\t\tconst decStr = pctDecChars(str);\n\t\treturn (!decStr.match(protocol.UNRESERVED) ? str : decStr);\n\t}\n\n\tif (components.scheme) components.scheme = String(components.scheme).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_SCHEME, \"\");\n\tif (components.userinfo !== undefined) components.userinfo = String(components.userinfo).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_USERINFO, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.host !== undefined) components.host = String(components.host).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_HOST, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.path !== undefined) components.path = String(components.path).replace(protocol.PCT_ENCODED, decodeUnreserved).replace((components.scheme ? protocol.NOT_PATH : protocol.NOT_PATH_NOSCHEME), pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.query !== undefined) components.query = String(components.query).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_QUERY, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.fragment !== undefined) components.fragment = String(components.fragment).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_FRAGMENT, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\n\treturn components;\n};\n\nfunction _stripLeadingZeros(str:string):string {\n\treturn str.replace(/^0*(.*)/, \"$1\") || \"0\";\n}\n\nfunction _normalizeIPv4(host:string, protocol:URIRegExps):string {\n\tconst matches = host.match(protocol.IPV4ADDRESS) || [];\n\tconst [, address] = matches;\n\t\n\tif (address) {\n\t\treturn address.split(\".\").map(_stripLeadingZeros).join(\".\");\n\t} else {\n\t\treturn host;\n\t}\n}\n\nfunction _normalizeIPv6(host:string, protocol:URIRegExps):string {\n\tconst matches = host.match(protocol.IPV6ADDRESS) || [];\n\tconst [, address, zone] = matches;\n\n\tif (address) {\n\t\tconst [last, first] = address.toLowerCase().split('::').reverse();\n\t\tconst firstFields = first ? first.split(\":\").map(_stripLeadingZeros) : [];\n\t\tconst lastFields = last.split(\":\").map(_stripLeadingZeros);\n\t\tconst isLastFieldIPv4Address = protocol.IPV4ADDRESS.test(lastFields[lastFields.length - 1]);\n\t\tconst fieldCount = isLastFieldIPv4Address ? 7 : 8;\n\t\tconst lastFieldsStart = lastFields.length - fieldCount;\n\t\tconst fields = Array(fieldCount);\n\n\t\tfor (let x = 0; x < fieldCount; ++x) {\n\t\t\tfields[x] = firstFields[x] || lastFields[lastFieldsStart + x] || '';\n\t\t}\n\n\t\tif (isLastFieldIPv4Address) {\n\t\t\tfields[fieldCount - 1] = _normalizeIPv4(fields[fieldCount - 1], protocol);\n\t\t}\n\n\t\tconst allZeroFields = fields.reduce>((acc, field, index) => {\n\t\t\tif (!field || field === \"0\") {\n\t\t\t\tconst lastLongest = acc[acc.length - 1];\n\t\t\t\tif (lastLongest && lastLongest.index + lastLongest.length === index) {\n\t\t\t\t\tlastLongest.length++;\n\t\t\t\t} else {\n\t\t\t\t\tacc.push({ index, length : 1 });\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn acc;\n\t\t}, []);\n\n\t\tconst longestZeroFields = allZeroFields.sort((a, b) => b.length - a.length)[0];\n\n\t\tlet newHost:string;\n\t\tif (longestZeroFields && longestZeroFields.length > 1) {\n\t\t\tconst newFirst = fields.slice(0, longestZeroFields.index) ;\n\t\t\tconst newLast = fields.slice(longestZeroFields.index + longestZeroFields.length);\n\t\t\tnewHost = newFirst.join(\":\") + \"::\" + newLast.join(\":\");\n\t\t} else {\n\t\t\tnewHost = fields.join(\":\");\n\t\t}\n\n\t\tif (zone) {\n\t\t\tnewHost += \"%\" + zone;\n\t\t}\n\n\t\treturn newHost;\n\t} else {\n\t\treturn host;\n\t}\n}\n\nconst URI_PARSE = /^(?:([^:\\/?#]+):)?(?:\\/\\/((?:([^\\/?#@]*)@)?(\\[[^\\/?#\\]]+\\]|[^\\/?#:]*)(?:\\:(\\d*))?))?([^?#]*)(?:\\?([^#]*))?(?:#((?:.|\\n|\\r)*))?/i;\nconst NO_MATCH_IS_UNDEFINED = ((\"\").match(/(){0}/))[1] === undefined;\n\nexport function parse(uriString:string, options:URIOptions = {}):URIComponents {\n\tconst components:URIComponents = {};\n\tconst protocol = (options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL);\n\n\tif (options.reference === \"suffix\") uriString = (options.scheme ? options.scheme + \":\" : \"\") + \"//\" + uriString;\n\n\tconst matches = uriString.match(URI_PARSE);\n\n\tif (matches) {\n\t\tif (NO_MATCH_IS_UNDEFINED) {\n\t\t\t//store each component\n\t\t\tcomponents.scheme = matches[1];\n\t\t\tcomponents.userinfo = matches[3];\n\t\t\tcomponents.host = matches[4];\n\t\t\tcomponents.port = parseInt(matches[5], 10);\n\t\t\tcomponents.path = matches[6] || \"\";\n\t\t\tcomponents.query = matches[7];\n\t\t\tcomponents.fragment = matches[8];\n\n\t\t\t//fix port number\n\t\t\tif (isNaN(components.port)) {\n\t\t\t\tcomponents.port = matches[5];\n\t\t\t}\n\t\t} else { //IE FIX for improper RegExp matching\n\t\t\t//store each component\n\t\t\tcomponents.scheme = matches[1] || undefined;\n\t\t\tcomponents.userinfo = (uriString.indexOf(\"@\") !== -1 ? matches[3] : undefined);\n\t\t\tcomponents.host = (uriString.indexOf(\"//\") !== -1 ? matches[4] : undefined);\n\t\t\tcomponents.port = parseInt(matches[5], 10);\n\t\t\tcomponents.path = matches[6] || \"\";\n\t\t\tcomponents.query = (uriString.indexOf(\"?\") !== -1 ? matches[7] : undefined);\n\t\t\tcomponents.fragment = (uriString.indexOf(\"#\") !== -1 ? matches[8] : undefined);\n\n\t\t\t//fix port number\n\t\t\tif (isNaN(components.port)) {\n\t\t\t\tcomponents.port = (uriString.match(/\\/\\/(?:.|\\n)*\\:(?:\\/|\\?|\\#|$)/) ? matches[4] : undefined);\n\t\t\t}\n\t\t}\n\n\t\tif (components.host) {\n\t\t\t//normalize IP hosts\n\t\t\tcomponents.host = _normalizeIPv6(_normalizeIPv4(components.host, protocol), protocol);\n\t\t}\n\n\t\t//determine reference type\n\t\tif (components.scheme === undefined && components.userinfo === undefined && components.host === undefined && components.port === undefined && !components.path && components.query === undefined) {\n\t\t\tcomponents.reference = \"same-document\";\n\t\t} else if (components.scheme === undefined) {\n\t\t\tcomponents.reference = \"relative\";\n\t\t} else if (components.fragment === undefined) {\n\t\t\tcomponents.reference = \"absolute\";\n\t\t} else {\n\t\t\tcomponents.reference = \"uri\";\n\t\t}\n\n\t\t//check for reference errors\n\t\tif (options.reference && options.reference !== \"suffix\" && options.reference !== components.reference) {\n\t\t\tcomponents.error = components.error || \"URI is not a \" + options.reference + \" reference.\";\n\t\t}\n\n\t\t//find scheme handler\n\t\tconst schemeHandler = SCHEMES[(options.scheme || components.scheme || \"\").toLowerCase()];\n\n\t\t//check if scheme can't handle IRIs\n\t\tif (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport)) {\n\t\t\t//if host component is a domain name\n\t\t\tif (components.host && (options.domainHost || (schemeHandler && schemeHandler.domainHost))) {\n\t\t\t\t//convert Unicode IDN -> ASCII IDN\n\t\t\t\ttry {\n\t\t\t\t\tcomponents.host = punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase());\n\t\t\t\t} catch (e) {\n\t\t\t\t\tcomponents.error = components.error || \"Host's domain name can not be converted to ASCII via punycode: \" + e;\n\t\t\t\t}\n\t\t\t}\n\t\t\t//convert IRI -> URI\n\t\t\t_normalizeComponentEncoding(components, URI_PROTOCOL);\n\t\t} else {\n\t\t\t//normalize encodings\n\t\t\t_normalizeComponentEncoding(components, protocol);\n\t\t}\n\n\t\t//perform scheme specific parsing\n\t\tif (schemeHandler && schemeHandler.parse) {\n\t\t\tschemeHandler.parse(components, options);\n\t\t}\n\t} else {\n\t\tcomponents.error = components.error || \"URI can not be parsed.\";\n\t}\n\n\treturn components;\n};\n\nfunction _recomposeAuthority(components:URIComponents, options:URIOptions):string|undefined {\n\tconst protocol = (options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL);\n\tconst uriTokens:Array = [];\n\n\tif (components.userinfo !== undefined) {\n\t\turiTokens.push(components.userinfo);\n\t\turiTokens.push(\"@\");\n\t}\n\n\tif (components.host !== undefined) {\n\t\t//normalize IP hosts, add brackets and escape zone separator for IPv6\n\t\turiTokens.push(_normalizeIPv6(_normalizeIPv4(String(components.host), protocol), protocol).replace(protocol.IPV6ADDRESS, (_, $1, $2) => \"[\" + $1 + ($2 ? \"%25\" + $2 : \"\") + \"]\"));\n\t}\n\n\tif (typeof components.port === \"number\" || typeof components.port === \"string\") {\n\t\turiTokens.push(\":\");\n\t\turiTokens.push(String(components.port));\n\t}\n\n\treturn uriTokens.length ? uriTokens.join(\"\") : undefined;\n};\n\nconst RDS1 = /^\\.\\.?\\//;\nconst RDS2 = /^\\/\\.(\\/|$)/;\nconst RDS3 = /^\\/\\.\\.(\\/|$)/;\nconst RDS4 = /^\\.\\.?$/;\nconst RDS5 = /^\\/?(?:.|\\n)*?(?=\\/|$)/;\n\nexport function removeDotSegments(input:string):string {\n\tconst output:Array = [];\n\n\twhile (input.length) {\n\t\tif (input.match(RDS1)) {\n\t\t\tinput = input.replace(RDS1, \"\");\n\t\t} else if (input.match(RDS2)) {\n\t\t\tinput = input.replace(RDS2, \"/\");\n\t\t} else if (input.match(RDS3)) {\n\t\t\tinput = input.replace(RDS3, \"/\");\n\t\t\toutput.pop();\n\t\t} else if (input === \".\" || input === \"..\") {\n\t\t\tinput = \"\";\n\t\t} else {\n\t\t\tconst im = input.match(RDS5);\n\t\t\tif (im) {\n\t\t\t\tconst s = im[0];\n\t\t\t\tinput = input.slice(s.length);\n\t\t\t\toutput.push(s);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unexpected dot segment condition\");\n\t\t\t}\n\t\t}\n\t}\n\n\treturn output.join(\"\");\n};\n\nexport function serialize(components:URIComponents, options:URIOptions = {}):string {\n\tconst protocol = (options.iri ? IRI_PROTOCOL : URI_PROTOCOL);\n\tconst uriTokens:Array = [];\n\n\t//find scheme handler\n\tconst schemeHandler = SCHEMES[(options.scheme || components.scheme || \"\").toLowerCase()];\n\n\t//perform scheme specific serialization\n\tif (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(components, options);\n\n\tif (components.host) {\n\t\t//if host component is an IPv6 address\n\t\tif (protocol.IPV6ADDRESS.test(components.host)) {\n\t\t\t//TODO: normalize IPv6 address as per RFC 5952\n\t\t}\n\n\t\t//if host component is a domain name\n\t\telse if (options.domainHost || (schemeHandler && schemeHandler.domainHost)) {\n\t\t\t//convert IDN via punycode\n\t\t\ttry {\n\t\t\t\tcomponents.host = (!options.iri ? punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase()) : punycode.toUnicode(components.host));\n\t\t\t} catch (e) {\n\t\t\t\tcomponents.error = components.error || \"Host's domain name can not be converted to \" + (!options.iri ? \"ASCII\" : \"Unicode\") + \" via punycode: \" + e;\n\t\t\t}\n\t\t}\n\t}\n\n\t//normalize encoding\n\t_normalizeComponentEncoding(components, protocol);\n\n\tif (options.reference !== \"suffix\" && components.scheme) {\n\t\turiTokens.push(components.scheme);\n\t\turiTokens.push(\":\");\n\t}\n\n\tconst authority = _recomposeAuthority(components, options);\n\tif (authority !== undefined) {\n\t\tif (options.reference !== \"suffix\") {\n\t\t\turiTokens.push(\"//\");\n\t\t}\n\n\t\turiTokens.push(authority);\n\n\t\tif (components.path && components.path.charAt(0) !== \"/\") {\n\t\t\turiTokens.push(\"/\");\n\t\t}\n\t}\n\n\tif (components.path !== undefined) {\n\t\tlet s = components.path;\n\n\t\tif (!options.absolutePath && (!schemeHandler || !schemeHandler.absolutePath)) {\n\t\t\ts = removeDotSegments(s);\n\t\t}\n\n\t\tif (authority === undefined) {\n\t\t\ts = s.replace(/^\\/\\//, \"/%2F\"); //don't allow the path to start with \"//\"\n\t\t}\n\n\t\turiTokens.push(s);\n\t}\n\n\tif (components.query !== undefined) {\n\t\turiTokens.push(\"?\");\n\t\turiTokens.push(components.query);\n\t}\n\n\tif (components.fragment !== undefined) {\n\t\turiTokens.push(\"#\");\n\t\turiTokens.push(components.fragment);\n\t}\n\n\treturn uriTokens.join(\"\"); //merge tokens into a string\n};\n\nexport function resolveComponents(base:URIComponents, relative:URIComponents, options:URIOptions = {}, skipNormalization?:boolean):URIComponents {\n\tconst target:URIComponents = {};\n\n\tif (!skipNormalization) {\n\t\tbase = parse(serialize(base, options), options); //normalize base components\n\t\trelative = parse(serialize(relative, options), options); //normalize relative components\n\t}\n\toptions = options || {};\n\n\tif (!options.tolerant && relative.scheme) {\n\t\ttarget.scheme = relative.scheme;\n\t\t//target.authority = relative.authority;\n\t\ttarget.userinfo = relative.userinfo;\n\t\ttarget.host = relative.host;\n\t\ttarget.port = relative.port;\n\t\ttarget.path = removeDotSegments(relative.path || \"\");\n\t\ttarget.query = relative.query;\n\t} else {\n\t\tif (relative.userinfo !== undefined || relative.host !== undefined || relative.port !== undefined) {\n\t\t\t//target.authority = relative.authority;\n\t\t\ttarget.userinfo = relative.userinfo;\n\t\t\ttarget.host = relative.host;\n\t\t\ttarget.port = relative.port;\n\t\t\ttarget.path = removeDotSegments(relative.path || \"\");\n\t\t\ttarget.query = relative.query;\n\t\t} else {\n\t\t\tif (!relative.path) {\n\t\t\t\ttarget.path = base.path;\n\t\t\t\tif (relative.query !== undefined) {\n\t\t\t\t\ttarget.query = relative.query;\n\t\t\t\t} else {\n\t\t\t\t\ttarget.query = base.query;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (relative.path.charAt(0) === \"/\") {\n\t\t\t\t\ttarget.path = removeDotSegments(relative.path);\n\t\t\t\t} else {\n\t\t\t\t\tif ((base.userinfo !== undefined || base.host !== undefined || base.port !== undefined) && !base.path) {\n\t\t\t\t\t\ttarget.path = \"/\" + relative.path;\n\t\t\t\t\t} else if (!base.path) {\n\t\t\t\t\t\ttarget.path = relative.path;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttarget.path = base.path.slice(0, base.path.lastIndexOf(\"/\") + 1) + relative.path;\n\t\t\t\t\t}\n\t\t\t\t\ttarget.path = removeDotSegments(target.path);\n\t\t\t\t}\n\t\t\t\ttarget.query = relative.query;\n\t\t\t}\n\t\t\t//target.authority = base.authority;\n\t\t\ttarget.userinfo = base.userinfo;\n\t\t\ttarget.host = base.host;\n\t\t\ttarget.port = base.port;\n\t\t}\n\t\ttarget.scheme = base.scheme;\n\t}\n\n\ttarget.fragment = relative.fragment;\n\n\treturn target;\n};\n\nexport function resolve(baseURI:string, relativeURI:string, options?:URIOptions):string {\n\tconst schemelessOptions = assign({ scheme : 'null' }, options);\n\treturn serialize(resolveComponents(parse(baseURI, schemelessOptions), parse(relativeURI, schemelessOptions), schemelessOptions, true), schemelessOptions);\n};\n\nexport function normalize(uri:string, options?:URIOptions):string;\nexport function normalize(uri:URIComponents, options?:URIOptions):URIComponents;\nexport function normalize(uri:any, options?:URIOptions):any {\n\tif (typeof uri === \"string\") {\n\t\turi = serialize(parse(uri, options), options);\n\t} else if (typeOf(uri) === \"object\") {\n\t\turi = parse(serialize(uri, options), options);\n\t}\n\n\treturn uri;\n};\n\nexport function equal(uriA:string, uriB:string, options?: URIOptions):boolean;\nexport function equal(uriA:URIComponents, uriB:URIComponents, options?:URIOptions):boolean;\nexport function equal(uriA:any, uriB:any, options?:URIOptions):boolean {\n\tif (typeof uriA === \"string\") {\n\t\turiA = serialize(parse(uriA, options), options);\n\t} else if (typeOf(uriA) === \"object\") {\n\t\turiA = serialize(uriA, options);\n\t}\n\n\tif (typeof uriB === \"string\") {\n\t\turiB = serialize(parse(uriB, options), options);\n\t} else if (typeOf(uriB) === \"object\") {\n\t\turiB = serialize(uriB, options);\n\t}\n\n\treturn uriA === uriB;\n};\n\nexport function escapeComponent(str:string, options?:URIOptions):string {\n\treturn str && str.toString().replace((!options || !options.iri ? URI_PROTOCOL.ESCAPE : IRI_PROTOCOL.ESCAPE), pctEncChar);\n};\n\nexport function unescapeComponent(str:string, options?:URIOptions):string {\n\treturn str && str.toString().replace((!options || !options.iri ? URI_PROTOCOL.PCT_ENCODED : IRI_PROTOCOL.PCT_ENCODED), pctDecChars);\n};\n", "'use strict';\n\n/** Highest positive signed 32-bit float value */\nconst maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\n\n/** Bootstring parameters */\nconst base = 36;\nconst tMin = 1;\nconst tMax = 26;\nconst skew = 38;\nconst damp = 700;\nconst initialBias = 72;\nconst initialN = 128; // 0x80\nconst delimiter = '-'; // '\\x2D'\n\n/** Regular expressions */\nconst regexPunycode = /^xn--/;\nconst regexNonASCII = /[^\\0-\\x7E]/; // non-ASCII chars\nconst regexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\n\n/** Error messages */\nconst errors = {\n\t'overflow': 'Overflow: input needs wider integers to process',\n\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t'invalid-input': 'Invalid input'\n};\n\n/** Convenience shortcuts */\nconst baseMinusTMin = base - tMin;\nconst floor = Math.floor;\nconst stringFromCharCode = String.fromCharCode;\n\n/*--------------------------------------------------------------------------*/\n\n/**\n * A generic error utility function.\n * @private\n * @param {String} type The error type.\n * @returns {Error} Throws a `RangeError` with the applicable error message.\n */\nfunction error(type) {\n\tthrow new RangeError(errors[type]);\n}\n\n/**\n * A generic `Array#map` utility function.\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} callback The function that gets called for every array\n * item.\n * @returns {Array} A new array of values returned by the callback function.\n */\nfunction map(array, fn) {\n\tconst result = [];\n\tlet length = array.length;\n\twhile (length--) {\n\t\tresult[length] = fn(array[length]);\n\t}\n\treturn result;\n}\n\n/**\n * A simple `Array#map`-like wrapper to work with domain name strings or email\n * addresses.\n * @private\n * @param {String} domain The domain name or email address.\n * @param {Function} callback The function that gets called for every\n * character.\n * @returns {Array} A new string of characters returned by the callback\n * function.\n */\nfunction mapDomain(string, fn) {\n\tconst parts = string.split('@');\n\tlet result = '';\n\tif (parts.length > 1) {\n\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t// the local part (i.e. everything up to `@`) intact.\n\t\tresult = parts[0] + '@';\n\t\tstring = parts[1];\n\t}\n\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\tstring = string.replace(regexSeparators, '\\x2E');\n\tconst labels = string.split('.');\n\tconst encoded = map(labels, fn).join('.');\n\treturn result + encoded;\n}\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n * @see `punycode.ucs2.encode`\n * @see \n * @memberOf punycode.ucs2\n * @name decode\n * @param {String} string The Unicode input string (UCS-2).\n * @returns {Array} The new array of code points.\n */\nfunction ucs2decode(string) {\n\tconst output = [];\n\tlet counter = 0;\n\tconst length = string.length;\n\twhile (counter < length) {\n\t\tconst value = string.charCodeAt(counter++);\n\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t// It's a high surrogate, and there is a next character.\n\t\t\tconst extra = string.charCodeAt(counter++);\n\t\t\tif ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t} else {\n\t\t\t\t// It's an unmatched surrogate; only append this code unit, in case the\n\t\t\t\t// next code unit is the high surrogate of a surrogate pair.\n\t\t\t\toutput.push(value);\n\t\t\t\tcounter--;\n\t\t\t}\n\t\t} else {\n\t\t\toutput.push(value);\n\t\t}\n\t}\n\treturn output;\n}\n\n/**\n * Creates a string based on an array of numeric code points.\n * @see `punycode.ucs2.decode`\n * @memberOf punycode.ucs2\n * @name encode\n * @param {Array} codePoints The array of numeric code points.\n * @returns {String} The new Unicode string (UCS-2).\n */\nconst ucs2encode = array => String.fromCodePoint(...array);\n\n/**\n * Converts a basic code point into a digit/integer.\n * @see `digitToBasic()`\n * @private\n * @param {Number} codePoint The basic numeric code point value.\n * @returns {Number} The numeric value of a basic code point (for use in\n * representing integers) in the range `0` to `base - 1`, or `base` if\n * the code point does not represent a value.\n */\nconst basicToDigit = function(codePoint) {\n\tif (codePoint - 0x30 < 0x0A) {\n\t\treturn codePoint - 0x16;\n\t}\n\tif (codePoint - 0x41 < 0x1A) {\n\t\treturn codePoint - 0x41;\n\t}\n\tif (codePoint - 0x61 < 0x1A) {\n\t\treturn codePoint - 0x61;\n\t}\n\treturn base;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n * @see `basicToDigit()`\n * @private\n * @param {Number} digit The numeric value of a basic code point.\n * @returns {Number} The basic code point whose value (when used for\n * representing integers) is `digit`, which needs to be in the range\n * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n * used; else, the lowercase form is used. The behavior is undefined\n * if `flag` is non-zero and `digit` has no uppercase form.\n */\nconst digitToBasic = function(digit, flag) {\n\t// 0..25 map to ASCII a..z or A..Z\n\t// 26..35 map to ASCII 0..9\n\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n * @private\n */\nconst adapt = function(delta, numPoints, firstTime) {\n\tlet k = 0;\n\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\tdelta += floor(delta / numPoints);\n\tfor (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\tdelta = floor(delta / baseMinusTMin);\n\t}\n\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n * symbols.\n * @memberOf punycode\n * @param {String} input The Punycode string of ASCII-only symbols.\n * @returns {String} The resulting string of Unicode symbols.\n */\nconst decode = function(input) {\n\t// Don't use UCS-2.\n\tconst output = [];\n\tconst inputLength = input.length;\n\tlet i = 0;\n\tlet n = initialN;\n\tlet bias = initialBias;\n\n\t// Handle the basic code points: let `basic` be the number of input code\n\t// points before the last delimiter, or `0` if there is none, then copy\n\t// the first basic code points to the output.\n\n\tlet basic = input.lastIndexOf(delimiter);\n\tif (basic < 0) {\n\t\tbasic = 0;\n\t}\n\n\tfor (let j = 0; j < basic; ++j) {\n\t\t// if it's not a basic code point\n\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\terror('not-basic');\n\t\t}\n\t\toutput.push(input.charCodeAt(j));\n\t}\n\n\t// Main decoding loop: start just after the last delimiter if any basic code\n\t// points were copied; start at the beginning otherwise.\n\n\tfor (let index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) {\n\n\t\t// `index` is the index of the next character to be consumed.\n\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t// which gets added to `i`. The overflow checking is easier\n\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t// value at the end to obtain `delta`.\n\t\tlet oldi = i;\n\t\tfor (let w = 1, k = base; /* no condition */; k += base) {\n\n\t\t\tif (index >= inputLength) {\n\t\t\t\terror('invalid-input');\n\t\t\t}\n\n\t\t\tconst digit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\ti += digit * w;\n\t\t\tconst t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\n\t\t\tif (digit < t) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst baseMinusT = base - t;\n\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tw *= baseMinusT;\n\n\t\t}\n\n\t\tconst out = output.length + 1;\n\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t// incrementing `n` each time, so we'll fix that now:\n\t\tif (floor(i / out) > maxInt - n) {\n\t\t\terror('overflow');\n\t\t}\n\n\t\tn += floor(i / out);\n\t\ti %= out;\n\n\t\t// Insert `n` at position `i` of the output.\n\t\toutput.splice(i++, 0, n);\n\n\t}\n\n\treturn String.fromCodePoint(...output);\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n * @memberOf punycode\n * @param {String} input The string of Unicode symbols.\n * @returns {String} The resulting Punycode string of ASCII-only symbols.\n */\nconst encode = function(input) {\n\tconst output = [];\n\n\t// Convert the input in UCS-2 to an array of Unicode code points.\n\tinput = ucs2decode(input);\n\n\t// Cache the length.\n\tlet inputLength = input.length;\n\n\t// Initialize the state.\n\tlet n = initialN;\n\tlet delta = 0;\n\tlet bias = initialBias;\n\n\t// Handle the basic code points.\n\tfor (const currentValue of input) {\n\t\tif (currentValue < 0x80) {\n\t\t\toutput.push(stringFromCharCode(currentValue));\n\t\t}\n\t}\n\n\tlet basicLength = output.length;\n\tlet handledCPCount = basicLength;\n\n\t// `handledCPCount` is the number of code points that have been handled;\n\t// `basicLength` is the number of basic code points.\n\n\t// Finish the basic string with a delimiter unless it's empty.\n\tif (basicLength) {\n\t\toutput.push(delimiter);\n\t}\n\n\t// Main encoding loop:\n\twhile (handledCPCount < inputLength) {\n\n\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t// larger one:\n\t\tlet m = maxInt;\n\t\tfor (const currentValue of input) {\n\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\tm = currentValue;\n\t\t\t}\n\t\t}\n\n\t\t// Increase `delta` enough to advance the decoder's state to ,\n\t\t// but guard against overflow.\n\t\tconst handledCPCountPlusOne = handledCPCount + 1;\n\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\terror('overflow');\n\t\t}\n\n\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\tn = m;\n\n\t\tfor (const currentValue of input) {\n\t\t\tif (currentValue < n && ++delta > maxInt) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\t\t\tif (currentValue == n) {\n\t\t\t\t// Represent delta as a generalized variable-length integer.\n\t\t\t\tlet q = delta;\n\t\t\t\tfor (let k = base; /* no condition */; k += base) {\n\t\t\t\t\tconst t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tconst qMinusT = q - t;\n\t\t\t\t\tconst baseMinusT = base - t;\n\t\t\t\t\toutput.push(\n\t\t\t\t\t\tstringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0))\n\t\t\t\t\t);\n\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t}\n\n\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\tdelta = 0;\n\t\t\t\t++handledCPCount;\n\t\t\t}\n\t\t}\n\n\t\t++delta;\n\t\t++n;\n\n\t}\n\treturn output.join('');\n};\n\n/**\n * Converts a Punycode string representing a domain name or an email address\n * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n * it doesn't matter if you call it on a string that has already been\n * converted to Unicode.\n * @memberOf punycode\n * @param {String} input The Punycoded domain name or email address to\n * convert to Unicode.\n * @returns {String} The Unicode representation of the given Punycode\n * string.\n */\nconst toUnicode = function(input) {\n\treturn mapDomain(input, function(string) {\n\t\treturn regexPunycode.test(string)\n\t\t\t? decode(string.slice(4).toLowerCase())\n\t\t\t: string;\n\t});\n};\n\n/**\n * Converts a Unicode string representing a domain name or an email address to\n * Punycode. Only the non-ASCII parts of the domain name will be converted,\n * i.e. it doesn't matter if you call it with a domain that's already in\n * ASCII.\n * @memberOf punycode\n * @param {String} input The domain name or email address to convert, as a\n * Unicode string.\n * @returns {String} The Punycode representation of the given domain name or\n * email address.\n */\nconst toASCII = function(input) {\n\treturn mapDomain(input, function(string) {\n\t\treturn regexNonASCII.test(string)\n\t\t\t? 'xn--' + encode(string)\n\t\t\t: string;\n\t});\n};\n\n/*--------------------------------------------------------------------------*/\n\n/** Define the public API */\nconst punycode = {\n\t/**\n\t * A string representing the current Punycode.js version number.\n\t * @memberOf punycode\n\t * @type String\n\t */\n\t'version': '2.1.0',\n\t/**\n\t * An object of methods to convert from JavaScript's internal character\n\t * representation (UCS-2) to Unicode code points, and back.\n\t * @see \n\t * @memberOf punycode\n\t * @type Object\n\t */\n\t'ucs2': {\n\t\t'decode': ucs2decode,\n\t\t'encode': ucs2encode\n\t},\n\t'decode': decode,\n\t'encode': encode,\n\t'toASCII': toASCII,\n\t'toUnicode': toUnicode\n};\n\nexport default punycode;\n", "import { URIRegExps } from \"./uri\";\nimport { buildExps } from \"./regexps-uri\";\n\nexport default buildExps(true);\n", "import { URIRegExps } from \"./uri\";\nimport { merge, subexp } from \"./util\";\n\nexport function buildExps(isIRI:boolean):URIRegExps {\n\tconst\n\t\tALPHA$$ = \"[A-Za-z]\",\n\t\tCR$ = \"[\\\\x0D]\",\n\t\tDIGIT$$ = \"[0-9]\",\n\t\tDQUOTE$$ = \"[\\\\x22]\",\n\t\tHEXDIG$$ = merge(DIGIT$$, \"[A-Fa-f]\"), //case-insensitive\n\t\tLF$$ = \"[\\\\x0A]\",\n\t\tSP$$ = \"[\\\\x20]\",\n\t\tPCT_ENCODED$ = subexp(subexp(\"%[EFef]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%[89A-Fa-f]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%\" + HEXDIG$$ + HEXDIG$$)), //expanded\n\t\tGEN_DELIMS$$ = \"[\\\\:\\\\/\\\\?\\\\#\\\\[\\\\]\\\\@]\",\n\t\tSUB_DELIMS$$ = \"[\\\\!\\\\$\\\\&\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\;\\\\=]\",\n\t\tRESERVED$$ = merge(GEN_DELIMS$$, SUB_DELIMS$$),\n\t\tUCSCHAR$$ = isIRI ? \"[\\\\xA0-\\\\u200D\\\\u2010-\\\\u2029\\\\u202F-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFEF]\" : \"[]\", //subset, excludes bidi control characters\n\t\tIPRIVATE$$ = isIRI ? \"[\\\\uE000-\\\\uF8FF]\" : \"[]\", //subset\n\t\tUNRESERVED$$ = merge(ALPHA$$, DIGIT$$, \"[\\\\-\\\\.\\\\_\\\\~]\", UCSCHAR$$),\n\t\tSCHEME$ = subexp(ALPHA$$ + merge(ALPHA$$, DIGIT$$, \"[\\\\+\\\\-\\\\.]\") + \"*\"),\n\t\tUSERINFO$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:]\")) + \"*\"),\n\t\tDEC_OCTET$ = subexp(subexp(\"25[0-5]\") + \"|\" + subexp(\"2[0-4]\" + DIGIT$$) + \"|\" + subexp(\"1\" + DIGIT$$ + DIGIT$$) + \"|\" + subexp(\"[1-9]\" + DIGIT$$) + \"|\" + DIGIT$$),\n\t\tDEC_OCTET_RELAXED$ = subexp(subexp(\"25[0-5]\") + \"|\" + subexp(\"2[0-4]\" + DIGIT$$) + \"|\" + subexp(\"1\" + DIGIT$$ + DIGIT$$) + \"|\" + subexp(\"0?[1-9]\" + DIGIT$$) + \"|0?0?\" + DIGIT$$), //relaxed parsing rules\n\t\tIPV4ADDRESS$ = subexp(DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$),\n\t\tH16$ = subexp(HEXDIG$$ + \"{1,4}\"),\n\t\tLS32$ = subexp(subexp(H16$ + \"\\\\:\" + H16$) + \"|\" + IPV4ADDRESS$),\n\t\tIPV6ADDRESS1$ = subexp( subexp(H16$ + \"\\\\:\") + \"{6}\" + LS32$), // 6( h16 \":\" ) ls32\n\t\tIPV6ADDRESS2$ = subexp( \"\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{5}\" + LS32$), // \"::\" 5( h16 \":\" ) ls32\n\t\tIPV6ADDRESS3$ = subexp(subexp( H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{4}\" + LS32$), //[ h16 ] \"::\" 4( h16 \":\" ) ls32\n\t\tIPV6ADDRESS4$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,1}\" + H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{3}\" + LS32$), //[ *1( h16 \":\" ) h16 ] \"::\" 3( h16 \":\" ) ls32\n\t\tIPV6ADDRESS5$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,2}\" + H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{2}\" + LS32$), //[ *2( h16 \":\" ) h16 ] \"::\" 2( h16 \":\" ) ls32\n\t\tIPV6ADDRESS6$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,3}\" + H16$) + \"?\\\\:\\\\:\" + H16$ + \"\\\\:\" + LS32$), //[ *3( h16 \":\" ) h16 ] \"::\" h16 \":\" ls32\n\t\tIPV6ADDRESS7$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,4}\" + H16$) + \"?\\\\:\\\\:\" + LS32$), //[ *4( h16 \":\" ) h16 ] \"::\" ls32\n\t\tIPV6ADDRESS8$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,5}\" + H16$) + \"?\\\\:\\\\:\" + H16$ ), //[ *5( h16 \":\" ) h16 ] \"::\" h16\n\t\tIPV6ADDRESS9$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,6}\" + H16$) + \"?\\\\:\\\\:\" ), //[ *6( h16 \":\" ) h16 ] \"::\"\n\t\tIPV6ADDRESS$ = subexp([IPV6ADDRESS1$, IPV6ADDRESS2$, IPV6ADDRESS3$, IPV6ADDRESS4$, IPV6ADDRESS5$, IPV6ADDRESS6$, IPV6ADDRESS7$, IPV6ADDRESS8$, IPV6ADDRESS9$].join(\"|\")),\n\t\tZONEID$ = subexp(subexp(UNRESERVED$$ + \"|\" + PCT_ENCODED$) + \"+\"), //RFC 6874\n\t\tIPV6ADDRZ$ = subexp(IPV6ADDRESS$ + \"\\\\%25\" + ZONEID$), //RFC 6874\n\t\tIPV6ADDRZ_RELAXED$ = subexp(IPV6ADDRESS$ + subexp(\"\\\\%25|\\\\%(?!\" + HEXDIG$$ + \"{2})\") + ZONEID$), //RFC 6874, with relaxed parsing rules\n\t\tIPVFUTURE$ = subexp(\"[vV]\" + HEXDIG$$ + \"+\\\\.\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:]\") + \"+\"),\n\t\tIP_LITERAL$ = subexp(\"\\\\[\" + subexp(IPV6ADDRZ_RELAXED$ + \"|\" + IPV6ADDRESS$ + \"|\" + IPVFUTURE$) + \"\\\\]\"), //RFC 6874\n\t\tREG_NAME$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$)) + \"*\"),\n\t\tHOST$ = subexp(IP_LITERAL$ + \"|\" + IPV4ADDRESS$ + \"(?!\" + REG_NAME$ + \")\" + \"|\" + REG_NAME$),\n\t\tPORT$ = subexp(DIGIT$$ + \"*\"),\n\t\tAUTHORITY$ = subexp(subexp(USERINFO$ + \"@\") + \"?\" + HOST$ + subexp(\"\\\\:\" + PORT$) + \"?\"),\n\t\tPCHAR$ = subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@]\")),\n\t\tSEGMENT$ = subexp(PCHAR$ + \"*\"),\n\t\tSEGMENT_NZ$ = subexp(PCHAR$ + \"+\"),\n\t\tSEGMENT_NZ_NC$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\@]\")) + \"+\"),\n\t\tPATH_ABEMPTY$ = subexp(subexp(\"\\\\/\" + SEGMENT$) + \"*\"),\n\t\tPATH_ABSOLUTE$ = subexp(\"\\\\/\" + subexp(SEGMENT_NZ$ + PATH_ABEMPTY$) + \"?\"), //simplified\n\t\tPATH_NOSCHEME$ = subexp(SEGMENT_NZ_NC$ + PATH_ABEMPTY$), //simplified\n\t\tPATH_ROOTLESS$ = subexp(SEGMENT_NZ$ + PATH_ABEMPTY$), //simplified\n\t\tPATH_EMPTY$ = \"(?!\" + PCHAR$ + \")\",\n\t\tPATH$ = subexp(PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$),\n\t\tQUERY$ = subexp(subexp(PCHAR$ + \"|\" + merge(\"[\\\\/\\\\?]\", IPRIVATE$$)) + \"*\"),\n\t\tFRAGMENT$ = subexp(subexp(PCHAR$ + \"|[\\\\/\\\\?]\") + \"*\"),\n\t\tHIER_PART$ = subexp(subexp(\"\\\\/\\\\/\" + AUTHORITY$ + PATH_ABEMPTY$) + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$),\n\t\tURI$ = subexp(SCHEME$ + \"\\\\:\" + HIER_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\" + subexp(\"\\\\#\" + FRAGMENT$) + \"?\"),\n\t\tRELATIVE_PART$ = subexp(subexp(\"\\\\/\\\\/\" + AUTHORITY$ + PATH_ABEMPTY$) + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_EMPTY$),\n\t\tRELATIVE$ = subexp(RELATIVE_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\" + subexp(\"\\\\#\" + FRAGMENT$) + \"?\"),\n\t\tURI_REFERENCE$ = subexp(URI$ + \"|\" + RELATIVE$),\n\t\tABSOLUTE_URI$ = subexp(SCHEME$ + \"\\\\:\" + HIER_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\"),\n\n\t\tGENERIC_REF$ = \"^(\" + SCHEME$ + \")\\\\:\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tRELATIVE_REF$ = \"^(){0}\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tABSOLUTE_REF$ = \"^(\" + SCHEME$ + \")\\\\:\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?$\",\n\t\tSAMEDOC_REF$ = \"^\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tAUTHORITY_REF$ = \"^\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?$\"\n\t;\n\n\treturn {\n\t\tNOT_SCHEME : new RegExp(merge(\"[^]\", ALPHA$$, DIGIT$$, \"[\\\\+\\\\-\\\\.]\"), \"g\"),\n\t\tNOT_USERINFO : new RegExp(merge(\"[^\\\\%\\\\:]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_HOST : new RegExp(merge(\"[^\\\\%\\\\[\\\\]\\\\:]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_PATH : new RegExp(merge(\"[^\\\\%\\\\/\\\\:\\\\@]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_PATH_NOSCHEME : new RegExp(merge(\"[^\\\\%\\\\/\\\\@]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_QUERY : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@\\\\/\\\\?]\", IPRIVATE$$), \"g\"),\n\t\tNOT_FRAGMENT : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@\\\\/\\\\?]\"), \"g\"),\n\t\tESCAPE : new RegExp(merge(\"[^]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tUNRESERVED : new RegExp(UNRESERVED$$, \"g\"),\n\t\tOTHER_CHARS : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, RESERVED$$), \"g\"),\n\t\tPCT_ENCODED : new RegExp(PCT_ENCODED$, \"g\"),\n\t\tIPV4ADDRESS : new RegExp(\"^(\" + IPV4ADDRESS$ + \")$\"),\n\t\tIPV6ADDRESS : new RegExp(\"^\\\\[?(\" + IPV6ADDRESS$ + \")\" + subexp(subexp(\"\\\\%25|\\\\%(?!\" + HEXDIG$$ + \"{2})\") + \"(\" + ZONEID$ + \")\") + \"?\\\\]?$\") //RFC 6874, with relaxed parsing rules\n\t};\n}\n\nexport default buildExps(false);\n", "export function merge(...sets:Array):string {\n\tif (sets.length > 1) {\n\t\tsets[0] = sets[0].slice(0, -1);\n\t\tconst xl = sets.length - 1;\n\t\tfor (let x = 1; x < xl; ++x) {\n\t\t\tsets[x] = sets[x].slice(1, -1);\n\t\t}\n\t\tsets[xl] = sets[xl].slice(1);\n\t\treturn sets.join('');\n\t} else {\n\t\treturn sets[0];\n\t}\n}\n\nexport function subexp(str:string):string {\n\treturn \"(?:\" + str + \")\";\n}\n\nexport function typeOf(o:any):string {\n\treturn o === undefined ? \"undefined\" : (o === null ? \"null\" : Object.prototype.toString.call(o).split(\" \").pop().split(\"]\").shift().toLowerCase());\n}\n\nexport function toUpperCase(str:string):string {\n\treturn str.toUpperCase();\n}\n\nexport function toArray(obj:any):Array {\n\treturn obj !== undefined && obj !== null ? (obj instanceof Array ? obj : (typeof obj.length !== \"number\" || obj.split || obj.setInterval || obj.call ? [obj] : Array.prototype.slice.call(obj))) : [];\n}\n\n\nexport function assign(target: object, source: any): any {\n\tconst obj = target as any;\n\tif (source) {\n\t\tfor (const key in source) {\n\t\t\tobj[key] = source[key];\n\t\t}\n\t}\n\treturn obj;\n}", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport {\n Client as XrpcClient,\n ServiceClient as XrpcServiceClient,\n} from '@atproto/xrpc'\nimport { methodSchemas, recordSchemas } from './schemas'\nimport * as ComAtprotoCreateAccount from './types/com/atproto/createAccount'\nimport * as ComAtprotoCreateInviteCode from './types/com/atproto/createInviteCode'\nimport * as ComAtprotoCreateSession from './types/com/atproto/createSession'\nimport * as ComAtprotoDeleteAccount from './types/com/atproto/deleteAccount'\nimport * as ComAtprotoDeleteSession from './types/com/atproto/deleteSession'\nimport * as ComAtprotoGetAccount from './types/com/atproto/getAccount'\nimport * as ComAtprotoGetAccountsConfig from './types/com/atproto/getAccountsConfig'\nimport * as ComAtprotoGetSession from './types/com/atproto/getSession'\nimport * as ComAtprotoRepoBatchWrite from './types/com/atproto/repoBatchWrite'\nimport * as ComAtprotoRepoCreateRecord from './types/com/atproto/repoCreateRecord'\nimport * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repoDeleteRecord'\nimport * as ComAtprotoRepoDescribe from './types/com/atproto/repoDescribe'\nimport * as ComAtprotoRepoGetRecord from './types/com/atproto/repoGetRecord'\nimport * as ComAtprotoRepoListRecords from './types/com/atproto/repoListRecords'\nimport * as ComAtprotoRepoPutRecord from './types/com/atproto/repoPutRecord'\nimport * as ComAtprotoRequestAccountPasswordReset from './types/com/atproto/requestAccountPasswordReset'\nimport * as ComAtprotoResetAccountPassword from './types/com/atproto/resetAccountPassword'\nimport * as ComAtprotoResolveName from './types/com/atproto/resolveName'\nimport * as ComAtprotoSyncGetRepo from './types/com/atproto/syncGetRepo'\nimport * as ComAtprotoSyncGetRoot from './types/com/atproto/syncGetRoot'\nimport * as ComAtprotoSyncUpdateRepo from './types/com/atproto/syncUpdateRepo'\nimport * as AppBskyBadge from './types/app/bsky/badge'\nimport * as AppBskyBadgeAccept from './types/app/bsky/badgeAccept'\nimport * as AppBskyBadgeOffer from './types/app/bsky/badgeOffer'\nimport * as AppBskyFollow from './types/app/bsky/follow'\nimport * as AppBskyGetAuthorFeed from './types/app/bsky/getAuthorFeed'\nimport * as AppBskyGetBadgeMembers from './types/app/bsky/getBadgeMembers'\nimport * as AppBskyGetHomeFeed from './types/app/bsky/getHomeFeed'\nimport * as AppBskyGetLikedBy from './types/app/bsky/getLikedBy'\nimport * as AppBskyGetNotificationCount from './types/app/bsky/getNotificationCount'\nimport * as AppBskyGetNotifications from './types/app/bsky/getNotifications'\nimport * as AppBskyGetPostThread from './types/app/bsky/getPostThread'\nimport * as AppBskyGetProfile from './types/app/bsky/getProfile'\nimport * as AppBskyGetRepostedBy from './types/app/bsky/getRepostedBy'\nimport * as AppBskyGetUserFollowers from './types/app/bsky/getUserFollowers'\nimport * as AppBskyGetUserFollows from './types/app/bsky/getUserFollows'\nimport * as AppBskyGetUsersSearch from './types/app/bsky/getUsersSearch'\nimport * as AppBskyGetUsersTypeahead from './types/app/bsky/getUsersTypeahead'\nimport * as AppBskyLike from './types/app/bsky/like'\nimport * as AppBskyMediaEmbed from './types/app/bsky/mediaEmbed'\nimport * as AppBskyPost from './types/app/bsky/post'\nimport * as AppBskyPostNotificationsSeen from './types/app/bsky/postNotificationsSeen'\nimport * as AppBskyProfile from './types/app/bsky/profile'\nimport * as AppBskyRepost from './types/app/bsky/repost'\nimport * as AppBskyUpdateProfile from './types/app/bsky/updateProfile'\n\nexport * as ComAtprotoCreateAccount from './types/com/atproto/createAccount'\nexport * as ComAtprotoCreateInviteCode from './types/com/atproto/createInviteCode'\nexport * as ComAtprotoCreateSession from './types/com/atproto/createSession'\nexport * as ComAtprotoDeleteAccount from './types/com/atproto/deleteAccount'\nexport * as ComAtprotoDeleteSession from './types/com/atproto/deleteSession'\nexport * as ComAtprotoGetAccount from './types/com/atproto/getAccount'\nexport * as ComAtprotoGetAccountsConfig from './types/com/atproto/getAccountsConfig'\nexport * as ComAtprotoGetSession from './types/com/atproto/getSession'\nexport * as ComAtprotoRepoBatchWrite from './types/com/atproto/repoBatchWrite'\nexport * as ComAtprotoRepoCreateRecord from './types/com/atproto/repoCreateRecord'\nexport * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repoDeleteRecord'\nexport * as ComAtprotoRepoDescribe from './types/com/atproto/repoDescribe'\nexport * as ComAtprotoRepoGetRecord from './types/com/atproto/repoGetRecord'\nexport * as ComAtprotoRepoListRecords from './types/com/atproto/repoListRecords'\nexport * as ComAtprotoRepoPutRecord from './types/com/atproto/repoPutRecord'\nexport * as ComAtprotoRequestAccountPasswordReset from './types/com/atproto/requestAccountPasswordReset'\nexport * as ComAtprotoResetAccountPassword from './types/com/atproto/resetAccountPassword'\nexport * as ComAtprotoResolveName from './types/com/atproto/resolveName'\nexport * as ComAtprotoSyncGetRepo from './types/com/atproto/syncGetRepo'\nexport * as ComAtprotoSyncGetRoot from './types/com/atproto/syncGetRoot'\nexport * as ComAtprotoSyncUpdateRepo from './types/com/atproto/syncUpdateRepo'\nexport * as AppBskyBadge from './types/app/bsky/badge'\nexport * as AppBskyBadgeAccept from './types/app/bsky/badgeAccept'\nexport * as AppBskyBadgeOffer from './types/app/bsky/badgeOffer'\nexport * as AppBskyFollow from './types/app/bsky/follow'\nexport * as AppBskyGetAuthorFeed from './types/app/bsky/getAuthorFeed'\nexport * as AppBskyGetBadgeMembers from './types/app/bsky/getBadgeMembers'\nexport * as AppBskyGetHomeFeed from './types/app/bsky/getHomeFeed'\nexport * as AppBskyGetLikedBy from './types/app/bsky/getLikedBy'\nexport * as AppBskyGetNotificationCount from './types/app/bsky/getNotificationCount'\nexport * as AppBskyGetNotifications from './types/app/bsky/getNotifications'\nexport * as AppBskyGetPostThread from './types/app/bsky/getPostThread'\nexport * as AppBskyGetProfile from './types/app/bsky/getProfile'\nexport * as AppBskyGetRepostedBy from './types/app/bsky/getRepostedBy'\nexport * as AppBskyGetUserFollowers from './types/app/bsky/getUserFollowers'\nexport * as AppBskyGetUserFollows from './types/app/bsky/getUserFollows'\nexport * as AppBskyGetUsersSearch from './types/app/bsky/getUsersSearch'\nexport * as AppBskyGetUsersTypeahead from './types/app/bsky/getUsersTypeahead'\nexport * as AppBskyLike from './types/app/bsky/like'\nexport * as AppBskyMediaEmbed from './types/app/bsky/mediaEmbed'\nexport * as AppBskyPost from './types/app/bsky/post'\nexport * as AppBskyPostNotificationsSeen from './types/app/bsky/postNotificationsSeen'\nexport * as AppBskyProfile from './types/app/bsky/profile'\nexport * as AppBskyRepost from './types/app/bsky/repost'\nexport * as AppBskyUpdateProfile from './types/app/bsky/updateProfile'\n\nexport class Client {\n xrpc: XrpcClient = new XrpcClient()\n\n constructor() {\n this.xrpc.addSchemas(methodSchemas)\n }\n\n service(serviceUri: string | URL): ServiceClient {\n return new ServiceClient(this, this.xrpc.service(serviceUri))\n }\n}\n\nconst defaultInst = new Client()\nexport default defaultInst\n\nexport class ServiceClient {\n _baseClient: Client\n xrpc: XrpcServiceClient\n com: ComNS\n app: AppNS\n\n constructor(baseClient: Client, xrpcService: XrpcServiceClient) {\n this._baseClient = baseClient\n this.xrpc = xrpcService\n this.com = new ComNS(this)\n this.app = new AppNS(this)\n }\n\n setHeader(key: string, value: string): void {\n this.xrpc.setHeader(key, value)\n }\n}\n\nexport class ComNS {\n _service: ServiceClient\n atproto: AtprotoNS\n\n constructor(service: ServiceClient) {\n this._service = service\n this.atproto = new AtprotoNS(service)\n }\n}\n\nexport class AtprotoNS {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n createAccount(\n params: ComAtprotoCreateAccount.QueryParams,\n data?: ComAtprotoCreateAccount.InputSchema,\n opts?: ComAtprotoCreateAccount.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.createAccount', params, data, opts)\n .catch((e) => {\n throw ComAtprotoCreateAccount.toKnownErr(e)\n })\n }\n\n createInviteCode(\n params: ComAtprotoCreateInviteCode.QueryParams,\n data?: ComAtprotoCreateInviteCode.InputSchema,\n opts?: ComAtprotoCreateInviteCode.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.createInviteCode', params, data, opts)\n .catch((e) => {\n throw ComAtprotoCreateInviteCode.toKnownErr(e)\n })\n }\n\n createSession(\n params: ComAtprotoCreateSession.QueryParams,\n data?: ComAtprotoCreateSession.InputSchema,\n opts?: ComAtprotoCreateSession.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.createSession', params, data, opts)\n .catch((e) => {\n throw ComAtprotoCreateSession.toKnownErr(e)\n })\n }\n\n deleteAccount(\n params: ComAtprotoDeleteAccount.QueryParams,\n data?: ComAtprotoDeleteAccount.InputSchema,\n opts?: ComAtprotoDeleteAccount.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.deleteAccount', params, data, opts)\n .catch((e) => {\n throw ComAtprotoDeleteAccount.toKnownErr(e)\n })\n }\n\n deleteSession(\n params: ComAtprotoDeleteSession.QueryParams,\n data?: ComAtprotoDeleteSession.InputSchema,\n opts?: ComAtprotoDeleteSession.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.deleteSession', params, data, opts)\n .catch((e) => {\n throw ComAtprotoDeleteSession.toKnownErr(e)\n })\n }\n\n getAccount(\n params: ComAtprotoGetAccount.QueryParams,\n data?: ComAtprotoGetAccount.InputSchema,\n opts?: ComAtprotoGetAccount.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.getAccount', params, data, opts)\n .catch((e) => {\n throw ComAtprotoGetAccount.toKnownErr(e)\n })\n }\n\n getAccountsConfig(\n params: ComAtprotoGetAccountsConfig.QueryParams,\n data?: ComAtprotoGetAccountsConfig.InputSchema,\n opts?: ComAtprotoGetAccountsConfig.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.getAccountsConfig', params, data, opts)\n .catch((e) => {\n throw ComAtprotoGetAccountsConfig.toKnownErr(e)\n })\n }\n\n getSession(\n params: ComAtprotoGetSession.QueryParams,\n data?: ComAtprotoGetSession.InputSchema,\n opts?: ComAtprotoGetSession.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.getSession', params, data, opts)\n .catch((e) => {\n throw ComAtprotoGetSession.toKnownErr(e)\n })\n }\n\n repoBatchWrite(\n params: ComAtprotoRepoBatchWrite.QueryParams,\n data?: ComAtprotoRepoBatchWrite.InputSchema,\n opts?: ComAtprotoRepoBatchWrite.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repoBatchWrite', params, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoBatchWrite.toKnownErr(e)\n })\n }\n\n repoCreateRecord(\n params: ComAtprotoRepoCreateRecord.QueryParams,\n data?: ComAtprotoRepoCreateRecord.InputSchema,\n opts?: ComAtprotoRepoCreateRecord.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repoCreateRecord', params, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoCreateRecord.toKnownErr(e)\n })\n }\n\n repoDeleteRecord(\n params: ComAtprotoRepoDeleteRecord.QueryParams,\n data?: ComAtprotoRepoDeleteRecord.InputSchema,\n opts?: ComAtprotoRepoDeleteRecord.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repoDeleteRecord', params, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoDeleteRecord.toKnownErr(e)\n })\n }\n\n repoDescribe(\n params: ComAtprotoRepoDescribe.QueryParams,\n data?: ComAtprotoRepoDescribe.InputSchema,\n opts?: ComAtprotoRepoDescribe.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repoDescribe', params, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoDescribe.toKnownErr(e)\n })\n }\n\n repoGetRecord(\n params: ComAtprotoRepoGetRecord.QueryParams,\n data?: ComAtprotoRepoGetRecord.InputSchema,\n opts?: ComAtprotoRepoGetRecord.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repoGetRecord', params, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoGetRecord.toKnownErr(e)\n })\n }\n\n repoListRecords(\n params: ComAtprotoRepoListRecords.QueryParams,\n data?: ComAtprotoRepoListRecords.InputSchema,\n opts?: ComAtprotoRepoListRecords.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repoListRecords', params, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoListRecords.toKnownErr(e)\n })\n }\n\n repoPutRecord(\n params: ComAtprotoRepoPutRecord.QueryParams,\n data?: ComAtprotoRepoPutRecord.InputSchema,\n opts?: ComAtprotoRepoPutRecord.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repoPutRecord', params, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoPutRecord.toKnownErr(e)\n })\n }\n\n requestAccountPasswordReset(\n params: ComAtprotoRequestAccountPasswordReset.QueryParams,\n data?: ComAtprotoRequestAccountPasswordReset.InputSchema,\n opts?: ComAtprotoRequestAccountPasswordReset.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.requestAccountPasswordReset', params, data, opts)\n .catch((e) => {\n throw ComAtprotoRequestAccountPasswordReset.toKnownErr(e)\n })\n }\n\n resetAccountPassword(\n params: ComAtprotoResetAccountPassword.QueryParams,\n data?: ComAtprotoResetAccountPassword.InputSchema,\n opts?: ComAtprotoResetAccountPassword.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.resetAccountPassword', params, data, opts)\n .catch((e) => {\n throw ComAtprotoResetAccountPassword.toKnownErr(e)\n })\n }\n\n resolveName(\n params: ComAtprotoResolveName.QueryParams,\n data?: ComAtprotoResolveName.InputSchema,\n opts?: ComAtprotoResolveName.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.resolveName', params, data, opts)\n .catch((e) => {\n throw ComAtprotoResolveName.toKnownErr(e)\n })\n }\n\n syncGetRepo(\n params: ComAtprotoSyncGetRepo.QueryParams,\n data?: ComAtprotoSyncGetRepo.InputSchema,\n opts?: ComAtprotoSyncGetRepo.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.syncGetRepo', params, data, opts)\n .catch((e) => {\n throw ComAtprotoSyncGetRepo.toKnownErr(e)\n })\n }\n\n syncGetRoot(\n params: ComAtprotoSyncGetRoot.QueryParams,\n data?: ComAtprotoSyncGetRoot.InputSchema,\n opts?: ComAtprotoSyncGetRoot.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.syncGetRoot', params, data, opts)\n .catch((e) => {\n throw ComAtprotoSyncGetRoot.toKnownErr(e)\n })\n }\n\n syncUpdateRepo(\n params: ComAtprotoSyncUpdateRepo.QueryParams,\n data?: ComAtprotoSyncUpdateRepo.InputSchema,\n opts?: ComAtprotoSyncUpdateRepo.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.syncUpdateRepo', params, data, opts)\n .catch((e) => {\n throw ComAtprotoSyncUpdateRepo.toKnownErr(e)\n })\n }\n}\n\nexport class AppNS {\n _service: ServiceClient\n bsky: BskyNS\n\n constructor(service: ServiceClient) {\n this._service = service\n this.bsky = new BskyNS(service)\n }\n}\n\nexport class BskyNS {\n _service: ServiceClient\n badge: BadgeRecord\n badgeAccept: BadgeAcceptRecord\n badgeOffer: BadgeOfferRecord\n follow: FollowRecord\n like: LikeRecord\n mediaEmbed: MediaEmbedRecord\n post: PostRecord\n profile: ProfileRecord\n repost: RepostRecord\n\n constructor(service: ServiceClient) {\n this._service = service\n this.badge = new BadgeRecord(service)\n this.badgeAccept = new BadgeAcceptRecord(service)\n this.badgeOffer = new BadgeOfferRecord(service)\n this.follow = new FollowRecord(service)\n this.like = new LikeRecord(service)\n this.mediaEmbed = new MediaEmbedRecord(service)\n this.post = new PostRecord(service)\n this.profile = new ProfileRecord(service)\n this.repost = new RepostRecord(service)\n }\n\n getAuthorFeed(\n params: AppBskyGetAuthorFeed.QueryParams,\n data?: AppBskyGetAuthorFeed.InputSchema,\n opts?: AppBskyGetAuthorFeed.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getAuthorFeed', params, data, opts)\n .catch((e) => {\n throw AppBskyGetAuthorFeed.toKnownErr(e)\n })\n }\n\n getBadgeMembers(\n params: AppBskyGetBadgeMembers.QueryParams,\n data?: AppBskyGetBadgeMembers.InputSchema,\n opts?: AppBskyGetBadgeMembers.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getBadgeMembers', params, data, opts)\n .catch((e) => {\n throw AppBskyGetBadgeMembers.toKnownErr(e)\n })\n }\n\n getHomeFeed(\n params: AppBskyGetHomeFeed.QueryParams,\n data?: AppBskyGetHomeFeed.InputSchema,\n opts?: AppBskyGetHomeFeed.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getHomeFeed', params, data, opts)\n .catch((e) => {\n throw AppBskyGetHomeFeed.toKnownErr(e)\n })\n }\n\n getLikedBy(\n params: AppBskyGetLikedBy.QueryParams,\n data?: AppBskyGetLikedBy.InputSchema,\n opts?: AppBskyGetLikedBy.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getLikedBy', params, data, opts)\n .catch((e) => {\n throw AppBskyGetLikedBy.toKnownErr(e)\n })\n }\n\n getNotificationCount(\n params: AppBskyGetNotificationCount.QueryParams,\n data?: AppBskyGetNotificationCount.InputSchema,\n opts?: AppBskyGetNotificationCount.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getNotificationCount', params, data, opts)\n .catch((e) => {\n throw AppBskyGetNotificationCount.toKnownErr(e)\n })\n }\n\n getNotifications(\n params: AppBskyGetNotifications.QueryParams,\n data?: AppBskyGetNotifications.InputSchema,\n opts?: AppBskyGetNotifications.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getNotifications', params, data, opts)\n .catch((e) => {\n throw AppBskyGetNotifications.toKnownErr(e)\n })\n }\n\n getPostThread(\n params: AppBskyGetPostThread.QueryParams,\n data?: AppBskyGetPostThread.InputSchema,\n opts?: AppBskyGetPostThread.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getPostThread', params, data, opts)\n .catch((e) => {\n throw AppBskyGetPostThread.toKnownErr(e)\n })\n }\n\n getProfile(\n params: AppBskyGetProfile.QueryParams,\n data?: AppBskyGetProfile.InputSchema,\n opts?: AppBskyGetProfile.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getProfile', params, data, opts)\n .catch((e) => {\n throw AppBskyGetProfile.toKnownErr(e)\n })\n }\n\n getRepostedBy(\n params: AppBskyGetRepostedBy.QueryParams,\n data?: AppBskyGetRepostedBy.InputSchema,\n opts?: AppBskyGetRepostedBy.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getRepostedBy', params, data, opts)\n .catch((e) => {\n throw AppBskyGetRepostedBy.toKnownErr(e)\n })\n }\n\n getUserFollowers(\n params: AppBskyGetUserFollowers.QueryParams,\n data?: AppBskyGetUserFollowers.InputSchema,\n opts?: AppBskyGetUserFollowers.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getUserFollowers', params, data, opts)\n .catch((e) => {\n throw AppBskyGetUserFollowers.toKnownErr(e)\n })\n }\n\n getUserFollows(\n params: AppBskyGetUserFollows.QueryParams,\n data?: AppBskyGetUserFollows.InputSchema,\n opts?: AppBskyGetUserFollows.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getUserFollows', params, data, opts)\n .catch((e) => {\n throw AppBskyGetUserFollows.toKnownErr(e)\n })\n }\n\n getUsersSearch(\n params: AppBskyGetUsersSearch.QueryParams,\n data?: AppBskyGetUsersSearch.InputSchema,\n opts?: AppBskyGetUsersSearch.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getUsersSearch', params, data, opts)\n .catch((e) => {\n throw AppBskyGetUsersSearch.toKnownErr(e)\n })\n }\n\n getUsersTypeahead(\n params: AppBskyGetUsersTypeahead.QueryParams,\n data?: AppBskyGetUsersTypeahead.InputSchema,\n opts?: AppBskyGetUsersTypeahead.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.getUsersTypeahead', params, data, opts)\n .catch((e) => {\n throw AppBskyGetUsersTypeahead.toKnownErr(e)\n })\n }\n\n postNotificationsSeen(\n params: AppBskyPostNotificationsSeen.QueryParams,\n data?: AppBskyPostNotificationsSeen.InputSchema,\n opts?: AppBskyPostNotificationsSeen.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.postNotificationsSeen', params, data, opts)\n .catch((e) => {\n throw AppBskyPostNotificationsSeen.toKnownErr(e)\n })\n }\n\n updateProfile(\n params: AppBskyUpdateProfile.QueryParams,\n data?: AppBskyUpdateProfile.InputSchema,\n opts?: AppBskyUpdateProfile.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.updateProfile', params, data, opts)\n .catch((e) => {\n throw AppBskyUpdateProfile.toKnownErr(e)\n })\n }\n}\n\nexport class BadgeRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyBadge.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.badge',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyBadge.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.badge',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyBadge.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.badge'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.badge', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.badge', ...params },\n undefined,\n { headers }\n )\n }\n}\n\nexport class BadgeAcceptRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyBadgeAccept.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.badgeAccept',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyBadgeAccept.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.badgeAccept',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyBadgeAccept.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.badgeAccept'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.badgeAccept', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.badgeAccept', ...params },\n undefined,\n { headers }\n )\n }\n}\n\nexport class BadgeOfferRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyBadgeOffer.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.badgeOffer',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyBadgeOffer.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.badgeOffer',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyBadgeOffer.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.badgeOffer'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.badgeOffer', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.badgeOffer', ...params },\n undefined,\n { headers }\n )\n }\n}\n\nexport class FollowRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyFollow.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.follow',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyFollow.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.follow',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyFollow.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.follow'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.follow', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.follow', ...params },\n undefined,\n { headers }\n )\n }\n}\n\nexport class LikeRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyLike.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.like',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyLike.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.like',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyLike.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.like'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.like', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.like', ...params },\n undefined,\n { headers }\n )\n }\n}\n\nexport class MediaEmbedRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyMediaEmbed.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.mediaEmbed',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyMediaEmbed.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.mediaEmbed',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyMediaEmbed.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.mediaEmbed'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.mediaEmbed', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.mediaEmbed', ...params },\n undefined,\n { headers }\n )\n }\n}\n\nexport class PostRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyPost.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.post',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyPost.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.post',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyPost.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.post'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.post', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.post', ...params },\n undefined,\n { headers }\n )\n }\n}\n\nexport class ProfileRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyProfile.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.profile',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyProfile.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.profile',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyProfile.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.profile'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.profile', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.profile', ...params },\n undefined,\n { headers }\n )\n }\n}\n\nexport class RepostRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyRepost.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repoListRecords', {\n collection: 'app.bsky.repost',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyRepost.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repoGetRecord', {\n collection: 'app.bsky.repost',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit,\n record: AppBskyRepost.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.repost'\n const res = await this._service.xrpc.call(\n 'com.atproto.repoCreateRecord',\n { collection: 'app.bsky.repost', ...params },\n record,\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repoDeleteRecord',\n { collection: 'app.bsky.repost', ...params },\n undefined,\n { headers }\n )\n }\n}\n", "var util;\n(function (util) {\n util.assertEqual = (val) => val;\n function assertIs(_arg) { }\n util.assertIs = assertIs;\n function assertNever(_x) {\n throw new Error();\n }\n util.assertNever = assertNever;\n util.arrayToEnum = (items) => {\n const obj = {};\n for (const item of items) {\n obj[item] = item;\n }\n return obj;\n };\n util.getValidEnumValues = (obj) => {\n const validKeys = util.objectKeys(obj).filter((k) => typeof obj[obj[k]] !== \"number\");\n const filtered = {};\n for (const k of validKeys) {\n filtered[k] = obj[k];\n }\n return util.objectValues(filtered);\n };\n util.objectValues = (obj) => {\n return util.objectKeys(obj).map(function (e) {\n return obj[e];\n });\n };\n util.objectKeys = typeof Object.keys === \"function\" // eslint-disable-line ban/ban\n ? (obj) => Object.keys(obj) // eslint-disable-line ban/ban\n : (object) => {\n const keys = [];\n for (const key in object) {\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n keys.push(key);\n }\n }\n return keys;\n };\n util.find = (arr, checker) => {\n for (const item of arr) {\n if (checker(item))\n return item;\n }\n return undefined;\n };\n util.isInteger = typeof Number.isInteger === \"function\"\n ? (val) => Number.isInteger(val) // eslint-disable-line ban/ban\n : (val) => typeof val === \"number\" && isFinite(val) && Math.floor(val) === val;\n function joinValues(array, separator = \" | \") {\n return array\n .map((val) => (typeof val === \"string\" ? `'${val}'` : val))\n .join(separator);\n }\n util.joinValues = joinValues;\n util.jsonStringifyReplacer = (_, value) => {\n if (typeof value === \"bigint\") {\n return value.toString();\n }\n return value;\n };\n})(util || (util = {}));\nconst ZodParsedType = util.arrayToEnum([\n \"string\",\n \"nan\",\n \"number\",\n \"integer\",\n \"float\",\n \"boolean\",\n \"date\",\n \"bigint\",\n \"symbol\",\n \"function\",\n \"undefined\",\n \"null\",\n \"array\",\n \"object\",\n \"unknown\",\n \"promise\",\n \"void\",\n \"never\",\n \"map\",\n \"set\",\n]);\nconst getParsedType = (data) => {\n const t = typeof data;\n switch (t) {\n case \"undefined\":\n return ZodParsedType.undefined;\n case \"string\":\n return ZodParsedType.string;\n case \"number\":\n return isNaN(data) ? ZodParsedType.nan : ZodParsedType.number;\n case \"boolean\":\n return ZodParsedType.boolean;\n case \"function\":\n return ZodParsedType.function;\n case \"bigint\":\n return ZodParsedType.bigint;\n case \"object\":\n if (Array.isArray(data)) {\n return ZodParsedType.array;\n }\n if (data === null) {\n return ZodParsedType.null;\n }\n if (data.then &&\n typeof data.then === \"function\" &&\n data.catch &&\n typeof data.catch === \"function\") {\n return ZodParsedType.promise;\n }\n if (typeof Map !== \"undefined\" && data instanceof Map) {\n return ZodParsedType.map;\n }\n if (typeof Set !== \"undefined\" && data instanceof Set) {\n return ZodParsedType.set;\n }\n if (typeof Date !== \"undefined\" && data instanceof Date) {\n return ZodParsedType.date;\n }\n return ZodParsedType.object;\n default:\n return ZodParsedType.unknown;\n }\n};\n\nconst ZodIssueCode = util.arrayToEnum([\n \"invalid_type\",\n \"invalid_literal\",\n \"custom\",\n \"invalid_union\",\n \"invalid_union_discriminator\",\n \"invalid_enum_value\",\n \"unrecognized_keys\",\n \"invalid_arguments\",\n \"invalid_return_type\",\n \"invalid_date\",\n \"invalid_string\",\n \"too_small\",\n \"too_big\",\n \"invalid_intersection_types\",\n \"not_multiple_of\",\n]);\nconst quotelessJson = (obj) => {\n const json = JSON.stringify(obj, null, 2);\n return json.replace(/\"([^\"]+)\":/g, \"$1:\");\n};\nclass ZodError extends Error {\n constructor(issues) {\n super();\n this.issues = [];\n this.addIssue = (sub) => {\n this.issues = [...this.issues, sub];\n };\n this.addIssues = (subs = []) => {\n this.issues = [...this.issues, ...subs];\n };\n const actualProto = new.target.prototype;\n if (Object.setPrototypeOf) {\n // eslint-disable-next-line ban/ban\n Object.setPrototypeOf(this, actualProto);\n }\n else {\n this.__proto__ = actualProto;\n }\n this.name = \"ZodError\";\n this.issues = issues;\n }\n get errors() {\n return this.issues;\n }\n format(_mapper) {\n const mapper = _mapper ||\n function (issue) {\n return issue.message;\n };\n const fieldErrors = { _errors: [] };\n const processError = (error) => {\n for (const issue of error.issues) {\n if (issue.code === \"invalid_union\") {\n issue.unionErrors.map(processError);\n }\n else if (issue.code === \"invalid_return_type\") {\n processError(issue.returnTypeError);\n }\n else if (issue.code === \"invalid_arguments\") {\n processError(issue.argumentsError);\n }\n else if (issue.path.length === 0) {\n fieldErrors._errors.push(mapper(issue));\n }\n else {\n let curr = fieldErrors;\n let i = 0;\n while (i < issue.path.length) {\n const el = issue.path[i];\n const terminal = i === issue.path.length - 1;\n if (!terminal) {\n curr[el] = curr[el] || { _errors: [] };\n // if (typeof el === \"string\") {\n // curr[el] = curr[el] || { _errors: [] };\n // } else if (typeof el === \"number\") {\n // const errorArray: any = [];\n // errorArray._errors = [];\n // curr[el] = curr[el] || errorArray;\n // }\n }\n else {\n curr[el] = curr[el] || { _errors: [] };\n curr[el]._errors.push(mapper(issue));\n }\n curr = curr[el];\n i++;\n }\n }\n }\n };\n processError(this);\n return fieldErrors;\n }\n toString() {\n return this.message;\n }\n get message() {\n return JSON.stringify(this.issues, util.jsonStringifyReplacer, 2);\n }\n get isEmpty() {\n return this.issues.length === 0;\n }\n flatten(mapper = (issue) => issue.message) {\n const fieldErrors = {};\n const formErrors = [];\n for (const sub of this.issues) {\n if (sub.path.length > 0) {\n fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];\n fieldErrors[sub.path[0]].push(mapper(sub));\n }\n else {\n formErrors.push(mapper(sub));\n }\n }\n return { formErrors, fieldErrors };\n }\n get formErrors() {\n return this.flatten();\n }\n}\nZodError.create = (issues) => {\n const error = new ZodError(issues);\n return error;\n};\n\nconst errorMap = (issue, _ctx) => {\n let message;\n switch (issue.code) {\n case ZodIssueCode.invalid_type:\n if (issue.received === ZodParsedType.undefined) {\n message = \"Required\";\n }\n else {\n message = `Expected ${issue.expected}, received ${issue.received}`;\n }\n break;\n case ZodIssueCode.invalid_literal:\n message = `Invalid literal value, expected ${JSON.stringify(issue.expected, util.jsonStringifyReplacer)}`;\n break;\n case ZodIssueCode.unrecognized_keys:\n message = `Unrecognized key(s) in object: ${util.joinValues(issue.keys, \", \")}`;\n break;\n case ZodIssueCode.invalid_union:\n message = `Invalid input`;\n break;\n case ZodIssueCode.invalid_union_discriminator:\n message = `Invalid discriminator value. Expected ${util.joinValues(issue.options)}`;\n break;\n case ZodIssueCode.invalid_enum_value:\n message = `Invalid enum value. Expected ${util.joinValues(issue.options)}, received '${issue.received}'`;\n break;\n case ZodIssueCode.invalid_arguments:\n message = `Invalid function arguments`;\n break;\n case ZodIssueCode.invalid_return_type:\n message = `Invalid function return type`;\n break;\n case ZodIssueCode.invalid_date:\n message = `Invalid date`;\n break;\n case ZodIssueCode.invalid_string:\n if (typeof issue.validation === \"object\") {\n if (\"startsWith\" in issue.validation) {\n message = `Invalid input: must start with \"${issue.validation.startsWith}\"`;\n }\n else if (\"endsWith\" in issue.validation) {\n message = `Invalid input: must end with \"${issue.validation.endsWith}\"`;\n }\n else {\n util.assertNever(issue.validation);\n }\n }\n else if (issue.validation !== \"regex\") {\n message = `Invalid ${issue.validation}`;\n }\n else {\n message = \"Invalid\";\n }\n break;\n case ZodIssueCode.too_small:\n if (issue.type === \"array\")\n message = `Array must contain ${issue.inclusive ? `at least` : `more than`} ${issue.minimum} element(s)`;\n else if (issue.type === \"string\")\n message = `String must contain ${issue.inclusive ? `at least` : `over`} ${issue.minimum} character(s)`;\n else if (issue.type === \"number\")\n message = `Number must be greater than ${issue.inclusive ? `or equal to ` : ``}${issue.minimum}`;\n else if (issue.type === \"date\")\n message = `Date must be greater than ${issue.inclusive ? `or equal to ` : ``}${new Date(issue.minimum)}`;\n else\n message = \"Invalid input\";\n break;\n case ZodIssueCode.too_big:\n if (issue.type === \"array\")\n message = `Array must contain ${issue.inclusive ? `at most` : `less than`} ${issue.maximum} element(s)`;\n else if (issue.type === \"string\")\n message = `String must contain ${issue.inclusive ? `at most` : `under`} ${issue.maximum} character(s)`;\n else if (issue.type === \"number\")\n message = `Number must be less than ${issue.inclusive ? `or equal to ` : ``}${issue.maximum}`;\n else if (issue.type === \"date\")\n message = `Date must be smaller than ${issue.inclusive ? `or equal to ` : ``}${new Date(issue.maximum)}`;\n else\n message = \"Invalid input\";\n break;\n case ZodIssueCode.custom:\n message = `Invalid input`;\n break;\n case ZodIssueCode.invalid_intersection_types:\n message = `Intersection results could not be merged`;\n break;\n case ZodIssueCode.not_multiple_of:\n message = `Number must be a multiple of ${issue.multipleOf}`;\n break;\n default:\n message = _ctx.defaultError;\n util.assertNever(issue);\n }\n return { message };\n};\n\nlet overrideErrorMap = errorMap;\nfunction setErrorMap(map) {\n overrideErrorMap = map;\n}\nfunction getErrorMap() {\n return overrideErrorMap;\n}\n\nconst makeIssue = (params) => {\n const { data, path, errorMaps, issueData } = params;\n const fullPath = [...path, ...(issueData.path || [])];\n const fullIssue = {\n ...issueData,\n path: fullPath,\n };\n let errorMessage = \"\";\n const maps = errorMaps\n .filter((m) => !!m)\n .slice()\n .reverse();\n for (const map of maps) {\n errorMessage = map(fullIssue, { data, defaultError: errorMessage }).message;\n }\n return {\n ...issueData,\n path: fullPath,\n message: issueData.message || errorMessage,\n };\n};\nconst EMPTY_PATH = [];\nfunction addIssueToContext(ctx, issueData) {\n const issue = makeIssue({\n issueData: issueData,\n data: ctx.data,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n });\n ctx.common.issues.push(issue);\n}\nclass ParseStatus {\n constructor() {\n this.value = \"valid\";\n }\n dirty() {\n if (this.value === \"valid\")\n this.value = \"dirty\";\n }\n abort() {\n if (this.value !== \"aborted\")\n this.value = \"aborted\";\n }\n static mergeArray(status, results) {\n const arrayValue = [];\n for (const s of results) {\n if (s.status === \"aborted\")\n return INVALID;\n if (s.status === \"dirty\")\n status.dirty();\n arrayValue.push(s.value);\n }\n return { status: status.value, value: arrayValue };\n }\n static async mergeObjectAsync(status, pairs) {\n const syncPairs = [];\n for (const pair of pairs) {\n syncPairs.push({\n key: await pair.key,\n value: await pair.value,\n });\n }\n return ParseStatus.mergeObjectSync(status, syncPairs);\n }\n static mergeObjectSync(status, pairs) {\n const finalObject = {};\n for (const pair of pairs) {\n const { key, value } = pair;\n if (key.status === \"aborted\")\n return INVALID;\n if (value.status === \"aborted\")\n return INVALID;\n if (key.status === \"dirty\")\n status.dirty();\n if (value.status === \"dirty\")\n status.dirty();\n if (typeof value.value !== \"undefined\" || pair.alwaysSet) {\n finalObject[key.value] = value.value;\n }\n }\n return { status: status.value, value: finalObject };\n }\n}\nconst INVALID = Object.freeze({\n status: \"aborted\",\n});\nconst DIRTY = (value) => ({ status: \"dirty\", value });\nconst OK = (value) => ({ status: \"valid\", value });\nconst isAborted = (x) => x.status === \"aborted\";\nconst isDirty = (x) => x.status === \"dirty\";\nconst isValid = (x) => x.status === \"valid\";\nconst isAsync = (x) => typeof Promise !== undefined && x instanceof Promise;\n\nvar errorUtil;\n(function (errorUtil) {\n errorUtil.errToObj = (message) => typeof message === \"string\" ? { message } : message || {};\n errorUtil.toString = (message) => typeof message === \"string\" ? message : message === null || message === void 0 ? void 0 : message.message;\n})(errorUtil || (errorUtil = {}));\n\nclass ParseInputLazyPath {\n constructor(parent, value, path, key) {\n this.parent = parent;\n this.data = value;\n this._path = path;\n this._key = key;\n }\n get path() {\n return this._path.concat(this._key);\n }\n}\nconst handleResult = (ctx, result) => {\n if (isValid(result)) {\n return { success: true, data: result.value };\n }\n else {\n if (!ctx.common.issues.length) {\n throw new Error(\"Validation failed but no issues detected.\");\n }\n const error = new ZodError(ctx.common.issues);\n return { success: false, error };\n }\n};\nfunction processCreateParams(params) {\n if (!params)\n return {};\n const { errorMap, invalid_type_error, required_error, description } = params;\n if (errorMap && (invalid_type_error || required_error)) {\n throw new Error(`Can't use \"invalid_type_error\" or \"required_error\" in conjunction with custom error map.`);\n }\n if (errorMap)\n return { errorMap: errorMap, description };\n const customMap = (iss, ctx) => {\n if (iss.code !== \"invalid_type\")\n return { message: ctx.defaultError };\n if (typeof ctx.data === \"undefined\") {\n return { message: required_error !== null && required_error !== void 0 ? required_error : ctx.defaultError };\n }\n return { message: invalid_type_error !== null && invalid_type_error !== void 0 ? invalid_type_error : ctx.defaultError };\n };\n return { errorMap: customMap, description };\n}\nclass ZodType {\n constructor(def) {\n /** Alias of safeParseAsync */\n this.spa = this.safeParseAsync;\n this.superRefine = this._refinement;\n this._def = def;\n this.parse = this.parse.bind(this);\n this.safeParse = this.safeParse.bind(this);\n this.parseAsync = this.parseAsync.bind(this);\n this.safeParseAsync = this.safeParseAsync.bind(this);\n this.spa = this.spa.bind(this);\n this.refine = this.refine.bind(this);\n this.refinement = this.refinement.bind(this);\n this.superRefine = this.superRefine.bind(this);\n this.optional = this.optional.bind(this);\n this.nullable = this.nullable.bind(this);\n this.nullish = this.nullish.bind(this);\n this.array = this.array.bind(this);\n this.promise = this.promise.bind(this);\n this.or = this.or.bind(this);\n this.and = this.and.bind(this);\n this.transform = this.transform.bind(this);\n this.default = this.default.bind(this);\n this.describe = this.describe.bind(this);\n this.isNullable = this.isNullable.bind(this);\n this.isOptional = this.isOptional.bind(this);\n }\n get description() {\n return this._def.description;\n }\n _getType(input) {\n return getParsedType(input.data);\n }\n _getOrReturnCtx(input, ctx) {\n return (ctx || {\n common: input.parent.common,\n data: input.data,\n parsedType: getParsedType(input.data),\n schemaErrorMap: this._def.errorMap,\n path: input.path,\n parent: input.parent,\n });\n }\n _processInputParams(input) {\n return {\n status: new ParseStatus(),\n ctx: {\n common: input.parent.common,\n data: input.data,\n parsedType: getParsedType(input.data),\n schemaErrorMap: this._def.errorMap,\n path: input.path,\n parent: input.parent,\n },\n };\n }\n _parseSync(input) {\n const result = this._parse(input);\n if (isAsync(result)) {\n throw new Error(\"Synchronous parse encountered promise.\");\n }\n return result;\n }\n _parseAsync(input) {\n const result = this._parse(input);\n return Promise.resolve(result);\n }\n parse(data, params) {\n const result = this.safeParse(data, params);\n if (result.success)\n return result.data;\n throw result.error;\n }\n safeParse(data, params) {\n var _a;\n const ctx = {\n common: {\n issues: [],\n async: (_a = params === null || params === void 0 ? void 0 : params.async) !== null && _a !== void 0 ? _a : false,\n contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap,\n },\n path: (params === null || params === void 0 ? void 0 : params.path) || [],\n schemaErrorMap: this._def.errorMap,\n parent: null,\n data,\n parsedType: getParsedType(data),\n };\n const result = this._parseSync({ data, path: ctx.path, parent: ctx });\n return handleResult(ctx, result);\n }\n async parseAsync(data, params) {\n const result = await this.safeParseAsync(data, params);\n if (result.success)\n return result.data;\n throw result.error;\n }\n async safeParseAsync(data, params) {\n const ctx = {\n common: {\n issues: [],\n contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap,\n async: true,\n },\n path: (params === null || params === void 0 ? void 0 : params.path) || [],\n schemaErrorMap: this._def.errorMap,\n parent: null,\n data,\n parsedType: getParsedType(data),\n };\n const maybeAsyncResult = this._parse({ data, path: [], parent: ctx });\n const result = await (isAsync(maybeAsyncResult)\n ? maybeAsyncResult\n : Promise.resolve(maybeAsyncResult));\n return handleResult(ctx, result);\n }\n refine(check, message) {\n const getIssueProperties = (val) => {\n if (typeof message === \"string\" || typeof message === \"undefined\") {\n return { message };\n }\n else if (typeof message === \"function\") {\n return message(val);\n }\n else {\n return message;\n }\n };\n return this._refinement((val, ctx) => {\n const result = check(val);\n const setError = () => ctx.addIssue({\n code: ZodIssueCode.custom,\n ...getIssueProperties(val),\n });\n if (typeof Promise !== \"undefined\" && result instanceof Promise) {\n return result.then((data) => {\n if (!data) {\n setError();\n return false;\n }\n else {\n return true;\n }\n });\n }\n if (!result) {\n setError();\n return false;\n }\n else {\n return true;\n }\n });\n }\n refinement(check, refinementData) {\n return this._refinement((val, ctx) => {\n if (!check(val)) {\n ctx.addIssue(typeof refinementData === \"function\"\n ? refinementData(val, ctx)\n : refinementData);\n return false;\n }\n else {\n return true;\n }\n });\n }\n _refinement(refinement) {\n return new ZodEffects({\n schema: this,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect: { type: \"refinement\", refinement },\n });\n }\n optional() {\n return ZodOptional.create(this);\n }\n nullable() {\n return ZodNullable.create(this);\n }\n nullish() {\n return this.optional().nullable();\n }\n array() {\n return ZodArray.create(this);\n }\n promise() {\n return ZodPromise.create(this);\n }\n or(option) {\n return ZodUnion.create([this, option]);\n }\n and(incoming) {\n return ZodIntersection.create(this, incoming);\n }\n transform(transform) {\n return new ZodEffects({\n schema: this,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect: { type: \"transform\", transform },\n });\n }\n default(def) {\n const defaultValueFunc = typeof def === \"function\" ? def : () => def;\n return new ZodDefault({\n innerType: this,\n defaultValue: defaultValueFunc,\n typeName: ZodFirstPartyTypeKind.ZodDefault,\n });\n }\n brand() {\n return new ZodBranded({\n typeName: ZodFirstPartyTypeKind.ZodBranded,\n type: this,\n ...processCreateParams(undefined),\n });\n }\n describe(description) {\n const This = this.constructor;\n return new This({\n ...this._def,\n description,\n });\n }\n isOptional() {\n return this.safeParse(undefined).success;\n }\n isNullable() {\n return this.safeParse(null).success;\n }\n}\nconst cuidRegex = /^c[^\\s-]{8,}$/i;\nconst uuidRegex = /^([a-f0-9]{8}-[a-f0-9]{4}-[1-5][a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}|00000000-0000-0000-0000-000000000000)$/i;\n// from https://stackoverflow.com/a/46181/1550155\n// old version: too slow, didn't support unicode\n// const emailRegex = /^((([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+(\\.([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+)*)|((\\x22)((((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(([\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(\\\\([\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]))))*(((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(\\x22)))@((([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.)+(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))$/i;\n// eslint-disable-next-line\nconst emailRegex = /^(([^<>()[\\]\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\nclass ZodString extends ZodType {\n constructor() {\n super(...arguments);\n this._regex = (regex, validation, message) => this.refinement((data) => regex.test(data), {\n validation,\n code: ZodIssueCode.invalid_string,\n ...errorUtil.errToObj(message),\n });\n /**\n * @deprecated Use z.string().min(1) instead.\n * @see {@link ZodString.min}\n */\n this.nonempty = (message) => this.min(1, errorUtil.errToObj(message));\n this.trim = () => new ZodString({\n ...this._def,\n checks: [...this._def.checks, { kind: \"trim\" }],\n });\n }\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.string) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.string,\n received: ctx.parsedType,\n }\n //\n );\n return INVALID;\n }\n const status = new ParseStatus();\n let ctx = undefined;\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n if (input.data.length < check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"string\",\n inclusive: true,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n if (input.data.length > check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"string\",\n inclusive: true,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"email\") {\n if (!emailRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"email\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"uuid\") {\n if (!uuidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"uuid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"cuid\") {\n if (!cuidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"cuid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"url\") {\n try {\n new URL(input.data);\n }\n catch (_a) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"url\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"regex\") {\n check.regex.lastIndex = 0;\n const testResult = check.regex.test(input.data);\n if (!testResult) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"regex\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"trim\") {\n input.data = input.data.trim();\n }\n else if (check.kind === \"startsWith\") {\n if (!input.data.startsWith(check.value)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { startsWith: check.value },\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"endsWith\") {\n if (!input.data.endsWith(check.value)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { endsWith: check.value },\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n _addCheck(check) {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n email(message) {\n return this._addCheck({ kind: \"email\", ...errorUtil.errToObj(message) });\n }\n url(message) {\n return this._addCheck({ kind: \"url\", ...errorUtil.errToObj(message) });\n }\n uuid(message) {\n return this._addCheck({ kind: \"uuid\", ...errorUtil.errToObj(message) });\n }\n cuid(message) {\n return this._addCheck({ kind: \"cuid\", ...errorUtil.errToObj(message) });\n }\n regex(regex, message) {\n return this._addCheck({\n kind: \"regex\",\n regex: regex,\n ...errorUtil.errToObj(message),\n });\n }\n startsWith(value, message) {\n return this._addCheck({\n kind: \"startsWith\",\n value: value,\n ...errorUtil.errToObj(message),\n });\n }\n endsWith(value, message) {\n return this._addCheck({\n kind: \"endsWith\",\n value: value,\n ...errorUtil.errToObj(message),\n });\n }\n min(minLength, message) {\n return this._addCheck({\n kind: \"min\",\n value: minLength,\n ...errorUtil.errToObj(message),\n });\n }\n max(maxLength, message) {\n return this._addCheck({\n kind: \"max\",\n value: maxLength,\n ...errorUtil.errToObj(message),\n });\n }\n length(len, message) {\n return this.min(len, message).max(len, message);\n }\n get isEmail() {\n return !!this._def.checks.find((ch) => ch.kind === \"email\");\n }\n get isURL() {\n return !!this._def.checks.find((ch) => ch.kind === \"url\");\n }\n get isUUID() {\n return !!this._def.checks.find((ch) => ch.kind === \"uuid\");\n }\n get isCUID() {\n return !!this._def.checks.find((ch) => ch.kind === \"cuid\");\n }\n get minLength() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxLength() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n}\nZodString.create = (params) => {\n return new ZodString({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodString,\n ...processCreateParams(params),\n });\n};\n// https://stackoverflow.com/questions/3966484/why-does-modulus-operator-return-fractional-number-in-javascript/31711034#31711034\nfunction floatSafeRemainder(val, step) {\n const valDecCount = (val.toString().split(\".\")[1] || \"\").length;\n const stepDecCount = (step.toString().split(\".\")[1] || \"\").length;\n const decCount = valDecCount > stepDecCount ? valDecCount : stepDecCount;\n const valInt = parseInt(val.toFixed(decCount).replace(\".\", \"\"));\n const stepInt = parseInt(step.toFixed(decCount).replace(\".\", \"\"));\n return (valInt % stepInt) / Math.pow(10, decCount);\n}\nclass ZodNumber extends ZodType {\n constructor() {\n super(...arguments);\n this.min = this.gte;\n this.max = this.lte;\n this.step = this.multipleOf;\n }\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.number) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.number,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n let ctx = undefined;\n const status = new ParseStatus();\n for (const check of this._def.checks) {\n if (check.kind === \"int\") {\n if (!util.isInteger(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: \"integer\",\n received: \"float\",\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"min\") {\n const tooSmall = check.inclusive\n ? input.data < check.value\n : input.data <= check.value;\n if (tooSmall) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"number\",\n inclusive: check.inclusive,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n const tooBig = check.inclusive\n ? input.data > check.value\n : input.data >= check.value;\n if (tooBig) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"number\",\n inclusive: check.inclusive,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"multipleOf\") {\n if (floatSafeRemainder(input.data, check.value) !== 0) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.not_multiple_of,\n multipleOf: check.value,\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n gte(value, message) {\n return this.setLimit(\"min\", value, true, errorUtil.toString(message));\n }\n gt(value, message) {\n return this.setLimit(\"min\", value, false, errorUtil.toString(message));\n }\n lte(value, message) {\n return this.setLimit(\"max\", value, true, errorUtil.toString(message));\n }\n lt(value, message) {\n return this.setLimit(\"max\", value, false, errorUtil.toString(message));\n }\n setLimit(kind, value, inclusive, message) {\n return new ZodNumber({\n ...this._def,\n checks: [\n ...this._def.checks,\n {\n kind,\n value,\n inclusive,\n message: errorUtil.toString(message),\n },\n ],\n });\n }\n _addCheck(check) {\n return new ZodNumber({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n int(message) {\n return this._addCheck({\n kind: \"int\",\n message: errorUtil.toString(message),\n });\n }\n positive(message) {\n return this._addCheck({\n kind: \"min\",\n value: 0,\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n negative(message) {\n return this._addCheck({\n kind: \"max\",\n value: 0,\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n nonpositive(message) {\n return this._addCheck({\n kind: \"max\",\n value: 0,\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n nonnegative(message) {\n return this._addCheck({\n kind: \"min\",\n value: 0,\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n multipleOf(value, message) {\n return this._addCheck({\n kind: \"multipleOf\",\n value: value,\n message: errorUtil.toString(message),\n });\n }\n get minValue() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxValue() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n get isInt() {\n return !!this._def.checks.find((ch) => ch.kind === \"int\");\n }\n}\nZodNumber.create = (params) => {\n return new ZodNumber({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodNumber,\n ...processCreateParams(params),\n });\n};\nclass ZodBigInt extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.bigint) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.bigint,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodBigInt.create = (params) => {\n return new ZodBigInt({\n typeName: ZodFirstPartyTypeKind.ZodBigInt,\n ...processCreateParams(params),\n });\n};\nclass ZodBoolean extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.boolean) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.boolean,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodBoolean.create = (params) => {\n return new ZodBoolean({\n typeName: ZodFirstPartyTypeKind.ZodBoolean,\n ...processCreateParams(params),\n });\n};\nclass ZodDate extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.date) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.date,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (isNaN(input.data.getTime())) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_date,\n });\n return INVALID;\n }\n const status = new ParseStatus();\n let ctx = undefined;\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n if (input.data.getTime() < check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n message: check.message,\n inclusive: true,\n minimum: check.value,\n type: \"date\",\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n if (input.data.getTime() > check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n message: check.message,\n inclusive: true,\n maximum: check.value,\n type: \"date\",\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return {\n status: status.value,\n value: new Date(input.data.getTime()),\n };\n }\n _addCheck(check) {\n return new ZodDate({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n min(minDate, message) {\n return this._addCheck({\n kind: \"min\",\n value: minDate.getTime(),\n message: errorUtil.toString(message),\n });\n }\n max(maxDate, message) {\n return this._addCheck({\n kind: \"max\",\n value: maxDate.getTime(),\n message: errorUtil.toString(message),\n });\n }\n get minDate() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min != null ? new Date(min) : null;\n }\n get maxDate() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max != null ? new Date(max) : null;\n }\n}\nZodDate.create = (params) => {\n return new ZodDate({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodDate,\n ...processCreateParams(params),\n });\n};\nclass ZodUndefined extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.undefined) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.undefined,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodUndefined.create = (params) => {\n return new ZodUndefined({\n typeName: ZodFirstPartyTypeKind.ZodUndefined,\n ...processCreateParams(params),\n });\n};\nclass ZodNull extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.null) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.null,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodNull.create = (params) => {\n return new ZodNull({\n typeName: ZodFirstPartyTypeKind.ZodNull,\n ...processCreateParams(params),\n });\n};\nclass ZodAny extends ZodType {\n constructor() {\n super(...arguments);\n // to prevent instances of other classes from extending ZodAny. this causes issues with catchall in ZodObject.\n this._any = true;\n }\n _parse(input) {\n return OK(input.data);\n }\n}\nZodAny.create = (params) => {\n return new ZodAny({\n typeName: ZodFirstPartyTypeKind.ZodAny,\n ...processCreateParams(params),\n });\n};\nclass ZodUnknown extends ZodType {\n constructor() {\n super(...arguments);\n // required\n this._unknown = true;\n }\n _parse(input) {\n return OK(input.data);\n }\n}\nZodUnknown.create = (params) => {\n return new ZodUnknown({\n typeName: ZodFirstPartyTypeKind.ZodUnknown,\n ...processCreateParams(params),\n });\n};\nclass ZodNever extends ZodType {\n _parse(input) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.never,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n}\nZodNever.create = (params) => {\n return new ZodNever({\n typeName: ZodFirstPartyTypeKind.ZodNever,\n ...processCreateParams(params),\n });\n};\nclass ZodVoid extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.undefined) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.void,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodVoid.create = (params) => {\n return new ZodVoid({\n typeName: ZodFirstPartyTypeKind.ZodVoid,\n ...processCreateParams(params),\n });\n};\nclass ZodArray extends ZodType {\n _parse(input) {\n const { ctx, status } = this._processInputParams(input);\n const def = this._def;\n if (ctx.parsedType !== ZodParsedType.array) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.array,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (def.minLength !== null) {\n if (ctx.data.length < def.minLength.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: def.minLength.value,\n type: \"array\",\n inclusive: true,\n message: def.minLength.message,\n });\n status.dirty();\n }\n }\n if (def.maxLength !== null) {\n if (ctx.data.length > def.maxLength.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: def.maxLength.value,\n type: \"array\",\n inclusive: true,\n message: def.maxLength.message,\n });\n status.dirty();\n }\n }\n if (ctx.common.async) {\n return Promise.all(ctx.data.map((item, i) => {\n return def.type._parseAsync(new ParseInputLazyPath(ctx, item, ctx.path, i));\n })).then((result) => {\n return ParseStatus.mergeArray(status, result);\n });\n }\n const result = ctx.data.map((item, i) => {\n return def.type._parseSync(new ParseInputLazyPath(ctx, item, ctx.path, i));\n });\n return ParseStatus.mergeArray(status, result);\n }\n get element() {\n return this._def.type;\n }\n min(minLength, message) {\n return new ZodArray({\n ...this._def,\n minLength: { value: minLength, message: errorUtil.toString(message) },\n });\n }\n max(maxLength, message) {\n return new ZodArray({\n ...this._def,\n maxLength: { value: maxLength, message: errorUtil.toString(message) },\n });\n }\n length(len, message) {\n return this.min(len, message).max(len, message);\n }\n nonempty(message) {\n return this.min(1, message);\n }\n}\nZodArray.create = (schema, params) => {\n return new ZodArray({\n type: schema,\n minLength: null,\n maxLength: null,\n typeName: ZodFirstPartyTypeKind.ZodArray,\n ...processCreateParams(params),\n });\n};\n/////////////////////////////////////////\n/////////////////////////////////////////\n////////// //////////\n////////// ZodObject //////////\n////////// //////////\n/////////////////////////////////////////\n/////////////////////////////////////////\nvar objectUtil;\n(function (objectUtil) {\n objectUtil.mergeShapes = (first, second) => {\n return {\n ...first,\n ...second,\n };\n };\n})(objectUtil || (objectUtil = {}));\nconst AugmentFactory = (def) => (augmentation) => {\n return new ZodObject({\n ...def,\n shape: () => ({\n ...def.shape(),\n ...augmentation,\n }),\n });\n};\nfunction deepPartialify(schema) {\n if (schema instanceof ZodObject) {\n const newShape = {};\n for (const key in schema.shape) {\n const fieldSchema = schema.shape[key];\n newShape[key] = ZodOptional.create(deepPartialify(fieldSchema));\n }\n return new ZodObject({\n ...schema._def,\n shape: () => newShape,\n });\n }\n else if (schema instanceof ZodArray) {\n return ZodArray.create(deepPartialify(schema.element));\n }\n else if (schema instanceof ZodOptional) {\n return ZodOptional.create(deepPartialify(schema.unwrap()));\n }\n else if (schema instanceof ZodNullable) {\n return ZodNullable.create(deepPartialify(schema.unwrap()));\n }\n else if (schema instanceof ZodTuple) {\n return ZodTuple.create(schema.items.map((item) => deepPartialify(item)));\n }\n else {\n return schema;\n }\n}\nclass ZodObject extends ZodType {\n constructor() {\n super(...arguments);\n this._cached = null;\n /**\n * @deprecated In most cases, this is no longer needed - unknown properties are now silently stripped.\n * If you want to pass through unknown properties, use `.passthrough()` instead.\n */\n this.nonstrict = this.passthrough;\n this.augment = AugmentFactory(this._def);\n this.extend = AugmentFactory(this._def);\n }\n _getCached() {\n if (this._cached !== null)\n return this._cached;\n const shape = this._def.shape();\n const keys = util.objectKeys(shape);\n return (this._cached = { shape, keys });\n }\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.object) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const { status, ctx } = this._processInputParams(input);\n const { shape, keys: shapeKeys } = this._getCached();\n const extraKeys = [];\n if (!(this._def.catchall instanceof ZodNever &&\n this._def.unknownKeys === \"strip\")) {\n for (const key in ctx.data) {\n if (!shapeKeys.includes(key)) {\n extraKeys.push(key);\n }\n }\n }\n const pairs = [];\n for (const key of shapeKeys) {\n const keyValidator = shape[key];\n const value = ctx.data[key];\n pairs.push({\n key: { status: \"valid\", value: key },\n value: keyValidator._parse(new ParseInputLazyPath(ctx, value, ctx.path, key)),\n alwaysSet: key in ctx.data,\n });\n }\n if (this._def.catchall instanceof ZodNever) {\n const unknownKeys = this._def.unknownKeys;\n if (unknownKeys === \"passthrough\") {\n for (const key of extraKeys) {\n pairs.push({\n key: { status: \"valid\", value: key },\n value: { status: \"valid\", value: ctx.data[key] },\n });\n }\n }\n else if (unknownKeys === \"strict\") {\n if (extraKeys.length > 0) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.unrecognized_keys,\n keys: extraKeys,\n });\n status.dirty();\n }\n }\n else if (unknownKeys === \"strip\") ;\n else {\n throw new Error(`Internal ZodObject error: invalid unknownKeys value.`);\n }\n }\n else {\n // run catchall validation\n const catchall = this._def.catchall;\n for (const key of extraKeys) {\n const value = ctx.data[key];\n pairs.push({\n key: { status: \"valid\", value: key },\n value: catchall._parse(new ParseInputLazyPath(ctx, value, ctx.path, key) //, ctx.child(key), value, getParsedType(value)\n ),\n alwaysSet: key in ctx.data,\n });\n }\n }\n if (ctx.common.async) {\n return Promise.resolve()\n .then(async () => {\n const syncPairs = [];\n for (const pair of pairs) {\n const key = await pair.key;\n syncPairs.push({\n key,\n value: await pair.value,\n alwaysSet: pair.alwaysSet,\n });\n }\n return syncPairs;\n })\n .then((syncPairs) => {\n return ParseStatus.mergeObjectSync(status, syncPairs);\n });\n }\n else {\n return ParseStatus.mergeObjectSync(status, pairs);\n }\n }\n get shape() {\n return this._def.shape();\n }\n strict(message) {\n errorUtil.errToObj;\n return new ZodObject({\n ...this._def,\n unknownKeys: \"strict\",\n ...(message !== undefined\n ? {\n errorMap: (issue, ctx) => {\n var _a, _b, _c, _d;\n const defaultError = (_c = (_b = (_a = this._def).errorMap) === null || _b === void 0 ? void 0 : _b.call(_a, issue, ctx).message) !== null && _c !== void 0 ? _c : ctx.defaultError;\n if (issue.code === \"unrecognized_keys\")\n return {\n message: (_d = errorUtil.errToObj(message).message) !== null && _d !== void 0 ? _d : defaultError,\n };\n return {\n message: defaultError,\n };\n },\n }\n : {}),\n });\n }\n strip() {\n return new ZodObject({\n ...this._def,\n unknownKeys: \"strip\",\n });\n }\n passthrough() {\n return new ZodObject({\n ...this._def,\n unknownKeys: \"passthrough\",\n });\n }\n setKey(key, schema) {\n return this.augment({ [key]: schema });\n }\n /**\n * Prior to zod@1.0.12 there was a bug in the\n * inferred type of merged objects. Please\n * upgrade if you are experiencing issues.\n */\n merge(merging) {\n // const mergedShape = objectUtil.mergeShapes(\n // this._def.shape(),\n // merging._def.shape()\n // );\n const merged = new ZodObject({\n unknownKeys: merging._def.unknownKeys,\n catchall: merging._def.catchall,\n shape: () => objectUtil.mergeShapes(this._def.shape(), merging._def.shape()),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n });\n return merged;\n }\n catchall(index) {\n return new ZodObject({\n ...this._def,\n catchall: index,\n });\n }\n pick(mask) {\n const shape = {};\n util.objectKeys(mask).map((key) => {\n // only add to shape if key corresponds to an element of the current shape\n if (this.shape[key])\n shape[key] = this.shape[key];\n });\n return new ZodObject({\n ...this._def,\n shape: () => shape,\n });\n }\n omit(mask) {\n const shape = {};\n util.objectKeys(this.shape).map((key) => {\n if (util.objectKeys(mask).indexOf(key) === -1) {\n shape[key] = this.shape[key];\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => shape,\n });\n }\n deepPartial() {\n return deepPartialify(this);\n }\n partial(mask) {\n const newShape = {};\n if (mask) {\n util.objectKeys(this.shape).map((key) => {\n if (util.objectKeys(mask).indexOf(key) === -1) {\n newShape[key] = this.shape[key];\n }\n else {\n newShape[key] = this.shape[key].optional();\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n else {\n for (const key in this.shape) {\n const fieldSchema = this.shape[key];\n newShape[key] = fieldSchema.optional();\n }\n }\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n required() {\n const newShape = {};\n for (const key in this.shape) {\n const fieldSchema = this.shape[key];\n let newField = fieldSchema;\n while (newField instanceof ZodOptional) {\n newField = newField._def.innerType;\n }\n newShape[key] = newField;\n }\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n keyof() {\n return createZodEnum(util.objectKeys(this.shape));\n }\n}\nZodObject.create = (shape, params) => {\n return new ZodObject({\n shape: () => shape,\n unknownKeys: \"strip\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nZodObject.strictCreate = (shape, params) => {\n return new ZodObject({\n shape: () => shape,\n unknownKeys: \"strict\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nZodObject.lazycreate = (shape, params) => {\n return new ZodObject({\n shape,\n unknownKeys: \"strip\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nclass ZodUnion extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const options = this._def.options;\n function handleResults(results) {\n // return first issue-free validation if it exists\n for (const result of results) {\n if (result.result.status === \"valid\") {\n return result.result;\n }\n }\n for (const result of results) {\n if (result.result.status === \"dirty\") {\n // add issues from dirty option\n ctx.common.issues.push(...result.ctx.common.issues);\n return result.result;\n }\n }\n // return invalid\n const unionErrors = results.map((result) => new ZodError(result.ctx.common.issues));\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union,\n unionErrors,\n });\n return INVALID;\n }\n if (ctx.common.async) {\n return Promise.all(options.map(async (option) => {\n const childCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n parent: null,\n };\n return {\n result: await option._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: childCtx,\n }),\n ctx: childCtx,\n };\n })).then(handleResults);\n }\n else {\n let dirty = undefined;\n const issues = [];\n for (const option of options) {\n const childCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n parent: null,\n };\n const result = option._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: childCtx,\n });\n if (result.status === \"valid\") {\n return result;\n }\n else if (result.status === \"dirty\" && !dirty) {\n dirty = { result, ctx: childCtx };\n }\n if (childCtx.common.issues.length) {\n issues.push(childCtx.common.issues);\n }\n }\n if (dirty) {\n ctx.common.issues.push(...dirty.ctx.common.issues);\n return dirty.result;\n }\n const unionErrors = issues.map((issues) => new ZodError(issues));\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union,\n unionErrors,\n });\n return INVALID;\n }\n }\n get options() {\n return this._def.options;\n }\n}\nZodUnion.create = (types, params) => {\n return new ZodUnion({\n options: types,\n typeName: ZodFirstPartyTypeKind.ZodUnion,\n ...processCreateParams(params),\n });\n};\nclass ZodDiscriminatedUnion extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.object) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const discriminator = this.discriminator;\n const discriminatorValue = ctx.data[discriminator];\n const option = this.options.get(discriminatorValue);\n if (!option) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union_discriminator,\n options: this.validDiscriminatorValues,\n path: [discriminator],\n });\n return INVALID;\n }\n if (ctx.common.async) {\n return option._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n }\n else {\n return option._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n get discriminator() {\n return this._def.discriminator;\n }\n get validDiscriminatorValues() {\n return Array.from(this.options.keys());\n }\n get options() {\n return this._def.options;\n }\n /**\n * The constructor of the discriminated union schema. Its behaviour is very similar to that of the normal z.union() constructor.\n * However, it only allows a union of objects, all of which need to share a discriminator property. This property must\n * have a different value for each object in the union.\n * @param discriminator the name of the discriminator property\n * @param types an array of object schemas\n * @param params\n */\n static create(discriminator, types, params) {\n // Get all the valid discriminator values\n const options = new Map();\n try {\n types.forEach((type) => {\n const discriminatorValue = type.shape[discriminator].value;\n options.set(discriminatorValue, type);\n });\n }\n catch (e) {\n throw new Error(\"The discriminator value could not be extracted from all the provided schemas\");\n }\n // Assert that all the discriminator values are unique\n if (options.size !== types.length) {\n throw new Error(\"Some of the discriminator values are not unique\");\n }\n return new ZodDiscriminatedUnion({\n typeName: ZodFirstPartyTypeKind.ZodDiscriminatedUnion,\n discriminator,\n options,\n ...processCreateParams(params),\n });\n }\n}\nfunction mergeValues(a, b) {\n const aType = getParsedType(a);\n const bType = getParsedType(b);\n if (a === b) {\n return { valid: true, data: a };\n }\n else if (aType === ZodParsedType.object && bType === ZodParsedType.object) {\n const bKeys = util.objectKeys(b);\n const sharedKeys = util\n .objectKeys(a)\n .filter((key) => bKeys.indexOf(key) !== -1);\n const newObj = { ...a, ...b };\n for (const key of sharedKeys) {\n const sharedValue = mergeValues(a[key], b[key]);\n if (!sharedValue.valid) {\n return { valid: false };\n }\n newObj[key] = sharedValue.data;\n }\n return { valid: true, data: newObj };\n }\n else if (aType === ZodParsedType.array && bType === ZodParsedType.array) {\n if (a.length !== b.length) {\n return { valid: false };\n }\n const newArray = [];\n for (let index = 0; index < a.length; index++) {\n const itemA = a[index];\n const itemB = b[index];\n const sharedValue = mergeValues(itemA, itemB);\n if (!sharedValue.valid) {\n return { valid: false };\n }\n newArray.push(sharedValue.data);\n }\n return { valid: true, data: newArray };\n }\n else if (aType === ZodParsedType.date &&\n bType === ZodParsedType.date &&\n +a === +b) {\n return { valid: true, data: a };\n }\n else {\n return { valid: false };\n }\n}\nclass ZodIntersection extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n const handleParsed = (parsedLeft, parsedRight) => {\n if (isAborted(parsedLeft) || isAborted(parsedRight)) {\n return INVALID;\n }\n const merged = mergeValues(parsedLeft.value, parsedRight.value);\n if (!merged.valid) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_intersection_types,\n });\n return INVALID;\n }\n if (isDirty(parsedLeft) || isDirty(parsedRight)) {\n status.dirty();\n }\n return { status: status.value, value: merged.data };\n };\n if (ctx.common.async) {\n return Promise.all([\n this._def.left._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }),\n this._def.right._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }),\n ]).then(([left, right]) => handleParsed(left, right));\n }\n else {\n return handleParsed(this._def.left._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }), this._def.right._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }));\n }\n }\n}\nZodIntersection.create = (left, right, params) => {\n return new ZodIntersection({\n left: left,\n right: right,\n typeName: ZodFirstPartyTypeKind.ZodIntersection,\n ...processCreateParams(params),\n });\n};\nclass ZodTuple extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.array) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.array,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (ctx.data.length < this._def.items.length) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: this._def.items.length,\n inclusive: true,\n type: \"array\",\n });\n return INVALID;\n }\n const rest = this._def.rest;\n if (!rest && ctx.data.length > this._def.items.length) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: this._def.items.length,\n inclusive: true,\n type: \"array\",\n });\n status.dirty();\n }\n const items = ctx.data\n .map((item, itemIndex) => {\n const schema = this._def.items[itemIndex] || this._def.rest;\n if (!schema)\n return null;\n return schema._parse(new ParseInputLazyPath(ctx, item, ctx.path, itemIndex));\n })\n .filter((x) => !!x); // filter nulls\n if (ctx.common.async) {\n return Promise.all(items).then((results) => {\n return ParseStatus.mergeArray(status, results);\n });\n }\n else {\n return ParseStatus.mergeArray(status, items);\n }\n }\n get items() {\n return this._def.items;\n }\n rest(rest) {\n return new ZodTuple({\n ...this._def,\n rest,\n });\n }\n}\nZodTuple.create = (schemas, params) => {\n if (!Array.isArray(schemas)) {\n throw new Error(\"You must pass an array of schemas to z.tuple([ ... ])\");\n }\n return new ZodTuple({\n items: schemas,\n typeName: ZodFirstPartyTypeKind.ZodTuple,\n rest: null,\n ...processCreateParams(params),\n });\n};\nclass ZodRecord extends ZodType {\n get keySchema() {\n return this._def.keyType;\n }\n get valueSchema() {\n return this._def.valueType;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.object) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const pairs = [];\n const keyType = this._def.keyType;\n const valueType = this._def.valueType;\n for (const key in ctx.data) {\n pairs.push({\n key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, key)),\n value: valueType._parse(new ParseInputLazyPath(ctx, ctx.data[key], ctx.path, key)),\n });\n }\n if (ctx.common.async) {\n return ParseStatus.mergeObjectAsync(status, pairs);\n }\n else {\n return ParseStatus.mergeObjectSync(status, pairs);\n }\n }\n get element() {\n return this._def.valueType;\n }\n static create(first, second, third) {\n if (second instanceof ZodType) {\n return new ZodRecord({\n keyType: first,\n valueType: second,\n typeName: ZodFirstPartyTypeKind.ZodRecord,\n ...processCreateParams(third),\n });\n }\n return new ZodRecord({\n keyType: ZodString.create(),\n valueType: first,\n typeName: ZodFirstPartyTypeKind.ZodRecord,\n ...processCreateParams(second),\n });\n }\n}\nclass ZodMap extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.map) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.map,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const keyType = this._def.keyType;\n const valueType = this._def.valueType;\n const pairs = [...ctx.data.entries()].map(([key, value], index) => {\n return {\n key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, [index, \"key\"])),\n value: valueType._parse(new ParseInputLazyPath(ctx, value, ctx.path, [index, \"value\"])),\n };\n });\n if (ctx.common.async) {\n const finalMap = new Map();\n return Promise.resolve().then(async () => {\n for (const pair of pairs) {\n const key = await pair.key;\n const value = await pair.value;\n if (key.status === \"aborted\" || value.status === \"aborted\") {\n return INVALID;\n }\n if (key.status === \"dirty\" || value.status === \"dirty\") {\n status.dirty();\n }\n finalMap.set(key.value, value.value);\n }\n return { status: status.value, value: finalMap };\n });\n }\n else {\n const finalMap = new Map();\n for (const pair of pairs) {\n const key = pair.key;\n const value = pair.value;\n if (key.status === \"aborted\" || value.status === \"aborted\") {\n return INVALID;\n }\n if (key.status === \"dirty\" || value.status === \"dirty\") {\n status.dirty();\n }\n finalMap.set(key.value, value.value);\n }\n return { status: status.value, value: finalMap };\n }\n }\n}\nZodMap.create = (keyType, valueType, params) => {\n return new ZodMap({\n valueType,\n keyType,\n typeName: ZodFirstPartyTypeKind.ZodMap,\n ...processCreateParams(params),\n });\n};\nclass ZodSet extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.set) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.set,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const def = this._def;\n if (def.minSize !== null) {\n if (ctx.data.size < def.minSize.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: def.minSize.value,\n type: \"set\",\n inclusive: true,\n message: def.minSize.message,\n });\n status.dirty();\n }\n }\n if (def.maxSize !== null) {\n if (ctx.data.size > def.maxSize.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: def.maxSize.value,\n type: \"set\",\n inclusive: true,\n message: def.maxSize.message,\n });\n status.dirty();\n }\n }\n const valueType = this._def.valueType;\n function finalizeSet(elements) {\n const parsedSet = new Set();\n for (const element of elements) {\n if (element.status === \"aborted\")\n return INVALID;\n if (element.status === \"dirty\")\n status.dirty();\n parsedSet.add(element.value);\n }\n return { status: status.value, value: parsedSet };\n }\n const elements = [...ctx.data.values()].map((item, i) => valueType._parse(new ParseInputLazyPath(ctx, item, ctx.path, i)));\n if (ctx.common.async) {\n return Promise.all(elements).then((elements) => finalizeSet(elements));\n }\n else {\n return finalizeSet(elements);\n }\n }\n min(minSize, message) {\n return new ZodSet({\n ...this._def,\n minSize: { value: minSize, message: errorUtil.toString(message) },\n });\n }\n max(maxSize, message) {\n return new ZodSet({\n ...this._def,\n maxSize: { value: maxSize, message: errorUtil.toString(message) },\n });\n }\n size(size, message) {\n return this.min(size, message).max(size, message);\n }\n nonempty(message) {\n return this.min(1, message);\n }\n}\nZodSet.create = (valueType, params) => {\n return new ZodSet({\n valueType,\n minSize: null,\n maxSize: null,\n typeName: ZodFirstPartyTypeKind.ZodSet,\n ...processCreateParams(params),\n });\n};\nclass ZodFunction extends ZodType {\n constructor() {\n super(...arguments);\n this.validate = this.implement;\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.function) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.function,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n function makeArgsIssue(args, error) {\n return makeIssue({\n data: args,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n issueData: {\n code: ZodIssueCode.invalid_arguments,\n argumentsError: error,\n },\n });\n }\n function makeReturnsIssue(returns, error) {\n return makeIssue({\n data: returns,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n issueData: {\n code: ZodIssueCode.invalid_return_type,\n returnTypeError: error,\n },\n });\n }\n const params = { errorMap: ctx.common.contextualErrorMap };\n const fn = ctx.data;\n if (this._def.returns instanceof ZodPromise) {\n return OK(async (...args) => {\n const error = new ZodError([]);\n const parsedArgs = await this._def.args\n .parseAsync(args, params)\n .catch((e) => {\n error.addIssue(makeArgsIssue(args, e));\n throw error;\n });\n const result = await fn(...parsedArgs);\n const parsedReturns = await this._def.returns._def.type\n .parseAsync(result, params)\n .catch((e) => {\n error.addIssue(makeReturnsIssue(result, e));\n throw error;\n });\n return parsedReturns;\n });\n }\n else {\n return OK((...args) => {\n const parsedArgs = this._def.args.safeParse(args, params);\n if (!parsedArgs.success) {\n throw new ZodError([makeArgsIssue(args, parsedArgs.error)]);\n }\n const result = fn(...parsedArgs.data);\n const parsedReturns = this._def.returns.safeParse(result, params);\n if (!parsedReturns.success) {\n throw new ZodError([makeReturnsIssue(result, parsedReturns.error)]);\n }\n return parsedReturns.data;\n });\n }\n }\n parameters() {\n return this._def.args;\n }\n returnType() {\n return this._def.returns;\n }\n args(...items) {\n return new ZodFunction({\n ...this._def,\n args: ZodTuple.create(items).rest(ZodUnknown.create()),\n });\n }\n returns(returnType) {\n return new ZodFunction({\n ...this._def,\n returns: returnType,\n });\n }\n implement(func) {\n const validatedFunc = this.parse(func);\n return validatedFunc;\n }\n strictImplement(func) {\n const validatedFunc = this.parse(func);\n return validatedFunc;\n }\n static create(args, returns, params) {\n return new ZodFunction({\n args: (args\n ? args\n : ZodTuple.create([]).rest(ZodUnknown.create())),\n returns: returns || ZodUnknown.create(),\n typeName: ZodFirstPartyTypeKind.ZodFunction,\n ...processCreateParams(params),\n });\n }\n}\nclass ZodLazy extends ZodType {\n get schema() {\n return this._def.getter();\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const lazySchema = this._def.getter();\n return lazySchema._parse({ data: ctx.data, path: ctx.path, parent: ctx });\n }\n}\nZodLazy.create = (getter, params) => {\n return new ZodLazy({\n getter: getter,\n typeName: ZodFirstPartyTypeKind.ZodLazy,\n ...processCreateParams(params),\n });\n};\nclass ZodLiteral extends ZodType {\n _parse(input) {\n if (input.data !== this._def.value) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_literal,\n expected: this._def.value,\n });\n return INVALID;\n }\n return { status: \"valid\", value: input.data };\n }\n get value() {\n return this._def.value;\n }\n}\nZodLiteral.create = (value, params) => {\n return new ZodLiteral({\n value: value,\n typeName: ZodFirstPartyTypeKind.ZodLiteral,\n ...processCreateParams(params),\n });\n};\nfunction createZodEnum(values, params) {\n return new ZodEnum({\n values: values,\n typeName: ZodFirstPartyTypeKind.ZodEnum,\n ...processCreateParams(params),\n });\n}\nclass ZodEnum extends ZodType {\n _parse(input) {\n if (typeof input.data !== \"string\") {\n const ctx = this._getOrReturnCtx(input);\n const expectedValues = this._def.values;\n addIssueToContext(ctx, {\n expected: util.joinValues(expectedValues),\n received: ctx.parsedType,\n code: ZodIssueCode.invalid_type,\n });\n return INVALID;\n }\n if (this._def.values.indexOf(input.data) === -1) {\n const ctx = this._getOrReturnCtx(input);\n const expectedValues = this._def.values;\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_enum_value,\n options: expectedValues,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n get options() {\n return this._def.values;\n }\n get enum() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n get Values() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n get Enum() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n}\nZodEnum.create = createZodEnum;\nclass ZodNativeEnum extends ZodType {\n _parse(input) {\n const nativeEnumValues = util.getValidEnumValues(this._def.values);\n const ctx = this._getOrReturnCtx(input);\n if (ctx.parsedType !== ZodParsedType.string &&\n ctx.parsedType !== ZodParsedType.number) {\n const expectedValues = util.objectValues(nativeEnumValues);\n addIssueToContext(ctx, {\n expected: util.joinValues(expectedValues),\n received: ctx.parsedType,\n code: ZodIssueCode.invalid_type,\n });\n return INVALID;\n }\n if (nativeEnumValues.indexOf(input.data) === -1) {\n const expectedValues = util.objectValues(nativeEnumValues);\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_enum_value,\n options: expectedValues,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n get enum() {\n return this._def.values;\n }\n}\nZodNativeEnum.create = (values, params) => {\n return new ZodNativeEnum({\n values: values,\n typeName: ZodFirstPartyTypeKind.ZodNativeEnum,\n ...processCreateParams(params),\n });\n};\nclass ZodPromise extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.promise &&\n ctx.common.async === false) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.promise,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const promisified = ctx.parsedType === ZodParsedType.promise\n ? ctx.data\n : Promise.resolve(ctx.data);\n return OK(promisified.then((data) => {\n return this._def.type.parseAsync(data, {\n path: ctx.path,\n errorMap: ctx.common.contextualErrorMap,\n });\n }));\n }\n}\nZodPromise.create = (schema, params) => {\n return new ZodPromise({\n type: schema,\n typeName: ZodFirstPartyTypeKind.ZodPromise,\n ...processCreateParams(params),\n });\n};\nclass ZodEffects extends ZodType {\n innerType() {\n return this._def.schema;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n const effect = this._def.effect || null;\n if (effect.type === \"preprocess\") {\n const processed = effect.transform(ctx.data);\n if (ctx.common.async) {\n return Promise.resolve(processed).then((processed) => {\n return this._def.schema._parseAsync({\n data: processed,\n path: ctx.path,\n parent: ctx,\n });\n });\n }\n else {\n return this._def.schema._parseSync({\n data: processed,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n const checkCtx = {\n addIssue: (arg) => {\n addIssueToContext(ctx, arg);\n if (arg.fatal) {\n status.abort();\n }\n else {\n status.dirty();\n }\n },\n get path() {\n return ctx.path;\n },\n };\n checkCtx.addIssue = checkCtx.addIssue.bind(checkCtx);\n if (effect.type === \"refinement\") {\n const executeRefinement = (acc\n // effect: RefinementEffect\n ) => {\n const result = effect.refinement(acc, checkCtx);\n if (ctx.common.async) {\n return Promise.resolve(result);\n }\n if (result instanceof Promise) {\n throw new Error(\"Async refinement encountered during synchronous parse operation. Use .parseAsync instead.\");\n }\n return acc;\n };\n if (ctx.common.async === false) {\n const inner = this._def.schema._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (inner.status === \"aborted\")\n return INVALID;\n if (inner.status === \"dirty\")\n status.dirty();\n // return value is ignored\n executeRefinement(inner.value);\n return { status: status.value, value: inner.value };\n }\n else {\n return this._def.schema\n ._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx })\n .then((inner) => {\n if (inner.status === \"aborted\")\n return INVALID;\n if (inner.status === \"dirty\")\n status.dirty();\n return executeRefinement(inner.value).then(() => {\n return { status: status.value, value: inner.value };\n });\n });\n }\n }\n if (effect.type === \"transform\") {\n if (ctx.common.async === false) {\n const base = this._def.schema._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n // if (base.status === \"aborted\") return INVALID;\n // if (base.status === \"dirty\") {\n // return { status: \"dirty\", value: base.value };\n // }\n if (!isValid(base))\n return base;\n const result = effect.transform(base.value, checkCtx);\n if (result instanceof Promise) {\n throw new Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);\n }\n return { status: status.value, value: result };\n }\n else {\n return this._def.schema\n ._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx })\n .then((base) => {\n if (!isValid(base))\n return base;\n // if (base.status === \"aborted\") return INVALID;\n // if (base.status === \"dirty\") {\n // return { status: \"dirty\", value: base.value };\n // }\n return Promise.resolve(effect.transform(base.value, checkCtx)).then((result) => ({ status: status.value, value: result }));\n });\n }\n }\n util.assertNever(effect);\n }\n}\nZodEffects.create = (schema, effect, params) => {\n return new ZodEffects({\n schema,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect,\n ...processCreateParams(params),\n });\n};\nZodEffects.createWithPreprocess = (preprocess, schema, params) => {\n return new ZodEffects({\n schema,\n effect: { type: \"preprocess\", transform: preprocess },\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n ...processCreateParams(params),\n });\n};\nclass ZodOptional extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType === ZodParsedType.undefined) {\n return OK(undefined);\n }\n return this._def.innerType._parse(input);\n }\n unwrap() {\n return this._def.innerType;\n }\n}\nZodOptional.create = (type, params) => {\n return new ZodOptional({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodOptional,\n ...processCreateParams(params),\n });\n};\nclass ZodNullable extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType === ZodParsedType.null) {\n return OK(null);\n }\n return this._def.innerType._parse(input);\n }\n unwrap() {\n return this._def.innerType;\n }\n}\nZodNullable.create = (type, params) => {\n return new ZodNullable({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodNullable,\n ...processCreateParams(params),\n });\n};\nclass ZodDefault extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n let data = ctx.data;\n if (ctx.parsedType === ZodParsedType.undefined) {\n data = this._def.defaultValue();\n }\n return this._def.innerType._parse({\n data,\n path: ctx.path,\n parent: ctx,\n });\n }\n removeDefault() {\n return this._def.innerType;\n }\n}\nZodDefault.create = (type, params) => {\n return new ZodOptional({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodOptional,\n ...processCreateParams(params),\n });\n};\nclass ZodNaN extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.nan) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.nan,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return { status: \"valid\", value: input.data };\n }\n}\nZodNaN.create = (params) => {\n return new ZodNaN({\n typeName: ZodFirstPartyTypeKind.ZodNaN,\n ...processCreateParams(params),\n });\n};\nconst BRAND = Symbol(\"zod_brand\");\nclass ZodBranded extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const data = ctx.data;\n return this._def.type._parse({\n data,\n path: ctx.path,\n parent: ctx,\n });\n }\n unwrap() {\n return this._def.type;\n }\n}\nconst custom = (check, params = {}, fatal) => {\n if (check)\n return ZodAny.create().superRefine((data, ctx) => {\n if (!check(data)) {\n const p = typeof params === \"function\" ? params(data) : params;\n const p2 = typeof p === \"string\" ? { message: p } : p;\n ctx.addIssue({ code: \"custom\", ...p2, fatal });\n }\n });\n return ZodAny.create();\n};\nconst late = {\n object: ZodObject.lazycreate,\n};\nvar ZodFirstPartyTypeKind;\n(function (ZodFirstPartyTypeKind) {\n ZodFirstPartyTypeKind[\"ZodString\"] = \"ZodString\";\n ZodFirstPartyTypeKind[\"ZodNumber\"] = \"ZodNumber\";\n ZodFirstPartyTypeKind[\"ZodNaN\"] = \"ZodNaN\";\n ZodFirstPartyTypeKind[\"ZodBigInt\"] = \"ZodBigInt\";\n ZodFirstPartyTypeKind[\"ZodBoolean\"] = \"ZodBoolean\";\n ZodFirstPartyTypeKind[\"ZodDate\"] = \"ZodDate\";\n ZodFirstPartyTypeKind[\"ZodUndefined\"] = \"ZodUndefined\";\n ZodFirstPartyTypeKind[\"ZodNull\"] = \"ZodNull\";\n ZodFirstPartyTypeKind[\"ZodAny\"] = \"ZodAny\";\n ZodFirstPartyTypeKind[\"ZodUnknown\"] = \"ZodUnknown\";\n ZodFirstPartyTypeKind[\"ZodNever\"] = \"ZodNever\";\n ZodFirstPartyTypeKind[\"ZodVoid\"] = \"ZodVoid\";\n ZodFirstPartyTypeKind[\"ZodArray\"] = \"ZodArray\";\n ZodFirstPartyTypeKind[\"ZodObject\"] = \"ZodObject\";\n ZodFirstPartyTypeKind[\"ZodUnion\"] = \"ZodUnion\";\n ZodFirstPartyTypeKind[\"ZodDiscriminatedUnion\"] = \"ZodDiscriminatedUnion\";\n ZodFirstPartyTypeKind[\"ZodIntersection\"] = \"ZodIntersection\";\n ZodFirstPartyTypeKind[\"ZodTuple\"] = \"ZodTuple\";\n ZodFirstPartyTypeKind[\"ZodRecord\"] = \"ZodRecord\";\n ZodFirstPartyTypeKind[\"ZodMap\"] = \"ZodMap\";\n ZodFirstPartyTypeKind[\"ZodSet\"] = \"ZodSet\";\n ZodFirstPartyTypeKind[\"ZodFunction\"] = \"ZodFunction\";\n ZodFirstPartyTypeKind[\"ZodLazy\"] = \"ZodLazy\";\n ZodFirstPartyTypeKind[\"ZodLiteral\"] = \"ZodLiteral\";\n ZodFirstPartyTypeKind[\"ZodEnum\"] = \"ZodEnum\";\n ZodFirstPartyTypeKind[\"ZodEffects\"] = \"ZodEffects\";\n ZodFirstPartyTypeKind[\"ZodNativeEnum\"] = \"ZodNativeEnum\";\n ZodFirstPartyTypeKind[\"ZodOptional\"] = \"ZodOptional\";\n ZodFirstPartyTypeKind[\"ZodNullable\"] = \"ZodNullable\";\n ZodFirstPartyTypeKind[\"ZodDefault\"] = \"ZodDefault\";\n ZodFirstPartyTypeKind[\"ZodPromise\"] = \"ZodPromise\";\n ZodFirstPartyTypeKind[\"ZodBranded\"] = \"ZodBranded\";\n})(ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {}));\n// new approach that works for abstract classes\n// but required TS 4.4+\n// abstract class Class {\n// constructor(..._: any[]) {}\n// }\n// const instanceOfType = (\nconst instanceOfType = (cls, params = {\n message: `Input not instance of ${cls.name}`,\n}) => custom((data) => data instanceof cls, params, true);\nconst stringType = ZodString.create;\nconst numberType = ZodNumber.create;\nconst nanType = ZodNaN.create;\nconst bigIntType = ZodBigInt.create;\nconst booleanType = ZodBoolean.create;\nconst dateType = ZodDate.create;\nconst undefinedType = ZodUndefined.create;\nconst nullType = ZodNull.create;\nconst anyType = ZodAny.create;\nconst unknownType = ZodUnknown.create;\nconst neverType = ZodNever.create;\nconst voidType = ZodVoid.create;\nconst arrayType = ZodArray.create;\nconst objectType = ZodObject.create;\nconst strictObjectType = ZodObject.strictCreate;\nconst unionType = ZodUnion.create;\nconst discriminatedUnionType = ZodDiscriminatedUnion.create;\nconst intersectionType = ZodIntersection.create;\nconst tupleType = ZodTuple.create;\nconst recordType = ZodRecord.create;\nconst mapType = ZodMap.create;\nconst setType = ZodSet.create;\nconst functionType = ZodFunction.create;\nconst lazyType = ZodLazy.create;\nconst literalType = ZodLiteral.create;\nconst enumType = ZodEnum.create;\nconst nativeEnumType = ZodNativeEnum.create;\nconst promiseType = ZodPromise.create;\nconst effectsType = ZodEffects.create;\nconst optionalType = ZodOptional.create;\nconst nullableType = ZodNullable.create;\nconst preprocessType = ZodEffects.createWithPreprocess;\nconst ostring = () => stringType().optional();\nconst onumber = () => numberType().optional();\nconst oboolean = () => booleanType().optional();\nconst NEVER = INVALID;\n\nvar mod = /*#__PURE__*/Object.freeze({\n __proto__: null,\n getParsedType: getParsedType,\n ZodParsedType: ZodParsedType,\n defaultErrorMap: errorMap,\n setErrorMap: setErrorMap,\n getErrorMap: getErrorMap,\n makeIssue: makeIssue,\n EMPTY_PATH: EMPTY_PATH,\n addIssueToContext: addIssueToContext,\n ParseStatus: ParseStatus,\n INVALID: INVALID,\n DIRTY: DIRTY,\n OK: OK,\n isAborted: isAborted,\n isDirty: isDirty,\n isValid: isValid,\n isAsync: isAsync,\n ZodType: ZodType,\n ZodString: ZodString,\n ZodNumber: ZodNumber,\n ZodBigInt: ZodBigInt,\n ZodBoolean: ZodBoolean,\n ZodDate: ZodDate,\n ZodUndefined: ZodUndefined,\n ZodNull: ZodNull,\n ZodAny: ZodAny,\n ZodUnknown: ZodUnknown,\n ZodNever: ZodNever,\n ZodVoid: ZodVoid,\n ZodArray: ZodArray,\n get objectUtil () { return objectUtil; },\n ZodObject: ZodObject,\n ZodUnion: ZodUnion,\n ZodDiscriminatedUnion: ZodDiscriminatedUnion,\n ZodIntersection: ZodIntersection,\n ZodTuple: ZodTuple,\n ZodRecord: ZodRecord,\n ZodMap: ZodMap,\n ZodSet: ZodSet,\n ZodFunction: ZodFunction,\n ZodLazy: ZodLazy,\n ZodLiteral: ZodLiteral,\n ZodEnum: ZodEnum,\n ZodNativeEnum: ZodNativeEnum,\n ZodPromise: ZodPromise,\n ZodEffects: ZodEffects,\n ZodTransformer: ZodEffects,\n ZodOptional: ZodOptional,\n ZodNullable: ZodNullable,\n ZodDefault: ZodDefault,\n ZodNaN: ZodNaN,\n BRAND: BRAND,\n ZodBranded: ZodBranded,\n custom: custom,\n Schema: ZodType,\n ZodSchema: ZodType,\n late: late,\n get ZodFirstPartyTypeKind () { return ZodFirstPartyTypeKind; },\n any: anyType,\n array: arrayType,\n bigint: bigIntType,\n boolean: booleanType,\n date: dateType,\n discriminatedUnion: discriminatedUnionType,\n effect: effectsType,\n 'enum': enumType,\n 'function': functionType,\n 'instanceof': instanceOfType,\n intersection: intersectionType,\n lazy: lazyType,\n literal: literalType,\n map: mapType,\n nan: nanType,\n nativeEnum: nativeEnumType,\n never: neverType,\n 'null': nullType,\n nullable: nullableType,\n number: numberType,\n object: objectType,\n oboolean: oboolean,\n onumber: onumber,\n optional: optionalType,\n ostring: ostring,\n preprocess: preprocessType,\n promise: promiseType,\n record: recordType,\n set: setType,\n strictObject: strictObjectType,\n string: stringType,\n transformer: effectsType,\n tuple: tupleType,\n 'undefined': undefinedType,\n union: unionType,\n unknown: unknownType,\n 'void': voidType,\n NEVER: NEVER,\n ZodIssueCode: ZodIssueCode,\n quotelessJson: quotelessJson,\n ZodError: ZodError\n});\n\nexport { BRAND, DIRTY, EMPTY_PATH, INVALID, NEVER, OK, ParseStatus, ZodType as Schema, ZodAny, ZodArray, ZodBigInt, ZodBoolean, ZodBranded, ZodDate, ZodDefault, ZodDiscriminatedUnion, ZodEffects, ZodEnum, ZodError, ZodFirstPartyTypeKind, ZodFunction, ZodIntersection, ZodIssueCode, ZodLazy, ZodLiteral, ZodMap, ZodNaN, ZodNativeEnum, ZodNever, ZodNull, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodParsedType, ZodPromise, ZodRecord, ZodType as ZodSchema, ZodSet, ZodString, ZodEffects as ZodTransformer, ZodTuple, ZodType, ZodUndefined, ZodUnion, ZodUnknown, ZodVoid, addIssueToContext, anyType as any, arrayType as array, bigIntType as bigint, booleanType as boolean, custom, dateType as date, mod as default, errorMap as defaultErrorMap, discriminatedUnionType as discriminatedUnion, effectsType as effect, enumType as enum, functionType as function, getErrorMap, getParsedType, instanceOfType as instanceof, intersectionType as intersection, isAborted, isAsync, isDirty, isValid, late, lazyType as lazy, literalType as literal, makeIssue, mapType as map, nanType as nan, nativeEnumType as nativeEnum, neverType as never, nullType as null, nullableType as nullable, numberType as number, objectType as object, objectUtil, oboolean, onumber, optionalType as optional, ostring, preprocessType as preprocess, promiseType as promise, quotelessJson, recordType as record, setType as set, setErrorMap, strictObjectType as strictObject, stringType as string, effectsType as transformer, tupleType as tuple, undefinedType as undefined, unionType as union, unknownType as unknown, voidType as void, mod as z };\n", "import { z } from 'zod'\n\nexport type QueryParams = Record\nexport type Headers = Record\n\nexport interface CallOptions {\n encoding?: string\n headers?: Headers\n}\n\nexport interface FetchHandlerResponse {\n status: number\n headers: Headers\n body: ArrayBuffer | undefined\n}\n\nexport type FetchHandler = (\n httpUri: string,\n httpMethod: string,\n httpHeaders: Headers,\n httpReqBody: any,\n) => Promise\n\nexport const errorResponseBody = z.object({\n error: z.string().optional(),\n message: z.string().optional(),\n})\nexport type ErrorResponseBody = z.infer\n\nexport enum ResponseType {\n Unknown = 1,\n InvalidResponse = 2,\n Success = 200,\n InvalidRequest = 400,\n AuthRequired = 401,\n Forbidden = 403,\n XRPCNotSupported = 404,\n PayloadTooLarge = 413,\n RateLimitExceeded = 429,\n InternalServerError = 500,\n MethodNotImplemented = 501,\n UpstreamFailure = 502,\n NotEnoughResouces = 503,\n UpstreamTimeout = 504,\n}\n\nexport const ResponseTypeNames = {\n [ResponseType.InvalidResponse]: 'InvalidResponse',\n [ResponseType.Success]: 'Success',\n [ResponseType.InvalidRequest]: 'InvalidRequest',\n [ResponseType.AuthRequired]: 'AuthenticationRequired',\n [ResponseType.Forbidden]: 'Forbidden',\n [ResponseType.XRPCNotSupported]: 'XRPCNotSupported',\n [ResponseType.PayloadTooLarge]: 'PayloadTooLarge',\n [ResponseType.RateLimitExceeded]: 'RateLimitExceeded',\n [ResponseType.InternalServerError]: 'InternalServerError',\n [ResponseType.MethodNotImplemented]: 'MethodNotImplemented',\n [ResponseType.UpstreamFailure]: 'UpstreamFailure',\n [ResponseType.NotEnoughResouces]: 'NotEnoughResouces',\n [ResponseType.UpstreamTimeout]: 'UpstreamTimeout',\n}\n\nexport const ResponseTypeStrings = {\n [ResponseType.InvalidResponse]: 'Invalid Response',\n [ResponseType.Success]: 'Success',\n [ResponseType.InvalidRequest]: 'Invalid Request',\n [ResponseType.AuthRequired]: 'Authentication Required',\n [ResponseType.Forbidden]: 'Forbidden',\n [ResponseType.XRPCNotSupported]: 'XRPC Not Supported',\n [ResponseType.PayloadTooLarge]: 'Payload Too Large',\n [ResponseType.RateLimitExceeded]: 'Rate Limit Exceeded',\n [ResponseType.InternalServerError]: 'Internal Server Error',\n [ResponseType.MethodNotImplemented]: 'Method Not Implemented',\n [ResponseType.UpstreamFailure]: 'Upstream Failure',\n [ResponseType.NotEnoughResouces]: 'Not Enough Resouces',\n [ResponseType.UpstreamTimeout]: 'Upstream Timeout',\n}\n\nexport class XRPCResponse {\n success = true\n\n constructor(public data: any, public headers: Headers) {}\n}\n\nexport class XRPCError extends Error {\n success = false\n\n constructor(\n public status: ResponseType,\n public error?: string,\n message?: string,\n ) {\n super(message || error || ResponseTypeStrings[status])\n if (!this.error) {\n this.error = ResponseTypeNames[status]\n }\n }\n}\n", "/*\nGrammar:\n\nalpha = \"a\" / \"b\" / \"c\" / \"d\" / \"e\" / \"f\" / \"g\" / \"h\" / \"i\" / \"j\" / \"k\" / \"l\" / \"m\" / \"n\" / \"o\" / \"p\" / \"q\" / \"r\" / \"s\" / \"t\" / \"u\" / \"v\" / \"w\" / \"x\" / \"y\" / \"z\" / \"A\" / \"B\" / \"C\" / \"D\" / \"E\" / \"F\" / \"G\" / \"H\" / \"I\" / \"J\" / \"K\" / \"L\" / \"M\" / \"N\" / \"O\" / \"P\" / \"Q\" / \"R\" / \"S\" / \"T\" / \"U\" / \"V\" / \"W\" / \"X\" / \"Y\" / \"Z\"\nnumber = \"1\" / \"2\" / \"3\" / \"4\" / \"5\" / \"6\" / \"7\" / \"8\" / \"9\" / \"0\"\ndelim = \".\"\nsegment = alpha *( alpha / number / \"-\" )\nauthority = segment *( delim segment )\nname = segment\nnsid = authority delim name\nnsid-ns = authority delim \"*\"\n\n*/\n\nconst SEGMENT_RE = /^[a-zA-Z]([a-zA-Z0-9-])*$/\n\nexport class NSID {\n segments: string[] = []\n\n static parse(nsid: string): NSID {\n return new NSID(nsid)\n }\n\n static create(authority: string, name: string): NSID {\n const segments = [...authority.split('.').reverse(), name].join('.')\n return new NSID(segments)\n }\n\n static isValid(nsid: string): boolean {\n try {\n NSID.parse(nsid)\n return true\n } catch (e: any) {\n return false\n }\n }\n\n constructor(nsid: string) {\n const segments = nsid.split('.')\n if (segments.length <= 2) {\n throw new Error(`Invalid NSID: ${nsid}`)\n }\n for (let i = 0; i < segments.length; i++) {\n const segment = segments[i]\n if (SEGMENT_RE.test(segment)) {\n continue\n }\n if (i === segments.length - 1 && segment === '*') {\n continue\n }\n throw new Error(`Invalid NSID: invalid character in segment \"${segment}\"`)\n }\n this.segments = segments\n }\n\n get authority() {\n return this.segments\n .slice(0, this.segments.length - 1)\n .reverse()\n .join('.')\n }\n\n get name() {\n return this.segments.at(this.segments.length - 1)\n }\n\n toString() {\n return this.segments.join('.')\n }\n}\n", "import { z } from 'zod'\nimport { NSID } from '@atproto/nsid'\n\nexport const recordSchema = z.object({\n lexicon: z.literal(1),\n id: z.string().refine((v: string) => NSID.isValid(v), {\n message: 'Must be a valid NSID',\n }),\n type: z.enum(['record']),\n revision: z.number().optional(),\n description: z.string().optional(),\n key: z.string().optional(),\n record: z.any().optional(),\n defs: z.any().optional(),\n})\nexport type RecordSchema = z.infer\n\nexport function isValidRecordSchema(v: unknown): v is RecordSchema {\n return recordSchema.safeParse(v).success\n}\n\nexport class RecordSchemaMalformedError extends Error {\n constructor(\n message: string,\n public schemaDef: any,\n public issues?: z.ZodIssue[],\n ) {\n super(message)\n this.schemaDef = schemaDef\n this.issues = issues\n }\n}\n\nexport const methodSchemaBody = z.object({\n encoding: z.union([z.string(), z.string().array()]),\n description: z.string().optional(),\n schema: z.any().optional(),\n})\nexport type MethodSchemaBody = z.infer\n\nexport const methodSchemaParam = z.object({\n type: z.enum(['string', 'number', 'integer', 'boolean']),\n description: z.string().optional(),\n default: z.union([z.string(), z.number(), z.boolean()]).optional(),\n required: z.boolean().optional(),\n minLength: z.number().optional(),\n maxLength: z.number().optional(),\n minimum: z.number().optional(),\n maximum: z.number().optional(),\n})\nexport type MethodSchemaParam = z.infer\n\nexport const methodSchemaError = z.object({\n name: z.string(),\n description: z.string().optional(),\n})\nexport type MethodSchemaError = z.infer\n\nexport const methodSchema = z.object({\n lexicon: z.literal(1),\n id: z.string(),\n type: z.enum(['query', 'procedure']),\n description: z.string().optional(),\n parameters: z.record(methodSchemaParam).optional(),\n input: methodSchemaBody.optional(),\n output: methodSchemaBody.optional(),\n errors: methodSchemaError.array().optional(),\n defs: z.any().optional(),\n})\nexport type MethodSchema = z.infer\n\nexport function isValidMethodSchema(v: unknown): v is MethodSchema {\n return methodSchema.safeParse(v).success\n}\n\nexport type Schema = RecordSchema | MethodSchema\n\nexport class SchemaNotFoundError extends Error {}\n", "import Ajv, { ValidateFunction } from 'ajv'\nimport ajvAddFormats from 'ajv-formats'\nimport { RecordSchema, RecordSchemaMalformedError } from '../types'\n\nconst ajv = new Ajv()\najvAddFormats(ajv)\n\n/**\n * A compiled schema.\n */\nexport class CompiledRecordSchema {\n id: string\n validate?: ValidateFunction\n\n constructor(public def: RecordSchema) {\n this.id = def.id\n\n // .record\n try {\n if (def.record) {\n if (def.record.type !== 'object') {\n throw new Error('The base .type must be an \"object\"')\n }\n this.validate = ajv.compile(def.record)\n }\n } catch (e: any) {\n throw new RecordSchemaMalformedError(\n `The \"${this.id}\" .record failed to compile: ${e.message}`,\n def,\n )\n }\n }\n}\n\nexport default CompiledRecordSchema\n", "import Ajv from 'ajv'\nimport ajvAddFormats from 'ajv-formats'\nimport * as util from './util'\n\nimport CompiledRecordSchema from './schema'\nimport RecordSchemas from './schemas'\nimport {\n ValidationError,\n ValidationResult,\n ValidationResultCode,\n} from './validation'\n\nconst ajv = new Ajv()\najvAddFormats(ajv)\n\nexport interface RecordValidatorDescription {\n type: string | string[]\n ext?: string | string[]\n}\n\n/**\n * Validates records using schemas.\n */\nexport class RecordValidator {\n constructor(\n private schemas: RecordSchemas,\n public type: CompiledRecordSchema[],\n public ext: CompiledRecordSchema[],\n ) {}\n\n /**\n * Returns detailed information about validity and compatibility.\n */\n validate(value: unknown): ValidationResult {\n const res = new ValidationResult()\n\n // basic validation\n if (!util.isRecord(value)) {\n res._t(ValidationResultCode.Invalid, `The passed value is not an object`)\n return res // abort now\n }\n if (!value.$type) {\n res._t(\n ValidationResultCode.Invalid,\n `The passed value does not declare a $type`,\n )\n return res // abort now\n }\n\n // lookup schema\n const typeSchema = this.type.find(schemaIdFilter(value.$type as string))\n if (!typeSchema) {\n res._t(\n ValidationResultCode.Incompatible,\n `Record type ${value.$type} is not supported`,\n )\n } else if (!typeSchema.validate) {\n res._t(\n ValidationResultCode.Incompatible,\n `Record type ${value.$type} is not a record schema`,\n )\n } else {\n // validate base type\n const typeIsValid = typeSchema.validate(value)\n if (!typeIsValid) {\n res._fail(typeSchema, typeSchema.validate)\n }\n }\n\n // validate extension objects\n if ('$ext' in value && typeof value.$ext === 'object') {\n for (const [extSchemaId, obj] of Object.entries(\n value.$ext as Record,\n )) {\n const extObj = obj as Record\n\n const extIsRequired =\n '$required' in extObj && typeof extObj.$required === 'boolean'\n ? extObj.$required\n : false\n\n let extFallback\n if ('$fallback' in extObj && typeof extObj.$fallback === 'string') {\n extFallback = extObj.$fallback\n }\n\n // lookup extension\n const extSchema = this.ext.find(schemaIdFilter(extSchemaId))\n if (!extSchema || !extSchema.validate) {\n if (extIsRequired) {\n res._t(\n ValidationResultCode.Incompatible,\n `Record extension ${extSchemaId} is not supported`,\n )\n } else {\n res._t(ValidationResultCode.Partial, extFallback)\n }\n } else {\n // validate extension object\n const extObjIsValid = extSchema.validate(extObj)\n if (!extObjIsValid) {\n res._fail(extSchema, extSchema.validate)\n }\n }\n }\n }\n\n return res\n }\n\n /**\n * Provides a simple boolean check of validity.\n */\n isValid(value: unknown) {\n const res = this.validate(value)\n return res.valid\n }\n\n /**\n * Like validate() but throws if validation fails.\n */\n assertValid(value: unknown) {\n const res = this.validate(value)\n if (!res.valid) {\n throw new ValidationError(res)\n }\n return res\n }\n}\n\n// helpers\n\nconst schemaIdFilter = (schemaId: string) => (s: CompiledRecordSchema) =>\n s.id === schemaId\n\nexport default RecordValidator\n", "import { MethodSchema } from '@atproto/lexicon'\nimport {\n CallOptions,\n Headers,\n QueryParams,\n ResponseType,\n XRPCError,\n} from './types'\n\nexport function getMethodSchemaHTTPMethod(schema: MethodSchema) {\n if (schema.type === 'query') {\n return 'get'\n }\n if (schema.type === 'procedure') {\n return 'post'\n }\n throw new Error(`Invalid method type: ${schema.type}`)\n}\n\nexport function constructMethodCallUri(\n schema: MethodSchema,\n serviceUri: URL,\n params?: QueryParams,\n): string {\n const uri = new URL(serviceUri)\n uri.pathname = `/xrpc/${schema.id}`\n\n // default parameters\n if (schema.parameters) {\n for (const [key, paramSchema] of Object.entries(schema.parameters)) {\n if (paramSchema.default) {\n uri.searchParams.set(\n key,\n encodeQueryParam(paramSchema.type, paramSchema.default),\n )\n }\n }\n }\n\n // given parameters\n if (params) {\n for (const [key, value] of Object.entries(params)) {\n const paramSchema = schema.parameters?.[key]\n if (!paramSchema) {\n throw new Error(`Invalid query parameter: ${key}`)\n }\n if (value !== undefined) {\n uri.searchParams.set(key, encodeQueryParam(paramSchema.type, value))\n }\n }\n }\n\n return uri.toString()\n}\n\nexport function encodeQueryParam(\n type: 'string' | 'number' | 'integer' | 'boolean',\n value: any,\n): string {\n if (type === 'string') {\n return String(value)\n }\n if (type === 'number') {\n return String(Number(value))\n } else if (type === 'integer') {\n return String(Number(value) | 0)\n } else if (type === 'boolean') {\n return value ? 'true' : 'false'\n }\n throw new Error(`Unsupported query param type: ${type}`)\n}\n\nexport function constructMethodCallHeaders(\n schema: MethodSchema,\n data?: any,\n opts?: CallOptions,\n): Headers {\n const headers: Headers = opts?.headers || {}\n if (schema.type === 'procedure') {\n if (opts?.encoding) {\n headers['Content-Type'] = opts.encoding\n }\n if (data && typeof data === 'object') {\n if (!headers['Content-Type']) {\n headers['Content-Type'] = 'application/json'\n }\n }\n }\n return headers\n}\n\nexport function encodeMethodCallBody(\n headers: Headers,\n data?: any,\n): ArrayBuffer | undefined {\n if (!headers['Content-Type'] || typeof data === 'undefined') {\n return undefined\n }\n if (data instanceof ArrayBuffer) {\n return data\n }\n if (headers['Content-Type'].startsWith('text/')) {\n return new TextEncoder().encode(data.toString())\n }\n if (headers['Content-Type'].startsWith('application/json')) {\n return new TextEncoder().encode(JSON.stringify(data))\n }\n return data\n}\n\nexport function httpResponseCodeToEnum(status: number): ResponseType {\n let resCode: ResponseType\n if (status in ResponseType) {\n resCode = status\n } else if (status >= 100 && status < 200) {\n resCode = ResponseType.XRPCNotSupported\n } else if (status >= 200 && status < 300) {\n resCode = ResponseType.Success\n } else if (status >= 300 && status < 400) {\n resCode = ResponseType.XRPCNotSupported\n } else if (status >= 400 && status < 500) {\n resCode = ResponseType.InvalidRequest\n } else {\n resCode = ResponseType.InternalServerError\n }\n return resCode\n}\n\nexport function httpResponseBodyParse(\n mimeType: string | null,\n data: ArrayBuffer | undefined,\n): any {\n if (mimeType) {\n if (mimeType.includes('application/json') && data?.byteLength) {\n try {\n const str = new TextDecoder().decode(data)\n return JSON.parse(str)\n } catch (e: any) {\n throw new XRPCError(\n ResponseType.InvalidResponse,\n `Failed to parse response body: ${e.toString()}`,\n )\n }\n }\n if (mimeType.startsWith('text/') && data?.byteLength) {\n try {\n return new TextDecoder().decode(data)\n } catch (e: any) {\n throw new XRPCError(\n ResponseType.InvalidResponse,\n `Failed to parse response body: ${e.toString()}`,\n )\n }\n }\n }\n return data\n}\n", "import {\n methodSchema,\n MethodSchema,\n isValidMethodSchema,\n} from '@atproto/lexicon'\nimport {\n getMethodSchemaHTTPMethod,\n constructMethodCallUri,\n constructMethodCallHeaders,\n encodeMethodCallBody,\n httpResponseCodeToEnum,\n httpResponseBodyParse,\n} from './util'\nimport {\n FetchHandler,\n FetchHandlerResponse,\n Headers,\n CallOptions,\n QueryParams,\n ResponseType,\n errorResponseBody,\n ErrorResponseBody,\n XRPCResponse,\n XRPCError,\n} from './types'\n\nexport class Client {\n fetch: FetchHandler = defaultFetchHandler\n schemas: Map = new Map()\n\n // method calls\n //\n\n async call(\n serviceUri: string | URL,\n methodNsid: string,\n params?: QueryParams,\n data?: any,\n opts?: CallOptions,\n ) {\n return this.service(serviceUri).call(methodNsid, params, data, opts)\n }\n\n service(serviceUri: string | URL) {\n return new ServiceClient(this, serviceUri)\n }\n\n // schemas\n // =\n\n addSchema(schema: unknown) {\n if (isValidMethodSchema(schema)) {\n this.schemas.set(schema.id, schema)\n } else {\n methodSchema.parse(schema) // will throw with the validation error\n }\n }\n\n addSchemas(schemas: unknown[]) {\n for (const schema of schemas) {\n this.addSchema(schema)\n }\n }\n\n listSchemaIds(): string[] {\n return Array.from(this.schemas.keys())\n }\n\n removeSchema(nsid: string) {\n this.schemas.delete(nsid)\n }\n}\n\nexport class ServiceClient {\n baseClient: Client\n uri: URL\n headers: Record = {}\n\n constructor(baseClient: Client, serviceUri: string | URL) {\n this.baseClient = baseClient\n this.uri = typeof serviceUri === 'string' ? new URL(serviceUri) : serviceUri\n }\n\n setHeader(key: string, value: string): void {\n this.headers[key] = value\n }\n\n async call(\n methodNsid: string,\n params?: QueryParams,\n data?: any,\n opts?: CallOptions,\n ) {\n const schema = this.baseClient.schemas.get(methodNsid)\n if (!schema) {\n throw new Error(`Method schema not found: ${methodNsid}`)\n }\n const httpMethod = getMethodSchemaHTTPMethod(schema)\n const httpUri = constructMethodCallUri(schema, this.uri, params)\n const httpHeaders = constructMethodCallHeaders(schema, data, {\n headers: {\n ...this.headers,\n ...opts?.headers,\n },\n encoding: opts?.encoding,\n })\n\n const res = await this.baseClient.fetch(\n httpUri,\n httpMethod,\n httpHeaders,\n data,\n )\n\n const resCode = httpResponseCodeToEnum(res.status)\n if (resCode === ResponseType.Success) {\n return new XRPCResponse(res.body, res.headers)\n } else {\n if (res.body && isErrorResponseBody(res.body)) {\n throw new XRPCError(resCode, res.body.error, res.body.message)\n } else {\n throw new XRPCError(resCode)\n }\n }\n }\n}\n\nasync function defaultFetchHandler(\n httpUri: string,\n httpMethod: string,\n httpHeaders: Headers,\n httpReqBody: any,\n): Promise {\n try {\n const res = await fetch(httpUri, {\n method: httpMethod,\n headers: httpHeaders,\n body: encodeMethodCallBody(httpHeaders, httpReqBody),\n })\n const resBody = await res.arrayBuffer()\n return {\n status: res.status,\n headers: Object.fromEntries(res.headers.entries()),\n body: httpResponseBodyParse(res.headers.get('content-type'), resBody),\n }\n } catch (e: any) {\n throw new XRPCError(ResponseType.Unknown, e.toString())\n }\n}\n\nfunction isErrorResponseBody(v: unknown): v is ErrorResponseBody {\n return errorResponseBody.safeParse(v).success\n}\n", "export * from './types'\nexport * from './client'\n\nimport { Client } from './client'\nconst defaultInst = new Client()\nexport default defaultInst\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { MethodSchema, RecordSchema } from '@atproto/lexicon'\n\nexport const methodSchemaDict: Record = {\n 'com.atproto.createAccount': {\n lexicon: 1,\n id: 'com.atproto.createAccount',\n type: 'procedure',\n description: 'Create an account.',\n parameters: {},\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['username', 'email', 'password'],\n properties: {\n email: {\n type: 'string',\n },\n username: {\n type: 'string',\n },\n inviteCode: {\n type: 'string',\n },\n password: {\n type: 'string',\n },\n recoveryKey: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['jwt', 'username', 'did'],\n properties: {\n jwt: {\n type: 'string',\n },\n username: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n errors: [\n {\n name: 'InvalidUsername',\n },\n {\n name: 'InvalidPassword',\n },\n {\n name: 'InvalidInviteCode',\n },\n {\n name: 'UsernameNotAvailable',\n },\n ],\n },\n 'com.atproto.createInviteCode': {\n lexicon: 1,\n id: 'com.atproto.createInviteCode',\n type: 'procedure',\n description: 'Create an invite code.',\n parameters: {},\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['useCount'],\n properties: {\n useCount: {\n type: 'number',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['code'],\n properties: {\n code: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.createSession': {\n lexicon: 1,\n id: 'com.atproto.createSession',\n type: 'procedure',\n description: 'Create an authentication session.',\n parameters: {},\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['username', 'password'],\n properties: {\n username: {\n type: 'string',\n },\n password: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['jwt', 'name', 'did'],\n properties: {\n jwt: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.deleteAccount': {\n lexicon: 1,\n id: 'com.atproto.deleteAccount',\n type: 'procedure',\n description: 'Delete an account.',\n parameters: {},\n input: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n output: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n },\n 'com.atproto.deleteSession': {\n lexicon: 1,\n id: 'com.atproto.deleteSession',\n type: 'procedure',\n description: 'Delete the current session.',\n parameters: {},\n input: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n output: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n },\n 'com.atproto.getAccount': {\n lexicon: 1,\n id: 'com.atproto.getAccount',\n type: 'query',\n description: 'Get information about an account.',\n parameters: {},\n input: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n output: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n },\n 'com.atproto.getAccountsConfig': {\n lexicon: 1,\n id: 'com.atproto.getAccountsConfig',\n type: 'query',\n description:\n \"Get a document describing the service's accounts configuration.\",\n parameters: {},\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['availableUserDomains'],\n properties: {\n inviteCodeRequired: {\n type: 'boolean',\n },\n availableUserDomains: {\n type: 'array',\n items: {\n type: 'string',\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.getSession': {\n lexicon: 1,\n id: 'com.atproto.getSession',\n type: 'query',\n description: 'Get information about the current session.',\n parameters: {},\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['name', 'did'],\n properties: {\n name: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repoBatchWrite': {\n lexicon: 1,\n id: 'com.atproto.repoBatchWrite',\n type: 'procedure',\n description: 'Apply a batch transaction of creates, puts, and deletes.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n validate: {\n type: 'boolean',\n default: true,\n description: 'Validate the records?',\n },\n },\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['writes'],\n properties: {\n writes: {\n type: 'array',\n items: {\n oneOf: [\n {\n type: 'object',\n required: ['action', 'collection', 'value'],\n properties: {\n action: {\n type: 'string',\n const: 'create',\n },\n collection: {\n type: 'string',\n },\n rkey: {\n type: 'string',\n },\n value: {},\n },\n },\n {\n type: 'object',\n required: ['action', 'collection', 'rkey', 'value'],\n properties: {\n action: {\n type: 'string',\n const: 'update',\n },\n collection: {\n type: 'string',\n },\n rkey: {\n type: 'string',\n },\n value: {},\n },\n },\n {\n type: 'object',\n required: ['action', 'collection', 'rkey'],\n properties: {\n action: {\n type: 'string',\n const: 'delete',\n },\n collection: {\n type: 'string',\n },\n rkey: {\n type: 'string',\n },\n },\n },\n ],\n },\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n $defs: {},\n },\n },\n },\n 'com.atproto.repoCreateRecord': {\n lexicon: 1,\n id: 'com.atproto.repoCreateRecord',\n type: 'procedure',\n description: 'Create a new record.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n collection: {\n type: 'string',\n required: true,\n description: 'The NSID of the record collection.',\n },\n validate: {\n type: 'boolean',\n default: true,\n description: 'Validate the record?',\n },\n },\n input: {\n encoding: 'application/json',\n description: 'The record to create',\n schema: {\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repoDeleteRecord': {\n lexicon: 1,\n id: 'com.atproto.repoDeleteRecord',\n type: 'procedure',\n description: 'Delete a record.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n collection: {\n type: 'string',\n required: true,\n description: 'The NSID of the record collection.',\n },\n rkey: {\n type: 'string',\n required: true,\n description: 'The key of the record.',\n },\n },\n },\n 'com.atproto.repoDescribe': {\n lexicon: 1,\n id: 'com.atproto.repoDescribe',\n type: 'query',\n description:\n 'Get information about the repo, including the list of collections.',\n parameters: {\n user: {\n type: 'string',\n required: true,\n description: 'The username or DID of the repo.',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['name', 'did', 'didDoc', 'collections', 'nameIsCorrect'],\n properties: {\n name: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n didDoc: {\n type: 'object',\n },\n collections: {\n type: 'array',\n items: {\n type: 'string',\n },\n },\n nameIsCorrect: {\n type: 'boolean',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repoGetRecord': {\n lexicon: 1,\n id: 'com.atproto.repoGetRecord',\n type: 'query',\n description: 'Fetch a record.',\n parameters: {\n user: {\n type: 'string',\n required: true,\n description: 'The username or DID of the repo.',\n },\n collection: {\n type: 'string',\n required: true,\n description: 'The NSID of the collection.',\n },\n rkey: {\n type: 'string',\n required: true,\n description: 'The key of the record.',\n },\n cid: {\n type: 'string',\n required: false,\n description:\n 'The CID of the version of the record. If not specified, then return the most recent version.',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'value'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n value: {\n type: 'object',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repoListRecords': {\n lexicon: 1,\n id: 'com.atproto.repoListRecords',\n type: 'query',\n description: 'List a range of records in a collection.',\n parameters: {\n user: {\n type: 'string',\n required: true,\n description: 'The username or DID of the repo.',\n },\n collection: {\n type: 'string',\n required: true,\n description: 'The NSID of the record type.',\n },\n limit: {\n type: 'number',\n minimum: 1,\n default: 50,\n description: 'The number of records to return. TODO-max number?',\n },\n before: {\n type: 'string',\n description: 'A TID to filter the range of records returned.',\n },\n after: {\n type: 'string',\n description: 'A TID to filter the range of records returned.',\n },\n reverse: {\n type: 'boolean',\n description: 'Reverse the order of the returned records?',\n default: false,\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['records'],\n properties: {\n cursor: {\n type: 'string',\n },\n records: {\n type: 'array',\n items: {\n type: 'object',\n required: ['uri', 'cid', 'value'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n value: {\n type: 'object',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repoPutRecord': {\n lexicon: 1,\n id: 'com.atproto.repoPutRecord',\n type: 'procedure',\n description: 'Write a record.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n collection: {\n type: 'string',\n required: true,\n description: 'The NSID of the record type.',\n },\n rkey: {\n type: 'string',\n required: true,\n description: 'The TID of the record.',\n },\n validate: {\n type: 'boolean',\n default: true,\n description: 'Validate the record?',\n },\n },\n input: {\n encoding: 'application/json',\n schema: {\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.requestAccountPasswordReset': {\n lexicon: 1,\n id: 'com.atproto.requestAccountPasswordReset',\n type: 'procedure',\n description: 'Initiate a user account password reset via email',\n parameters: {},\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['email'],\n properties: {\n email: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n properties: {},\n $defs: {},\n },\n },\n },\n 'com.atproto.resetAccountPassword': {\n lexicon: 1,\n id: 'com.atproto.resetAccountPassword',\n type: 'procedure',\n description: 'Reset a user account password using a token',\n parameters: {},\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['token', 'password'],\n properties: {\n token: {\n type: 'string',\n },\n password: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n properties: {},\n $defs: {},\n },\n },\n errors: [\n {\n name: 'ExpiredToken',\n },\n {\n name: 'InvalidToken',\n },\n ],\n },\n 'com.atproto.resolveName': {\n lexicon: 1,\n id: 'com.atproto.resolveName',\n type: 'query',\n description: 'Provides the DID of a repo.',\n parameters: {\n name: {\n type: 'string',\n description:\n \"The name to resolve. If not supplied, will resolve the host's own name.\",\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['did'],\n properties: {\n did: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.syncGetRepo': {\n lexicon: 1,\n id: 'com.atproto.syncGetRepo',\n type: 'query',\n description: 'Gets the repo state.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n from: {\n type: 'string',\n description: 'A past commit CID',\n },\n },\n output: {\n encoding: 'application/cbor',\n },\n },\n 'com.atproto.syncGetRoot': {\n lexicon: 1,\n id: 'com.atproto.syncGetRoot',\n type: 'query',\n description: 'Gets the current root CID of a repo.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['root'],\n properties: {\n root: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.syncUpdateRepo': {\n lexicon: 1,\n id: 'com.atproto.syncUpdateRepo',\n type: 'procedure',\n description: 'Writes commits to a repo.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n },\n input: {\n encoding: 'application/cbor',\n },\n },\n 'app.bsky.getAuthorFeed': {\n lexicon: 1,\n id: 'app.bsky.getAuthorFeed',\n type: 'query',\n description: \"A view of a user's feed\",\n parameters: {\n author: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['feed'],\n properties: {\n cursor: {\n type: 'string',\n },\n feed: {\n type: 'array',\n items: {\n $ref: '#/$defs/feedItem',\n },\n },\n },\n $defs: {\n feedItem: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'repostCount',\n 'likeCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n repostedBy: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n replyCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n likeCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n },\n defs: {\n feedItem: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'repostCount',\n 'likeCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n repostedBy: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n replyCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n likeCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n 'app.bsky.getBadgeMembers': {\n lexicon: 1,\n id: 'app.bsky.getBadgeMembers',\n type: 'query',\n parameters: {\n uri: {\n type: 'string',\n required: true,\n },\n cid: {\n type: 'string',\n required: false,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'members'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n cursor: {\n type: 'string',\n },\n members: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'name', 'acceptedAt', 'offeredAt'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n offeredAt: {\n type: 'string',\n format: 'date-time',\n },\n acceptedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.getHomeFeed': {\n lexicon: 1,\n id: 'app.bsky.getHomeFeed',\n type: 'query',\n description: \"A view of the user's home feed\",\n parameters: {\n algorithm: {\n type: 'string',\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['feed'],\n properties: {\n cursor: {\n type: 'string',\n },\n feed: {\n type: 'array',\n items: {\n $ref: '#/$defs/feedItem',\n },\n },\n },\n $defs: {\n feedItem: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'repostCount',\n 'likeCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n repostedBy: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n replyCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n likeCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n },\n defs: {\n feedItem: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'repostCount',\n 'likeCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n repostedBy: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n replyCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n likeCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n 'app.bsky.getLikedBy': {\n lexicon: 1,\n id: 'app.bsky.getLikedBy',\n type: 'query',\n parameters: {\n uri: {\n type: 'string',\n required: true,\n },\n cid: {\n type: 'string',\n required: false,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'likedBy'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n cursor: {\n type: 'string',\n },\n likedBy: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'name', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.getNotificationCount': {\n lexicon: 1,\n id: 'app.bsky.getNotificationCount',\n type: 'query',\n parameters: {},\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['count'],\n properties: {\n count: {\n type: 'number',\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.getNotifications': {\n lexicon: 1,\n id: 'app.bsky.getNotifications',\n type: 'query',\n parameters: {\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['notifications'],\n properties: {\n cursor: {\n type: 'string',\n },\n notifications: {\n type: 'array',\n items: {\n $ref: '#/$defs/notification',\n },\n },\n },\n $defs: {\n notification: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'reason',\n 'record',\n 'isRead',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n format: 'uri',\n },\n cid: {\n type: 'string',\n },\n author: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n reason: {\n type: 'string',\n $comment:\n \"Expected values are 'like', 'repost', 'follow', 'badge', 'mention' and 'reply'.\",\n },\n reasonSubject: {\n type: 'string',\n },\n record: {\n type: 'object',\n },\n isRead: {\n type: 'boolean',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n },\n defs: {\n notification: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'reason',\n 'record',\n 'isRead',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n format: 'uri',\n },\n cid: {\n type: 'string',\n },\n author: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n reason: {\n type: 'string',\n $comment:\n \"Expected values are 'like', 'repost', 'follow', 'badge', 'mention' and 'reply'.\",\n },\n reasonSubject: {\n type: 'string',\n },\n record: {\n type: 'object',\n },\n isRead: {\n type: 'boolean',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n 'app.bsky.getPostThread': {\n lexicon: 1,\n id: 'app.bsky.getPostThread',\n type: 'query',\n parameters: {\n uri: {\n type: 'string',\n required: true,\n },\n depth: {\n type: 'number',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['thread'],\n properties: {\n thread: {\n $ref: '#/$defs/post',\n },\n },\n $defs: {\n post: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'likeCount',\n 'repostCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n parent: {\n $ref: '#/$defs/post',\n },\n replyCount: {\n type: 'number',\n },\n replies: {\n type: 'array',\n items: {\n $ref: '#/$defs/post',\n },\n },\n likeCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n },\n defs: {\n post: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'likeCount',\n 'repostCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n parent: {\n $ref: '#/$defs/post',\n },\n replyCount: {\n type: 'number',\n },\n replies: {\n type: 'array',\n items: {\n $ref: '#/$defs/post',\n },\n },\n likeCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n 'app.bsky.getProfile': {\n lexicon: 1,\n id: 'app.bsky.getProfile',\n type: 'query',\n parameters: {\n user: {\n type: 'string',\n required: true,\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: [\n 'did',\n 'name',\n 'followersCount',\n 'followsCount',\n 'postsCount',\n 'pinnedBadges',\n ],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n description: {\n type: 'string',\n maxLength: 256,\n },\n followersCount: {\n type: 'number',\n },\n followsCount: {\n type: 'number',\n },\n postsCount: {\n type: 'number',\n },\n pinnedBadges: {\n type: 'array',\n items: {\n $ref: '#/$defs/badge',\n },\n },\n myState: {\n type: 'object',\n properties: {\n follow: {\n type: 'string',\n },\n },\n },\n },\n $defs: {\n badge: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n error: {\n type: 'string',\n },\n issuer: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n assertion: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n },\n tag: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n },\n defs: {\n badge: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n error: {\n type: 'string',\n },\n issuer: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n assertion: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n },\n tag: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n 'app.bsky.getRepostedBy': {\n lexicon: 1,\n id: 'app.bsky.getRepostedBy',\n type: 'query',\n parameters: {\n uri: {\n type: 'string',\n required: true,\n },\n cid: {\n type: 'string',\n required: false,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'repostedBy'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n cursor: {\n type: 'string',\n },\n repostedBy: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'name', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.getUserFollowers': {\n lexicon: 1,\n id: 'app.bsky.getUserFollowers',\n type: 'query',\n description: 'Who is following a user?',\n parameters: {\n user: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['subject', 'followers'],\n properties: {\n subject: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n cursor: {\n type: 'string',\n },\n followers: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'name', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.getUserFollows': {\n lexicon: 1,\n id: 'app.bsky.getUserFollows',\n type: 'query',\n description: 'Who is a user following?',\n parameters: {\n user: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['subject', 'follows'],\n properties: {\n subject: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n cursor: {\n type: 'string',\n },\n follows: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'name', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.getUsersSearch': {\n lexicon: 1,\n id: 'app.bsky.getUsersSearch',\n type: 'query',\n description: 'Find users matching search criteria',\n parameters: {\n term: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['users'],\n properties: {\n cursor: {\n type: 'string',\n },\n users: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'name', 'createdAt', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n description: {\n type: 'string',\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.getUsersTypeahead': {\n lexicon: 1,\n id: 'app.bsky.getUsersTypeahead',\n type: 'query',\n description: 'Find user suggestions for a search term',\n parameters: {\n term: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['users'],\n properties: {\n users: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'name'],\n properties: {\n did: {\n type: 'string',\n },\n name: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.postNotificationsSeen': {\n lexicon: 1,\n id: 'app.bsky.postNotificationsSeen',\n type: 'procedure',\n description: 'Notify server that the user has seen notifications',\n parameters: {},\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['seenAt'],\n properties: {\n seenAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n $defs: {},\n },\n },\n },\n 'app.bsky.updateProfile': {\n lexicon: 1,\n id: 'app.bsky.updateProfile',\n type: 'procedure',\n description: 'Notify server that the user has seen notifications',\n parameters: {},\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: [],\n properties: {\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n description: {\n type: 'string',\n maxLength: 256,\n },\n pinnedBadges: {\n type: 'array',\n items: {\n $ref: '#/$defs/badgeRef',\n },\n },\n },\n $defs: {\n badgeRef: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'cid', 'record'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n record: {\n type: 'object',\n },\n },\n $defs: {},\n },\n },\n },\n}\nexport const methodSchemas: MethodSchema[] = Object.values(methodSchemaDict)\nexport const ids = {\n AppBskyBadge: 'app.bsky.badge',\n AppBskyBadgeAccept: 'app.bsky.badgeAccept',\n AppBskyBadgeOffer: 'app.bsky.badgeOffer',\n AppBskyFollow: 'app.bsky.follow',\n AppBskyLike: 'app.bsky.like',\n AppBskyMediaEmbed: 'app.bsky.mediaEmbed',\n AppBskyPost: 'app.bsky.post',\n AppBskyProfile: 'app.bsky.profile',\n AppBskyRepost: 'app.bsky.repost',\n}\nexport const recordSchemaDict: Record = {\n 'app.bsky.badge': {\n lexicon: 1,\n id: 'app.bsky.badge',\n type: 'record',\n description: 'An assertion about the subject by this user.',\n key: 'tid',\n record: {\n type: 'object',\n required: ['assertion', 'createdAt'],\n properties: {\n assertion: {\n oneOf: [\n {\n $ref: '#/$defs/inviteAssertion',\n },\n {\n $ref: '#/$defs/employeeAssertion',\n },\n {\n $ref: '#/$defs/tagAssertion',\n },\n {\n $ref: '#/$defs/unknownAssertion',\n },\n ],\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n inviteAssertion: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n const: 'invite',\n },\n },\n },\n employeeAssertion: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n const: 'employee',\n },\n },\n },\n tagAssertion: {\n type: 'object',\n required: ['type', 'tag'],\n properties: {\n type: {\n const: 'tag',\n },\n tag: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n unknownAssertion: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['invite', 'employee', 'tag'],\n },\n },\n },\n },\n },\n },\n defs: {\n inviteAssertion: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n const: 'invite',\n },\n },\n },\n employeeAssertion: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n const: 'employee',\n },\n },\n },\n tagAssertion: {\n type: 'object',\n required: ['type', 'tag'],\n properties: {\n type: {\n const: 'tag',\n },\n tag: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n unknownAssertion: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['invite', 'employee', 'tag'],\n },\n },\n },\n },\n },\n },\n 'app.bsky.badgeAccept': {\n lexicon: 1,\n id: 'app.bsky.badgeAccept',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['badge', 'offer', 'createdAt'],\n properties: {\n badge: {\n $ref: '#/$defs/subject',\n },\n offer: {\n $ref: '#/$defs/subject',\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n 'app.bsky.badgeOffer': {\n lexicon: 1,\n id: 'app.bsky.badgeOffer',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['badge', 'subject', 'createdAt'],\n properties: {\n badge: {\n $ref: '#/$defs/badge',\n },\n subject: {\n type: 'string',\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n badge: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n badge: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n 'app.bsky.follow': {\n lexicon: 1,\n id: 'app.bsky.follow',\n type: 'record',\n description: 'A social follow',\n key: 'tid',\n record: {\n type: 'object',\n required: ['subject', 'createdAt'],\n properties: {\n subject: {\n type: 'string',\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {},\n },\n },\n 'app.bsky.like': {\n lexicon: 1,\n id: 'app.bsky.like',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['subject', 'createdAt'],\n properties: {\n subject: {\n $ref: '#/$defs/subject',\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n 'app.bsky.mediaEmbed': {\n lexicon: 1,\n id: 'app.bsky.mediaEmbed',\n type: 'record',\n description: 'A list of media embedded in a post or document.',\n key: 'tid',\n record: {\n type: 'object',\n required: ['media'],\n properties: {\n media: {\n type: 'array',\n items: {\n $ref: '#/$defs/mediaEmbed',\n },\n },\n },\n $defs: {\n mediaEmbed: {\n type: 'object',\n required: ['original'],\n properties: {\n alt: {\n type: 'string',\n },\n thumb: {\n $ref: '#/$defs/mediaEmbedBlob',\n },\n original: {\n $ref: '#/$defs/mediaEmbedBlob',\n },\n },\n },\n mediaEmbedBlob: {\n type: 'object',\n required: ['mimeType', 'blobId'],\n properties: {\n mimeType: {\n type: 'string',\n },\n blobId: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n mediaEmbed: {\n type: 'object',\n required: ['original'],\n properties: {\n alt: {\n type: 'string',\n },\n thumb: {\n $ref: '#/$defs/mediaEmbedBlob',\n },\n original: {\n $ref: '#/$defs/mediaEmbedBlob',\n },\n },\n },\n mediaEmbedBlob: {\n type: 'object',\n required: ['mimeType', 'blobId'],\n properties: {\n mimeType: {\n type: 'string',\n },\n blobId: {\n type: 'string',\n },\n },\n },\n },\n },\n 'app.bsky.post': {\n lexicon: 1,\n id: 'app.bsky.post',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['text', 'createdAt'],\n properties: {\n text: {\n type: 'string',\n maxLength: 256,\n },\n entities: {\n $ref: '#/$defs/entity',\n },\n reply: {\n type: 'object',\n required: ['root', 'parent'],\n properties: {\n root: {\n $ref: '#/$defs/postRef',\n },\n parent: {\n $ref: '#/$defs/postRef',\n },\n },\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n entity: {\n type: 'array',\n items: {\n type: 'object',\n required: ['index', 'type', 'value'],\n properties: {\n index: {\n $ref: '#/$defs/textSlice',\n },\n type: {\n type: 'string',\n $comment:\n \"Expected values are 'mention', 'hashtag', and 'link'.\",\n },\n value: {\n type: 'string',\n },\n },\n },\n },\n textSlice: {\n type: 'array',\n items: [\n {\n type: 'number',\n },\n {\n type: 'number',\n },\n ],\n minItems: 2,\n maxItems: 2,\n },\n postRef: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n postRef: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n entity: {\n type: 'array',\n items: {\n type: 'object',\n required: ['index', 'type', 'value'],\n properties: {\n index: {\n $ref: '#/$defs/textSlice',\n },\n type: {\n type: 'string',\n $comment: \"Expected values are 'mention', 'hashtag', and 'link'.\",\n },\n value: {\n type: 'string',\n },\n },\n },\n },\n textSlice: {\n type: 'array',\n items: [\n {\n type: 'number',\n },\n {\n type: 'number',\n },\n ],\n minItems: 2,\n maxItems: 2,\n },\n },\n },\n 'app.bsky.profile': {\n lexicon: 1,\n id: 'app.bsky.profile',\n type: 'record',\n key: 'literal:self',\n record: {\n type: 'object',\n required: ['displayName'],\n properties: {\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n description: {\n type: 'string',\n maxLength: 256,\n },\n pinnedBadges: {\n type: 'array',\n items: {\n $ref: '#/$defs/badgeRef',\n },\n },\n },\n $defs: {\n badgeRef: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n badgeRef: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n 'app.bsky.repost': {\n lexicon: 1,\n id: 'app.bsky.repost',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['subject', 'createdAt'],\n properties: {\n subject: {\n $ref: '#/$defs/subject',\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n}\nexport const recordSchemas: RecordSchema[] = Object.values(recordSchemaDict)\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n email: string;\n username: string;\n inviteCode?: string;\n password: string;\n recoveryKey?: string;\n}\n\nexport interface OutputSchema {\n jwt: string;\n username: string;\n did: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport class InvalidUsernameError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport class InvalidPasswordError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport class InvalidInviteCodeError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport class UsernameNotAvailableError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n if (e.error === 'InvalidUsername') return new InvalidUsernameError(e)\n if (e.error === 'InvalidPassword') return new InvalidPasswordError(e)\n if (e.error === 'InvalidInviteCode') return new InvalidInviteCodeError(e)\n if (e.error === 'UsernameNotAvailable')\n return new UsernameNotAvailableError(e)\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n useCount: number;\n}\n\nexport interface OutputSchema {\n code: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n username: string;\n password: string;\n}\n\nexport interface OutputSchema {\n jwt: string;\n name: string;\n did: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: '';\n}\n\nexport interface InputSchema {\n [k: string]: unknown;\n}\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: '';\n}\n\nexport interface InputSchema {\n [k: string]: unknown;\n}\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: '';\n}\n\nexport interface InputSchema {\n [k: string]: unknown;\n}\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n inviteCodeRequired?: boolean;\n availableUserDomains: string[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n name: string;\n did: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n validate?: boolean;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n writes: (\n | {\n action: 'create',\n collection: string,\n rkey?: string,\n value: unknown,\n }\n | {\n action: 'update',\n collection: string,\n rkey: string,\n value: unknown,\n }\n | {\n action: 'delete',\n collection: string,\n rkey: string,\n }\n )[];\n}\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n collection: string;\n validate?: boolean;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n [k: string]: unknown;\n}\n\nexport interface OutputSchema {\n uri: string;\n cid: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n collection: string;\n rkey: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n name: string;\n did: string;\n didDoc: {};\n collections: string[];\n nameIsCorrect: boolean;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n collection: string;\n rkey: string;\n cid?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n uri: string;\n cid?: string;\n value: {};\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n collection: string;\n limit?: number;\n before?: string;\n after?: string;\n reverse?: boolean;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n records: {\n uri: string,\n cid: string,\n value: {},\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n collection: string;\n rkey: string;\n validate?: boolean;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n [k: string]: unknown;\n}\n\nexport interface OutputSchema {\n uri: string;\n cid: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n email: string;\n}\n\nexport interface OutputSchema {}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n token: string;\n password: string;\n}\n\nexport interface OutputSchema {}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport class ExpiredTokenError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport class InvalidTokenError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n if (e.error === 'ExpiredToken') return new ExpiredTokenError(e)\n if (e.error === 'InvalidToken') return new InvalidTokenError(e)\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n name?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n did: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n from?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: Uint8Array;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n root: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/cbor';\n}\n\nexport type InputSchema = string | Uint8Array\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n author: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n feed: FeedItem[];\n}\nexport interface FeedItem {\n uri: string;\n cid: string;\n author: User;\n repostedBy?: User;\n record: {};\n embed?: RecordEmbed | ExternalEmbed | UnknownEmbed;\n replyCount: number;\n repostCount: number;\n likeCount: number;\n indexedAt: string;\n myState?: {\n repost?: string,\n like?: string,\n };\n}\nexport interface User {\n did: string;\n name: string;\n displayName?: string;\n}\nexport interface RecordEmbed {\n type: 'record';\n author: User;\n record: {};\n}\nexport interface ExternalEmbed {\n type: 'external';\n uri: string;\n title: string;\n description: string;\n imageUri: string;\n}\nexport interface UnknownEmbed {\n type: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n uri: string;\n cid?: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n uri: string;\n cid?: string;\n cursor?: string;\n members: {\n did: string,\n name: string,\n displayName?: string,\n offeredAt: string,\n acceptedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n algorithm?: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n feed: FeedItem[];\n}\nexport interface FeedItem {\n uri: string;\n cid: string;\n author: User;\n repostedBy?: User;\n record: {};\n embed?: RecordEmbed | ExternalEmbed | UnknownEmbed;\n replyCount: number;\n repostCount: number;\n likeCount: number;\n indexedAt: string;\n myState?: {\n repost?: string,\n like?: string,\n };\n}\nexport interface User {\n did: string;\n name: string;\n displayName?: string;\n}\nexport interface RecordEmbed {\n type: 'record';\n author: User;\n record: {};\n}\nexport interface ExternalEmbed {\n type: 'external';\n uri: string;\n title: string;\n description: string;\n imageUri: string;\n}\nexport interface UnknownEmbed {\n type: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n uri: string;\n cid?: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n uri: string;\n cid?: string;\n cursor?: string;\n likedBy: {\n did: string,\n name: string,\n displayName?: string,\n createdAt?: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n count: number;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n notifications: Notification[];\n}\nexport interface Notification {\n uri: string;\n cid: string;\n author: {\n did: string,\n name: string,\n displayName?: string,\n };\n reason: string;\n reasonSubject?: string;\n record: {};\n isRead: boolean;\n indexedAt: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n uri: string;\n depth?: number;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n thread: Post;\n}\nexport interface Post {\n uri: string;\n cid: string;\n author: User;\n record: {};\n embed?: RecordEmbed | ExternalEmbed | UnknownEmbed;\n parent?: Post;\n replyCount: number;\n replies?: Post[];\n likeCount: number;\n repostCount: number;\n indexedAt: string;\n myState?: {\n repost?: string,\n like?: string,\n };\n}\nexport interface User {\n did: string;\n name: string;\n displayName?: string;\n}\nexport interface RecordEmbed {\n type: 'record';\n author: User;\n record: {};\n}\nexport interface ExternalEmbed {\n type: 'external';\n uri: string;\n title: string;\n description: string;\n imageUri: string;\n}\nexport interface UnknownEmbed {\n type: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n did: string;\n name: string;\n displayName?: string;\n description?: string;\n followersCount: number;\n followsCount: number;\n postsCount: number;\n pinnedBadges: Badge[];\n myState?: {\n follow?: string,\n };\n}\nexport interface Badge {\n uri: string;\n cid: string;\n error?: string;\n issuer?: {\n did: string,\n name: string,\n displayName?: string,\n };\n assertion?: {\n type: string,\n tag?: string,\n };\n createdAt?: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n uri: string;\n cid?: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n uri: string;\n cid?: string;\n cursor?: string;\n repostedBy: {\n did: string,\n name: string,\n displayName?: string,\n createdAt?: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n subject: {\n did: string,\n name: string,\n displayName?: string,\n };\n cursor?: string;\n followers: {\n did: string,\n name: string,\n displayName?: string,\n createdAt?: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n subject: {\n did: string,\n name: string,\n displayName?: string,\n };\n cursor?: string;\n follows: {\n did: string,\n name: string,\n displayName?: string,\n createdAt?: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n term: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n users: {\n did: string,\n name: string,\n displayName?: string,\n description?: string,\n createdAt: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n term: string;\n limit?: number;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n users: {\n did: string,\n name: string,\n displayName?: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n seenAt: string;\n}\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n displayName?: string;\n description?: string;\n pinnedBadges?: BadgeRef[];\n}\nexport interface BadgeRef {\n uri: string;\n cid: string;\n}\n\nexport interface OutputSchema {\n uri: string;\n cid: string;\n record: {};\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n assertion:\n | InviteAssertion\n | EmployeeAssertion\n | TagAssertion\n | UnknownAssertion;\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface InviteAssertion {\n type: 'invite';\n [k: string]: unknown;\n}\nexport interface EmployeeAssertion {\n type: 'employee';\n [k: string]: unknown;\n}\nexport interface TagAssertion {\n type: 'tag';\n tag: string;\n [k: string]: unknown;\n}\nexport interface UnknownAssertion {\n type: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n badge: Subject;\n offer: Subject;\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface Subject {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n badge: Badge;\n subject: string;\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface Badge {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n subject: string;\n createdAt: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n subject: Subject;\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface Subject {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n media: MediaEmbed[];\n [k: string]: unknown;\n}\nexport interface MediaEmbed {\n alt?: string;\n thumb?: MediaEmbedBlob;\n original: MediaEmbedBlob;\n [k: string]: unknown;\n}\nexport interface MediaEmbedBlob {\n mimeType: string;\n blobId: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\n/**\n * @minItems 2\n * @maxItems 2\n */\nexport type TextSlice = [number, number]\nexport type Entity = {\n index: TextSlice,\n type: string,\n value: string,\n [k: string]: unknown,\n}[]\n\nexport interface Record {\n text: string;\n entities?: Entity;\n reply?: {\n root: PostRef,\n parent: PostRef,\n [k: string]: unknown,\n };\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface PostRef {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n displayName: string;\n description?: string;\n pinnedBadges?: BadgeRef[];\n [k: string]: unknown;\n}\nexport interface BadgeRef {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n subject: Subject;\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface Subject {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n"], - "mappings": "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", - "names": ["UsedValueState", "mergeValues", "Type", "DataType", "_a", "module", "module", "baseId", "ValidationError", "ValidationError", "merge", "sets", "length", "slice", "xl", "x", "join", "subexp", "str", "typeOf", "o", "undefined", "Object", "prototype", "toString", "call", "split", "pop", "shift", "toLowerCase", "toUpperCase", "toArray", "obj", "Array", "setInterval", "assign", "target", "source", "key", "buildExps", "isIRI", "ALPHA$$", "CR$", "DIGIT$$", "DQUOTE$$", "HEXDIG$$", "SP$$", "PCT_ENCODED$", "SUB_DELIMS$$", "RESERVED$$", "GEN_DELIMS$$", "UCSCHAR$$", "SCHEME$", "USERINFO$", "UNRESERVED$$", "DEC_OCTET$", "DEC_OCTET_RELAXED$", "H16$", "LS32$", "IPV4ADDRESS$", "IPV6ADDRESS1$", "IPV6ADDRESS2$", "IPV6ADDRESS3$", "IPV6ADDRESS4$", "IPV6ADDRESS5$", "IPV6ADDRESS6$", "IPV6ADDRESS7$", "IPV6ADDRESS8$", "IPV6ADDRESS9$", "ZONEID$", "IPV6ADDRESS$", "IP_LITERAL$", "IPV6ADDRZ_RELAXED$", "IPVFUTURE$", "HOST$", "REG_NAME$", "PORT$", "AUTHORITY$", "PCHAR$", "SEGMENT$", "SEGMENT_NZ$", "SEGMENT_NZ_NC$", "PATH_ABEMPTY$", "PATH_ABSOLUTE$", "PATH$", "PATH_NOSCHEME$", "PATH_ROOTLESS$", "PATH_EMPTY$", "QUERY$", "IPRIVATE$$", "FRAGMENT$", "HIER_PART$", "URI$", "RELATIVE_PART$", "RELATIVE$", "URI_REFERENCE$", "ABSOLUTE_URI$", "GENERIC_REF$", "RELATIVE_REF$", "ABSOLUTE_REF$", "SAMEDOC_REF$", "AUTHORITY_REF$", "RegExp", "maxInt", "base", "tMin", "tMax", "skew", "damp", "initialBias", "initialN", "delimiter", "regexPunycode", "regexNonASCII", "regexSeparators", "errors", "baseMinusTMin", "floor", "Math", "stringFromCharCode", "String", "fromCharCode", "error", "type", "RangeError", "map", "array", "fn", "result", "mapDomain", "string", "parts", "replace", "labels", "encoded", "ucs2decode", "output", "counter", "value", "charCodeAt", "extra", "push", "ucs2encode", "fromCodePoint", "basicToDigit", "codePoint", "digitToBasic", "digit", "flag", "adapt", "delta", "numPoints", "firstTime", "k", "decode", "input", "inputLength", "i", "n", "bias", "basic", "lastIndexOf", "j", "index", "oldi", "w", "t", "baseMinusT", "out", "splice", "encode", "currentValue", "basicLength", "handledCPCount", "m", "handledCPCountPlusOne", "q", "qMinusT", "toUnicode", "test", "toASCII", "punycode", "SCHEMES", "pctEncChar", "chr", "c", "e", "pctDecChars", "newStr", "il", "parseInt", "substr", "c2", "c3", "_normalizeComponentEncoding", "components", "protocol", "decodeUnreserved", "decStr", "match", "UNRESERVED", "scheme", "PCT_ENCODED", "NOT_SCHEME", "userinfo", "NOT_USERINFO", "host", "NOT_HOST", "path", "NOT_PATH", "NOT_PATH_NOSCHEME", "query", "NOT_QUERY", "fragment", "NOT_FRAGMENT", "_stripLeadingZeros", "_normalizeIPv4", "matches", "IPV4ADDRESS", "address", "_normalizeIPv6", "IPV6ADDRESS", "zone", "reverse", "last", "first", "firstFields", "lastFields", "isLastFieldIPv4Address", "fieldCount", "lastFieldsStart", "fields", "allZeroFields", "reduce", "acc", "field", "lastLongest", "longestZeroFields", "sort", "a", "b", "newHost", "newFirst", "newLast", "URI_PARSE", "NO_MATCH_IS_UNDEFINED", "parse", "uriString", "options", "iri", "IRI_PROTOCOL", "URI_PROTOCOL", "reference", "port", "isNaN", "indexOf", "schemeHandler", "unicodeSupport", "domainHost", "_recomposeAuthority", "uriTokens", "_", "$1", "$2", "RDS1", "RDS2", "RDS3", "RDS5", "removeDotSegments", "im", "s", "Error", "serialize", "authority", "charAt", "absolutePath", "resolveComponents", "relative", "skipNormalization", "tolerant", "resolve", "baseURI", "relativeURI", "schemelessOptions", "normalize", "uri", "equal", "uriA", "uriB", "escapeComponent", "ESCAPE", "unescapeComponent", "handler", "secure", "http", "isSecure", "wsComponents", "resourceName", "ws", "O", "ATEXT$$", "QTEXT$$", "VCHAR$$", "SOME_DELIMS$$", "NOT_LOCAL_PART", "NOT_HFNAME", "NOT_HFVALUE", "mailtoComponents", "to", "unknownHeaders", "headers", "hfields", "hfield", "toAddrs", "subject", "body", "addr", "toAddr", "atIdx", "localPart", "domain", "name", "URN_PARSE", "urnComponents", "nid", "nss", "urnScheme", "uriComponents", "UUID", "uuidComponents", "uuid", "https", "wss", "mailto", "urn", "Ajv", "DiscrError", "Ajv", "module", "ajv", "ajv", "module", "Client", "ServiceClient", "util", "errorUtil", "errorMap", "ctx", "result", "objectUtil", "issues", "elements", "processed", "ZodFirstPartyTypeKind", "ResponseType", "Ajv", "ajvAddFormats", "import_ajv", "import_ajv_formats", "ajv", "Ajv", "ajvAddFormats", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "Client", "ServiceClient", "defaultInst", "toKnownErr"] + "sources": ["../../../node_modules/ajv/lib/compile/codegen/code.ts", "../../../node_modules/ajv/lib/compile/codegen/scope.ts", "../../../node_modules/ajv/lib/compile/codegen/index.ts", "../../../node_modules/ajv/lib/compile/util.ts", "../../../node_modules/ajv/lib/compile/names.ts", "../../../node_modules/ajv/lib/compile/errors.ts", "../../../node_modules/ajv/lib/compile/validate/boolSchema.ts", "../../../node_modules/ajv/lib/compile/rules.ts", "../../../node_modules/ajv/lib/compile/validate/applicability.ts", "../../../node_modules/ajv/lib/compile/validate/dataType.ts", "../../../node_modules/ajv/lib/compile/validate/defaults.ts", "../../../node_modules/ajv/lib/vocabularies/code.ts", "../../../node_modules/ajv/lib/compile/validate/keyword.ts", "../../../node_modules/ajv/lib/compile/validate/subschema.ts", "../../../node_modules/fast-deep-equal/index.js", "../../../node_modules/json-schema-traverse/index.js", "../../../node_modules/ajv/lib/compile/resolve.ts", "../../../node_modules/ajv/lib/compile/validate/index.ts", "../../../node_modules/ajv/lib/runtime/validation_error.ts", "../../../node_modules/ajv/lib/compile/ref_error.ts", "../../../node_modules/ajv/lib/compile/index.ts", "../../../node_modules/uri-js/src/index.ts", "../../../node_modules/uri-js/src/schemes/urn-uuid.ts", "../../../node_modules/uri-js/src/schemes/urn.ts", "../../../node_modules/uri-js/src/schemes/mailto.ts", "../../../node_modules/uri-js/src/schemes/wss.ts", "../../../node_modules/uri-js/src/schemes/ws.ts", "../../../node_modules/uri-js/src/schemes/https.ts", "../../../node_modules/uri-js/src/schemes/http.ts", "../../../node_modules/uri-js/src/uri.ts", "../../../node_modules/uri-js/node_modules/punycode/punycode.es6.js", "../../../node_modules/uri-js/src/regexps-iri.ts", "../../../node_modules/uri-js/src/regexps-uri.ts", "../../../node_modules/uri-js/src/util.ts", "../../../node_modules/ajv/lib/runtime/uri.ts", "../../../node_modules/ajv/lib/core.ts", "../../../node_modules/ajv/lib/vocabularies/core/id.ts", "../../../node_modules/ajv/lib/vocabularies/core/ref.ts", "../../../node_modules/ajv/lib/vocabularies/core/index.ts", "../../../node_modules/ajv/lib/vocabularies/validation/limitNumber.ts", "../../../node_modules/ajv/lib/vocabularies/validation/multipleOf.ts", "../../../node_modules/ajv/lib/runtime/ucs2length.ts", "../../../node_modules/ajv/lib/vocabularies/validation/limitLength.ts", "../../../node_modules/ajv/lib/vocabularies/validation/pattern.ts", "../../../node_modules/ajv/lib/vocabularies/validation/limitProperties.ts", "../../../node_modules/ajv/lib/vocabularies/validation/required.ts", "../../../node_modules/ajv/lib/vocabularies/validation/limitItems.ts", "../../../node_modules/ajv/lib/runtime/equal.ts", "../../../node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts", "../../../node_modules/ajv/lib/vocabularies/validation/const.ts", "../../../node_modules/ajv/lib/vocabularies/validation/enum.ts", "../../../node_modules/ajv/lib/vocabularies/validation/index.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/items.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/items2020.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/contains.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/dependencies.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/properties.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/not.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/anyOf.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/oneOf.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/allOf.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/if.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/thenElse.ts", "../../../node_modules/ajv/lib/vocabularies/applicator/index.ts", "../../../node_modules/ajv/lib/vocabularies/format/format.ts", "../../../node_modules/ajv/lib/vocabularies/format/index.ts", "../../../node_modules/ajv/lib/vocabularies/metadata.ts", "../../../node_modules/ajv/lib/vocabularies/draft7.ts", "../../../node_modules/ajv/lib/vocabularies/discriminator/types.ts", "../../../node_modules/ajv/lib/vocabularies/discriminator/index.ts", "../../../node_modules/ajv/lib/ajv.ts", "../../../node_modules/ajv-formats/src/formats.ts", "../../../node_modules/ajv-formats/src/limit.ts", "../../../node_modules/ajv-formats/src/index.ts", "../src/index.ts", "../../../node_modules/zod/lib/index.mjs", "../../xrpc/src/types.ts", "../../nsid/src/index.ts", "../../lexicon/src/types.ts", "../../lexicon/src/record/schema.ts", "../../lexicon/src/record/validator.ts", "../../xrpc/src/util.ts", "../../xrpc/src/client.ts", "../../xrpc/src/index.ts", "../src/client/schemas.ts", "../src/client/types/com/atproto/account/create.ts", "../src/client/types/com/atproto/account/createInviteCode.ts", "../src/client/types/com/atproto/account/delete.ts", "../src/client/types/com/atproto/account/get.ts", "../src/client/types/com/atproto/account/requestPasswordReset.ts", "../src/client/types/com/atproto/account/resetPassword.ts", "../src/client/types/com/atproto/handle/resolve.ts", "../src/client/types/com/atproto/repo/batchWrite.ts", "../src/client/types/com/atproto/repo/createRecord.ts", "../src/client/types/com/atproto/repo/deleteRecord.ts", "../src/client/types/com/atproto/repo/describe.ts", "../src/client/types/com/atproto/repo/getRecord.ts", "../src/client/types/com/atproto/repo/listRecords.ts", "../src/client/types/com/atproto/repo/putRecord.ts", "../src/client/types/com/atproto/server/getAccountsConfig.ts", "../src/client/types/com/atproto/session/create.ts", "../src/client/types/com/atproto/session/delete.ts", "../src/client/types/com/atproto/session/get.ts", "../src/client/types/com/atproto/session/refresh.ts", "../src/client/types/com/atproto/sync/getRepo.ts", "../src/client/types/com/atproto/sync/getRoot.ts", "../src/client/types/com/atproto/sync/updateRepo.ts", "../src/client/types/app/bsky/actor/getProfile.ts", "../src/client/types/app/bsky/actor/search.ts", "../src/client/types/app/bsky/actor/searchTypeahead.ts", "../src/client/types/app/bsky/actor/updateProfile.ts", "../src/client/types/app/bsky/feed/getAuthorFeed.ts", "../src/client/types/app/bsky/feed/getLikedBy.ts", "../src/client/types/app/bsky/feed/getPostThread.ts", "../src/client/types/app/bsky/feed/getRepostedBy.ts", "../src/client/types/app/bsky/feed/getTimeline.ts", "../src/client/types/app/bsky/graph/getFollowers.ts", "../src/client/types/app/bsky/graph/getFollows.ts", "../src/client/types/app/bsky/notification/getCount.ts", "../src/client/types/app/bsky/notification/list.ts", "../src/client/types/app/bsky/notification/updateSeen.ts", "../src/client/types/app/bsky/actor/profile.ts", "../src/client/types/app/bsky/feed/like.ts", "../src/client/types/app/bsky/feed/mediaEmbed.ts", "../src/client/types/app/bsky/feed/post.ts", "../src/client/types/app/bsky/feed/repost.ts", "../src/client/types/app/bsky/graph/follow.ts", "../src/client/types/app/bsky/graph/invite.ts", "../src/client/types/app/bsky/graph/inviteAccept.ts", "../src/client/types/app/bsky/system/declaration.ts", "../src/client/index.ts", "../src/session.ts"], + "sourcesContent": [null, null, null, null, null, null, null, null, null, null, null, null, null, null, "'use strict';\n\n// do not edit .js files directly - edit src/index.jst\n\n\n\nmodule.exports = function equal(a, b) {\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n\n for (i = length; i-- !== 0;) {\n var key = keys[i];\n\n if (!equal(a[key], b[key])) return false;\n }\n\n return true;\n }\n\n // true if both NaN, false otherwise\n return a!==a && b!==b;\n};\n", "'use strict';\n\nvar traverse = module.exports = function (schema, opts, cb) {\n // Legacy support for v0.3.1 and earlier.\n if (typeof opts == 'function') {\n cb = opts;\n opts = {};\n }\n\n cb = opts.cb || cb;\n var pre = (typeof cb == 'function') ? cb : cb.pre || function() {};\n var post = cb.post || function() {};\n\n _traverse(opts, pre, post, schema, '', schema);\n};\n\n\ntraverse.keywords = {\n additionalItems: true,\n items: true,\n contains: true,\n additionalProperties: true,\n propertyNames: true,\n not: true,\n if: true,\n then: true,\n else: true\n};\n\ntraverse.arrayKeywords = {\n items: true,\n allOf: true,\n anyOf: true,\n oneOf: true\n};\n\ntraverse.propsKeywords = {\n $defs: true,\n definitions: true,\n properties: true,\n patternProperties: true,\n dependencies: true\n};\n\ntraverse.skipKeywords = {\n default: true,\n enum: true,\n const: true,\n required: true,\n maximum: true,\n minimum: true,\n exclusiveMaximum: true,\n exclusiveMinimum: true,\n multipleOf: true,\n maxLength: true,\n minLength: true,\n pattern: true,\n format: true,\n maxItems: true,\n minItems: true,\n uniqueItems: true,\n maxProperties: true,\n minProperties: true\n};\n\n\nfunction _traverse(opts, pre, post, schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex) {\n if (schema && typeof schema == 'object' && !Array.isArray(schema)) {\n pre(schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex);\n for (var key in schema) {\n var sch = schema[key];\n if (Array.isArray(sch)) {\n if (key in traverse.arrayKeywords) {\n for (var i=0; i = {\n\tscheme : \"urn:uuid\",\n\n\tparse : function (urnComponents:URNComponents, options:URIOptions):UUIDComponents {\n\t\tconst uuidComponents = urnComponents as UUIDComponents;\n\t\tuuidComponents.uuid = uuidComponents.nss;\n\t\tuuidComponents.nss = undefined;\n\n\t\tif (!options.tolerant && (!uuidComponents.uuid || !uuidComponents.uuid.match(UUID))) {\n\t\t\tuuidComponents.error = uuidComponents.error || \"UUID is not valid.\";\n\t\t}\n\n\t\treturn uuidComponents;\n\t},\n\n\tserialize : function (uuidComponents:UUIDComponents, options:URIOptions):URNComponents {\n\t\tconst urnComponents = uuidComponents as URNComponents;\n\t\t//normalize UUID\n\t\turnComponents.nss = (uuidComponents.uuid || \"\").toLowerCase();\n\t\treturn urnComponents;\n\t},\n};\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\nimport { pctEncChar, SCHEMES } from \"../uri\";\n\nexport interface URNComponents extends URIComponents {\n\tnid?:string;\n\tnss?:string;\n}\n\nexport interface URNOptions extends URIOptions {\n\tnid?:string;\n}\n\nconst NID$ = \"(?:[0-9A-Za-z][0-9A-Za-z\\\\-]{1,31})\";\nconst PCT_ENCODED$ = \"(?:\\\\%[0-9A-Fa-f]{2})\";\nconst TRANS$$ = \"[0-9A-Za-z\\\\(\\\\)\\\\+\\\\,\\\\-\\\\.\\\\:\\\\=\\\\@\\\\;\\\\$\\\\_\\\\!\\\\*\\\\'\\\\/\\\\?\\\\#]\";\nconst NSS$ = \"(?:(?:\" + PCT_ENCODED$ + \"|\" + TRANS$$ + \")+)\";\nconst URN_SCHEME = new RegExp(\"^urn\\\\:(\" + NID$ + \")$\");\nconst URN_PATH = new RegExp(\"^(\" + NID$ + \")\\\\:(\" + NSS$ + \")$\");\nconst URN_PARSE = /^([^\\:]+)\\:(.*)/;\nconst URN_EXCLUDED = /[\\x00-\\x20\\\\\\\"\\&\\<\\>\\[\\]\\^\\`\\{\\|\\}\\~\\x7F-\\xFF]/g;\n\n//RFC 2141\nconst handler:URISchemeHandler = {\n\tscheme : \"urn\",\n\n\tparse : function (components:URIComponents, options:URNOptions):URNComponents {\n\t\tconst matches = components.path && components.path.match(URN_PARSE);\n\t\tlet urnComponents = components as URNComponents;\n\n\t\tif (matches) {\n\t\t\tconst scheme = options.scheme || urnComponents.scheme || \"urn\";\n\t\t\tconst nid = matches[1].toLowerCase();\n\t\t\tconst nss = matches[2];\n\t\t\tconst urnScheme = `${scheme}:${options.nid || nid}`;\n\t\t\tconst schemeHandler = SCHEMES[urnScheme];\n\n\t\t\turnComponents.nid = nid;\n\t\t\turnComponents.nss = nss;\n\t\t\turnComponents.path = undefined;\n\n\t\t\tif (schemeHandler) {\n\t\t\t\turnComponents = schemeHandler.parse(urnComponents, options) as URNComponents;\n\t\t\t}\n\t\t} else {\n\t\t\turnComponents.error = urnComponents.error || \"URN can not be parsed.\";\n\t\t}\n\n\t\treturn urnComponents;\n\t},\n\n\tserialize : function (urnComponents:URNComponents, options:URNOptions):URIComponents {\n\t\tconst scheme = options.scheme || urnComponents.scheme || \"urn\";\n\t\tconst nid = urnComponents.nid;\n\t\tconst urnScheme = `${scheme}:${options.nid || nid}`;\n\t\tconst schemeHandler = SCHEMES[urnScheme];\n\n\t\tif (schemeHandler) {\n\t\t\turnComponents = schemeHandler.serialize(urnComponents, options) as URNComponents;\n\t\t}\n\n\t\tconst uriComponents = urnComponents as URIComponents;\n\t\tconst nss = urnComponents.nss;\n\t\turiComponents.path = `${nid || options.nid}:${nss}`;\n\n\t\treturn uriComponents;\n\t},\n};\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\nimport { pctEncChar, pctDecChars, unescapeComponent } from \"../uri\";\nimport punycode from \"punycode\";\nimport { merge, subexp, toUpperCase, toArray } from \"../util\";\n\nexport interface MailtoHeaders {\n\t[hfname:string]:string\n}\n\nexport interface MailtoComponents extends URIComponents {\n\tto:Array,\n\theaders?:MailtoHeaders,\n\tsubject?:string,\n\tbody?:string\n}\n\nconst O:MailtoHeaders = {};\nconst isIRI = true;\n\n//RFC 3986\nconst UNRESERVED$$ = \"[A-Za-z0-9\\\\-\\\\.\\\\_\\\\~\" + (isIRI ? \"\\\\xA0-\\\\u200D\\\\u2010-\\\\u2029\\\\u202F-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFEF\" : \"\") + \"]\";\nconst HEXDIG$$ = \"[0-9A-Fa-f]\"; //case-insensitive\nconst PCT_ENCODED$ = subexp(subexp(\"%[EFef]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%[89A-Fa-f]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%\" + HEXDIG$$ + HEXDIG$$)); //expanded\n\n//RFC 5322, except these symbols as per RFC 6068: @ : / ? # [ ] & ; =\n//const ATEXT$$ = \"[A-Za-z0-9\\\\!\\\\#\\\\$\\\\%\\\\&\\\\'\\\\*\\\\+\\\\-\\\\/\\\\=\\\\?\\\\^\\\\_\\\\`\\\\{\\\\|\\\\}\\\\~]\";\n//const WSP$$ = \"[\\\\x20\\\\x09]\";\n//const OBS_QTEXT$$ = \"[\\\\x01-\\\\x08\\\\x0B\\\\x0C\\\\x0E-\\\\x1F\\\\x7F]\"; //(%d1-8 / %d11-12 / %d14-31 / %d127)\n//const QTEXT$$ = merge(\"[\\\\x21\\\\x23-\\\\x5B\\\\x5D-\\\\x7E]\", OBS_QTEXT$$); //%d33 / %d35-91 / %d93-126 / obs-qtext\n//const VCHAR$$ = \"[\\\\x21-\\\\x7E]\";\n//const WSP$$ = \"[\\\\x20\\\\x09]\";\n//const OBS_QP$ = subexp(\"\\\\\\\\\" + merge(\"[\\\\x00\\\\x0D\\\\x0A]\", OBS_QTEXT$$)); //%d0 / CR / LF / obs-qtext\n//const FWS$ = subexp(subexp(WSP$$ + \"*\" + \"\\\\x0D\\\\x0A\") + \"?\" + WSP$$ + \"+\");\n//const QUOTED_PAIR$ = subexp(subexp(\"\\\\\\\\\" + subexp(VCHAR$$ + \"|\" + WSP$$)) + \"|\" + OBS_QP$);\n//const QUOTED_STRING$ = subexp('\\\\\"' + subexp(FWS$ + \"?\" + QCONTENT$) + \"*\" + FWS$ + \"?\" + '\\\\\"');\nconst ATEXT$$ = \"[A-Za-z0-9\\\\!\\\\$\\\\%\\\\'\\\\*\\\\+\\\\-\\\\^\\\\_\\\\`\\\\{\\\\|\\\\}\\\\~]\";\nconst QTEXT$$ = \"[\\\\!\\\\$\\\\%\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\-\\\\.0-9\\\\<\\\\>A-Z\\\\x5E-\\\\x7E]\";\nconst VCHAR$$ = merge(QTEXT$$, \"[\\\\\\\"\\\\\\\\]\");\nconst DOT_ATOM_TEXT$ = subexp(ATEXT$$ + \"+\" + subexp(\"\\\\.\" + ATEXT$$ + \"+\") + \"*\");\nconst QUOTED_PAIR$ = subexp(\"\\\\\\\\\" + VCHAR$$);\nconst QCONTENT$ = subexp(QTEXT$$ + \"|\" + QUOTED_PAIR$);\nconst QUOTED_STRING$ = subexp('\\\\\"' + QCONTENT$ + \"*\" + '\\\\\"');\n\n//RFC 6068\nconst DTEXT_NO_OBS$$ = \"[\\\\x21-\\\\x5A\\\\x5E-\\\\x7E]\"; //%d33-90 / %d94-126\nconst SOME_DELIMS$$ = \"[\\\\!\\\\$\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\;\\\\:\\\\@]\";\nconst QCHAR$ = subexp(UNRESERVED$$ + \"|\" + PCT_ENCODED$ + \"|\" + SOME_DELIMS$$);\nconst DOMAIN$ = subexp(DOT_ATOM_TEXT$ + \"|\" + \"\\\\[\" + DTEXT_NO_OBS$$ + \"*\" + \"\\\\]\");\nconst LOCAL_PART$ = subexp(DOT_ATOM_TEXT$ + \"|\" + QUOTED_STRING$);\nconst ADDR_SPEC$ = subexp(LOCAL_PART$ + \"\\\\@\" + DOMAIN$);\nconst TO$ = subexp(ADDR_SPEC$ + subexp(\"\\\\,\" + ADDR_SPEC$) + \"*\");\nconst HFNAME$ = subexp(QCHAR$ + \"*\");\nconst HFVALUE$ = HFNAME$;\nconst HFIELD$ = subexp(HFNAME$ + \"\\\\=\" + HFVALUE$);\nconst HFIELDS2$ = subexp(HFIELD$ + subexp(\"\\\\&\" + HFIELD$) + \"*\");\nconst HFIELDS$ = subexp(\"\\\\?\" + HFIELDS2$);\nconst MAILTO_URI = new RegExp(\"^mailto\\\\:\" + TO$ + \"?\" + HFIELDS$ + \"?$\");\n\nconst UNRESERVED = new RegExp(UNRESERVED$$, \"g\");\nconst PCT_ENCODED = new RegExp(PCT_ENCODED$, \"g\");\nconst NOT_LOCAL_PART = new RegExp(merge(\"[^]\", ATEXT$$, \"[\\\\.]\", '[\\\\\"]', VCHAR$$), \"g\");\nconst NOT_DOMAIN = new RegExp(merge(\"[^]\", ATEXT$$, \"[\\\\.]\", \"[\\\\[]\", DTEXT_NO_OBS$$, \"[\\\\]]\"), \"g\");\nconst NOT_HFNAME = new RegExp(merge(\"[^]\", UNRESERVED$$, SOME_DELIMS$$), \"g\");\nconst NOT_HFVALUE = NOT_HFNAME;\nconst TO = new RegExp(\"^\" + TO$ + \"$\");\nconst HFIELDS = new RegExp(\"^\" + HFIELDS2$ + \"$\");\n\nfunction decodeUnreserved(str:string):string {\n\tconst decStr = pctDecChars(str);\n\treturn (!decStr.match(UNRESERVED) ? str : decStr);\n}\n\nconst handler:URISchemeHandler = {\n\tscheme : \"mailto\",\n\n\tparse : function (components:URIComponents, options:URIOptions):MailtoComponents {\n\t\tconst mailtoComponents = components as MailtoComponents;\n\t\tconst to = mailtoComponents.to = (mailtoComponents.path ? mailtoComponents.path.split(\",\") : []);\n\t\tmailtoComponents.path = undefined;\n\n\t\tif (mailtoComponents.query) {\n\t\t\tlet unknownHeaders = false\n\t\t\tconst headers:MailtoHeaders = {};\n\t\t\tconst hfields = mailtoComponents.query.split(\"&\");\n\n\t\t\tfor (let x = 0, xl = hfields.length; x < xl; ++x) {\n\t\t\t\tconst hfield = hfields[x].split(\"=\");\n\n\t\t\t\tswitch (hfield[0]) {\n\t\t\t\t\tcase \"to\":\n\t\t\t\t\t\tconst toAddrs = hfield[1].split(\",\");\n\t\t\t\t\t\tfor (let x = 0, xl = toAddrs.length; x < xl; ++x) {\n\t\t\t\t\t\t\tto.push(toAddrs[x]);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"subject\":\n\t\t\t\t\t\tmailtoComponents.subject = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"body\":\n\t\t\t\t\t\tmailtoComponents.body = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tunknownHeaders = true;\n\t\t\t\t\t\theaders[unescapeComponent(hfield[0], options)] = unescapeComponent(hfield[1], options);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (unknownHeaders) mailtoComponents.headers = headers;\n\t\t}\n\n\t\tmailtoComponents.query = undefined;\n\n\t\tfor (let x = 0, xl = to.length; x < xl; ++x) {\n\t\t\tconst addr = to[x].split(\"@\");\n\n\t\t\taddr[0] = unescapeComponent(addr[0]);\n\n\t\t\tif (!options.unicodeSupport) {\n\t\t\t\t//convert Unicode IDN -> ASCII IDN\n\t\t\t\ttry {\n\t\t\t\t\taddr[1] = punycode.toASCII(unescapeComponent(addr[1], options).toLowerCase());\n\t\t\t\t} catch (e) {\n\t\t\t\t\tmailtoComponents.error = mailtoComponents.error || \"Email address's domain name can not be converted to ASCII via punycode: \" + e;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\taddr[1] = unescapeComponent(addr[1], options).toLowerCase();\n\t\t\t}\n\n\t\t\tto[x] = addr.join(\"@\");\n\t\t}\n\n\t\treturn mailtoComponents;\n\t},\n\n\tserialize : function (mailtoComponents:MailtoComponents, options:URIOptions):URIComponents {\n\t\tconst components = mailtoComponents as URIComponents;\n\t\tconst to = toArray(mailtoComponents.to);\n\t\tif (to) {\n\t\t\tfor (let x = 0, xl = to.length; x < xl; ++x) {\n\t\t\t\tconst toAddr = String(to[x]);\n\t\t\t\tconst atIdx = toAddr.lastIndexOf(\"@\");\n\t\t\t\tconst localPart = (toAddr.slice(0, atIdx)).replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_LOCAL_PART, pctEncChar);\n\t\t\t\tlet domain = toAddr.slice(atIdx + 1);\n\n\t\t\t\t//convert IDN via punycode\n\t\t\t\ttry {\n\t\t\t\t\tdomain = (!options.iri ? punycode.toASCII(unescapeComponent(domain, options).toLowerCase()) : punycode.toUnicode(domain));\n\t\t\t\t} catch (e) {\n\t\t\t\t\tcomponents.error = components.error || \"Email address's domain name can not be converted to \" + (!options.iri ? \"ASCII\" : \"Unicode\") + \" via punycode: \" + e;\n\t\t\t\t}\n\n\t\t\t\tto[x] = localPart + \"@\" + domain;\n\t\t\t}\n\n\t\t\tcomponents.path = to.join(\",\");\n\t\t}\n\n\t\tconst headers = mailtoComponents.headers = mailtoComponents.headers || {};\n\n\t\tif (mailtoComponents.subject) headers[\"subject\"] = mailtoComponents.subject;\n\t\tif (mailtoComponents.body) headers[\"body\"] = mailtoComponents.body;\n\n\t\tconst fields = [];\n\t\tfor (const name in headers) {\n\t\t\tif (headers[name] !== O[name]) {\n\t\t\t\tfields.push(\n\t\t\t\t\tname.replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFNAME, pctEncChar) +\n\t\t\t\t\t\"=\" +\n\t\t\t\t\theaders[name].replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFVALUE, pctEncChar)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tif (fields.length) {\n\t\t\tcomponents.query = fields.join(\"&\");\n\t\t}\n\n\t\treturn components;\n\t}\n}\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\nimport ws from \"./ws\";\n\nconst handler:URISchemeHandler = {\n\tscheme : \"wss\",\n\tdomainHost : ws.domainHost,\n\tparse : ws.parse,\n\tserialize : ws.serialize\n}\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\n\nexport interface WSComponents extends URIComponents {\n\tresourceName?: string;\n\tsecure?: boolean;\n}\n\nfunction isSecure(wsComponents:WSComponents):boolean {\n\treturn typeof wsComponents.secure === 'boolean' ? wsComponents.secure : String(wsComponents.scheme).toLowerCase() === \"wss\";\n}\n\n//RFC 6455\nconst handler:URISchemeHandler = {\n\tscheme : \"ws\",\n\n\tdomainHost : true,\n\n\tparse : function (components:URIComponents, options:URIOptions):WSComponents {\n\t\tconst wsComponents = components as WSComponents;\n\n\t\t//indicate if the secure flag is set\n\t\twsComponents.secure = isSecure(wsComponents);\n\n\t\t//construct resouce name\n\t\twsComponents.resourceName = (wsComponents.path || '/') + (wsComponents.query ? '?' + wsComponents.query : '');\n\t\twsComponents.path = undefined;\n\t\twsComponents.query = undefined;\n\n\t\treturn wsComponents;\n\t},\n\n\tserialize : function (wsComponents:WSComponents, options:URIOptions):URIComponents {\n\t\t//normalize the default port\n\t\tif (wsComponents.port === (isSecure(wsComponents) ? 443 : 80) || wsComponents.port === \"\") {\n\t\t\twsComponents.port = undefined;\n\t\t}\n\n\t\t//ensure scheme matches secure flag\n\t\tif (typeof wsComponents.secure === 'boolean') {\n\t\t\twsComponents.scheme = (wsComponents.secure ? 'wss' : 'ws');\n\t\t\twsComponents.secure = undefined;\n\t\t}\n\n\t\t//reconstruct path from resource name\n\t\tif (wsComponents.resourceName) {\n\t\t\tconst [path, query] = wsComponents.resourceName.split('?');\n\t\t\twsComponents.path = (path && path !== '/' ? path : undefined);\n\t\t\twsComponents.query = query;\n\t\t\twsComponents.resourceName = undefined;\n\t\t}\n\n\t\t//forbid fragment component\n\t\twsComponents.fragment = undefined;\n\n\t\treturn wsComponents;\n\t}\n};\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\nimport http from \"./http\";\n\nconst handler:URISchemeHandler = {\n\tscheme : \"https\",\n\tdomainHost : http.domainHost,\n\tparse : http.parse,\n\tserialize : http.serialize\n}\n\nexport default handler;", "import { URISchemeHandler, URIComponents, URIOptions } from \"../uri\";\n\nconst handler:URISchemeHandler = {\n\tscheme : \"http\",\n\n\tdomainHost : true,\n\n\tparse : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\t//report missing host\n\t\tif (!components.host) {\n\t\t\tcomponents.error = components.error || \"HTTP URIs must have a host.\";\n\t\t}\n\n\t\treturn components;\n\t},\n\n\tserialize : function (components:URIComponents, options:URIOptions):URIComponents {\n\t\tconst secure = String(components.scheme).toLowerCase() === \"https\";\n\n\t\t//normalize the default port\n\t\tif (components.port === (secure ? 443 : 80) || components.port === \"\") {\n\t\t\tcomponents.port = undefined;\n\t\t}\n\t\t\n\t\t//normalize the empty path\n\t\tif (!components.path) {\n\t\t\tcomponents.path = \"/\";\n\t\t}\n\n\t\t//NOTE: We do not parse query strings for HTTP URIs\n\t\t//as WWW Form Url Encoded query strings are part of the HTML4+ spec,\n\t\t//and not the HTTP spec.\n\n\t\treturn components;\n\t}\n};\n\nexport default handler;", "/**\n * URI.js\n *\n * @fileoverview An RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for JavaScript.\n * @author Gary Court\n * @see http://github.com/garycourt/uri-js\n */\n\n/**\n * Copyright 2011 Gary Court. All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without modification, are\n * permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this list of\n * conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice, this list\n * of conditions and the following disclaimer in the documentation and/or other materials\n * provided with the distribution.\n *\n * THIS SOFTWARE IS PROVIDED BY GARY COURT ``AS IS'' AND ANY EXPRESS OR IMPLIED\n * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND\n * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GARY COURT OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\n * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF\n * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * The views and conclusions contained in the software and documentation are those of the\n * authors and should not be interpreted as representing official policies, either expressed\n * or implied, of Gary Court.\n */\n\nimport URI_PROTOCOL from \"./regexps-uri\";\nimport IRI_PROTOCOL from \"./regexps-iri\";\nimport punycode from \"punycode\";\nimport { toUpperCase, typeOf, assign } from \"./util\";\n\nexport interface URIComponents {\n\tscheme?:string;\n\tuserinfo?:string;\n\thost?:string;\n\tport?:number|string;\n\tpath?:string;\n\tquery?:string;\n\tfragment?:string;\n\treference?:string;\n\terror?:string;\n}\n\nexport interface URIOptions {\n\tscheme?:string;\n\treference?:string;\n\ttolerant?:boolean;\n\tabsolutePath?:boolean;\n\tiri?:boolean;\n\tunicodeSupport?:boolean;\n\tdomainHost?:boolean;\n}\n\nexport interface URISchemeHandler {\n\tscheme:string;\n\tparse(components:ParentComponents, options:Options):Components;\n\tserialize(components:Components, options:Options):ParentComponents;\n\tunicodeSupport?:boolean;\n\tdomainHost?:boolean;\n\tabsolutePath?:boolean;\n}\n\nexport interface URIRegExps {\n\tNOT_SCHEME : RegExp,\n\tNOT_USERINFO : RegExp,\n\tNOT_HOST : RegExp,\n\tNOT_PATH : RegExp,\n\tNOT_PATH_NOSCHEME : RegExp,\n\tNOT_QUERY : RegExp,\n\tNOT_FRAGMENT : RegExp,\n\tESCAPE : RegExp,\n\tUNRESERVED : RegExp,\n\tOTHER_CHARS : RegExp,\n\tPCT_ENCODED : RegExp,\n\tIPV4ADDRESS : RegExp,\n\tIPV6ADDRESS : RegExp,\n}\n\nexport const SCHEMES:{[scheme:string]:URISchemeHandler} = {};\n\nexport function pctEncChar(chr:string):string {\n\tconst c = chr.charCodeAt(0);\n\tlet e:string;\n\n\tif (c < 16) e = \"%0\" + c.toString(16).toUpperCase();\n\telse if (c < 128) e = \"%\" + c.toString(16).toUpperCase();\n\telse if (c < 2048) e = \"%\" + ((c >> 6) | 192).toString(16).toUpperCase() + \"%\" + ((c & 63) | 128).toString(16).toUpperCase();\n\telse e = \"%\" + ((c >> 12) | 224).toString(16).toUpperCase() + \"%\" + (((c >> 6) & 63) | 128).toString(16).toUpperCase() + \"%\" + ((c & 63) | 128).toString(16).toUpperCase();\n\n\treturn e;\n}\n\nexport function pctDecChars(str:string):string {\n\tlet newStr = \"\";\n\tlet i = 0;\n\tconst il = str.length;\n\n\twhile (i < il) {\n\t\tconst c = parseInt(str.substr(i + 1, 2), 16);\n\n\t\tif (c < 128) {\n\t\t\tnewStr += String.fromCharCode(c);\n\t\t\ti += 3;\n\t\t}\n\t\telse if (c >= 194 && c < 224) {\n\t\t\tif ((il - i) >= 6) {\n\t\t\t\tconst c2 = parseInt(str.substr(i + 4, 2), 16);\n\t\t\t\tnewStr += String.fromCharCode(((c & 31) << 6) | (c2 & 63));\n\t\t\t} else {\n\t\t\t\tnewStr += str.substr(i, 6);\n\t\t\t}\n\t\t\ti += 6;\n\t\t}\n\t\telse if (c >= 224) {\n\t\t\tif ((il - i) >= 9) {\n\t\t\t\tconst c2 = parseInt(str.substr(i + 4, 2), 16);\n\t\t\t\tconst c3 = parseInt(str.substr(i + 7, 2), 16);\n\t\t\t\tnewStr += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));\n\t\t\t} else {\n\t\t\t\tnewStr += str.substr(i, 9);\n\t\t\t}\n\t\t\ti += 9;\n\t\t}\n\t\telse {\n\t\t\tnewStr += str.substr(i, 3);\n\t\t\ti += 3;\n\t\t}\n\t}\n\n\treturn newStr;\n}\n\nfunction _normalizeComponentEncoding(components:URIComponents, protocol:URIRegExps) {\n\tfunction decodeUnreserved(str:string):string {\n\t\tconst decStr = pctDecChars(str);\n\t\treturn (!decStr.match(protocol.UNRESERVED) ? str : decStr);\n\t}\n\n\tif (components.scheme) components.scheme = String(components.scheme).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_SCHEME, \"\");\n\tif (components.userinfo !== undefined) components.userinfo = String(components.userinfo).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_USERINFO, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.host !== undefined) components.host = String(components.host).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_HOST, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.path !== undefined) components.path = String(components.path).replace(protocol.PCT_ENCODED, decodeUnreserved).replace((components.scheme ? protocol.NOT_PATH : protocol.NOT_PATH_NOSCHEME), pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.query !== undefined) components.query = String(components.query).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_QUERY, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\tif (components.fragment !== undefined) components.fragment = String(components.fragment).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_FRAGMENT, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n\n\treturn components;\n};\n\nfunction _stripLeadingZeros(str:string):string {\n\treturn str.replace(/^0*(.*)/, \"$1\") || \"0\";\n}\n\nfunction _normalizeIPv4(host:string, protocol:URIRegExps):string {\n\tconst matches = host.match(protocol.IPV4ADDRESS) || [];\n\tconst [, address] = matches;\n\t\n\tif (address) {\n\t\treturn address.split(\".\").map(_stripLeadingZeros).join(\".\");\n\t} else {\n\t\treturn host;\n\t}\n}\n\nfunction _normalizeIPv6(host:string, protocol:URIRegExps):string {\n\tconst matches = host.match(protocol.IPV6ADDRESS) || [];\n\tconst [, address, zone] = matches;\n\n\tif (address) {\n\t\tconst [last, first] = address.toLowerCase().split('::').reverse();\n\t\tconst firstFields = first ? first.split(\":\").map(_stripLeadingZeros) : [];\n\t\tconst lastFields = last.split(\":\").map(_stripLeadingZeros);\n\t\tconst isLastFieldIPv4Address = protocol.IPV4ADDRESS.test(lastFields[lastFields.length - 1]);\n\t\tconst fieldCount = isLastFieldIPv4Address ? 7 : 8;\n\t\tconst lastFieldsStart = lastFields.length - fieldCount;\n\t\tconst fields = Array(fieldCount);\n\n\t\tfor (let x = 0; x < fieldCount; ++x) {\n\t\t\tfields[x] = firstFields[x] || lastFields[lastFieldsStart + x] || '';\n\t\t}\n\n\t\tif (isLastFieldIPv4Address) {\n\t\t\tfields[fieldCount - 1] = _normalizeIPv4(fields[fieldCount - 1], protocol);\n\t\t}\n\n\t\tconst allZeroFields = fields.reduce>((acc, field, index) => {\n\t\t\tif (!field || field === \"0\") {\n\t\t\t\tconst lastLongest = acc[acc.length - 1];\n\t\t\t\tif (lastLongest && lastLongest.index + lastLongest.length === index) {\n\t\t\t\t\tlastLongest.length++;\n\t\t\t\t} else {\n\t\t\t\t\tacc.push({ index, length : 1 });\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn acc;\n\t\t}, []);\n\n\t\tconst longestZeroFields = allZeroFields.sort((a, b) => b.length - a.length)[0];\n\n\t\tlet newHost:string;\n\t\tif (longestZeroFields && longestZeroFields.length > 1) {\n\t\t\tconst newFirst = fields.slice(0, longestZeroFields.index) ;\n\t\t\tconst newLast = fields.slice(longestZeroFields.index + longestZeroFields.length);\n\t\t\tnewHost = newFirst.join(\":\") + \"::\" + newLast.join(\":\");\n\t\t} else {\n\t\t\tnewHost = fields.join(\":\");\n\t\t}\n\n\t\tif (zone) {\n\t\t\tnewHost += \"%\" + zone;\n\t\t}\n\n\t\treturn newHost;\n\t} else {\n\t\treturn host;\n\t}\n}\n\nconst URI_PARSE = /^(?:([^:\\/?#]+):)?(?:\\/\\/((?:([^\\/?#@]*)@)?(\\[[^\\/?#\\]]+\\]|[^\\/?#:]*)(?:\\:(\\d*))?))?([^?#]*)(?:\\?([^#]*))?(?:#((?:.|\\n|\\r)*))?/i;\nconst NO_MATCH_IS_UNDEFINED = ((\"\").match(/(){0}/))[1] === undefined;\n\nexport function parse(uriString:string, options:URIOptions = {}):URIComponents {\n\tconst components:URIComponents = {};\n\tconst protocol = (options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL);\n\n\tif (options.reference === \"suffix\") uriString = (options.scheme ? options.scheme + \":\" : \"\") + \"//\" + uriString;\n\n\tconst matches = uriString.match(URI_PARSE);\n\n\tif (matches) {\n\t\tif (NO_MATCH_IS_UNDEFINED) {\n\t\t\t//store each component\n\t\t\tcomponents.scheme = matches[1];\n\t\t\tcomponents.userinfo = matches[3];\n\t\t\tcomponents.host = matches[4];\n\t\t\tcomponents.port = parseInt(matches[5], 10);\n\t\t\tcomponents.path = matches[6] || \"\";\n\t\t\tcomponents.query = matches[7];\n\t\t\tcomponents.fragment = matches[8];\n\n\t\t\t//fix port number\n\t\t\tif (isNaN(components.port)) {\n\t\t\t\tcomponents.port = matches[5];\n\t\t\t}\n\t\t} else { //IE FIX for improper RegExp matching\n\t\t\t//store each component\n\t\t\tcomponents.scheme = matches[1] || undefined;\n\t\t\tcomponents.userinfo = (uriString.indexOf(\"@\") !== -1 ? matches[3] : undefined);\n\t\t\tcomponents.host = (uriString.indexOf(\"//\") !== -1 ? matches[4] : undefined);\n\t\t\tcomponents.port = parseInt(matches[5], 10);\n\t\t\tcomponents.path = matches[6] || \"\";\n\t\t\tcomponents.query = (uriString.indexOf(\"?\") !== -1 ? matches[7] : undefined);\n\t\t\tcomponents.fragment = (uriString.indexOf(\"#\") !== -1 ? matches[8] : undefined);\n\n\t\t\t//fix port number\n\t\t\tif (isNaN(components.port)) {\n\t\t\t\tcomponents.port = (uriString.match(/\\/\\/(?:.|\\n)*\\:(?:\\/|\\?|\\#|$)/) ? matches[4] : undefined);\n\t\t\t}\n\t\t}\n\n\t\tif (components.host) {\n\t\t\t//normalize IP hosts\n\t\t\tcomponents.host = _normalizeIPv6(_normalizeIPv4(components.host, protocol), protocol);\n\t\t}\n\n\t\t//determine reference type\n\t\tif (components.scheme === undefined && components.userinfo === undefined && components.host === undefined && components.port === undefined && !components.path && components.query === undefined) {\n\t\t\tcomponents.reference = \"same-document\";\n\t\t} else if (components.scheme === undefined) {\n\t\t\tcomponents.reference = \"relative\";\n\t\t} else if (components.fragment === undefined) {\n\t\t\tcomponents.reference = \"absolute\";\n\t\t} else {\n\t\t\tcomponents.reference = \"uri\";\n\t\t}\n\n\t\t//check for reference errors\n\t\tif (options.reference && options.reference !== \"suffix\" && options.reference !== components.reference) {\n\t\t\tcomponents.error = components.error || \"URI is not a \" + options.reference + \" reference.\";\n\t\t}\n\n\t\t//find scheme handler\n\t\tconst schemeHandler = SCHEMES[(options.scheme || components.scheme || \"\").toLowerCase()];\n\n\t\t//check if scheme can't handle IRIs\n\t\tif (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport)) {\n\t\t\t//if host component is a domain name\n\t\t\tif (components.host && (options.domainHost || (schemeHandler && schemeHandler.domainHost))) {\n\t\t\t\t//convert Unicode IDN -> ASCII IDN\n\t\t\t\ttry {\n\t\t\t\t\tcomponents.host = punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase());\n\t\t\t\t} catch (e) {\n\t\t\t\t\tcomponents.error = components.error || \"Host's domain name can not be converted to ASCII via punycode: \" + e;\n\t\t\t\t}\n\t\t\t}\n\t\t\t//convert IRI -> URI\n\t\t\t_normalizeComponentEncoding(components, URI_PROTOCOL);\n\t\t} else {\n\t\t\t//normalize encodings\n\t\t\t_normalizeComponentEncoding(components, protocol);\n\t\t}\n\n\t\t//perform scheme specific parsing\n\t\tif (schemeHandler && schemeHandler.parse) {\n\t\t\tschemeHandler.parse(components, options);\n\t\t}\n\t} else {\n\t\tcomponents.error = components.error || \"URI can not be parsed.\";\n\t}\n\n\treturn components;\n};\n\nfunction _recomposeAuthority(components:URIComponents, options:URIOptions):string|undefined {\n\tconst protocol = (options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL);\n\tconst uriTokens:Array = [];\n\n\tif (components.userinfo !== undefined) {\n\t\turiTokens.push(components.userinfo);\n\t\turiTokens.push(\"@\");\n\t}\n\n\tif (components.host !== undefined) {\n\t\t//normalize IP hosts, add brackets and escape zone separator for IPv6\n\t\turiTokens.push(_normalizeIPv6(_normalizeIPv4(String(components.host), protocol), protocol).replace(protocol.IPV6ADDRESS, (_, $1, $2) => \"[\" + $1 + ($2 ? \"%25\" + $2 : \"\") + \"]\"));\n\t}\n\n\tif (typeof components.port === \"number\" || typeof components.port === \"string\") {\n\t\turiTokens.push(\":\");\n\t\turiTokens.push(String(components.port));\n\t}\n\n\treturn uriTokens.length ? uriTokens.join(\"\") : undefined;\n};\n\nconst RDS1 = /^\\.\\.?\\//;\nconst RDS2 = /^\\/\\.(\\/|$)/;\nconst RDS3 = /^\\/\\.\\.(\\/|$)/;\nconst RDS4 = /^\\.\\.?$/;\nconst RDS5 = /^\\/?(?:.|\\n)*?(?=\\/|$)/;\n\nexport function removeDotSegments(input:string):string {\n\tconst output:Array = [];\n\n\twhile (input.length) {\n\t\tif (input.match(RDS1)) {\n\t\t\tinput = input.replace(RDS1, \"\");\n\t\t} else if (input.match(RDS2)) {\n\t\t\tinput = input.replace(RDS2, \"/\");\n\t\t} else if (input.match(RDS3)) {\n\t\t\tinput = input.replace(RDS3, \"/\");\n\t\t\toutput.pop();\n\t\t} else if (input === \".\" || input === \"..\") {\n\t\t\tinput = \"\";\n\t\t} else {\n\t\t\tconst im = input.match(RDS5);\n\t\t\tif (im) {\n\t\t\t\tconst s = im[0];\n\t\t\t\tinput = input.slice(s.length);\n\t\t\t\toutput.push(s);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unexpected dot segment condition\");\n\t\t\t}\n\t\t}\n\t}\n\n\treturn output.join(\"\");\n};\n\nexport function serialize(components:URIComponents, options:URIOptions = {}):string {\n\tconst protocol = (options.iri ? IRI_PROTOCOL : URI_PROTOCOL);\n\tconst uriTokens:Array = [];\n\n\t//find scheme handler\n\tconst schemeHandler = SCHEMES[(options.scheme || components.scheme || \"\").toLowerCase()];\n\n\t//perform scheme specific serialization\n\tif (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(components, options);\n\n\tif (components.host) {\n\t\t//if host component is an IPv6 address\n\t\tif (protocol.IPV6ADDRESS.test(components.host)) {\n\t\t\t//TODO: normalize IPv6 address as per RFC 5952\n\t\t}\n\n\t\t//if host component is a domain name\n\t\telse if (options.domainHost || (schemeHandler && schemeHandler.domainHost)) {\n\t\t\t//convert IDN via punycode\n\t\t\ttry {\n\t\t\t\tcomponents.host = (!options.iri ? punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase()) : punycode.toUnicode(components.host));\n\t\t\t} catch (e) {\n\t\t\t\tcomponents.error = components.error || \"Host's domain name can not be converted to \" + (!options.iri ? \"ASCII\" : \"Unicode\") + \" via punycode: \" + e;\n\t\t\t}\n\t\t}\n\t}\n\n\t//normalize encoding\n\t_normalizeComponentEncoding(components, protocol);\n\n\tif (options.reference !== \"suffix\" && components.scheme) {\n\t\turiTokens.push(components.scheme);\n\t\turiTokens.push(\":\");\n\t}\n\n\tconst authority = _recomposeAuthority(components, options);\n\tif (authority !== undefined) {\n\t\tif (options.reference !== \"suffix\") {\n\t\t\turiTokens.push(\"//\");\n\t\t}\n\n\t\turiTokens.push(authority);\n\n\t\tif (components.path && components.path.charAt(0) !== \"/\") {\n\t\t\turiTokens.push(\"/\");\n\t\t}\n\t}\n\n\tif (components.path !== undefined) {\n\t\tlet s = components.path;\n\n\t\tif (!options.absolutePath && (!schemeHandler || !schemeHandler.absolutePath)) {\n\t\t\ts = removeDotSegments(s);\n\t\t}\n\n\t\tif (authority === undefined) {\n\t\t\ts = s.replace(/^\\/\\//, \"/%2F\"); //don't allow the path to start with \"//\"\n\t\t}\n\n\t\turiTokens.push(s);\n\t}\n\n\tif (components.query !== undefined) {\n\t\turiTokens.push(\"?\");\n\t\turiTokens.push(components.query);\n\t}\n\n\tif (components.fragment !== undefined) {\n\t\turiTokens.push(\"#\");\n\t\turiTokens.push(components.fragment);\n\t}\n\n\treturn uriTokens.join(\"\"); //merge tokens into a string\n};\n\nexport function resolveComponents(base:URIComponents, relative:URIComponents, options:URIOptions = {}, skipNormalization?:boolean):URIComponents {\n\tconst target:URIComponents = {};\n\n\tif (!skipNormalization) {\n\t\tbase = parse(serialize(base, options), options); //normalize base components\n\t\trelative = parse(serialize(relative, options), options); //normalize relative components\n\t}\n\toptions = options || {};\n\n\tif (!options.tolerant && relative.scheme) {\n\t\ttarget.scheme = relative.scheme;\n\t\t//target.authority = relative.authority;\n\t\ttarget.userinfo = relative.userinfo;\n\t\ttarget.host = relative.host;\n\t\ttarget.port = relative.port;\n\t\ttarget.path = removeDotSegments(relative.path || \"\");\n\t\ttarget.query = relative.query;\n\t} else {\n\t\tif (relative.userinfo !== undefined || relative.host !== undefined || relative.port !== undefined) {\n\t\t\t//target.authority = relative.authority;\n\t\t\ttarget.userinfo = relative.userinfo;\n\t\t\ttarget.host = relative.host;\n\t\t\ttarget.port = relative.port;\n\t\t\ttarget.path = removeDotSegments(relative.path || \"\");\n\t\t\ttarget.query = relative.query;\n\t\t} else {\n\t\t\tif (!relative.path) {\n\t\t\t\ttarget.path = base.path;\n\t\t\t\tif (relative.query !== undefined) {\n\t\t\t\t\ttarget.query = relative.query;\n\t\t\t\t} else {\n\t\t\t\t\ttarget.query = base.query;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (relative.path.charAt(0) === \"/\") {\n\t\t\t\t\ttarget.path = removeDotSegments(relative.path);\n\t\t\t\t} else {\n\t\t\t\t\tif ((base.userinfo !== undefined || base.host !== undefined || base.port !== undefined) && !base.path) {\n\t\t\t\t\t\ttarget.path = \"/\" + relative.path;\n\t\t\t\t\t} else if (!base.path) {\n\t\t\t\t\t\ttarget.path = relative.path;\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttarget.path = base.path.slice(0, base.path.lastIndexOf(\"/\") + 1) + relative.path;\n\t\t\t\t\t}\n\t\t\t\t\ttarget.path = removeDotSegments(target.path);\n\t\t\t\t}\n\t\t\t\ttarget.query = relative.query;\n\t\t\t}\n\t\t\t//target.authority = base.authority;\n\t\t\ttarget.userinfo = base.userinfo;\n\t\t\ttarget.host = base.host;\n\t\t\ttarget.port = base.port;\n\t\t}\n\t\ttarget.scheme = base.scheme;\n\t}\n\n\ttarget.fragment = relative.fragment;\n\n\treturn target;\n};\n\nexport function resolve(baseURI:string, relativeURI:string, options?:URIOptions):string {\n\tconst schemelessOptions = assign({ scheme : 'null' }, options);\n\treturn serialize(resolveComponents(parse(baseURI, schemelessOptions), parse(relativeURI, schemelessOptions), schemelessOptions, true), schemelessOptions);\n};\n\nexport function normalize(uri:string, options?:URIOptions):string;\nexport function normalize(uri:URIComponents, options?:URIOptions):URIComponents;\nexport function normalize(uri:any, options?:URIOptions):any {\n\tif (typeof uri === \"string\") {\n\t\turi = serialize(parse(uri, options), options);\n\t} else if (typeOf(uri) === \"object\") {\n\t\turi = parse(serialize(uri, options), options);\n\t}\n\n\treturn uri;\n};\n\nexport function equal(uriA:string, uriB:string, options?: URIOptions):boolean;\nexport function equal(uriA:URIComponents, uriB:URIComponents, options?:URIOptions):boolean;\nexport function equal(uriA:any, uriB:any, options?:URIOptions):boolean {\n\tif (typeof uriA === \"string\") {\n\t\turiA = serialize(parse(uriA, options), options);\n\t} else if (typeOf(uriA) === \"object\") {\n\t\turiA = serialize(uriA, options);\n\t}\n\n\tif (typeof uriB === \"string\") {\n\t\turiB = serialize(parse(uriB, options), options);\n\t} else if (typeOf(uriB) === \"object\") {\n\t\turiB = serialize(uriB, options);\n\t}\n\n\treturn uriA === uriB;\n};\n\nexport function escapeComponent(str:string, options?:URIOptions):string {\n\treturn str && str.toString().replace((!options || !options.iri ? URI_PROTOCOL.ESCAPE : IRI_PROTOCOL.ESCAPE), pctEncChar);\n};\n\nexport function unescapeComponent(str:string, options?:URIOptions):string {\n\treturn str && str.toString().replace((!options || !options.iri ? URI_PROTOCOL.PCT_ENCODED : IRI_PROTOCOL.PCT_ENCODED), pctDecChars);\n};\n", "'use strict';\n\n/** Highest positive signed 32-bit float value */\nconst maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\n\n/** Bootstring parameters */\nconst base = 36;\nconst tMin = 1;\nconst tMax = 26;\nconst skew = 38;\nconst damp = 700;\nconst initialBias = 72;\nconst initialN = 128; // 0x80\nconst delimiter = '-'; // '\\x2D'\n\n/** Regular expressions */\nconst regexPunycode = /^xn--/;\nconst regexNonASCII = /[^\\0-\\x7E]/; // non-ASCII chars\nconst regexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\n\n/** Error messages */\nconst errors = {\n\t'overflow': 'Overflow: input needs wider integers to process',\n\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t'invalid-input': 'Invalid input'\n};\n\n/** Convenience shortcuts */\nconst baseMinusTMin = base - tMin;\nconst floor = Math.floor;\nconst stringFromCharCode = String.fromCharCode;\n\n/*--------------------------------------------------------------------------*/\n\n/**\n * A generic error utility function.\n * @private\n * @param {String} type The error type.\n * @returns {Error} Throws a `RangeError` with the applicable error message.\n */\nfunction error(type) {\n\tthrow new RangeError(errors[type]);\n}\n\n/**\n * A generic `Array#map` utility function.\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} callback The function that gets called for every array\n * item.\n * @returns {Array} A new array of values returned by the callback function.\n */\nfunction map(array, fn) {\n\tconst result = [];\n\tlet length = array.length;\n\twhile (length--) {\n\t\tresult[length] = fn(array[length]);\n\t}\n\treturn result;\n}\n\n/**\n * A simple `Array#map`-like wrapper to work with domain name strings or email\n * addresses.\n * @private\n * @param {String} domain The domain name or email address.\n * @param {Function} callback The function that gets called for every\n * character.\n * @returns {Array} A new string of characters returned by the callback\n * function.\n */\nfunction mapDomain(string, fn) {\n\tconst parts = string.split('@');\n\tlet result = '';\n\tif (parts.length > 1) {\n\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t// the local part (i.e. everything up to `@`) intact.\n\t\tresult = parts[0] + '@';\n\t\tstring = parts[1];\n\t}\n\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\tstring = string.replace(regexSeparators, '\\x2E');\n\tconst labels = string.split('.');\n\tconst encoded = map(labels, fn).join('.');\n\treturn result + encoded;\n}\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n * @see `punycode.ucs2.encode`\n * @see \n * @memberOf punycode.ucs2\n * @name decode\n * @param {String} string The Unicode input string (UCS-2).\n * @returns {Array} The new array of code points.\n */\nfunction ucs2decode(string) {\n\tconst output = [];\n\tlet counter = 0;\n\tconst length = string.length;\n\twhile (counter < length) {\n\t\tconst value = string.charCodeAt(counter++);\n\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t// It's a high surrogate, and there is a next character.\n\t\t\tconst extra = string.charCodeAt(counter++);\n\t\t\tif ((extra & 0xFC00) == 0xDC00) { // Low surrogate.\n\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t} else {\n\t\t\t\t// It's an unmatched surrogate; only append this code unit, in case the\n\t\t\t\t// next code unit is the high surrogate of a surrogate pair.\n\t\t\t\toutput.push(value);\n\t\t\t\tcounter--;\n\t\t\t}\n\t\t} else {\n\t\t\toutput.push(value);\n\t\t}\n\t}\n\treturn output;\n}\n\n/**\n * Creates a string based on an array of numeric code points.\n * @see `punycode.ucs2.decode`\n * @memberOf punycode.ucs2\n * @name encode\n * @param {Array} codePoints The array of numeric code points.\n * @returns {String} The new Unicode string (UCS-2).\n */\nconst ucs2encode = array => String.fromCodePoint(...array);\n\n/**\n * Converts a basic code point into a digit/integer.\n * @see `digitToBasic()`\n * @private\n * @param {Number} codePoint The basic numeric code point value.\n * @returns {Number} The numeric value of a basic code point (for use in\n * representing integers) in the range `0` to `base - 1`, or `base` if\n * the code point does not represent a value.\n */\nconst basicToDigit = function(codePoint) {\n\tif (codePoint - 0x30 < 0x0A) {\n\t\treturn codePoint - 0x16;\n\t}\n\tif (codePoint - 0x41 < 0x1A) {\n\t\treturn codePoint - 0x41;\n\t}\n\tif (codePoint - 0x61 < 0x1A) {\n\t\treturn codePoint - 0x61;\n\t}\n\treturn base;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n * @see `basicToDigit()`\n * @private\n * @param {Number} digit The numeric value of a basic code point.\n * @returns {Number} The basic code point whose value (when used for\n * representing integers) is `digit`, which needs to be in the range\n * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n * used; else, the lowercase form is used. The behavior is undefined\n * if `flag` is non-zero and `digit` has no uppercase form.\n */\nconst digitToBasic = function(digit, flag) {\n\t// 0..25 map to ASCII a..z or A..Z\n\t// 26..35 map to ASCII 0..9\n\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n * @private\n */\nconst adapt = function(delta, numPoints, firstTime) {\n\tlet k = 0;\n\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\tdelta += floor(delta / numPoints);\n\tfor (/* no initialization */; delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\tdelta = floor(delta / baseMinusTMin);\n\t}\n\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n * symbols.\n * @memberOf punycode\n * @param {String} input The Punycode string of ASCII-only symbols.\n * @returns {String} The resulting string of Unicode symbols.\n */\nconst decode = function(input) {\n\t// Don't use UCS-2.\n\tconst output = [];\n\tconst inputLength = input.length;\n\tlet i = 0;\n\tlet n = initialN;\n\tlet bias = initialBias;\n\n\t// Handle the basic code points: let `basic` be the number of input code\n\t// points before the last delimiter, or `0` if there is none, then copy\n\t// the first basic code points to the output.\n\n\tlet basic = input.lastIndexOf(delimiter);\n\tif (basic < 0) {\n\t\tbasic = 0;\n\t}\n\n\tfor (let j = 0; j < basic; ++j) {\n\t\t// if it's not a basic code point\n\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\terror('not-basic');\n\t\t}\n\t\toutput.push(input.charCodeAt(j));\n\t}\n\n\t// Main decoding loop: start just after the last delimiter if any basic code\n\t// points were copied; start at the beginning otherwise.\n\n\tfor (let index = basic > 0 ? basic + 1 : 0; index < inputLength; /* no final expression */) {\n\n\t\t// `index` is the index of the next character to be consumed.\n\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t// which gets added to `i`. The overflow checking is easier\n\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t// value at the end to obtain `delta`.\n\t\tlet oldi = i;\n\t\tfor (let w = 1, k = base; /* no condition */; k += base) {\n\n\t\t\tif (index >= inputLength) {\n\t\t\t\terror('invalid-input');\n\t\t\t}\n\n\t\t\tconst digit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\ti += digit * w;\n\t\t\tconst t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\n\t\t\tif (digit < t) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tconst baseMinusT = base - t;\n\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\n\t\t\tw *= baseMinusT;\n\n\t\t}\n\n\t\tconst out = output.length + 1;\n\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t// incrementing `n` each time, so we'll fix that now:\n\t\tif (floor(i / out) > maxInt - n) {\n\t\t\terror('overflow');\n\t\t}\n\n\t\tn += floor(i / out);\n\t\ti %= out;\n\n\t\t// Insert `n` at position `i` of the output.\n\t\toutput.splice(i++, 0, n);\n\n\t}\n\n\treturn String.fromCodePoint(...output);\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n * @memberOf punycode\n * @param {String} input The string of Unicode symbols.\n * @returns {String} The resulting Punycode string of ASCII-only symbols.\n */\nconst encode = function(input) {\n\tconst output = [];\n\n\t// Convert the input in UCS-2 to an array of Unicode code points.\n\tinput = ucs2decode(input);\n\n\t// Cache the length.\n\tlet inputLength = input.length;\n\n\t// Initialize the state.\n\tlet n = initialN;\n\tlet delta = 0;\n\tlet bias = initialBias;\n\n\t// Handle the basic code points.\n\tfor (const currentValue of input) {\n\t\tif (currentValue < 0x80) {\n\t\t\toutput.push(stringFromCharCode(currentValue));\n\t\t}\n\t}\n\n\tlet basicLength = output.length;\n\tlet handledCPCount = basicLength;\n\n\t// `handledCPCount` is the number of code points that have been handled;\n\t// `basicLength` is the number of basic code points.\n\n\t// Finish the basic string with a delimiter unless it's empty.\n\tif (basicLength) {\n\t\toutput.push(delimiter);\n\t}\n\n\t// Main encoding loop:\n\twhile (handledCPCount < inputLength) {\n\n\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t// larger one:\n\t\tlet m = maxInt;\n\t\tfor (const currentValue of input) {\n\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\tm = currentValue;\n\t\t\t}\n\t\t}\n\n\t\t// Increase `delta` enough to advance the decoder's state to ,\n\t\t// but guard against overflow.\n\t\tconst handledCPCountPlusOne = handledCPCount + 1;\n\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\terror('overflow');\n\t\t}\n\n\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\tn = m;\n\n\t\tfor (const currentValue of input) {\n\t\t\tif (currentValue < n && ++delta > maxInt) {\n\t\t\t\terror('overflow');\n\t\t\t}\n\t\t\tif (currentValue == n) {\n\t\t\t\t// Represent delta as a generalized variable-length integer.\n\t\t\t\tlet q = delta;\n\t\t\t\tfor (let k = base; /* no condition */; k += base) {\n\t\t\t\t\tconst t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);\n\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tconst qMinusT = q - t;\n\t\t\t\t\tconst baseMinusT = base - t;\n\t\t\t\t\toutput.push(\n\t\t\t\t\t\tstringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0))\n\t\t\t\t\t);\n\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t}\n\n\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\tdelta = 0;\n\t\t\t\t++handledCPCount;\n\t\t\t}\n\t\t}\n\n\t\t++delta;\n\t\t++n;\n\n\t}\n\treturn output.join('');\n};\n\n/**\n * Converts a Punycode string representing a domain name or an email address\n * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n * it doesn't matter if you call it on a string that has already been\n * converted to Unicode.\n * @memberOf punycode\n * @param {String} input The Punycoded domain name or email address to\n * convert to Unicode.\n * @returns {String} The Unicode representation of the given Punycode\n * string.\n */\nconst toUnicode = function(input) {\n\treturn mapDomain(input, function(string) {\n\t\treturn regexPunycode.test(string)\n\t\t\t? decode(string.slice(4).toLowerCase())\n\t\t\t: string;\n\t});\n};\n\n/**\n * Converts a Unicode string representing a domain name or an email address to\n * Punycode. Only the non-ASCII parts of the domain name will be converted,\n * i.e. it doesn't matter if you call it with a domain that's already in\n * ASCII.\n * @memberOf punycode\n * @param {String} input The domain name or email address to convert, as a\n * Unicode string.\n * @returns {String} The Punycode representation of the given domain name or\n * email address.\n */\nconst toASCII = function(input) {\n\treturn mapDomain(input, function(string) {\n\t\treturn regexNonASCII.test(string)\n\t\t\t? 'xn--' + encode(string)\n\t\t\t: string;\n\t});\n};\n\n/*--------------------------------------------------------------------------*/\n\n/** Define the public API */\nconst punycode = {\n\t/**\n\t * A string representing the current Punycode.js version number.\n\t * @memberOf punycode\n\t * @type String\n\t */\n\t'version': '2.1.0',\n\t/**\n\t * An object of methods to convert from JavaScript's internal character\n\t * representation (UCS-2) to Unicode code points, and back.\n\t * @see \n\t * @memberOf punycode\n\t * @type Object\n\t */\n\t'ucs2': {\n\t\t'decode': ucs2decode,\n\t\t'encode': ucs2encode\n\t},\n\t'decode': decode,\n\t'encode': encode,\n\t'toASCII': toASCII,\n\t'toUnicode': toUnicode\n};\n\nexport default punycode;\n", "import { URIRegExps } from \"./uri\";\nimport { buildExps } from \"./regexps-uri\";\n\nexport default buildExps(true);\n", "import { URIRegExps } from \"./uri\";\nimport { merge, subexp } from \"./util\";\n\nexport function buildExps(isIRI:boolean):URIRegExps {\n\tconst\n\t\tALPHA$$ = \"[A-Za-z]\",\n\t\tCR$ = \"[\\\\x0D]\",\n\t\tDIGIT$$ = \"[0-9]\",\n\t\tDQUOTE$$ = \"[\\\\x22]\",\n\t\tHEXDIG$$ = merge(DIGIT$$, \"[A-Fa-f]\"), //case-insensitive\n\t\tLF$$ = \"[\\\\x0A]\",\n\t\tSP$$ = \"[\\\\x20]\",\n\t\tPCT_ENCODED$ = subexp(subexp(\"%[EFef]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%[89A-Fa-f]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%\" + HEXDIG$$ + HEXDIG$$)), //expanded\n\t\tGEN_DELIMS$$ = \"[\\\\:\\\\/\\\\?\\\\#\\\\[\\\\]\\\\@]\",\n\t\tSUB_DELIMS$$ = \"[\\\\!\\\\$\\\\&\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\;\\\\=]\",\n\t\tRESERVED$$ = merge(GEN_DELIMS$$, SUB_DELIMS$$),\n\t\tUCSCHAR$$ = isIRI ? \"[\\\\xA0-\\\\u200D\\\\u2010-\\\\u2029\\\\u202F-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFEF]\" : \"[]\", //subset, excludes bidi control characters\n\t\tIPRIVATE$$ = isIRI ? \"[\\\\uE000-\\\\uF8FF]\" : \"[]\", //subset\n\t\tUNRESERVED$$ = merge(ALPHA$$, DIGIT$$, \"[\\\\-\\\\.\\\\_\\\\~]\", UCSCHAR$$),\n\t\tSCHEME$ = subexp(ALPHA$$ + merge(ALPHA$$, DIGIT$$, \"[\\\\+\\\\-\\\\.]\") + \"*\"),\n\t\tUSERINFO$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:]\")) + \"*\"),\n\t\tDEC_OCTET$ = subexp(subexp(\"25[0-5]\") + \"|\" + subexp(\"2[0-4]\" + DIGIT$$) + \"|\" + subexp(\"1\" + DIGIT$$ + DIGIT$$) + \"|\" + subexp(\"[1-9]\" + DIGIT$$) + \"|\" + DIGIT$$),\n\t\tDEC_OCTET_RELAXED$ = subexp(subexp(\"25[0-5]\") + \"|\" + subexp(\"2[0-4]\" + DIGIT$$) + \"|\" + subexp(\"1\" + DIGIT$$ + DIGIT$$) + \"|\" + subexp(\"0?[1-9]\" + DIGIT$$) + \"|0?0?\" + DIGIT$$), //relaxed parsing rules\n\t\tIPV4ADDRESS$ = subexp(DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$),\n\t\tH16$ = subexp(HEXDIG$$ + \"{1,4}\"),\n\t\tLS32$ = subexp(subexp(H16$ + \"\\\\:\" + H16$) + \"|\" + IPV4ADDRESS$),\n\t\tIPV6ADDRESS1$ = subexp( subexp(H16$ + \"\\\\:\") + \"{6}\" + LS32$), // 6( h16 \":\" ) ls32\n\t\tIPV6ADDRESS2$ = subexp( \"\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{5}\" + LS32$), // \"::\" 5( h16 \":\" ) ls32\n\t\tIPV6ADDRESS3$ = subexp(subexp( H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{4}\" + LS32$), //[ h16 ] \"::\" 4( h16 \":\" ) ls32\n\t\tIPV6ADDRESS4$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,1}\" + H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{3}\" + LS32$), //[ *1( h16 \":\" ) h16 ] \"::\" 3( h16 \":\" ) ls32\n\t\tIPV6ADDRESS5$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,2}\" + H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{2}\" + LS32$), //[ *2( h16 \":\" ) h16 ] \"::\" 2( h16 \":\" ) ls32\n\t\tIPV6ADDRESS6$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,3}\" + H16$) + \"?\\\\:\\\\:\" + H16$ + \"\\\\:\" + LS32$), //[ *3( h16 \":\" ) h16 ] \"::\" h16 \":\" ls32\n\t\tIPV6ADDRESS7$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,4}\" + H16$) + \"?\\\\:\\\\:\" + LS32$), //[ *4( h16 \":\" ) h16 ] \"::\" ls32\n\t\tIPV6ADDRESS8$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,5}\" + H16$) + \"?\\\\:\\\\:\" + H16$ ), //[ *5( h16 \":\" ) h16 ] \"::\" h16\n\t\tIPV6ADDRESS9$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,6}\" + H16$) + \"?\\\\:\\\\:\" ), //[ *6( h16 \":\" ) h16 ] \"::\"\n\t\tIPV6ADDRESS$ = subexp([IPV6ADDRESS1$, IPV6ADDRESS2$, IPV6ADDRESS3$, IPV6ADDRESS4$, IPV6ADDRESS5$, IPV6ADDRESS6$, IPV6ADDRESS7$, IPV6ADDRESS8$, IPV6ADDRESS9$].join(\"|\")),\n\t\tZONEID$ = subexp(subexp(UNRESERVED$$ + \"|\" + PCT_ENCODED$) + \"+\"), //RFC 6874\n\t\tIPV6ADDRZ$ = subexp(IPV6ADDRESS$ + \"\\\\%25\" + ZONEID$), //RFC 6874\n\t\tIPV6ADDRZ_RELAXED$ = subexp(IPV6ADDRESS$ + subexp(\"\\\\%25|\\\\%(?!\" + HEXDIG$$ + \"{2})\") + ZONEID$), //RFC 6874, with relaxed parsing rules\n\t\tIPVFUTURE$ = subexp(\"[vV]\" + HEXDIG$$ + \"+\\\\.\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:]\") + \"+\"),\n\t\tIP_LITERAL$ = subexp(\"\\\\[\" + subexp(IPV6ADDRZ_RELAXED$ + \"|\" + IPV6ADDRESS$ + \"|\" + IPVFUTURE$) + \"\\\\]\"), //RFC 6874\n\t\tREG_NAME$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$)) + \"*\"),\n\t\tHOST$ = subexp(IP_LITERAL$ + \"|\" + IPV4ADDRESS$ + \"(?!\" + REG_NAME$ + \")\" + \"|\" + REG_NAME$),\n\t\tPORT$ = subexp(DIGIT$$ + \"*\"),\n\t\tAUTHORITY$ = subexp(subexp(USERINFO$ + \"@\") + \"?\" + HOST$ + subexp(\"\\\\:\" + PORT$) + \"?\"),\n\t\tPCHAR$ = subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@]\")),\n\t\tSEGMENT$ = subexp(PCHAR$ + \"*\"),\n\t\tSEGMENT_NZ$ = subexp(PCHAR$ + \"+\"),\n\t\tSEGMENT_NZ_NC$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\@]\")) + \"+\"),\n\t\tPATH_ABEMPTY$ = subexp(subexp(\"\\\\/\" + SEGMENT$) + \"*\"),\n\t\tPATH_ABSOLUTE$ = subexp(\"\\\\/\" + subexp(SEGMENT_NZ$ + PATH_ABEMPTY$) + \"?\"), //simplified\n\t\tPATH_NOSCHEME$ = subexp(SEGMENT_NZ_NC$ + PATH_ABEMPTY$), //simplified\n\t\tPATH_ROOTLESS$ = subexp(SEGMENT_NZ$ + PATH_ABEMPTY$), //simplified\n\t\tPATH_EMPTY$ = \"(?!\" + PCHAR$ + \")\",\n\t\tPATH$ = subexp(PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$),\n\t\tQUERY$ = subexp(subexp(PCHAR$ + \"|\" + merge(\"[\\\\/\\\\?]\", IPRIVATE$$)) + \"*\"),\n\t\tFRAGMENT$ = subexp(subexp(PCHAR$ + \"|[\\\\/\\\\?]\") + \"*\"),\n\t\tHIER_PART$ = subexp(subexp(\"\\\\/\\\\/\" + AUTHORITY$ + PATH_ABEMPTY$) + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$),\n\t\tURI$ = subexp(SCHEME$ + \"\\\\:\" + HIER_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\" + subexp(\"\\\\#\" + FRAGMENT$) + \"?\"),\n\t\tRELATIVE_PART$ = subexp(subexp(\"\\\\/\\\\/\" + AUTHORITY$ + PATH_ABEMPTY$) + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_EMPTY$),\n\t\tRELATIVE$ = subexp(RELATIVE_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\" + subexp(\"\\\\#\" + FRAGMENT$) + \"?\"),\n\t\tURI_REFERENCE$ = subexp(URI$ + \"|\" + RELATIVE$),\n\t\tABSOLUTE_URI$ = subexp(SCHEME$ + \"\\\\:\" + HIER_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\"),\n\n\t\tGENERIC_REF$ = \"^(\" + SCHEME$ + \")\\\\:\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tRELATIVE_REF$ = \"^(){0}\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tABSOLUTE_REF$ = \"^(\" + SCHEME$ + \")\\\\:\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?$\",\n\t\tSAMEDOC_REF$ = \"^\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n\t\tAUTHORITY_REF$ = \"^\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?$\"\n\t;\n\n\treturn {\n\t\tNOT_SCHEME : new RegExp(merge(\"[^]\", ALPHA$$, DIGIT$$, \"[\\\\+\\\\-\\\\.]\"), \"g\"),\n\t\tNOT_USERINFO : new RegExp(merge(\"[^\\\\%\\\\:]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_HOST : new RegExp(merge(\"[^\\\\%\\\\[\\\\]\\\\:]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_PATH : new RegExp(merge(\"[^\\\\%\\\\/\\\\:\\\\@]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_PATH_NOSCHEME : new RegExp(merge(\"[^\\\\%\\\\/\\\\@]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tNOT_QUERY : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@\\\\/\\\\?]\", IPRIVATE$$), \"g\"),\n\t\tNOT_FRAGMENT : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@\\\\/\\\\?]\"), \"g\"),\n\t\tESCAPE : new RegExp(merge(\"[^]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n\t\tUNRESERVED : new RegExp(UNRESERVED$$, \"g\"),\n\t\tOTHER_CHARS : new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, RESERVED$$), \"g\"),\n\t\tPCT_ENCODED : new RegExp(PCT_ENCODED$, \"g\"),\n\t\tIPV4ADDRESS : new RegExp(\"^(\" + IPV4ADDRESS$ + \")$\"),\n\t\tIPV6ADDRESS : new RegExp(\"^\\\\[?(\" + IPV6ADDRESS$ + \")\" + subexp(subexp(\"\\\\%25|\\\\%(?!\" + HEXDIG$$ + \"{2})\") + \"(\" + ZONEID$ + \")\") + \"?\\\\]?$\") //RFC 6874, with relaxed parsing rules\n\t};\n}\n\nexport default buildExps(false);\n", "export function merge(...sets:Array):string {\n\tif (sets.length > 1) {\n\t\tsets[0] = sets[0].slice(0, -1);\n\t\tconst xl = sets.length - 1;\n\t\tfor (let x = 1; x < xl; ++x) {\n\t\t\tsets[x] = sets[x].slice(1, -1);\n\t\t}\n\t\tsets[xl] = sets[xl].slice(1);\n\t\treturn sets.join('');\n\t} else {\n\t\treturn sets[0];\n\t}\n}\n\nexport function subexp(str:string):string {\n\treturn \"(?:\" + str + \")\";\n}\n\nexport function typeOf(o:any):string {\n\treturn o === undefined ? \"undefined\" : (o === null ? \"null\" : Object.prototype.toString.call(o).split(\" \").pop().split(\"]\").shift().toLowerCase());\n}\n\nexport function toUpperCase(str:string):string {\n\treturn str.toUpperCase();\n}\n\nexport function toArray(obj:any):Array {\n\treturn obj !== undefined && obj !== null ? (obj instanceof Array ? obj : (typeof obj.length !== \"number\" || obj.split || obj.setInterval || obj.call ? [obj] : Array.prototype.slice.call(obj))) : [];\n}\n\n\nexport function assign(target: object, source: any): any {\n\tconst obj = target as any;\n\tif (source) {\n\t\tfor (const key in source) {\n\t\t\tobj[key] = source[key];\n\t\t}\n\t}\n\treturn obj;\n}", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, "export * from './client'\nexport { default } from './client'\nexport * from './session'\nexport { default as sessionClient } from './session'\n", "var util;\n(function (util) {\n util.assertEqual = (val) => val;\n function assertIs(_arg) { }\n util.assertIs = assertIs;\n function assertNever(_x) {\n throw new Error();\n }\n util.assertNever = assertNever;\n util.arrayToEnum = (items) => {\n const obj = {};\n for (const item of items) {\n obj[item] = item;\n }\n return obj;\n };\n util.getValidEnumValues = (obj) => {\n const validKeys = util.objectKeys(obj).filter((k) => typeof obj[obj[k]] !== \"number\");\n const filtered = {};\n for (const k of validKeys) {\n filtered[k] = obj[k];\n }\n return util.objectValues(filtered);\n };\n util.objectValues = (obj) => {\n return util.objectKeys(obj).map(function (e) {\n return obj[e];\n });\n };\n util.objectKeys = typeof Object.keys === \"function\" // eslint-disable-line ban/ban\n ? (obj) => Object.keys(obj) // eslint-disable-line ban/ban\n : (object) => {\n const keys = [];\n for (const key in object) {\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n keys.push(key);\n }\n }\n return keys;\n };\n util.find = (arr, checker) => {\n for (const item of arr) {\n if (checker(item))\n return item;\n }\n return undefined;\n };\n util.isInteger = typeof Number.isInteger === \"function\"\n ? (val) => Number.isInteger(val) // eslint-disable-line ban/ban\n : (val) => typeof val === \"number\" && isFinite(val) && Math.floor(val) === val;\n function joinValues(array, separator = \" | \") {\n return array\n .map((val) => (typeof val === \"string\" ? `'${val}'` : val))\n .join(separator);\n }\n util.joinValues = joinValues;\n util.jsonStringifyReplacer = (_, value) => {\n if (typeof value === \"bigint\") {\n return value.toString();\n }\n return value;\n };\n})(util || (util = {}));\nconst ZodParsedType = util.arrayToEnum([\n \"string\",\n \"nan\",\n \"number\",\n \"integer\",\n \"float\",\n \"boolean\",\n \"date\",\n \"bigint\",\n \"symbol\",\n \"function\",\n \"undefined\",\n \"null\",\n \"array\",\n \"object\",\n \"unknown\",\n \"promise\",\n \"void\",\n \"never\",\n \"map\",\n \"set\",\n]);\nconst getParsedType = (data) => {\n const t = typeof data;\n switch (t) {\n case \"undefined\":\n return ZodParsedType.undefined;\n case \"string\":\n return ZodParsedType.string;\n case \"number\":\n return isNaN(data) ? ZodParsedType.nan : ZodParsedType.number;\n case \"boolean\":\n return ZodParsedType.boolean;\n case \"function\":\n return ZodParsedType.function;\n case \"bigint\":\n return ZodParsedType.bigint;\n case \"object\":\n if (Array.isArray(data)) {\n return ZodParsedType.array;\n }\n if (data === null) {\n return ZodParsedType.null;\n }\n if (data.then &&\n typeof data.then === \"function\" &&\n data.catch &&\n typeof data.catch === \"function\") {\n return ZodParsedType.promise;\n }\n if (typeof Map !== \"undefined\" && data instanceof Map) {\n return ZodParsedType.map;\n }\n if (typeof Set !== \"undefined\" && data instanceof Set) {\n return ZodParsedType.set;\n }\n if (typeof Date !== \"undefined\" && data instanceof Date) {\n return ZodParsedType.date;\n }\n return ZodParsedType.object;\n default:\n return ZodParsedType.unknown;\n }\n};\n\nconst ZodIssueCode = util.arrayToEnum([\n \"invalid_type\",\n \"invalid_literal\",\n \"custom\",\n \"invalid_union\",\n \"invalid_union_discriminator\",\n \"invalid_enum_value\",\n \"unrecognized_keys\",\n \"invalid_arguments\",\n \"invalid_return_type\",\n \"invalid_date\",\n \"invalid_string\",\n \"too_small\",\n \"too_big\",\n \"invalid_intersection_types\",\n \"not_multiple_of\",\n]);\nconst quotelessJson = (obj) => {\n const json = JSON.stringify(obj, null, 2);\n return json.replace(/\"([^\"]+)\":/g, \"$1:\");\n};\nclass ZodError extends Error {\n constructor(issues) {\n super();\n this.issues = [];\n this.addIssue = (sub) => {\n this.issues = [...this.issues, sub];\n };\n this.addIssues = (subs = []) => {\n this.issues = [...this.issues, ...subs];\n };\n const actualProto = new.target.prototype;\n if (Object.setPrototypeOf) {\n // eslint-disable-next-line ban/ban\n Object.setPrototypeOf(this, actualProto);\n }\n else {\n this.__proto__ = actualProto;\n }\n this.name = \"ZodError\";\n this.issues = issues;\n }\n get errors() {\n return this.issues;\n }\n format(_mapper) {\n const mapper = _mapper ||\n function (issue) {\n return issue.message;\n };\n const fieldErrors = { _errors: [] };\n const processError = (error) => {\n for (const issue of error.issues) {\n if (issue.code === \"invalid_union\") {\n issue.unionErrors.map(processError);\n }\n else if (issue.code === \"invalid_return_type\") {\n processError(issue.returnTypeError);\n }\n else if (issue.code === \"invalid_arguments\") {\n processError(issue.argumentsError);\n }\n else if (issue.path.length === 0) {\n fieldErrors._errors.push(mapper(issue));\n }\n else {\n let curr = fieldErrors;\n let i = 0;\n while (i < issue.path.length) {\n const el = issue.path[i];\n const terminal = i === issue.path.length - 1;\n if (!terminal) {\n curr[el] = curr[el] || { _errors: [] };\n // if (typeof el === \"string\") {\n // curr[el] = curr[el] || { _errors: [] };\n // } else if (typeof el === \"number\") {\n // const errorArray: any = [];\n // errorArray._errors = [];\n // curr[el] = curr[el] || errorArray;\n // }\n }\n else {\n curr[el] = curr[el] || { _errors: [] };\n curr[el]._errors.push(mapper(issue));\n }\n curr = curr[el];\n i++;\n }\n }\n }\n };\n processError(this);\n return fieldErrors;\n }\n toString() {\n return this.message;\n }\n get message() {\n return JSON.stringify(this.issues, util.jsonStringifyReplacer, 2);\n }\n get isEmpty() {\n return this.issues.length === 0;\n }\n flatten(mapper = (issue) => issue.message) {\n const fieldErrors = {};\n const formErrors = [];\n for (const sub of this.issues) {\n if (sub.path.length > 0) {\n fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];\n fieldErrors[sub.path[0]].push(mapper(sub));\n }\n else {\n formErrors.push(mapper(sub));\n }\n }\n return { formErrors, fieldErrors };\n }\n get formErrors() {\n return this.flatten();\n }\n}\nZodError.create = (issues) => {\n const error = new ZodError(issues);\n return error;\n};\n\nconst errorMap = (issue, _ctx) => {\n let message;\n switch (issue.code) {\n case ZodIssueCode.invalid_type:\n if (issue.received === ZodParsedType.undefined) {\n message = \"Required\";\n }\n else {\n message = `Expected ${issue.expected}, received ${issue.received}`;\n }\n break;\n case ZodIssueCode.invalid_literal:\n message = `Invalid literal value, expected ${JSON.stringify(issue.expected, util.jsonStringifyReplacer)}`;\n break;\n case ZodIssueCode.unrecognized_keys:\n message = `Unrecognized key(s) in object: ${util.joinValues(issue.keys, \", \")}`;\n break;\n case ZodIssueCode.invalid_union:\n message = `Invalid input`;\n break;\n case ZodIssueCode.invalid_union_discriminator:\n message = `Invalid discriminator value. Expected ${util.joinValues(issue.options)}`;\n break;\n case ZodIssueCode.invalid_enum_value:\n message = `Invalid enum value. Expected ${util.joinValues(issue.options)}, received '${issue.received}'`;\n break;\n case ZodIssueCode.invalid_arguments:\n message = `Invalid function arguments`;\n break;\n case ZodIssueCode.invalid_return_type:\n message = `Invalid function return type`;\n break;\n case ZodIssueCode.invalid_date:\n message = `Invalid date`;\n break;\n case ZodIssueCode.invalid_string:\n if (typeof issue.validation === \"object\") {\n if (\"startsWith\" in issue.validation) {\n message = `Invalid input: must start with \"${issue.validation.startsWith}\"`;\n }\n else if (\"endsWith\" in issue.validation) {\n message = `Invalid input: must end with \"${issue.validation.endsWith}\"`;\n }\n else {\n util.assertNever(issue.validation);\n }\n }\n else if (issue.validation !== \"regex\") {\n message = `Invalid ${issue.validation}`;\n }\n else {\n message = \"Invalid\";\n }\n break;\n case ZodIssueCode.too_small:\n if (issue.type === \"array\")\n message = `Array must contain ${issue.inclusive ? `at least` : `more than`} ${issue.minimum} element(s)`;\n else if (issue.type === \"string\")\n message = `String must contain ${issue.inclusive ? `at least` : `over`} ${issue.minimum} character(s)`;\n else if (issue.type === \"number\")\n message = `Number must be greater than ${issue.inclusive ? `or equal to ` : ``}${issue.minimum}`;\n else if (issue.type === \"date\")\n message = `Date must be greater than ${issue.inclusive ? `or equal to ` : ``}${new Date(issue.minimum)}`;\n else\n message = \"Invalid input\";\n break;\n case ZodIssueCode.too_big:\n if (issue.type === \"array\")\n message = `Array must contain ${issue.inclusive ? `at most` : `less than`} ${issue.maximum} element(s)`;\n else if (issue.type === \"string\")\n message = `String must contain ${issue.inclusive ? `at most` : `under`} ${issue.maximum} character(s)`;\n else if (issue.type === \"number\")\n message = `Number must be less than ${issue.inclusive ? `or equal to ` : ``}${issue.maximum}`;\n else if (issue.type === \"date\")\n message = `Date must be smaller than ${issue.inclusive ? `or equal to ` : ``}${new Date(issue.maximum)}`;\n else\n message = \"Invalid input\";\n break;\n case ZodIssueCode.custom:\n message = `Invalid input`;\n break;\n case ZodIssueCode.invalid_intersection_types:\n message = `Intersection results could not be merged`;\n break;\n case ZodIssueCode.not_multiple_of:\n message = `Number must be a multiple of ${issue.multipleOf}`;\n break;\n default:\n message = _ctx.defaultError;\n util.assertNever(issue);\n }\n return { message };\n};\n\nlet overrideErrorMap = errorMap;\nfunction setErrorMap(map) {\n overrideErrorMap = map;\n}\nfunction getErrorMap() {\n return overrideErrorMap;\n}\n\nconst makeIssue = (params) => {\n const { data, path, errorMaps, issueData } = params;\n const fullPath = [...path, ...(issueData.path || [])];\n const fullIssue = {\n ...issueData,\n path: fullPath,\n };\n let errorMessage = \"\";\n const maps = errorMaps\n .filter((m) => !!m)\n .slice()\n .reverse();\n for (const map of maps) {\n errorMessage = map(fullIssue, { data, defaultError: errorMessage }).message;\n }\n return {\n ...issueData,\n path: fullPath,\n message: issueData.message || errorMessage,\n };\n};\nconst EMPTY_PATH = [];\nfunction addIssueToContext(ctx, issueData) {\n const issue = makeIssue({\n issueData: issueData,\n data: ctx.data,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n });\n ctx.common.issues.push(issue);\n}\nclass ParseStatus {\n constructor() {\n this.value = \"valid\";\n }\n dirty() {\n if (this.value === \"valid\")\n this.value = \"dirty\";\n }\n abort() {\n if (this.value !== \"aborted\")\n this.value = \"aborted\";\n }\n static mergeArray(status, results) {\n const arrayValue = [];\n for (const s of results) {\n if (s.status === \"aborted\")\n return INVALID;\n if (s.status === \"dirty\")\n status.dirty();\n arrayValue.push(s.value);\n }\n return { status: status.value, value: arrayValue };\n }\n static async mergeObjectAsync(status, pairs) {\n const syncPairs = [];\n for (const pair of pairs) {\n syncPairs.push({\n key: await pair.key,\n value: await pair.value,\n });\n }\n return ParseStatus.mergeObjectSync(status, syncPairs);\n }\n static mergeObjectSync(status, pairs) {\n const finalObject = {};\n for (const pair of pairs) {\n const { key, value } = pair;\n if (key.status === \"aborted\")\n return INVALID;\n if (value.status === \"aborted\")\n return INVALID;\n if (key.status === \"dirty\")\n status.dirty();\n if (value.status === \"dirty\")\n status.dirty();\n if (typeof value.value !== \"undefined\" || pair.alwaysSet) {\n finalObject[key.value] = value.value;\n }\n }\n return { status: status.value, value: finalObject };\n }\n}\nconst INVALID = Object.freeze({\n status: \"aborted\",\n});\nconst DIRTY = (value) => ({ status: \"dirty\", value });\nconst OK = (value) => ({ status: \"valid\", value });\nconst isAborted = (x) => x.status === \"aborted\";\nconst isDirty = (x) => x.status === \"dirty\";\nconst isValid = (x) => x.status === \"valid\";\nconst isAsync = (x) => typeof Promise !== undefined && x instanceof Promise;\n\nvar errorUtil;\n(function (errorUtil) {\n errorUtil.errToObj = (message) => typeof message === \"string\" ? { message } : message || {};\n errorUtil.toString = (message) => typeof message === \"string\" ? message : message === null || message === void 0 ? void 0 : message.message;\n})(errorUtil || (errorUtil = {}));\n\nclass ParseInputLazyPath {\n constructor(parent, value, path, key) {\n this.parent = parent;\n this.data = value;\n this._path = path;\n this._key = key;\n }\n get path() {\n return this._path.concat(this._key);\n }\n}\nconst handleResult = (ctx, result) => {\n if (isValid(result)) {\n return { success: true, data: result.value };\n }\n else {\n if (!ctx.common.issues.length) {\n throw new Error(\"Validation failed but no issues detected.\");\n }\n const error = new ZodError(ctx.common.issues);\n return { success: false, error };\n }\n};\nfunction processCreateParams(params) {\n if (!params)\n return {};\n const { errorMap, invalid_type_error, required_error, description } = params;\n if (errorMap && (invalid_type_error || required_error)) {\n throw new Error(`Can't use \"invalid_type_error\" or \"required_error\" in conjunction with custom error map.`);\n }\n if (errorMap)\n return { errorMap: errorMap, description };\n const customMap = (iss, ctx) => {\n if (iss.code !== \"invalid_type\")\n return { message: ctx.defaultError };\n if (typeof ctx.data === \"undefined\") {\n return { message: required_error !== null && required_error !== void 0 ? required_error : ctx.defaultError };\n }\n return { message: invalid_type_error !== null && invalid_type_error !== void 0 ? invalid_type_error : ctx.defaultError };\n };\n return { errorMap: customMap, description };\n}\nclass ZodType {\n constructor(def) {\n /** Alias of safeParseAsync */\n this.spa = this.safeParseAsync;\n this.superRefine = this._refinement;\n this._def = def;\n this.parse = this.parse.bind(this);\n this.safeParse = this.safeParse.bind(this);\n this.parseAsync = this.parseAsync.bind(this);\n this.safeParseAsync = this.safeParseAsync.bind(this);\n this.spa = this.spa.bind(this);\n this.refine = this.refine.bind(this);\n this.refinement = this.refinement.bind(this);\n this.superRefine = this.superRefine.bind(this);\n this.optional = this.optional.bind(this);\n this.nullable = this.nullable.bind(this);\n this.nullish = this.nullish.bind(this);\n this.array = this.array.bind(this);\n this.promise = this.promise.bind(this);\n this.or = this.or.bind(this);\n this.and = this.and.bind(this);\n this.transform = this.transform.bind(this);\n this.default = this.default.bind(this);\n this.describe = this.describe.bind(this);\n this.isNullable = this.isNullable.bind(this);\n this.isOptional = this.isOptional.bind(this);\n }\n get description() {\n return this._def.description;\n }\n _getType(input) {\n return getParsedType(input.data);\n }\n _getOrReturnCtx(input, ctx) {\n return (ctx || {\n common: input.parent.common,\n data: input.data,\n parsedType: getParsedType(input.data),\n schemaErrorMap: this._def.errorMap,\n path: input.path,\n parent: input.parent,\n });\n }\n _processInputParams(input) {\n return {\n status: new ParseStatus(),\n ctx: {\n common: input.parent.common,\n data: input.data,\n parsedType: getParsedType(input.data),\n schemaErrorMap: this._def.errorMap,\n path: input.path,\n parent: input.parent,\n },\n };\n }\n _parseSync(input) {\n const result = this._parse(input);\n if (isAsync(result)) {\n throw new Error(\"Synchronous parse encountered promise.\");\n }\n return result;\n }\n _parseAsync(input) {\n const result = this._parse(input);\n return Promise.resolve(result);\n }\n parse(data, params) {\n const result = this.safeParse(data, params);\n if (result.success)\n return result.data;\n throw result.error;\n }\n safeParse(data, params) {\n var _a;\n const ctx = {\n common: {\n issues: [],\n async: (_a = params === null || params === void 0 ? void 0 : params.async) !== null && _a !== void 0 ? _a : false,\n contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap,\n },\n path: (params === null || params === void 0 ? void 0 : params.path) || [],\n schemaErrorMap: this._def.errorMap,\n parent: null,\n data,\n parsedType: getParsedType(data),\n };\n const result = this._parseSync({ data, path: ctx.path, parent: ctx });\n return handleResult(ctx, result);\n }\n async parseAsync(data, params) {\n const result = await this.safeParseAsync(data, params);\n if (result.success)\n return result.data;\n throw result.error;\n }\n async safeParseAsync(data, params) {\n const ctx = {\n common: {\n issues: [],\n contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap,\n async: true,\n },\n path: (params === null || params === void 0 ? void 0 : params.path) || [],\n schemaErrorMap: this._def.errorMap,\n parent: null,\n data,\n parsedType: getParsedType(data),\n };\n const maybeAsyncResult = this._parse({ data, path: [], parent: ctx });\n const result = await (isAsync(maybeAsyncResult)\n ? maybeAsyncResult\n : Promise.resolve(maybeAsyncResult));\n return handleResult(ctx, result);\n }\n refine(check, message) {\n const getIssueProperties = (val) => {\n if (typeof message === \"string\" || typeof message === \"undefined\") {\n return { message };\n }\n else if (typeof message === \"function\") {\n return message(val);\n }\n else {\n return message;\n }\n };\n return this._refinement((val, ctx) => {\n const result = check(val);\n const setError = () => ctx.addIssue({\n code: ZodIssueCode.custom,\n ...getIssueProperties(val),\n });\n if (typeof Promise !== \"undefined\" && result instanceof Promise) {\n return result.then((data) => {\n if (!data) {\n setError();\n return false;\n }\n else {\n return true;\n }\n });\n }\n if (!result) {\n setError();\n return false;\n }\n else {\n return true;\n }\n });\n }\n refinement(check, refinementData) {\n return this._refinement((val, ctx) => {\n if (!check(val)) {\n ctx.addIssue(typeof refinementData === \"function\"\n ? refinementData(val, ctx)\n : refinementData);\n return false;\n }\n else {\n return true;\n }\n });\n }\n _refinement(refinement) {\n return new ZodEffects({\n schema: this,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect: { type: \"refinement\", refinement },\n });\n }\n optional() {\n return ZodOptional.create(this);\n }\n nullable() {\n return ZodNullable.create(this);\n }\n nullish() {\n return this.optional().nullable();\n }\n array() {\n return ZodArray.create(this);\n }\n promise() {\n return ZodPromise.create(this);\n }\n or(option) {\n return ZodUnion.create([this, option]);\n }\n and(incoming) {\n return ZodIntersection.create(this, incoming);\n }\n transform(transform) {\n return new ZodEffects({\n schema: this,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect: { type: \"transform\", transform },\n });\n }\n default(def) {\n const defaultValueFunc = typeof def === \"function\" ? def : () => def;\n return new ZodDefault({\n innerType: this,\n defaultValue: defaultValueFunc,\n typeName: ZodFirstPartyTypeKind.ZodDefault,\n });\n }\n brand() {\n return new ZodBranded({\n typeName: ZodFirstPartyTypeKind.ZodBranded,\n type: this,\n ...processCreateParams(undefined),\n });\n }\n describe(description) {\n const This = this.constructor;\n return new This({\n ...this._def,\n description,\n });\n }\n isOptional() {\n return this.safeParse(undefined).success;\n }\n isNullable() {\n return this.safeParse(null).success;\n }\n}\nconst cuidRegex = /^c[^\\s-]{8,}$/i;\nconst uuidRegex = /^([a-f0-9]{8}-[a-f0-9]{4}-[1-5][a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}|00000000-0000-0000-0000-000000000000)$/i;\n// from https://stackoverflow.com/a/46181/1550155\n// old version: too slow, didn't support unicode\n// const emailRegex = /^((([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+(\\.([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+)*)|((\\x22)((((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(([\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(\\\\([\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]))))*(((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(\\x22)))@((([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.)+(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))$/i;\n// eslint-disable-next-line\nconst emailRegex = /^(([^<>()[\\]\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@(([^<>()[\\]\\.,;:\\s@\\\"]+\\.)+[^<>()[\\]\\.,;:\\s@\\\"]{2,})$/i;\nclass ZodString extends ZodType {\n constructor() {\n super(...arguments);\n this._regex = (regex, validation, message) => this.refinement((data) => regex.test(data), {\n validation,\n code: ZodIssueCode.invalid_string,\n ...errorUtil.errToObj(message),\n });\n /**\n * @deprecated Use z.string().min(1) instead.\n * @see {@link ZodString.min}\n */\n this.nonempty = (message) => this.min(1, errorUtil.errToObj(message));\n this.trim = () => new ZodString({\n ...this._def,\n checks: [...this._def.checks, { kind: \"trim\" }],\n });\n }\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.string) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.string,\n received: ctx.parsedType,\n }\n //\n );\n return INVALID;\n }\n const status = new ParseStatus();\n let ctx = undefined;\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n if (input.data.length < check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"string\",\n inclusive: true,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n if (input.data.length > check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"string\",\n inclusive: true,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"email\") {\n if (!emailRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"email\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"uuid\") {\n if (!uuidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"uuid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"cuid\") {\n if (!cuidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"cuid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"url\") {\n try {\n new URL(input.data);\n }\n catch (_a) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"url\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"regex\") {\n check.regex.lastIndex = 0;\n const testResult = check.regex.test(input.data);\n if (!testResult) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"regex\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"trim\") {\n input.data = input.data.trim();\n }\n else if (check.kind === \"startsWith\") {\n if (!input.data.startsWith(check.value)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { startsWith: check.value },\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"endsWith\") {\n if (!input.data.endsWith(check.value)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { endsWith: check.value },\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n _addCheck(check) {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n email(message) {\n return this._addCheck({ kind: \"email\", ...errorUtil.errToObj(message) });\n }\n url(message) {\n return this._addCheck({ kind: \"url\", ...errorUtil.errToObj(message) });\n }\n uuid(message) {\n return this._addCheck({ kind: \"uuid\", ...errorUtil.errToObj(message) });\n }\n cuid(message) {\n return this._addCheck({ kind: \"cuid\", ...errorUtil.errToObj(message) });\n }\n regex(regex, message) {\n return this._addCheck({\n kind: \"regex\",\n regex: regex,\n ...errorUtil.errToObj(message),\n });\n }\n startsWith(value, message) {\n return this._addCheck({\n kind: \"startsWith\",\n value: value,\n ...errorUtil.errToObj(message),\n });\n }\n endsWith(value, message) {\n return this._addCheck({\n kind: \"endsWith\",\n value: value,\n ...errorUtil.errToObj(message),\n });\n }\n min(minLength, message) {\n return this._addCheck({\n kind: \"min\",\n value: minLength,\n ...errorUtil.errToObj(message),\n });\n }\n max(maxLength, message) {\n return this._addCheck({\n kind: \"max\",\n value: maxLength,\n ...errorUtil.errToObj(message),\n });\n }\n length(len, message) {\n return this.min(len, message).max(len, message);\n }\n get isEmail() {\n return !!this._def.checks.find((ch) => ch.kind === \"email\");\n }\n get isURL() {\n return !!this._def.checks.find((ch) => ch.kind === \"url\");\n }\n get isUUID() {\n return !!this._def.checks.find((ch) => ch.kind === \"uuid\");\n }\n get isCUID() {\n return !!this._def.checks.find((ch) => ch.kind === \"cuid\");\n }\n get minLength() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxLength() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n}\nZodString.create = (params) => {\n return new ZodString({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodString,\n ...processCreateParams(params),\n });\n};\n// https://stackoverflow.com/questions/3966484/why-does-modulus-operator-return-fractional-number-in-javascript/31711034#31711034\nfunction floatSafeRemainder(val, step) {\n const valDecCount = (val.toString().split(\".\")[1] || \"\").length;\n const stepDecCount = (step.toString().split(\".\")[1] || \"\").length;\n const decCount = valDecCount > stepDecCount ? valDecCount : stepDecCount;\n const valInt = parseInt(val.toFixed(decCount).replace(\".\", \"\"));\n const stepInt = parseInt(step.toFixed(decCount).replace(\".\", \"\"));\n return (valInt % stepInt) / Math.pow(10, decCount);\n}\nclass ZodNumber extends ZodType {\n constructor() {\n super(...arguments);\n this.min = this.gte;\n this.max = this.lte;\n this.step = this.multipleOf;\n }\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.number) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.number,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n let ctx = undefined;\n const status = new ParseStatus();\n for (const check of this._def.checks) {\n if (check.kind === \"int\") {\n if (!util.isInteger(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: \"integer\",\n received: \"float\",\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"min\") {\n const tooSmall = check.inclusive\n ? input.data < check.value\n : input.data <= check.value;\n if (tooSmall) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"number\",\n inclusive: check.inclusive,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n const tooBig = check.inclusive\n ? input.data > check.value\n : input.data >= check.value;\n if (tooBig) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"number\",\n inclusive: check.inclusive,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"multipleOf\") {\n if (floatSafeRemainder(input.data, check.value) !== 0) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.not_multiple_of,\n multipleOf: check.value,\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n gte(value, message) {\n return this.setLimit(\"min\", value, true, errorUtil.toString(message));\n }\n gt(value, message) {\n return this.setLimit(\"min\", value, false, errorUtil.toString(message));\n }\n lte(value, message) {\n return this.setLimit(\"max\", value, true, errorUtil.toString(message));\n }\n lt(value, message) {\n return this.setLimit(\"max\", value, false, errorUtil.toString(message));\n }\n setLimit(kind, value, inclusive, message) {\n return new ZodNumber({\n ...this._def,\n checks: [\n ...this._def.checks,\n {\n kind,\n value,\n inclusive,\n message: errorUtil.toString(message),\n },\n ],\n });\n }\n _addCheck(check) {\n return new ZodNumber({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n int(message) {\n return this._addCheck({\n kind: \"int\",\n message: errorUtil.toString(message),\n });\n }\n positive(message) {\n return this._addCheck({\n kind: \"min\",\n value: 0,\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n negative(message) {\n return this._addCheck({\n kind: \"max\",\n value: 0,\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n nonpositive(message) {\n return this._addCheck({\n kind: \"max\",\n value: 0,\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n nonnegative(message) {\n return this._addCheck({\n kind: \"min\",\n value: 0,\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n multipleOf(value, message) {\n return this._addCheck({\n kind: \"multipleOf\",\n value: value,\n message: errorUtil.toString(message),\n });\n }\n get minValue() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxValue() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n get isInt() {\n return !!this._def.checks.find((ch) => ch.kind === \"int\");\n }\n}\nZodNumber.create = (params) => {\n return new ZodNumber({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodNumber,\n ...processCreateParams(params),\n });\n};\nclass ZodBigInt extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.bigint) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.bigint,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodBigInt.create = (params) => {\n return new ZodBigInt({\n typeName: ZodFirstPartyTypeKind.ZodBigInt,\n ...processCreateParams(params),\n });\n};\nclass ZodBoolean extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.boolean) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.boolean,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodBoolean.create = (params) => {\n return new ZodBoolean({\n typeName: ZodFirstPartyTypeKind.ZodBoolean,\n ...processCreateParams(params),\n });\n};\nclass ZodDate extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.date) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.date,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (isNaN(input.data.getTime())) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_date,\n });\n return INVALID;\n }\n const status = new ParseStatus();\n let ctx = undefined;\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n if (input.data.getTime() < check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n message: check.message,\n inclusive: true,\n minimum: check.value,\n type: \"date\",\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n if (input.data.getTime() > check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n message: check.message,\n inclusive: true,\n maximum: check.value,\n type: \"date\",\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return {\n status: status.value,\n value: new Date(input.data.getTime()),\n };\n }\n _addCheck(check) {\n return new ZodDate({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n min(minDate, message) {\n return this._addCheck({\n kind: \"min\",\n value: minDate.getTime(),\n message: errorUtil.toString(message),\n });\n }\n max(maxDate, message) {\n return this._addCheck({\n kind: \"max\",\n value: maxDate.getTime(),\n message: errorUtil.toString(message),\n });\n }\n get minDate() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min != null ? new Date(min) : null;\n }\n get maxDate() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max != null ? new Date(max) : null;\n }\n}\nZodDate.create = (params) => {\n return new ZodDate({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodDate,\n ...processCreateParams(params),\n });\n};\nclass ZodUndefined extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.undefined) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.undefined,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodUndefined.create = (params) => {\n return new ZodUndefined({\n typeName: ZodFirstPartyTypeKind.ZodUndefined,\n ...processCreateParams(params),\n });\n};\nclass ZodNull extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.null) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.null,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodNull.create = (params) => {\n return new ZodNull({\n typeName: ZodFirstPartyTypeKind.ZodNull,\n ...processCreateParams(params),\n });\n};\nclass ZodAny extends ZodType {\n constructor() {\n super(...arguments);\n // to prevent instances of other classes from extending ZodAny. this causes issues with catchall in ZodObject.\n this._any = true;\n }\n _parse(input) {\n return OK(input.data);\n }\n}\nZodAny.create = (params) => {\n return new ZodAny({\n typeName: ZodFirstPartyTypeKind.ZodAny,\n ...processCreateParams(params),\n });\n};\nclass ZodUnknown extends ZodType {\n constructor() {\n super(...arguments);\n // required\n this._unknown = true;\n }\n _parse(input) {\n return OK(input.data);\n }\n}\nZodUnknown.create = (params) => {\n return new ZodUnknown({\n typeName: ZodFirstPartyTypeKind.ZodUnknown,\n ...processCreateParams(params),\n });\n};\nclass ZodNever extends ZodType {\n _parse(input) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.never,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n}\nZodNever.create = (params) => {\n return new ZodNever({\n typeName: ZodFirstPartyTypeKind.ZodNever,\n ...processCreateParams(params),\n });\n};\nclass ZodVoid extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.undefined) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.void,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodVoid.create = (params) => {\n return new ZodVoid({\n typeName: ZodFirstPartyTypeKind.ZodVoid,\n ...processCreateParams(params),\n });\n};\nclass ZodArray extends ZodType {\n _parse(input) {\n const { ctx, status } = this._processInputParams(input);\n const def = this._def;\n if (ctx.parsedType !== ZodParsedType.array) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.array,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (def.minLength !== null) {\n if (ctx.data.length < def.minLength.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: def.minLength.value,\n type: \"array\",\n inclusive: true,\n message: def.minLength.message,\n });\n status.dirty();\n }\n }\n if (def.maxLength !== null) {\n if (ctx.data.length > def.maxLength.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: def.maxLength.value,\n type: \"array\",\n inclusive: true,\n message: def.maxLength.message,\n });\n status.dirty();\n }\n }\n if (ctx.common.async) {\n return Promise.all(ctx.data.map((item, i) => {\n return def.type._parseAsync(new ParseInputLazyPath(ctx, item, ctx.path, i));\n })).then((result) => {\n return ParseStatus.mergeArray(status, result);\n });\n }\n const result = ctx.data.map((item, i) => {\n return def.type._parseSync(new ParseInputLazyPath(ctx, item, ctx.path, i));\n });\n return ParseStatus.mergeArray(status, result);\n }\n get element() {\n return this._def.type;\n }\n min(minLength, message) {\n return new ZodArray({\n ...this._def,\n minLength: { value: minLength, message: errorUtil.toString(message) },\n });\n }\n max(maxLength, message) {\n return new ZodArray({\n ...this._def,\n maxLength: { value: maxLength, message: errorUtil.toString(message) },\n });\n }\n length(len, message) {\n return this.min(len, message).max(len, message);\n }\n nonempty(message) {\n return this.min(1, message);\n }\n}\nZodArray.create = (schema, params) => {\n return new ZodArray({\n type: schema,\n minLength: null,\n maxLength: null,\n typeName: ZodFirstPartyTypeKind.ZodArray,\n ...processCreateParams(params),\n });\n};\n/////////////////////////////////////////\n/////////////////////////////////////////\n////////// //////////\n////////// ZodObject //////////\n////////// //////////\n/////////////////////////////////////////\n/////////////////////////////////////////\nvar objectUtil;\n(function (objectUtil) {\n objectUtil.mergeShapes = (first, second) => {\n return {\n ...first,\n ...second,\n };\n };\n})(objectUtil || (objectUtil = {}));\nconst AugmentFactory = (def) => (augmentation) => {\n return new ZodObject({\n ...def,\n shape: () => ({\n ...def.shape(),\n ...augmentation,\n }),\n });\n};\nfunction deepPartialify(schema) {\n if (schema instanceof ZodObject) {\n const newShape = {};\n for (const key in schema.shape) {\n const fieldSchema = schema.shape[key];\n newShape[key] = ZodOptional.create(deepPartialify(fieldSchema));\n }\n return new ZodObject({\n ...schema._def,\n shape: () => newShape,\n });\n }\n else if (schema instanceof ZodArray) {\n return ZodArray.create(deepPartialify(schema.element));\n }\n else if (schema instanceof ZodOptional) {\n return ZodOptional.create(deepPartialify(schema.unwrap()));\n }\n else if (schema instanceof ZodNullable) {\n return ZodNullable.create(deepPartialify(schema.unwrap()));\n }\n else if (schema instanceof ZodTuple) {\n return ZodTuple.create(schema.items.map((item) => deepPartialify(item)));\n }\n else {\n return schema;\n }\n}\nclass ZodObject extends ZodType {\n constructor() {\n super(...arguments);\n this._cached = null;\n /**\n * @deprecated In most cases, this is no longer needed - unknown properties are now silently stripped.\n * If you want to pass through unknown properties, use `.passthrough()` instead.\n */\n this.nonstrict = this.passthrough;\n this.augment = AugmentFactory(this._def);\n this.extend = AugmentFactory(this._def);\n }\n _getCached() {\n if (this._cached !== null)\n return this._cached;\n const shape = this._def.shape();\n const keys = util.objectKeys(shape);\n return (this._cached = { shape, keys });\n }\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.object) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const { status, ctx } = this._processInputParams(input);\n const { shape, keys: shapeKeys } = this._getCached();\n const extraKeys = [];\n if (!(this._def.catchall instanceof ZodNever &&\n this._def.unknownKeys === \"strip\")) {\n for (const key in ctx.data) {\n if (!shapeKeys.includes(key)) {\n extraKeys.push(key);\n }\n }\n }\n const pairs = [];\n for (const key of shapeKeys) {\n const keyValidator = shape[key];\n const value = ctx.data[key];\n pairs.push({\n key: { status: \"valid\", value: key },\n value: keyValidator._parse(new ParseInputLazyPath(ctx, value, ctx.path, key)),\n alwaysSet: key in ctx.data,\n });\n }\n if (this._def.catchall instanceof ZodNever) {\n const unknownKeys = this._def.unknownKeys;\n if (unknownKeys === \"passthrough\") {\n for (const key of extraKeys) {\n pairs.push({\n key: { status: \"valid\", value: key },\n value: { status: \"valid\", value: ctx.data[key] },\n });\n }\n }\n else if (unknownKeys === \"strict\") {\n if (extraKeys.length > 0) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.unrecognized_keys,\n keys: extraKeys,\n });\n status.dirty();\n }\n }\n else if (unknownKeys === \"strip\") ;\n else {\n throw new Error(`Internal ZodObject error: invalid unknownKeys value.`);\n }\n }\n else {\n // run catchall validation\n const catchall = this._def.catchall;\n for (const key of extraKeys) {\n const value = ctx.data[key];\n pairs.push({\n key: { status: \"valid\", value: key },\n value: catchall._parse(new ParseInputLazyPath(ctx, value, ctx.path, key) //, ctx.child(key), value, getParsedType(value)\n ),\n alwaysSet: key in ctx.data,\n });\n }\n }\n if (ctx.common.async) {\n return Promise.resolve()\n .then(async () => {\n const syncPairs = [];\n for (const pair of pairs) {\n const key = await pair.key;\n syncPairs.push({\n key,\n value: await pair.value,\n alwaysSet: pair.alwaysSet,\n });\n }\n return syncPairs;\n })\n .then((syncPairs) => {\n return ParseStatus.mergeObjectSync(status, syncPairs);\n });\n }\n else {\n return ParseStatus.mergeObjectSync(status, pairs);\n }\n }\n get shape() {\n return this._def.shape();\n }\n strict(message) {\n errorUtil.errToObj;\n return new ZodObject({\n ...this._def,\n unknownKeys: \"strict\",\n ...(message !== undefined\n ? {\n errorMap: (issue, ctx) => {\n var _a, _b, _c, _d;\n const defaultError = (_c = (_b = (_a = this._def).errorMap) === null || _b === void 0 ? void 0 : _b.call(_a, issue, ctx).message) !== null && _c !== void 0 ? _c : ctx.defaultError;\n if (issue.code === \"unrecognized_keys\")\n return {\n message: (_d = errorUtil.errToObj(message).message) !== null && _d !== void 0 ? _d : defaultError,\n };\n return {\n message: defaultError,\n };\n },\n }\n : {}),\n });\n }\n strip() {\n return new ZodObject({\n ...this._def,\n unknownKeys: \"strip\",\n });\n }\n passthrough() {\n return new ZodObject({\n ...this._def,\n unknownKeys: \"passthrough\",\n });\n }\n setKey(key, schema) {\n return this.augment({ [key]: schema });\n }\n /**\n * Prior to zod@1.0.12 there was a bug in the\n * inferred type of merged objects. Please\n * upgrade if you are experiencing issues.\n */\n merge(merging) {\n // const mergedShape = objectUtil.mergeShapes(\n // this._def.shape(),\n // merging._def.shape()\n // );\n const merged = new ZodObject({\n unknownKeys: merging._def.unknownKeys,\n catchall: merging._def.catchall,\n shape: () => objectUtil.mergeShapes(this._def.shape(), merging._def.shape()),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n });\n return merged;\n }\n catchall(index) {\n return new ZodObject({\n ...this._def,\n catchall: index,\n });\n }\n pick(mask) {\n const shape = {};\n util.objectKeys(mask).map((key) => {\n // only add to shape if key corresponds to an element of the current shape\n if (this.shape[key])\n shape[key] = this.shape[key];\n });\n return new ZodObject({\n ...this._def,\n shape: () => shape,\n });\n }\n omit(mask) {\n const shape = {};\n util.objectKeys(this.shape).map((key) => {\n if (util.objectKeys(mask).indexOf(key) === -1) {\n shape[key] = this.shape[key];\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => shape,\n });\n }\n deepPartial() {\n return deepPartialify(this);\n }\n partial(mask) {\n const newShape = {};\n if (mask) {\n util.objectKeys(this.shape).map((key) => {\n if (util.objectKeys(mask).indexOf(key) === -1) {\n newShape[key] = this.shape[key];\n }\n else {\n newShape[key] = this.shape[key].optional();\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n else {\n for (const key in this.shape) {\n const fieldSchema = this.shape[key];\n newShape[key] = fieldSchema.optional();\n }\n }\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n required() {\n const newShape = {};\n for (const key in this.shape) {\n const fieldSchema = this.shape[key];\n let newField = fieldSchema;\n while (newField instanceof ZodOptional) {\n newField = newField._def.innerType;\n }\n newShape[key] = newField;\n }\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n keyof() {\n return createZodEnum(util.objectKeys(this.shape));\n }\n}\nZodObject.create = (shape, params) => {\n return new ZodObject({\n shape: () => shape,\n unknownKeys: \"strip\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nZodObject.strictCreate = (shape, params) => {\n return new ZodObject({\n shape: () => shape,\n unknownKeys: \"strict\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nZodObject.lazycreate = (shape, params) => {\n return new ZodObject({\n shape,\n unknownKeys: \"strip\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nclass ZodUnion extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const options = this._def.options;\n function handleResults(results) {\n // return first issue-free validation if it exists\n for (const result of results) {\n if (result.result.status === \"valid\") {\n return result.result;\n }\n }\n for (const result of results) {\n if (result.result.status === \"dirty\") {\n // add issues from dirty option\n ctx.common.issues.push(...result.ctx.common.issues);\n return result.result;\n }\n }\n // return invalid\n const unionErrors = results.map((result) => new ZodError(result.ctx.common.issues));\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union,\n unionErrors,\n });\n return INVALID;\n }\n if (ctx.common.async) {\n return Promise.all(options.map(async (option) => {\n const childCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n parent: null,\n };\n return {\n result: await option._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: childCtx,\n }),\n ctx: childCtx,\n };\n })).then(handleResults);\n }\n else {\n let dirty = undefined;\n const issues = [];\n for (const option of options) {\n const childCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n parent: null,\n };\n const result = option._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: childCtx,\n });\n if (result.status === \"valid\") {\n return result;\n }\n else if (result.status === \"dirty\" && !dirty) {\n dirty = { result, ctx: childCtx };\n }\n if (childCtx.common.issues.length) {\n issues.push(childCtx.common.issues);\n }\n }\n if (dirty) {\n ctx.common.issues.push(...dirty.ctx.common.issues);\n return dirty.result;\n }\n const unionErrors = issues.map((issues) => new ZodError(issues));\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union,\n unionErrors,\n });\n return INVALID;\n }\n }\n get options() {\n return this._def.options;\n }\n}\nZodUnion.create = (types, params) => {\n return new ZodUnion({\n options: types,\n typeName: ZodFirstPartyTypeKind.ZodUnion,\n ...processCreateParams(params),\n });\n};\nclass ZodDiscriminatedUnion extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.object) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const discriminator = this.discriminator;\n const discriminatorValue = ctx.data[discriminator];\n const option = this.options.get(discriminatorValue);\n if (!option) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union_discriminator,\n options: this.validDiscriminatorValues,\n path: [discriminator],\n });\n return INVALID;\n }\n if (ctx.common.async) {\n return option._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n }\n else {\n return option._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n get discriminator() {\n return this._def.discriminator;\n }\n get validDiscriminatorValues() {\n return Array.from(this.options.keys());\n }\n get options() {\n return this._def.options;\n }\n /**\n * The constructor of the discriminated union schema. Its behaviour is very similar to that of the normal z.union() constructor.\n * However, it only allows a union of objects, all of which need to share a discriminator property. This property must\n * have a different value for each object in the union.\n * @param discriminator the name of the discriminator property\n * @param types an array of object schemas\n * @param params\n */\n static create(discriminator, types, params) {\n // Get all the valid discriminator values\n const options = new Map();\n try {\n types.forEach((type) => {\n const discriminatorValue = type.shape[discriminator].value;\n options.set(discriminatorValue, type);\n });\n }\n catch (e) {\n throw new Error(\"The discriminator value could not be extracted from all the provided schemas\");\n }\n // Assert that all the discriminator values are unique\n if (options.size !== types.length) {\n throw new Error(\"Some of the discriminator values are not unique\");\n }\n return new ZodDiscriminatedUnion({\n typeName: ZodFirstPartyTypeKind.ZodDiscriminatedUnion,\n discriminator,\n options,\n ...processCreateParams(params),\n });\n }\n}\nfunction mergeValues(a, b) {\n const aType = getParsedType(a);\n const bType = getParsedType(b);\n if (a === b) {\n return { valid: true, data: a };\n }\n else if (aType === ZodParsedType.object && bType === ZodParsedType.object) {\n const bKeys = util.objectKeys(b);\n const sharedKeys = util\n .objectKeys(a)\n .filter((key) => bKeys.indexOf(key) !== -1);\n const newObj = { ...a, ...b };\n for (const key of sharedKeys) {\n const sharedValue = mergeValues(a[key], b[key]);\n if (!sharedValue.valid) {\n return { valid: false };\n }\n newObj[key] = sharedValue.data;\n }\n return { valid: true, data: newObj };\n }\n else if (aType === ZodParsedType.array && bType === ZodParsedType.array) {\n if (a.length !== b.length) {\n return { valid: false };\n }\n const newArray = [];\n for (let index = 0; index < a.length; index++) {\n const itemA = a[index];\n const itemB = b[index];\n const sharedValue = mergeValues(itemA, itemB);\n if (!sharedValue.valid) {\n return { valid: false };\n }\n newArray.push(sharedValue.data);\n }\n return { valid: true, data: newArray };\n }\n else if (aType === ZodParsedType.date &&\n bType === ZodParsedType.date &&\n +a === +b) {\n return { valid: true, data: a };\n }\n else {\n return { valid: false };\n }\n}\nclass ZodIntersection extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n const handleParsed = (parsedLeft, parsedRight) => {\n if (isAborted(parsedLeft) || isAborted(parsedRight)) {\n return INVALID;\n }\n const merged = mergeValues(parsedLeft.value, parsedRight.value);\n if (!merged.valid) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_intersection_types,\n });\n return INVALID;\n }\n if (isDirty(parsedLeft) || isDirty(parsedRight)) {\n status.dirty();\n }\n return { status: status.value, value: merged.data };\n };\n if (ctx.common.async) {\n return Promise.all([\n this._def.left._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }),\n this._def.right._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }),\n ]).then(([left, right]) => handleParsed(left, right));\n }\n else {\n return handleParsed(this._def.left._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }), this._def.right._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }));\n }\n }\n}\nZodIntersection.create = (left, right, params) => {\n return new ZodIntersection({\n left: left,\n right: right,\n typeName: ZodFirstPartyTypeKind.ZodIntersection,\n ...processCreateParams(params),\n });\n};\nclass ZodTuple extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.array) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.array,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (ctx.data.length < this._def.items.length) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: this._def.items.length,\n inclusive: true,\n type: \"array\",\n });\n return INVALID;\n }\n const rest = this._def.rest;\n if (!rest && ctx.data.length > this._def.items.length) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: this._def.items.length,\n inclusive: true,\n type: \"array\",\n });\n status.dirty();\n }\n const items = ctx.data\n .map((item, itemIndex) => {\n const schema = this._def.items[itemIndex] || this._def.rest;\n if (!schema)\n return null;\n return schema._parse(new ParseInputLazyPath(ctx, item, ctx.path, itemIndex));\n })\n .filter((x) => !!x); // filter nulls\n if (ctx.common.async) {\n return Promise.all(items).then((results) => {\n return ParseStatus.mergeArray(status, results);\n });\n }\n else {\n return ParseStatus.mergeArray(status, items);\n }\n }\n get items() {\n return this._def.items;\n }\n rest(rest) {\n return new ZodTuple({\n ...this._def,\n rest,\n });\n }\n}\nZodTuple.create = (schemas, params) => {\n if (!Array.isArray(schemas)) {\n throw new Error(\"You must pass an array of schemas to z.tuple([ ... ])\");\n }\n return new ZodTuple({\n items: schemas,\n typeName: ZodFirstPartyTypeKind.ZodTuple,\n rest: null,\n ...processCreateParams(params),\n });\n};\nclass ZodRecord extends ZodType {\n get keySchema() {\n return this._def.keyType;\n }\n get valueSchema() {\n return this._def.valueType;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.object) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const pairs = [];\n const keyType = this._def.keyType;\n const valueType = this._def.valueType;\n for (const key in ctx.data) {\n pairs.push({\n key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, key)),\n value: valueType._parse(new ParseInputLazyPath(ctx, ctx.data[key], ctx.path, key)),\n });\n }\n if (ctx.common.async) {\n return ParseStatus.mergeObjectAsync(status, pairs);\n }\n else {\n return ParseStatus.mergeObjectSync(status, pairs);\n }\n }\n get element() {\n return this._def.valueType;\n }\n static create(first, second, third) {\n if (second instanceof ZodType) {\n return new ZodRecord({\n keyType: first,\n valueType: second,\n typeName: ZodFirstPartyTypeKind.ZodRecord,\n ...processCreateParams(third),\n });\n }\n return new ZodRecord({\n keyType: ZodString.create(),\n valueType: first,\n typeName: ZodFirstPartyTypeKind.ZodRecord,\n ...processCreateParams(second),\n });\n }\n}\nclass ZodMap extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.map) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.map,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const keyType = this._def.keyType;\n const valueType = this._def.valueType;\n const pairs = [...ctx.data.entries()].map(([key, value], index) => {\n return {\n key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, [index, \"key\"])),\n value: valueType._parse(new ParseInputLazyPath(ctx, value, ctx.path, [index, \"value\"])),\n };\n });\n if (ctx.common.async) {\n const finalMap = new Map();\n return Promise.resolve().then(async () => {\n for (const pair of pairs) {\n const key = await pair.key;\n const value = await pair.value;\n if (key.status === \"aborted\" || value.status === \"aborted\") {\n return INVALID;\n }\n if (key.status === \"dirty\" || value.status === \"dirty\") {\n status.dirty();\n }\n finalMap.set(key.value, value.value);\n }\n return { status: status.value, value: finalMap };\n });\n }\n else {\n const finalMap = new Map();\n for (const pair of pairs) {\n const key = pair.key;\n const value = pair.value;\n if (key.status === \"aborted\" || value.status === \"aborted\") {\n return INVALID;\n }\n if (key.status === \"dirty\" || value.status === \"dirty\") {\n status.dirty();\n }\n finalMap.set(key.value, value.value);\n }\n return { status: status.value, value: finalMap };\n }\n }\n}\nZodMap.create = (keyType, valueType, params) => {\n return new ZodMap({\n valueType,\n keyType,\n typeName: ZodFirstPartyTypeKind.ZodMap,\n ...processCreateParams(params),\n });\n};\nclass ZodSet extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.set) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.set,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const def = this._def;\n if (def.minSize !== null) {\n if (ctx.data.size < def.minSize.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: def.minSize.value,\n type: \"set\",\n inclusive: true,\n message: def.minSize.message,\n });\n status.dirty();\n }\n }\n if (def.maxSize !== null) {\n if (ctx.data.size > def.maxSize.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: def.maxSize.value,\n type: \"set\",\n inclusive: true,\n message: def.maxSize.message,\n });\n status.dirty();\n }\n }\n const valueType = this._def.valueType;\n function finalizeSet(elements) {\n const parsedSet = new Set();\n for (const element of elements) {\n if (element.status === \"aborted\")\n return INVALID;\n if (element.status === \"dirty\")\n status.dirty();\n parsedSet.add(element.value);\n }\n return { status: status.value, value: parsedSet };\n }\n const elements = [...ctx.data.values()].map((item, i) => valueType._parse(new ParseInputLazyPath(ctx, item, ctx.path, i)));\n if (ctx.common.async) {\n return Promise.all(elements).then((elements) => finalizeSet(elements));\n }\n else {\n return finalizeSet(elements);\n }\n }\n min(minSize, message) {\n return new ZodSet({\n ...this._def,\n minSize: { value: minSize, message: errorUtil.toString(message) },\n });\n }\n max(maxSize, message) {\n return new ZodSet({\n ...this._def,\n maxSize: { value: maxSize, message: errorUtil.toString(message) },\n });\n }\n size(size, message) {\n return this.min(size, message).max(size, message);\n }\n nonempty(message) {\n return this.min(1, message);\n }\n}\nZodSet.create = (valueType, params) => {\n return new ZodSet({\n valueType,\n minSize: null,\n maxSize: null,\n typeName: ZodFirstPartyTypeKind.ZodSet,\n ...processCreateParams(params),\n });\n};\nclass ZodFunction extends ZodType {\n constructor() {\n super(...arguments);\n this.validate = this.implement;\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.function) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.function,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n function makeArgsIssue(args, error) {\n return makeIssue({\n data: args,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n issueData: {\n code: ZodIssueCode.invalid_arguments,\n argumentsError: error,\n },\n });\n }\n function makeReturnsIssue(returns, error) {\n return makeIssue({\n data: returns,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n issueData: {\n code: ZodIssueCode.invalid_return_type,\n returnTypeError: error,\n },\n });\n }\n const params = { errorMap: ctx.common.contextualErrorMap };\n const fn = ctx.data;\n if (this._def.returns instanceof ZodPromise) {\n return OK(async (...args) => {\n const error = new ZodError([]);\n const parsedArgs = await this._def.args\n .parseAsync(args, params)\n .catch((e) => {\n error.addIssue(makeArgsIssue(args, e));\n throw error;\n });\n const result = await fn(...parsedArgs);\n const parsedReturns = await this._def.returns._def.type\n .parseAsync(result, params)\n .catch((e) => {\n error.addIssue(makeReturnsIssue(result, e));\n throw error;\n });\n return parsedReturns;\n });\n }\n else {\n return OK((...args) => {\n const parsedArgs = this._def.args.safeParse(args, params);\n if (!parsedArgs.success) {\n throw new ZodError([makeArgsIssue(args, parsedArgs.error)]);\n }\n const result = fn(...parsedArgs.data);\n const parsedReturns = this._def.returns.safeParse(result, params);\n if (!parsedReturns.success) {\n throw new ZodError([makeReturnsIssue(result, parsedReturns.error)]);\n }\n return parsedReturns.data;\n });\n }\n }\n parameters() {\n return this._def.args;\n }\n returnType() {\n return this._def.returns;\n }\n args(...items) {\n return new ZodFunction({\n ...this._def,\n args: ZodTuple.create(items).rest(ZodUnknown.create()),\n });\n }\n returns(returnType) {\n return new ZodFunction({\n ...this._def,\n returns: returnType,\n });\n }\n implement(func) {\n const validatedFunc = this.parse(func);\n return validatedFunc;\n }\n strictImplement(func) {\n const validatedFunc = this.parse(func);\n return validatedFunc;\n }\n static create(args, returns, params) {\n return new ZodFunction({\n args: (args\n ? args\n : ZodTuple.create([]).rest(ZodUnknown.create())),\n returns: returns || ZodUnknown.create(),\n typeName: ZodFirstPartyTypeKind.ZodFunction,\n ...processCreateParams(params),\n });\n }\n}\nclass ZodLazy extends ZodType {\n get schema() {\n return this._def.getter();\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const lazySchema = this._def.getter();\n return lazySchema._parse({ data: ctx.data, path: ctx.path, parent: ctx });\n }\n}\nZodLazy.create = (getter, params) => {\n return new ZodLazy({\n getter: getter,\n typeName: ZodFirstPartyTypeKind.ZodLazy,\n ...processCreateParams(params),\n });\n};\nclass ZodLiteral extends ZodType {\n _parse(input) {\n if (input.data !== this._def.value) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_literal,\n expected: this._def.value,\n });\n return INVALID;\n }\n return { status: \"valid\", value: input.data };\n }\n get value() {\n return this._def.value;\n }\n}\nZodLiteral.create = (value, params) => {\n return new ZodLiteral({\n value: value,\n typeName: ZodFirstPartyTypeKind.ZodLiteral,\n ...processCreateParams(params),\n });\n};\nfunction createZodEnum(values, params) {\n return new ZodEnum({\n values: values,\n typeName: ZodFirstPartyTypeKind.ZodEnum,\n ...processCreateParams(params),\n });\n}\nclass ZodEnum extends ZodType {\n _parse(input) {\n if (typeof input.data !== \"string\") {\n const ctx = this._getOrReturnCtx(input);\n const expectedValues = this._def.values;\n addIssueToContext(ctx, {\n expected: util.joinValues(expectedValues),\n received: ctx.parsedType,\n code: ZodIssueCode.invalid_type,\n });\n return INVALID;\n }\n if (this._def.values.indexOf(input.data) === -1) {\n const ctx = this._getOrReturnCtx(input);\n const expectedValues = this._def.values;\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_enum_value,\n options: expectedValues,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n get options() {\n return this._def.values;\n }\n get enum() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n get Values() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n get Enum() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n}\nZodEnum.create = createZodEnum;\nclass ZodNativeEnum extends ZodType {\n _parse(input) {\n const nativeEnumValues = util.getValidEnumValues(this._def.values);\n const ctx = this._getOrReturnCtx(input);\n if (ctx.parsedType !== ZodParsedType.string &&\n ctx.parsedType !== ZodParsedType.number) {\n const expectedValues = util.objectValues(nativeEnumValues);\n addIssueToContext(ctx, {\n expected: util.joinValues(expectedValues),\n received: ctx.parsedType,\n code: ZodIssueCode.invalid_type,\n });\n return INVALID;\n }\n if (nativeEnumValues.indexOf(input.data) === -1) {\n const expectedValues = util.objectValues(nativeEnumValues);\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_enum_value,\n options: expectedValues,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n get enum() {\n return this._def.values;\n }\n}\nZodNativeEnum.create = (values, params) => {\n return new ZodNativeEnum({\n values: values,\n typeName: ZodFirstPartyTypeKind.ZodNativeEnum,\n ...processCreateParams(params),\n });\n};\nclass ZodPromise extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.promise &&\n ctx.common.async === false) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.promise,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const promisified = ctx.parsedType === ZodParsedType.promise\n ? ctx.data\n : Promise.resolve(ctx.data);\n return OK(promisified.then((data) => {\n return this._def.type.parseAsync(data, {\n path: ctx.path,\n errorMap: ctx.common.contextualErrorMap,\n });\n }));\n }\n}\nZodPromise.create = (schema, params) => {\n return new ZodPromise({\n type: schema,\n typeName: ZodFirstPartyTypeKind.ZodPromise,\n ...processCreateParams(params),\n });\n};\nclass ZodEffects extends ZodType {\n innerType() {\n return this._def.schema;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n const effect = this._def.effect || null;\n if (effect.type === \"preprocess\") {\n const processed = effect.transform(ctx.data);\n if (ctx.common.async) {\n return Promise.resolve(processed).then((processed) => {\n return this._def.schema._parseAsync({\n data: processed,\n path: ctx.path,\n parent: ctx,\n });\n });\n }\n else {\n return this._def.schema._parseSync({\n data: processed,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n const checkCtx = {\n addIssue: (arg) => {\n addIssueToContext(ctx, arg);\n if (arg.fatal) {\n status.abort();\n }\n else {\n status.dirty();\n }\n },\n get path() {\n return ctx.path;\n },\n };\n checkCtx.addIssue = checkCtx.addIssue.bind(checkCtx);\n if (effect.type === \"refinement\") {\n const executeRefinement = (acc\n // effect: RefinementEffect\n ) => {\n const result = effect.refinement(acc, checkCtx);\n if (ctx.common.async) {\n return Promise.resolve(result);\n }\n if (result instanceof Promise) {\n throw new Error(\"Async refinement encountered during synchronous parse operation. Use .parseAsync instead.\");\n }\n return acc;\n };\n if (ctx.common.async === false) {\n const inner = this._def.schema._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (inner.status === \"aborted\")\n return INVALID;\n if (inner.status === \"dirty\")\n status.dirty();\n // return value is ignored\n executeRefinement(inner.value);\n return { status: status.value, value: inner.value };\n }\n else {\n return this._def.schema\n ._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx })\n .then((inner) => {\n if (inner.status === \"aborted\")\n return INVALID;\n if (inner.status === \"dirty\")\n status.dirty();\n return executeRefinement(inner.value).then(() => {\n return { status: status.value, value: inner.value };\n });\n });\n }\n }\n if (effect.type === \"transform\") {\n if (ctx.common.async === false) {\n const base = this._def.schema._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n // if (base.status === \"aborted\") return INVALID;\n // if (base.status === \"dirty\") {\n // return { status: \"dirty\", value: base.value };\n // }\n if (!isValid(base))\n return base;\n const result = effect.transform(base.value, checkCtx);\n if (result instanceof Promise) {\n throw new Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);\n }\n return { status: status.value, value: result };\n }\n else {\n return this._def.schema\n ._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx })\n .then((base) => {\n if (!isValid(base))\n return base;\n // if (base.status === \"aborted\") return INVALID;\n // if (base.status === \"dirty\") {\n // return { status: \"dirty\", value: base.value };\n // }\n return Promise.resolve(effect.transform(base.value, checkCtx)).then((result) => ({ status: status.value, value: result }));\n });\n }\n }\n util.assertNever(effect);\n }\n}\nZodEffects.create = (schema, effect, params) => {\n return new ZodEffects({\n schema,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect,\n ...processCreateParams(params),\n });\n};\nZodEffects.createWithPreprocess = (preprocess, schema, params) => {\n return new ZodEffects({\n schema,\n effect: { type: \"preprocess\", transform: preprocess },\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n ...processCreateParams(params),\n });\n};\nclass ZodOptional extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType === ZodParsedType.undefined) {\n return OK(undefined);\n }\n return this._def.innerType._parse(input);\n }\n unwrap() {\n return this._def.innerType;\n }\n}\nZodOptional.create = (type, params) => {\n return new ZodOptional({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodOptional,\n ...processCreateParams(params),\n });\n};\nclass ZodNullable extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType === ZodParsedType.null) {\n return OK(null);\n }\n return this._def.innerType._parse(input);\n }\n unwrap() {\n return this._def.innerType;\n }\n}\nZodNullable.create = (type, params) => {\n return new ZodNullable({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodNullable,\n ...processCreateParams(params),\n });\n};\nclass ZodDefault extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n let data = ctx.data;\n if (ctx.parsedType === ZodParsedType.undefined) {\n data = this._def.defaultValue();\n }\n return this._def.innerType._parse({\n data,\n path: ctx.path,\n parent: ctx,\n });\n }\n removeDefault() {\n return this._def.innerType;\n }\n}\nZodDefault.create = (type, params) => {\n return new ZodOptional({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodOptional,\n ...processCreateParams(params),\n });\n};\nclass ZodNaN extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.nan) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.nan,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return { status: \"valid\", value: input.data };\n }\n}\nZodNaN.create = (params) => {\n return new ZodNaN({\n typeName: ZodFirstPartyTypeKind.ZodNaN,\n ...processCreateParams(params),\n });\n};\nconst BRAND = Symbol(\"zod_brand\");\nclass ZodBranded extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const data = ctx.data;\n return this._def.type._parse({\n data,\n path: ctx.path,\n parent: ctx,\n });\n }\n unwrap() {\n return this._def.type;\n }\n}\nconst custom = (check, params = {}, fatal) => {\n if (check)\n return ZodAny.create().superRefine((data, ctx) => {\n if (!check(data)) {\n const p = typeof params === \"function\" ? params(data) : params;\n const p2 = typeof p === \"string\" ? { message: p } : p;\n ctx.addIssue({ code: \"custom\", ...p2, fatal });\n }\n });\n return ZodAny.create();\n};\nconst late = {\n object: ZodObject.lazycreate,\n};\nvar ZodFirstPartyTypeKind;\n(function (ZodFirstPartyTypeKind) {\n ZodFirstPartyTypeKind[\"ZodString\"] = \"ZodString\";\n ZodFirstPartyTypeKind[\"ZodNumber\"] = \"ZodNumber\";\n ZodFirstPartyTypeKind[\"ZodNaN\"] = \"ZodNaN\";\n ZodFirstPartyTypeKind[\"ZodBigInt\"] = \"ZodBigInt\";\n ZodFirstPartyTypeKind[\"ZodBoolean\"] = \"ZodBoolean\";\n ZodFirstPartyTypeKind[\"ZodDate\"] = \"ZodDate\";\n ZodFirstPartyTypeKind[\"ZodUndefined\"] = \"ZodUndefined\";\n ZodFirstPartyTypeKind[\"ZodNull\"] = \"ZodNull\";\n ZodFirstPartyTypeKind[\"ZodAny\"] = \"ZodAny\";\n ZodFirstPartyTypeKind[\"ZodUnknown\"] = \"ZodUnknown\";\n ZodFirstPartyTypeKind[\"ZodNever\"] = \"ZodNever\";\n ZodFirstPartyTypeKind[\"ZodVoid\"] = \"ZodVoid\";\n ZodFirstPartyTypeKind[\"ZodArray\"] = \"ZodArray\";\n ZodFirstPartyTypeKind[\"ZodObject\"] = \"ZodObject\";\n ZodFirstPartyTypeKind[\"ZodUnion\"] = \"ZodUnion\";\n ZodFirstPartyTypeKind[\"ZodDiscriminatedUnion\"] = \"ZodDiscriminatedUnion\";\n ZodFirstPartyTypeKind[\"ZodIntersection\"] = \"ZodIntersection\";\n ZodFirstPartyTypeKind[\"ZodTuple\"] = \"ZodTuple\";\n ZodFirstPartyTypeKind[\"ZodRecord\"] = \"ZodRecord\";\n ZodFirstPartyTypeKind[\"ZodMap\"] = \"ZodMap\";\n ZodFirstPartyTypeKind[\"ZodSet\"] = \"ZodSet\";\n ZodFirstPartyTypeKind[\"ZodFunction\"] = \"ZodFunction\";\n ZodFirstPartyTypeKind[\"ZodLazy\"] = \"ZodLazy\";\n ZodFirstPartyTypeKind[\"ZodLiteral\"] = \"ZodLiteral\";\n ZodFirstPartyTypeKind[\"ZodEnum\"] = \"ZodEnum\";\n ZodFirstPartyTypeKind[\"ZodEffects\"] = \"ZodEffects\";\n ZodFirstPartyTypeKind[\"ZodNativeEnum\"] = \"ZodNativeEnum\";\n ZodFirstPartyTypeKind[\"ZodOptional\"] = \"ZodOptional\";\n ZodFirstPartyTypeKind[\"ZodNullable\"] = \"ZodNullable\";\n ZodFirstPartyTypeKind[\"ZodDefault\"] = \"ZodDefault\";\n ZodFirstPartyTypeKind[\"ZodPromise\"] = \"ZodPromise\";\n ZodFirstPartyTypeKind[\"ZodBranded\"] = \"ZodBranded\";\n})(ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {}));\n// new approach that works for abstract classes\n// but required TS 4.4+\n// abstract class Class {\n// constructor(..._: any[]) {}\n// }\n// const instanceOfType = (\nconst instanceOfType = (cls, params = {\n message: `Input not instance of ${cls.name}`,\n}) => custom((data) => data instanceof cls, params, true);\nconst stringType = ZodString.create;\nconst numberType = ZodNumber.create;\nconst nanType = ZodNaN.create;\nconst bigIntType = ZodBigInt.create;\nconst booleanType = ZodBoolean.create;\nconst dateType = ZodDate.create;\nconst undefinedType = ZodUndefined.create;\nconst nullType = ZodNull.create;\nconst anyType = ZodAny.create;\nconst unknownType = ZodUnknown.create;\nconst neverType = ZodNever.create;\nconst voidType = ZodVoid.create;\nconst arrayType = ZodArray.create;\nconst objectType = ZodObject.create;\nconst strictObjectType = ZodObject.strictCreate;\nconst unionType = ZodUnion.create;\nconst discriminatedUnionType = ZodDiscriminatedUnion.create;\nconst intersectionType = ZodIntersection.create;\nconst tupleType = ZodTuple.create;\nconst recordType = ZodRecord.create;\nconst mapType = ZodMap.create;\nconst setType = ZodSet.create;\nconst functionType = ZodFunction.create;\nconst lazyType = ZodLazy.create;\nconst literalType = ZodLiteral.create;\nconst enumType = ZodEnum.create;\nconst nativeEnumType = ZodNativeEnum.create;\nconst promiseType = ZodPromise.create;\nconst effectsType = ZodEffects.create;\nconst optionalType = ZodOptional.create;\nconst nullableType = ZodNullable.create;\nconst preprocessType = ZodEffects.createWithPreprocess;\nconst ostring = () => stringType().optional();\nconst onumber = () => numberType().optional();\nconst oboolean = () => booleanType().optional();\nconst NEVER = INVALID;\n\nvar mod = /*#__PURE__*/Object.freeze({\n __proto__: null,\n getParsedType: getParsedType,\n ZodParsedType: ZodParsedType,\n defaultErrorMap: errorMap,\n setErrorMap: setErrorMap,\n getErrorMap: getErrorMap,\n makeIssue: makeIssue,\n EMPTY_PATH: EMPTY_PATH,\n addIssueToContext: addIssueToContext,\n ParseStatus: ParseStatus,\n INVALID: INVALID,\n DIRTY: DIRTY,\n OK: OK,\n isAborted: isAborted,\n isDirty: isDirty,\n isValid: isValid,\n isAsync: isAsync,\n ZodType: ZodType,\n ZodString: ZodString,\n ZodNumber: ZodNumber,\n ZodBigInt: ZodBigInt,\n ZodBoolean: ZodBoolean,\n ZodDate: ZodDate,\n ZodUndefined: ZodUndefined,\n ZodNull: ZodNull,\n ZodAny: ZodAny,\n ZodUnknown: ZodUnknown,\n ZodNever: ZodNever,\n ZodVoid: ZodVoid,\n ZodArray: ZodArray,\n get objectUtil () { return objectUtil; },\n ZodObject: ZodObject,\n ZodUnion: ZodUnion,\n ZodDiscriminatedUnion: ZodDiscriminatedUnion,\n ZodIntersection: ZodIntersection,\n ZodTuple: ZodTuple,\n ZodRecord: ZodRecord,\n ZodMap: ZodMap,\n ZodSet: ZodSet,\n ZodFunction: ZodFunction,\n ZodLazy: ZodLazy,\n ZodLiteral: ZodLiteral,\n ZodEnum: ZodEnum,\n ZodNativeEnum: ZodNativeEnum,\n ZodPromise: ZodPromise,\n ZodEffects: ZodEffects,\n ZodTransformer: ZodEffects,\n ZodOptional: ZodOptional,\n ZodNullable: ZodNullable,\n ZodDefault: ZodDefault,\n ZodNaN: ZodNaN,\n BRAND: BRAND,\n ZodBranded: ZodBranded,\n custom: custom,\n Schema: ZodType,\n ZodSchema: ZodType,\n late: late,\n get ZodFirstPartyTypeKind () { return ZodFirstPartyTypeKind; },\n any: anyType,\n array: arrayType,\n bigint: bigIntType,\n boolean: booleanType,\n date: dateType,\n discriminatedUnion: discriminatedUnionType,\n effect: effectsType,\n 'enum': enumType,\n 'function': functionType,\n 'instanceof': instanceOfType,\n intersection: intersectionType,\n lazy: lazyType,\n literal: literalType,\n map: mapType,\n nan: nanType,\n nativeEnum: nativeEnumType,\n never: neverType,\n 'null': nullType,\n nullable: nullableType,\n number: numberType,\n object: objectType,\n oboolean: oboolean,\n onumber: onumber,\n optional: optionalType,\n ostring: ostring,\n preprocess: preprocessType,\n promise: promiseType,\n record: recordType,\n set: setType,\n strictObject: strictObjectType,\n string: stringType,\n transformer: effectsType,\n tuple: tupleType,\n 'undefined': undefinedType,\n union: unionType,\n unknown: unknownType,\n 'void': voidType,\n NEVER: NEVER,\n ZodIssueCode: ZodIssueCode,\n quotelessJson: quotelessJson,\n ZodError: ZodError\n});\n\nexport { BRAND, DIRTY, EMPTY_PATH, INVALID, NEVER, OK, ParseStatus, ZodType as Schema, ZodAny, ZodArray, ZodBigInt, ZodBoolean, ZodBranded, ZodDate, ZodDefault, ZodDiscriminatedUnion, ZodEffects, ZodEnum, ZodError, ZodFirstPartyTypeKind, ZodFunction, ZodIntersection, ZodIssueCode, ZodLazy, ZodLiteral, ZodMap, ZodNaN, ZodNativeEnum, ZodNever, ZodNull, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodParsedType, ZodPromise, ZodRecord, ZodType as ZodSchema, ZodSet, ZodString, ZodEffects as ZodTransformer, ZodTuple, ZodType, ZodUndefined, ZodUnion, ZodUnknown, ZodVoid, addIssueToContext, anyType as any, arrayType as array, bigIntType as bigint, booleanType as boolean, custom, dateType as date, mod as default, errorMap as defaultErrorMap, discriminatedUnionType as discriminatedUnion, effectsType as effect, enumType as enum, functionType as function, getErrorMap, getParsedType, instanceOfType as instanceof, intersectionType as intersection, isAborted, isAsync, isDirty, isValid, late, lazyType as lazy, literalType as literal, makeIssue, mapType as map, nanType as nan, nativeEnumType as nativeEnum, neverType as never, nullType as null, nullableType as nullable, numberType as number, objectType as object, objectUtil, oboolean, onumber, optionalType as optional, ostring, preprocessType as preprocess, promiseType as promise, quotelessJson, recordType as record, setType as set, setErrorMap, strictObjectType as strictObject, stringType as string, effectsType as transformer, tupleType as tuple, undefinedType as undefined, unionType as union, unknownType as unknown, voidType as void, mod as z };\n", "import { z } from 'zod'\n\nexport type QueryParams = Record\nexport type Headers = Record\n\nexport interface CallOptions {\n encoding?: string\n headers?: Headers\n}\n\nexport interface FetchHandlerResponse {\n status: number\n headers: Headers\n body: ArrayBuffer | undefined\n}\n\nexport type FetchHandler = (\n httpUri: string,\n httpMethod: string,\n httpHeaders: Headers,\n httpReqBody: any,\n) => Promise\n\nexport const errorResponseBody = z.object({\n error: z.string().optional(),\n message: z.string().optional(),\n})\nexport type ErrorResponseBody = z.infer\n\nexport enum ResponseType {\n Unknown = 1,\n InvalidResponse = 2,\n Success = 200,\n InvalidRequest = 400,\n AuthRequired = 401,\n Forbidden = 403,\n XRPCNotSupported = 404,\n PayloadTooLarge = 413,\n RateLimitExceeded = 429,\n InternalServerError = 500,\n MethodNotImplemented = 501,\n UpstreamFailure = 502,\n NotEnoughResouces = 503,\n UpstreamTimeout = 504,\n}\n\nexport const ResponseTypeNames = {\n [ResponseType.InvalidResponse]: 'InvalidResponse',\n [ResponseType.Success]: 'Success',\n [ResponseType.InvalidRequest]: 'InvalidRequest',\n [ResponseType.AuthRequired]: 'AuthenticationRequired',\n [ResponseType.Forbidden]: 'Forbidden',\n [ResponseType.XRPCNotSupported]: 'XRPCNotSupported',\n [ResponseType.PayloadTooLarge]: 'PayloadTooLarge',\n [ResponseType.RateLimitExceeded]: 'RateLimitExceeded',\n [ResponseType.InternalServerError]: 'InternalServerError',\n [ResponseType.MethodNotImplemented]: 'MethodNotImplemented',\n [ResponseType.UpstreamFailure]: 'UpstreamFailure',\n [ResponseType.NotEnoughResouces]: 'NotEnoughResouces',\n [ResponseType.UpstreamTimeout]: 'UpstreamTimeout',\n}\n\nexport const ResponseTypeStrings = {\n [ResponseType.InvalidResponse]: 'Invalid Response',\n [ResponseType.Success]: 'Success',\n [ResponseType.InvalidRequest]: 'Invalid Request',\n [ResponseType.AuthRequired]: 'Authentication Required',\n [ResponseType.Forbidden]: 'Forbidden',\n [ResponseType.XRPCNotSupported]: 'XRPC Not Supported',\n [ResponseType.PayloadTooLarge]: 'Payload Too Large',\n [ResponseType.RateLimitExceeded]: 'Rate Limit Exceeded',\n [ResponseType.InternalServerError]: 'Internal Server Error',\n [ResponseType.MethodNotImplemented]: 'Method Not Implemented',\n [ResponseType.UpstreamFailure]: 'Upstream Failure',\n [ResponseType.NotEnoughResouces]: 'Not Enough Resouces',\n [ResponseType.UpstreamTimeout]: 'Upstream Timeout',\n}\n\nexport class XRPCResponse {\n success = true\n\n constructor(public data: any, public headers: Headers) {}\n}\n\nexport class XRPCError extends Error {\n success = false\n\n constructor(\n public status: ResponseType,\n public error?: string,\n message?: string,\n ) {\n super(message || error || ResponseTypeStrings[status])\n if (!this.error) {\n this.error = ResponseTypeNames[status]\n }\n }\n}\n", "/*\nGrammar:\n\nalpha = \"a\" / \"b\" / \"c\" / \"d\" / \"e\" / \"f\" / \"g\" / \"h\" / \"i\" / \"j\" / \"k\" / \"l\" / \"m\" / \"n\" / \"o\" / \"p\" / \"q\" / \"r\" / \"s\" / \"t\" / \"u\" / \"v\" / \"w\" / \"x\" / \"y\" / \"z\" / \"A\" / \"B\" / \"C\" / \"D\" / \"E\" / \"F\" / \"G\" / \"H\" / \"I\" / \"J\" / \"K\" / \"L\" / \"M\" / \"N\" / \"O\" / \"P\" / \"Q\" / \"R\" / \"S\" / \"T\" / \"U\" / \"V\" / \"W\" / \"X\" / \"Y\" / \"Z\"\nnumber = \"1\" / \"2\" / \"3\" / \"4\" / \"5\" / \"6\" / \"7\" / \"8\" / \"9\" / \"0\"\ndelim = \".\"\nsegment = alpha *( alpha / number / \"-\" )\nauthority = segment *( delim segment )\nname = segment\nnsid = authority delim name\nnsid-ns = authority delim \"*\"\n\n*/\n\nconst SEGMENT_RE = /^[a-zA-Z]([a-zA-Z0-9-])*$/\n\nexport class NSID {\n segments: string[] = []\n\n static parse(nsid: string): NSID {\n return new NSID(nsid)\n }\n\n static create(authority: string, name: string): NSID {\n const segments = [...authority.split('.').reverse(), name].join('.')\n return new NSID(segments)\n }\n\n static isValid(nsid: string): boolean {\n try {\n NSID.parse(nsid)\n return true\n } catch (e: any) {\n return false\n }\n }\n\n constructor(nsid: string) {\n const segments = nsid.split('.')\n if (segments.length <= 2) {\n throw new Error(`Invalid NSID: ${nsid}`)\n }\n for (let i = 0; i < segments.length; i++) {\n const segment = segments[i]\n if (SEGMENT_RE.test(segment)) {\n continue\n }\n if (i === segments.length - 1 && segment === '*') {\n continue\n }\n throw new Error(`Invalid NSID: invalid character in segment \"${segment}\"`)\n }\n this.segments = segments\n }\n\n get authority() {\n return this.segments\n .slice(0, this.segments.length - 1)\n .reverse()\n .join('.')\n }\n\n get name() {\n return this.segments.at(this.segments.length - 1)\n }\n\n toString() {\n return this.segments.join('.')\n }\n}\n", "import { z } from 'zod'\nimport { NSID } from '@atproto/nsid'\n\nexport const tokenSchema = z.object({\n lexicon: z.literal(1),\n id: z.string().refine((v: string) => NSID.isValid(v), {\n message: 'Must be a valid NSID',\n }),\n type: z.enum(['token']),\n revision: z.number().optional(),\n description: z.string().optional(),\n defs: z.any().optional(),\n})\nexport type TokenSchema = z.infer\n\nexport function isValidTokenSchema(v: unknown): v is TokenSchema {\n return tokenSchema.safeParse(v).success\n}\n\nexport const recordSchema = z.object({\n lexicon: z.literal(1),\n id: z.string().refine((v: string) => NSID.isValid(v), {\n message: 'Must be a valid NSID',\n }),\n type: z.enum(['record']),\n revision: z.number().optional(),\n description: z.string().optional(),\n key: z.string().optional(),\n record: z.any().optional(),\n defs: z.any().optional(),\n})\nexport type RecordSchema = z.infer\n\nexport function isValidRecordSchema(v: unknown): v is RecordSchema {\n return recordSchema.safeParse(v).success\n}\n\nexport class RecordSchemaMalformedError extends Error {\n constructor(\n message: string,\n public schemaDef: any,\n public issues?: z.ZodIssue[],\n ) {\n super(message)\n this.schemaDef = schemaDef\n this.issues = issues\n }\n}\n\nexport const methodSchemaBody = z.object({\n encoding: z.union([z.string(), z.string().array()]),\n description: z.string().optional(),\n schema: z.any().optional(),\n})\nexport type MethodSchemaBody = z.infer\n\nexport const methodSchemaParam = z.object({\n type: z.enum(['string', 'number', 'integer', 'boolean']),\n description: z.string().optional(),\n default: z.union([z.string(), z.number(), z.boolean()]).optional(),\n required: z.boolean().optional(),\n minLength: z.number().optional(),\n maxLength: z.number().optional(),\n minimum: z.number().optional(),\n maximum: z.number().optional(),\n})\nexport type MethodSchemaParam = z.infer\n\nexport const methodSchemaError = z.object({\n name: z.string(),\n description: z.string().optional(),\n})\nexport type MethodSchemaError = z.infer\n\nexport const methodSchema = z.object({\n lexicon: z.literal(1),\n id: z.string(),\n type: z.enum(['query', 'procedure']),\n description: z.string().optional(),\n parameters: z.record(methodSchemaParam).optional(),\n input: methodSchemaBody.optional(),\n output: methodSchemaBody.optional(),\n errors: methodSchemaError.array().optional(),\n defs: z.any().optional(),\n})\nexport type MethodSchema = z.infer\n\nexport function isValidMethodSchema(v: unknown): v is MethodSchema {\n return methodSchema.safeParse(v).success\n}\n\nexport type Schema = TokenSchema | RecordSchema | MethodSchema\n\nexport class SchemaNotFoundError extends Error {}\n", "import Ajv, { ValidateFunction } from 'ajv'\nimport ajvAddFormats from 'ajv-formats'\nimport { RecordSchema, RecordSchemaMalformedError } from '../types'\n\nconst ajv = new Ajv()\najvAddFormats(ajv)\n\n/**\n * A compiled schema.\n */\nexport class CompiledRecordSchema {\n id: string\n validate?: ValidateFunction\n\n constructor(public def: RecordSchema) {\n this.id = def.id\n\n // .record\n try {\n if (def.record) {\n if (def.record.type !== 'object') {\n throw new Error('The base .type must be an \"object\"')\n }\n this.validate = ajv.compile(def.record)\n }\n } catch (e: any) {\n throw new RecordSchemaMalformedError(\n `The \"${this.id}\" .record failed to compile: ${e.message}`,\n def,\n )\n }\n }\n}\n\nexport default CompiledRecordSchema\n", "import Ajv from 'ajv'\nimport ajvAddFormats from 'ajv-formats'\nimport * as util from './util'\n\nimport CompiledRecordSchema from './schema'\nimport RecordSchemas from './schemas'\nimport {\n ValidationError,\n ValidationResult,\n ValidationResultCode,\n} from './validation'\n\nconst ajv = new Ajv()\najvAddFormats(ajv)\n\nexport interface RecordValidatorDescription {\n type: string | string[]\n ext?: string | string[]\n}\n\n/**\n * Validates records using schemas.\n */\nexport class RecordValidator {\n constructor(\n private schemas: RecordSchemas,\n public type: CompiledRecordSchema[],\n public ext: CompiledRecordSchema[],\n ) {}\n\n /**\n * Returns detailed information about validity and compatibility.\n */\n validate(value: unknown): ValidationResult {\n const res = new ValidationResult()\n\n // basic validation\n if (!util.isRecord(value)) {\n res._t(ValidationResultCode.Invalid, `The passed value is not an object`)\n return res // abort now\n }\n if (!value.$type) {\n res._t(\n ValidationResultCode.Invalid,\n `The passed value does not declare a $type`,\n )\n return res // abort now\n }\n\n // lookup schema\n const typeSchema = this.type.find(schemaIdFilter(value.$type as string))\n if (!typeSchema) {\n res._t(\n ValidationResultCode.Incompatible,\n `Record type ${value.$type} is not supported`,\n )\n } else if (!typeSchema.validate) {\n res._t(\n ValidationResultCode.Incompatible,\n `Record type ${value.$type} is not a record schema`,\n )\n } else {\n // validate base type\n const typeIsValid = typeSchema.validate(value)\n if (!typeIsValid) {\n res._fail(typeSchema, typeSchema.validate)\n }\n }\n\n // validate extension objects\n if ('$ext' in value && typeof value.$ext === 'object') {\n for (const [extSchemaId, obj] of Object.entries(\n value.$ext as Record,\n )) {\n const extObj = obj as Record\n\n const extIsRequired =\n '$required' in extObj && typeof extObj.$required === 'boolean'\n ? extObj.$required\n : false\n\n let extFallback\n if ('$fallback' in extObj && typeof extObj.$fallback === 'string') {\n extFallback = extObj.$fallback\n }\n\n // lookup extension\n const extSchema = this.ext.find(schemaIdFilter(extSchemaId))\n if (!extSchema || !extSchema.validate) {\n if (extIsRequired) {\n res._t(\n ValidationResultCode.Incompatible,\n `Record extension ${extSchemaId} is not supported`,\n )\n } else {\n res._t(ValidationResultCode.Partial, extFallback)\n }\n } else {\n // validate extension object\n const extObjIsValid = extSchema.validate(extObj)\n if (!extObjIsValid) {\n res._fail(extSchema, extSchema.validate)\n }\n }\n }\n }\n\n return res\n }\n\n /**\n * Provides a simple boolean check of validity.\n */\n isValid(value: unknown) {\n const res = this.validate(value)\n return res.valid\n }\n\n /**\n * Like validate() but throws if validation fails.\n */\n assertValid(value: unknown) {\n const res = this.validate(value)\n if (!res.valid) {\n throw new ValidationError(res)\n }\n return res\n }\n}\n\n// helpers\n\nconst schemaIdFilter = (schemaId: string) => (s: CompiledRecordSchema) =>\n s.id === schemaId\n\nexport default RecordValidator\n", "import { MethodSchema } from '@atproto/lexicon'\nimport {\n CallOptions,\n Headers,\n QueryParams,\n ResponseType,\n XRPCError,\n} from './types'\n\nexport function getMethodSchemaHTTPMethod(schema: MethodSchema) {\n if (schema.type === 'query') {\n return 'get'\n }\n if (schema.type === 'procedure') {\n return 'post'\n }\n throw new Error(`Invalid method type: ${schema.type}`)\n}\n\nexport function constructMethodCallUri(\n schema: MethodSchema,\n serviceUri: URL,\n params?: QueryParams,\n): string {\n const uri = new URL(serviceUri)\n uri.pathname = `/xrpc/${schema.id}`\n\n // default parameters\n if (schema.parameters) {\n for (const [key, paramSchema] of Object.entries(schema.parameters)) {\n if (paramSchema.default) {\n uri.searchParams.set(\n key,\n encodeQueryParam(paramSchema.type, paramSchema.default),\n )\n }\n }\n }\n\n // given parameters\n if (params) {\n for (const [key, value] of Object.entries(params)) {\n const paramSchema = schema.parameters?.[key]\n if (!paramSchema) {\n throw new Error(`Invalid query parameter: ${key}`)\n }\n if (value !== undefined) {\n uri.searchParams.set(key, encodeQueryParam(paramSchema.type, value))\n }\n }\n }\n\n return uri.toString()\n}\n\nexport function encodeQueryParam(\n type: 'string' | 'number' | 'integer' | 'boolean',\n value: any,\n): string {\n if (type === 'string') {\n return String(value)\n }\n if (type === 'number') {\n return String(Number(value))\n } else if (type === 'integer') {\n return String(Number(value) | 0)\n } else if (type === 'boolean') {\n return value ? 'true' : 'false'\n }\n throw new Error(`Unsupported query param type: ${type}`)\n}\n\nexport function constructMethodCallHeaders(\n schema: MethodSchema,\n data?: any,\n opts?: CallOptions,\n): Headers {\n const headers: Headers = opts?.headers || {}\n if (schema.type === 'procedure') {\n if (opts?.encoding) {\n headers['Content-Type'] = opts.encoding\n }\n if (data && typeof data === 'object') {\n if (!headers['Content-Type']) {\n headers['Content-Type'] = 'application/json'\n }\n }\n }\n return headers\n}\n\nexport function encodeMethodCallBody(\n headers: Headers,\n data?: any,\n): ArrayBuffer | undefined {\n if (!headers['Content-Type'] || typeof data === 'undefined') {\n return undefined\n }\n if (data instanceof ArrayBuffer) {\n return data\n }\n if (headers['Content-Type'].startsWith('text/')) {\n return new TextEncoder().encode(data.toString())\n }\n if (headers['Content-Type'].startsWith('application/json')) {\n return new TextEncoder().encode(JSON.stringify(data))\n }\n return data\n}\n\nexport function httpResponseCodeToEnum(status: number): ResponseType {\n let resCode: ResponseType\n if (status in ResponseType) {\n resCode = status\n } else if (status >= 100 && status < 200) {\n resCode = ResponseType.XRPCNotSupported\n } else if (status >= 200 && status < 300) {\n resCode = ResponseType.Success\n } else if (status >= 300 && status < 400) {\n resCode = ResponseType.XRPCNotSupported\n } else if (status >= 400 && status < 500) {\n resCode = ResponseType.InvalidRequest\n } else {\n resCode = ResponseType.InternalServerError\n }\n return resCode\n}\n\nexport function httpResponseBodyParse(\n mimeType: string | null,\n data: ArrayBuffer | undefined,\n): any {\n if (mimeType) {\n if (mimeType.includes('application/json') && data?.byteLength) {\n try {\n const str = new TextDecoder().decode(data)\n return JSON.parse(str)\n } catch (e: any) {\n throw new XRPCError(\n ResponseType.InvalidResponse,\n `Failed to parse response body: ${e.toString()}`,\n )\n }\n }\n if (mimeType.startsWith('text/') && data?.byteLength) {\n try {\n return new TextDecoder().decode(data)\n } catch (e: any) {\n throw new XRPCError(\n ResponseType.InvalidResponse,\n `Failed to parse response body: ${e.toString()}`,\n )\n }\n }\n }\n return data\n}\n", "import {\n methodSchema,\n MethodSchema,\n isValidMethodSchema,\n} from '@atproto/lexicon'\nimport {\n getMethodSchemaHTTPMethod,\n constructMethodCallUri,\n constructMethodCallHeaders,\n encodeMethodCallBody,\n httpResponseCodeToEnum,\n httpResponseBodyParse,\n} from './util'\nimport {\n FetchHandler,\n FetchHandlerResponse,\n Headers,\n CallOptions,\n QueryParams,\n ResponseType,\n errorResponseBody,\n ErrorResponseBody,\n XRPCResponse,\n XRPCError,\n} from './types'\n\nexport class Client {\n fetch: FetchHandler = defaultFetchHandler\n schemas: Map = new Map()\n\n // method calls\n //\n\n async call(\n serviceUri: string | URL,\n methodNsid: string,\n params?: QueryParams,\n data?: unknown,\n opts?: CallOptions,\n ) {\n return this.service(serviceUri).call(methodNsid, params, data, opts)\n }\n\n service(serviceUri: string | URL) {\n return new ServiceClient(this, serviceUri)\n }\n\n // schemas\n // =\n\n addSchema(schema: unknown) {\n if (isValidMethodSchema(schema)) {\n this.schemas.set(schema.id, schema)\n } else {\n methodSchema.parse(schema) // will throw with the validation error\n }\n }\n\n addSchemas(schemas: unknown[]) {\n for (const schema of schemas) {\n this.addSchema(schema)\n }\n }\n\n listSchemaIds(): string[] {\n return Array.from(this.schemas.keys())\n }\n\n removeSchema(nsid: string) {\n this.schemas.delete(nsid)\n }\n}\n\nexport class ServiceClient {\n baseClient: Client\n uri: URL\n headers: Record = {}\n\n constructor(baseClient: Client, serviceUri: string | URL) {\n this.baseClient = baseClient\n this.uri = typeof serviceUri === 'string' ? new URL(serviceUri) : serviceUri\n }\n\n setHeader(key: string, value: string): void {\n this.headers[key] = value\n }\n\n unsetHeader(key: string): void {\n delete this.headers[key]\n }\n\n async call(\n methodNsid: string,\n params?: QueryParams,\n data?: unknown,\n opts?: CallOptions,\n ) {\n const schema = this.baseClient.schemas.get(methodNsid)\n if (!schema) {\n throw new Error(`Method schema not found: ${methodNsid}`)\n }\n const httpMethod = getMethodSchemaHTTPMethod(schema)\n const httpUri = constructMethodCallUri(schema, this.uri, params)\n const httpHeaders = constructMethodCallHeaders(schema, data, {\n headers: {\n ...this.headers,\n ...opts?.headers,\n },\n encoding: opts?.encoding,\n })\n\n const res = await this.baseClient.fetch(\n httpUri,\n httpMethod,\n httpHeaders,\n data,\n )\n\n const resCode = httpResponseCodeToEnum(res.status)\n if (resCode === ResponseType.Success) {\n return new XRPCResponse(res.body, res.headers)\n } else {\n if (res.body && isErrorResponseBody(res.body)) {\n throw new XRPCError(resCode, res.body.error, res.body.message)\n } else {\n throw new XRPCError(resCode)\n }\n }\n }\n}\n\nasync function defaultFetchHandler(\n httpUri: string,\n httpMethod: string,\n httpHeaders: Headers,\n httpReqBody: unknown,\n): Promise {\n try {\n const res = await fetch(httpUri, {\n method: httpMethod,\n headers: httpHeaders,\n body: encodeMethodCallBody(httpHeaders, httpReqBody),\n })\n const resBody = await res.arrayBuffer()\n return {\n status: res.status,\n headers: Object.fromEntries(res.headers.entries()),\n body: httpResponseBodyParse(res.headers.get('content-type'), resBody),\n }\n } catch (e: any) {\n throw new XRPCError(ResponseType.Unknown, e.toString())\n }\n}\n\nfunction isErrorResponseBody(v: unknown): v is ErrorResponseBody {\n return errorResponseBody.safeParse(v).success\n}\n", "export * from './types'\nexport * from './client'\n\nimport { Client } from './client'\nconst defaultInst = new Client()\nexport default defaultInst\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { MethodSchema, RecordSchema } from '@atproto/lexicon'\n\nexport const methodSchemaDict: Record = {\n 'com.atproto.account.create': {\n lexicon: 1,\n id: 'com.atproto.account.create',\n type: 'procedure',\n description: 'Create an account.',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['handle', 'email', 'password'],\n properties: {\n email: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n inviteCode: {\n type: 'string',\n },\n password: {\n type: 'string',\n },\n recoveryKey: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: [\n 'accessJwt',\n 'refreshJwt',\n 'handle',\n 'did',\n 'declarationCid',\n ],\n properties: {\n accessJwt: {\n type: 'string',\n },\n refreshJwt: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n declarationCid: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n errors: [\n {\n name: 'InvalidHandle',\n },\n {\n name: 'InvalidPassword',\n },\n {\n name: 'InvalidInviteCode',\n },\n {\n name: 'HandleNotAvailable',\n },\n ],\n },\n 'com.atproto.account.createInviteCode': {\n lexicon: 1,\n id: 'com.atproto.account.createInviteCode',\n type: 'procedure',\n description: 'Create an invite code.',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['useCount'],\n properties: {\n useCount: {\n type: 'number',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['code'],\n properties: {\n code: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.account.delete': {\n lexicon: 1,\n id: 'com.atproto.account.delete',\n type: 'procedure',\n description: 'Delete an account.',\n input: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n output: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n },\n 'com.atproto.account.get': {\n lexicon: 1,\n id: 'com.atproto.account.get',\n type: 'query',\n description: 'Get information about an account.',\n parameters: {},\n output: {\n encoding: '',\n schema: {\n $defs: {},\n },\n },\n },\n 'com.atproto.account.requestPasswordReset': {\n lexicon: 1,\n id: 'com.atproto.account.requestPasswordReset',\n type: 'procedure',\n description: 'Initiate a user account password reset via email',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['email'],\n properties: {\n email: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n properties: {},\n $defs: {},\n },\n },\n },\n 'com.atproto.account.resetPassword': {\n lexicon: 1,\n id: 'com.atproto.account.resetPassword',\n type: 'procedure',\n description: 'Reset a user account password using a token',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['token', 'password'],\n properties: {\n token: {\n type: 'string',\n },\n password: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n properties: {},\n $defs: {},\n },\n },\n errors: [\n {\n name: 'ExpiredToken',\n },\n {\n name: 'InvalidToken',\n },\n ],\n },\n 'com.atproto.handle.resolve': {\n lexicon: 1,\n id: 'com.atproto.handle.resolve',\n type: 'query',\n description: 'Provides the DID of a repo.',\n parameters: {\n handle: {\n type: 'string',\n description:\n \"The handle to resolve. If not supplied, will resolve the host's own handle.\",\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['did'],\n properties: {\n did: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repo.batchWrite': {\n lexicon: 1,\n id: 'com.atproto.repo.batchWrite',\n type: 'procedure',\n description: 'Apply a batch transaction of creates, puts, and deletes.',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['did', 'writes'],\n properties: {\n did: {\n type: 'string',\n description: 'The DID of the repo.',\n },\n validate: {\n type: 'boolean',\n default: true,\n description: 'Validate the records?',\n },\n writes: {\n type: 'array',\n items: {\n oneOf: [\n {\n type: 'object',\n required: ['action', 'collection', 'value'],\n properties: {\n action: {\n type: 'string',\n const: 'create',\n },\n collection: {\n type: 'string',\n },\n rkey: {\n type: 'string',\n },\n value: {},\n },\n },\n {\n type: 'object',\n required: ['action', 'collection', 'rkey', 'value'],\n properties: {\n action: {\n type: 'string',\n const: 'update',\n },\n collection: {\n type: 'string',\n },\n rkey: {\n type: 'string',\n },\n value: {},\n },\n },\n {\n type: 'object',\n required: ['action', 'collection', 'rkey'],\n properties: {\n action: {\n type: 'string',\n const: 'delete',\n },\n collection: {\n type: 'string',\n },\n rkey: {\n type: 'string',\n },\n },\n },\n ],\n },\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n $defs: {},\n },\n },\n },\n 'com.atproto.repo.createRecord': {\n lexicon: 1,\n id: 'com.atproto.repo.createRecord',\n type: 'procedure',\n description: 'Create a new record.',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['did', 'collection', 'record'],\n properties: {\n did: {\n type: 'string',\n description: 'The DID of the repo.',\n },\n collection: {\n type: 'string',\n description: 'The NSID of the record collection.',\n },\n validate: {\n type: 'boolean',\n default: true,\n description: 'Validate the record?',\n },\n record: {\n type: 'object',\n description: 'The record to create',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repo.deleteRecord': {\n lexicon: 1,\n id: 'com.atproto.repo.deleteRecord',\n type: 'procedure',\n description: 'Delete a record.',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['did', 'collection', 'rkey'],\n properties: {\n did: {\n type: 'string',\n description: 'The DID of the repo.',\n },\n collection: {\n type: 'string',\n description: 'The NSID of the record collection.',\n },\n rkey: {\n type: 'string',\n description: 'The key of the record.',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repo.describe': {\n lexicon: 1,\n id: 'com.atproto.repo.describe',\n type: 'query',\n description:\n 'Get information about the repo, including the list of collections.',\n parameters: {\n user: {\n type: 'string',\n required: true,\n description: 'The handle or DID of the repo.',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['handle', 'did', 'didDoc', 'collections', 'handleIsCorrect'],\n properties: {\n handle: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n didDoc: {\n type: 'object',\n },\n collections: {\n type: 'array',\n items: {\n type: 'string',\n },\n },\n handleIsCorrect: {\n type: 'boolean',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repo.getRecord': {\n lexicon: 1,\n id: 'com.atproto.repo.getRecord',\n type: 'query',\n description: 'Fetch a record.',\n parameters: {\n user: {\n type: 'string',\n required: true,\n description: 'The handle or DID of the repo.',\n },\n collection: {\n type: 'string',\n required: true,\n description: 'The NSID of the collection.',\n },\n rkey: {\n type: 'string',\n required: true,\n description: 'The key of the record.',\n },\n cid: {\n type: 'string',\n required: false,\n description:\n 'The CID of the version of the record. If not specified, then return the most recent version.',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'value'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n value: {\n type: 'object',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repo.listRecords': {\n lexicon: 1,\n id: 'com.atproto.repo.listRecords',\n type: 'query',\n description: 'List a range of records in a collection.',\n parameters: {\n user: {\n type: 'string',\n required: true,\n description: 'The handle or DID of the repo.',\n },\n collection: {\n type: 'string',\n required: true,\n description: 'The NSID of the record type.',\n },\n limit: {\n type: 'number',\n minimum: 1,\n default: 50,\n description: 'The number of records to return. TODO-max number?',\n },\n before: {\n type: 'string',\n description: 'A TID to filter the range of records returned.',\n },\n after: {\n type: 'string',\n description: 'A TID to filter the range of records returned.',\n },\n reverse: {\n type: 'boolean',\n description: 'Reverse the order of the returned records?',\n default: false,\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['records'],\n properties: {\n cursor: {\n type: 'string',\n },\n records: {\n type: 'array',\n items: {\n type: 'object',\n required: ['uri', 'cid', 'value'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n value: {\n type: 'object',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.repo.putRecord': {\n lexicon: 1,\n id: 'com.atproto.repo.putRecord',\n type: 'procedure',\n description: 'Write a record.',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['did', 'collection', 'rkey', 'record'],\n properties: {\n did: {\n type: 'string',\n description: 'The DID of the repo.',\n },\n collection: {\n type: 'string',\n description: 'The NSID of the record type.',\n },\n rkey: {\n type: 'string',\n description: 'The TID of the record.',\n },\n validate: {\n type: 'boolean',\n default: true,\n description: 'Validate the record?',\n },\n record: {\n type: 'object',\n description: 'The record to create',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.server.getAccountsConfig': {\n lexicon: 1,\n id: 'com.atproto.server.getAccountsConfig',\n type: 'query',\n description:\n \"Get a document describing the service's accounts configuration.\",\n parameters: {},\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['availableUserDomains'],\n properties: {\n inviteCodeRequired: {\n type: 'boolean',\n },\n availableUserDomains: {\n type: 'array',\n items: {\n type: 'string',\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.session.create': {\n lexicon: 1,\n id: 'com.atproto.session.create',\n type: 'procedure',\n description: 'Create an authentication session.',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['handle', 'password'],\n properties: {\n handle: {\n type: 'string',\n },\n password: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['accessJwt', 'refreshJwt', 'handle', 'did'],\n properties: {\n accessJwt: {\n type: 'string',\n },\n refreshJwt: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.session.delete': {\n lexicon: 1,\n id: 'com.atproto.session.delete',\n type: 'procedure',\n description: 'Delete the current session.',\n output: {\n encoding: 'application/json',\n schema: {\n $defs: {},\n },\n },\n },\n 'com.atproto.session.get': {\n lexicon: 1,\n id: 'com.atproto.session.get',\n type: 'query',\n description: 'Get information about the current session.',\n parameters: {},\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['handle', 'did'],\n properties: {\n handle: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.session.refresh': {\n lexicon: 1,\n id: 'com.atproto.session.refresh',\n type: 'procedure',\n description: 'Refresh an authentication session.',\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['accessJwt', 'refreshJwt', 'handle', 'did'],\n properties: {\n accessJwt: {\n type: 'string',\n },\n refreshJwt: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n did: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.sync.getRepo': {\n lexicon: 1,\n id: 'com.atproto.sync.getRepo',\n type: 'query',\n description: 'Gets the repo state.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n from: {\n type: 'string',\n description: 'A past commit CID',\n },\n },\n output: {\n encoding: 'application/cbor',\n },\n },\n 'com.atproto.sync.getRoot': {\n lexicon: 1,\n id: 'com.atproto.sync.getRoot',\n type: 'query',\n description: 'Gets the current root CID of a repo.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['root'],\n properties: {\n root: {\n type: 'string',\n },\n },\n $defs: {},\n },\n },\n },\n 'com.atproto.sync.updateRepo': {\n lexicon: 1,\n id: 'com.atproto.sync.updateRepo',\n type: 'procedure',\n description: 'Writes commits to a repo.',\n parameters: {\n did: {\n type: 'string',\n required: true,\n description: 'The DID of the repo.',\n },\n },\n input: {\n encoding: 'application/cbor',\n },\n },\n 'app.bsky.actor.getProfile': {\n lexicon: 1,\n id: 'app.bsky.actor.getProfile',\n type: 'query',\n parameters: {\n user: {\n type: 'string',\n required: true,\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: [\n 'did',\n 'handle',\n 'followersCount',\n 'followsCount',\n 'postsCount',\n ],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n description: {\n type: 'string',\n maxLength: 256,\n },\n followersCount: {\n type: 'number',\n },\n followsCount: {\n type: 'number',\n },\n postsCount: {\n type: 'number',\n },\n myState: {\n type: 'object',\n properties: {\n follow: {\n type: 'string',\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.actor.search': {\n lexicon: 1,\n id: 'app.bsky.actor.search',\n type: 'query',\n description: 'Find users matching search criteria',\n parameters: {\n term: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['users'],\n properties: {\n cursor: {\n type: 'string',\n },\n users: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n description: {\n type: 'string',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.actor.searchTypeahead': {\n lexicon: 1,\n id: 'app.bsky.actor.searchTypeahead',\n type: 'query',\n description: 'Find user suggestions for a search term',\n parameters: {\n term: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['users'],\n properties: {\n users: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.actor.updateProfile': {\n lexicon: 1,\n id: 'app.bsky.actor.updateProfile',\n type: 'procedure',\n description: 'Notify server that the user has seen notifications',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: [],\n properties: {\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n description: {\n type: 'string',\n maxLength: 256,\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'cid', 'record'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n record: {\n type: 'object',\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.feed.getAuthorFeed': {\n lexicon: 1,\n id: 'app.bsky.feed.getAuthorFeed',\n type: 'query',\n description: \"A view of a user's feed\",\n parameters: {\n author: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['feed'],\n properties: {\n cursor: {\n type: 'string',\n },\n feed: {\n type: 'array',\n items: {\n $ref: '#/$defs/feedItem',\n },\n },\n },\n $defs: {\n feedItem: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'repostCount',\n 'likeCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n repostedBy: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n replyCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n likeCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n },\n defs: {\n feedItem: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'repostCount',\n 'likeCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n repostedBy: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n replyCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n likeCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n 'app.bsky.feed.getLikedBy': {\n lexicon: 1,\n id: 'app.bsky.feed.getLikedBy',\n type: 'query',\n parameters: {\n uri: {\n type: 'string',\n required: true,\n },\n cid: {\n type: 'string',\n required: false,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'likedBy'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n cursor: {\n type: 'string',\n },\n likedBy: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'handle', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.feed.getPostThread': {\n lexicon: 1,\n id: 'app.bsky.feed.getPostThread',\n type: 'query',\n parameters: {\n uri: {\n type: 'string',\n required: true,\n },\n depth: {\n type: 'number',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['thread'],\n properties: {\n thread: {\n $ref: '#/$defs/post',\n },\n },\n $defs: {\n post: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'likeCount',\n 'repostCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n parent: {\n $ref: '#/$defs/post',\n },\n replyCount: {\n type: 'number',\n },\n replies: {\n type: 'array',\n items: {\n $ref: '#/$defs/post',\n },\n },\n likeCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n },\n defs: {\n post: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'likeCount',\n 'repostCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n parent: {\n $ref: '#/$defs/post',\n },\n replyCount: {\n type: 'number',\n },\n replies: {\n type: 'array',\n items: {\n $ref: '#/$defs/post',\n },\n },\n likeCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n 'app.bsky.feed.getRepostedBy': {\n lexicon: 1,\n id: 'app.bsky.feed.getRepostedBy',\n type: 'query',\n parameters: {\n uri: {\n type: 'string',\n required: true,\n },\n cid: {\n type: 'string',\n required: false,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['uri', 'repostedBy'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n cursor: {\n type: 'string',\n },\n repostedBy: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'handle', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.feed.getTimeline': {\n lexicon: 1,\n id: 'app.bsky.feed.getTimeline',\n type: 'query',\n description: \"A view of the user's home timeline\",\n parameters: {\n algorithm: {\n type: 'string',\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['feed'],\n properties: {\n cursor: {\n type: 'string',\n },\n feed: {\n type: 'array',\n items: {\n $ref: '#/$defs/feedItem',\n },\n },\n },\n $defs: {\n feedItem: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'repostCount',\n 'likeCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n repostedBy: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n replyCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n likeCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n },\n defs: {\n feedItem: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'record',\n 'replyCount',\n 'repostCount',\n 'likeCount',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n author: {\n $ref: '#/$defs/user',\n },\n repostedBy: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n embed: {\n oneOf: [\n {\n $ref: '#/$defs/recordEmbed',\n },\n {\n $ref: '#/$defs/externalEmbed',\n },\n {\n $ref: '#/$defs/unknownEmbed',\n },\n ],\n },\n replyCount: {\n type: 'number',\n },\n repostCount: {\n type: 'number',\n },\n likeCount: {\n type: 'number',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n myState: {\n type: 'object',\n properties: {\n repost: {\n type: 'string',\n },\n like: {\n type: 'string',\n },\n },\n },\n },\n },\n user: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n recordEmbed: {\n type: 'object',\n required: ['type', 'author', 'record'],\n properties: {\n type: {\n const: 'record',\n },\n author: {\n $ref: '#/$defs/user',\n },\n record: {\n type: 'object',\n },\n },\n },\n externalEmbed: {\n type: 'object',\n required: ['type', 'uri', 'title', 'description', 'imageUri'],\n properties: {\n type: {\n const: 'external',\n },\n uri: {\n type: 'string',\n },\n title: {\n type: 'string',\n },\n description: {\n type: 'string',\n },\n imageUri: {\n type: 'string',\n },\n },\n },\n unknownEmbed: {\n type: 'object',\n required: ['type'],\n properties: {\n type: {\n type: 'string',\n not: {\n enum: ['record', 'external'],\n },\n },\n },\n },\n },\n },\n 'app.bsky.graph.getFollowers': {\n lexicon: 1,\n id: 'app.bsky.graph.getFollowers',\n type: 'query',\n description: 'Who is following a user?',\n parameters: {\n user: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['subject', 'followers'],\n properties: {\n subject: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n cursor: {\n type: 'string',\n },\n followers: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'handle', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.graph.getFollows': {\n lexicon: 1,\n id: 'app.bsky.graph.getFollows',\n type: 'query',\n description: 'Who is a user following?',\n parameters: {\n user: {\n type: 'string',\n required: true,\n },\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['subject', 'follows'],\n properties: {\n subject: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n cursor: {\n type: 'string',\n },\n follows: {\n type: 'array',\n items: {\n type: 'object',\n required: ['did', 'handle', 'indexedAt'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.notification.getCount': {\n lexicon: 1,\n id: 'app.bsky.notification.getCount',\n type: 'query',\n parameters: {},\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['count'],\n properties: {\n count: {\n type: 'number',\n },\n },\n $defs: {},\n },\n },\n },\n 'app.bsky.notification.list': {\n lexicon: 1,\n id: 'app.bsky.notification.list',\n type: 'query',\n parameters: {\n limit: {\n type: 'number',\n maximum: 100,\n },\n before: {\n type: 'string',\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['notifications'],\n properties: {\n cursor: {\n type: 'string',\n },\n notifications: {\n type: 'array',\n items: {\n $ref: '#/$defs/notification',\n },\n },\n },\n $defs: {\n notification: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'reason',\n 'record',\n 'isRead',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n format: 'uri',\n },\n cid: {\n type: 'string',\n },\n author: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n reason: {\n type: 'string',\n $comment:\n \"Expected values are 'like', 'repost', 'follow', 'invite', 'mention' and 'reply'.\",\n },\n reasonSubject: {\n type: 'string',\n },\n record: {\n type: 'object',\n },\n isRead: {\n type: 'boolean',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n },\n defs: {\n notification: {\n type: 'object',\n required: [\n 'uri',\n 'cid',\n 'author',\n 'reason',\n 'record',\n 'isRead',\n 'indexedAt',\n ],\n properties: {\n uri: {\n type: 'string',\n format: 'uri',\n },\n cid: {\n type: 'string',\n },\n author: {\n type: 'object',\n required: ['did', 'handle'],\n properties: {\n did: {\n type: 'string',\n },\n handle: {\n type: 'string',\n },\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n },\n },\n reason: {\n type: 'string',\n $comment:\n \"Expected values are 'like', 'repost', 'follow', 'invite', 'mention' and 'reply'.\",\n },\n reasonSubject: {\n type: 'string',\n },\n record: {\n type: 'object',\n },\n isRead: {\n type: 'boolean',\n },\n indexedAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n },\n },\n },\n 'app.bsky.notification.updateSeen': {\n lexicon: 1,\n id: 'app.bsky.notification.updateSeen',\n type: 'procedure',\n description: 'Notify server that the user has seen notifications',\n input: {\n encoding: 'application/json',\n schema: {\n type: 'object',\n required: ['seenAt'],\n properties: {\n seenAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {},\n },\n },\n output: {\n encoding: 'application/json',\n schema: {\n $defs: {},\n },\n },\n },\n}\nexport const methodSchemas: MethodSchema[] = Object.values(methodSchemaDict)\nexport const ids = {\n AppBskyActorProfile: 'app.bsky.actor.profile',\n AppBskyFeedLike: 'app.bsky.feed.like',\n AppBskyFeedMediaEmbed: 'app.bsky.feed.mediaEmbed',\n AppBskyFeedPost: 'app.bsky.feed.post',\n AppBskyFeedRepost: 'app.bsky.feed.repost',\n AppBskyGraphFollow: 'app.bsky.graph.follow',\n AppBskyGraphInvite: 'app.bsky.graph.invite',\n AppBskyGraphInviteAccept: 'app.bsky.graph.inviteAccept',\n AppBskySystemDeclaration: 'app.bsky.system.declaration',\n}\nexport const recordSchemaDict: Record = {\n 'app.bsky.actor.profile': {\n lexicon: 1,\n id: 'app.bsky.actor.profile',\n type: 'record',\n key: 'literal:self',\n record: {\n type: 'object',\n required: ['displayName'],\n properties: {\n displayName: {\n type: 'string',\n maxLength: 64,\n },\n description: {\n type: 'string',\n maxLength: 256,\n },\n },\n $defs: {},\n },\n },\n 'app.bsky.feed.like': {\n lexicon: 1,\n id: 'app.bsky.feed.like',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['subject', 'createdAt'],\n properties: {\n subject: {\n $ref: '#/$defs/subject',\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n 'app.bsky.feed.mediaEmbed': {\n lexicon: 1,\n id: 'app.bsky.feed.mediaEmbed',\n type: 'record',\n description: 'A list of media embedded in a post or document.',\n key: 'tid',\n record: {\n type: 'object',\n required: ['media'],\n properties: {\n media: {\n type: 'array',\n items: {\n $ref: '#/$defs/mediaEmbed',\n },\n },\n },\n $defs: {\n mediaEmbed: {\n type: 'object',\n required: ['original'],\n properties: {\n alt: {\n type: 'string',\n },\n thumb: {\n $ref: '#/$defs/mediaEmbedBlob',\n },\n original: {\n $ref: '#/$defs/mediaEmbedBlob',\n },\n },\n },\n mediaEmbedBlob: {\n type: 'object',\n required: ['mimeType', 'blobId'],\n properties: {\n mimeType: {\n type: 'string',\n },\n blobId: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n mediaEmbed: {\n type: 'object',\n required: ['original'],\n properties: {\n alt: {\n type: 'string',\n },\n thumb: {\n $ref: '#/$defs/mediaEmbedBlob',\n },\n original: {\n $ref: '#/$defs/mediaEmbedBlob',\n },\n },\n },\n mediaEmbedBlob: {\n type: 'object',\n required: ['mimeType', 'blobId'],\n properties: {\n mimeType: {\n type: 'string',\n },\n blobId: {\n type: 'string',\n },\n },\n },\n },\n },\n 'app.bsky.feed.post': {\n lexicon: 1,\n id: 'app.bsky.feed.post',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['text', 'createdAt'],\n properties: {\n text: {\n type: 'string',\n maxLength: 256,\n },\n entities: {\n type: 'array',\n items: {\n $ref: '#/$defs/entity',\n },\n },\n reply: {\n type: 'object',\n required: ['root', 'parent'],\n properties: {\n root: {\n $ref: '#/$defs/postRef',\n },\n parent: {\n $ref: '#/$defs/postRef',\n },\n },\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n entity: {\n type: 'object',\n required: ['index', 'type', 'value'],\n properties: {\n index: {\n $ref: '#/$defs/textSlice',\n },\n type: {\n type: 'string',\n $comment: \"Expected values are 'mention', 'hashtag', and 'link'.\",\n },\n value: {\n type: 'string',\n },\n },\n },\n textSlice: {\n type: 'array',\n items: [\n {\n type: 'number',\n },\n {\n type: 'number',\n },\n ],\n minItems: 2,\n maxItems: 2,\n },\n postRef: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n postRef: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n entity: {\n type: 'object',\n required: ['index', 'type', 'value'],\n properties: {\n index: {\n $ref: '#/$defs/textSlice',\n },\n type: {\n type: 'string',\n $comment: \"Expected values are 'mention', 'hashtag', and 'link'.\",\n },\n value: {\n type: 'string',\n },\n },\n },\n textSlice: {\n type: 'array',\n items: [\n {\n type: 'number',\n },\n {\n type: 'number',\n },\n ],\n minItems: 2,\n maxItems: 2,\n },\n },\n },\n 'app.bsky.feed.repost': {\n lexicon: 1,\n id: 'app.bsky.feed.repost',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['subject', 'createdAt'],\n properties: {\n subject: {\n $ref: '#/$defs/subject',\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n defs: {\n subject: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n },\n },\n 'app.bsky.graph.follow': {\n lexicon: 1,\n id: 'app.bsky.graph.follow',\n type: 'record',\n description: 'A social follow',\n key: 'tid',\n record: {\n type: 'object',\n required: ['subject', 'createdAt'],\n properties: {\n subject: {\n type: 'object',\n required: ['did', 'declarationCid'],\n properties: {\n did: {\n type: 'string',\n },\n declarationCid: {\n type: 'string',\n },\n },\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {},\n },\n },\n 'app.bsky.graph.invite': {\n lexicon: 1,\n id: 'app.bsky.graph.invite',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['group', 'subject', 'createdAt'],\n properties: {\n group: {\n type: 'string',\n },\n subject: {\n type: 'object',\n required: ['did', 'declarationCid'],\n properties: {\n did: {\n type: 'string',\n },\n declarationCid: {\n type: 'string',\n },\n },\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {},\n },\n },\n 'app.bsky.graph.inviteAccept': {\n lexicon: 1,\n id: 'app.bsky.graph.inviteAccept',\n type: 'record',\n key: 'tid',\n record: {\n type: 'object',\n required: ['group', 'invite', 'createdAt'],\n properties: {\n group: {\n type: 'object',\n required: ['did', 'declarationCid'],\n properties: {\n did: {\n type: 'string',\n },\n declarationCid: {\n type: 'string',\n },\n },\n },\n invite: {\n type: 'object',\n required: ['uri', 'cid'],\n properties: {\n uri: {\n type: 'string',\n },\n cid: {\n type: 'string',\n },\n },\n },\n createdAt: {\n type: 'string',\n format: 'date-time',\n },\n },\n $defs: {},\n },\n },\n 'app.bsky.system.declaration': {\n lexicon: 1,\n id: 'app.bsky.system.declaration',\n description:\n 'Context for an account that is considered intrinsic to it and alters the fundamental understanding of an account of changed. A declaration should be treated as immutable.',\n type: 'record',\n key: 'literal:self',\n record: {\n type: 'object',\n required: ['actorType'],\n properties: {\n actorType: {\n oneOf: [\n {\n $ref: '#/$defs/actorKnown',\n },\n {\n $ref: '#/$defs/actorUnknown',\n },\n ],\n },\n },\n $defs: {\n actorKnown: {\n type: 'string',\n enum: ['app.bsky.system.actorUser', 'app.bsky.system.actorScene'],\n },\n actorUnknown: {\n type: 'string',\n not: {\n enum: ['app.bsky.system.actorUser', 'app.bsky.system.actorScene'],\n },\n },\n },\n },\n defs: {\n actorKnown: {\n type: 'string',\n enum: ['app.bsky.system.actorUser', 'app.bsky.system.actorScene'],\n },\n actorUnknown: {\n type: 'string',\n not: {\n enum: ['app.bsky.system.actorUser', 'app.bsky.system.actorScene'],\n },\n },\n },\n },\n}\nexport const recordSchemas: RecordSchema[] = Object.values(recordSchemaDict)\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n email: string;\n handle: string;\n inviteCode?: string;\n password: string;\n recoveryKey?: string;\n}\n\nexport interface OutputSchema {\n accessJwt: string;\n refreshJwt: string;\n handle: string;\n did: string;\n declarationCid: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport class InvalidHandleError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport class InvalidPasswordError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport class InvalidInviteCodeError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport class HandleNotAvailableError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n if (e.error === 'InvalidHandle') return new InvalidHandleError(e)\n if (e.error === 'InvalidPassword') return new InvalidPasswordError(e)\n if (e.error === 'InvalidInviteCode') return new InvalidInviteCodeError(e)\n if (e.error === 'HandleNotAvailable') return new HandleNotAvailableError(e)\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n useCount: number;\n}\n\nexport interface OutputSchema {\n code: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: '';\n}\n\nexport interface InputSchema {\n [k: string]: unknown;\n}\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n email: string;\n}\n\nexport interface OutputSchema {}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n token: string;\n password: string;\n}\n\nexport interface OutputSchema {}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport class ExpiredTokenError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport class InvalidTokenError extends XRPCError {\n constructor(src: XRPCError) {\n super(src.status, src.error, src.message)\n }\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n if (e.error === 'ExpiredToken') return new ExpiredTokenError(e)\n if (e.error === 'InvalidToken') return new InvalidTokenError(e)\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n handle?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n did: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n /**\n * The DID of the repo.\n */\n did: string;\n /**\n * Validate the records?\n */\n validate?: boolean;\n writes: (\n | {\n action: 'create',\n collection: string,\n rkey?: string,\n value: unknown,\n }\n | {\n action: 'update',\n collection: string,\n rkey: string,\n value: unknown,\n }\n | {\n action: 'delete',\n collection: string,\n rkey: string,\n }\n )[];\n}\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n /**\n * The DID of the repo.\n */\n did: string;\n /**\n * The NSID of the record collection.\n */\n collection: string;\n /**\n * Validate the record?\n */\n validate?: boolean;\n /**\n * The record to create\n */\n record: {};\n}\n\nexport interface OutputSchema {\n uri: string;\n cid: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n /**\n * The DID of the repo.\n */\n did: string;\n /**\n * The NSID of the record collection.\n */\n collection: string;\n /**\n * The key of the record.\n */\n rkey: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n handle: string;\n did: string;\n didDoc: {};\n collections: string[];\n handleIsCorrect: boolean;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n collection: string;\n rkey: string;\n cid?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n uri: string;\n cid?: string;\n value: {};\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n collection: string;\n limit?: number;\n before?: string;\n after?: string;\n reverse?: boolean;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n records: {\n uri: string,\n cid: string,\n value: {},\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n /**\n * The DID of the repo.\n */\n did: string;\n /**\n * The NSID of the record type.\n */\n collection: string;\n /**\n * The TID of the record.\n */\n rkey: string;\n /**\n * Validate the record?\n */\n validate?: boolean;\n /**\n * The record to create\n */\n record: {};\n}\n\nexport interface OutputSchema {\n uri: string;\n cid: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n inviteCodeRequired?: boolean;\n availableUserDomains: string[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n handle: string;\n password: string;\n}\n\nexport interface OutputSchema {\n accessJwt: string;\n refreshJwt: string;\n handle: string;\n did: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n handle: string;\n did: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n accessJwt: string;\n refreshJwt: string;\n handle: string;\n did: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n from?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: Uint8Array;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n root: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n did: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/cbor';\n}\n\nexport type InputSchema = string | Uint8Array\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n did: string;\n handle: string;\n displayName?: string;\n description?: string;\n followersCount: number;\n followsCount: number;\n postsCount: number;\n myState?: {\n follow?: string,\n };\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n term: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n users: {\n did: string,\n handle: string,\n displayName?: string,\n description?: string,\n indexedAt?: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n term: string;\n limit?: number;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n users: {\n did: string,\n handle: string,\n displayName?: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n displayName?: string;\n description?: string;\n}\n\nexport interface OutputSchema {\n uri: string;\n cid: string;\n record: {};\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n author: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n feed: FeedItem[];\n}\nexport interface FeedItem {\n uri: string;\n cid: string;\n author: User;\n repostedBy?: User;\n record: {};\n embed?: RecordEmbed | ExternalEmbed | UnknownEmbed;\n replyCount: number;\n repostCount: number;\n likeCount: number;\n indexedAt: string;\n myState?: {\n repost?: string,\n like?: string,\n };\n}\nexport interface User {\n did: string;\n handle: string;\n displayName?: string;\n}\nexport interface RecordEmbed {\n type: 'record';\n author: User;\n record: {};\n}\nexport interface ExternalEmbed {\n type: 'external';\n uri: string;\n title: string;\n description: string;\n imageUri: string;\n}\nexport interface UnknownEmbed {\n type: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n uri: string;\n cid?: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n uri: string;\n cid?: string;\n cursor?: string;\n likedBy: {\n did: string,\n handle: string,\n displayName?: string,\n createdAt?: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n uri: string;\n depth?: number;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n thread: Post;\n}\nexport interface Post {\n uri: string;\n cid: string;\n author: User;\n record: {};\n embed?: RecordEmbed | ExternalEmbed | UnknownEmbed;\n parent?: Post;\n replyCount: number;\n replies?: Post[];\n likeCount: number;\n repostCount: number;\n indexedAt: string;\n myState?: {\n repost?: string,\n like?: string,\n };\n}\nexport interface User {\n did: string;\n handle: string;\n displayName?: string;\n}\nexport interface RecordEmbed {\n type: 'record';\n author: User;\n record: {};\n}\nexport interface ExternalEmbed {\n type: 'external';\n uri: string;\n title: string;\n description: string;\n imageUri: string;\n}\nexport interface UnknownEmbed {\n type: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n uri: string;\n cid?: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n uri: string;\n cid?: string;\n cursor?: string;\n repostedBy: {\n did: string,\n handle: string,\n displayName?: string,\n createdAt?: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n algorithm?: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n feed: FeedItem[];\n}\nexport interface FeedItem {\n uri: string;\n cid: string;\n author: User;\n repostedBy?: User;\n record: {};\n embed?: RecordEmbed | ExternalEmbed | UnknownEmbed;\n replyCount: number;\n repostCount: number;\n likeCount: number;\n indexedAt: string;\n myState?: {\n repost?: string,\n like?: string,\n };\n}\nexport interface User {\n did: string;\n handle: string;\n displayName?: string;\n}\nexport interface RecordEmbed {\n type: 'record';\n author: User;\n record: {};\n}\nexport interface ExternalEmbed {\n type: 'external';\n uri: string;\n title: string;\n description: string;\n imageUri: string;\n}\nexport interface UnknownEmbed {\n type: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n subject: {\n did: string,\n handle: string,\n displayName?: string,\n };\n cursor?: string;\n followers: {\n did: string,\n handle: string,\n displayName?: string,\n createdAt?: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n user: string;\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n subject: {\n did: string,\n handle: string,\n displayName?: string,\n };\n cursor?: string;\n follows: {\n did: string,\n handle: string,\n displayName?: string,\n createdAt?: string,\n indexedAt: string,\n }[];\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n count: number;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {\n limit?: number;\n before?: string;\n}\n\nexport interface CallOptions {\n headers?: Headers;\n}\n\nexport type InputSchema = undefined\n\nexport interface OutputSchema {\n cursor?: string;\n notifications: Notification[];\n}\nexport interface Notification {\n uri: string;\n cid: string;\n author: {\n did: string,\n handle: string,\n displayName?: string,\n };\n reason: string;\n reasonSubject?: string;\n record: {};\n isRead: boolean;\n indexedAt: string;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport { Headers, XRPCError } from '@atproto/xrpc'\n\nexport interface QueryParams {}\n\nexport interface CallOptions {\n headers?: Headers;\n qp?: QueryParams;\n encoding: 'application/json';\n}\n\nexport interface InputSchema {\n seenAt: string;\n}\n\nexport interface OutputSchema {\n [k: string]: unknown;\n}\n\nexport interface Response {\n success: boolean;\n headers: Headers;\n data: OutputSchema;\n}\n\nexport function toKnownErr(e: any) {\n if (e instanceof XRPCError) {\n }\n return e\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n displayName: string;\n description?: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n subject: Subject;\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface Subject {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n media: MediaEmbed[];\n [k: string]: unknown;\n}\nexport interface MediaEmbed {\n alt?: string;\n thumb?: MediaEmbedBlob;\n original: MediaEmbedBlob;\n [k: string]: unknown;\n}\nexport interface MediaEmbedBlob {\n mimeType: string;\n blobId: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\n/**\n * @minItems 2\n * @maxItems 2\n */\nexport type TextSlice = [number, number]\n\nexport interface Record {\n text: string;\n entities?: Entity[];\n reply?: {\n root: PostRef,\n parent: PostRef,\n [k: string]: unknown,\n };\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface Entity {\n index: TextSlice;\n type: string;\n value: string;\n [k: string]: unknown;\n}\nexport interface PostRef {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n subject: Subject;\n createdAt: string;\n [k: string]: unknown;\n}\nexport interface Subject {\n uri: string;\n cid: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n subject: {\n did: string,\n declarationCid: string,\n [k: string]: unknown,\n };\n createdAt: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n group: string;\n subject: {\n did: string,\n declarationCid: string,\n [k: string]: unknown,\n };\n createdAt: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport interface Record {\n group: {\n did: string,\n declarationCid: string,\n [k: string]: unknown,\n };\n invite: {\n uri: string,\n cid: string,\n [k: string]: unknown,\n };\n createdAt: string;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nexport type ActorKnown =\n | 'app.bsky.system.actorUser'\n | 'app.bsky.system.actorScene'\nexport type ActorUnknown = string\n\nexport interface Record {\n actorType: ActorKnown | ActorUnknown;\n [k: string]: unknown;\n}\n", "/**\n* GENERATED CODE - DO NOT MODIFY\n*/\nimport {\n Client as XrpcClient,\n ServiceClient as XrpcServiceClient,\n} from '@atproto/xrpc'\nimport { methodSchemas, recordSchemas } from './schemas'\nimport * as ComAtprotoAccountCreate from './types/com/atproto/account/create'\nimport * as ComAtprotoAccountCreateInviteCode from './types/com/atproto/account/createInviteCode'\nimport * as ComAtprotoAccountDelete from './types/com/atproto/account/delete'\nimport * as ComAtprotoAccountGet from './types/com/atproto/account/get'\nimport * as ComAtprotoAccountRequestPasswordReset from './types/com/atproto/account/requestPasswordReset'\nimport * as ComAtprotoAccountResetPassword from './types/com/atproto/account/resetPassword'\nimport * as ComAtprotoHandleResolve from './types/com/atproto/handle/resolve'\nimport * as ComAtprotoRepoBatchWrite from './types/com/atproto/repo/batchWrite'\nimport * as ComAtprotoRepoCreateRecord from './types/com/atproto/repo/createRecord'\nimport * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repo/deleteRecord'\nimport * as ComAtprotoRepoDescribe from './types/com/atproto/repo/describe'\nimport * as ComAtprotoRepoGetRecord from './types/com/atproto/repo/getRecord'\nimport * as ComAtprotoRepoListRecords from './types/com/atproto/repo/listRecords'\nimport * as ComAtprotoRepoPutRecord from './types/com/atproto/repo/putRecord'\nimport * as ComAtprotoServerGetAccountsConfig from './types/com/atproto/server/getAccountsConfig'\nimport * as ComAtprotoSessionCreate from './types/com/atproto/session/create'\nimport * as ComAtprotoSessionDelete from './types/com/atproto/session/delete'\nimport * as ComAtprotoSessionGet from './types/com/atproto/session/get'\nimport * as ComAtprotoSessionRefresh from './types/com/atproto/session/refresh'\nimport * as ComAtprotoSyncGetRepo from './types/com/atproto/sync/getRepo'\nimport * as ComAtprotoSyncGetRoot from './types/com/atproto/sync/getRoot'\nimport * as ComAtprotoSyncUpdateRepo from './types/com/atproto/sync/updateRepo'\nimport * as AppBskyActorGetProfile from './types/app/bsky/actor/getProfile'\nimport * as AppBskyActorSearch from './types/app/bsky/actor/search'\nimport * as AppBskyActorSearchTypeahead from './types/app/bsky/actor/searchTypeahead'\nimport * as AppBskyActorProfile from './types/app/bsky/actor/profile'\nimport * as AppBskyActorUpdateProfile from './types/app/bsky/actor/updateProfile'\nimport * as AppBskyFeedGetAuthorFeed from './types/app/bsky/feed/getAuthorFeed'\nimport * as AppBskyFeedGetLikedBy from './types/app/bsky/feed/getLikedBy'\nimport * as AppBskyFeedGetPostThread from './types/app/bsky/feed/getPostThread'\nimport * as AppBskyFeedGetRepostedBy from './types/app/bsky/feed/getRepostedBy'\nimport * as AppBskyFeedGetTimeline from './types/app/bsky/feed/getTimeline'\nimport * as AppBskyFeedLike from './types/app/bsky/feed/like'\nimport * as AppBskyFeedMediaEmbed from './types/app/bsky/feed/mediaEmbed'\nimport * as AppBskyFeedPost from './types/app/bsky/feed/post'\nimport * as AppBskyFeedRepost from './types/app/bsky/feed/repost'\nimport * as AppBskyGraphFollow from './types/app/bsky/graph/follow'\nimport * as AppBskyGraphGetFollowers from './types/app/bsky/graph/getFollowers'\nimport * as AppBskyGraphGetFollows from './types/app/bsky/graph/getFollows'\nimport * as AppBskyGraphInvite from './types/app/bsky/graph/invite'\nimport * as AppBskyGraphInviteAccept from './types/app/bsky/graph/inviteAccept'\nimport * as AppBskyNotificationGetCount from './types/app/bsky/notification/getCount'\nimport * as AppBskyNotificationList from './types/app/bsky/notification/list'\nimport * as AppBskyNotificationUpdateSeen from './types/app/bsky/notification/updateSeen'\nimport * as AppBskySystemDeclaration from './types/app/bsky/system/declaration'\n\nexport * as ComAtprotoAccountCreate from './types/com/atproto/account/create'\nexport * as ComAtprotoAccountCreateInviteCode from './types/com/atproto/account/createInviteCode'\nexport * as ComAtprotoAccountDelete from './types/com/atproto/account/delete'\nexport * as ComAtprotoAccountGet from './types/com/atproto/account/get'\nexport * as ComAtprotoAccountRequestPasswordReset from './types/com/atproto/account/requestPasswordReset'\nexport * as ComAtprotoAccountResetPassword from './types/com/atproto/account/resetPassword'\nexport * as ComAtprotoHandleResolve from './types/com/atproto/handle/resolve'\nexport * as ComAtprotoRepoBatchWrite from './types/com/atproto/repo/batchWrite'\nexport * as ComAtprotoRepoCreateRecord from './types/com/atproto/repo/createRecord'\nexport * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repo/deleteRecord'\nexport * as ComAtprotoRepoDescribe from './types/com/atproto/repo/describe'\nexport * as ComAtprotoRepoGetRecord from './types/com/atproto/repo/getRecord'\nexport * as ComAtprotoRepoListRecords from './types/com/atproto/repo/listRecords'\nexport * as ComAtprotoRepoPutRecord from './types/com/atproto/repo/putRecord'\nexport * as ComAtprotoServerGetAccountsConfig from './types/com/atproto/server/getAccountsConfig'\nexport * as ComAtprotoSessionCreate from './types/com/atproto/session/create'\nexport * as ComAtprotoSessionDelete from './types/com/atproto/session/delete'\nexport * as ComAtprotoSessionGet from './types/com/atproto/session/get'\nexport * as ComAtprotoSessionRefresh from './types/com/atproto/session/refresh'\nexport * as ComAtprotoSyncGetRepo from './types/com/atproto/sync/getRepo'\nexport * as ComAtprotoSyncGetRoot from './types/com/atproto/sync/getRoot'\nexport * as ComAtprotoSyncUpdateRepo from './types/com/atproto/sync/updateRepo'\nexport * as AppBskyActorGetProfile from './types/app/bsky/actor/getProfile'\nexport * as AppBskyActorSearch from './types/app/bsky/actor/search'\nexport * as AppBskyActorSearchTypeahead from './types/app/bsky/actor/searchTypeahead'\nexport * as AppBskyActorProfile from './types/app/bsky/actor/profile'\nexport * as AppBskyActorUpdateProfile from './types/app/bsky/actor/updateProfile'\nexport * as AppBskyFeedGetAuthorFeed from './types/app/bsky/feed/getAuthorFeed'\nexport * as AppBskyFeedGetLikedBy from './types/app/bsky/feed/getLikedBy'\nexport * as AppBskyFeedGetPostThread from './types/app/bsky/feed/getPostThread'\nexport * as AppBskyFeedGetRepostedBy from './types/app/bsky/feed/getRepostedBy'\nexport * as AppBskyFeedGetTimeline from './types/app/bsky/feed/getTimeline'\nexport * as AppBskyFeedLike from './types/app/bsky/feed/like'\nexport * as AppBskyFeedMediaEmbed from './types/app/bsky/feed/mediaEmbed'\nexport * as AppBskyFeedPost from './types/app/bsky/feed/post'\nexport * as AppBskyFeedRepost from './types/app/bsky/feed/repost'\nexport * as AppBskyGraphFollow from './types/app/bsky/graph/follow'\nexport * as AppBskyGraphGetFollowers from './types/app/bsky/graph/getFollowers'\nexport * as AppBskyGraphGetFollows from './types/app/bsky/graph/getFollows'\nexport * as AppBskyGraphInvite from './types/app/bsky/graph/invite'\nexport * as AppBskyGraphInviteAccept from './types/app/bsky/graph/inviteAccept'\nexport * as AppBskyNotificationGetCount from './types/app/bsky/notification/getCount'\nexport * as AppBskyNotificationList from './types/app/bsky/notification/list'\nexport * as AppBskyNotificationUpdateSeen from './types/app/bsky/notification/updateSeen'\nexport * as AppBskySystemDeclaration from './types/app/bsky/system/declaration'\n\nexport const APP_BSKY_SYSTEM = {\n ActorScene: 'app.bsky.system.actorScene',\n ActorUser: 'app.bsky.system.actorUser',\n}\n\nexport class Client {\n xrpc: XrpcClient = new XrpcClient()\n\n constructor() {\n this.xrpc.addSchemas(methodSchemas)\n }\n\n service(serviceUri: string | URL): ServiceClient {\n return new ServiceClient(this, this.xrpc.service(serviceUri))\n }\n}\n\nconst defaultInst = new Client()\nexport default defaultInst\n\nexport class ServiceClient {\n _baseClient: Client\n xrpc: XrpcServiceClient\n com: ComNS\n app: AppNS\n\n constructor(baseClient: Client, xrpcService: XrpcServiceClient) {\n this._baseClient = baseClient\n this.xrpc = xrpcService\n this.com = new ComNS(this)\n this.app = new AppNS(this)\n }\n\n setHeader(key: string, value: string): void {\n this.xrpc.setHeader(key, value)\n }\n}\n\nexport class ComNS {\n _service: ServiceClient\n atproto: AtprotoNS\n\n constructor(service: ServiceClient) {\n this._service = service\n this.atproto = new AtprotoNS(service)\n }\n}\n\nexport class AtprotoNS {\n _service: ServiceClient\n account: AccountNS\n handle: HandleNS\n repo: RepoNS\n server: ServerNS\n session: SessionNS\n sync: SyncNS\n\n constructor(service: ServiceClient) {\n this._service = service\n this.account = new AccountNS(service)\n this.handle = new HandleNS(service)\n this.repo = new RepoNS(service)\n this.server = new ServerNS(service)\n this.session = new SessionNS(service)\n this.sync = new SyncNS(service)\n }\n}\n\nexport class AccountNS {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n create(\n data?: ComAtprotoAccountCreate.InputSchema,\n opts?: ComAtprotoAccountCreate.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.account.create', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoAccountCreate.toKnownErr(e)\n })\n }\n\n createInviteCode(\n data?: ComAtprotoAccountCreateInviteCode.InputSchema,\n opts?: ComAtprotoAccountCreateInviteCode.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.account.createInviteCode', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoAccountCreateInviteCode.toKnownErr(e)\n })\n }\n\n delete(\n data?: ComAtprotoAccountDelete.InputSchema,\n opts?: ComAtprotoAccountDelete.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.account.delete', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoAccountDelete.toKnownErr(e)\n })\n }\n\n get(\n params?: ComAtprotoAccountGet.QueryParams,\n opts?: ComAtprotoAccountGet.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.account.get', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoAccountGet.toKnownErr(e)\n })\n }\n\n requestPasswordReset(\n data?: ComAtprotoAccountRequestPasswordReset.InputSchema,\n opts?: ComAtprotoAccountRequestPasswordReset.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.account.requestPasswordReset', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoAccountRequestPasswordReset.toKnownErr(e)\n })\n }\n\n resetPassword(\n data?: ComAtprotoAccountResetPassword.InputSchema,\n opts?: ComAtprotoAccountResetPassword.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.account.resetPassword', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoAccountResetPassword.toKnownErr(e)\n })\n }\n}\n\nexport class HandleNS {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n resolve(\n params?: ComAtprotoHandleResolve.QueryParams,\n opts?: ComAtprotoHandleResolve.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.handle.resolve', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoHandleResolve.toKnownErr(e)\n })\n }\n}\n\nexport class RepoNS {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n batchWrite(\n data?: ComAtprotoRepoBatchWrite.InputSchema,\n opts?: ComAtprotoRepoBatchWrite.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repo.batchWrite', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoBatchWrite.toKnownErr(e)\n })\n }\n\n createRecord(\n data?: ComAtprotoRepoCreateRecord.InputSchema,\n opts?: ComAtprotoRepoCreateRecord.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repo.createRecord', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoCreateRecord.toKnownErr(e)\n })\n }\n\n deleteRecord(\n data?: ComAtprotoRepoDeleteRecord.InputSchema,\n opts?: ComAtprotoRepoDeleteRecord.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repo.deleteRecord', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoDeleteRecord.toKnownErr(e)\n })\n }\n\n describe(\n params?: ComAtprotoRepoDescribe.QueryParams,\n opts?: ComAtprotoRepoDescribe.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repo.describe', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoRepoDescribe.toKnownErr(e)\n })\n }\n\n getRecord(\n params?: ComAtprotoRepoGetRecord.QueryParams,\n opts?: ComAtprotoRepoGetRecord.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repo.getRecord', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoRepoGetRecord.toKnownErr(e)\n })\n }\n\n listRecords(\n params?: ComAtprotoRepoListRecords.QueryParams,\n opts?: ComAtprotoRepoListRecords.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repo.listRecords', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoRepoListRecords.toKnownErr(e)\n })\n }\n\n putRecord(\n data?: ComAtprotoRepoPutRecord.InputSchema,\n opts?: ComAtprotoRepoPutRecord.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.repo.putRecord', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoRepoPutRecord.toKnownErr(e)\n })\n }\n}\n\nexport class ServerNS {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n getAccountsConfig(\n params?: ComAtprotoServerGetAccountsConfig.QueryParams,\n opts?: ComAtprotoServerGetAccountsConfig.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.server.getAccountsConfig', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoServerGetAccountsConfig.toKnownErr(e)\n })\n }\n}\n\nexport class SessionNS {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n create(\n data?: ComAtprotoSessionCreate.InputSchema,\n opts?: ComAtprotoSessionCreate.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.session.create', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoSessionCreate.toKnownErr(e)\n })\n }\n\n delete(\n data?: ComAtprotoSessionDelete.InputSchema,\n opts?: ComAtprotoSessionDelete.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.session.delete', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoSessionDelete.toKnownErr(e)\n })\n }\n\n get(\n params?: ComAtprotoSessionGet.QueryParams,\n opts?: ComAtprotoSessionGet.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.session.get', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoSessionGet.toKnownErr(e)\n })\n }\n\n refresh(\n data?: ComAtprotoSessionRefresh.InputSchema,\n opts?: ComAtprotoSessionRefresh.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.session.refresh', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoSessionRefresh.toKnownErr(e)\n })\n }\n}\n\nexport class SyncNS {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n getRepo(\n params?: ComAtprotoSyncGetRepo.QueryParams,\n opts?: ComAtprotoSyncGetRepo.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.sync.getRepo', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoSyncGetRepo.toKnownErr(e)\n })\n }\n\n getRoot(\n params?: ComAtprotoSyncGetRoot.QueryParams,\n opts?: ComAtprotoSyncGetRoot.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.sync.getRoot', params, undefined, opts)\n .catch((e) => {\n throw ComAtprotoSyncGetRoot.toKnownErr(e)\n })\n }\n\n updateRepo(\n data?: ComAtprotoSyncUpdateRepo.InputSchema,\n opts?: ComAtprotoSyncUpdateRepo.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('com.atproto.sync.updateRepo', opts?.qp, data, opts)\n .catch((e) => {\n throw ComAtprotoSyncUpdateRepo.toKnownErr(e)\n })\n }\n}\n\nexport class AppNS {\n _service: ServiceClient\n bsky: BskyNS\n\n constructor(service: ServiceClient) {\n this._service = service\n this.bsky = new BskyNS(service)\n }\n}\n\nexport class BskyNS {\n _service: ServiceClient\n actor: ActorNS\n feed: FeedNS\n graph: GraphNS\n notification: NotificationNS\n system: SystemNS\n\n constructor(service: ServiceClient) {\n this._service = service\n this.actor = new ActorNS(service)\n this.feed = new FeedNS(service)\n this.graph = new GraphNS(service)\n this.notification = new NotificationNS(service)\n this.system = new SystemNS(service)\n }\n}\n\nexport class ActorNS {\n _service: ServiceClient\n profile: ProfileRecord\n\n constructor(service: ServiceClient) {\n this._service = service\n this.profile = new ProfileRecord(service)\n }\n\n getProfile(\n params?: AppBskyActorGetProfile.QueryParams,\n opts?: AppBskyActorGetProfile.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.actor.getProfile', params, undefined, opts)\n .catch((e) => {\n throw AppBskyActorGetProfile.toKnownErr(e)\n })\n }\n\n search(\n params?: AppBskyActorSearch.QueryParams,\n opts?: AppBskyActorSearch.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.actor.search', params, undefined, opts)\n .catch((e) => {\n throw AppBskyActorSearch.toKnownErr(e)\n })\n }\n\n searchTypeahead(\n params?: AppBskyActorSearchTypeahead.QueryParams,\n opts?: AppBskyActorSearchTypeahead.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.actor.searchTypeahead', params, undefined, opts)\n .catch((e) => {\n throw AppBskyActorSearchTypeahead.toKnownErr(e)\n })\n }\n\n updateProfile(\n data?: AppBskyActorUpdateProfile.InputSchema,\n opts?: AppBskyActorUpdateProfile.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.actor.updateProfile', opts?.qp, data, opts)\n .catch((e) => {\n throw AppBskyActorUpdateProfile.toKnownErr(e)\n })\n }\n}\n\nexport class ProfileRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyActorProfile.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.actor.profile',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyActorProfile.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.actor.profile',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskyActorProfile.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.actor.profile'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.actor.profile', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.actor.profile', ...params },\n { headers }\n )\n }\n}\n\nexport class FeedNS {\n _service: ServiceClient\n like: LikeRecord\n mediaEmbed: MediaEmbedRecord\n post: PostRecord\n repost: RepostRecord\n\n constructor(service: ServiceClient) {\n this._service = service\n this.like = new LikeRecord(service)\n this.mediaEmbed = new MediaEmbedRecord(service)\n this.post = new PostRecord(service)\n this.repost = new RepostRecord(service)\n }\n\n getAuthorFeed(\n params?: AppBskyFeedGetAuthorFeed.QueryParams,\n opts?: AppBskyFeedGetAuthorFeed.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.feed.getAuthorFeed', params, undefined, opts)\n .catch((e) => {\n throw AppBskyFeedGetAuthorFeed.toKnownErr(e)\n })\n }\n\n getLikedBy(\n params?: AppBskyFeedGetLikedBy.QueryParams,\n opts?: AppBskyFeedGetLikedBy.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.feed.getLikedBy', params, undefined, opts)\n .catch((e) => {\n throw AppBskyFeedGetLikedBy.toKnownErr(e)\n })\n }\n\n getPostThread(\n params?: AppBskyFeedGetPostThread.QueryParams,\n opts?: AppBskyFeedGetPostThread.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.feed.getPostThread', params, undefined, opts)\n .catch((e) => {\n throw AppBskyFeedGetPostThread.toKnownErr(e)\n })\n }\n\n getRepostedBy(\n params?: AppBskyFeedGetRepostedBy.QueryParams,\n opts?: AppBskyFeedGetRepostedBy.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.feed.getRepostedBy', params, undefined, opts)\n .catch((e) => {\n throw AppBskyFeedGetRepostedBy.toKnownErr(e)\n })\n }\n\n getTimeline(\n params?: AppBskyFeedGetTimeline.QueryParams,\n opts?: AppBskyFeedGetTimeline.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.feed.getTimeline', params, undefined, opts)\n .catch((e) => {\n throw AppBskyFeedGetTimeline.toKnownErr(e)\n })\n }\n}\n\nexport class LikeRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyFeedLike.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.feed.like',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyFeedLike.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.feed.like',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskyFeedLike.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.feed.like'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.feed.like', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.feed.like', ...params },\n { headers }\n )\n }\n}\n\nexport class MediaEmbedRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyFeedMediaEmbed.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.feed.mediaEmbed',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{\n uri: string,\n cid: string,\n value: AppBskyFeedMediaEmbed.Record,\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.feed.mediaEmbed',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskyFeedMediaEmbed.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.feed.mediaEmbed'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.feed.mediaEmbed', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.feed.mediaEmbed', ...params },\n { headers }\n )\n }\n}\n\nexport class PostRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyFeedPost.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.feed.post',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyFeedPost.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.feed.post',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskyFeedPost.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.feed.post'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.feed.post', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.feed.post', ...params },\n { headers }\n )\n }\n}\n\nexport class RepostRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyFeedRepost.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.feed.repost',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyFeedRepost.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.feed.repost',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskyFeedRepost.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.feed.repost'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.feed.repost', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.feed.repost', ...params },\n { headers }\n )\n }\n}\n\nexport class GraphNS {\n _service: ServiceClient\n follow: FollowRecord\n invite: InviteRecord\n inviteAccept: InviteAcceptRecord\n\n constructor(service: ServiceClient) {\n this._service = service\n this.follow = new FollowRecord(service)\n this.invite = new InviteRecord(service)\n this.inviteAccept = new InviteAcceptRecord(service)\n }\n\n getFollowers(\n params?: AppBskyGraphGetFollowers.QueryParams,\n opts?: AppBskyGraphGetFollowers.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.graph.getFollowers', params, undefined, opts)\n .catch((e) => {\n throw AppBskyGraphGetFollowers.toKnownErr(e)\n })\n }\n\n getFollows(\n params?: AppBskyGraphGetFollows.QueryParams,\n opts?: AppBskyGraphGetFollows.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.graph.getFollows', params, undefined, opts)\n .catch((e) => {\n throw AppBskyGraphGetFollows.toKnownErr(e)\n })\n }\n}\n\nexport class FollowRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyGraphFollow.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.graph.follow',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyGraphFollow.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.graph.follow',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskyGraphFollow.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.graph.follow'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.graph.follow', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.graph.follow', ...params },\n { headers }\n )\n }\n}\n\nexport class InviteRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyGraphInvite.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.graph.invite',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{ uri: string, cid: string, value: AppBskyGraphInvite.Record }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.graph.invite',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskyGraphInvite.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.graph.invite'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.graph.invite', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.graph.invite', ...params },\n { headers }\n )\n }\n}\n\nexport class InviteAcceptRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskyGraphInviteAccept.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.graph.inviteAccept',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{\n uri: string,\n cid: string,\n value: AppBskyGraphInviteAccept.Record,\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.graph.inviteAccept',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskyGraphInviteAccept.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.graph.inviteAccept'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.graph.inviteAccept', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.graph.inviteAccept', ...params },\n { headers }\n )\n }\n}\n\nexport class NotificationNS {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n getCount(\n params?: AppBskyNotificationGetCount.QueryParams,\n opts?: AppBskyNotificationGetCount.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.notification.getCount', params, undefined, opts)\n .catch((e) => {\n throw AppBskyNotificationGetCount.toKnownErr(e)\n })\n }\n\n list(\n params?: AppBskyNotificationList.QueryParams,\n opts?: AppBskyNotificationList.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.notification.list', params, undefined, opts)\n .catch((e) => {\n throw AppBskyNotificationList.toKnownErr(e)\n })\n }\n\n updateSeen(\n data?: AppBskyNotificationUpdateSeen.InputSchema,\n opts?: AppBskyNotificationUpdateSeen.CallOptions\n ): Promise {\n return this._service.xrpc\n .call('app.bsky.notification.updateSeen', opts?.qp, data, opts)\n .catch((e) => {\n throw AppBskyNotificationUpdateSeen.toKnownErr(e)\n })\n }\n}\n\nexport class SystemNS {\n _service: ServiceClient\n declaration: DeclarationRecord\n\n constructor(service: ServiceClient) {\n this._service = service\n this.declaration = new DeclarationRecord(service)\n }\n}\n\nexport class DeclarationRecord {\n _service: ServiceClient\n\n constructor(service: ServiceClient) {\n this._service = service\n }\n\n async list(\n params: Omit\n ): Promise<{\n cursor?: string,\n records: { uri: string, value: AppBskySystemDeclaration.Record }[],\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.listRecords', {\n collection: 'app.bsky.system.declaration',\n ...params,\n })\n return res.data\n }\n\n async get(\n params: Omit\n ): Promise<{\n uri: string,\n cid: string,\n value: AppBskySystemDeclaration.Record,\n }> {\n const res = await this._service.xrpc.call('com.atproto.repo.getRecord', {\n collection: 'app.bsky.system.declaration',\n ...params,\n })\n return res.data\n }\n\n async create(\n params: Omit<\n ComAtprotoRepoCreateRecord.InputSchema,\n 'collection' | 'record'\n >,\n record: AppBskySystemDeclaration.Record,\n headers?: Record\n ): Promise<{ uri: string, cid: string }> {\n record.$type = 'app.bsky.system.declaration'\n const res = await this._service.xrpc.call(\n 'com.atproto.repo.createRecord',\n undefined,\n { collection: 'app.bsky.system.declaration', ...params, record },\n { encoding: 'application/json', headers }\n )\n return res.data\n }\n\n async delete(\n params: Omit,\n headers?: Record\n ): Promise {\n await this._service.xrpc.call(\n 'com.atproto.repo.deleteRecord',\n undefined,\n { collection: 'app.bsky.system.declaration', ...params },\n { headers }\n )\n }\n}\n", "import {\n CallOptions,\n Client as XrpcClient,\n ServiceClient as XrpcServiceClient,\n QueryParams,\n ResponseType,\n XRPCError,\n XRPCResponse,\n} from '@atproto/xrpc'\nimport EventEmitter from 'events'\nimport TypedEmitter from 'typed-emitter'\nimport { Client, ServiceClient } from './client'\nimport * as CreateSession from './client/types/com/atproto/session/create'\nimport * as RefreshSession from './client/types/com/atproto/session/refresh'\nimport * as CreateAccount from './client/types/com/atproto/session/create'\n\nconst CREATE_SESSION = 'com.atproto.session.create'\nconst REFRESH_SESSION = 'com.atproto.session.refresh'\nconst DELETE_SESSION = 'com.atproto.session.delete'\nconst CREATE_ACCOUNT = 'com.atproto.account.create'\n\nexport class SessionClient extends Client {\n service(serviceUri: string | URL): SessionServiceClient {\n const xrpcService = new SessionXrpcServiceClient(this.xrpc, serviceUri)\n return new SessionServiceClient(this, xrpcService)\n }\n}\n\nconst defaultInst = new SessionClient()\nexport default defaultInst\n\nexport class SessionServiceClient extends ServiceClient {\n xrpc: SessionXrpcServiceClient\n sessionManager: SessionManager\n constructor(baseClient: Client, xrpcService: SessionXrpcServiceClient) {\n super(baseClient, xrpcService)\n this.sessionManager = this.xrpc.sessionManager\n }\n}\n\nexport class SessionXrpcServiceClient extends XrpcServiceClient {\n sessionManager = new SessionManager()\n refreshing?: Promise\n\n constructor(baseClient: XrpcClient, serviceUri: string | URL) {\n super(baseClient, serviceUri)\n this.sessionManager.on('session', () => {\n // Maintain access token headers when session changes\n const accessHeaders = this.sessionManager.accessHeaders()\n if (accessHeaders) {\n this.setHeader('authorization', accessHeaders.authorization)\n } else {\n this.unsetHeader('authorization')\n }\n })\n }\n\n async call(\n methodNsid: string,\n params?: QueryParams,\n data?: unknown,\n opts?: CallOptions,\n ) {\n const original = (overrideOpts?: CallOptions) =>\n super.call(methodNsid, params, data, overrideOpts ?? opts)\n\n // If someone is setting credentials manually, pass through as an escape hatch\n if (opts?.headers?.authorization) {\n return await original()\n }\n\n // Manage concurrent refreshes on session refresh\n if (methodNsid === REFRESH_SESSION) {\n return await this.refresh(opts)\n }\n\n // Complete any pending session refresh and then continue onto the original request with fresh credentials\n await this.refreshing\n\n // Setup session on session or account creation\n if (methodNsid === CREATE_SESSION || methodNsid === CREATE_ACCOUNT) {\n const result = await original()\n const { accessJwt, refreshJwt } =\n result.data as CreateSession.OutputSchema & CreateAccount.OutputSchema\n this.sessionManager.set({ accessJwt, refreshJwt })\n return result\n }\n\n // Clear session on session deletion\n if (methodNsid === DELETE_SESSION) {\n const result = await original({\n ...opts,\n headers: {\n ...opts?.headers,\n ...this.sessionManager.refreshHeaders(),\n },\n })\n this.sessionManager.unset()\n return result\n }\n\n // For all other requests, if failed due to an expired token, refresh and retry with fresh credentials\n try {\n return await original()\n } catch (err) {\n if (\n err instanceof XRPCError &&\n err.status === ResponseType.InvalidRequest &&\n err.error === 'ExpiredToken' &&\n this.sessionManager.active()\n ) {\n await this.refresh(opts)\n return await original()\n }\n throw err\n }\n }\n\n // Ensures a single refresh request at a time, deduping concurrent requests.\n async refresh(opts?: CallOptions) {\n this.refreshing ??= this._refresh(opts)\n try {\n return await this.refreshing\n } finally {\n this.refreshing = undefined\n }\n }\n\n private async _refresh(opts?: CallOptions) {\n try {\n const result = await super.call(REFRESH_SESSION, undefined, undefined, {\n ...opts,\n headers: {\n ...opts?.headers,\n ...this.sessionManager.refreshHeaders(),\n },\n })\n const { accessJwt, refreshJwt } =\n result.data as RefreshSession.OutputSchema\n this.sessionManager.set({ accessJwt, refreshJwt })\n return result\n } catch (err) {\n if (\n err instanceof XRPCError &&\n err.status === ResponseType.InvalidRequest &&\n (err.error === 'ExpiredToken' || err.error === 'InvalidToken')\n ) {\n this.sessionManager.unset()\n }\n throw err\n }\n }\n}\n\nexport class SessionManager extends (EventEmitter as new () => TypedEmitter) {\n session?: Session\n get() {\n return this.session\n }\n set(session: Session) {\n this.session = session\n this.emit('session', session)\n }\n unset() {\n this.session = undefined\n this.emit('session', undefined)\n }\n active() {\n return !!this.session\n }\n accessHeaders() {\n return (\n this.session && {\n authorization: `Bearer ${this.session.accessJwt}`,\n }\n )\n }\n refreshHeaders() {\n return (\n this.session && {\n authorization: `Bearer ${this.session.refreshJwt}`,\n }\n )\n }\n}\n\nexport type Session = {\n refreshJwt: string\n accessJwt: string\n}\n\ntype SessionEvents = {\n session: (session?: Session) => void\n}\n"], + "mappings": "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", + "names": ["UsedValueState", "mergeValues", "Type", "DataType", "_a", "module", "module", "baseId", "ValidationError", "ValidationError", "merge", "sets", "length", "slice", "xl", "x", "join", "subexp", "str", "typeOf", "o", "undefined", "Object", "prototype", "toString", "call", "split", "pop", "shift", "toLowerCase", "toUpperCase", "toArray", "obj", "Array", "setInterval", "assign", "target", "source", "key", "buildExps", "isIRI", "ALPHA$$", "CR$", "DIGIT$$", "DQUOTE$$", "HEXDIG$$", "SP$$", "PCT_ENCODED$", "SUB_DELIMS$$", "RESERVED$$", "GEN_DELIMS$$", "UCSCHAR$$", "SCHEME$", "USERINFO$", "UNRESERVED$$", "DEC_OCTET$", "DEC_OCTET_RELAXED$", "H16$", "LS32$", "IPV4ADDRESS$", "IPV6ADDRESS1$", "IPV6ADDRESS2$", "IPV6ADDRESS3$", "IPV6ADDRESS4$", "IPV6ADDRESS5$", "IPV6ADDRESS6$", "IPV6ADDRESS7$", "IPV6ADDRESS8$", "IPV6ADDRESS9$", "ZONEID$", "IPV6ADDRESS$", "IP_LITERAL$", "IPV6ADDRZ_RELAXED$", "IPVFUTURE$", "HOST$", "REG_NAME$", "PORT$", "AUTHORITY$", "PCHAR$", "SEGMENT$", "SEGMENT_NZ$", "SEGMENT_NZ_NC$", "PATH_ABEMPTY$", "PATH_ABSOLUTE$", "PATH$", "PATH_NOSCHEME$", "PATH_ROOTLESS$", "PATH_EMPTY$", "QUERY$", "IPRIVATE$$", "FRAGMENT$", "HIER_PART$", "URI$", "RELATIVE_PART$", "RELATIVE$", "URI_REFERENCE$", "ABSOLUTE_URI$", "GENERIC_REF$", "RELATIVE_REF$", "ABSOLUTE_REF$", "SAMEDOC_REF$", "AUTHORITY_REF$", "RegExp", "maxInt", "base", "tMin", "tMax", "skew", "damp", "initialBias", "initialN", "delimiter", "regexPunycode", "regexNonASCII", "regexSeparators", "errors", "baseMinusTMin", "floor", "Math", "stringFromCharCode", "String", "fromCharCode", "error", "type", "RangeError", "map", "array", "fn", "result", "mapDomain", "string", "parts", "replace", "labels", "encoded", "ucs2decode", "output", "counter", "value", "charCodeAt", "extra", "push", "ucs2encode", "fromCodePoint", "basicToDigit", "codePoint", "digitToBasic", "digit", "flag", "adapt", "delta", "numPoints", "firstTime", "k", "decode", "input", "inputLength", "i", "n", "bias", "basic", "lastIndexOf", "j", "index", "oldi", "w", "t", "baseMinusT", "out", "splice", "encode", "currentValue", "basicLength", "handledCPCount", "m", "handledCPCountPlusOne", "q", "qMinusT", "toUnicode", "test", "toASCII", "punycode", "SCHEMES", "pctEncChar", "chr", "c", "e", "pctDecChars", "newStr", "il", "parseInt", "substr", "c2", "c3", "_normalizeComponentEncoding", "components", "protocol", "decodeUnreserved", "decStr", "match", "UNRESERVED", "scheme", "PCT_ENCODED", "NOT_SCHEME", "userinfo", "NOT_USERINFO", "host", "NOT_HOST", "path", "NOT_PATH", "NOT_PATH_NOSCHEME", "query", "NOT_QUERY", "fragment", "NOT_FRAGMENT", "_stripLeadingZeros", "_normalizeIPv4", "matches", "IPV4ADDRESS", "address", "_normalizeIPv6", "IPV6ADDRESS", "zone", "reverse", "last", "first", "firstFields", "lastFields", "isLastFieldIPv4Address", "fieldCount", "lastFieldsStart", "fields", "allZeroFields", "reduce", "acc", "field", "lastLongest", "longestZeroFields", "sort", "a", "b", "newHost", "newFirst", "newLast", "URI_PARSE", "NO_MATCH_IS_UNDEFINED", "parse", "uriString", "options", "iri", "IRI_PROTOCOL", "URI_PROTOCOL", "reference", "port", "isNaN", "indexOf", "schemeHandler", "unicodeSupport", "domainHost", "_recomposeAuthority", "uriTokens", "_", "$1", "$2", "RDS1", "RDS2", "RDS3", "RDS5", "removeDotSegments", "im", "s", "Error", "serialize", "authority", "charAt", "absolutePath", "resolveComponents", "relative", "skipNormalization", "tolerant", "resolve", "baseURI", "relativeURI", "schemelessOptions", "normalize", "uri", "equal", "uriA", "uriB", "escapeComponent", "ESCAPE", "unescapeComponent", "handler", "secure", "http", "isSecure", "wsComponents", "resourceName", "ws", "O", "ATEXT$$", "QTEXT$$", "VCHAR$$", "SOME_DELIMS$$", "NOT_LOCAL_PART", "NOT_HFNAME", "NOT_HFVALUE", "mailtoComponents", "to", "unknownHeaders", "headers", "hfields", "hfield", "toAddrs", "subject", "body", "addr", "toAddr", "atIdx", "localPart", "domain", "name", "URN_PARSE", "urnComponents", "nid", "nss", "urnScheme", "uriComponents", "UUID", "uuidComponents", "uuid", "https", "wss", "mailto", "urn", "Ajv", "DiscrError", "Ajv", "module", "ajv", "ajv", "module", "Client", "create_exports", "delete_exports", "get_exports", "ServiceClient", "util", "errorUtil", "errorMap", "ctx", "result", "objectUtil", "issues", "elements", "processed", "ZodFirstPartyTypeKind", "ResponseType", "Ajv", "ajvAddFormats", "import_ajv", "import_ajv_formats", "ajv", "Ajv", "ajvAddFormats", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "create_exports", "toKnownErr", "toKnownErr", "delete_exports", "toKnownErr", "toKnownErr", "get_exports", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "toKnownErr", "Client", "ServiceClient", "defaultInst", "toKnownErr", "Client", "defaultInst", "ServiceClient", "EventEmitter"] } diff --git a/src/third-party/api/src/client/index.d.ts b/src/third-party/api/src/client/index.d.ts new file mode 100644 index 00000000..8c41326a --- /dev/null +++ b/src/third-party/api/src/client/index.d.ts @@ -0,0 +1,417 @@ +import { Client as XrpcClient, ServiceClient as XrpcServiceClient } from '@atproto/xrpc'; +import * as ComAtprotoAccountCreate from './types/com/atproto/account/create'; +import * as ComAtprotoAccountCreateInviteCode from './types/com/atproto/account/createInviteCode'; +import * as ComAtprotoAccountDelete from './types/com/atproto/account/delete'; +import * as ComAtprotoAccountGet from './types/com/atproto/account/get'; +import * as ComAtprotoAccountRequestPasswordReset from './types/com/atproto/account/requestPasswordReset'; +import * as ComAtprotoAccountResetPassword from './types/com/atproto/account/resetPassword'; +import * as ComAtprotoHandleResolve from './types/com/atproto/handle/resolve'; +import * as ComAtprotoRepoBatchWrite from './types/com/atproto/repo/batchWrite'; +import * as ComAtprotoRepoCreateRecord from './types/com/atproto/repo/createRecord'; +import * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repo/deleteRecord'; +import * as ComAtprotoRepoDescribe from './types/com/atproto/repo/describe'; +import * as ComAtprotoRepoGetRecord from './types/com/atproto/repo/getRecord'; +import * as ComAtprotoRepoListRecords from './types/com/atproto/repo/listRecords'; +import * as ComAtprotoRepoPutRecord from './types/com/atproto/repo/putRecord'; +import * as ComAtprotoServerGetAccountsConfig from './types/com/atproto/server/getAccountsConfig'; +import * as ComAtprotoSessionCreate from './types/com/atproto/session/create'; +import * as ComAtprotoSessionDelete from './types/com/atproto/session/delete'; +import * as ComAtprotoSessionGet from './types/com/atproto/session/get'; +import * as ComAtprotoSessionRefresh from './types/com/atproto/session/refresh'; +import * as ComAtprotoSyncGetRepo from './types/com/atproto/sync/getRepo'; +import * as ComAtprotoSyncGetRoot from './types/com/atproto/sync/getRoot'; +import * as ComAtprotoSyncUpdateRepo from './types/com/atproto/sync/updateRepo'; +import * as AppBskyActorGetProfile from './types/app/bsky/actor/getProfile'; +import * as AppBskyActorSearch from './types/app/bsky/actor/search'; +import * as AppBskyActorSearchTypeahead from './types/app/bsky/actor/searchTypeahead'; +import * as AppBskyActorProfile from './types/app/bsky/actor/profile'; +import * as AppBskyActorUpdateProfile from './types/app/bsky/actor/updateProfile'; +import * as AppBskyFeedGetAuthorFeed from './types/app/bsky/feed/getAuthorFeed'; +import * as AppBskyFeedGetLikedBy from './types/app/bsky/feed/getLikedBy'; +import * as AppBskyFeedGetPostThread from './types/app/bsky/feed/getPostThread'; +import * as AppBskyFeedGetRepostedBy from './types/app/bsky/feed/getRepostedBy'; +import * as AppBskyFeedGetTimeline from './types/app/bsky/feed/getTimeline'; +import * as AppBskyFeedLike from './types/app/bsky/feed/like'; +import * as AppBskyFeedMediaEmbed from './types/app/bsky/feed/mediaEmbed'; +import * as AppBskyFeedPost from './types/app/bsky/feed/post'; +import * as AppBskyFeedRepost from './types/app/bsky/feed/repost'; +import * as AppBskyGraphFollow from './types/app/bsky/graph/follow'; +import * as AppBskyGraphGetFollowers from './types/app/bsky/graph/getFollowers'; +import * as AppBskyGraphGetFollows from './types/app/bsky/graph/getFollows'; +import * as AppBskyGraphInvite from './types/app/bsky/graph/invite'; +import * as AppBskyGraphInviteAccept from './types/app/bsky/graph/inviteAccept'; +import * as AppBskyNotificationGetCount from './types/app/bsky/notification/getCount'; +import * as AppBskyNotificationList from './types/app/bsky/notification/list'; +import * as AppBskyNotificationUpdateSeen from './types/app/bsky/notification/updateSeen'; +import * as AppBskySystemDeclaration from './types/app/bsky/system/declaration'; +export * as ComAtprotoAccountCreate from './types/com/atproto/account/create'; +export * as ComAtprotoAccountCreateInviteCode from './types/com/atproto/account/createInviteCode'; +export * as ComAtprotoAccountDelete from './types/com/atproto/account/delete'; +export * as ComAtprotoAccountGet from './types/com/atproto/account/get'; +export * as ComAtprotoAccountRequestPasswordReset from './types/com/atproto/account/requestPasswordReset'; +export * as ComAtprotoAccountResetPassword from './types/com/atproto/account/resetPassword'; +export * as ComAtprotoHandleResolve from './types/com/atproto/handle/resolve'; +export * as ComAtprotoRepoBatchWrite from './types/com/atproto/repo/batchWrite'; +export * as ComAtprotoRepoCreateRecord from './types/com/atproto/repo/createRecord'; +export * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repo/deleteRecord'; +export * as ComAtprotoRepoDescribe from './types/com/atproto/repo/describe'; +export * as ComAtprotoRepoGetRecord from './types/com/atproto/repo/getRecord'; +export * as ComAtprotoRepoListRecords from './types/com/atproto/repo/listRecords'; +export * as ComAtprotoRepoPutRecord from './types/com/atproto/repo/putRecord'; +export * as ComAtprotoServerGetAccountsConfig from './types/com/atproto/server/getAccountsConfig'; +export * as ComAtprotoSessionCreate from './types/com/atproto/session/create'; +export * as ComAtprotoSessionDelete from './types/com/atproto/session/delete'; +export * as ComAtprotoSessionGet from './types/com/atproto/session/get'; +export * as ComAtprotoSessionRefresh from './types/com/atproto/session/refresh'; +export * as ComAtprotoSyncGetRepo from './types/com/atproto/sync/getRepo'; +export * as ComAtprotoSyncGetRoot from './types/com/atproto/sync/getRoot'; +export * as ComAtprotoSyncUpdateRepo from './types/com/atproto/sync/updateRepo'; +export * as AppBskyActorGetProfile from './types/app/bsky/actor/getProfile'; +export * as AppBskyActorSearch from './types/app/bsky/actor/search'; +export * as AppBskyActorSearchTypeahead from './types/app/bsky/actor/searchTypeahead'; +export * as AppBskyActorProfile from './types/app/bsky/actor/profile'; +export * as AppBskyActorUpdateProfile from './types/app/bsky/actor/updateProfile'; +export * as AppBskyFeedGetAuthorFeed from './types/app/bsky/feed/getAuthorFeed'; +export * as AppBskyFeedGetLikedBy from './types/app/bsky/feed/getLikedBy'; +export * as AppBskyFeedGetPostThread from './types/app/bsky/feed/getPostThread'; +export * as AppBskyFeedGetRepostedBy from './types/app/bsky/feed/getRepostedBy'; +export * as AppBskyFeedGetTimeline from './types/app/bsky/feed/getTimeline'; +export * as AppBskyFeedLike from './types/app/bsky/feed/like'; +export * as AppBskyFeedMediaEmbed from './types/app/bsky/feed/mediaEmbed'; +export * as AppBskyFeedPost from './types/app/bsky/feed/post'; +export * as AppBskyFeedRepost from './types/app/bsky/feed/repost'; +export * as AppBskyGraphFollow from './types/app/bsky/graph/follow'; +export * as AppBskyGraphGetFollowers from './types/app/bsky/graph/getFollowers'; +export * as AppBskyGraphGetFollows from './types/app/bsky/graph/getFollows'; +export * as AppBskyGraphInvite from './types/app/bsky/graph/invite'; +export * as AppBskyGraphInviteAccept from './types/app/bsky/graph/inviteAccept'; +export * as AppBskyNotificationGetCount from './types/app/bsky/notification/getCount'; +export * as AppBskyNotificationList from './types/app/bsky/notification/list'; +export * as AppBskyNotificationUpdateSeen from './types/app/bsky/notification/updateSeen'; +export * as AppBskySystemDeclaration from './types/app/bsky/system/declaration'; +export declare const APP_BSKY_SYSTEM: { + ActorScene: string; + ActorUser: string; +}; +export declare class Client { + xrpc: XrpcClient; + constructor(); + service(serviceUri: string | URL): ServiceClient; +} +declare const defaultInst: Client; +export default defaultInst; +export declare class ServiceClient { + _baseClient: Client; + xrpc: XrpcServiceClient; + com: ComNS; + app: AppNS; + constructor(baseClient: Client, xrpcService: XrpcServiceClient); + setHeader(key: string, value: string): void; +} +export declare class ComNS { + _service: ServiceClient; + atproto: AtprotoNS; + constructor(service: ServiceClient); +} +export declare class AtprotoNS { + _service: ServiceClient; + account: AccountNS; + handle: HandleNS; + repo: RepoNS; + server: ServerNS; + session: SessionNS; + sync: SyncNS; + constructor(service: ServiceClient); +} +export declare class AccountNS { + _service: ServiceClient; + constructor(service: ServiceClient); + create(data?: ComAtprotoAccountCreate.InputSchema, opts?: ComAtprotoAccountCreate.CallOptions): Promise; + createInviteCode(data?: ComAtprotoAccountCreateInviteCode.InputSchema, opts?: ComAtprotoAccountCreateInviteCode.CallOptions): Promise; + delete(data?: ComAtprotoAccountDelete.InputSchema, opts?: ComAtprotoAccountDelete.CallOptions): Promise; + get(params?: ComAtprotoAccountGet.QueryParams, opts?: ComAtprotoAccountGet.CallOptions): Promise; + requestPasswordReset(data?: ComAtprotoAccountRequestPasswordReset.InputSchema, opts?: ComAtprotoAccountRequestPasswordReset.CallOptions): Promise; + resetPassword(data?: ComAtprotoAccountResetPassword.InputSchema, opts?: ComAtprotoAccountResetPassword.CallOptions): Promise; +} +export declare class HandleNS { + _service: ServiceClient; + constructor(service: ServiceClient); + resolve(params?: ComAtprotoHandleResolve.QueryParams, opts?: ComAtprotoHandleResolve.CallOptions): Promise; +} +export declare class RepoNS { + _service: ServiceClient; + constructor(service: ServiceClient); + batchWrite(data?: ComAtprotoRepoBatchWrite.InputSchema, opts?: ComAtprotoRepoBatchWrite.CallOptions): Promise; + createRecord(data?: ComAtprotoRepoCreateRecord.InputSchema, opts?: ComAtprotoRepoCreateRecord.CallOptions): Promise; + deleteRecord(data?: ComAtprotoRepoDeleteRecord.InputSchema, opts?: ComAtprotoRepoDeleteRecord.CallOptions): Promise; + describe(params?: ComAtprotoRepoDescribe.QueryParams, opts?: ComAtprotoRepoDescribe.CallOptions): Promise; + getRecord(params?: ComAtprotoRepoGetRecord.QueryParams, opts?: ComAtprotoRepoGetRecord.CallOptions): Promise; + listRecords(params?: ComAtprotoRepoListRecords.QueryParams, opts?: ComAtprotoRepoListRecords.CallOptions): Promise; + putRecord(data?: ComAtprotoRepoPutRecord.InputSchema, opts?: ComAtprotoRepoPutRecord.CallOptions): Promise; +} +export declare class ServerNS { + _service: ServiceClient; + constructor(service: ServiceClient); + getAccountsConfig(params?: ComAtprotoServerGetAccountsConfig.QueryParams, opts?: ComAtprotoServerGetAccountsConfig.CallOptions): Promise; +} +export declare class SessionNS { + _service: ServiceClient; + constructor(service: ServiceClient); + create(data?: ComAtprotoSessionCreate.InputSchema, opts?: ComAtprotoSessionCreate.CallOptions): Promise; + delete(data?: ComAtprotoSessionDelete.InputSchema, opts?: ComAtprotoSessionDelete.CallOptions): Promise; + get(params?: ComAtprotoSessionGet.QueryParams, opts?: ComAtprotoSessionGet.CallOptions): Promise; + refresh(data?: ComAtprotoSessionRefresh.InputSchema, opts?: ComAtprotoSessionRefresh.CallOptions): Promise; +} +export declare class SyncNS { + _service: ServiceClient; + constructor(service: ServiceClient); + getRepo(params?: ComAtprotoSyncGetRepo.QueryParams, opts?: ComAtprotoSyncGetRepo.CallOptions): Promise; + getRoot(params?: ComAtprotoSyncGetRoot.QueryParams, opts?: ComAtprotoSyncGetRoot.CallOptions): Promise; + updateRepo(data?: ComAtprotoSyncUpdateRepo.InputSchema, opts?: ComAtprotoSyncUpdateRepo.CallOptions): Promise; +} +export declare class AppNS { + _service: ServiceClient; + bsky: BskyNS; + constructor(service: ServiceClient); +} +export declare class BskyNS { + _service: ServiceClient; + actor: ActorNS; + feed: FeedNS; + graph: GraphNS; + notification: NotificationNS; + system: SystemNS; + constructor(service: ServiceClient); +} +export declare class ActorNS { + _service: ServiceClient; + profile: ProfileRecord; + constructor(service: ServiceClient); + getProfile(params?: AppBskyActorGetProfile.QueryParams, opts?: AppBskyActorGetProfile.CallOptions): Promise; + search(params?: AppBskyActorSearch.QueryParams, opts?: AppBskyActorSearch.CallOptions): Promise; + searchTypeahead(params?: AppBskyActorSearchTypeahead.QueryParams, opts?: AppBskyActorSearchTypeahead.CallOptions): Promise; + updateProfile(data?: AppBskyActorUpdateProfile.InputSchema, opts?: AppBskyActorUpdateProfile.CallOptions): Promise; +} +export declare class ProfileRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskyActorProfile.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskyActorProfile.Record; + }>; + create(params: Omit, record: AppBskyActorProfile.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} +export declare class FeedNS { + _service: ServiceClient; + like: LikeRecord; + mediaEmbed: MediaEmbedRecord; + post: PostRecord; + repost: RepostRecord; + constructor(service: ServiceClient); + getAuthorFeed(params?: AppBskyFeedGetAuthorFeed.QueryParams, opts?: AppBskyFeedGetAuthorFeed.CallOptions): Promise; + getLikedBy(params?: AppBskyFeedGetLikedBy.QueryParams, opts?: AppBskyFeedGetLikedBy.CallOptions): Promise; + getPostThread(params?: AppBskyFeedGetPostThread.QueryParams, opts?: AppBskyFeedGetPostThread.CallOptions): Promise; + getRepostedBy(params?: AppBskyFeedGetRepostedBy.QueryParams, opts?: AppBskyFeedGetRepostedBy.CallOptions): Promise; + getTimeline(params?: AppBskyFeedGetTimeline.QueryParams, opts?: AppBskyFeedGetTimeline.CallOptions): Promise; +} +export declare class LikeRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskyFeedLike.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskyFeedLike.Record; + }>; + create(params: Omit, record: AppBskyFeedLike.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} +export declare class MediaEmbedRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskyFeedMediaEmbed.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskyFeedMediaEmbed.Record; + }>; + create(params: Omit, record: AppBskyFeedMediaEmbed.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} +export declare class PostRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskyFeedPost.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskyFeedPost.Record; + }>; + create(params: Omit, record: AppBskyFeedPost.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} +export declare class RepostRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskyFeedRepost.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskyFeedRepost.Record; + }>; + create(params: Omit, record: AppBskyFeedRepost.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} +export declare class GraphNS { + _service: ServiceClient; + follow: FollowRecord; + invite: InviteRecord; + inviteAccept: InviteAcceptRecord; + constructor(service: ServiceClient); + getFollowers(params?: AppBskyGraphGetFollowers.QueryParams, opts?: AppBskyGraphGetFollowers.CallOptions): Promise; + getFollows(params?: AppBskyGraphGetFollows.QueryParams, opts?: AppBskyGraphGetFollows.CallOptions): Promise; +} +export declare class FollowRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskyGraphFollow.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskyGraphFollow.Record; + }>; + create(params: Omit, record: AppBskyGraphFollow.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} +export declare class InviteRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskyGraphInvite.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskyGraphInvite.Record; + }>; + create(params: Omit, record: AppBskyGraphInvite.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} +export declare class InviteAcceptRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskyGraphInviteAccept.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskyGraphInviteAccept.Record; + }>; + create(params: Omit, record: AppBskyGraphInviteAccept.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} +export declare class NotificationNS { + _service: ServiceClient; + constructor(service: ServiceClient); + getCount(params?: AppBskyNotificationGetCount.QueryParams, opts?: AppBskyNotificationGetCount.CallOptions): Promise; + list(params?: AppBskyNotificationList.QueryParams, opts?: AppBskyNotificationList.CallOptions): Promise; + updateSeen(data?: AppBskyNotificationUpdateSeen.InputSchema, opts?: AppBskyNotificationUpdateSeen.CallOptions): Promise; +} +export declare class SystemNS { + _service: ServiceClient; + declaration: DeclarationRecord; + constructor(service: ServiceClient); +} +export declare class DeclarationRecord { + _service: ServiceClient; + constructor(service: ServiceClient); + list(params: Omit): Promise<{ + cursor?: string; + records: { + uri: string; + value: AppBskySystemDeclaration.Record; + }[]; + }>; + get(params: Omit): Promise<{ + uri: string; + cid: string; + value: AppBskySystemDeclaration.Record; + }>; + create(params: Omit, record: AppBskySystemDeclaration.Record, headers?: Record): Promise<{ + uri: string; + cid: string; + }>; + delete(params: Omit, headers?: Record): Promise; +} diff --git a/src/third-party/api/src/schemas.d.ts b/src/third-party/api/src/client/schemas.d.ts similarity index 53% rename from src/third-party/api/src/schemas.d.ts rename to src/third-party/api/src/client/schemas.d.ts index 46fe20d0..c8eb43fb 100644 --- a/src/third-party/api/src/schemas.d.ts +++ b/src/third-party/api/src/client/schemas.d.ts @@ -2,15 +2,15 @@ import { MethodSchema, RecordSchema } from '@atproto/lexicon'; export declare const methodSchemaDict: Record; export declare const methodSchemas: MethodSchema[]; export declare const ids: { - AppBskyBadge: string; - AppBskyBadgeAccept: string; - AppBskyBadgeOffer: string; - AppBskyFollow: string; - AppBskyLike: string; - AppBskyMediaEmbed: string; - AppBskyPost: string; - AppBskyProfile: string; - AppBskyRepost: string; + AppBskyActorProfile: string; + AppBskyFeedLike: string; + AppBskyFeedMediaEmbed: string; + AppBskyFeedPost: string; + AppBskyFeedRepost: string; + AppBskyGraphFollow: string; + AppBskyGraphInvite: string; + AppBskyGraphInviteAccept: string; + AppBskySystemDeclaration: string; }; export declare const recordSchemaDict: Record; export declare const recordSchemas: RecordSchema[]; diff --git a/src/third-party/api/src/types/todo/social/getProfile.d.ts b/src/third-party/api/src/client/types/app/bsky/actor/getProfile.d.ts similarity index 66% rename from src/third-party/api/src/types/todo/social/getProfile.d.ts rename to src/third-party/api/src/client/types/app/bsky/actor/getProfile.d.ts index 26ed3ca6..4425be15 100644 --- a/src/third-party/api/src/types/todo/social/getProfile.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/actor/getProfile.d.ts @@ -1,4 +1,4 @@ -import { Headers } from '@adxp/xrpc'; +import { Headers } from '@atproto/xrpc'; export interface QueryParams { user: string; } @@ -8,30 +8,16 @@ export interface CallOptions { export declare type InputSchema = undefined; export interface OutputSchema { did: string; - name: string; + handle: string; displayName?: string; description?: string; followersCount: number; followsCount: number; postsCount: number; - badges: Badge[]; myState?: { follow?: string; }; } -export interface Badge { - uri: string; - error?: string; - issuer?: { - did: string; - name: string; - displayName: string; - }; - assertion?: { - type: string; - }; - createdAt?: string; -} export interface Response { success: boolean; headers: Headers; diff --git a/src/third-party/api/src/types/todo/social/profile.d.ts b/src/third-party/api/src/client/types/app/bsky/actor/profile.d.ts similarity index 51% rename from src/third-party/api/src/types/todo/social/profile.d.ts rename to src/third-party/api/src/client/types/app/bsky/actor/profile.d.ts index d71328ec..fa56d7fe 100644 --- a/src/third-party/api/src/types/todo/social/profile.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/actor/profile.d.ts @@ -1,10 +1,5 @@ export interface Record { displayName: string; description?: string; - badges?: BadgeRef[]; - [k: string]: unknown; -} -export interface BadgeRef { - uri: string; [k: string]: unknown; } diff --git a/src/third-party/api/src/types/app/bsky/getUsersSearch.d.ts b/src/third-party/api/src/client/types/app/bsky/actor/search.d.ts similarity index 87% rename from src/third-party/api/src/types/app/bsky/getUsersSearch.d.ts rename to src/third-party/api/src/client/types/app/bsky/actor/search.d.ts index a2081586..5e0aa6eb 100644 --- a/src/third-party/api/src/types/app/bsky/getUsersSearch.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/actor/search.d.ts @@ -12,11 +12,10 @@ export interface OutputSchema { cursor?: string; users: { did: string; - name: string; + handle: string; displayName?: string; description?: string; - createdAt: string; - indexedAt: string; + indexedAt?: string; }[]; } export interface Response { diff --git a/src/third-party/api/src/types/app/bsky/getUsersTypeahead.d.ts b/src/third-party/api/src/client/types/app/bsky/actor/searchTypeahead.d.ts similarity index 95% rename from src/third-party/api/src/types/app/bsky/getUsersTypeahead.d.ts rename to src/third-party/api/src/client/types/app/bsky/actor/searchTypeahead.d.ts index c14ff807..e0d50bda 100644 --- a/src/third-party/api/src/types/app/bsky/getUsersTypeahead.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/actor/searchTypeahead.d.ts @@ -10,7 +10,7 @@ export declare type InputSchema = undefined; export interface OutputSchema { users: { did: string; - name: string; + handle: string; displayName?: string; }[]; } diff --git a/src/third-party/api/src/types/app/bsky/updateProfile.d.ts b/src/third-party/api/src/client/types/app/bsky/actor/updateProfile.d.ts similarity index 83% rename from src/third-party/api/src/types/app/bsky/updateProfile.d.ts rename to src/third-party/api/src/client/types/app/bsky/actor/updateProfile.d.ts index 98cc3ac6..296fa3e5 100644 --- a/src/third-party/api/src/types/app/bsky/updateProfile.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/actor/updateProfile.d.ts @@ -3,16 +3,12 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { displayName?: string; description?: string; - pinnedBadges?: BadgeRef[]; -} -export interface BadgeRef { - uri: string; - cid: string; } export interface OutputSchema { uri: string; diff --git a/src/third-party/api/src/types/app/bsky/getAuthorFeed.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/getAuthorFeed.d.ts similarity index 98% rename from src/third-party/api/src/types/app/bsky/getAuthorFeed.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/getAuthorFeed.d.ts index e786666e..3492a2be 100644 --- a/src/third-party/api/src/types/app/bsky/getAuthorFeed.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/feed/getAuthorFeed.d.ts @@ -30,7 +30,7 @@ export interface FeedItem { } export interface User { did: string; - name: string; + handle: string; displayName?: string; } export interface RecordEmbed { diff --git a/src/third-party/api/src/types/app/bsky/getLikedBy.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/getLikedBy.d.ts similarity index 96% rename from src/third-party/api/src/types/app/bsky/getLikedBy.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/getLikedBy.d.ts index b702e1cd..1ae8fe81 100644 --- a/src/third-party/api/src/types/app/bsky/getLikedBy.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/feed/getLikedBy.d.ts @@ -15,7 +15,7 @@ export interface OutputSchema { cursor?: string; likedBy: { did: string; - name: string; + handle: string; displayName?: string; createdAt?: string; indexedAt: string; diff --git a/src/third-party/api/src/types/app/bsky/getPostThread.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/getPostThread.d.ts similarity index 98% rename from src/third-party/api/src/types/app/bsky/getPostThread.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/getPostThread.d.ts index 8e690d11..59c6f1d8 100644 --- a/src/third-party/api/src/types/app/bsky/getPostThread.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/feed/getPostThread.d.ts @@ -29,7 +29,7 @@ export interface Post { } export interface User { did: string; - name: string; + handle: string; displayName?: string; } export interface RecordEmbed { diff --git a/src/third-party/api/src/types/app/bsky/getRepostedBy.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/getRepostedBy.d.ts similarity index 96% rename from src/third-party/api/src/types/app/bsky/getRepostedBy.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/getRepostedBy.d.ts index 1ed1fe08..cd4acc6d 100644 --- a/src/third-party/api/src/types/app/bsky/getRepostedBy.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/feed/getRepostedBy.d.ts @@ -15,7 +15,7 @@ export interface OutputSchema { cursor?: string; repostedBy: { did: string; - name: string; + handle: string; displayName?: string; createdAt?: string; indexedAt: string; diff --git a/src/third-party/api/src/types/app/bsky/getHomeFeed.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/getTimeline.d.ts similarity index 98% rename from src/third-party/api/src/types/app/bsky/getHomeFeed.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/getTimeline.d.ts index 0b4b5eed..2ec48878 100644 --- a/src/third-party/api/src/types/app/bsky/getHomeFeed.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/feed/getTimeline.d.ts @@ -30,7 +30,7 @@ export interface FeedItem { } export interface User { did: string; - name: string; + handle: string; displayName?: string; } export interface RecordEmbed { diff --git a/src/third-party/api/src/types/app/bsky/like.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/like.d.ts similarity index 100% rename from src/third-party/api/src/types/app/bsky/like.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/like.d.ts diff --git a/src/third-party/api/src/types/app/bsky/mediaEmbed.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/mediaEmbed.d.ts similarity index 100% rename from src/third-party/api/src/types/app/bsky/mediaEmbed.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/mediaEmbed.d.ts diff --git a/src/third-party/api/src/types/app/bsky/post.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/post.d.ts similarity index 87% rename from src/third-party/api/src/types/app/bsky/post.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/post.d.ts index 00083078..90159bba 100644 --- a/src/third-party/api/src/types/app/bsky/post.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/feed/post.d.ts @@ -1,13 +1,7 @@ export declare type TextSlice = [number, number]; -export declare type Entity = { - index: TextSlice; - type: string; - value: string; - [k: string]: unknown; -}[]; export interface Record { text: string; - entities?: Entity; + entities?: Entity[]; reply?: { root: PostRef; parent: PostRef; @@ -16,6 +10,12 @@ export interface Record { createdAt: string; [k: string]: unknown; } +export interface Entity { + index: TextSlice; + type: string; + value: string; + [k: string]: unknown; +} export interface PostRef { uri: string; cid: string; diff --git a/src/third-party/api/src/types/app/bsky/repost.d.ts b/src/third-party/api/src/client/types/app/bsky/feed/repost.d.ts similarity index 100% rename from src/third-party/api/src/types/app/bsky/repost.d.ts rename to src/third-party/api/src/client/types/app/bsky/feed/repost.d.ts diff --git a/src/third-party/api/src/client/types/app/bsky/graph/follow.d.ts b/src/third-party/api/src/client/types/app/bsky/graph/follow.d.ts new file mode 100644 index 00000000..ca12d36c --- /dev/null +++ b/src/third-party/api/src/client/types/app/bsky/graph/follow.d.ts @@ -0,0 +1,9 @@ +export interface Record { + subject: { + did: string; + declarationCid: string; + [k: string]: unknown; + }; + createdAt: string; + [k: string]: unknown; +} diff --git a/src/third-party/api/src/types/app/bsky/getUserFollowers.d.ts b/src/third-party/api/src/client/types/app/bsky/graph/getFollowers.d.ts similarity index 93% rename from src/third-party/api/src/types/app/bsky/getUserFollowers.d.ts rename to src/third-party/api/src/client/types/app/bsky/graph/getFollowers.d.ts index c428df45..12204cae 100644 --- a/src/third-party/api/src/types/app/bsky/getUserFollowers.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/graph/getFollowers.d.ts @@ -11,13 +11,13 @@ export declare type InputSchema = undefined; export interface OutputSchema { subject: { did: string; - name: string; + handle: string; displayName?: string; }; cursor?: string; followers: { did: string; - name: string; + handle: string; displayName?: string; createdAt?: string; indexedAt: string; diff --git a/src/third-party/api/src/types/app/bsky/getUserFollows.d.ts b/src/third-party/api/src/client/types/app/bsky/graph/getFollows.d.ts similarity index 93% rename from src/third-party/api/src/types/app/bsky/getUserFollows.d.ts rename to src/third-party/api/src/client/types/app/bsky/graph/getFollows.d.ts index 6789aa06..64a5a72a 100644 --- a/src/third-party/api/src/types/app/bsky/getUserFollows.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/graph/getFollows.d.ts @@ -11,13 +11,13 @@ export declare type InputSchema = undefined; export interface OutputSchema { subject: { did: string; - name: string; + handle: string; displayName?: string; }; cursor?: string; follows: { did: string; - name: string; + handle: string; displayName?: string; createdAt?: string; indexedAt: string; diff --git a/src/third-party/api/src/client/types/app/bsky/graph/invite.d.ts b/src/third-party/api/src/client/types/app/bsky/graph/invite.d.ts new file mode 100644 index 00000000..f179c5d5 --- /dev/null +++ b/src/third-party/api/src/client/types/app/bsky/graph/invite.d.ts @@ -0,0 +1,10 @@ +export interface Record { + group: string; + subject: { + did: string; + declarationCid: string; + [k: string]: unknown; + }; + createdAt: string; + [k: string]: unknown; +} diff --git a/src/third-party/api/src/client/types/app/bsky/graph/inviteAccept.d.ts b/src/third-party/api/src/client/types/app/bsky/graph/inviteAccept.d.ts new file mode 100644 index 00000000..d8747d30 --- /dev/null +++ b/src/third-party/api/src/client/types/app/bsky/graph/inviteAccept.d.ts @@ -0,0 +1,14 @@ +export interface Record { + group: { + did: string; + declarationCid: string; + [k: string]: unknown; + }; + invite: { + uri: string; + cid: string; + [k: string]: unknown; + }; + createdAt: string; + [k: string]: unknown; +} diff --git a/src/third-party/api/src/types/app/bsky/getNotificationCount.d.ts b/src/third-party/api/src/client/types/app/bsky/notification/getCount.d.ts similarity index 100% rename from src/third-party/api/src/types/app/bsky/getNotificationCount.d.ts rename to src/third-party/api/src/client/types/app/bsky/notification/getCount.d.ts diff --git a/src/third-party/api/src/types/app/bsky/getNotifications.d.ts b/src/third-party/api/src/client/types/app/bsky/notification/list.d.ts similarity index 96% rename from src/third-party/api/src/types/app/bsky/getNotifications.d.ts rename to src/third-party/api/src/client/types/app/bsky/notification/list.d.ts index 9c9c58eb..d73c72be 100644 --- a/src/third-party/api/src/types/app/bsky/getNotifications.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/notification/list.d.ts @@ -16,7 +16,7 @@ export interface Notification { cid: string; author: { did: string; - name: string; + handle: string; displayName?: string; }; reason: string; diff --git a/src/third-party/api/src/types/app/bsky/postNotificationsSeen.d.ts b/src/third-party/api/src/client/types/app/bsky/notification/updateSeen.d.ts similarity index 95% rename from src/third-party/api/src/types/app/bsky/postNotificationsSeen.d.ts rename to src/third-party/api/src/client/types/app/bsky/notification/updateSeen.d.ts index 40e7ab92..3c1c0a2f 100644 --- a/src/third-party/api/src/types/app/bsky/postNotificationsSeen.d.ts +++ b/src/third-party/api/src/client/types/app/bsky/notification/updateSeen.d.ts @@ -3,6 +3,7 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { diff --git a/src/third-party/api/src/client/types/app/bsky/system/declaration.d.ts b/src/third-party/api/src/client/types/app/bsky/system/declaration.d.ts new file mode 100644 index 00000000..817afb18 --- /dev/null +++ b/src/third-party/api/src/client/types/app/bsky/system/declaration.d.ts @@ -0,0 +1,6 @@ +export declare type ActorKnown = 'app.bsky.system.actorUser' | 'app.bsky.system.actorScene'; +export declare type ActorUnknown = string; +export interface Record { + actorType: ActorKnown | ActorUnknown; + [k: string]: unknown; +} diff --git a/src/third-party/api/src/types/com/atproto/createAccount.d.ts b/src/third-party/api/src/client/types/com/atproto/account/create.d.ts similarity index 74% rename from src/third-party/api/src/types/com/atproto/createAccount.d.ts rename to src/third-party/api/src/client/types/com/atproto/account/create.d.ts index 914a3987..37456e9c 100644 --- a/src/third-party/api/src/types/com/atproto/createAccount.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/account/create.d.ts @@ -3,26 +3,29 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { email: string; - username: string; + handle: string; inviteCode?: string; password: string; recoveryKey?: string; } export interface OutputSchema { - jwt: string; - username: string; + accessJwt: string; + refreshJwt: string; + handle: string; did: string; + declarationCid: string; } export interface Response { success: boolean; headers: Headers; data: OutputSchema; } -export declare class InvalidUsernameError extends XRPCError { +export declare class InvalidHandleError extends XRPCError { constructor(src: XRPCError); } export declare class InvalidPasswordError extends XRPCError { @@ -31,7 +34,7 @@ export declare class InvalidPasswordError extends XRPCError { export declare class InvalidInviteCodeError extends XRPCError { constructor(src: XRPCError); } -export declare class UsernameNotAvailableError extends XRPCError { +export declare class HandleNotAvailableError extends XRPCError { constructor(src: XRPCError); } export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/com/atproto/createInviteCode.d.ts b/src/third-party/api/src/client/types/com/atproto/account/createInviteCode.d.ts similarity index 95% rename from src/third-party/api/src/types/com/atproto/createInviteCode.d.ts rename to src/third-party/api/src/client/types/com/atproto/account/createInviteCode.d.ts index d8198812..9aac84bd 100644 --- a/src/third-party/api/src/types/com/atproto/createInviteCode.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/account/createInviteCode.d.ts @@ -3,6 +3,7 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { diff --git a/src/third-party/api/src/types/com/atproto/deleteSession.d.ts b/src/third-party/api/src/client/types/com/atproto/account/delete.d.ts similarity index 94% rename from src/third-party/api/src/types/com/atproto/deleteSession.d.ts rename to src/third-party/api/src/client/types/com/atproto/account/delete.d.ts index de1afe52..5a3c9d85 100644 --- a/src/third-party/api/src/types/com/atproto/deleteSession.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/account/delete.d.ts @@ -3,6 +3,7 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: ''; } export interface InputSchema { diff --git a/src/third-party/api/src/types/todo/social/getNotificationCount.d.ts b/src/third-party/api/src/client/types/com/atproto/account/get.d.ts similarity index 82% rename from src/third-party/api/src/types/todo/social/getNotificationCount.d.ts rename to src/third-party/api/src/client/types/com/atproto/account/get.d.ts index 84215355..ed9e823e 100644 --- a/src/third-party/api/src/types/todo/social/getNotificationCount.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/account/get.d.ts @@ -1,4 +1,4 @@ -import { Headers } from '@adxp/xrpc'; +import { Headers } from '@atproto/xrpc'; export interface QueryParams { } export interface CallOptions { @@ -6,7 +6,7 @@ export interface CallOptions { } export declare type InputSchema = undefined; export interface OutputSchema { - count: number; + [k: string]: unknown; } export interface Response { success: boolean; diff --git a/src/third-party/api/src/types/com/atproto/requestAccountPasswordReset.d.ts b/src/third-party/api/src/client/types/com/atproto/account/requestPasswordReset.d.ts similarity index 94% rename from src/third-party/api/src/types/com/atproto/requestAccountPasswordReset.d.ts rename to src/third-party/api/src/client/types/com/atproto/account/requestPasswordReset.d.ts index fe9b077d..b3b054dc 100644 --- a/src/third-party/api/src/types/com/atproto/requestAccountPasswordReset.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/account/requestPasswordReset.d.ts @@ -3,6 +3,7 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { diff --git a/src/third-party/api/src/types/com/atproto/resetAccountPassword.d.ts b/src/third-party/api/src/client/types/com/atproto/account/resetPassword.d.ts similarity index 96% rename from src/third-party/api/src/types/com/atproto/resetAccountPassword.d.ts rename to src/third-party/api/src/client/types/com/atproto/account/resetPassword.d.ts index e91b882b..a75def96 100644 --- a/src/third-party/api/src/types/com/atproto/resetAccountPassword.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/account/resetPassword.d.ts @@ -3,6 +3,7 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { diff --git a/src/third-party/api/src/types/com/atproto/getSession.d.ts b/src/third-party/api/src/client/types/com/atproto/handle/resolve.d.ts similarity index 94% rename from src/third-party/api/src/types/com/atproto/getSession.d.ts rename to src/third-party/api/src/client/types/com/atproto/handle/resolve.d.ts index afaedaed..67b1033f 100644 --- a/src/third-party/api/src/types/com/atproto/getSession.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/handle/resolve.d.ts @@ -1,12 +1,12 @@ import { Headers } from '@atproto/xrpc'; export interface QueryParams { + handle?: string; } export interface CallOptions { headers?: Headers; } export declare type InputSchema = undefined; export interface OutputSchema { - name: string; did: string; } export interface Response { diff --git a/src/third-party/api/src/types/com/atproto/repoBatchWrite.d.ts b/src/third-party/api/src/client/types/com/atproto/repo/batchWrite.d.ts similarity index 97% rename from src/third-party/api/src/types/com/atproto/repoBatchWrite.d.ts rename to src/third-party/api/src/client/types/com/atproto/repo/batchWrite.d.ts index 360c670e..f951f280 100644 --- a/src/third-party/api/src/types/com/atproto/repoBatchWrite.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/repo/batchWrite.d.ts @@ -1,13 +1,14 @@ import { Headers } from '@atproto/xrpc'; export interface QueryParams { - did: string; - validate?: boolean; } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { + did: string; + validate?: boolean; writes: ({ action: 'create'; collection: string; diff --git a/src/third-party/api/src/types/com/atproto/repoCreateRecord.d.ts b/src/third-party/api/src/client/types/com/atproto/repo/createRecord.d.ts similarity index 92% rename from src/third-party/api/src/types/com/atproto/repoCreateRecord.d.ts rename to src/third-party/api/src/client/types/com/atproto/repo/createRecord.d.ts index 8e770362..664eb3d0 100644 --- a/src/third-party/api/src/types/com/atproto/repoCreateRecord.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/repo/createRecord.d.ts @@ -1,15 +1,16 @@ import { Headers } from '@atproto/xrpc'; export interface QueryParams { - did: string; - collection: string; - validate?: boolean; } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { - [k: string]: unknown; + did: string; + collection: string; + validate?: boolean; + record: {}; } export interface OutputSchema { uri: string; diff --git a/src/third-party/api/src/types/com/atproto/repoDeleteRecord.d.ts b/src/third-party/api/src/client/types/com/atproto/repo/deleteRecord.d.ts similarity index 77% rename from src/third-party/api/src/types/com/atproto/repoDeleteRecord.d.ts rename to src/third-party/api/src/client/types/com/atproto/repo/deleteRecord.d.ts index 708d795d..ebbf863e 100644 --- a/src/third-party/api/src/types/com/atproto/repoDeleteRecord.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/repo/deleteRecord.d.ts @@ -1,13 +1,16 @@ import { Headers } from '@atproto/xrpc'; export interface QueryParams { +} +export interface CallOptions { + headers?: Headers; + qp?: QueryParams; + encoding: 'application/json'; +} +export interface InputSchema { did: string; collection: string; rkey: string; } -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; export interface Response { success: boolean; headers: Headers; diff --git a/src/third-party/api/src/types/com/atproto/repoDescribe.d.ts b/src/third-party/api/src/client/types/com/atproto/repo/describe.d.ts similarity index 89% rename from src/third-party/api/src/types/com/atproto/repoDescribe.d.ts rename to src/third-party/api/src/client/types/com/atproto/repo/describe.d.ts index 3a351eb0..5d2242a6 100644 --- a/src/third-party/api/src/types/com/atproto/repoDescribe.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/repo/describe.d.ts @@ -7,11 +7,11 @@ export interface CallOptions { } export declare type InputSchema = undefined; export interface OutputSchema { - name: string; + handle: string; did: string; didDoc: {}; collections: string[]; - nameIsCorrect: boolean; + handleIsCorrect: boolean; } export interface Response { success: boolean; diff --git a/src/third-party/api/src/types/com/atproto/repoGetRecord.d.ts b/src/third-party/api/src/client/types/com/atproto/repo/getRecord.d.ts similarity index 100% rename from src/third-party/api/src/types/com/atproto/repoGetRecord.d.ts rename to src/third-party/api/src/client/types/com/atproto/repo/getRecord.d.ts diff --git a/src/third-party/api/src/types/com/atproto/repoListRecords.d.ts b/src/third-party/api/src/client/types/com/atproto/repo/listRecords.d.ts similarity index 100% rename from src/third-party/api/src/types/com/atproto/repoListRecords.d.ts rename to src/third-party/api/src/client/types/com/atproto/repo/listRecords.d.ts diff --git a/src/third-party/api/src/types/com/atproto/repoPutRecord.d.ts b/src/third-party/api/src/client/types/com/atproto/repo/putRecord.d.ts similarity index 92% rename from src/third-party/api/src/types/com/atproto/repoPutRecord.d.ts rename to src/third-party/api/src/client/types/com/atproto/repo/putRecord.d.ts index a40dd660..e776216c 100644 --- a/src/third-party/api/src/types/com/atproto/repoPutRecord.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/repo/putRecord.d.ts @@ -1,16 +1,17 @@ import { Headers } from '@atproto/xrpc'; export interface QueryParams { +} +export interface CallOptions { + headers?: Headers; + qp?: QueryParams; + encoding: 'application/json'; +} +export interface InputSchema { did: string; collection: string; rkey: string; validate?: boolean; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - [k: string]: unknown; + record: {}; } export interface OutputSchema { uri: string; diff --git a/src/third-party/api/src/types/com/atproto/getAccountsConfig.d.ts b/src/third-party/api/src/client/types/com/atproto/server/getAccountsConfig.d.ts similarity index 100% rename from src/third-party/api/src/types/com/atproto/getAccountsConfig.d.ts rename to src/third-party/api/src/client/types/com/atproto/server/getAccountsConfig.d.ts diff --git a/src/third-party/api/src/types/com/atproto/createSession.d.ts b/src/third-party/api/src/client/types/com/atproto/session/create.d.ts similarity index 79% rename from src/third-party/api/src/types/com/atproto/createSession.d.ts rename to src/third-party/api/src/client/types/com/atproto/session/create.d.ts index a3f5a2f4..c8d20163 100644 --- a/src/third-party/api/src/types/com/atproto/createSession.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/session/create.d.ts @@ -3,15 +3,17 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/json'; } export interface InputSchema { - username: string; + handle: string; password: string; } export interface OutputSchema { - jwt: string; - name: string; + accessJwt: string; + refreshJwt: string; + handle: string; did: string; } export interface Response { diff --git a/src/third-party/api/src/types/com/atproto/deleteAccount.d.ts b/src/third-party/api/src/client/types/com/atproto/session/delete.d.ts similarity index 81% rename from src/third-party/api/src/types/com/atproto/deleteAccount.d.ts rename to src/third-party/api/src/client/types/com/atproto/session/delete.d.ts index de1afe52..4e96df83 100644 --- a/src/third-party/api/src/types/com/atproto/deleteAccount.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/session/delete.d.ts @@ -3,11 +3,9 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; - encoding: ''; -} -export interface InputSchema { - [k: string]: unknown; + qp?: QueryParams; } +export declare type InputSchema = undefined; export interface OutputSchema { [k: string]: unknown; } diff --git a/src/third-party/api/src/types/com/atproto/resolveName.d.ts b/src/third-party/api/src/client/types/com/atproto/session/get.d.ts similarity index 94% rename from src/third-party/api/src/types/com/atproto/resolveName.d.ts rename to src/third-party/api/src/client/types/com/atproto/session/get.d.ts index 0d64e5b6..f4bf94ed 100644 --- a/src/third-party/api/src/types/com/atproto/resolveName.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/session/get.d.ts @@ -1,12 +1,12 @@ import { Headers } from '@atproto/xrpc'; export interface QueryParams { - name?: string; } export interface CallOptions { headers?: Headers; } export declare type InputSchema = undefined; export interface OutputSchema { + handle: string; did: string; } export interface Response { diff --git a/src/third-party/api/src/client/types/com/atproto/session/refresh.d.ts b/src/third-party/api/src/client/types/com/atproto/session/refresh.d.ts new file mode 100644 index 00000000..7ea198f0 --- /dev/null +++ b/src/third-party/api/src/client/types/com/atproto/session/refresh.d.ts @@ -0,0 +1,20 @@ +import { Headers } from '@atproto/xrpc'; +export interface QueryParams { +} +export interface CallOptions { + headers?: Headers; + qp?: QueryParams; +} +export declare type InputSchema = undefined; +export interface OutputSchema { + accessJwt: string; + refreshJwt: string; + handle: string; + did: string; +} +export interface Response { + success: boolean; + headers: Headers; + data: OutputSchema; +} +export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/com/atproto/syncGetRepo.d.ts b/src/third-party/api/src/client/types/com/atproto/sync/getRepo.d.ts similarity index 100% rename from src/third-party/api/src/types/com/atproto/syncGetRepo.d.ts rename to src/third-party/api/src/client/types/com/atproto/sync/getRepo.d.ts diff --git a/src/third-party/api/src/types/com/atproto/syncGetRoot.d.ts b/src/third-party/api/src/client/types/com/atproto/sync/getRoot.d.ts similarity index 100% rename from src/third-party/api/src/types/com/atproto/syncGetRoot.d.ts rename to src/third-party/api/src/client/types/com/atproto/sync/getRoot.d.ts diff --git a/src/third-party/api/src/types/com/atproto/syncUpdateRepo.d.ts b/src/third-party/api/src/client/types/com/atproto/sync/updateRepo.d.ts similarity index 94% rename from src/third-party/api/src/types/com/atproto/syncUpdateRepo.d.ts rename to src/third-party/api/src/client/types/com/atproto/sync/updateRepo.d.ts index 15d0e9a2..a7c1d5a1 100644 --- a/src/third-party/api/src/types/com/atproto/syncUpdateRepo.d.ts +++ b/src/third-party/api/src/client/types/com/atproto/sync/updateRepo.d.ts @@ -4,6 +4,7 @@ export interface QueryParams { } export interface CallOptions { headers?: Headers; + qp?: QueryParams; encoding: 'application/cbor'; } export declare type InputSchema = string | Uint8Array; diff --git a/src/third-party/api/src/errors.d.ts b/src/third-party/api/src/errors.d.ts deleted file mode 100644 index 11429988..00000000 --- a/src/third-party/api/src/errors.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -export declare enum ErrorCode { - NetworkError = "NetworkError", - DidResolutionFailed = "DidResolutionFailed", - NameResolutionFailed = "NameResolutionFailed" -} -export declare class NameResolutionFailed extends Error { - code: ErrorCode; - constructor(name: string); -} -export declare class DidResolutionFailed extends Error { - code: ErrorCode; - constructor(did: string); -} -export declare class WritePermissionError extends Error { - constructor(); -} -export declare class APIResponseError extends Error { - httpStatusCode: number; - httpStatusText: string; - httpHeaders?: Record | undefined; - httpResponseBody?: any; - constructor(httpStatusCode: number, httpStatusText: string, httpHeaders?: Record | undefined, httpResponseBody?: any); - get code(): ErrorCode; -} diff --git a/src/third-party/api/src/http-types.d.ts b/src/third-party/api/src/http-types.d.ts deleted file mode 100644 index 02df0834..00000000 --- a/src/third-party/api/src/http-types.d.ts +++ /dev/null @@ -1,180 +0,0 @@ -import { z } from 'zod'; -export declare const getRepoRequest: z.ZodObject<{ - did: z.ZodString; - from: z.ZodOptional, import("multiformats/cid").CID, string>>; -}, "strip", z.ZodTypeAny, { - from?: import("multiformats/cid").CID | undefined; - did: string; -}, { - from?: string | undefined; - did: string; -}>; -export declare type GetRepoRequest = z.infer; -export declare const postRepoRequest: z.ZodObject<{ - did: z.ZodString; -}, "strip", z.ZodTypeAny, { - did: string; -}, { - did: string; -}>; -export declare type PostRepoRequest = z.infer; -export declare const describeRepoParams: z.ZodObject<{ - confirmName: z.ZodOptional; -}, "strip", z.ZodTypeAny, { - confirmName?: boolean | undefined; -}, { - confirmName?: boolean | undefined; -}>; -export declare type DescribeRepoParams = z.infer; -export declare const describeRepoResponse: z.ZodObject<{ - name: z.ZodString; - did: z.ZodString; - didDoc: z.ZodAny; - collections: z.ZodArray; - nameIsCorrect: z.ZodOptional; -}, "strip", z.ZodTypeAny, { - didDoc?: any; - nameIsCorrect?: boolean | undefined; - name: string; - did: string; - collections: string[]; -}, { - didDoc?: any; - nameIsCorrect?: boolean | undefined; - name: string; - did: string; - collections: string[]; -}>; -export declare type DescribeRepoResponse = z.infer; -export declare const listRecordsParams: z.ZodObject<{ - limit: z.ZodOptional, number, string>]>>; - before: z.ZodOptional; - after: z.ZodOptional; - reverse: z.ZodOptional>; -}, "strip", z.ZodTypeAny, { - reverse?: boolean | undefined; - limit?: number | undefined; - before?: string | undefined; - after?: string | undefined; -}, { - reverse?: string | undefined; - limit?: string | number | undefined; - before?: string | undefined; - after?: string | undefined; -}>; -export declare type ListRecordsParams = z.infer; -export declare const listRecordsResponse: z.ZodObject<{ - records: z.ZodArray, "many">; -}, "strip", z.ZodTypeAny, { - records: { - value?: any; - uri: string; - }[]; -}, { - records: { - value?: any; - uri: string; - }[]; -}>; -export declare type ListRecordsResponse = z.infer; -export declare const getRecordResponse: z.ZodObject<{ - uri: z.ZodString; - value: z.ZodAny; -}, "strip", z.ZodTypeAny, { - value?: any; - uri: string; -}, { - value?: any; - uri: string; -}>; -export declare type GetRecordResponse = z.infer; -export declare const batchWriteParams: z.ZodObject<{ - writes: z.ZodArray; - collection: z.ZodString; - value: z.ZodAny; - }, "strip", z.ZodTypeAny, { - value?: any; - action: "create"; - collection: string; - }, { - value?: any; - action: "create"; - collection: string; - }>, z.ZodObject<{ - action: z.ZodLiteral<"update">; - collection: z.ZodString; - tid: z.ZodString; - value: z.ZodAny; - }, "strip", z.ZodTypeAny, { - value?: any; - action: "update"; - collection: string; - tid: string; - }, { - value?: any; - action: "update"; - collection: string; - tid: string; - }>, z.ZodObject<{ - action: z.ZodLiteral<"delete">; - collection: z.ZodString; - tid: z.ZodString; - }, "strip", z.ZodTypeAny, { - action: "delete"; - collection: string; - tid: string; - }, { - action: "delete"; - collection: string; - tid: string; - }>]>, "many">; -}, "strip", z.ZodTypeAny, { - writes: ({ - value?: any; - action: "create"; - collection: string; - } | { - value?: any; - action: "update"; - collection: string; - tid: string; - } | { - action: "delete"; - collection: string; - tid: string; - })[]; -}, { - writes: ({ - value?: any; - action: "create"; - collection: string; - } | { - value?: any; - action: "update"; - collection: string; - tid: string; - } | { - action: "delete"; - collection: string; - tid: string; - })[]; -}>; -export declare type BatchWriteParams = z.infer; -export declare const createRecordResponse: z.ZodObject<{ - uri: z.ZodString; -}, "strip", z.ZodTypeAny, { - uri: string; -}, { - uri: string; -}>; -export declare type CreateRecordResponse = z.infer; diff --git a/src/third-party/api/src/index.d.ts b/src/third-party/api/src/index.d.ts index 10b04b08..fa8c5edb 100644 --- a/src/third-party/api/src/index.d.ts +++ b/src/third-party/api/src/index.d.ts @@ -1,358 +1,4 @@ -import { Client as XrpcClient, ServiceClient as XrpcServiceClient } from '@atproto/xrpc'; -import * as ComAtprotoCreateAccount from './types/com/atproto/createAccount'; -import * as ComAtprotoCreateInviteCode from './types/com/atproto/createInviteCode'; -import * as ComAtprotoCreateSession from './types/com/atproto/createSession'; -import * as ComAtprotoDeleteAccount from './types/com/atproto/deleteAccount'; -import * as ComAtprotoDeleteSession from './types/com/atproto/deleteSession'; -import * as ComAtprotoGetAccount from './types/com/atproto/getAccount'; -import * as ComAtprotoGetAccountsConfig from './types/com/atproto/getAccountsConfig'; -import * as ComAtprotoGetSession from './types/com/atproto/getSession'; -import * as ComAtprotoRepoBatchWrite from './types/com/atproto/repoBatchWrite'; -import * as ComAtprotoRepoCreateRecord from './types/com/atproto/repoCreateRecord'; -import * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repoDeleteRecord'; -import * as ComAtprotoRepoDescribe from './types/com/atproto/repoDescribe'; -import * as ComAtprotoRepoGetRecord from './types/com/atproto/repoGetRecord'; -import * as ComAtprotoRepoListRecords from './types/com/atproto/repoListRecords'; -import * as ComAtprotoRepoPutRecord from './types/com/atproto/repoPutRecord'; -import * as ComAtprotoRequestAccountPasswordReset from './types/com/atproto/requestAccountPasswordReset'; -import * as ComAtprotoResetAccountPassword from './types/com/atproto/resetAccountPassword'; -import * as ComAtprotoResolveName from './types/com/atproto/resolveName'; -import * as ComAtprotoSyncGetRepo from './types/com/atproto/syncGetRepo'; -import * as ComAtprotoSyncGetRoot from './types/com/atproto/syncGetRoot'; -import * as ComAtprotoSyncUpdateRepo from './types/com/atproto/syncUpdateRepo'; -import * as AppBskyBadge from './types/app/bsky/badge'; -import * as AppBskyBadgeAccept from './types/app/bsky/badgeAccept'; -import * as AppBskyBadgeOffer from './types/app/bsky/badgeOffer'; -import * as AppBskyFollow from './types/app/bsky/follow'; -import * as AppBskyGetAuthorFeed from './types/app/bsky/getAuthorFeed'; -import * as AppBskyGetBadgeMembers from './types/app/bsky/getBadgeMembers'; -import * as AppBskyGetHomeFeed from './types/app/bsky/getHomeFeed'; -import * as AppBskyGetLikedBy from './types/app/bsky/getLikedBy'; -import * as AppBskyGetNotificationCount from './types/app/bsky/getNotificationCount'; -import * as AppBskyGetNotifications from './types/app/bsky/getNotifications'; -import * as AppBskyGetPostThread from './types/app/bsky/getPostThread'; -import * as AppBskyGetProfile from './types/app/bsky/getProfile'; -import * as AppBskyGetRepostedBy from './types/app/bsky/getRepostedBy'; -import * as AppBskyGetUserFollowers from './types/app/bsky/getUserFollowers'; -import * as AppBskyGetUserFollows from './types/app/bsky/getUserFollows'; -import * as AppBskyGetUsersSearch from './types/app/bsky/getUsersSearch'; -import * as AppBskyGetUsersTypeahead from './types/app/bsky/getUsersTypeahead'; -import * as AppBskyLike from './types/app/bsky/like'; -import * as AppBskyMediaEmbed from './types/app/bsky/mediaEmbed'; -import * as AppBskyPost from './types/app/bsky/post'; -import * as AppBskyPostNotificationsSeen from './types/app/bsky/postNotificationsSeen'; -import * as AppBskyProfile from './types/app/bsky/profile'; -import * as AppBskyRepost from './types/app/bsky/repost'; -import * as AppBskyUpdateProfile from './types/app/bsky/updateProfile'; -export * as ComAtprotoCreateAccount from './types/com/atproto/createAccount'; -export * as ComAtprotoCreateInviteCode from './types/com/atproto/createInviteCode'; -export * as ComAtprotoCreateSession from './types/com/atproto/createSession'; -export * as ComAtprotoDeleteAccount from './types/com/atproto/deleteAccount'; -export * as ComAtprotoDeleteSession from './types/com/atproto/deleteSession'; -export * as ComAtprotoGetAccount from './types/com/atproto/getAccount'; -export * as ComAtprotoGetAccountsConfig from './types/com/atproto/getAccountsConfig'; -export * as ComAtprotoGetSession from './types/com/atproto/getSession'; -export * as ComAtprotoRepoBatchWrite from './types/com/atproto/repoBatchWrite'; -export * as ComAtprotoRepoCreateRecord from './types/com/atproto/repoCreateRecord'; -export * as ComAtprotoRepoDeleteRecord from './types/com/atproto/repoDeleteRecord'; -export * as ComAtprotoRepoDescribe from './types/com/atproto/repoDescribe'; -export * as ComAtprotoRepoGetRecord from './types/com/atproto/repoGetRecord'; -export * as ComAtprotoRepoListRecords from './types/com/atproto/repoListRecords'; -export * as ComAtprotoRepoPutRecord from './types/com/atproto/repoPutRecord'; -export * as ComAtprotoRequestAccountPasswordReset from './types/com/atproto/requestAccountPasswordReset'; -export * as ComAtprotoResetAccountPassword from './types/com/atproto/resetAccountPassword'; -export * as ComAtprotoResolveName from './types/com/atproto/resolveName'; -export * as ComAtprotoSyncGetRepo from './types/com/atproto/syncGetRepo'; -export * as ComAtprotoSyncGetRoot from './types/com/atproto/syncGetRoot'; -export * as ComAtprotoSyncUpdateRepo from './types/com/atproto/syncUpdateRepo'; -export * as AppBskyBadge from './types/app/bsky/badge'; -export * as AppBskyBadgeAccept from './types/app/bsky/badgeAccept'; -export * as AppBskyBadgeOffer from './types/app/bsky/badgeOffer'; -export * as AppBskyFollow from './types/app/bsky/follow'; -export * as AppBskyGetAuthorFeed from './types/app/bsky/getAuthorFeed'; -export * as AppBskyGetBadgeMembers from './types/app/bsky/getBadgeMembers'; -export * as AppBskyGetHomeFeed from './types/app/bsky/getHomeFeed'; -export * as AppBskyGetLikedBy from './types/app/bsky/getLikedBy'; -export * as AppBskyGetNotificationCount from './types/app/bsky/getNotificationCount'; -export * as AppBskyGetNotifications from './types/app/bsky/getNotifications'; -export * as AppBskyGetPostThread from './types/app/bsky/getPostThread'; -export * as AppBskyGetProfile from './types/app/bsky/getProfile'; -export * as AppBskyGetRepostedBy from './types/app/bsky/getRepostedBy'; -export * as AppBskyGetUserFollowers from './types/app/bsky/getUserFollowers'; -export * as AppBskyGetUserFollows from './types/app/bsky/getUserFollows'; -export * as AppBskyGetUsersSearch from './types/app/bsky/getUsersSearch'; -export * as AppBskyGetUsersTypeahead from './types/app/bsky/getUsersTypeahead'; -export * as AppBskyLike from './types/app/bsky/like'; -export * as AppBskyMediaEmbed from './types/app/bsky/mediaEmbed'; -export * as AppBskyPost from './types/app/bsky/post'; -export * as AppBskyPostNotificationsSeen from './types/app/bsky/postNotificationsSeen'; -export * as AppBskyProfile from './types/app/bsky/profile'; -export * as AppBskyRepost from './types/app/bsky/repost'; -export * as AppBskyUpdateProfile from './types/app/bsky/updateProfile'; -export declare class Client { - xrpc: XrpcClient; - constructor(); - service(serviceUri: string | URL): ServiceClient; -} -declare const defaultInst: Client; -export default defaultInst; -export declare class ServiceClient { - _baseClient: Client; - xrpc: XrpcServiceClient; - com: ComNS; - app: AppNS; - constructor(baseClient: Client, xrpcService: XrpcServiceClient); - setHeader(key: string, value: string): void; -} -export declare class ComNS { - _service: ServiceClient; - atproto: AtprotoNS; - constructor(service: ServiceClient); -} -export declare class AtprotoNS { - _service: ServiceClient; - constructor(service: ServiceClient); - createAccount(params: ComAtprotoCreateAccount.QueryParams, data?: ComAtprotoCreateAccount.InputSchema, opts?: ComAtprotoCreateAccount.CallOptions): Promise; - createInviteCode(params: ComAtprotoCreateInviteCode.QueryParams, data?: ComAtprotoCreateInviteCode.InputSchema, opts?: ComAtprotoCreateInviteCode.CallOptions): Promise; - createSession(params: ComAtprotoCreateSession.QueryParams, data?: ComAtprotoCreateSession.InputSchema, opts?: ComAtprotoCreateSession.CallOptions): Promise; - deleteAccount(params: ComAtprotoDeleteAccount.QueryParams, data?: ComAtprotoDeleteAccount.InputSchema, opts?: ComAtprotoDeleteAccount.CallOptions): Promise; - deleteSession(params: ComAtprotoDeleteSession.QueryParams, data?: ComAtprotoDeleteSession.InputSchema, opts?: ComAtprotoDeleteSession.CallOptions): Promise; - getAccount(params: ComAtprotoGetAccount.QueryParams, data?: ComAtprotoGetAccount.InputSchema, opts?: ComAtprotoGetAccount.CallOptions): Promise; - getAccountsConfig(params: ComAtprotoGetAccountsConfig.QueryParams, data?: ComAtprotoGetAccountsConfig.InputSchema, opts?: ComAtprotoGetAccountsConfig.CallOptions): Promise; - getSession(params: ComAtprotoGetSession.QueryParams, data?: ComAtprotoGetSession.InputSchema, opts?: ComAtprotoGetSession.CallOptions): Promise; - repoBatchWrite(params: ComAtprotoRepoBatchWrite.QueryParams, data?: ComAtprotoRepoBatchWrite.InputSchema, opts?: ComAtprotoRepoBatchWrite.CallOptions): Promise; - repoCreateRecord(params: ComAtprotoRepoCreateRecord.QueryParams, data?: ComAtprotoRepoCreateRecord.InputSchema, opts?: ComAtprotoRepoCreateRecord.CallOptions): Promise; - repoDeleteRecord(params: ComAtprotoRepoDeleteRecord.QueryParams, data?: ComAtprotoRepoDeleteRecord.InputSchema, opts?: ComAtprotoRepoDeleteRecord.CallOptions): Promise; - repoDescribe(params: ComAtprotoRepoDescribe.QueryParams, data?: ComAtprotoRepoDescribe.InputSchema, opts?: ComAtprotoRepoDescribe.CallOptions): Promise; - repoGetRecord(params: ComAtprotoRepoGetRecord.QueryParams, data?: ComAtprotoRepoGetRecord.InputSchema, opts?: ComAtprotoRepoGetRecord.CallOptions): Promise; - repoListRecords(params: ComAtprotoRepoListRecords.QueryParams, data?: ComAtprotoRepoListRecords.InputSchema, opts?: ComAtprotoRepoListRecords.CallOptions): Promise; - repoPutRecord(params: ComAtprotoRepoPutRecord.QueryParams, data?: ComAtprotoRepoPutRecord.InputSchema, opts?: ComAtprotoRepoPutRecord.CallOptions): Promise; - requestAccountPasswordReset(params: ComAtprotoRequestAccountPasswordReset.QueryParams, data?: ComAtprotoRequestAccountPasswordReset.InputSchema, opts?: ComAtprotoRequestAccountPasswordReset.CallOptions): Promise; - resetAccountPassword(params: ComAtprotoResetAccountPassword.QueryParams, data?: ComAtprotoResetAccountPassword.InputSchema, opts?: ComAtprotoResetAccountPassword.CallOptions): Promise; - resolveName(params: ComAtprotoResolveName.QueryParams, data?: ComAtprotoResolveName.InputSchema, opts?: ComAtprotoResolveName.CallOptions): Promise; - syncGetRepo(params: ComAtprotoSyncGetRepo.QueryParams, data?: ComAtprotoSyncGetRepo.InputSchema, opts?: ComAtprotoSyncGetRepo.CallOptions): Promise; - syncGetRoot(params: ComAtprotoSyncGetRoot.QueryParams, data?: ComAtprotoSyncGetRoot.InputSchema, opts?: ComAtprotoSyncGetRoot.CallOptions): Promise; - syncUpdateRepo(params: ComAtprotoSyncUpdateRepo.QueryParams, data?: ComAtprotoSyncUpdateRepo.InputSchema, opts?: ComAtprotoSyncUpdateRepo.CallOptions): Promise; -} -export declare class AppNS { - _service: ServiceClient; - bsky: BskyNS; - constructor(service: ServiceClient); -} -export declare class BskyNS { - _service: ServiceClient; - badge: BadgeRecord; - badgeAccept: BadgeAcceptRecord; - badgeOffer: BadgeOfferRecord; - follow: FollowRecord; - like: LikeRecord; - mediaEmbed: MediaEmbedRecord; - post: PostRecord; - profile: ProfileRecord; - repost: RepostRecord; - constructor(service: ServiceClient); - getAuthorFeed(params: AppBskyGetAuthorFeed.QueryParams, data?: AppBskyGetAuthorFeed.InputSchema, opts?: AppBskyGetAuthorFeed.CallOptions): Promise; - getBadgeMembers(params: AppBskyGetBadgeMembers.QueryParams, data?: AppBskyGetBadgeMembers.InputSchema, opts?: AppBskyGetBadgeMembers.CallOptions): Promise; - getHomeFeed(params: AppBskyGetHomeFeed.QueryParams, data?: AppBskyGetHomeFeed.InputSchema, opts?: AppBskyGetHomeFeed.CallOptions): Promise; - getLikedBy(params: AppBskyGetLikedBy.QueryParams, data?: AppBskyGetLikedBy.InputSchema, opts?: AppBskyGetLikedBy.CallOptions): Promise; - getNotificationCount(params: AppBskyGetNotificationCount.QueryParams, data?: AppBskyGetNotificationCount.InputSchema, opts?: AppBskyGetNotificationCount.CallOptions): Promise; - getNotifications(params: AppBskyGetNotifications.QueryParams, data?: AppBskyGetNotifications.InputSchema, opts?: AppBskyGetNotifications.CallOptions): Promise; - getPostThread(params: AppBskyGetPostThread.QueryParams, data?: AppBskyGetPostThread.InputSchema, opts?: AppBskyGetPostThread.CallOptions): Promise; - getProfile(params: AppBskyGetProfile.QueryParams, data?: AppBskyGetProfile.InputSchema, opts?: AppBskyGetProfile.CallOptions): Promise; - getRepostedBy(params: AppBskyGetRepostedBy.QueryParams, data?: AppBskyGetRepostedBy.InputSchema, opts?: AppBskyGetRepostedBy.CallOptions): Promise; - getUserFollowers(params: AppBskyGetUserFollowers.QueryParams, data?: AppBskyGetUserFollowers.InputSchema, opts?: AppBskyGetUserFollowers.CallOptions): Promise; - getUserFollows(params: AppBskyGetUserFollows.QueryParams, data?: AppBskyGetUserFollows.InputSchema, opts?: AppBskyGetUserFollows.CallOptions): Promise; - getUsersSearch(params: AppBskyGetUsersSearch.QueryParams, data?: AppBskyGetUsersSearch.InputSchema, opts?: AppBskyGetUsersSearch.CallOptions): Promise; - getUsersTypeahead(params: AppBskyGetUsersTypeahead.QueryParams, data?: AppBskyGetUsersTypeahead.InputSchema, opts?: AppBskyGetUsersTypeahead.CallOptions): Promise; - postNotificationsSeen(params: AppBskyPostNotificationsSeen.QueryParams, data?: AppBskyPostNotificationsSeen.InputSchema, opts?: AppBskyPostNotificationsSeen.CallOptions): Promise; - updateProfile(params: AppBskyUpdateProfile.QueryParams, data?: AppBskyUpdateProfile.InputSchema, opts?: AppBskyUpdateProfile.CallOptions): Promise; -} -export declare class BadgeRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyBadge.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyBadge.Record; - }>; - create(params: Omit, record: AppBskyBadge.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} -export declare class BadgeAcceptRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyBadgeAccept.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyBadgeAccept.Record; - }>; - create(params: Omit, record: AppBskyBadgeAccept.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} -export declare class BadgeOfferRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyBadgeOffer.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyBadgeOffer.Record; - }>; - create(params: Omit, record: AppBskyBadgeOffer.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} -export declare class FollowRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyFollow.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyFollow.Record; - }>; - create(params: Omit, record: AppBskyFollow.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} -export declare class LikeRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyLike.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyLike.Record; - }>; - create(params: Omit, record: AppBskyLike.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} -export declare class MediaEmbedRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyMediaEmbed.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyMediaEmbed.Record; - }>; - create(params: Omit, record: AppBskyMediaEmbed.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} -export declare class PostRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyPost.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyPost.Record; - }>; - create(params: Omit, record: AppBskyPost.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} -export declare class ProfileRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyProfile.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyProfile.Record; - }>; - create(params: Omit, record: AppBskyProfile.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} -export declare class RepostRecord { - _service: ServiceClient; - constructor(service: ServiceClient); - list(params: Omit): Promise<{ - cursor?: string; - records: { - uri: string; - value: AppBskyRepost.Record; - }[]; - }>; - get(params: Omit): Promise<{ - uri: string; - cid: string; - value: AppBskyRepost.Record; - }>; - create(params: Omit, record: AppBskyRepost.Record, headers?: Record): Promise<{ - uri: string; - cid: string; - }>; - delete(params: Omit, headers?: Record): Promise; -} +export * from './client'; +export { default } from './client'; +export * from './session'; +export { default as sessionClient } from './session'; diff --git a/src/third-party/api/src/session.d.ts b/src/third-party/api/src/session.d.ts new file mode 100644 index 00000000..30351057 --- /dev/null +++ b/src/third-party/api/src/session.d.ts @@ -0,0 +1,42 @@ +import { CallOptions, Client as XrpcClient, ServiceClient as XrpcServiceClient, QueryParams, XRPCResponse } from '@atproto/xrpc'; +import TypedEmitter from 'typed-emitter'; +import { Client, ServiceClient } from './client'; +export declare class SessionClient extends Client { + service(serviceUri: string | URL): SessionServiceClient; +} +declare const defaultInst: SessionClient; +export default defaultInst; +export declare class SessionServiceClient extends ServiceClient { + xrpc: SessionXrpcServiceClient; + sessionManager: SessionManager; + constructor(baseClient: Client, xrpcService: SessionXrpcServiceClient); +} +export declare class SessionXrpcServiceClient extends XrpcServiceClient { + sessionManager: SessionManager; + refreshing?: Promise; + constructor(baseClient: XrpcClient, serviceUri: string | URL); + call(methodNsid: string, params?: QueryParams, data?: unknown, opts?: CallOptions): Promise; + refresh(opts?: CallOptions): Promise; + private _refresh; +} +declare const SessionManager_base: new () => TypedEmitter; +export declare class SessionManager extends SessionManager_base { + session?: Session; + get(): Session | undefined; + set(session: Session): void; + unset(): void; + active(): boolean; + accessHeaders(): { + authorization: string; + } | undefined; + refreshHeaders(): { + authorization: string; + } | undefined; +} +export declare type Session = { + refreshJwt: string; + accessJwt: string; +}; +declare type SessionEvents = { + session: (session?: Session) => void; +}; diff --git a/src/third-party/api/src/types.d.ts b/src/third-party/api/src/types.d.ts deleted file mode 100644 index a6da8107..00000000 --- a/src/third-party/api/src/types.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { AdxRecordValidator, AdxRecordValidatorDescription } from '@adxp/schemas'; -import { GetRecordResponse } from './http-types.js'; -export declare type SchemaOpt = string | string[] | AdxRecordValidator | AdxRecordValidatorDescription | '*'; -export interface AdxClientOpts { - pds?: string; - locale?: string; - schemas?: any[]; -} -export interface RegisterRepoParams { - did: string; - username: string; -} -export interface GetRecordResponseValidated extends GetRecordResponse { - valid?: boolean; - fullySupported?: boolean; - compatible?: boolean; - error?: string | undefined; - fallbacks?: string[] | undefined; -} -export interface ListRecordsResponseValidated { - records: GetRecordResponseValidated[]; -} -export interface BatchWrite { - action: 'create' | 'put' | 'del'; - collection: string; - key?: string; - value?: any; -} diff --git a/src/third-party/api/src/types/app/bsky/badge.d.ts b/src/third-party/api/src/types/app/bsky/badge.d.ts deleted file mode 100644 index 44e7aa67..00000000 --- a/src/third-party/api/src/types/app/bsky/badge.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -export interface Record { - assertion: InviteAssertion | EmployeeAssertion | TagAssertion | UnknownAssertion; - createdAt: string; - [k: string]: unknown; -} -export interface InviteAssertion { - type: 'invite'; - [k: string]: unknown; -} -export interface EmployeeAssertion { - type: 'employee'; - [k: string]: unknown; -} -export interface TagAssertion { - type: 'tag'; - tag: string; - [k: string]: unknown; -} -export interface UnknownAssertion { - type: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/app/bsky/badgeAccept.d.ts b/src/third-party/api/src/types/app/bsky/badgeAccept.d.ts deleted file mode 100644 index 3c9aa75a..00000000 --- a/src/third-party/api/src/types/app/bsky/badgeAccept.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export interface Record { - badge: Subject; - offer: Subject; - createdAt: string; - [k: string]: unknown; -} -export interface Subject { - uri: string; - cid: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/app/bsky/badgeOffer.d.ts b/src/third-party/api/src/types/app/bsky/badgeOffer.d.ts deleted file mode 100644 index 7e061f20..00000000 --- a/src/third-party/api/src/types/app/bsky/badgeOffer.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export interface Record { - badge: Badge; - subject: string; - createdAt: string; - [k: string]: unknown; -} -export interface Badge { - uri: string; - cid: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/app/bsky/follow.d.ts b/src/third-party/api/src/types/app/bsky/follow.d.ts deleted file mode 100644 index f3b23b0d..00000000 --- a/src/third-party/api/src/types/app/bsky/follow.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export interface Record { - subject: string; - createdAt: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/app/bsky/getBadgeMembers.d.ts b/src/third-party/api/src/types/app/bsky/getBadgeMembers.d.ts deleted file mode 100644 index 658de742..00000000 --- a/src/third-party/api/src/types/app/bsky/getBadgeMembers.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { Headers } from '@atproto/xrpc'; -export interface QueryParams { - uri: string; - cid?: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - uri: string; - cid?: string; - cursor?: string; - members: { - did: string; - name: string; - displayName?: string; - offeredAt: string; - acceptedAt: string; - }[]; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/app/bsky/getProfile.d.ts b/src/third-party/api/src/types/app/bsky/getProfile.d.ts deleted file mode 100644 index b21ef7f5..00000000 --- a/src/third-party/api/src/types/app/bsky/getProfile.d.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { Headers } from '@atproto/xrpc'; -export interface QueryParams { - user: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - did: string; - name: string; - displayName?: string; - description?: string; - followersCount: number; - followsCount: number; - postsCount: number; - pinnedBadges: Badge[]; - myState?: { - follow?: string; - }; -} -export interface Badge { - uri: string; - cid: string; - error?: string; - issuer?: { - did: string; - name: string; - displayName?: string; - }; - assertion?: { - type: string; - tag?: string; - }; - createdAt?: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/app/bsky/profile.d.ts b/src/third-party/api/src/types/app/bsky/profile.d.ts deleted file mode 100644 index 591a9f16..00000000 --- a/src/third-party/api/src/types/app/bsky/profile.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export interface Record { - displayName: string; - description?: string; - pinnedBadges?: BadgeRef[]; - [k: string]: unknown; -} -export interface BadgeRef { - uri: string; - cid: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/com/atproto/getAccount.d.ts b/src/third-party/api/src/types/com/atproto/getAccount.d.ts deleted file mode 100644 index de1afe52..00000000 --- a/src/third-party/api/src/types/com/atproto/getAccount.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Headers } from '@atproto/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo.adx.createAccount.d.ts b/src/third-party/api/src/types/todo.adx.createAccount.d.ts deleted file mode 100644 index 209e09e1..00000000 --- a/src/third-party/api/src/types/todo.adx.createAccount.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; - data: InputSchema; -} -export interface InputSchema { - username: string; - did: string; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; -} diff --git a/src/third-party/api/src/types/todo.adx.createSession.d.ts b/src/third-party/api/src/types/todo.adx.createSession.d.ts deleted file mode 100644 index 180c20f7..00000000 --- a/src/third-party/api/src/types/todo.adx.createSession.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; - data: InputSchema; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.deleteAccount.d.ts b/src/third-party/api/src/types/todo.adx.deleteAccount.d.ts deleted file mode 100644 index 180c20f7..00000000 --- a/src/third-party/api/src/types/todo.adx.deleteAccount.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; - data: InputSchema; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.deleteSession.d.ts b/src/third-party/api/src/types/todo.adx.deleteSession.d.ts deleted file mode 100644 index 180c20f7..00000000 --- a/src/third-party/api/src/types/todo.adx.deleteSession.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; - data: InputSchema; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.getAccount.d.ts b/src/third-party/api/src/types/todo.adx.getAccount.d.ts deleted file mode 100644 index 180c20f7..00000000 --- a/src/third-party/api/src/types/todo.adx.getAccount.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; - data: InputSchema; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.getSession.d.ts b/src/third-party/api/src/types/todo.adx.getSession.d.ts deleted file mode 100644 index 180c20f7..00000000 --- a/src/third-party/api/src/types/todo.adx.getSession.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; - data: InputSchema; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.repoBatchWrite.d.ts b/src/third-party/api/src/types/todo.adx.repoBatchWrite.d.ts deleted file mode 100644 index 837a7ccf..00000000 --- a/src/third-party/api/src/types/todo.adx.repoBatchWrite.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - validate?: boolean; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; - data: InputSchema; -} -export interface InputSchema { - writes: ({ - action: 'create'; - collection: string; - value: unknown; - } | { - action: 'update'; - collection: string; - tid: string; - value: unknown; - } | { - action: 'delete'; - collection: string; - tid: string; - })[]; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.repoCreateRecord.d.ts b/src/third-party/api/src/types/todo.adx.repoCreateRecord.d.ts deleted file mode 100644 index 177de15e..00000000 --- a/src/third-party/api/src/types/todo.adx.repoCreateRecord.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - type: string; - validate?: boolean; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; - data: InputSchema; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - uri: string; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.repoDeleteRecord.d.ts b/src/third-party/api/src/types/todo.adx.repoDeleteRecord.d.ts deleted file mode 100644 index df69914c..00000000 --- a/src/third-party/api/src/types/todo.adx.repoDeleteRecord.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - type: string; - tid: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; -} diff --git a/src/third-party/api/src/types/todo.adx.repoDescribe.d.ts b/src/third-party/api/src/types/todo.adx.repoDescribe.d.ts deleted file mode 100644 index d4e9965e..00000000 --- a/src/third-party/api/src/types/todo.adx.repoDescribe.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - nameOrDid: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - name: string; - did: string; - didDoc: {}; - collections: string[]; - nameIsCorrect: boolean; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.repoGetRecord.d.ts b/src/third-party/api/src/types/todo.adx.repoGetRecord.d.ts deleted file mode 100644 index 9535b8e1..00000000 --- a/src/third-party/api/src/types/todo.adx.repoGetRecord.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - nameOrDid: string; - type: string; - tid: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - uri: string; - value: {}; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.repoListRecords.d.ts b/src/third-party/api/src/types/todo.adx.repoListRecords.d.ts deleted file mode 100644 index fe77301a..00000000 --- a/src/third-party/api/src/types/todo.adx.repoListRecords.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - nameOrDid: string; - type: string; - limit?: number; - before?: string; - after?: string; - reverse?: boolean; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - records: { - uri: string; - value: {}; - }[]; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.repoPutRecord.d.ts b/src/third-party/api/src/types/todo.adx.repoPutRecord.d.ts deleted file mode 100644 index 690e07f6..00000000 --- a/src/third-party/api/src/types/todo.adx.repoPutRecord.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - type: string; - tid: string; - validate?: boolean; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; - data: InputSchema; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - uri: string; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.resolveName.d.ts b/src/third-party/api/src/types/todo.adx.resolveName.d.ts deleted file mode 100644 index 59e31a9e..00000000 --- a/src/third-party/api/src/types/todo.adx.resolveName.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - name: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - did: string; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.syncGetRepo.d.ts b/src/third-party/api/src/types/todo.adx.syncGetRepo.d.ts deleted file mode 100644 index 0967bfda..00000000 --- a/src/third-party/api/src/types/todo.adx.syncGetRepo.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - from?: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: Uint8Array; -} diff --git a/src/third-party/api/src/types/todo.adx.syncGetRoot.d.ts b/src/third-party/api/src/types/todo.adx.syncGetRoot.d.ts deleted file mode 100644 index 1b3b20aa..00000000 --- a/src/third-party/api/src/types/todo.adx.syncGetRoot.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - root: string; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo.adx.syncUpdateRepo.d.ts b/src/third-party/api/src/types/todo.adx.syncUpdateRepo.d.ts deleted file mode 100644 index a6a7bb00..00000000 --- a/src/third-party/api/src/types/todo.adx.syncUpdateRepo.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/cbor'; - data: Uint8Array; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; -} diff --git a/src/third-party/api/src/types/todo/adx/createAccount.d.ts b/src/third-party/api/src/types/todo/adx/createAccount.d.ts deleted file mode 100644 index 8c8bfe7d..00000000 --- a/src/third-party/api/src/types/todo/adx/createAccount.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { Headers, XRPCError } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - email: string; - username: string; - inviteCode?: string; - password: string; -} -export interface OutputSchema { - jwt: string; - username: string; - did: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare class InvalidUsernameError extends XRPCError { - constructor(src: XRPCError); -} -export declare class InvalidPasswordError extends XRPCError { - constructor(src: XRPCError); -} -export declare class InvalidInviteCodeError extends XRPCError { - constructor(src: XRPCError); -} -export declare class UsernameNotAvailableError extends XRPCError { - constructor(src: XRPCError); -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/createInviteCode.d.ts b/src/third-party/api/src/types/todo/adx/createInviteCode.d.ts deleted file mode 100644 index fe0b60a0..00000000 --- a/src/third-party/api/src/types/todo/adx/createInviteCode.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - useCount: number; -} -export interface OutputSchema { - code: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/createSession.d.ts b/src/third-party/api/src/types/todo/adx/createSession.d.ts deleted file mode 100644 index f58b4205..00000000 --- a/src/third-party/api/src/types/todo/adx/createSession.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - username: string; - password: string; -} -export interface OutputSchema { - jwt: string; - name: string; - did: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/deleteAccount.d.ts b/src/third-party/api/src/types/todo/adx/deleteAccount.d.ts deleted file mode 100644 index 6a32520c..00000000 --- a/src/third-party/api/src/types/todo/adx/deleteAccount.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/deleteSession.d.ts b/src/third-party/api/src/types/todo/adx/deleteSession.d.ts deleted file mode 100644 index 6a32520c..00000000 --- a/src/third-party/api/src/types/todo/adx/deleteSession.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/getAccount.d.ts b/src/third-party/api/src/types/todo/adx/getAccount.d.ts deleted file mode 100644 index 6a32520c..00000000 --- a/src/third-party/api/src/types/todo/adx/getAccount.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: ''; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/getAccountsConfig.d.ts b/src/third-party/api/src/types/todo/adx/getAccountsConfig.d.ts deleted file mode 100644 index 888b7072..00000000 --- a/src/third-party/api/src/types/todo/adx/getAccountsConfig.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - inviteCodeRequired?: boolean; - availableUserDomains: string[]; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/getSession.d.ts b/src/third-party/api/src/types/todo/adx/getSession.d.ts deleted file mode 100644 index 54924f19..00000000 --- a/src/third-party/api/src/types/todo/adx/getSession.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - name: string; - did: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/repoBatchWrite.d.ts b/src/third-party/api/src/types/todo/adx/repoBatchWrite.d.ts deleted file mode 100644 index bb548b09..00000000 --- a/src/third-party/api/src/types/todo/adx/repoBatchWrite.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - validate?: boolean; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - writes: ({ - action: 'create'; - collection: string; - value: unknown; - } | { - action: 'update'; - collection: string; - tid: string; - value: unknown; - } | { - action: 'delete'; - collection: string; - tid: string; - })[]; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/repoCreateRecord.d.ts b/src/third-party/api/src/types/todo/adx/repoCreateRecord.d.ts deleted file mode 100644 index 7505bc48..00000000 --- a/src/third-party/api/src/types/todo/adx/repoCreateRecord.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - type: string; - validate?: boolean; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - uri: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/repoDeleteRecord.d.ts b/src/third-party/api/src/types/todo/adx/repoDeleteRecord.d.ts deleted file mode 100644 index 98221442..00000000 --- a/src/third-party/api/src/types/todo/adx/repoDeleteRecord.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - type: string; - tid: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface Response { - success: boolean; - headers: Headers; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/repoDescribe.d.ts b/src/third-party/api/src/types/todo/adx/repoDescribe.d.ts deleted file mode 100644 index 987eead5..00000000 --- a/src/third-party/api/src/types/todo/adx/repoDescribe.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - nameOrDid: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - name: string; - did: string; - didDoc: {}; - collections: string[]; - nameIsCorrect: boolean; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/repoGetRecord.d.ts b/src/third-party/api/src/types/todo/adx/repoGetRecord.d.ts deleted file mode 100644 index 78f042ba..00000000 --- a/src/third-party/api/src/types/todo/adx/repoGetRecord.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - nameOrDid: string; - type: string; - tid: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - uri: string; - value: {}; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/repoListRecords.d.ts b/src/third-party/api/src/types/todo/adx/repoListRecords.d.ts deleted file mode 100644 index ae65897b..00000000 --- a/src/third-party/api/src/types/todo/adx/repoListRecords.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - nameOrDid: string; - type: string; - limit?: number; - before?: string; - after?: string; - reverse?: boolean; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - records: { - uri: string; - value: {}; - }[]; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/repoPutRecord.d.ts b/src/third-party/api/src/types/todo/adx/repoPutRecord.d.ts deleted file mode 100644 index eab6c845..00000000 --- a/src/third-party/api/src/types/todo/adx/repoPutRecord.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - type: string; - tid: string; - validate?: boolean; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - [k: string]: unknown; -} -export interface OutputSchema { - uri: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/requestAccountPasswordReset.d.ts b/src/third-party/api/src/types/todo/adx/requestAccountPasswordReset.d.ts deleted file mode 100644 index 27ab7462..00000000 --- a/src/third-party/api/src/types/todo/adx/requestAccountPasswordReset.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - email: string; -} -export interface OutputSchema { -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/resetAccountPassword.d.ts b/src/third-party/api/src/types/todo/adx/resetAccountPassword.d.ts deleted file mode 100644 index 6c542af3..00000000 --- a/src/third-party/api/src/types/todo/adx/resetAccountPassword.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Headers, XRPCError } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - token: string; - password: string; -} -export interface OutputSchema { -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare class ExpiredTokenError extends XRPCError { - constructor(src: XRPCError); -} -export declare class InvalidTokenError extends XRPCError { - constructor(src: XRPCError); -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/resolveName.d.ts b/src/third-party/api/src/types/todo/adx/resolveName.d.ts deleted file mode 100644 index bd52dbd9..00000000 --- a/src/third-party/api/src/types/todo/adx/resolveName.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - name?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - did: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/syncGetRepo.d.ts b/src/third-party/api/src/types/todo/adx/syncGetRepo.d.ts deleted file mode 100644 index dc008853..00000000 --- a/src/third-party/api/src/types/todo/adx/syncGetRepo.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; - from?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface Response { - success: boolean; - headers: Headers; - data: Uint8Array; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/syncGetRoot.d.ts b/src/third-party/api/src/types/todo/adx/syncGetRoot.d.ts deleted file mode 100644 index 74363f8d..00000000 --- a/src/third-party/api/src/types/todo/adx/syncGetRoot.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - root: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/adx/syncUpdateRepo.d.ts b/src/third-party/api/src/types/todo/adx/syncUpdateRepo.d.ts deleted file mode 100644 index 3acb96f9..00000000 --- a/src/third-party/api/src/types/todo/adx/syncUpdateRepo.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - did: string; -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/cbor'; -} -export declare type InputSchema = string | Uint8Array; -export interface Response { - success: boolean; - headers: Headers; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/badge.d.ts b/src/third-party/api/src/types/todo/social/badge.d.ts deleted file mode 100644 index 7067d580..00000000 --- a/src/third-party/api/src/types/todo/social/badge.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -export interface Record { - assertion: InviteAssertion | EmployeeAssertion | TagAssertion | UnknownAssertion; - subject: string; - createdAt: string; - [k: string]: unknown; -} -export interface InviteAssertion { - type: 'invite'; - [k: string]: unknown; -} -export interface EmployeeAssertion { - type: 'employee'; - [k: string]: unknown; -} -export interface TagAssertion { - type: 'tag'; - tag: string; - [k: string]: unknown; -} -export interface UnknownAssertion { - type: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/todo/social/follow.d.ts b/src/third-party/api/src/types/todo/social/follow.d.ts deleted file mode 100644 index f3b23b0d..00000000 --- a/src/third-party/api/src/types/todo/social/follow.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export interface Record { - subject: string; - createdAt: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/todo/social/getAuthorFeed.d.ts b/src/third-party/api/src/types/todo/social/getAuthorFeed.d.ts deleted file mode 100644 index b5a37257..00000000 --- a/src/third-party/api/src/types/todo/social/getAuthorFeed.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - author: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - feed: FeedItem[]; -} -export interface FeedItem { - cursor: string; - uri: string; - author: User; - repostedBy?: User; - record: {}; - embed?: RecordEmbed | ExternalEmbed | UnknownEmbed; - replyCount: number; - repostCount: number; - likeCount: number; - indexedAt: string; - myState?: { - repost?: string; - like?: string; - }; -} -export interface User { - did: string; - name: string; - displayName?: string; -} -export interface RecordEmbed { - type: 'record'; - author: User; - record: {}; -} -export interface ExternalEmbed { - type: 'external'; - uri: string; - title: string; - description: string; - imageUri: string; -} -export interface UnknownEmbed { - type: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getFeed.d.ts b/src/third-party/api/src/types/todo/social/getFeed.d.ts deleted file mode 100644 index ffc51f1e..00000000 --- a/src/third-party/api/src/types/todo/social/getFeed.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - author?: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - feed: FeedItem[]; -} -export interface FeedItem { - cursor?: string; - uri: string; - author: User; - repostedBy?: User; - record: {}; - embed?: RecordEmbed | ExternalEmbed | UnknownEmbed; - replyCount: number; - repostCount: number; - likeCount: number; - indexedAt: string; - myState?: { - repost?: string; - like?: string; - }; -} -export interface User { - did: string; - name: string; - displayName?: string; -} -export interface RecordEmbed { - type: 'record'; - author: User; - record: {}; -} -export interface ExternalEmbed { - type: 'external'; - uri: string; - title: string; - description: string; - imageUri: string; -} -export interface UnknownEmbed { - type: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getFeedView.d.ts b/src/third-party/api/src/types/todo/social/getFeedView.d.ts deleted file mode 100644 index 18a5de3d..00000000 --- a/src/third-party/api/src/types/todo/social/getFeedView.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - author?: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: Uint8Array; -} diff --git a/src/third-party/api/src/types/todo/social/getHomeFeed.d.ts b/src/third-party/api/src/types/todo/social/getHomeFeed.d.ts deleted file mode 100644 index 7c43d32a..00000000 --- a/src/third-party/api/src/types/todo/social/getHomeFeed.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - algorithm?: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - feed: FeedItem[]; -} -export interface FeedItem { - cursor: string; - uri: string; - author: User; - repostedBy?: User; - record: {}; - embed?: RecordEmbed | ExternalEmbed | UnknownEmbed; - replyCount: number; - repostCount: number; - likeCount: number; - indexedAt: string; - myState?: { - repost?: string; - like?: string; - }; -} -export interface User { - did: string; - name: string; - displayName?: string; -} -export interface RecordEmbed { - type: 'record'; - author: User; - record: {}; -} -export interface ExternalEmbed { - type: 'external'; - uri: string; - title: string; - description: string; - imageUri: string; -} -export interface UnknownEmbed { - type: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getLikedBy.d.ts b/src/third-party/api/src/types/todo/social/getLikedBy.d.ts deleted file mode 100644 index c199cc82..00000000 --- a/src/third-party/api/src/types/todo/social/getLikedBy.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - uri: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - uri: string; - likedBy: { - did: string; - name: string; - displayName?: string; - createdAt?: string; - indexedAt: string; - }[]; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getLikedByView.d.ts b/src/third-party/api/src/types/todo/social/getLikedByView.d.ts deleted file mode 100644 index 108e7aeb..00000000 --- a/src/third-party/api/src/types/todo/social/getLikedByView.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - uri: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - uri: string; - likedBy: { - did: string; - name: string; - displayName?: string; - createdAt?: string; - indexedAt: string; - }[]; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo/social/getNotifications.d.ts b/src/third-party/api/src/types/todo/social/getNotifications.d.ts deleted file mode 100644 index bd92c586..00000000 --- a/src/third-party/api/src/types/todo/social/getNotifications.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - notifications: Notification[]; -} -export interface Notification { - uri: string; - author: { - did: string; - name: string; - displayName?: string; - }; - reason: string; - reasonSubject?: string; - record: {}; - isRead: boolean; - indexedAt: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getNotificationsView.d.ts b/src/third-party/api/src/types/todo/social/getNotificationsView.d.ts deleted file mode 100644 index ae722067..00000000 --- a/src/third-party/api/src/types/todo/social/getNotificationsView.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - notifications: Notification[]; -} -export interface Notification { - uri: string; - author: { - did: string; - name: string; - displayName: string; - }; - record: {}; - isRead: boolean; - indexedAt: string; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo/social/getPostThread.d.ts b/src/third-party/api/src/types/todo/social/getPostThread.d.ts deleted file mode 100644 index 265b671d..00000000 --- a/src/third-party/api/src/types/todo/social/getPostThread.d.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - uri: string; - depth?: number; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - thread: Post; -} -export interface Post { - uri: string; - author: User; - record: {}; - embed?: RecordEmbed | ExternalEmbed | UnknownEmbed; - parent?: Post; - replyCount: number; - replies?: Post[]; - likeCount: number; - repostCount: number; - indexedAt: string; - myState?: { - repost?: string; - like?: string; - }; -} -export interface User { - did: string; - name: string; - displayName?: string; -} -export interface RecordEmbed { - type: 'record'; - author: User; - record: {}; -} -export interface ExternalEmbed { - type: 'external'; - uri: string; - title: string; - description: string; - imageUri: string; -} -export interface UnknownEmbed { - type: string; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getPostThreadView.d.ts b/src/third-party/api/src/types/todo/social/getPostThreadView.d.ts deleted file mode 100644 index eaf44823..00000000 --- a/src/third-party/api/src/types/todo/social/getPostThreadView.d.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - uri: string; - depth?: number; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - thread: Post; -} -export interface Post { - uri: string; - author: User; - record: {}; - embed?: RecordEmbed | ExternalEmbed | UnknownEmbed; - parent?: Post; - replyCount: number; - replies?: Post[]; - likeCount: number; - repostCount: number; - indexedAt: string; - myState?: { - repost?: string; - like?: string; - }; -} -export interface User { - did: string; - name: string; - displayName?: string; -} -export interface RecordEmbed { - type: 'record'; - author: User; - record: {}; -} -export interface ExternalEmbed { - type: 'external'; - uri: string; - title: string; - description: string; - imageUri: string; -} -export interface UnknownEmbed { - type: string; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo/social/getProfileView.d.ts b/src/third-party/api/src/types/todo/social/getProfileView.d.ts deleted file mode 100644 index a49ba4df..00000000 --- a/src/third-party/api/src/types/todo/social/getProfileView.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - user: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - did: string; - name: string; - displayName?: string; - description?: string; - followersCount: number; - followsCount: number; - postsCount: number; - badges: Badge[]; - myState?: { - follow?: string; - }; -} -export interface Badge { - uri: string; - error?: string; - issuer?: { - did: string; - name: string; - displayName: string; - }; - assertion?: { - type: string; - }; - createdAt?: string; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo/social/getRepostedBy.d.ts b/src/third-party/api/src/types/todo/social/getRepostedBy.d.ts deleted file mode 100644 index 9a6a4607..00000000 --- a/src/third-party/api/src/types/todo/social/getRepostedBy.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - uri: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - uri: string; - repostedBy: { - did: string; - name: string; - displayName?: string; - createdAt?: string; - indexedAt: string; - }[]; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getRepostedByView.d.ts b/src/third-party/api/src/types/todo/social/getRepostedByView.d.ts deleted file mode 100644 index ef73a0c9..00000000 --- a/src/third-party/api/src/types/todo/social/getRepostedByView.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - uri: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - uri: string; - repostedBy: { - did: string; - name: string; - displayName?: string; - createdAt?: string; - indexedAt: string; - }[]; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo/social/getUserFollowers.d.ts b/src/third-party/api/src/types/todo/social/getUserFollowers.d.ts deleted file mode 100644 index 10812cd3..00000000 --- a/src/third-party/api/src/types/todo/social/getUserFollowers.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - user: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - subject: { - did: string; - name: string; - displayName?: string; - }; - followers: { - did: string; - name: string; - displayName?: string; - createdAt?: string; - indexedAt: string; - }[]; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getUserFollowersView.d.ts b/src/third-party/api/src/types/todo/social/getUserFollowersView.d.ts deleted file mode 100644 index f6a02cd7..00000000 --- a/src/third-party/api/src/types/todo/social/getUserFollowersView.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - user: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - subject: { - did: string; - name: string; - displayName?: string; - }; - followers: { - did: string; - name: string; - displayName?: string; - createdAt?: string; - indexedAt: string; - }[]; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo/social/getUserFollows.d.ts b/src/third-party/api/src/types/todo/social/getUserFollows.d.ts deleted file mode 100644 index 06f80568..00000000 --- a/src/third-party/api/src/types/todo/social/getUserFollows.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - user: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export declare type InputSchema = undefined; -export interface OutputSchema { - subject: { - did: string; - name: string; - displayName?: string; - }; - follows: { - did: string; - name: string; - displayName?: string; - createdAt?: string; - indexedAt: string; - }[]; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/getUserFollowsView.d.ts b/src/third-party/api/src/types/todo/social/getUserFollowsView.d.ts deleted file mode 100644 index 04bc65c6..00000000 --- a/src/third-party/api/src/types/todo/social/getUserFollowsView.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { - user: string; - limit?: number; - before?: string; -} -export interface CallOptions { - headers?: Headers; -} -export interface OutputSchema { - subject: { - did: string; - name: string; - displayName?: string; - }; - follows: { - did: string; - name: string; - displayName?: string; - createdAt?: string; - indexedAt: string; - }[]; -} -export interface Response { - success: boolean; - error: boolean; - headers: Headers; - data: OutputSchema; -} diff --git a/src/third-party/api/src/types/todo/social/like.d.ts b/src/third-party/api/src/types/todo/social/like.d.ts deleted file mode 100644 index f3b23b0d..00000000 --- a/src/third-party/api/src/types/todo/social/like.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export interface Record { - subject: string; - createdAt: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/todo/social/mediaEmbed.d.ts b/src/third-party/api/src/types/todo/social/mediaEmbed.d.ts deleted file mode 100644 index d27211bf..00000000 --- a/src/third-party/api/src/types/todo/social/mediaEmbed.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -export interface Record { - media: MediaEmbed[]; - [k: string]: unknown; -} -export interface MediaEmbed { - alt?: string; - thumb?: MediaEmbedBlob; - original: MediaEmbedBlob; - [k: string]: unknown; -} -export interface MediaEmbedBlob { - mimeType: string; - blobId: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/todo/social/post.d.ts b/src/third-party/api/src/types/todo/social/post.d.ts deleted file mode 100644 index aa9467a3..00000000 --- a/src/third-party/api/src/types/todo/social/post.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -export declare type TextSlice = [number, number]; -export declare type Entity = { - index: TextSlice; - type: string; - value: string; - [k: string]: unknown; -}[]; -export interface Record { - text: string; - entities?: Entity; - reply?: { - root: string; - parent?: string; - [k: string]: unknown; - }; - createdAt: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/src/types/todo/social/postNotificationsSeen.d.ts b/src/third-party/api/src/types/todo/social/postNotificationsSeen.d.ts deleted file mode 100644 index d88d4b1c..00000000 --- a/src/third-party/api/src/types/todo/social/postNotificationsSeen.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Headers } from '@adxp/xrpc'; -export interface QueryParams { -} -export interface CallOptions { - headers?: Headers; - encoding: 'application/json'; -} -export interface InputSchema { - seenAt: string; -} -export interface OutputSchema { - [k: string]: unknown; -} -export interface Response { - success: boolean; - headers: Headers; - data: OutputSchema; -} -export declare function toKnownErr(e: any): any; diff --git a/src/third-party/api/src/types/todo/social/repost.d.ts b/src/third-party/api/src/types/todo/social/repost.d.ts deleted file mode 100644 index f3b23b0d..00000000 --- a/src/third-party/api/src/types/todo/social/repost.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export interface Record { - subject: string; - createdAt: string; - [k: string]: unknown; -} diff --git a/src/third-party/api/tsconfig.build.tsbuildinfo b/src/third-party/api/tsconfig.build.tsbuildinfo index 3877043c..0afc1d6d 100644 --- a/src/third-party/api/tsconfig.build.tsbuildinfo +++ b/src/third-party/api/tsconfig.build.tsbuildinfo @@ -1 +1 @@ -{"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/zod/lib/helpers/typealiases.d.ts","../../../node_modules/zod/lib/helpers/util.d.ts","../../../node_modules/zod/lib/zoderror.d.ts","../../../node_modules/zod/lib/locales/en.d.ts","../../../node_modules/zod/lib/errors.d.ts","../../../node_modules/zod/lib/helpers/parseutil.d.ts","../../../node_modules/zod/lib/helpers/enumutil.d.ts","../../../node_modules/zod/lib/helpers/errorutil.d.ts","../../../node_modules/zod/lib/helpers/partialutil.d.ts","../../../node_modules/zod/lib/types.d.ts","../../../node_modules/zod/lib/external.d.ts","../../../node_modules/zod/lib/index.d.ts","../../../node_modules/zod/index.d.ts","../../xrpc/src/types.ts","../../nsid/src/index.ts","../../lexicon/src/types.ts","../../../node_modules/uri-js/dist/es5/uri.all.d.ts","../../../node_modules/ajv/dist/compile/codegen/code.d.ts","../../../node_modules/ajv/dist/compile/codegen/scope.d.ts","../../../node_modules/ajv/dist/compile/codegen/index.d.ts","../../../node_modules/ajv/dist/compile/rules.d.ts","../../../node_modules/ajv/dist/compile/util.d.ts","../../../node_modules/ajv/dist/compile/validate/subschema.d.ts","../../../node_modules/ajv/dist/compile/errors.d.ts","../../../node_modules/ajv/dist/compile/validate/index.d.ts","../../../node_modules/ajv/dist/compile/validate/datatype.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/additionalitems.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/contains.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/propertynames.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/additionalproperties.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/not.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/anyof.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/oneof.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/if.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/index.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/limitnumber.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/multipleof.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/pattern.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/required.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/uniqueitems.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/const.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/enum.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/index.d.ts","../../../node_modules/ajv/dist/vocabularies/format/format.d.ts","../../../node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedproperties.d.ts","../../../node_modules/ajv/dist/vocabularies/unevaluated/unevaluateditems.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/dependentrequired.d.ts","../../../node_modules/ajv/dist/vocabularies/discriminator/types.d.ts","../../../node_modules/ajv/dist/vocabularies/discriminator/index.d.ts","../../../node_modules/ajv/dist/vocabularies/errors.d.ts","../../../node_modules/ajv/dist/types/json-schema.d.ts","../../../node_modules/ajv/dist/types/jtd-schema.d.ts","../../../node_modules/ajv/dist/runtime/validation_error.d.ts","../../../node_modules/ajv/dist/compile/ref_error.d.ts","../../../node_modules/ajv/dist/core.d.ts","../../../node_modules/ajv/dist/compile/resolve.d.ts","../../../node_modules/ajv/dist/compile/index.d.ts","../../../node_modules/ajv/dist/types/index.d.ts","../../../node_modules/ajv/dist/ajv.d.ts","../../../node_modules/ajv-formats/dist/formats.d.ts","../../../node_modules/ajv-formats/dist/limit.d.ts","../../../node_modules/ajv-formats/dist/index.d.ts","../../lexicon/src/record/schema.ts","../../lexicon/src/record/util.ts","../../lexicon/src/record/validation.ts","../../lexicon/src/record/validator.ts","../../lexicon/src/record/schemas.ts","../../lexicon/src/record/index.ts","../../lexicon/src/index.ts","../../xrpc/src/util.ts","../../xrpc/src/client.ts","../../xrpc/src/index.ts","../src/schemas.ts","../src/types/com/atproto/createaccount.ts","../src/types/com/atproto/createinvitecode.ts","../src/types/com/atproto/createsession.ts","../src/types/com/atproto/deleteaccount.ts","../src/types/com/atproto/deletesession.ts","../src/types/com/atproto/getaccount.ts","../src/types/com/atproto/getaccountsconfig.ts","../src/types/com/atproto/getsession.ts","../src/types/com/atproto/repobatchwrite.ts","../src/types/com/atproto/repocreaterecord.ts","../src/types/com/atproto/repodeleterecord.ts","../src/types/com/atproto/repodescribe.ts","../src/types/com/atproto/repogetrecord.ts","../src/types/com/atproto/repolistrecords.ts","../src/types/com/atproto/repoputrecord.ts","../src/types/com/atproto/requestaccountpasswordreset.ts","../src/types/com/atproto/resetaccountpassword.ts","../src/types/com/atproto/resolvename.ts","../src/types/com/atproto/syncgetrepo.ts","../src/types/com/atproto/syncgetroot.ts","../src/types/com/atproto/syncupdaterepo.ts","../src/types/app/bsky/badge.ts","../src/types/app/bsky/badgeaccept.ts","../src/types/app/bsky/badgeoffer.ts","../src/types/app/bsky/follow.ts","../src/types/app/bsky/getauthorfeed.ts","../src/types/app/bsky/getbadgemembers.ts","../src/types/app/bsky/gethomefeed.ts","../src/types/app/bsky/getlikedby.ts","../src/types/app/bsky/getnotificationcount.ts","../src/types/app/bsky/getnotifications.ts","../src/types/app/bsky/getpostthread.ts","../src/types/app/bsky/getprofile.ts","../src/types/app/bsky/getrepostedby.ts","../src/types/app/bsky/getuserfollowers.ts","../src/types/app/bsky/getuserfollows.ts","../src/types/app/bsky/getuserssearch.ts","../src/types/app/bsky/getuserstypeahead.ts","../src/types/app/bsky/like.ts","../src/types/app/bsky/mediaembed.ts","../src/types/app/bsky/post.ts","../src/types/app/bsky/postnotificationsseen.ts","../src/types/app/bsky/profile.ts","../src/types/app/bsky/repost.ts","../src/types/app/bsky/updateprofile.ts","../src/index.ts","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostic_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/util/types.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/ts3.6/base.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/base.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/connect/index.d.ts","../../../node_modules/@types/body-parser/index.d.ts","../../../node_modules/@types/cors/index.d.ts","../../../node_modules/@types/range-parser/index.d.ts","../../../node_modules/@types/qs/index.d.ts","../../../node_modules/@types/express-serve-static-core/index.d.ts","../../../node_modules/@types/mime/mime.d.ts","../../../node_modules/@types/mime/index.d.ts","../../../node_modules/@types/serve-static/index.d.ts","../../../node_modules/@types/express/index.d.ts","../../../node_modules/@types/glob/node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/glob/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/jsonwebtoken/index.d.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/minimist/index.d.ts","../../../node_modules/@types/nodemailer/lib/dkim/index.d.ts","../../../node_modules/@types/nodemailer/lib/mailer/mail-message.d.ts","../../../node_modules/@types/nodemailer/lib/xoauth2/index.d.ts","../../../node_modules/@types/nodemailer/lib/mailer/index.d.ts","../../../node_modules/@types/nodemailer/lib/mime-node/index.d.ts","../../../node_modules/@types/nodemailer/lib/smtp-connection/index.d.ts","../../../node_modules/@types/nodemailer/lib/shared/index.d.ts","../../../node_modules/@types/nodemailer/lib/json-transport/index.d.ts","../../../node_modules/@types/nodemailer/lib/sendmail-transport/index.d.ts","../../../node_modules/@types/nodemailer/lib/ses-transport/index.d.ts","../../../node_modules/@types/nodemailer/lib/smtp-pool/index.d.ts","../../../node_modules/@types/nodemailer/lib/smtp-transport/index.d.ts","../../../node_modules/@types/nodemailer/lib/stream-transport/index.d.ts","../../../node_modules/@types/nodemailer/index.d.ts","../../../node_modules/@types/normalize-package-data/index.d.ts","../../../node_modules/@types/parse-json/index.d.ts","../../../node_modules/pg-types/index.d.ts","../../../node_modules/pg-protocol/dist/messages.d.ts","../../../node_modules/pg-protocol/dist/serializer.d.ts","../../../node_modules/pg-protocol/dist/parser.d.ts","../../../node_modules/pg-protocol/dist/index.d.ts","../../../node_modules/@types/pg/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/revalidator/index.d.ts","../../../node_modules/@types/prompt/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true},{"version":"3260e3386d9535b804205bdddb5618a9a27735bd22927f48ad54363abcd23d45","affectsGlobalScope":true},{"version":"adb09ec0a64fc17dbbc4a228b3b18aa5f01db3440a6b0cbb02354df58674d584","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"9afae14803f3b7343ed6d193173008715c1fa3421a353a818c805244ed737a84","bb98c05ae5cb9bd7cb7ad76fe517251a661787a6f24337b842f47faf393f79c7","a93bf95f7009c90e7d1edb092560d4052e3ebbe9b9ad2d796bcd95dc4306825c","8485b6da53ec35637d072e516631d25dae53984500de70a6989058f24354666f","ebe80346928736532e4a822154eb77f57ef3389dbe2b3ba4e571366a15448ef2","c2cb3c8ff388781258ea9ddbcd8a947f751bddd6886e1d3b3ea09ddaa895df80","f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","014b34d4c2ef27191fdf3feabb6557ec92127f813910725b6e79ed9a49e466b6","72efc3e8cee3cb13144cb63bb8aacf28f918439a2ff222de89e0e5d7ba9c7170","b61efb129c7011068cb4ccbbd86d5741ac82653476b09f46d3d06dd99b5b687e","2b7961486503fa279a4f1a52928d8c31fc6558c335b750878721467210552dd7","d1f62988c7e8e8650f7ed39520a766648155abbf75dd89f60e24f069433301d4","5568d7c32e5cf5f35e092649f4e5e168c3114c800b1d7545b7ae5e0415704802","156b9be8718e5157c84f4ca2163a48f9a8334e4477b945694c882ab89fd3382d","6acd34fce3c170380832d5bd6fb7b9fe77ea637244f7dd098cfb1a728fb430f1","e3482352d1d27b3d848a48d9c2c65c9f20e2fe7a2b3f87aec5f46b6eb0a1c7dc","9f3c5498245c38c9016a369795ec5ef1768d09db63643c8dba9656e5ab294825","44a8d350600656882fd7462774e32e8d13788313ba2e36d2e8d5437ac91b98df","60bb0e47502bf8716d1230288b4e6387c1d34cded12752ab5338108e2e662e67","b8870b5155d11a273c75718a4f19026da49f91c548703858cd3400d06c3bd3b8","b3ae4ded82f27cabba780b9af9647f6e08c9a4cabe8fbb7a0cca69c7add9ef4b","8d26ae32e5c9c080e44aee4a67e5ef02b5fda0604e6fecbb7b753c537e5282d9","05c4e792dae38912ba333725cdf8c42d242337d006c0d887f4ce5a7787871a95","cd44995ee13d5d23df17a10213fed7b483fabfd5ea08f267ab52c07ce0b6b4da","58ce1486f851942bd2d3056b399079bc9cb978ec933fe9833ea417e33eab676e","1a23b521db8d7ec9e2b96c6fbd4c7e96d12f408b1e03661b3b9f7da7291103e6","d3d0d11d30c9878ada3356b9c36a2754b8c7b6204a41c86bfb1488c08ce263b0","a6493f1f479637ed89a3ebec03f6dc117e3b1851d7e938ac4c8501396b8639a8","ae0951e44973e928fe2e999b11960493835d094b16adac0b085a79cff181bcb9","9d00e3a59eff68fa8c40e89953083eeaad1c5b2580ed7da2304424b249ecb237","1609ad4d488c356ee91eba7d7aa87cc6fb59bc8ac05c1a8f08665285ba3b71ad","8add088f72326098d68d622ddb024c00ae56a912383efe96b03f0481db88f7c9","dd17fe6332567b8f13e33dd3ff8926553cdcea2ad32d4350ce0063a2addaa764","4091d56a4622480549350b8811ec64c7826cd41a70ce5d9c1cc20384bb144049","353c0125b9e50c2a71e18394d46be5ccb37161cc0f0e7c69216aa6932c8cdafb","9c5d5f167e86b6ddf7142559a17d13fd39c34e868ae947c40381db866eed6609","4430dea494b0ee77bf823d9a7c4850a539e1060d5d865316bb23fb393e4f01d7","aae698ceead4edad0695b9ea87e43f274e698bdb302c8cb5fd2cab4dc496ccf0","51631e9a0c041e12479ab01f5801d8a237327d19e9ee37d5f1f66be912631425","c9d5d8adb1455f49182751ce885745dcc5f9697e9c260388bc3ae9d1860d5d10","f64289e3fa8d5719eaf5ba1bb02dd32dbbf7c603dda75c16770a6bc6e9c6b6d9","b1aa0e2e3511a8d10990f35866405c64c9e576258ef99eeb9ebafed980fd7506","2d255a5287f2fb5295688cb25bd18e1cd59866179f795f3f1fd6b71b7f0edf8f","43c1dbb78d5277a5fdd8fddce8b257f84ffa2b4253f58b95c04a310710d19e97","6c669d7e080344c1574aa276a89e57c3b9f0e97fab96a09427e7dfb19ca261bf","b71ac126853867d8e64c910f47d46d05c5ea797987d2604f63d401507dc43b6d","9a37238558d28b7ee06d08599e92eab30b90704541cc85e6448009d6d55fffa9","120b14d66a061910309ff97e7b06b5c6c09444218178b80b687a92af4d22d5dc","3de958065e3a44cbe0bfa667813bc59c63e63c9ce522af8dc1b64714910fa9ba","66e655f7c43558bae6703242cbd6c0551a94d0a97204bd4c4bbf7e77f24d1f85","72f7b32e023814078046c036ed4b7ad92414be0aebb63e805c682e14103ae38a","a89d8e67966d085ff971c9900cfa1abdd9732bab66d9c1914ecc15befdf8623d","7dfd0308261bb91b058eb91802690fe3f09192b263e070a19df4d629df29e265","608eb9d411ac76e93a10e05f8aae92b3a5cefc87594219b737df7c8737ba2bd7","cde493e09daad4bb29922fe633f760be9f0e8e2f39cdca999cce3b8690b5e13a","3d7f9eb12aface876f7b535cc89dcd416daf77f0b3573333f16ec0a70bcf902a","93ba4ac36f570c70a12d588e21c10dda9f351fad3e77d416952acddb27bff01d","8750f9dc1e277ffff7446c95571bae61aca0984e8f99e40fc1e8cb7161ae0642","66408d81ba8962282b1a55da34c6bd767105141f54d0ba14dca330efe0c8f552","7481b9d93ca44eb1f689e0b939545ff00dead7bdb9daba401dfb74292d83f831","821e64ddbdfa10fac5f0aed1c1d4e1f275840400caa96357ddfd15d02e5afba1","18992725cbd51b0846132ec46237bc7de4da1db440deb66a6242e2de8715dcfb","44f29187cfbc7aa4a6109204c8e5186509abc3b78874a2ee1498c51ab50f0f62","19ab78c1376c16e18c5b87dfa750813c935f0c4ce1d6ef88058ec38f9cf5ef08","c0f25c51a92ee4f072fe67057ec72ee72be2276c399a7d340ae944288a092fb6","3fc561fc6dd4088e53223a9bba7bebcf90246b2b21e54237dcce9e617c04d70f","01c8a2c0aa144ee6505d55074a1b9e6813f7b17a5d6fa82d1d915e6656b7299a","68d9a2010c776483645395ab9aa68d0546b9dcc79c37a9ebee4b6b5337c3582b","4d9a72ac7a6f2d3235ff8540ec294718801334df5b75aead03ebb52d3dc6a7ae","268018220f99e806d122d436ca95f86ae618eb75a9b646dc83141f11e35012a9","931b618b5058642415cd17e548b22e60795458fbd16d0a3eccab1d91c2ae8a80","7f6b8a99f64d652a30c7f448daafc9bd23b4c5706331c3046545de89c69bce3a","ad8c2a062bf6fba6306a494ca81ef744991ba9df3d660c232719958146687275","dc8bd2d3fdede21907b93d1b962354779cdae08f83205f4507b639f0f69a29a2",{"version":"dd0ae08142b1c1f8414677c6c6943cfa58c29eb06fa0008133666631b3eccc11","signature":"be4975e5a010ca406bae0805b60e9f4010dda60c1e8102bfaeac2b09f73ca2a1"},{"version":"fdf1662a332607801f8c50b5cf2649f30ae542cce86813fd2153514b010b73f8","signature":"a1f6d8a00c319a0fc425b6a2b12ec7835288741947cdd1d44e54d7c19df31de6"},{"version":"25baa2148477655a8386279ea04f780b12c7a6c101717a2deda514d0faa37d84","signature":"5d6bbca4a826286205026abd82053667e38afbf813d3d34f5e97cdfaa3e50988"},{"version":"f586ab4a683b5b6de12e547a04471128e18de2ebd6444bbc478a0f35cc88f8f4","signature":"96720ee38be0c7f912fda70e10febc38e6e07f371d286e800e2e0814e5fd4d4c"},{"version":"29803db391d283111fc15aef39aa0fd3045b818d9c501186966e68c5ef9dd4ee","signature":"d128e87f47613f5eef5ab800bb262047d42ba98179f835215f19bd79e05d5e85"},{"version":"29803db391d283111fc15aef39aa0fd3045b818d9c501186966e68c5ef9dd4ee","signature":"d128e87f47613f5eef5ab800bb262047d42ba98179f835215f19bd79e05d5e85"},{"version":"29803db391d283111fc15aef39aa0fd3045b818d9c501186966e68c5ef9dd4ee","signature":"d128e87f47613f5eef5ab800bb262047d42ba98179f835215f19bd79e05d5e85"},{"version":"7a673c77fe0ac75df51eca6826532993f1067656666b372a07617eefdc7ab529","signature":"b36519eee8c2a70b4fe0ca16fb59804d6525c9e33d3d89d1e6252404fd527de3"},{"version":"dc17d6f528bced4fdb7ac18a39532cb312f3fa1608c4c5599cd1bc36ff48fc74","signature":"4a26285dfe7f021edb10be40cbd32e89dc6d3822ed0f2b3b6551623fbb21c596"},{"version":"92bb7d1381cfde15ef1ab2a36f396157039f1a9dc7fbef5e19e14e9f53009c88","signature":"a00773b406197f44e532087b418db31c359c3c34a2d927fcfb9b03f8975fb27b"},{"version":"6083be10e42f60574e4d738b801a8f1a0c38653bbe75e78814b687f377017156","signature":"4f28aaec76d3e0e23c3ae911b37d6ee00e2c6f31520fe3c67329e0175d88a4c0"},{"version":"968fd5b8664bc310955a56a027e00bb678394ec3eb43abd0a947dacd8090d6fa","signature":"5de691c0b0d19f08db4824919ad91dfa9a967391561184671b5b06c140a217a0"},{"version":"806e34555033f3d7503485d5a93b1172071e74822386a46374b059fbf361fa33","signature":"e1d6f63a2c819aa6ddd4445d9443e902d01883f85106bf684668a391442c4ab6"},{"version":"dc46798232c9618907215e67f2001bbfd3e3de92392f5a0989b6ef5874676a48","signature":"42ecf1fc8f0d0c59a7747acbf897db15ad1f4e75c3a4abb6bfdbe428e1819463"},{"version":"ec0c5feb73b0e0b6bcc69175ca5d60d9c943987799762a309e2d5202a3b23cb1","signature":"70493669bccf8d21cc5fc3b97d19f359cf184ffceb79a9870441ec7a4a0427c2"},{"version":"d9ccb495a3782ae7ed34b1c6fddba8a77eade1c713457a873c54b2d2a792be94","signature":"063419082aa7f7864aa5f29815e1261db20a72553c324eb64cef4cc2f951bae5"},{"version":"ac02f6ed63925366bd094f8b9f1fdcac6f940b588531c13ef6fa61f6f06c343f","signature":"25bb216e02d3ae5445eb7e90b894f69835bd01d71445a6d80cb1dc67197525f2"},{"version":"40ce2d132816ed2e0f36967ecf67aee195fcb04adcf840890632a88abc98e2a0","signature":"b53dcc7f3ba2154c6c0ee506e8ff020d24cc833987809c2b75a09aceacf02c30"},{"version":"d696bb2e57952d9ced5b69bbd025d37ad6bdc3f0e3034e55c1314c9abe4dc51d","signature":"0aa00448788bf65671d024165052a7a9138c78d160ad45e2dab290f56b85ecc9"},{"version":"f1da8679c263c0c8fa30af4b273d23ed202ad5e423bcbda42b4a83e282bd4981","signature":"6d91bcd052d66fe405a659005bd0ee858cfddd738e9efb5ff473274b51f96857"},{"version":"54242a6c38316c72cac21a45e1acbb9b9821d16622ede42ae669bf53303f6183","signature":"ad486dfb188b38e1438df92768321062f13bf65ec79c59cb78dd880d288dea9e"},{"version":"6483ab9e5aca4fb2f020c190ebebfb3e030b0c75ae0512d07a2ea2efe72b49ec","signature":"ae52fd62e89f776fe4f7826e692e9baf8ff950a9e214fd532912fdf2515161e5"},{"version":"56913741d8817173ec8cf449807211c9dddcdf777f0199d6f55e3753cc912aee","signature":"1f7c2100ce77e373f87b470f612493f724195c98d328b4b5abb6c22226d411a2"},{"version":"98b91cb7d89f5f7041aba479b18d53b54eac46b20044f21dfd1d679dceb1deb6","signature":"bc31a1537af96627d456d2fb2503459a43c1d244fd8c010f3542e3a97128dc1d"},{"version":"4a8d3bf7073dcc01fcb83365b4c39790c6bb5e563f005062a2ed67fdc57fc89d","signature":"ae042b8c78de07cb1096ea9f6996ca21630faa357cead2d6697d45fa4e39be46"},{"version":"ef44d7216bc6f944a217048b333973647ab8aaa5d33a4df22e7339c4523f965b","signature":"b0c557ca98f3c5af8cc6420b0c2736be831aa30feb1fad57d6f54c2a49e1eab6"},{"version":"3226d965cd91600450de3e263520a5455394f0911845535af53c5c46b4bccbd7","signature":"618c88f416b863df6436c1b1ac3ee5da55133becc46e8d9be4cb811ec156a2a9"},{"version":"b6436a929021b1051ded21c0dce548239aa1d24be746e682555f03a1fd4d628d","signature":"e019e6286ac12b6a5d3b22ee78a4ead2cd0233f51f3742e604e07f66dc4b11a2"},{"version":"3d4bf557426bbb91c28cdca8491f63f24db6437a7cd92d0191f4f10fb27499b2","signature":"1ee0c7cbc0157806647078584d0e98033449218cce21d111a43d8646c66e7cb7"},{"version":"413acc3dac609526e7d147fe621188eda451137c96f767eef435d8eda44abc71","signature":"94152ec37acb79c2efc3df438083116a5406fd83b2caf230dd8dd932d052ae5c"},{"version":"a11ada4ddb5747bafcb059ef34d0a025c1739a13330583635ea68fc4fe58ea90","signature":"a69bc1b06a11288177a9819e920ce332242546af0ed69e29c0c4907fa044fb71"},{"version":"3c07f21f37fbbaa80ce7a9f8caf222dd66887de3d3ff8ab5821aadd31a848f8e","signature":"090ce0eb237c5c80e5dcc5e9d68f50ea27cc4e50e74a07501a1e7ee3d7aa4636"},{"version":"df614b6c0cf855f84fdccc6953f4bf666e485b3890836cfc3662d2853c3d28ed","signature":"b4a855a7a1708e9ec11067a80668724c8a5ccc7e694f89a6f0f62be6607425d9"},{"version":"917040e9a87c0afd02062440419192ea5b409f42ebd3dd2eae452938f584be67","signature":"35337c2aafc0b644b8ce5cae7fd6b3803fb039a1d87a9aa6d124696df91ad282"},{"version":"777702d74bd983ca10cb306683ced4c95ebdaa484c4ba59c49dc99d2db68d27d","signature":"51a785614fedd752e81b4213c11d0e513a301cfc53985a7d9d3e33d02320fa6a"},{"version":"c5f879dcfc520c63d28763d5bdcb446233c2c9d0fdb527b02a7e1b1024834fd3","signature":"1334b411c3ef10ef4a1bc63b2a5d5465a102f8361bf8ee94bdc3d676c47a4854"},{"version":"e004d3364d1ca0f0a97beb59092863df93c290def9145bcfc309bb581672b985","signature":"26e84bc97e5c8855b5f64679f8fa7ba68d14b61b087bfc7e2f735def6070b296"},{"version":"c237e8fb65a189825ff04eae738141ceb05ae35bc84b3c64e7b04c7dc2ecea9c","signature":"fa4854d099f95492926b61ad3513b1bff05f81b79c6491ec25362128ffdee8dc"},{"version":"335d13765c62f34fce642d79aca85fbc549adb1d8254c36ac8342e88f128827d","signature":"8ef2900a476bdaf8856fcc42e7630938b80767ba4d43c0d9a58e9e883fddcff9"},{"version":"e0ee75d1f0cb5204e8f9dfeb7f1c162df90498d37888876b1cd50d28b432545b","signature":"7670420ebb619f5549e646f47086bb60ef4062f37e873a5238793650f39723ba"},{"version":"c3c829aae891ac7ee988d0733a06e8d6b130f45ae4a3973892d93f6b97825699","signature":"22a699c4613866244d4feb310a3ee112fe1f171604ace3b1affa487e2de3d9b9"},{"version":"aa9ed7fc62199507ecb0effc84d131e421b0d88969676733fc93a72aa4ad852d","signature":"6b83a43e2e8f80f7549e38933fa596f16911b439a913d8879457daf40258f768"},{"version":"fec9a3d7f7de0e419d5ad70e97a360bdde60f70e68f415bbc7e1c407476bc9d8","signature":"5b293973e4be0c51fba691303aa401fa95e70943798f8724d55603261c0a1d04"},{"version":"ae49c7ab1df8b5553d5addcfdea1dd3845d48691ed6ce160c55f01f2234aa74e","signature":"53c5b0cb1e70e337615f8716a4c36f23d4e87286e33af2d02010c42e189ace3c"},{"version":"e0ee75d1f0cb5204e8f9dfeb7f1c162df90498d37888876b1cd50d28b432545b","signature":"7670420ebb619f5549e646f47086bb60ef4062f37e873a5238793650f39723ba"},{"version":"940b48d00c769ce18e7ff6b68801c3a8c72d48f1aa1ca38fb91010f00a3199a1","signature":"6016fef242fb8de84d798f6552152a2b87d2ce3a04cce6395ca2a7a37653812e"},{"version":"e07becc419ad93edfdc8f339f6556cad2aa3130eee49c354feda9ef880c1005b","signature":"0cdc579cb6b0f7767c357a2be70c150681eb9d2bfedd2545767a18bcb49eeee9"},"c561efdf5ba0b62619745d4761fe2d9756f23db972e039367d15922fed67fd2f","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","7ec238b220ea991b6643e24191b1f552a65956d5f6de4c6144e700b9985265d8","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","dae3d1adc67ac3dbd1cd471889301339ec439837b5df565982345be20c8fca9a","5426e62886b7be7806312d31a00e8f7dccd6fe63ba9bbefe99ee2eab29cc48a3","c7bdc99177a2a94d25fb13722adaaf5b3291bf70b4d1b27584ba189dd3889ba3",{"version":"d1c92b66c4105659fcad4eb76a1481f7311033e117d0678a1ec545e8ddb8d4c6","affectsGlobalScope":true},"e23424b97418eca3226fd24de079f1203eb70360622e4e093af2aff14d4be6ec","dee93c07b4df5e26010dc9ec4cdf4d6e4076bb4474d2a8371529217c8b2740a4","ed40f2f184db052dc8df62d1f199823c8bbccc487c0a2a7c54eeea0badcf4378","04eaa93bd75f937f9184dcb95a7983800c5770cf8ddd8ac0f3734dc02f5b20ef",{"version":"c8155caf28fc7b0a564156a5df28ad8a844a3bd32d331d148d8f3ce88025c870","affectsGlobalScope":true},"45ac321f2e15d268fd74a90ddaa6467dcaaff2c5b13f95b4b85831520fb7a491","dfc747ab8dd5f623055a4c26fd35e8cceca869fd3f1cf09701c941ca3679665a","c9f5f2920ff61d7158417b8440d5181ddc34a3dfef811a5677dd8a9fb91471e9","5cc0a492da3602510b8f5ed1852b1e0390002780d8758fbc8c0cd023ca7085f8","ec7dafafe751a5121f8f1c80201ebe7e7238c47e6329280a73c4d1ca4bb7fa28","64debeb10e4b7ae4ec9e89bfb4e04c6101ab98c3cc806d14e5488607cfec2753",{"version":"2866a528b2708aa272ec3eaafd3c980abb23aec1ef831cfc5eb2186b98c37ce5","affectsGlobalScope":true},{"version":"a5782d6cea81fe43d2db7ed41e789458c933ab3ab60602f7b5b14c4da3370496","affectsGlobalScope":true},"f258ba66915f0196ec344bc53afe1888240bbcc855ebd151b6cc072275533319","6194335ee3353f7226ba31f31d6301d0c6be87228419c0a08976ccd9d4f1213e","3ac12a54cfaa84683506db8d4cf779135a271d9f0ec18930cf53e61fbeea0c5d","cf3d3b087d1a8a3355eec47d206162c75e912315b9b5c1cd49fda93e948fb80a","36f316c066c4a72dd6f19fec49a074f935744fc9ccbe75c87ebc07fb2feb9062","42176966283d3835c34278b9b5c0f470d484c0c0c6a55c20a2c916a1ce69b6e8","0cff7901aedfe78e314f7d44088f07e2afa1b6e4f0473a4169b8456ca2fb245d","ec70fd6f8a9a83f850dab2960a6789e93d5b034b354a16814cad5daabf62a360","e2236264a811ed1d09a2487a433e8f5216ae62378cf233954ae220cf886f6717","3ec1e108d587a5661ec790db607f482605ba9f3830e118ce578e3ffa3c42e22b","100b3bb9d39d2b1b5340f1bf45a52e94ef1692b45232b4ba00fac5c3cc56d331",{"version":"04fe7e7d8008887943260af1fde2bfd4877e0dc57bf634e0f0b2f3d1794dfd11","affectsGlobalScope":true},"7f77304372efe3c9967e5f9ea2061f1b4bf41dc3cda3c83cdd676f2e5af6b7e6","992c6f6be16c0a1d2eec13ece33adeea2c747ba27fcd078353a8f4bb5b4fea58","2597718d91e306949d89e285bf34c44192014ef541c3bd7cbb825c022749e974","a6b0abdb67d63ebe964ba5fee31bc3daf10c12eecd46b24d778426010c04c67e","ac4801ebc2355ba32329070123b1cd15891bf71b41dcaf9e75b4744832126a59","fd2298fba0640e7295e7bd545e2dfbfcccbb00c27019e501c87965a02bbdebf6","4fd3c4debadce3e9ab9dec3eb45f7f5e2e3d4ad65cf975a6d938d883cfb25a50","71ddd49185b68f27bfac127ef5d22cb2672c278e53e5370d9020ef50ca9c377d","b1ea7a6eaa7608e0e0529aebd323b526a79c6c05a4e519ae5c779675004dcdf1","9fcb033a6208485d8f3fadde31eb5cbcaf99149cff3e40c0dc53ebc6d0dff4e9","7df562288f949945cf69c21cd912100c2afedeeb7cdb219085f7f4b46cb7dde4","9d16690485ff1eb4f6fc57aebe237728fd8e03130c460919da3a35f4d9bd97f5","dcc6910d95a3625fd2b0487fda055988e46ab46c357a1b3618c27b4a8dd739c9","f4149f1aa299474c7040a35fe8f8ac2ad078cc1b190415adc1fff3ed52d490ea","3730099ed008776216268a97771de31753ef71e0a7d0ec650f588cba2a06ce44","8d649dbc429d7139a1d9a14ea2bf8af1dc089e0a879447539587463d4b6c248c","60c9e27816ec8ac8df7240598bb086e95b47edfb454c5cbf4003c812e0ed6e39","e361aecf17fc4034b4c122a1564471cdcd22ef3a51407803cb5a5fc020c04d02","4926467de88a92a4fc9971d8c6f21b91eca1c0e7fc2a46cc4638ab9440c73875",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"fc0ae4a8ad3c762b96f9d2c3700cb879a373458cb0bf3175478e3b4f85f7ef2f","fabbec378e1ddd86fcf2662e716c2b8318acedb664ee3a4cba6f9e8ee8269cf1","b3593bd345ebea5e4d0a894c03251a3774b34df3d6db57075c18e089a599ba76","e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","efd55e8ca79171bf26c0d0e30221cb8ee1f5a31dd0c791ec4b2e886f42bab124","6d829824ead8999f87b6df21200df3c6150391b894b4e80662caa462bd48d073","afc559c1b93df37c25aef6b3dfa2d64325b0e112e887ee18bf7e6f4ec383fc90","6fbd58e4015b9ae31ea977d4d549eb24a1102cc798b57ec5d70868b542c06612","16d51f964ec125ad2024cf03f0af444b3bc3ec3614d9345cc54d09bab45c9a4c","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc",{"version":"ae3fe461989bbd951344efc1f1fe932360ce7392e6126bdb225a82a1bbaf15ee","affectsGlobalScope":true},"5b9ecf7da4d71cf3832dbb8336150fa924631811f488ad4690c2dfec2b4fb1d7","951c85f75aac041dddbedfedf565886a7b494e29ec1532e2a9b4a6180560b50e","f47887b61c6cf2f48746980390d6cb5b8013518951d912cfb37fe748071942be","15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","763e521cf114b80e0dd0e21ca49b9f8ae62e8999555a5e7bade8ce36b33001c2","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","3e6bbb0883148627ca0854a9f62d820aaf1a0f1842f5568176721fef156b8f23","ffcc5500e77223169833fc6eb59b3a507944a1f89574e0a1276b0ea7fc22c4a4","22f13de9e2fe5f0f4724797abd3d34a1cdd6e47ef81fc4933fea3b8bf4ad524b","e3ba509d3dce019b3190ceb2f3fc88e2610ab717122dabd91a9efaa37804040d","cda0cb09b995489b7f4c57f168cd31b83dcbaa7aad49612734fb3c9c73f6e4f2","f72f8428f3c1caa22e9c247d046603b85b442c0dae7b77a7a0bc092c18867cb7",{"version":"195f63105abc03e72b6a176e3e34dfb5ac932b55db378fdc7874b1617e24b465","affectsGlobalScope":true},"f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6","bb4ed283cfb3db7ec1d4bb79c37f5e96d39b340f1f4de995c4b0b836c8d5fa05","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","6702a1cd8818cb22ee95c85dcf2c31c117bde892e1afd2bc254bd720f4c6263c","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","7a79ca84e4370ed2e1afaa99ff7d25194901916b7672e977d16f77af3b71342f","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3cf0d343c2276842a5b617f22ba82af6322c7cfe8bb52238ffc0c491a3c21019","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9",{"version":"f2eff8704452659641164876c1ef0df4174659ce7311b0665798ea3f556fa9ad","affectsGlobalScope":true},"8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05","bb654d426b82e0846cd4bd7de91d637039ecdfd63c94447373490178f80846fe","db90f54098b237753ac9c846e39cd49aa538dcad07a2e1c68a138f3c0f8e621d","92ad68795c32309fb43576cacb38bd2677deeed38f5730dcd4a8c5e65463ae15","4b16417aab5a4b276fd4a7db95120a8c7b4d49a6d68ddfe075e9f46dcbf22f00","eecb2ea10a1500dcc6bdeff14be1fb43806f63a9b8562e16e1b4fc8baa8dfa8d","221a6ab66d611349faaf80af49c7a34d95623787610fd153fed4da0811abdcae","f3d84d6f83cf131e4db335dc8100898adbeb01dd4cf4e2fe695ab220eac98be4","6521aaade4e1d23cbc4b665083b004aeaca23f3347ba2422f88d1828968a0056","e79130cf2ba010f2b79747bf43b086252ad041b130768331a1144c0a86185877","e9709ed827c40789c669736fc78e2ab603605e8e81325d1e6d7a5eb451810dd0","dafce7a7b279977940b6b4b50017625e4f922f73094433d2875994bdc0b27e87","6fc76efbb61d3336833ef44ff3f37552667f26c2a73b368f3b4b259f19f2c234","479496e5bb48f2f5e981ef646665bc09fd9ab080e86e9ea882ca4369411604af","6c559dee3c6251c261b67df08e01d4cbc89cbd7a63300150c636705733cebfff","6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","f60e3e3060207ac982da13363181fd7ee4beecc19a7c569f0d6bb034331066c2","17230b34bb564a3a2e36f9d3985372ccab4ad1722df2c43f7c5c2b553f68e5db","87ed0f84f0691d5c724b23159db96342e6b04ac69201b02c65936f4281ce1fbe","13868c5792808236b17dfe2803eafce911ea4d09d3b2fda95391891a494f988f","0dfe35191a04e8f9dc7caeb9f52f2ee07402736563d12cbccd15fb5f31ac877f","fa5c2d3fcd8e227e180815df0a0903ed4b116400452af8a75ac5b68e5e1de9da","93c4fc5b5237c09bc9ed65cb8f0dc1d89034406ab40500b89701341994897142",{"version":"9d7e4ee9bcd2375a1983cbec6d9b97b3fa5b75ff011f8922c4670138abf41fb5","affectsGlobalScope":true},"eb5081f10872b15e6e9a5c8effbaac85eb5268316a7d47a987193e68aff28f2d","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","28288f5e5f8b7b895ed2abe6359c1da3e0d14a64b5aef985071285671f347c01"],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":1,"module":1,"noImplicitAny":false,"outDir":"./","removeComments":true,"skipLibCheck":true,"sourceMap":true,"strict":true,"strictPropertyInitialization":false,"target":7},"fileIdsList":[[178],[254],[178,179,180,181,182],[178,180],[201,235,236],[201,235],[201],[198,201,235,239,240],[237,240,241,244],[198,199,235,246],[199,235],[249],[250],[256,259],[235],[263,265,266,267,268,269,270,271,272,273,274,275],[263,264,266,267,268,269,270,271,272,273,274,275],[264,265,266,267,268,269,270,271,272,273,274,275],[263,264,265,267,268,269,270,271,272,273,274,275],[263,264,265,266,268,269,270,271,272,273,274,275],[263,264,265,266,267,269,270,271,272,273,274,275],[263,264,265,266,267,268,270,271,272,273,274,275],[263,264,265,266,267,268,269,271,272,273,274,275],[263,264,265,266,267,268,269,270,272,273,274,275],[263,264,265,266,267,268,269,270,271,273,274,275],[263,264,265,266,267,268,269,270,271,272,274,275],[263,264,265,266,267,268,269,270,271,272,273,275],[263,264,265,266,267,268,269,270,271,272,273,274],[242],[243],[233],[232,233],[187,192],[198,199,206,215],[188,198,206],[224],[192,199,207],[215,220],[195,198,206],[196],[195],[198],[198,200,215,223],[198,199,215],[206,215,223],[198,199,201,206,215,220,223],[201,215,220,223],[234],[223],[195,198,215],[208],[186],[222],[213,224,227],[198,216],[215],[218],[192,206],[184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231],[206],[212],[225],[187,192,198,200,209,215,223,227],[235,279,281,285,286,287,288,289,290],[215,235],[198,235,279,281,282,284,291],[198,206,215,223,235,278,279,280,282,283,284,291],[215,235,281,282],[215,235,281,283],[235,279,281,282,284,291],[215,235,283],[198,206,215,220,235,280,282,284],[198,235,279,281,282,283,284,291],[198,215,235,279,280,281,282,283,284,291],[198,215,235,279,281,282,284,291],[201,215,235,284],[198,215,220,235,294,295,298,299],[198,222,235,301],[201,235,243],[304],[117],[117,118,119],[76,77,81,108,109,113,115,116],[74,75],[74],[76,116],[76,77,113,114,116],[116],[73,116,117],[76,77,115,116],[76,77,79,80,115,116],[76,77,78,115,116],[76,77,81,108,109,110,111,112,115,116],[73,76,77,81,113,115],[81,116],[83,84,85,86,87,88,89,90,91,92,116],[106,116],[82,93,101,102,103,104,105,107],[86,116],[94,95,96,97,98,99,100,116],[252,258],[256],[253,257],[235,295,296,297],[215,235,295],[255],[68],[59,60],[57,58,59,61,62,66],[58,59],[67],[59],[57,58,59,62,63,64,65],[57,58,68],[130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176],[127],[130],[72,126],[121,123,124,125],[72,117,120],[72,121,124],[117,121],[117,120,121,122,123,125],[69,71],[70,127,128],[70,129],[69],[70,127],[198,215,220,224,235,294,295,298,299],[224,235,295,296,297],[224,235],[215,224,235,295],[130,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176]],"referencedMap":[[180,1],[255,2],[183,3],[179,1],[181,4],[182,1],[237,5],[236,6],[238,7],[241,8],[245,9],[247,10],[248,11],[250,12],[251,13],[260,14],[262,15],[264,16],[265,17],[263,18],[266,19],[267,20],[268,21],[269,22],[270,23],[271,24],[272,25],[273,26],[274,27],[275,28],[243,29],[242,30],[184,31],[234,32],[187,33],[188,34],[189,35],[190,36],[191,37],[192,38],[193,39],[195,40],[196,41],[197,42],[198,42],[199,43],[200,44],[201,45],[202,46],[203,47],[235,48],[204,42],[205,49],[206,50],[208,51],[209,52],[210,53],[213,42],[214,54],[215,55],[216,56],[218,42],[219,57],[220,58],[232,59],[222,60],[223,61],[224,62],[226,56],[228,63],[229,56],[291,64],[278,65],[285,66],[281,67],[279,68],[282,69],[286,70],[287,66],[284,71],[283,72],[288,73],[289,74],[290,75],[280,76],[299,77],[302,78],[244,79],[305,80],[118,81],[120,82],[119,81],[117,83],[76,84],[75,85],[80,86],[115,87],[112,88],[114,89],[77,88],[78,90],[82,90],[81,91],[79,92],[113,93],[111,88],[116,94],[83,95],[88,88],[90,88],[85,88],[86,95],[92,88],[93,96],[84,88],[89,88],[91,88],[87,88],[107,97],[106,88],[108,98],[102,88],[104,88],[103,88],[99,88],[105,99],[100,88],[101,100],[94,88],[95,88],[96,88],[97,88],[98,88],[259,101],[257,102],[258,103],[298,104],[295,15],[297,105],[296,15],[256,106],[69,107],[61,108],[67,109],[62,110],[65,107],[68,111],[60,112],[66,113],[59,114],[177,115],[131,116],[157,117],[158,117],[159,117],[160,117],[161,117],[162,117],[163,117],[164,117],[165,117],[166,117],[167,117],[168,117],[169,117],[173,117],[176,117],[132,117],[133,117],[134,117],[135,117],[136,117],[137,117],[138,117],[139,117],[140,117],[141,117],[142,117],[143,117],[144,117],[145,117],[146,117],[147,117],[148,117],[149,117],[150,117],[151,117],[152,117],[127,118],[126,119],[121,120],[125,121],[123,122],[124,123],[72,124],[129,125],[130,126],[70,127],[128,128]],"exportedModulesMap":[[180,1],[255,2],[183,3],[179,1],[181,4],[182,1],[237,5],[236,6],[238,7],[241,8],[245,9],[247,10],[248,11],[250,12],[251,13],[260,14],[262,15],[264,16],[265,17],[263,18],[266,19],[267,20],[268,21],[269,22],[270,23],[271,24],[272,25],[273,26],[274,27],[275,28],[243,29],[242,30],[184,31],[234,32],[187,33],[188,34],[189,35],[190,36],[191,37],[192,38],[193,39],[195,40],[196,41],[197,42],[198,42],[199,43],[200,44],[201,45],[202,46],[203,47],[235,48],[204,42],[205,49],[206,50],[208,51],[209,52],[210,53],[213,42],[214,54],[215,55],[216,56],[218,42],[219,57],[220,58],[232,59],[222,60],[223,61],[224,62],[226,56],[228,63],[229,56],[291,64],[278,65],[285,66],[281,67],[279,68],[282,69],[286,70],[287,66],[284,71],[283,72],[288,73],[289,74],[290,75],[280,76],[299,129],[302,78],[244,79],[305,80],[118,81],[120,82],[119,81],[117,83],[76,84],[75,85],[80,86],[115,87],[112,88],[114,89],[77,88],[78,90],[82,90],[81,91],[79,92],[113,93],[111,88],[116,94],[83,95],[88,88],[90,88],[85,88],[86,95],[92,88],[93,96],[84,88],[89,88],[91,88],[87,88],[107,97],[106,88],[108,98],[102,88],[104,88],[103,88],[99,88],[105,99],[100,88],[101,100],[94,88],[95,88],[96,88],[97,88],[98,88],[259,101],[257,102],[258,103],[298,130],[295,131],[297,132],[296,131],[294,36],[256,106],[69,107],[61,108],[67,109],[62,110],[65,107],[68,111],[60,112],[66,113],[59,114],[177,133],[131,116],[157,117],[158,117],[159,117],[160,117],[161,117],[162,117],[163,117],[164,117],[165,117],[166,117],[167,117],[168,117],[169,117],[173,117],[176,117],[132,117],[133,117],[134,117],[135,117],[136,117],[137,117],[138,117],[139,117],[140,117],[141,117],[142,117],[143,117],[144,117],[145,117],[146,117],[147,117],[148,117],[149,117],[150,117],[151,117],[152,117],[127,118],[126,119],[121,120],[125,121],[123,122],[124,123],[72,124],[129,125],[130,126],[70,127],[128,128]],"semanticDiagnosticsPerFile":[180,178,252,255,254,183,179,181,182,237,236,238,241,245,247,246,248,249,250,251,260,261,262,264,265,263,266,267,268,269,270,271,272,273,274,275,243,242,276,277,233,184,186,234,187,188,189,190,191,192,193,194,195,196,197,198,199,200,185,230,201,202,203,235,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,232,222,223,224,225,226,227,231,228,229,291,278,285,281,279,282,286,287,284,283,288,289,290,280,292,293,299,300,302,240,239,301,244,303,304,305,118,120,119,117,74,76,75,80,115,112,114,77,78,82,81,79,113,111,116,109,110,83,88,90,85,86,92,93,84,89,91,87,107,106,108,102,104,103,99,105,100,101,94,95,96,97,98,253,259,257,258,298,295,297,296,294,256,11,12,15,14,2,16,17,18,19,20,21,22,23,3,4,27,24,25,26,28,29,30,5,31,32,33,34,6,35,36,37,38,7,39,44,45,40,41,42,43,8,49,46,47,48,50,9,51,52,53,54,55,1,10,56,13,73,69,61,67,63,64,62,65,57,58,68,60,66,59,177,131,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,127,126,121,125,122,123,124,72,71,129,130,70,128],"latestChangedDtsFile":"./src/types/com/atproto/createAccount.d.ts"},"version":"4.8.4"} \ No newline at end of file +{"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/zod/lib/helpers/typealiases.d.ts","../../../node_modules/zod/lib/helpers/util.d.ts","../../../node_modules/zod/lib/zoderror.d.ts","../../../node_modules/zod/lib/locales/en.d.ts","../../../node_modules/zod/lib/errors.d.ts","../../../node_modules/zod/lib/helpers/parseutil.d.ts","../../../node_modules/zod/lib/helpers/enumutil.d.ts","../../../node_modules/zod/lib/helpers/errorutil.d.ts","../../../node_modules/zod/lib/helpers/partialutil.d.ts","../../../node_modules/zod/lib/types.d.ts","../../../node_modules/zod/lib/external.d.ts","../../../node_modules/zod/lib/index.d.ts","../../../node_modules/zod/index.d.ts","../../xrpc/src/types.ts","../../nsid/src/index.ts","../../lexicon/src/types.ts","../../../node_modules/uri-js/dist/es5/uri.all.d.ts","../../../node_modules/ajv/dist/compile/codegen/code.d.ts","../../../node_modules/ajv/dist/compile/codegen/scope.d.ts","../../../node_modules/ajv/dist/compile/codegen/index.d.ts","../../../node_modules/ajv/dist/compile/rules.d.ts","../../../node_modules/ajv/dist/compile/util.d.ts","../../../node_modules/ajv/dist/compile/validate/subschema.d.ts","../../../node_modules/ajv/dist/compile/errors.d.ts","../../../node_modules/ajv/dist/compile/validate/index.d.ts","../../../node_modules/ajv/dist/compile/validate/datatype.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/additionalitems.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/contains.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/propertynames.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/additionalproperties.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/not.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/anyof.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/oneof.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/if.d.ts","../../../node_modules/ajv/dist/vocabularies/applicator/index.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/limitnumber.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/multipleof.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/pattern.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/required.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/uniqueitems.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/const.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/enum.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/index.d.ts","../../../node_modules/ajv/dist/vocabularies/format/format.d.ts","../../../node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedproperties.d.ts","../../../node_modules/ajv/dist/vocabularies/unevaluated/unevaluateditems.d.ts","../../../node_modules/ajv/dist/vocabularies/validation/dependentrequired.d.ts","../../../node_modules/ajv/dist/vocabularies/discriminator/types.d.ts","../../../node_modules/ajv/dist/vocabularies/discriminator/index.d.ts","../../../node_modules/ajv/dist/vocabularies/errors.d.ts","../../../node_modules/ajv/dist/types/json-schema.d.ts","../../../node_modules/ajv/dist/types/jtd-schema.d.ts","../../../node_modules/ajv/dist/runtime/validation_error.d.ts","../../../node_modules/ajv/dist/compile/ref_error.d.ts","../../../node_modules/ajv/dist/core.d.ts","../../../node_modules/ajv/dist/compile/resolve.d.ts","../../../node_modules/ajv/dist/compile/index.d.ts","../../../node_modules/ajv/dist/types/index.d.ts","../../../node_modules/ajv/dist/ajv.d.ts","../../../node_modules/ajv-formats/dist/formats.d.ts","../../../node_modules/ajv-formats/dist/limit.d.ts","../../../node_modules/ajv-formats/dist/index.d.ts","../../lexicon/src/record/schema.ts","../../lexicon/src/record/util.ts","../../lexicon/src/record/validation.ts","../../lexicon/src/record/validator.ts","../../lexicon/src/record/schemas.ts","../../lexicon/src/record/index.ts","../../lexicon/src/index.ts","../../xrpc/src/util.ts","../../xrpc/src/client.ts","../../xrpc/src/index.ts","../src/client/schemas.ts","../src/client/types/com/atproto/account/create.ts","../src/client/types/com/atproto/account/createinvitecode.ts","../src/client/types/com/atproto/account/delete.ts","../src/client/types/com/atproto/account/get.ts","../src/client/types/com/atproto/account/requestpasswordreset.ts","../src/client/types/com/atproto/account/resetpassword.ts","../src/client/types/com/atproto/handle/resolve.ts","../src/client/types/com/atproto/repo/batchwrite.ts","../src/client/types/com/atproto/repo/createrecord.ts","../src/client/types/com/atproto/repo/deleterecord.ts","../src/client/types/com/atproto/repo/describe.ts","../src/client/types/com/atproto/repo/getrecord.ts","../src/client/types/com/atproto/repo/listrecords.ts","../src/client/types/com/atproto/repo/putrecord.ts","../src/client/types/com/atproto/server/getaccountsconfig.ts","../src/client/types/com/atproto/session/create.ts","../src/client/types/com/atproto/session/delete.ts","../src/client/types/com/atproto/session/get.ts","../src/client/types/com/atproto/session/refresh.ts","../src/client/types/com/atproto/sync/getrepo.ts","../src/client/types/com/atproto/sync/getroot.ts","../src/client/types/com/atproto/sync/updaterepo.ts","../src/client/types/app/bsky/actor/getprofile.ts","../src/client/types/app/bsky/actor/search.ts","../src/client/types/app/bsky/actor/searchtypeahead.ts","../src/client/types/app/bsky/actor/profile.ts","../src/client/types/app/bsky/actor/updateprofile.ts","../src/client/types/app/bsky/feed/getauthorfeed.ts","../src/client/types/app/bsky/feed/getlikedby.ts","../src/client/types/app/bsky/feed/getpostthread.ts","../src/client/types/app/bsky/feed/getrepostedby.ts","../src/client/types/app/bsky/feed/gettimeline.ts","../src/client/types/app/bsky/feed/like.ts","../src/client/types/app/bsky/feed/mediaembed.ts","../src/client/types/app/bsky/feed/post.ts","../src/client/types/app/bsky/feed/repost.ts","../src/client/types/app/bsky/graph/follow.ts","../src/client/types/app/bsky/graph/getfollowers.ts","../src/client/types/app/bsky/graph/getfollows.ts","../src/client/types/app/bsky/graph/invite.ts","../src/client/types/app/bsky/graph/inviteaccept.ts","../src/client/types/app/bsky/notification/getcount.ts","../src/client/types/app/bsky/notification/list.ts","../src/client/types/app/bsky/notification/updateseen.ts","../src/client/types/app/bsky/system/declaration.ts","../src/client/index.ts","../../../node_modules/typed-emitter/index.d.ts","../src/session.ts","../src/index.ts","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostic_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/util/types.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/ts3.6/base.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/base.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/bn.js/index.d.ts","../../../node_modules/@types/connect/index.d.ts","../../../node_modules/@types/body-parser/index.d.ts","../../../node_modules/@types/cors/index.d.ts","../../../node_modules/@types/elliptic/index.d.ts","../../../node_modules/@types/range-parser/index.d.ts","../../../node_modules/@types/qs/index.d.ts","../../../node_modules/@types/express-serve-static-core/index.d.ts","../../../node_modules/@types/mime/mime.d.ts","../../../node_modules/@types/mime/index.d.ts","../../../node_modules/@types/serve-static/index.d.ts","../../../node_modules/@types/express/index.d.ts","../../../node_modules/@types/glob/node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/glob/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/@jest/expect-utils/build/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/@sinclair/typebox/typebox.d.ts","../../../node_modules/@jest/schemas/build/index.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/expect/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/jsonwebtoken/index.d.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/minimist/index.d.ts","../../../node_modules/@types/nodemailer/lib/dkim/index.d.ts","../../../node_modules/@types/nodemailer/lib/mailer/mail-message.d.ts","../../../node_modules/@types/nodemailer/lib/xoauth2/index.d.ts","../../../node_modules/@types/nodemailer/lib/mailer/index.d.ts","../../../node_modules/@types/nodemailer/lib/mime-node/index.d.ts","../../../node_modules/@types/nodemailer/lib/smtp-connection/index.d.ts","../../../node_modules/@types/nodemailer/lib/shared/index.d.ts","../../../node_modules/@types/nodemailer/lib/json-transport/index.d.ts","../../../node_modules/@types/nodemailer/lib/sendmail-transport/index.d.ts","../../../node_modules/@types/nodemailer/lib/ses-transport/index.d.ts","../../../node_modules/@types/nodemailer/lib/smtp-pool/index.d.ts","../../../node_modules/@types/nodemailer/lib/smtp-transport/index.d.ts","../../../node_modules/@types/nodemailer/lib/stream-transport/index.d.ts","../../../node_modules/@types/nodemailer/index.d.ts","../../../node_modules/@types/normalize-package-data/index.d.ts","../../../node_modules/@types/parse-json/index.d.ts","../../../node_modules/pg-types/index.d.ts","../../../node_modules/pg-protocol/dist/messages.d.ts","../../../node_modules/pg-protocol/dist/serializer.d.ts","../../../node_modules/pg-protocol/dist/parser.d.ts","../../../node_modules/pg-protocol/dist/index.d.ts","../../../node_modules/@types/pg/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true},{"version":"3260e3386d9535b804205bdddb5618a9a27735bd22927f48ad54363abcd23d45","affectsGlobalScope":true},{"version":"adb09ec0a64fc17dbbc4a228b3b18aa5f01db3440a6b0cbb02354df58674d584","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"9afae14803f3b7343ed6d193173008715c1fa3421a353a818c805244ed737a84","bb98c05ae5cb9bd7cb7ad76fe517251a661787a6f24337b842f47faf393f79c7","a93bf95f7009c90e7d1edb092560d4052e3ebbe9b9ad2d796bcd95dc4306825c","8485b6da53ec35637d072e516631d25dae53984500de70a6989058f24354666f","ebe80346928736532e4a822154eb77f57ef3389dbe2b3ba4e571366a15448ef2","c2cb3c8ff388781258ea9ddbcd8a947f751bddd6886e1d3b3ea09ddaa895df80","f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","014b34d4c2ef27191fdf3feabb6557ec92127f813910725b6e79ed9a49e466b6","72efc3e8cee3cb13144cb63bb8aacf28f918439a2ff222de89e0e5d7ba9c7170","b61efb129c7011068cb4ccbbd86d5741ac82653476b09f46d3d06dd99b5b687e","2b7961486503fa279a4f1a52928d8c31fc6558c335b750878721467210552dd7","d1f62988c7e8e8650f7ed39520a766648155abbf75dd89f60e24f069433301d4","5568d7c32e5cf5f35e092649f4e5e168c3114c800b1d7545b7ae5e0415704802","156b9be8718e5157c84f4ca2163a48f9a8334e4477b945694c882ab89fd3382d","6acd34fce3c170380832d5bd6fb7b9fe77ea637244f7dd098cfb1a728fb430f1","92cd02d214c12c4d452ccb5ecd2a42ee58520f9d8611d99a34fd148d5ca6a480","9f3c5498245c38c9016a369795ec5ef1768d09db63643c8dba9656e5ab294825","44a8d350600656882fd7462774e32e8d13788313ba2e36d2e8d5437ac91b98df","60bb0e47502bf8716d1230288b4e6387c1d34cded12752ab5338108e2e662e67","b8870b5155d11a273c75718a4f19026da49f91c548703858cd3400d06c3bd3b8","b3ae4ded82f27cabba780b9af9647f6e08c9a4cabe8fbb7a0cca69c7add9ef4b","8d26ae32e5c9c080e44aee4a67e5ef02b5fda0604e6fecbb7b753c537e5282d9","05c4e792dae38912ba333725cdf8c42d242337d006c0d887f4ce5a7787871a95","cd44995ee13d5d23df17a10213fed7b483fabfd5ea08f267ab52c07ce0b6b4da","58ce1486f851942bd2d3056b399079bc9cb978ec933fe9833ea417e33eab676e","1a23b521db8d7ec9e2b96c6fbd4c7e96d12f408b1e03661b3b9f7da7291103e6","d3d0d11d30c9878ada3356b9c36a2754b8c7b6204a41c86bfb1488c08ce263b0","a6493f1f479637ed89a3ebec03f6dc117e3b1851d7e938ac4c8501396b8639a8","ae0951e44973e928fe2e999b11960493835d094b16adac0b085a79cff181bcb9","9d00e3a59eff68fa8c40e89953083eeaad1c5b2580ed7da2304424b249ecb237","1609ad4d488c356ee91eba7d7aa87cc6fb59bc8ac05c1a8f08665285ba3b71ad","8add088f72326098d68d622ddb024c00ae56a912383efe96b03f0481db88f7c9","dd17fe6332567b8f13e33dd3ff8926553cdcea2ad32d4350ce0063a2addaa764","4091d56a4622480549350b8811ec64c7826cd41a70ce5d9c1cc20384bb144049","353c0125b9e50c2a71e18394d46be5ccb37161cc0f0e7c69216aa6932c8cdafb","9c5d5f167e86b6ddf7142559a17d13fd39c34e868ae947c40381db866eed6609","4430dea494b0ee77bf823d9a7c4850a539e1060d5d865316bb23fb393e4f01d7","aae698ceead4edad0695b9ea87e43f274e698bdb302c8cb5fd2cab4dc496ccf0","51631e9a0c041e12479ab01f5801d8a237327d19e9ee37d5f1f66be912631425","c9d5d8adb1455f49182751ce885745dcc5f9697e9c260388bc3ae9d1860d5d10","f64289e3fa8d5719eaf5ba1bb02dd32dbbf7c603dda75c16770a6bc6e9c6b6d9","b1aa0e2e3511a8d10990f35866405c64c9e576258ef99eeb9ebafed980fd7506","2d255a5287f2fb5295688cb25bd18e1cd59866179f795f3f1fd6b71b7f0edf8f","43c1dbb78d5277a5fdd8fddce8b257f84ffa2b4253f58b95c04a310710d19e97","6c669d7e080344c1574aa276a89e57c3b9f0e97fab96a09427e7dfb19ca261bf","b71ac126853867d8e64c910f47d46d05c5ea797987d2604f63d401507dc43b6d","9a37238558d28b7ee06d08599e92eab30b90704541cc85e6448009d6d55fffa9","120b14d66a061910309ff97e7b06b5c6c09444218178b80b687a92af4d22d5dc","3de958065e3a44cbe0bfa667813bc59c63e63c9ce522af8dc1b64714910fa9ba","66e655f7c43558bae6703242cbd6c0551a94d0a97204bd4c4bbf7e77f24d1f85","72f7b32e023814078046c036ed4b7ad92414be0aebb63e805c682e14103ae38a","a89d8e67966d085ff971c9900cfa1abdd9732bab66d9c1914ecc15befdf8623d","7dfd0308261bb91b058eb91802690fe3f09192b263e070a19df4d629df29e265","608eb9d411ac76e93a10e05f8aae92b3a5cefc87594219b737df7c8737ba2bd7","cde493e09daad4bb29922fe633f760be9f0e8e2f39cdca999cce3b8690b5e13a","3d7f9eb12aface876f7b535cc89dcd416daf77f0b3573333f16ec0a70bcf902a","93ba4ac36f570c70a12d588e21c10dda9f351fad3e77d416952acddb27bff01d","8750f9dc1e277ffff7446c95571bae61aca0984e8f99e40fc1e8cb7161ae0642","66408d81ba8962282b1a55da34c6bd767105141f54d0ba14dca330efe0c8f552","7481b9d93ca44eb1f689e0b939545ff00dead7bdb9daba401dfb74292d83f831","821e64ddbdfa10fac5f0aed1c1d4e1f275840400caa96357ddfd15d02e5afba1","18992725cbd51b0846132ec46237bc7de4da1db440deb66a6242e2de8715dcfb","44f29187cfbc7aa4a6109204c8e5186509abc3b78874a2ee1498c51ab50f0f62","19ab78c1376c16e18c5b87dfa750813c935f0c4ce1d6ef88058ec38f9cf5ef08","c0f25c51a92ee4f072fe67057ec72ee72be2276c399a7d340ae944288a092fb6","3fc561fc6dd4088e53223a9bba7bebcf90246b2b21e54237dcce9e617c04d70f","01c8a2c0aa144ee6505d55074a1b9e6813f7b17a5d6fa82d1d915e6656b7299a","68d9a2010c776483645395ab9aa68d0546b9dcc79c37a9ebee4b6b5337c3582b","4d9a72ac7a6f2d3235ff8540ec294718801334df5b75aead03ebb52d3dc6a7ae","268018220f99e806d122d436ca95f86ae618eb75a9b646dc83141f11e35012a9","931b618b5058642415cd17e548b22e60795458fbd16d0a3eccab1d91c2ae8a80","7f6b8a99f64d652a30c7f448daafc9bd23b4c5706331c3046545de89c69bce3a","c27f493f12899bbba8390c628a48048b513c685102723232ede77c8701c115a7","dc8bd2d3fdede21907b93d1b962354779cdae08f83205f4507b639f0f69a29a2",{"version":"2126910387abf757b2d9f99832b77d962db2a1d98a507c9bac058380fd415b61","signature":"816f3ece5467af8c068fd508a73e0d1dde658ec538b961773c25e01c29ef92ef"},{"version":"93f4d53df4ef8ed9d58dc0e4b9d5eb5f827f972ec3f26020051f6fa5e04892d0","signature":"7d1559cecbd2ed0f93ea76305e2d0111b24eec4af155ca8df72136b0f80c2381"},{"version":"5abd712355b573ad1ffb76dff84e9ca25bbf0d99f8d08d9b2e3d49e240dc4268","signature":"4ab9da28d3de01deedf4c261fee8039b4b680079941d87fe4cf7d33117736e46"},{"version":"50e95f9d12fe8e17eec63b8a554172d359cf1fd81cf03978c96d53db46bdb35a","signature":"7e6dacdb09d56e0ccf69a1af3b4f4413ac044fbf3ab54258afc181ad177d1abe"},{"version":"81b8d8b9e2b1ef3036e0c43d4f9c3b1a590cdf4cd697b13006092c191a0c85ca","signature":"0cea6dd85fa33a467793b281ba1a70d02b5d27f968d5589c64d01845e0c123c0"},{"version":"eefd4f5c8123c786fbc89732aa30770eae99e8dbf1c4d3c3f01a8a1f18803eac","signature":"42249b647d343ef5dd579073f3bba0e1dca7c2e40e1d51e3c999fbae61a20220"},{"version":"b2ba179c4f14e3da5831e7311d010fb65c0602b0c6ec882d8552f0559fc7ec30","signature":"09f62d438f707eb5a2f8807c06127c497a0b779bf4954df50d0f59ff9da687c0"},{"version":"6c39644e06bdf365b3071b8cff1982aad663ce3ae9aead4137b3942446d09f4a","signature":"3a86b150fea5b41c6f44c1743aa63244a7705ccf1afdcab902f7558164d0f704"},{"version":"a69019b0a76e2f4d8d0a682231d427c005b6b5f6df031ccc094e8971f0312900","signature":"3a3cb2000ebb020c6b32147a8d250911b140dae437539a3dc251614039eea269"},{"version":"3caf531fefb43eaf24dbf6f4356d198109cf04f62cef2004aca07c372938eb9b","signature":"a88c0f70184f4ca5379ea9cc024192dbda3ced7b1011f9af7f266fcd3846e782"},{"version":"327226455267a368c221ab4b9bb557dc73892f58fc0d7a4521c238fdc8e443c9","signature":"f7f1a876f36691dc4807c39efcb0da08f01c5ef628259630f55585e432468ff8"},{"version":"33dd8e6bd57897832102c7cff423f4708c6847dfc4f55cc8782d6ee7394fe85c","signature":"5e04307a1d7c420aacd54373787d0d0c127393b3deead3759fae756ecf84e779"},{"version":"dc46798232c9618907215e67f2001bbfd3e3de92392f5a0989b6ef5874676a48","signature":"42ecf1fc8f0d0c59a7747acbf897db15ad1f4e75c3a4abb6bfdbe428e1819463"},{"version":"ec0c5feb73b0e0b6bcc69175ca5d60d9c943987799762a309e2d5202a3b23cb1","signature":"70493669bccf8d21cc5fc3b97d19f359cf184ffceb79a9870441ec7a4a0427c2"},{"version":"958925c8a2fc190d0306526f0b9879fcf99ec7fed39e340369c61ee79f31e81c","signature":"43ae376c1b529717ae6d11f86e6f46b2cfe214039ea12c1e22c656c36dc8e6af"},{"version":"7a673c77fe0ac75df51eca6826532993f1067656666b372a07617eefdc7ab529","signature":"b36519eee8c2a70b4fe0ca16fb59804d6525c9e33d3d89d1e6252404fd527de3"},{"version":"075fd0c5d7abcc9117d7fbff3a58c3d9f6977238190114d743957f61f50cf9d7","signature":"510b1c5b884d83f23add599ceedc84f4da7fe24d68b5832d83520d96fef4e7dd"},{"version":"b2ad99dad84bf265ace5d69c9f419fc03f4d184f7460077d8cfc2db772b38916","signature":"44c43360cbdd9e4ccdc046e3bcaee1a5d6a43989d26fc7e6351f138227f18ba9"},{"version":"27266928f23cad4312753ba2f413948dc4e1b214f357931c81aeb99d05f8c908","signature":"2cb450a7ae32d77b2a45c680f4e21558b2af05b04e1d6a720f3bc0773a1221fa"},{"version":"c2e8f53c059301cb5d83b60d3e9e23bc3b14cfa1f5ef3aefecf522931ab23679","signature":"3bcfa904f5c88da7bbf67d995c2f9b694fea787498ba637ef18eff4c784b112f"},{"version":"f1da8679c263c0c8fa30af4b273d23ed202ad5e423bcbda42b4a83e282bd4981","signature":"6d91bcd052d66fe405a659005bd0ee858cfddd738e9efb5ff473274b51f96857"},{"version":"54242a6c38316c72cac21a45e1acbb9b9821d16622ede42ae669bf53303f6183","signature":"ad486dfb188b38e1438df92768321062f13bf65ec79c59cb78dd880d288dea9e"},{"version":"e03bdde285fb044a542e27f9dd1a4fa5cb24f0a7309db55204dbe096210137b3","signature":"078a4805cc7c5fb074af2ef60efe4764902e837b62103a70849650e90ce212a2"},{"version":"5aec4cc7c5e9a30c16f0ceea1f5bc7e0e78609d3e168b3f43772b0c74df88f30","signature":"6ce149e2c333b1f93338a05fbd7eed158f006707ed53e82b3a1b8ef943425579"},{"version":"56a4aceea8cfe172a6f362424925e104b593a2939999caab6b7b1d7f64a261b3","signature":"f82483cc86564f77318502ddd89a3efa7db5ae8c5dff106988ed213ac750f584"},{"version":"84cd8ebf254de831dc71a09da172e30f53906266720272c9be91915fdba30298","signature":"37d22ca6a8f122e6baca26c391fbd24cef5e52dbe71463ceebf61ec97d06ac2c"},{"version":"c09dde9afd115a446b25f3e212758a2aebd0a950012ce592a549700d05f71acf","signature":"5b4755ce01281771d7d3b4e0d4f6f502e043d7fd4909bc52993f40e609b82985"},{"version":"f5016e3dd4fc93259026e4c892181f5533f6b2da1afe09dd75744d52f5fdad3b","signature":"c46265ca373cba8a32053875f6b88ec18ab3025df8aa38857d805bf7bd11761d"},{"version":"6f3b868b0b090ccd7cc0860c768ee34c1587d422105b5ba5dfc15bdc6fb46b2a","signature":"20784071a306bfb09d8af86acb37e324bd1ad1c0f6a06c410344d59ae4d7df1d"},{"version":"3cb97caa990c622185179a3e00e417f12ca6d0e03673a15046cdc890789d091d","signature":"3e8cfa471710db7e9dff782ea3fd95338d40f1508d51b383afbdaa45ccfa7c88"},{"version":"2dea555f30752e96c812fcb2d8c8be3696a9ea72062c45a16c4e9bd705fd5051","signature":"549a62635fb8a743b578e33697a95a4faa78d65c638cd21993ed840967549488"},{"version":"8006bf07371033c629a0ddf5d330ca7079771644e20a3ddf983d6ef14ba12b90","signature":"167e26cc75872ef0ce92b736570441837a197ec3b6b21616a5f835e349b8912d"},{"version":"4e31724e43728fb89bc01ff1f1a0586264e71b841bfa01fe421cb592fbd7d735","signature":"d2878e5f5a70eea4fbe2c00f1f9b8ef75415375eb3032e49c467d7b05f938e01"},{"version":"e0ee75d1f0cb5204e8f9dfeb7f1c162df90498d37888876b1cd50d28b432545b","signature":"7670420ebb619f5549e646f47086bb60ef4062f37e873a5238793650f39723ba"},{"version":"c3c829aae891ac7ee988d0733a06e8d6b130f45ae4a3973892d93f6b97825699","signature":"22a699c4613866244d4feb310a3ee112fe1f171604ace3b1affa487e2de3d9b9"},{"version":"7f96e41a9a768a221400837aa7353ed3455a5662a36978ead3086f383f5fa2ba","signature":"f694aa6c05e7b1432712f86982c12a788cea13d1c1cf2e43bc22bf2a7299e631"},{"version":"e0ee75d1f0cb5204e8f9dfeb7f1c162df90498d37888876b1cd50d28b432545b","signature":"7670420ebb619f5549e646f47086bb60ef4062f37e873a5238793650f39723ba"},{"version":"9126a581dccf0c6c06186f53e305c5d17106cccd7c9fdacfc3c124f3c324d041","signature":"8eec420d090293a78898ac24ef0f5607860e8a14480844799c5b6e0f5f02a6dc"},{"version":"582b98798b87c941d6da75c317cc466376263fa0f8ae6cfd52c63d83ac82d0ab","signature":"d4359fa6ced9fe8dc7b8de98a0bfb1e19956902019138fc49a826a09599c7e83"},{"version":"de8f2d065bff4f1f0d5f520b46250db6534e042615a5f310288c9dc69223e33d","signature":"32ac720d6a3c96fab27af32fe956143c2e0c4305393101ae8514ab78d1020de6"},{"version":"72d13196c8e879eaa27839e8eed499eda5e0d40e144a45e99cea5c9d7b9c5bd2","signature":"dbaf6293e4ffe33fd23ada46e860ed9dde2512e13d9f5c55ffd5b5350e605048"},{"version":"e6f1c97dc0162c0afdc1f192d8bffeac90ebfaaf3b94846b97e2f3c010b8b1fe","signature":"a590b63dc30ac64f9c86e861fbf6a8ace64b802e7294f07e79426431477e48ff"},{"version":"a11ada4ddb5747bafcb059ef34d0a025c1739a13330583635ea68fc4fe58ea90","signature":"a69bc1b06a11288177a9819e920ce332242546af0ed69e29c0c4907fa044fb71"},{"version":"8bc0c852d1e54c35b7d1cd3c37ec1d5dcdd4eaa6296ae2f6734bcdcd889c33a8","signature":"2ec6c4784c8f349f6362e10c34b8209c4785ea361a45fd82a4d0e536afcdb330"},{"version":"34dd925e9e7bd4f5c2990d7589ac066560e7668c86ccf495c243e88bff6dfab2","signature":"0ba967758e6b03447d645dec5fa01f8454db91acb43bc28df27182692837e315"},{"version":"563a4144f1f98a8f6ec9956da80b2403f3e8cd8b2672fa5ea3653a53f14d1131","signature":"d6e8f417ab9a4b6aec8a5a3ced95259ef5133e4601c508a51308eaaac479b6ca"},{"version":"7707e25b0d033f36264b593a1b64b428f5f19a8f79ef19b373bb42d1510c3fe9","signature":"f7ccb80e0f180ffc44393c6ef1b86baaabf7eeb94005b49a52a27c8f6a245dd7"},"6c27d4b5ba01295ef334456d9af4366aca789f228eee70fcb874b903a59b0e5b",{"version":"d2917c1370f3d1859c884ba3726d63c14fa3086a0c8671d311b08810e557dd22","signature":"18f168653a953e3bf0ed315e79413969de4c6fcff7add51c8b2005eda2a07cb2"},{"version":"a0f41c123f2d733f503fa755bb2d029aa461364ba103b87f27685ff447835d34","signature":"914fc0941912b62e2f6a03a59ab61b2eae9d4c5a9d5f2728ad47a5b5021b5d6f"},"c561efdf5ba0b62619745d4761fe2d9756f23db972e039367d15922fed67fd2f","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","7ec238b220ea991b6643e24191b1f552a65956d5f6de4c6144e700b9985265d8","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","dae3d1adc67ac3dbd1cd471889301339ec439837b5df565982345be20c8fca9a","5426e62886b7be7806312d31a00e8f7dccd6fe63ba9bbefe99ee2eab29cc48a3","c7bdc99177a2a94d25fb13722adaaf5b3291bf70b4d1b27584ba189dd3889ba3",{"version":"d1c92b66c4105659fcad4eb76a1481f7311033e117d0678a1ec545e8ddb8d4c6","affectsGlobalScope":true},"e23424b97418eca3226fd24de079f1203eb70360622e4e093af2aff14d4be6ec","dee93c07b4df5e26010dc9ec4cdf4d6e4076bb4474d2a8371529217c8b2740a4","ed40f2f184db052dc8df62d1f199823c8bbccc487c0a2a7c54eeea0badcf4378","04eaa93bd75f937f9184dcb95a7983800c5770cf8ddd8ac0f3734dc02f5b20ef",{"version":"c8155caf28fc7b0a564156a5df28ad8a844a3bd32d331d148d8f3ce88025c870","affectsGlobalScope":true},"45ac321f2e15d268fd74a90ddaa6467dcaaff2c5b13f95b4b85831520fb7a491","dfc747ab8dd5f623055a4c26fd35e8cceca869fd3f1cf09701c941ca3679665a","c9f5f2920ff61d7158417b8440d5181ddc34a3dfef811a5677dd8a9fb91471e9","5cc0a492da3602510b8f5ed1852b1e0390002780d8758fbc8c0cd023ca7085f8","ec7dafafe751a5121f8f1c80201ebe7e7238c47e6329280a73c4d1ca4bb7fa28","64debeb10e4b7ae4ec9e89bfb4e04c6101ab98c3cc806d14e5488607cfec2753",{"version":"2866a528b2708aa272ec3eaafd3c980abb23aec1ef831cfc5eb2186b98c37ce5","affectsGlobalScope":true},{"version":"a5782d6cea81fe43d2db7ed41e789458c933ab3ab60602f7b5b14c4da3370496","affectsGlobalScope":true},"f258ba66915f0196ec344bc53afe1888240bbcc855ebd151b6cc072275533319","6194335ee3353f7226ba31f31d6301d0c6be87228419c0a08976ccd9d4f1213e","3ac12a54cfaa84683506db8d4cf779135a271d9f0ec18930cf53e61fbeea0c5d","cf3d3b087d1a8a3355eec47d206162c75e912315b9b5c1cd49fda93e948fb80a","36f316c066c4a72dd6f19fec49a074f935744fc9ccbe75c87ebc07fb2feb9062","42176966283d3835c34278b9b5c0f470d484c0c0c6a55c20a2c916a1ce69b6e8","0cff7901aedfe78e314f7d44088f07e2afa1b6e4f0473a4169b8456ca2fb245d","ec70fd6f8a9a83f850dab2960a6789e93d5b034b354a16814cad5daabf62a360","e2236264a811ed1d09a2487a433e8f5216ae62378cf233954ae220cf886f6717","3ec1e108d587a5661ec790db607f482605ba9f3830e118ce578e3ffa3c42e22b","100b3bb9d39d2b1b5340f1bf45a52e94ef1692b45232b4ba00fac5c3cc56d331",{"version":"04fe7e7d8008887943260af1fde2bfd4877e0dc57bf634e0f0b2f3d1794dfd11","affectsGlobalScope":true},"7f77304372efe3c9967e5f9ea2061f1b4bf41dc3cda3c83cdd676f2e5af6b7e6","992c6f6be16c0a1d2eec13ece33adeea2c747ba27fcd078353a8f4bb5b4fea58","2597718d91e306949d89e285bf34c44192014ef541c3bd7cbb825c022749e974","a6b0abdb67d63ebe964ba5fee31bc3daf10c12eecd46b24d778426010c04c67e","ac4801ebc2355ba32329070123b1cd15891bf71b41dcaf9e75b4744832126a59","fd2298fba0640e7295e7bd545e2dfbfcccbb00c27019e501c87965a02bbdebf6","4fd3c4debadce3e9ab9dec3eb45f7f5e2e3d4ad65cf975a6d938d883cfb25a50","71ddd49185b68f27bfac127ef5d22cb2672c278e53e5370d9020ef50ca9c377d","b1ea7a6eaa7608e0e0529aebd323b526a79c6c05a4e519ae5c779675004dcdf1","9fcb033a6208485d8f3fadde31eb5cbcaf99149cff3e40c0dc53ebc6d0dff4e9","7df562288f949945cf69c21cd912100c2afedeeb7cdb219085f7f4b46cb7dde4","9d16690485ff1eb4f6fc57aebe237728fd8e03130c460919da3a35f4d9bd97f5","dcc6910d95a3625fd2b0487fda055988e46ab46c357a1b3618c27b4a8dd739c9","f4149f1aa299474c7040a35fe8f8ac2ad078cc1b190415adc1fff3ed52d490ea","3730099ed008776216268a97771de31753ef71e0a7d0ec650f588cba2a06ce44","8d649dbc429d7139a1d9a14ea2bf8af1dc089e0a879447539587463d4b6c248c","60c9e27816ec8ac8df7240598bb086e95b47edfb454c5cbf4003c812e0ed6e39","e361aecf17fc4034b4c122a1564471cdcd22ef3a51407803cb5a5fc020c04d02","4926467de88a92a4fc9971d8c6f21b91eca1c0e7fc2a46cc4638ab9440c73875",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"fc0ae4a8ad3c762b96f9d2c3700cb879a373458cb0bf3175478e3b4f85f7ef2f","fabbec378e1ddd86fcf2662e716c2b8318acedb664ee3a4cba6f9e8ee8269cf1","b3593bd345ebea5e4d0a894c03251a3774b34df3d6db57075c18e089a599ba76","e61a21e9418f279bc480394a94d1581b2dee73747adcbdef999b6737e34d721b","efd55e8ca79171bf26c0d0e30221cb8ee1f5a31dd0c791ec4b2e886f42bab124","01f7828047b5c6703d3c601473618b448f5506a88fcac852638b0715c3abf4eb","6d829824ead8999f87b6df21200df3c6150391b894b4e80662caa462bd48d073","afc559c1b93df37c25aef6b3dfa2d64325b0e112e887ee18bf7e6f4ec383fc90","6fbd58e4015b9ae31ea977d4d549eb24a1102cc798b57ec5d70868b542c06612","b8a427b9fe88504a6fb092e21adfe272d144394a2ced7f9e4adc3de7efa6e216","16d51f964ec125ad2024cf03f0af444b3bc3ec3614d9345cc54d09bab45c9a4c","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc",{"version":"ae3fe461989bbd951344efc1f1fe932360ce7392e6126bdb225a82a1bbaf15ee","affectsGlobalScope":true},"5b9ecf7da4d71cf3832dbb8336150fa924631811f488ad4690c2dfec2b4fb1d7","951c85f75aac041dddbedfedf565886a7b494e29ec1532e2a9b4a6180560b50e","f47887b61c6cf2f48746980390d6cb5b8013518951d912cfb37fe748071942be","15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","963d59066dd6742da1918a6213a209bcc205b8ee53b1876ee2b4e6d80f97c85e","fd326577c62145816fe1acc306c734c2396487f76719d3785d4e825b34540b33","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","763e521cf114b80e0dd0e21ca49b9f8ae62e8999555a5e7bade8ce36b33001c2","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","3e6bbb0883148627ca0854a9f62d820aaf1a0f1842f5568176721fef156b8f23","ffcc5500e77223169833fc6eb59b3a507944a1f89574e0a1276b0ea7fc22c4a4","22f13de9e2fe5f0f4724797abd3d34a1cdd6e47ef81fc4933fea3b8bf4ad524b","e3ba509d3dce019b3190ceb2f3fc88e2610ab717122dabd91a9efaa37804040d","cda0cb09b995489b7f4c57f168cd31b83dcbaa7aad49612734fb3c9c73f6e4f2","f72f8428f3c1caa22e9c247d046603b85b442c0dae7b77a7a0bc092c18867cb7",{"version":"195f63105abc03e72b6a176e3e34dfb5ac932b55db378fdc7874b1617e24b465","affectsGlobalScope":true},"f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6","bb4ed283cfb3db7ec1d4bb79c37f5e96d39b340f1f4de995c4b0b836c8d5fa05","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","fe4a2042d087990ebfc7dc0142d5aaf5a152e4baea86b45f283f103ec1e871ea","d70c026dd2eeaa974f430ea229230a1897fdb897dc74659deebe2afd4feeb08f","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","febf0b2de54781102b00f61653b21377390a048fbf5262718c91860d11ff34a6","6702a1cd8818cb22ee95c85dcf2c31c117bde892e1afd2bc254bd720f4c6263c","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","7a79ca84e4370ed2e1afaa99ff7d25194901916b7672e977d16f77af3b71342f","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3cf0d343c2276842a5b617f22ba82af6322c7cfe8bb52238ffc0c491a3c21019","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9",{"version":"f2eff8704452659641164876c1ef0df4174659ce7311b0665798ea3f556fa9ad","affectsGlobalScope":true},"8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05","bb654d426b82e0846cd4bd7de91d637039ecdfd63c94447373490178f80846fe","db90f54098b237753ac9c846e39cd49aa538dcad07a2e1c68a138f3c0f8e621d","92ad68795c32309fb43576cacb38bd2677deeed38f5730dcd4a8c5e65463ae15","4b16417aab5a4b276fd4a7db95120a8c7b4d49a6d68ddfe075e9f46dcbf22f00","eecb2ea10a1500dcc6bdeff14be1fb43806f63a9b8562e16e1b4fc8baa8dfa8d","221a6ab66d611349faaf80af49c7a34d95623787610fd153fed4da0811abdcae","f3d84d6f83cf131e4db335dc8100898adbeb01dd4cf4e2fe695ab220eac98be4","6521aaade4e1d23cbc4b665083b004aeaca23f3347ba2422f88d1828968a0056","e79130cf2ba010f2b79747bf43b086252ad041b130768331a1144c0a86185877","e9709ed827c40789c669736fc78e2ab603605e8e81325d1e6d7a5eb451810dd0","dafce7a7b279977940b6b4b50017625e4f922f73094433d2875994bdc0b27e87","6fc76efbb61d3336833ef44ff3f37552667f26c2a73b368f3b4b259f19f2c234","479496e5bb48f2f5e981ef646665bc09fd9ab080e86e9ea882ca4369411604af","6c559dee3c6251c261b67df08e01d4cbc89cbd7a63300150c636705733cebfff","6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","f60e3e3060207ac982da13363181fd7ee4beecc19a7c569f0d6bb034331066c2","17230b34bb564a3a2e36f9d3985372ccab4ad1722df2c43f7c5c2b553f68e5db","87ed0f84f0691d5c724b23159db96342e6b04ac69201b02c65936f4281ce1fbe","13868c5792808236b17dfe2803eafce911ea4d09d3b2fda95391891a494f988f","0dfe35191a04e8f9dc7caeb9f52f2ee07402736563d12cbccd15fb5f31ac877f","fa5c2d3fcd8e227e180815df0a0903ed4b116400452af8a75ac5b68e5e1de9da","93c4fc5b5237c09bc9ed65cb8f0dc1d89034406ab40500b89701341994897142","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","28288f5e5f8b7b895ed2abe6359c1da3e0d14a64b5aef985071285671f347c01"],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":1,"module":1,"noImplicitAny":false,"outDir":"./","removeComments":true,"skipLibCheck":true,"sourceMap":true,"strict":true,"strictPropertyInitialization":false,"target":7},"fileIdsList":[[181],[259],[181,182,183,184,185],[181,183],[238],[204,238,240],[204,238],[204],[239],[201,204,238,244,245],[241,245,246,249],[201,202,238,251],[202,238],[254],[255],[261,264],[268,270,271,272,273,274,275,276,277,278,279,280],[268,269,271,272,273,274,275,276,277,278,279,280],[269,270,271,272,273,274,275,276,277,278,279,280],[268,269,270,272,273,274,275,276,277,278,279,280],[268,269,270,271,273,274,275,276,277,278,279,280],[268,269,270,271,272,274,275,276,277,278,279,280],[268,269,270,271,272,273,275,276,277,278,279,280],[268,269,270,271,272,273,274,276,277,278,279,280],[268,269,270,271,272,273,274,275,277,278,279,280],[268,269,270,271,272,273,274,275,276,278,279,280],[268,269,270,271,272,273,274,275,276,277,279,280],[268,269,270,271,272,273,274,275,276,277,278,280],[268,269,270,271,272,273,274,275,276,277,278,279],[247],[248],[236],[235,236],[190,195],[201,202,209,218],[191,201,209],[227],[195,202,210],[218,223],[198,201,209],[199],[198],[201],[201,203,218,226],[201,202,218],[209,218,226],[201,202,204,209,218,223,226],[204,218,223,226],[237],[226],[198,201,218],[211],[189],[225],[216,227,230],[201,219],[218],[221],[195,209],[187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234],[209],[215],[228],[190,195,201,203,212,218,226,230],[238,284,286,290,291,292,293,294,295],[218,238],[201,238,284,286,287,289,296],[201,209,218,226,238,283,284,285,287,288,289,296],[218,238,286,287],[218,238,286,288],[238,284,286,287,289,296],[218,238,288],[201,209,218,223,238,285,287,289],[201,238,284,286,287,288,289,296],[201,218,238,284,285,286,287,288,289,296],[201,218,238,284,286,287,289,296],[204,218,238,289],[201,218,223,238,299,300,303,304],[204,238,248],[307],[117],[117,118,119],[76,77,81,108,109,113,115,116],[74,75],[74],[76,116],[76,77,113,114,116],[116],[73,116,117],[76,77,115,116],[76,77,79,80,115,116],[76,77,78,115,116],[76,77,81,108,109,110,111,112,115,116],[73,76,77,81,113,115],[81,116],[83,84,85,86,87,88,89,90,91,92,116],[106,116],[82,93,101,102,103,104,105,107],[86,116],[94,95,96,97,98,99,100,116],[257,263],[261],[258,262],[238,300,301,302],[218,238,300],[260],[68],[59,60],[57,58,59,61,62,66],[58,59],[67],[59],[57,58,59,62,63,64,65],[57,58,68],[130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176],[127],[130],[177,179],[130,147,150,177,178,201],[72,126],[121,123,124,125],[72,117,120],[72,121,124],[117,121],[117,120,121,122,123,125],[69,71],[70,127,128],[70,129],[69],[70,127],[130,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176],[130,177,178]],"referencedMap":[[183,1],[260,2],[186,3],[182,1],[184,4],[185,1],[239,5],[241,6],[240,7],[242,8],[243,9],[246,10],[250,11],[252,12],[253,13],[255,14],[256,15],[265,16],[267,5],[269,17],[270,18],[268,19],[271,20],[272,21],[273,22],[274,23],[275,24],[276,25],[277,26],[278,27],[279,28],[280,29],[248,30],[247,31],[187,32],[237,33],[190,34],[191,35],[192,36],[193,37],[194,38],[195,39],[196,40],[198,41],[199,42],[200,43],[201,43],[202,44],[203,45],[204,46],[205,47],[206,48],[238,49],[207,43],[208,50],[209,51],[211,52],[212,53],[213,54],[216,43],[217,55],[218,56],[219,57],[221,43],[222,58],[223,59],[235,60],[225,61],[226,62],[227,63],[229,57],[231,64],[232,57],[296,65],[283,66],[290,67],[286,68],[284,69],[287,70],[291,71],[292,67],[289,72],[288,73],[293,74],[294,75],[295,76],[285,77],[304,78],[249,79],[308,80],[118,81],[120,82],[119,81],[117,83],[76,84],[75,85],[80,86],[115,87],[112,88],[114,89],[77,88],[78,90],[82,90],[81,91],[79,92],[113,93],[111,88],[116,94],[83,95],[88,88],[90,88],[85,88],[86,95],[92,88],[93,96],[84,88],[89,88],[91,88],[87,88],[107,97],[106,88],[108,98],[102,88],[104,88],[103,88],[99,88],[105,99],[100,88],[101,100],[94,88],[95,88],[96,88],[97,88],[98,88],[264,101],[262,102],[263,103],[303,104],[300,5],[302,105],[301,5],[261,106],[69,107],[61,108],[67,109],[62,110],[65,107],[68,111],[60,112],[66,113],[59,114],[177,115],[131,116],[154,117],[155,117],[156,117],[158,117],[159,117],[160,117],[161,117],[162,117],[163,117],[169,117],[170,117],[173,117],[174,117],[175,117],[132,117],[133,117],[134,117],[135,117],[136,117],[137,117],[138,117],[139,117],[140,117],[141,117],[142,117],[143,117],[144,117],[145,117],[146,117],[147,117],[148,117],[149,117],[150,117],[151,117],[152,117],[153,117],[180,118],[179,119],[127,120],[126,121],[121,122],[125,123],[123,124],[124,125],[72,126],[129,127],[130,128],[70,129],[128,130]],"exportedModulesMap":[[183,1],[260,2],[186,3],[182,1],[184,4],[185,1],[239,5],[241,6],[240,7],[242,8],[243,9],[246,10],[250,11],[252,12],[253,13],[255,14],[256,15],[265,16],[267,5],[269,17],[270,18],[268,19],[271,20],[272,21],[273,22],[274,23],[275,24],[276,25],[277,26],[278,27],[279,28],[280,29],[248,30],[247,31],[187,32],[237,33],[190,34],[191,35],[192,36],[193,37],[194,38],[195,39],[196,40],[198,41],[199,42],[200,43],[201,43],[202,44],[203,45],[204,46],[205,47],[206,48],[238,49],[207,43],[208,50],[209,51],[211,52],[212,53],[213,54],[216,43],[217,55],[218,56],[219,57],[221,43],[222,58],[223,59],[235,60],[225,61],[226,62],[227,63],[229,57],[231,64],[232,57],[296,65],[283,66],[290,67],[286,68],[284,69],[287,70],[291,71],[292,67],[289,72],[288,73],[293,74],[294,75],[295,76],[285,77],[304,78],[249,79],[308,80],[118,81],[120,82],[119,81],[117,83],[76,84],[75,85],[80,86],[115,87],[112,88],[114,89],[77,88],[78,90],[82,90],[81,91],[79,92],[113,93],[111,88],[116,94],[83,95],[88,88],[90,88],[85,88],[86,95],[92,88],[93,96],[84,88],[89,88],[91,88],[87,88],[107,97],[106,88],[108,98],[102,88],[104,88],[103,88],[99,88],[105,99],[100,88],[101,100],[94,88],[95,88],[96,88],[97,88],[98,88],[264,101],[262,102],[263,103],[303,104],[300,5],[302,105],[301,5],[261,106],[69,107],[61,108],[67,109],[62,110],[65,107],[68,111],[60,112],[66,113],[59,114],[177,131],[131,116],[154,117],[155,117],[156,117],[158,117],[159,117],[160,117],[161,117],[162,117],[163,117],[169,117],[170,117],[173,117],[174,117],[175,117],[132,117],[133,117],[134,117],[135,117],[136,117],[137,117],[138,117],[139,117],[140,117],[141,117],[142,117],[143,117],[144,117],[145,117],[146,117],[147,117],[148,117],[149,117],[150,117],[151,117],[152,117],[153,117],[180,118],[179,132],[127,120],[126,121],[121,122],[125,123],[123,124],[124,125],[72,126],[129,127],[130,128],[70,129],[128,130]],"semanticDiagnosticsPerFile":[183,181,257,260,259,186,182,184,185,239,241,240,242,243,246,250,252,251,253,254,255,256,265,266,267,269,270,268,271,272,273,274,275,276,277,278,279,280,248,247,281,282,236,187,189,237,190,191,192,193,194,195,196,197,198,199,200,201,202,203,188,233,204,205,206,238,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,235,225,226,227,228,229,230,234,231,232,296,283,290,286,284,287,291,292,289,288,293,294,295,285,297,298,304,305,245,244,249,306,307,308,118,120,119,117,74,76,75,80,115,112,114,77,78,82,81,79,113,111,116,109,110,83,88,90,85,86,92,93,84,89,91,87,107,106,108,102,104,103,99,105,100,101,94,95,96,97,98,258,264,262,263,303,300,302,301,299,261,178,11,12,15,14,2,16,17,18,19,20,21,22,23,3,4,27,24,25,26,28,29,30,5,31,32,33,34,6,35,36,37,38,7,39,44,45,40,41,42,43,8,49,46,47,48,50,9,51,52,53,54,55,1,10,56,13,73,69,61,67,63,64,62,65,57,58,68,60,66,59,177,131,154,157,155,156,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,180,179,127,126,121,125,122,123,124,72,71,129,130,70,128],"latestChangedDtsFile":"./src/index.d.ts"},"version":"4.8.4"} \ No newline at end of file diff --git a/src/view/com/composer/Autocomplete.tsx b/src/view/com/composer/Autocomplete.tsx index 4e4bdfc8..7f93bede 100644 --- a/src/view/com/composer/Autocomplete.tsx +++ b/src/view/com/composer/Autocomplete.tsx @@ -11,7 +11,7 @@ import Animated, { withTiming, interpolate, } from 'react-native-reanimated' -import {colors} from '../../../lib/styles' +import {colors} from '../../lib/styles' export function Autocomplete({ active, diff --git a/src/view/com/composer/ComposePost.tsx b/src/view/com/composer/ComposePost.tsx index 496b49a9..9d2d6ed1 100644 --- a/src/view/com/composer/ComposePost.tsx +++ b/src/view/com/composer/ComposePost.tsx @@ -2,7 +2,7 @@ import React, {useEffect, useMemo, useState} from 'react' import {StyleSheet, Text, TextInput, TouchableOpacity, View} from 'react-native' import LinearGradient from 'react-native-linear-gradient' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import * as GetUserFollows from '../../../third-party/api/src/types/app/bsky/getUserFollows' +import * as GetFollows from '../../../third-party/api/src/client/types/app/bsky/graph/getFollows' import {Autocomplete} from './Autocomplete' import Toast from '../util/Toast' import ProgressCircle from '../util/ProgressCircle' @@ -28,14 +28,14 @@ export function ComposePost({ const [error, setError] = useState('') const [text, setText] = useState('') const [followedUsers, setFollowedUsers] = useState< - undefined | GetUserFollows.OutputSchema['follows'] + undefined | GetFollows.OutputSchema['follows'] >(undefined) const [autocompleteOptions, setAutocompleteOptions] = useState([]) useEffect(() => { let aborted = false - store.api.app.bsky - .getUserFollows({ + store.api.app.bsky.graph + .getFollows({ user: store.me.did || '', }) .then(res => { @@ -58,8 +58,8 @@ export function ComposePost({ setAutocompleteOptions( [prefix].concat( followedUsers - .filter(user => user.name.startsWith(prefix)) - .map(user => user.name), + .filter(user => user.handle.startsWith(prefix)) + .map(user => user.handle), ), ) } else if (autocompleteOptions) { diff --git a/src/view/com/modals/EditProfile.tsx b/src/view/com/modals/EditProfile.tsx index 13a8a304..ab4d7f56 100644 --- a/src/view/com/modals/EditProfile.tsx +++ b/src/view/com/modals/EditProfile.tsx @@ -6,7 +6,7 @@ import {ErrorMessage} from '../util/ErrorMessage' import {useStores} from '../../../state' import {ProfileViewModel} from '../../../state/models/profile-view' import {s, colors, gradients} from '../../lib/styles' -import * as Profile from '../../../third-party/api/src/types/app/bsky/profile' +import * as Profile from '../../../third-party/api/src/client/types/app/bsky/actor/profile' export const snapPoints = ['80%'] diff --git a/src/view/com/notifications/FeedItem.tsx b/src/view/com/notifications/FeedItem.tsx index 8d53e921..8ac661a2 100644 --- a/src/view/com/notifications/FeedItem.tsx +++ b/src/view/com/notifications/FeedItem.tsx @@ -23,7 +23,7 @@ export const FeedItem = observer(function FeedItem({ const urip = new AtUri(item.subjectUri) return `/profile/${urip.host}/post/${urip.rkey}` } else if (item.isFollow) { - return `/profile/${item.author.name}` + return `/profile/${item.author.handle}` } else if (item.isReply) { const urip = new AtUri(item.uri) return `/profile/${urip.host}/post/${urip.rkey}` @@ -34,7 +34,7 @@ export const FeedItem = observer(function FeedItem({ if (item.isLike || item.isRepost) { return 'Post' } else if (item.isFollow) { - return item.author.name + return item.author.handle } else if (item.isReply) { return 'Post' } @@ -76,18 +76,18 @@ export const FeedItem = observer(function FeedItem({ return <> } - let authors: {href: string; name: string; displayName?: string}[] = [ + let authors: {href: string; handle: string; displayName?: string}[] = [ { - href: `/profile/${item.author.name}`, - name: item.author.name, + href: `/profile/${item.author.handle}`, + handle: item.author.handle, displayName: item.author.displayName, }, ] if (item.additional?.length) { authors = authors.concat( item.additional.map(item2 => ({ - href: `/profile/${item2.author.name}`, - name: item2.author.name, + href: `/profile/${item2.author.handle}`, + handle: item2.author.handle, displayName: item2.author.displayName, })), ) @@ -113,11 +113,11 @@ export const FeedItem = observer(function FeedItem({ style={s.mr2} key={author.href} href={author.href} - title={`@${author.name}`}> + title={`@${author.handle}`}> ))} @@ -132,9 +132,9 @@ export const FeedItem = observer(function FeedItem({ key={authors[0].href} style={styles.metaItem} href={authors[0].href} - title={`@${authors[0].name}`}> + title={`@${authors[0].handle}`}> - {authors[0].displayName || authors[0].name} + {authors[0].displayName || authors[0].handle} {authors.length > 1 ? ( diff --git a/src/view/com/post-thread/PostLikedBy.tsx b/src/view/com/post-thread/PostLikedBy.tsx index 071e69fa..87829955 100644 --- a/src/view/com/post-thread/PostLikedBy.tsx +++ b/src/view/com/post-thread/PostLikedBy.tsx @@ -67,18 +67,21 @@ export const PostLikedBy = observer(function PostLikedBy({uri}: {uri: string}) { const LikedByItem = ({item}: {item: LikedByViewItemModel}) => { return ( - + {item.displayName} - @{item.name} + @{item.handle} diff --git a/src/view/com/post-thread/PostRepostedBy.tsx b/src/view/com/post-thread/PostRepostedBy.tsx index df462c1a..adb20a7f 100644 --- a/src/view/com/post-thread/PostRepostedBy.tsx +++ b/src/view/com/post-thread/PostRepostedBy.tsx @@ -80,18 +80,21 @@ export const PostRepostedBy = observer(function PostRepostedBy({ const RepostedByItem = ({item}: {item: RepostedByViewItemModel}) => { return ( - + {item.displayName} - @{item.name} + @{item.handle} diff --git a/src/view/com/post-thread/PostThreadItem.tsx b/src/view/com/post-thread/PostThreadItem.tsx index 90cffc02..9fb145f1 100644 --- a/src/view/com/post-thread/PostThreadItem.tsx +++ b/src/view/com/post-thread/PostThreadItem.tsx @@ -3,7 +3,7 @@ import {observer} from 'mobx-react-lite' import {Image, StyleSheet, Text, TouchableOpacity, View} from 'react-native' import Svg, {Line} from 'react-native-svg' import {AtUri} from '../../../third-party/uri' -import * as PostType from '../../../third-party/api/src/types/app/bsky/post' +import * as PostType from '../../../third-party/api/src/client/types/app/bsky/feed/post' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {PostThreadViewPostModel} from '../../../state/models/post-thread-view' import {Link} from '../util/Link' @@ -31,20 +31,20 @@ export const PostThreadItem = observer(function PostThreadItem({ const itemHref = useMemo(() => { const urip = new AtUri(item.uri) - return `/profile/${item.author.name}/post/${urip.rkey}` - }, [item.uri, item.author.name]) - const itemTitle = `Post by ${item.author.name}` - const authorHref = `/profile/${item.author.name}` - const authorTitle = item.author.name + return `/profile/${item.author.handle}/post/${urip.rkey}` + }, [item.uri, item.author.handle]) + const itemTitle = `Post by ${item.author.handle}` + const authorHref = `/profile/${item.author.handle}` + const authorTitle = item.author.handle const likesHref = useMemo(() => { const urip = new AtUri(item.uri) - return `/profile/${item.author.name}/post/${urip.rkey}/liked-by` - }, [item.uri, item.author.name]) + return `/profile/${item.author.handle}/post/${urip.rkey}/liked-by` + }, [item.uri, item.author.handle]) const likesTitle = 'Likes on this post' const repostsHref = useMemo(() => { const urip = new AtUri(item.uri) - return `/profile/${item.author.name}/post/${urip.rkey}/reposted-by` - }, [item.uri, item.author.name]) + return `/profile/${item.author.handle}/post/${urip.rkey}/reposted-by` + }, [item.uri, item.author.handle]) const repostsTitle = 'Reposts of this post' const onPressReply = () => { @@ -116,7 +116,7 @@ export const PostThreadItem = observer(function PostThreadItem({ @@ -147,7 +147,7 @@ export const PostThreadItem = observer(function PostThreadItem({ style={styles.metaItem} href={authorHref} title={authorTitle}> - @{item.author.name} + @{item.author.handle} @@ -235,12 +235,12 @@ export const PostThreadItem = observer(function PostThreadItem({ {item.replyingToAuthor && - item.replyingToAuthor !== item.author.name && ( + item.replyingToAuthor !== item.author.handle && ( - @{item.author.name} + @{item.author.handle} · {ago(item.indexedAt)} diff --git a/src/view/com/post/Post.tsx b/src/view/com/post/Post.tsx index b98274c1..5f19e0d6 100644 --- a/src/view/com/post/Post.tsx +++ b/src/view/com/post/Post.tsx @@ -1,7 +1,7 @@ -import React, {useState, useEffect, useMemo} from 'react' +import React, {useState, useEffect} from 'react' import {observer} from 'mobx-react-lite' import {AtUri} from '../../../third-party/uri' -import * as PostType from '../../../third-party/api/src/types/app/bsky/post' +import * as PostType from '../../../third-party/api/src/client/types/app/bsky/feed/post' import { ActivityIndicator, StyleSheet, @@ -58,10 +58,10 @@ export const Post = observer(function Post({uri}: {uri: string}) { const record = view.thread?.record as unknown as PostType.Record const itemUrip = new AtUri(item.uri) - const itemHref = `/profile/${item.author.name}/post/${itemUrip.rkey}` - const itemTitle = `Post by ${item.author.name}` - const authorHref = `/profile/${item.author.name}` - const authorTitle = item.author.name + const itemHref = `/profile/${item.author.handle}/post/${itemUrip.rkey}` + const itemTitle = `Post by ${item.author.handle}` + const authorHref = `/profile/${item.author.handle}` + const authorTitle = item.author.handle let replyAuthorDid = '' let replyHref = '' if (record.reply) { @@ -90,7 +90,7 @@ export const Post = observer(function Post({uri}: {uri: string}) { @@ -99,7 +99,7 @@ export const Post = observer(function Post({uri}: {uri: string}) { {item.author.displayName} - @{item.author.name} + @{item.author.handle} · {ago(item.indexedAt)} diff --git a/src/view/com/posts/FeedItem.tsx b/src/view/com/posts/FeedItem.tsx index e591113d..5164ad12 100644 --- a/src/view/com/posts/FeedItem.tsx +++ b/src/view/com/posts/FeedItem.tsx @@ -2,7 +2,7 @@ import React, {useMemo} from 'react' import {observer} from 'mobx-react-lite' import {StyleSheet, Text, TouchableOpacity, View} from 'react-native' import {AtUri} from '../../../third-party/uri' -import * as PostType from '../../../third-party/api/src/types/app/bsky/post' +import * as PostType from '../../../third-party/api/src/client/types/app/bsky/feed/post' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {FeedItemModel} from '../../../state/models/feed-view' import {SharePostModel} from '../../../state/models/shell' @@ -24,10 +24,10 @@ export const FeedItem = observer(function FeedItem({ const record = item.record as unknown as PostType.Record const itemHref = useMemo(() => { const urip = new AtUri(item.uri) - return `/profile/${item.author.name}/post/${urip.rkey}` - }, [item.uri, item.author.name]) - const itemTitle = `Post by ${item.author.name}` - const authorHref = `/profile/${item.author.name}` + return `/profile/${item.author.handle}/post/${urip.rkey}` + }, [item.uri, item.author.handle]) + const itemTitle = `Post by ${item.author.handle}` + const authorHref = `/profile/${item.author.handle}` const replyAuthorDid = useMemo(() => { if (!record.reply) return '' const urip = new AtUri(record.reply.parent?.uri || record.reply.root.uri) @@ -70,11 +70,11 @@ export const FeedItem = observer(function FeedItem({ + title={item.author.handle}> @@ -82,14 +82,14 @@ export const FeedItem = observer(function FeedItem({ + title={item.author.handle}> {item.author.displayName} - @{item.author.name} + title={item.author.handle}> + @{item.author.handle} · {ago(item.indexedAt)} diff --git a/src/view/com/profile/ProfileFollowers.tsx b/src/view/com/profile/ProfileFollowers.tsx index 30145e7b..39affd9e 100644 --- a/src/view/com/profile/ProfileFollowers.tsx +++ b/src/view/com/profile/ProfileFollowers.tsx @@ -1,13 +1,6 @@ import React, {useState, useEffect} from 'react' import {observer} from 'mobx-react-lite' -import { - ActivityIndicator, - FlatList, - Image, - StyleSheet, - Text, - View, -} from 'react-native' +import {ActivityIndicator, FlatList, StyleSheet, Text, View} from 'react-native' import { UserFollowersViewModel, FollowerItem, @@ -78,18 +71,21 @@ export const ProfileFollowers = observer(function ProfileFollowers({ const User = ({item}: {item: FollowerItem}) => { return ( - + {item.displayName} - @{item.name} + @{item.handle} diff --git a/src/view/com/profile/ProfileFollows.tsx b/src/view/com/profile/ProfileFollows.tsx index 56a5371b..d0619ba7 100644 --- a/src/view/com/profile/ProfileFollows.tsx +++ b/src/view/com/profile/ProfileFollows.tsx @@ -1,13 +1,6 @@ import React, {useState, useEffect} from 'react' import {observer} from 'mobx-react-lite' -import { - ActivityIndicator, - FlatList, - Image, - StyleSheet, - Text, - View, -} from 'react-native' +import {ActivityIndicator, FlatList, StyleSheet, Text, View} from 'react-native' import { UserFollowsViewModel, FollowItem, @@ -78,18 +71,21 @@ export const ProfileFollows = observer(function ProfileFollows({ const User = ({item}: {item: FollowItem}) => { return ( - + {item.displayName} - @{item.name} + @{item.handle} diff --git a/src/view/com/profile/ProfileHeader.tsx b/src/view/com/profile/ProfileHeader.tsx index 6445e4a9..e1b46f4c 100644 --- a/src/view/com/profile/ProfileHeader.tsx +++ b/src/view/com/profile/ProfileHeader.tsx @@ -35,7 +35,7 @@ export const ProfileHeader = observer(function ProfileHeader({ () => { Toast.show( `${view.myState.follow ? 'Following' : 'No longer following'} ${ - view.displayName || view.name + view.displayName || view.handle }`, { duration: Toast.durations.LONG, @@ -53,10 +53,10 @@ export const ProfileHeader = observer(function ProfileHeader({ // TODO } const onPressFollowers = () => { - store.nav.navigate(`/profile/${view.name}/followers`) + store.nav.navigate(`/profile/${view.handle}/followers`) } const onPressFollows = () => { - store.nav.navigate(`/profile/${view.name}/follows`) + store.nav.navigate(`/profile/${view.handle}/follows`) } // loading @@ -95,7 +95,11 @@ export const ProfileHeader = observer(function ProfileHeader({ ) : undefined} - + diff --git a/src/view/com/util/UserAvatar.tsx b/src/view/com/util/UserAvatar.tsx index b38f1158..9b8ceb37 100644 --- a/src/view/com/util/UserAvatar.tsx +++ b/src/view/com/util/UserAvatar.tsx @@ -12,14 +12,14 @@ const GRADIENTS = [ export function UserAvatar({ size, displayName, - name, + handle, }: { size: number displayName: string | undefined - name: string + handle: string }) { - const initials = getInitials(displayName || name) - const gi = cyrb53(name) % GRADIENTS.length + const initials = getInitials(displayName || handle) + const gi = cyrb53(handle) % GRADIENTS.length return ( diff --git a/src/view/com/util/UserInfoText.tsx b/src/view/com/util/UserInfoText.tsx index 536eef9e..41189186 100644 --- a/src/view/com/util/UserInfoText.tsx +++ b/src/view/com/util/UserInfoText.tsx @@ -1,5 +1,5 @@ import React, {useState, useEffect} from 'react' -import * as AppBskyGetProfile from '../../../third-party/api/src/types/app/bsky/getProfile' +import * as GetProfile from '../../../third-party/api/src/client/types/app/bsky/actor/getProfile' import {StyleProp, Text, TextStyle} from 'react-native' import {useStores} from '../../../state' @@ -12,26 +12,26 @@ export function UserInfoText({ style, }: { did: string - attr?: keyof AppBskyGetProfile.OutputSchema + attr?: keyof GetProfile.OutputSchema loading?: string failed?: string prefix?: string style?: StyleProp }) { - attr = attr || 'name' + attr = attr || 'handle' loading = loading || '...' failed = failed || 'user' const store = useStores() - const [profile, setProfile] = useState< - undefined | AppBskyGetProfile.OutputSchema - >(undefined) + const [profile, setProfile] = useState( + undefined, + ) const [didFail, setFailed] = useState(false) useEffect(() => { let aborted = false // TODO use caching to reduce loads - store.api.app.bsky.getProfile({user: did}).then( + store.api.app.bsky.actor.getProfile({user: did}).then( v => { if (aborted) return setProfile(v.data) diff --git a/src/view/lib/strings.ts b/src/view/lib/strings.ts index b30a3c08..7f1bc545 100644 --- a/src/view/lib/strings.ts +++ b/src/view/lib/strings.ts @@ -1,7 +1,5 @@ import {AtUri} from '../../third-party/uri' -import {Entity as Entities} from '../../third-party/api/src/types/app/bsky/post' - -type Entity = Entities[0] +import {Entity} from '../../third-party/api/src/client/types/app/bsky/feed/post' export function pluralize(n: number, base: string, plural?: string): string { if (n === 1) { diff --git a/src/view/screens/Contacts.tsx b/src/view/screens/Contacts.tsx index 70b15a86..65c933b3 100644 --- a/src/view/screens/Contacts.tsx +++ b/src/view/screens/Contacts.tsx @@ -47,7 +47,7 @@ export const Contacts = ({visible, params}: ScreenParams) => { selectedIndex={0} swipeGestureInterp={selectorInterp} /> - {!!store.me.name && } + {!!store.me.handle && } ) } diff --git a/src/view/screens/Login.tsx b/src/view/screens/Login.tsx index bc40327b..96c01032 100644 --- a/src/view/screens/Login.tsx +++ b/src/view/screens/Login.tsx @@ -109,7 +109,7 @@ const Signin = ({onPressBack}: {onPressBack: () => void}) => { const store = useStores() const [isProcessing, setIsProcessing] = useState(false) const [error, setError] = useState('') - const [username, setUsername] = useState('') + const [handle, setHandle] = useState('') const [password, setPassword] = useState('') const onPressNext = async () => { @@ -118,7 +118,7 @@ const Signin = ({onPressBack}: {onPressBack: () => void}) => { try { await store.session.login({ service: 'http://localhost:2583/', - username, + handle, password, }) } catch (e: any) { @@ -164,8 +164,8 @@ const Signin = ({onPressBack}: {onPressBack: () => void}) => { placeholderTextColor={colors.blue0} autoCapitalize="none" autoFocus - value={username} - onChangeText={setUsername} + value={handle} + onChangeText={setHandle} editable={!isProcessing} /> @@ -211,7 +211,7 @@ const CreateAccount = ({onPressBack}: {onPressBack: () => void}) => { const [inviteCode, setInviteCode] = useState('') const [email, setEmail] = useState('') const [password, setPassword] = useState('') - const [username, setUsername] = useState('') + const [handle, setHandle] = useState('') useEffect(() => { let aborted = false @@ -247,7 +247,7 @@ const CreateAccount = ({onPressBack}: {onPressBack: () => void}) => { if (!password) { return setError('Please choose your password.') } - if (!username) { + if (!handle) { return setError('Please choose your username.') } setError('') @@ -256,7 +256,7 @@ const CreateAccount = ({onPressBack}: {onPressBack: () => void}) => { await store.session.createAccount({ service: 'http://localhost:2583/', email, - username: `${username}.${userDomain}`, + handle: `${handle}.${userDomain}`, password, inviteCode, }) @@ -379,8 +379,8 @@ const CreateAccount = ({onPressBack}: {onPressBack: () => void}) => { placeholder="eg alice" placeholderTextColor={colors.blue0} autoCapitalize="none" - value={username} - onChangeText={v => setUsername(cleanUsername(v))} + value={handle} + onChangeText={v => setHandle(cleanUsername(v))} editable={!isProcessing} /> @@ -405,7 +405,7 @@ const CreateAccount = ({onPressBack}: {onPressBack: () => void}) => { Your full username will be{' '} - @{username}.{userDomain} + @{handle}.{userDomain} diff --git a/src/view/screens/PostLikedBy.tsx b/src/view/screens/PostLikedBy.tsx index 72c6016e..8adc58c8 100644 --- a/src/view/screens/PostLikedBy.tsx +++ b/src/view/screens/PostLikedBy.tsx @@ -9,7 +9,7 @@ import {makeRecordUri} from '../lib/strings' export const PostLikedBy = ({visible, params}: ScreenParams) => { const store = useStores() const {name, rkey} = params - const uri = makeRecordUri(name, 'app.bsky.post', rkey) + const uri = makeRecordUri(name, 'app.bsky.feed.post', rkey) useEffect(() => { if (visible) { diff --git a/src/view/screens/PostRepostedBy.tsx b/src/view/screens/PostRepostedBy.tsx index d9a59a26..263af195 100644 --- a/src/view/screens/PostRepostedBy.tsx +++ b/src/view/screens/PostRepostedBy.tsx @@ -9,7 +9,7 @@ import {makeRecordUri} from '../lib/strings' export const PostRepostedBy = ({visible, params}: ScreenParams) => { const store = useStores() const {name, rkey} = params - const uri = makeRecordUri(name, 'app.bsky.post', rkey) + const uri = makeRecordUri(name, 'app.bsky.feed.post', rkey) useEffect(() => { if (visible) { diff --git a/src/view/screens/PostThread.tsx b/src/view/screens/PostThread.tsx index a30b5521..e872db2d 100644 --- a/src/view/screens/PostThread.tsx +++ b/src/view/screens/PostThread.tsx @@ -9,7 +9,7 @@ import {useStores} from '../../state' export const PostThread = ({visible, params}: ScreenParams) => { const store = useStores() const {name, rkey} = params - const uri = makeRecordUri(name, 'app.bsky.post', rkey) + const uri = makeRecordUri(name, 'app.bsky.feed.post', rkey) useEffect(() => { if (visible) { diff --git a/src/view/screens/Settings.tsx b/src/view/screens/Settings.tsx index 6bc3d101..0fc09e6a 100644 --- a/src/view/screens/Settings.tsx +++ b/src/view/screens/Settings.tsx @@ -33,16 +33,16 @@ export const Settings = observer(function Settings({visible}: ScreenParams) { Sign out - + {store.me.displayName} - @{store.me.name} + @{store.me.handle} diff --git a/src/view/shell/mobile/MainMenu.tsx b/src/view/shell/mobile/MainMenu.tsx index 1ff286ef..89c7857f 100644 --- a/src/view/shell/mobile/MainMenu.tsx +++ b/src/view/shell/mobile/MainMenu.tsx @@ -103,7 +103,7 @@ export const MainMenu = observer( style={[styles.menuItem, styles.menuItemMargin]} onPress={() => onNavigate(url)}> - + {count ? ( @@ -130,16 +130,16 @@ export const MainMenu = observer( onNavigate(`/profile/${store.me.name || ''}`)}> + onPress={() => onNavigate(`/profile/${store.me.handle || ''}`)}> - {store.me.displayName || store.me.name || 'My profile'} + {store.me.displayName || store.me.handle || 'My profile'} diff --git a/src/view/shell/mobile/index.tsx b/src/view/shell/mobile/index.tsx index 60188f89..f3082795 100644 --- a/src/view/shell/mobile/index.tsx +++ b/src/view/shell/mobile/index.tsx @@ -359,7 +359,7 @@ const styles = StyleSheet.create({ }, ctrlCount: { position: 'absolute', - left: 52, + left: 46, top: 10, backgroundColor: colors.red3, paddingHorizontal: 4,