atmo.rsvp
3
fork

Configure Feed

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

add search, cleanup lexicons

Florian 534c6c7f e379e61f

+116 -1616
+1 -1
lexicons/README.md
··· 3 3 this directory contains lexicon documents pulled from the following sources: 4 4 5 5 - https://github.com/flo-bit/contrail.git 6 - - commit: 2c94dd5211fdaa8b2224c0c2bb7e487151ac85bb 6 + - commit: 33c8fea799ef94f8aa13d55f35dc39b89e7c9c68
-27
lexicons/com/example/admin/getCursor.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "com.example.admin.getCursor", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Get the current cursor position", 8 - "output": { 9 - "encoding": "application/json", 10 - "schema": { 11 - "type": "object", 12 - "properties": { 13 - "time_us": { 14 - "type": "integer" 15 - }, 16 - "date": { 17 - "type": "string" 18 - }, 19 - "seconds_ago": { 20 - "type": "integer" 21 - } 22 - } 23 - } 24 - } 25 - } 26 - } 27 - }
-44
lexicons/com/example/admin/getOverview.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "com.example.admin.getOverview", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Get an overview of all indexed collections", 8 - "output": { 9 - "encoding": "application/json", 10 - "schema": { 11 - "type": "object", 12 - "required": ["total_records", "collections"], 13 - "properties": { 14 - "total_records": { 15 - "type": "integer" 16 - }, 17 - "collections": { 18 - "type": "array", 19 - "items": { 20 - "type": "ref", 21 - "ref": "#collectionStats" 22 - } 23 - } 24 - } 25 - } 26 - } 27 - }, 28 - "collectionStats": { 29 - "type": "object", 30 - "required": ["collection", "records", "unique_users"], 31 - "properties": { 32 - "collection": { 33 - "type": "string" 34 - }, 35 - "records": { 36 - "type": "integer" 37 - }, 38 - "unique_users": { 39 - "type": "integer" 40 - } 41 - } 42 - } 43 - } 44 - }
-22
lexicons/com/example/admin/reset.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "com.example.admin.reset", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Delete all data from all tables", 8 - "output": { 9 - "encoding": "application/json", 10 - "schema": { 11 - "type": "object", 12 - "required": ["ok"], 13 - "properties": { 14 - "ok": { 15 - "type": "boolean" 16 - } 17 - } 18 - } 19 - } 20 - } 21 - } 22 - }
-42
lexicons/com/example/admin/sync.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "com.example.admin.sync", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Discover users from relays and backfill their records from PDS", 8 - "parameters": { 9 - "type": "params", 10 - "properties": { 11 - "concurrency": { 12 - "type": "integer", 13 - "minimum": 1, 14 - "maximum": 50, 15 - "default": 10 16 - } 17 - } 18 - }, 19 - "output": { 20 - "encoding": "application/json", 21 - "schema": { 22 - "type": "object", 23 - "required": ["discovered", "backfilled", "remaining", "done"], 24 - "properties": { 25 - "discovered": { 26 - "type": "integer" 27 - }, 28 - "backfilled": { 29 - "type": "integer" 30 - }, 31 - "remaining": { 32 - "type": "integer" 33 - }, 34 - "done": { 35 - "type": "boolean" 36 - } 37 - } 38 - } 39 - } 40 - } 41 - } 42 - }
-114
lexicons/com/example/getProfile.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "com.example.getProfile", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Get a user's profile by DID or handle", 8 - "parameters": { 9 - "type": "params", 10 - "required": ["actor"], 11 - "properties": { 12 - "actor": { 13 - "type": "string", 14 - "format": "at-identifier", 15 - "description": "DID or handle of the user" 16 - } 17 - } 18 - }, 19 - "output": { 20 - "encoding": "application/json", 21 - "schema": { 22 - "type": "ref", 23 - "ref": "#profileEntry" 24 - } 25 - } 26 - }, 27 - "profileEntry": { 28 - "type": "object", 29 - "required": ["did"], 30 - "properties": { 31 - "did": { 32 - "type": "string", 33 - "format": "did" 34 - }, 35 - "handle": { 36 - "type": "string" 37 - }, 38 - "uri": { 39 - "type": "string", 40 - "format": "at-uri" 41 - }, 42 - "collection": { 43 - "type": "string", 44 - "format": "nsid" 45 - }, 46 - "rkey": { 47 - "type": "string" 48 - }, 49 - "cid": { 50 - "type": "string" 51 - }, 52 - "record": { 53 - "type": "ref", 54 - "ref": "#appBskyActorProfile" 55 - } 56 - } 57 - }, 58 - "appBskyActorProfile": { 59 - "type": "object", 60 - "properties": { 61 - "avatar": { 62 - "type": "blob", 63 - "accept": ["image/png", "image/jpeg"], 64 - "maxSize": 1000000, 65 - "description": "Small image to be displayed next to posts from account. AKA, 'profile picture'" 66 - }, 67 - "banner": { 68 - "type": "blob", 69 - "accept": ["image/png", "image/jpeg"], 70 - "maxSize": 1000000, 71 - "description": "Larger horizontal image to display behind profile view." 72 - }, 73 - "labels": { 74 - "refs": ["com.atproto.label.defs#selfLabels"], 75 - "type": "union", 76 - "description": "Self-label values, specific to the Bluesky application, on the overall account." 77 - }, 78 - "website": { 79 - "type": "string", 80 - "format": "uri" 81 - }, 82 - "pronouns": { 83 - "type": "string", 84 - "maxLength": 200, 85 - "description": "Free-form pronouns text.", 86 - "maxGraphemes": 20 87 - }, 88 - "createdAt": { 89 - "type": "string", 90 - "format": "datetime" 91 - }, 92 - "pinnedPost": { 93 - "ref": "com.atproto.repo.strongRef", 94 - "type": "ref" 95 - }, 96 - "description": { 97 - "type": "string", 98 - "maxLength": 2560, 99 - "description": "Free-form profile description text.", 100 - "maxGraphemes": 256 101 - }, 102 - "displayName": { 103 - "type": "string", 104 - "maxLength": 640, 105 - "maxGraphemes": 64 106 - }, 107 - "joinedViaStarterPack": { 108 - "ref": "com.atproto.repo.strongRef", 109 - "type": "ref" 110 - } 111 - } 112 - } 113 - } 114 - }
-27
lexicons/contrail/admin/getCursor.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "contrail.admin.getCursor", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Get the current cursor position", 8 - "output": { 9 - "encoding": "application/json", 10 - "schema": { 11 - "type": "object", 12 - "properties": { 13 - "time_us": { 14 - "type": "integer" 15 - }, 16 - "date": { 17 - "type": "string" 18 - }, 19 - "seconds_ago": { 20 - "type": "integer" 21 - } 22 - } 23 - } 24 - } 25 - } 26 - } 27 - }
-44
lexicons/contrail/admin/getOverview.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "contrail.admin.getOverview", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Get an overview of all indexed collections", 8 - "output": { 9 - "encoding": "application/json", 10 - "schema": { 11 - "type": "object", 12 - "required": ["total_records", "collections"], 13 - "properties": { 14 - "total_records": { 15 - "type": "integer" 16 - }, 17 - "collections": { 18 - "type": "array", 19 - "items": { 20 - "type": "ref", 21 - "ref": "#collectionStats" 22 - } 23 - } 24 - } 25 - } 26 - } 27 - }, 28 - "collectionStats": { 29 - "type": "object", 30 - "required": ["collection", "records", "unique_users"], 31 - "properties": { 32 - "collection": { 33 - "type": "string" 34 - }, 35 - "records": { 36 - "type": "integer" 37 - }, 38 - "unique_users": { 39 - "type": "integer" 40 - } 41 - } 42 - } 43 - } 44 - }
-22
lexicons/contrail/admin/reset.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "contrail.admin.reset", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Delete all data from all tables", 8 - "output": { 9 - "encoding": "application/json", 10 - "schema": { 11 - "type": "object", 12 - "required": ["ok"], 13 - "properties": { 14 - "ok": { 15 - "type": "boolean" 16 - } 17 - } 18 - } 19 - } 20 - } 21 - } 22 - }
-42
lexicons/contrail/admin/sync.json
··· 1 - { 2 - "lexicon": 1, 3 - "id": "contrail.admin.sync", 4 - "defs": { 5 - "main": { 6 - "type": "query", 7 - "description": "Discover users from relays and backfill their records from PDS", 8 - "parameters": { 9 - "type": "params", 10 - "properties": { 11 - "concurrency": { 12 - "type": "integer", 13 - "minimum": 1, 14 - "maximum": 50, 15 - "default": 10 16 - } 17 - } 18 - }, 19 - "output": { 20 - "encoding": "application/json", 21 - "schema": { 22 - "type": "object", 23 - "required": ["discovered", "backfilled", "remaining", "done"], 24 - "properties": { 25 - "discovered": { 26 - "type": "integer" 27 - }, 28 - "backfilled": { 29 - "type": "integer" 30 - }, 31 - "remaining": { 32 - "type": "integer" 33 - }, 34 - "done": { 35 - "type": "boolean" 36 - } 37 - } 38 - } 39 - } 40 - } 41 - } 42 - }
+17 -17
src/lexicon-types/index.ts
··· 1 - export * as AppBskyActorProfile from './types/app/bsky/actor/profile.js'; 2 - export * as CommunityLexiconCalendarEvent from './types/community/lexicon/calendar/event.js'; 3 - export * as CommunityLexiconCalendarEventGetRecord from './types/community/lexicon/calendar/event/getRecord.js'; 4 - export * as CommunityLexiconCalendarEventListRecords from './types/community/lexicon/calendar/event/listRecords.js'; 5 - export * as CommunityLexiconCalendarRsvp from './types/community/lexicon/calendar/rsvp.js'; 6 - export * as CommunityLexiconCalendarRsvpGetRecord from './types/community/lexicon/calendar/rsvp/getRecord.js'; 7 - export * as CommunityLexiconCalendarRsvpListRecords from './types/community/lexicon/calendar/rsvp/listRecords.js'; 8 - export * as CommunityLexiconLocationAddress from './types/community/lexicon/location/address.js'; 9 - export * as CommunityLexiconLocationFsq from './types/community/lexicon/location/fsq.js'; 10 - export * as CommunityLexiconLocationGeo from './types/community/lexicon/location/geo.js'; 11 - export * as CommunityLexiconLocationHthree from './types/community/lexicon/location/hthree.js'; 12 - export * as RsvpAtmoAdminGetCursor from './types/rsvp/atmo/admin/getCursor.js'; 13 - export * as RsvpAtmoAdminGetOverview from './types/rsvp/atmo/admin/getOverview.js'; 14 - export * as RsvpAtmoAdminReset from './types/rsvp/atmo/admin/reset.js'; 15 - export * as RsvpAtmoAdminSync from './types/rsvp/atmo/admin/sync.js'; 16 - export * as RsvpAtmoGetProfile from './types/rsvp/atmo/getProfile.js'; 17 - export * as RsvpAtmoNotifyOfUpdate from './types/rsvp/atmo/notifyOfUpdate.js'; 1 + export * as AppBskyActorProfile from "./types/app/bsky/actor/profile.js"; 2 + export * as CommunityLexiconCalendarEvent from "./types/community/lexicon/calendar/event.js"; 3 + export * as CommunityLexiconCalendarEventGetRecord from "./types/community/lexicon/calendar/event/getRecord.js"; 4 + export * as CommunityLexiconCalendarEventListRecords from "./types/community/lexicon/calendar/event/listRecords.js"; 5 + export * as CommunityLexiconCalendarRsvp from "./types/community/lexicon/calendar/rsvp.js"; 6 + export * as CommunityLexiconCalendarRsvpGetRecord from "./types/community/lexicon/calendar/rsvp/getRecord.js"; 7 + export * as CommunityLexiconCalendarRsvpListRecords from "./types/community/lexicon/calendar/rsvp/listRecords.js"; 8 + export * as CommunityLexiconLocationAddress from "./types/community/lexicon/location/address.js"; 9 + export * as CommunityLexiconLocationFsq from "./types/community/lexicon/location/fsq.js"; 10 + export * as CommunityLexiconLocationGeo from "./types/community/lexicon/location/geo.js"; 11 + export * as CommunityLexiconLocationHthree from "./types/community/lexicon/location/hthree.js"; 12 + export * as RsvpAtmoAdminGetCursor from "./types/rsvp/atmo/admin/getCursor.js"; 13 + export * as RsvpAtmoAdminGetOverview from "./types/rsvp/atmo/admin/getOverview.js"; 14 + export * as RsvpAtmoAdminReset from "./types/rsvp/atmo/admin/reset.js"; 15 + export * as RsvpAtmoAdminSync from "./types/rsvp/atmo/admin/sync.js"; 16 + export * as RsvpAtmoGetProfile from "./types/rsvp/atmo/getProfile.js"; 17 + export * as RsvpAtmoNotifyOfUpdate from "./types/rsvp/atmo/notifyOfUpdate.js";
-183
src/lexicon-types/types/app/blento/card/getRecord.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - import * as ComAtprotoLabelDefs from "@atcute/atproto/types/label/defs"; 5 - import * as ComAtprotoRepoStrongRef from "@atcute/atproto/types/repo/strongRef"; 6 - 7 - const _appBlentoProfileSchema = /*#__PURE__*/ v.object({ 8 - $type: /*#__PURE__*/ v.optional( 9 - /*#__PURE__*/ v.literal("app.blento.card.getRecord#appBlentoProfile"), 10 - ), 11 - /** 12 - * @accept image/png, image/jpeg 13 - * @maxSize 1000000 14 - */ 15 - avatar: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 16 - /** 17 - * @maxLength 2560 18 - */ 19 - description: /*#__PURE__*/ v.optional( 20 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 21 - /*#__PURE__*/ v.stringLength(0, 2560), 22 - ]), 23 - ), 24 - /** 25 - * @maxLength 640 26 - */ 27 - displayName: /*#__PURE__*/ v.optional( 28 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 29 - /*#__PURE__*/ v.stringLength(0, 640), 30 - ]), 31 - ), 32 - }); 33 - const _appBskyActorProfileSchema = /*#__PURE__*/ v.object({ 34 - $type: /*#__PURE__*/ v.optional( 35 - /*#__PURE__*/ v.literal("app.blento.card.getRecord#appBskyActorProfile"), 36 - ), 37 - /** 38 - * Small image to be displayed next to posts from account. AKA, 'profile picture' 39 - * @accept image/png, image/jpeg 40 - * @maxSize 1000000 41 - */ 42 - avatar: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 43 - /** 44 - * Larger horizontal image to display behind profile view. 45 - * @accept image/png, image/jpeg 46 - * @maxSize 1000000 47 - */ 48 - banner: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 49 - createdAt: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.datetimeString()), 50 - /** 51 - * Free-form profile description text. 52 - * @maxLength 2560 53 - * @maxGraphemes 256 54 - */ 55 - description: /*#__PURE__*/ v.optional( 56 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 57 - /*#__PURE__*/ v.stringLength(0, 2560), 58 - /*#__PURE__*/ v.stringGraphemes(0, 256), 59 - ]), 60 - ), 61 - /** 62 - * @maxLength 640 63 - * @maxGraphemes 64 64 - */ 65 - displayName: /*#__PURE__*/ v.optional( 66 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 67 - /*#__PURE__*/ v.stringLength(0, 640), 68 - /*#__PURE__*/ v.stringGraphemes(0, 64), 69 - ]), 70 - ), 71 - get joinedViaStarterPack() { 72 - return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); 73 - }, 74 - /** 75 - * Self-label values, specific to the Bluesky application, on the overall account. 76 - */ 77 - get labels() { 78 - return /*#__PURE__*/ v.optional( 79 - /*#__PURE__*/ v.variant([ComAtprotoLabelDefs.selfLabelsSchema]), 80 - ); 81 - }, 82 - get pinnedPost() { 83 - return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); 84 - }, 85 - /** 86 - * Free-form pronouns text. 87 - * @maxLength 200 88 - * @maxGraphemes 20 89 - */ 90 - pronouns: /*#__PURE__*/ v.optional( 91 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 92 - /*#__PURE__*/ v.stringLength(0, 200), 93 - /*#__PURE__*/ v.stringGraphemes(0, 20), 94 - ]), 95 - ), 96 - website: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.genericUriString()), 97 - }); 98 - const _mainSchema = /*#__PURE__*/ v.query("app.blento.card.getRecord", { 99 - params: /*#__PURE__*/ v.object({ 100 - /** 101 - * Embed related records, as relName:limit (e.g. rsvps:5). Repeatable. 102 - */ 103 - hydrate: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 104 - /** 105 - * Include profile + identity info keyed by DID 106 - */ 107 - profiles: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.boolean()), 108 - /** 109 - * AT URI of the record 110 - */ 111 - uri: /*#__PURE__*/ v.resourceUriString(), 112 - }), 113 - output: { 114 - type: "lex", 115 - schema: /*#__PURE__*/ v.object({ 116 - cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 117 - collection: /*#__PURE__*/ v.nsidString(), 118 - did: /*#__PURE__*/ v.didString(), 119 - get profiles() { 120 - return /*#__PURE__*/ v.optional( 121 - /*#__PURE__*/ v.array(profileEntrySchema), 122 - ); 123 - }, 124 - record: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.unknown()), 125 - rkey: /*#__PURE__*/ v.string(), 126 - time_us: /*#__PURE__*/ v.integer(), 127 - uri: /*#__PURE__*/ v.resourceUriString(), 128 - }), 129 - }, 130 - }); 131 - const _profileEntrySchema = /*#__PURE__*/ v.object({ 132 - $type: /*#__PURE__*/ v.optional( 133 - /*#__PURE__*/ v.literal("app.blento.card.getRecord#profileEntry"), 134 - ), 135 - cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 136 - collection: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.nsidString()), 137 - did: /*#__PURE__*/ v.didString(), 138 - handle: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 139 - get record() { 140 - return /*#__PURE__*/ v.optional( 141 - /*#__PURE__*/ v.variant([ 142 - appBlentoProfileSchema, 143 - appBskyActorProfileSchema, 144 - ]), 145 - ); 146 - }, 147 - rkey: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 148 - uri: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.resourceUriString()), 149 - }); 150 - 151 - type appBlentoProfile$schematype = typeof _appBlentoProfileSchema; 152 - type appBskyActorProfile$schematype = typeof _appBskyActorProfileSchema; 153 - type main$schematype = typeof _mainSchema; 154 - type profileEntry$schematype = typeof _profileEntrySchema; 155 - 156 - export interface appBlentoProfileSchema extends appBlentoProfile$schematype {} 157 - export interface appBskyActorProfileSchema extends appBskyActorProfile$schematype {} 158 - export interface mainSchema extends main$schematype {} 159 - export interface profileEntrySchema extends profileEntry$schematype {} 160 - 161 - export const appBlentoProfileSchema = 162 - _appBlentoProfileSchema as appBlentoProfileSchema; 163 - export const appBskyActorProfileSchema = 164 - _appBskyActorProfileSchema as appBskyActorProfileSchema; 165 - export const mainSchema = _mainSchema as mainSchema; 166 - export const profileEntrySchema = _profileEntrySchema as profileEntrySchema; 167 - 168 - export interface AppBlentoProfile extends v.InferInput< 169 - typeof appBlentoProfileSchema 170 - > {} 171 - export interface AppBskyActorProfile extends v.InferInput< 172 - typeof appBskyActorProfileSchema 173 - > {} 174 - export interface ProfileEntry extends v.InferInput<typeof profileEntrySchema> {} 175 - 176 - export interface $params extends v.InferInput<mainSchema["params"]> {} 177 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 178 - 179 - declare module "@atcute/lexicons/ambient" { 180 - interface XRPCQueries { 181 - "app.blento.card.getRecord": mainSchema; 182 - } 183 - }
-208
src/lexicon-types/types/app/blento/card/getRecords.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - import * as ComAtprotoLabelDefs from "@atcute/atproto/types/label/defs"; 5 - import * as ComAtprotoRepoStrongRef from "@atcute/atproto/types/repo/strongRef"; 6 - 7 - const _appBlentoProfileSchema = /*#__PURE__*/ v.object({ 8 - $type: /*#__PURE__*/ v.optional( 9 - /*#__PURE__*/ v.literal("app.blento.card.getRecords#appBlentoProfile"), 10 - ), 11 - /** 12 - * @accept image/png, image/jpeg 13 - * @maxSize 1000000 14 - */ 15 - avatar: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 16 - /** 17 - * @maxLength 2560 18 - */ 19 - description: /*#__PURE__*/ v.optional( 20 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 21 - /*#__PURE__*/ v.stringLength(0, 2560), 22 - ]), 23 - ), 24 - /** 25 - * @maxLength 640 26 - */ 27 - displayName: /*#__PURE__*/ v.optional( 28 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 29 - /*#__PURE__*/ v.stringLength(0, 640), 30 - ]), 31 - ), 32 - }); 33 - const _appBskyActorProfileSchema = /*#__PURE__*/ v.object({ 34 - $type: /*#__PURE__*/ v.optional( 35 - /*#__PURE__*/ v.literal("app.blento.card.getRecords#appBskyActorProfile"), 36 - ), 37 - /** 38 - * Small image to be displayed next to posts from account. AKA, 'profile picture' 39 - * @accept image/png, image/jpeg 40 - * @maxSize 1000000 41 - */ 42 - avatar: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 43 - /** 44 - * Larger horizontal image to display behind profile view. 45 - * @accept image/png, image/jpeg 46 - * @maxSize 1000000 47 - */ 48 - banner: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 49 - createdAt: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.datetimeString()), 50 - /** 51 - * Free-form profile description text. 52 - * @maxLength 2560 53 - * @maxGraphemes 256 54 - */ 55 - description: /*#__PURE__*/ v.optional( 56 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 57 - /*#__PURE__*/ v.stringLength(0, 2560), 58 - /*#__PURE__*/ v.stringGraphemes(0, 256), 59 - ]), 60 - ), 61 - /** 62 - * @maxLength 640 63 - * @maxGraphemes 64 64 - */ 65 - displayName: /*#__PURE__*/ v.optional( 66 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 67 - /*#__PURE__*/ v.stringLength(0, 640), 68 - /*#__PURE__*/ v.stringGraphemes(0, 64), 69 - ]), 70 - ), 71 - get joinedViaStarterPack() { 72 - return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); 73 - }, 74 - /** 75 - * Self-label values, specific to the Bluesky application, on the overall account. 76 - */ 77 - get labels() { 78 - return /*#__PURE__*/ v.optional( 79 - /*#__PURE__*/ v.variant([ComAtprotoLabelDefs.selfLabelsSchema]), 80 - ); 81 - }, 82 - get pinnedPost() { 83 - return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); 84 - }, 85 - /** 86 - * Free-form pronouns text. 87 - * @maxLength 200 88 - * @maxGraphemes 20 89 - */ 90 - pronouns: /*#__PURE__*/ v.optional( 91 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 92 - /*#__PURE__*/ v.stringLength(0, 200), 93 - /*#__PURE__*/ v.stringGraphemes(0, 20), 94 - ]), 95 - ), 96 - website: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.genericUriString()), 97 - }); 98 - const _mainSchema = /*#__PURE__*/ v.query("app.blento.card.getRecords", { 99 - params: /*#__PURE__*/ v.object({ 100 - /** 101 - * Filter by DID or handle (triggers on-demand backfill) 102 - */ 103 - actor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.actorIdentifierString()), 104 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 105 - /** 106 - * Embed related records, as relName:limit (e.g. rsvps:5). Repeatable. 107 - */ 108 - hydrate: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 109 - /** 110 - * @minimum 1 111 - * @maximum 100 112 - * @default 50 113 - */ 114 - limit: /*#__PURE__*/ v.optional( 115 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ 116 - /*#__PURE__*/ v.integerRange(1, 100), 117 - ]), 118 - 50, 119 - ), 120 - /** 121 - * Include profile + identity info keyed by DID 122 - */ 123 - profiles: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.boolean()), 124 - }), 125 - output: { 126 - type: "lex", 127 - schema: /*#__PURE__*/ v.object({ 128 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 129 - get profiles() { 130 - return /*#__PURE__*/ v.optional( 131 - /*#__PURE__*/ v.array(profileEntrySchema), 132 - ); 133 - }, 134 - get records() { 135 - return /*#__PURE__*/ v.array(recordSchema); 136 - }, 137 - }), 138 - }, 139 - }); 140 - const _profileEntrySchema = /*#__PURE__*/ v.object({ 141 - $type: /*#__PURE__*/ v.optional( 142 - /*#__PURE__*/ v.literal("app.blento.card.getRecords#profileEntry"), 143 - ), 144 - cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 145 - collection: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.nsidString()), 146 - did: /*#__PURE__*/ v.didString(), 147 - handle: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 148 - get record() { 149 - return /*#__PURE__*/ v.optional( 150 - /*#__PURE__*/ v.variant([ 151 - appBlentoProfileSchema, 152 - appBskyActorProfileSchema, 153 - ]), 154 - ); 155 - }, 156 - rkey: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 157 - uri: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.resourceUriString()), 158 - }); 159 - const _recordSchema = /*#__PURE__*/ v.object({ 160 - $type: /*#__PURE__*/ v.optional( 161 - /*#__PURE__*/ v.literal("app.blento.card.getRecords#record"), 162 - ), 163 - cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 164 - collection: /*#__PURE__*/ v.nsidString(), 165 - did: /*#__PURE__*/ v.didString(), 166 - record: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.unknown()), 167 - rkey: /*#__PURE__*/ v.string(), 168 - time_us: /*#__PURE__*/ v.integer(), 169 - uri: /*#__PURE__*/ v.resourceUriString(), 170 - }); 171 - 172 - type appBlentoProfile$schematype = typeof _appBlentoProfileSchema; 173 - type appBskyActorProfile$schematype = typeof _appBskyActorProfileSchema; 174 - type main$schematype = typeof _mainSchema; 175 - type profileEntry$schematype = typeof _profileEntrySchema; 176 - type record$schematype = typeof _recordSchema; 177 - 178 - export interface appBlentoProfileSchema extends appBlentoProfile$schematype {} 179 - export interface appBskyActorProfileSchema extends appBskyActorProfile$schematype {} 180 - export interface mainSchema extends main$schematype {} 181 - export interface profileEntrySchema extends profileEntry$schematype {} 182 - export interface recordSchema extends record$schematype {} 183 - 184 - export const appBlentoProfileSchema = 185 - _appBlentoProfileSchema as appBlentoProfileSchema; 186 - export const appBskyActorProfileSchema = 187 - _appBskyActorProfileSchema as appBskyActorProfileSchema; 188 - export const mainSchema = _mainSchema as mainSchema; 189 - export const profileEntrySchema = _profileEntrySchema as profileEntrySchema; 190 - export const recordSchema = _recordSchema as recordSchema; 191 - 192 - export interface AppBlentoProfile extends v.InferInput< 193 - typeof appBlentoProfileSchema 194 - > {} 195 - export interface AppBskyActorProfile extends v.InferInput< 196 - typeof appBskyActorProfileSchema 197 - > {} 198 - export interface ProfileEntry extends v.InferInput<typeof profileEntrySchema> {} 199 - export interface Record extends v.InferInput<typeof recordSchema> {} 200 - 201 - export interface $params extends v.InferInput<mainSchema["params"]> {} 202 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 203 - 204 - declare module "@atcute/lexicons/ambient" { 205 - interface XRPCQueries { 206 - "app.blento.card.getRecords": mainSchema; 207 - } 208 - }
-31
src/lexicon-types/types/app/blento/card/getStats.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - 5 - const _mainSchema = /*#__PURE__*/ v.query("app.blento.card.getStats", { 6 - params: null, 7 - output: { 8 - type: "lex", 9 - schema: /*#__PURE__*/ v.object({ 10 - collection: /*#__PURE__*/ v.string(), 11 - last_record_time_us: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()), 12 - total_records: /*#__PURE__*/ v.integer(), 13 - unique_users: /*#__PURE__*/ v.integer(), 14 - }), 15 - }, 16 - }); 17 - 18 - type main$schematype = typeof _mainSchema; 19 - 20 - export interface mainSchema extends main$schematype {} 21 - 22 - export const mainSchema = _mainSchema as mainSchema; 23 - 24 - export interface $params {} 25 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 26 - 27 - declare module "@atcute/lexicons/ambient" { 28 - interface XRPCQueries { 29 - "app.blento.card.getStats": mainSchema; 30 - } 31 - }
-56
src/lexicon-types/types/app/blento/card/getUsers.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - 5 - const _mainSchema = /*#__PURE__*/ v.query("app.blento.card.getUsers", { 6 - params: /*#__PURE__*/ v.object({ 7 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 8 - /** 9 - * @minimum 1 10 - * @maximum 100 11 - * @default 50 12 - */ 13 - limit: /*#__PURE__*/ v.optional( 14 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ 15 - /*#__PURE__*/ v.integerRange(1, 100), 16 - ]), 17 - 50, 18 - ), 19 - }), 20 - output: { 21 - type: "lex", 22 - schema: /*#__PURE__*/ v.object({ 23 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 24 - get users() { 25 - return /*#__PURE__*/ v.array(userRecordSchema); 26 - }, 27 - }), 28 - }, 29 - }); 30 - const _userRecordSchema = /*#__PURE__*/ v.object({ 31 - $type: /*#__PURE__*/ v.optional( 32 - /*#__PURE__*/ v.literal("app.blento.card.getUsers#userRecord"), 33 - ), 34 - did: /*#__PURE__*/ v.didString(), 35 - record_count: /*#__PURE__*/ v.integer(), 36 - }); 37 - 38 - type main$schematype = typeof _mainSchema; 39 - type userRecord$schematype = typeof _userRecordSchema; 40 - 41 - export interface mainSchema extends main$schematype {} 42 - export interface userRecordSchema extends userRecord$schematype {} 43 - 44 - export const mainSchema = _mainSchema as mainSchema; 45 - export const userRecordSchema = _userRecordSchema as userRecordSchema; 46 - 47 - export interface UserRecord extends v.InferInput<typeof userRecordSchema> {} 48 - 49 - export interface $params extends v.InferInput<mainSchema["params"]> {} 50 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 51 - 52 - declare module "@atcute/lexicons/ambient" { 53 - interface XRPCQueries { 54 - "app.blento.card.getUsers": mainSchema; 55 - } 56 - }
-312
src/lexicon-types/types/community/lexicon/calendar/event/getRecords.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - import * as ComAtprotoLabelDefs from "@atcute/atproto/types/label/defs"; 5 - import * as ComAtprotoRepoStrongRef from "@atcute/atproto/types/repo/strongRef"; 6 - import * as CommunityLexiconCalendarEvent from "../event.js"; 7 - 8 - const _appBlentoProfileSchema = /*#__PURE__*/ v.object({ 9 - $type: /*#__PURE__*/ v.optional( 10 - /*#__PURE__*/ v.literal( 11 - "community.lexicon.calendar.event.getRecords#appBlentoProfile", 12 - ), 13 - ), 14 - /** 15 - * @accept image/png, image/jpeg 16 - * @maxSize 1000000 17 - */ 18 - avatar: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 19 - /** 20 - * @maxLength 2560 21 - */ 22 - description: /*#__PURE__*/ v.optional( 23 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 24 - /*#__PURE__*/ v.stringLength(0, 2560), 25 - ]), 26 - ), 27 - /** 28 - * @maxLength 640 29 - */ 30 - displayName: /*#__PURE__*/ v.optional( 31 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 32 - /*#__PURE__*/ v.stringLength(0, 640), 33 - ]), 34 - ), 35 - }); 36 - const _appBskyActorProfileSchema = /*#__PURE__*/ v.object({ 37 - $type: /*#__PURE__*/ v.optional( 38 - /*#__PURE__*/ v.literal( 39 - "community.lexicon.calendar.event.getRecords#appBskyActorProfile", 40 - ), 41 - ), 42 - /** 43 - * Small image to be displayed next to posts from account. AKA, 'profile picture' 44 - * @accept image/png, image/jpeg 45 - * @maxSize 1000000 46 - */ 47 - avatar: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 48 - /** 49 - * Larger horizontal image to display behind profile view. 50 - * @accept image/png, image/jpeg 51 - * @maxSize 1000000 52 - */ 53 - banner: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 54 - createdAt: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.datetimeString()), 55 - /** 56 - * Free-form profile description text. 57 - * @maxLength 2560 58 - * @maxGraphemes 256 59 - */ 60 - description: /*#__PURE__*/ v.optional( 61 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 62 - /*#__PURE__*/ v.stringLength(0, 2560), 63 - /*#__PURE__*/ v.stringGraphemes(0, 256), 64 - ]), 65 - ), 66 - /** 67 - * @maxLength 640 68 - * @maxGraphemes 64 69 - */ 70 - displayName: /*#__PURE__*/ v.optional( 71 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 72 - /*#__PURE__*/ v.stringLength(0, 640), 73 - /*#__PURE__*/ v.stringGraphemes(0, 64), 74 - ]), 75 - ), 76 - get joinedViaStarterPack() { 77 - return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); 78 - }, 79 - /** 80 - * Self-label values, specific to the Bluesky application, on the overall account. 81 - */ 82 - get labels() { 83 - return /*#__PURE__*/ v.optional( 84 - /*#__PURE__*/ v.variant([ComAtprotoLabelDefs.selfLabelsSchema]), 85 - ); 86 - }, 87 - get pinnedPost() { 88 - return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); 89 - }, 90 - /** 91 - * Free-form pronouns text. 92 - * @maxLength 200 93 - * @maxGraphemes 20 94 - */ 95 - pronouns: /*#__PURE__*/ v.optional( 96 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 97 - /*#__PURE__*/ v.stringLength(0, 200), 98 - /*#__PURE__*/ v.stringGraphemes(0, 20), 99 - ]), 100 - ), 101 - website: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.genericUriString()), 102 - }); 103 - const _mainSchema = /*#__PURE__*/ v.query( 104 - "community.lexicon.calendar.event.getRecords", 105 - { 106 - params: /*#__PURE__*/ v.object({ 107 - /** 108 - * Filter by DID or handle (triggers on-demand backfill) 109 - */ 110 - actor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.actorIdentifierString()), 111 - /** 112 - * Maximum value for createdAt 113 - */ 114 - createdAtMax: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 115 - /** 116 - * Minimum value for createdAt 117 - */ 118 - createdAtMin: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 119 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 120 - /** 121 - * Filter by description 122 - */ 123 - description: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 124 - /** 125 - * Maximum value for endsAt 126 - */ 127 - endsAtMax: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 128 - /** 129 - * Minimum value for endsAt 130 - */ 131 - endsAtMin: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 132 - /** 133 - * Embed related records, as relName:limit (e.g. rsvps:5). Repeatable. 134 - */ 135 - hydrate: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 136 - /** 137 - * @minimum 1 138 - * @maximum 100 139 - * @default 50 140 - */ 141 - limit: /*#__PURE__*/ v.optional( 142 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ 143 - /*#__PURE__*/ v.integerRange(1, 100), 144 - ]), 145 - 50, 146 - ), 147 - /** 148 - * Filter by mode 149 - */ 150 - mode: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 151 - /** 152 - * Filter by name 153 - */ 154 - name: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 155 - /** 156 - * Include profile + identity info keyed by DID 157 - */ 158 - profiles: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.boolean()), 159 - /** 160 - * Minimum total rsvps count 161 - */ 162 - rsvpsCountMin: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()), 163 - /** 164 - * Minimum rsvps count where status = going 165 - */ 166 - rsvpsGoingCountMin: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()), 167 - /** 168 - * Minimum rsvps count where status = interested 169 - */ 170 - rsvpsInterestedCountMin: /*#__PURE__*/ v.optional( 171 - /*#__PURE__*/ v.integer(), 172 - ), 173 - /** 174 - * Minimum rsvps count where status = notgoing 175 - */ 176 - rsvpsNotgoingCountMin: /*#__PURE__*/ v.optional( 177 - /*#__PURE__*/ v.integer(), 178 - ), 179 - /** 180 - * Number of rsvps previews per record 181 - * @minimum 1 182 - * @maximum 50 183 - */ 184 - rsvpsPreview: /*#__PURE__*/ v.optional( 185 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ 186 - /*#__PURE__*/ v.integerRange(1, 50), 187 - ]), 188 - ), 189 - /** 190 - * Maximum value for startsAt 191 - */ 192 - startsAtMax: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 193 - /** 194 - * Minimum value for startsAt 195 - */ 196 - startsAtMin: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 197 - /** 198 - * Filter by status 199 - */ 200 - status: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 201 - }), 202 - output: { 203 - type: "lex", 204 - schema: /*#__PURE__*/ v.object({ 205 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 206 - get profiles() { 207 - return /*#__PURE__*/ v.optional( 208 - /*#__PURE__*/ v.array(profileEntrySchema), 209 - ); 210 - }, 211 - get records() { 212 - return /*#__PURE__*/ v.array(recordSchema); 213 - }, 214 - }), 215 - }, 216 - }, 217 - ); 218 - const _profileEntrySchema = /*#__PURE__*/ v.object({ 219 - $type: /*#__PURE__*/ v.optional( 220 - /*#__PURE__*/ v.literal( 221 - "community.lexicon.calendar.event.getRecords#profileEntry", 222 - ), 223 - ), 224 - cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 225 - collection: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.nsidString()), 226 - did: /*#__PURE__*/ v.didString(), 227 - handle: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 228 - get record() { 229 - return /*#__PURE__*/ v.optional( 230 - /*#__PURE__*/ v.variant([ 231 - appBlentoProfileSchema, 232 - appBskyActorProfileSchema, 233 - ]), 234 - ); 235 - }, 236 - rkey: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 237 - uri: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.resourceUriString()), 238 - }); 239 - const _recordSchema = /*#__PURE__*/ v.object({ 240 - $type: /*#__PURE__*/ v.optional( 241 - /*#__PURE__*/ v.literal( 242 - "community.lexicon.calendar.event.getRecords#record", 243 - ), 244 - ), 245 - cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 246 - collection: /*#__PURE__*/ v.nsidString(), 247 - did: /*#__PURE__*/ v.didString(), 248 - /** 249 - * Hydrated related records, grouped by relation name and groupBy value 250 - */ 251 - hydrates: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.unknown()), 252 - get record() { 253 - return /*#__PURE__*/ v.optional(CommunityLexiconCalendarEvent.mainSchema); 254 - }, 255 - rkey: /*#__PURE__*/ v.string(), 256 - /** 257 - * Total rsvps count 258 - */ 259 - rsvpsCount: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()), 260 - /** 261 - * rsvps count where status = going 262 - */ 263 - rsvpsGoingCount: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()), 264 - /** 265 - * rsvps count where status = interested 266 - */ 267 - rsvpsInterestedCount: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()), 268 - /** 269 - * rsvps count where status = notgoing 270 - */ 271 - rsvpsNotgoingCount: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()), 272 - time_us: /*#__PURE__*/ v.integer(), 273 - uri: /*#__PURE__*/ v.resourceUriString(), 274 - }); 275 - 276 - type appBlentoProfile$schematype = typeof _appBlentoProfileSchema; 277 - type appBskyActorProfile$schematype = typeof _appBskyActorProfileSchema; 278 - type main$schematype = typeof _mainSchema; 279 - type profileEntry$schematype = typeof _profileEntrySchema; 280 - type record$schematype = typeof _recordSchema; 281 - 282 - export interface appBlentoProfileSchema extends appBlentoProfile$schematype {} 283 - export interface appBskyActorProfileSchema extends appBskyActorProfile$schematype {} 284 - export interface mainSchema extends main$schematype {} 285 - export interface profileEntrySchema extends profileEntry$schematype {} 286 - export interface recordSchema extends record$schematype {} 287 - 288 - export const appBlentoProfileSchema = 289 - _appBlentoProfileSchema as appBlentoProfileSchema; 290 - export const appBskyActorProfileSchema = 291 - _appBskyActorProfileSchema as appBskyActorProfileSchema; 292 - export const mainSchema = _mainSchema as mainSchema; 293 - export const profileEntrySchema = _profileEntrySchema as profileEntrySchema; 294 - export const recordSchema = _recordSchema as recordSchema; 295 - 296 - export interface AppBlentoProfile extends v.InferInput< 297 - typeof appBlentoProfileSchema 298 - > {} 299 - export interface AppBskyActorProfile extends v.InferInput< 300 - typeof appBskyActorProfileSchema 301 - > {} 302 - export interface ProfileEntry extends v.InferInput<typeof profileEntrySchema> {} 303 - export interface Record extends v.InferInput<typeof recordSchema> {} 304 - 305 - export interface $params extends v.InferInput<mainSchema["params"]> {} 306 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 307 - 308 - declare module "@atcute/lexicons/ambient" { 309 - interface XRPCQueries { 310 - "community.lexicon.calendar.event.getRecords": mainSchema; 311 - } 312 - }
-36
src/lexicon-types/types/community/lexicon/calendar/event/getStats.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - 5 - const _mainSchema = /*#__PURE__*/ v.query( 6 - "community.lexicon.calendar.event.getStats", 7 - { 8 - params: null, 9 - output: { 10 - type: "lex", 11 - schema: /*#__PURE__*/ v.object({ 12 - collection: /*#__PURE__*/ v.string(), 13 - last_record_time_us: /*#__PURE__*/ v.optional( 14 - /*#__PURE__*/ v.integer(), 15 - ), 16 - total_records: /*#__PURE__*/ v.integer(), 17 - unique_users: /*#__PURE__*/ v.integer(), 18 - }), 19 - }, 20 - }, 21 - ); 22 - 23 - type main$schematype = typeof _mainSchema; 24 - 25 - export interface mainSchema extends main$schematype {} 26 - 27 - export const mainSchema = _mainSchema as mainSchema; 28 - 29 - export interface $params {} 30 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 31 - 32 - declare module "@atcute/lexicons/ambient" { 33 - interface XRPCQueries { 34 - "community.lexicon.calendar.event.getStats": mainSchema; 35 - } 36 - }
-61
src/lexicon-types/types/community/lexicon/calendar/event/getUsers.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - 5 - const _mainSchema = /*#__PURE__*/ v.query( 6 - "community.lexicon.calendar.event.getUsers", 7 - { 8 - params: /*#__PURE__*/ v.object({ 9 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 10 - /** 11 - * @minimum 1 12 - * @maximum 100 13 - * @default 50 14 - */ 15 - limit: /*#__PURE__*/ v.optional( 16 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ 17 - /*#__PURE__*/ v.integerRange(1, 100), 18 - ]), 19 - 50, 20 - ), 21 - }), 22 - output: { 23 - type: "lex", 24 - schema: /*#__PURE__*/ v.object({ 25 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 26 - get users() { 27 - return /*#__PURE__*/ v.array(userRecordSchema); 28 - }, 29 - }), 30 - }, 31 - }, 32 - ); 33 - const _userRecordSchema = /*#__PURE__*/ v.object({ 34 - $type: /*#__PURE__*/ v.optional( 35 - /*#__PURE__*/ v.literal( 36 - "community.lexicon.calendar.event.getUsers#userRecord", 37 - ), 38 - ), 39 - did: /*#__PURE__*/ v.didString(), 40 - record_count: /*#__PURE__*/ v.integer(), 41 - }); 42 - 43 - type main$schematype = typeof _mainSchema; 44 - type userRecord$schematype = typeof _userRecordSchema; 45 - 46 - export interface mainSchema extends main$schematype {} 47 - export interface userRecordSchema extends userRecord$schematype {} 48 - 49 - export const mainSchema = _mainSchema as mainSchema; 50 - export const userRecordSchema = _userRecordSchema as userRecordSchema; 51 - 52 - export interface UserRecord extends v.InferInput<typeof userRecordSchema> {} 53 - 54 - export interface $params extends v.InferInput<mainSchema["params"]> {} 55 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 56 - 57 - declare module "@atcute/lexicons/ambient" { 58 - interface XRPCQueries { 59 - "community.lexicon.calendar.event.getUsers": mainSchema; 60 - } 61 - }
-230
src/lexicon-types/types/community/lexicon/calendar/rsvp/getRecords.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - import * as ComAtprotoLabelDefs from "@atcute/atproto/types/label/defs"; 5 - import * as ComAtprotoRepoStrongRef from "@atcute/atproto/types/repo/strongRef"; 6 - import * as CommunityLexiconCalendarRsvp from "../rsvp.js"; 7 - 8 - const _appBlentoProfileSchema = /*#__PURE__*/ v.object({ 9 - $type: /*#__PURE__*/ v.optional( 10 - /*#__PURE__*/ v.literal( 11 - "community.lexicon.calendar.rsvp.getRecords#appBlentoProfile", 12 - ), 13 - ), 14 - /** 15 - * @accept image/png, image/jpeg 16 - * @maxSize 1000000 17 - */ 18 - avatar: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 19 - /** 20 - * @maxLength 2560 21 - */ 22 - description: /*#__PURE__*/ v.optional( 23 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 24 - /*#__PURE__*/ v.stringLength(0, 2560), 25 - ]), 26 - ), 27 - /** 28 - * @maxLength 640 29 - */ 30 - displayName: /*#__PURE__*/ v.optional( 31 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 32 - /*#__PURE__*/ v.stringLength(0, 640), 33 - ]), 34 - ), 35 - }); 36 - const _appBskyActorProfileSchema = /*#__PURE__*/ v.object({ 37 - $type: /*#__PURE__*/ v.optional( 38 - /*#__PURE__*/ v.literal( 39 - "community.lexicon.calendar.rsvp.getRecords#appBskyActorProfile", 40 - ), 41 - ), 42 - /** 43 - * Small image to be displayed next to posts from account. AKA, 'profile picture' 44 - * @accept image/png, image/jpeg 45 - * @maxSize 1000000 46 - */ 47 - avatar: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 48 - /** 49 - * Larger horizontal image to display behind profile view. 50 - * @accept image/png, image/jpeg 51 - * @maxSize 1000000 52 - */ 53 - banner: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.blob()), 54 - createdAt: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.datetimeString()), 55 - /** 56 - * Free-form profile description text. 57 - * @maxLength 2560 58 - * @maxGraphemes 256 59 - */ 60 - description: /*#__PURE__*/ v.optional( 61 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 62 - /*#__PURE__*/ v.stringLength(0, 2560), 63 - /*#__PURE__*/ v.stringGraphemes(0, 256), 64 - ]), 65 - ), 66 - /** 67 - * @maxLength 640 68 - * @maxGraphemes 64 69 - */ 70 - displayName: /*#__PURE__*/ v.optional( 71 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 72 - /*#__PURE__*/ v.stringLength(0, 640), 73 - /*#__PURE__*/ v.stringGraphemes(0, 64), 74 - ]), 75 - ), 76 - get joinedViaStarterPack() { 77 - return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); 78 - }, 79 - /** 80 - * Self-label values, specific to the Bluesky application, on the overall account. 81 - */ 82 - get labels() { 83 - return /*#__PURE__*/ v.optional( 84 - /*#__PURE__*/ v.variant([ComAtprotoLabelDefs.selfLabelsSchema]), 85 - ); 86 - }, 87 - get pinnedPost() { 88 - return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); 89 - }, 90 - /** 91 - * Free-form pronouns text. 92 - * @maxLength 200 93 - * @maxGraphemes 20 94 - */ 95 - pronouns: /*#__PURE__*/ v.optional( 96 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ 97 - /*#__PURE__*/ v.stringLength(0, 200), 98 - /*#__PURE__*/ v.stringGraphemes(0, 20), 99 - ]), 100 - ), 101 - website: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.genericUriString()), 102 - }); 103 - const _mainSchema = /*#__PURE__*/ v.query( 104 - "community.lexicon.calendar.rsvp.getRecords", 105 - { 106 - params: /*#__PURE__*/ v.object({ 107 - /** 108 - * Filter by DID or handle (triggers on-demand backfill) 109 - */ 110 - actor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.actorIdentifierString()), 111 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 112 - /** 113 - * Embed related records, as relName:limit (e.g. rsvps:5). Repeatable. 114 - */ 115 - hydrate: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 116 - /** 117 - * @minimum 1 118 - * @maximum 100 119 - * @default 50 120 - */ 121 - limit: /*#__PURE__*/ v.optional( 122 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ 123 - /*#__PURE__*/ v.integerRange(1, 100), 124 - ]), 125 - 50, 126 - ), 127 - /** 128 - * Include profile + identity info keyed by DID 129 - */ 130 - profiles: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.boolean()), 131 - /** 132 - * Filter by status 133 - */ 134 - status: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 135 - /** 136 - * Filter by subject.uri 137 - */ 138 - subjectUri: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 139 - }), 140 - output: { 141 - type: "lex", 142 - schema: /*#__PURE__*/ v.object({ 143 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 144 - get profiles() { 145 - return /*#__PURE__*/ v.optional( 146 - /*#__PURE__*/ v.array(profileEntrySchema), 147 - ); 148 - }, 149 - get records() { 150 - return /*#__PURE__*/ v.array(recordSchema); 151 - }, 152 - }), 153 - }, 154 - }, 155 - ); 156 - const _profileEntrySchema = /*#__PURE__*/ v.object({ 157 - $type: /*#__PURE__*/ v.optional( 158 - /*#__PURE__*/ v.literal( 159 - "community.lexicon.calendar.rsvp.getRecords#profileEntry", 160 - ), 161 - ), 162 - cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 163 - collection: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.nsidString()), 164 - did: /*#__PURE__*/ v.didString(), 165 - handle: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 166 - get record() { 167 - return /*#__PURE__*/ v.optional( 168 - /*#__PURE__*/ v.variant([ 169 - appBlentoProfileSchema, 170 - appBskyActorProfileSchema, 171 - ]), 172 - ); 173 - }, 174 - rkey: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 175 - uri: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.resourceUriString()), 176 - }); 177 - const _recordSchema = /*#__PURE__*/ v.object({ 178 - $type: /*#__PURE__*/ v.optional( 179 - /*#__PURE__*/ v.literal( 180 - "community.lexicon.calendar.rsvp.getRecords#record", 181 - ), 182 - ), 183 - cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 184 - collection: /*#__PURE__*/ v.nsidString(), 185 - did: /*#__PURE__*/ v.didString(), 186 - get record() { 187 - return /*#__PURE__*/ v.optional(CommunityLexiconCalendarRsvp.mainSchema); 188 - }, 189 - rkey: /*#__PURE__*/ v.string(), 190 - time_us: /*#__PURE__*/ v.integer(), 191 - uri: /*#__PURE__*/ v.resourceUriString(), 192 - }); 193 - 194 - type appBlentoProfile$schematype = typeof _appBlentoProfileSchema; 195 - type appBskyActorProfile$schematype = typeof _appBskyActorProfileSchema; 196 - type main$schematype = typeof _mainSchema; 197 - type profileEntry$schematype = typeof _profileEntrySchema; 198 - type record$schematype = typeof _recordSchema; 199 - 200 - export interface appBlentoProfileSchema extends appBlentoProfile$schematype {} 201 - export interface appBskyActorProfileSchema extends appBskyActorProfile$schematype {} 202 - export interface mainSchema extends main$schematype {} 203 - export interface profileEntrySchema extends profileEntry$schematype {} 204 - export interface recordSchema extends record$schematype {} 205 - 206 - export const appBlentoProfileSchema = 207 - _appBlentoProfileSchema as appBlentoProfileSchema; 208 - export const appBskyActorProfileSchema = 209 - _appBskyActorProfileSchema as appBskyActorProfileSchema; 210 - export const mainSchema = _mainSchema as mainSchema; 211 - export const profileEntrySchema = _profileEntrySchema as profileEntrySchema; 212 - export const recordSchema = _recordSchema as recordSchema; 213 - 214 - export interface AppBlentoProfile extends v.InferInput< 215 - typeof appBlentoProfileSchema 216 - > {} 217 - export interface AppBskyActorProfile extends v.InferInput< 218 - typeof appBskyActorProfileSchema 219 - > {} 220 - export interface ProfileEntry extends v.InferInput<typeof profileEntrySchema> {} 221 - export interface Record extends v.InferInput<typeof recordSchema> {} 222 - 223 - export interface $params extends v.InferInput<mainSchema["params"]> {} 224 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 225 - 226 - declare module "@atcute/lexicons/ambient" { 227 - interface XRPCQueries { 228 - "community.lexicon.calendar.rsvp.getRecords": mainSchema; 229 - } 230 - }
-36
src/lexicon-types/types/community/lexicon/calendar/rsvp/getStats.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - 5 - const _mainSchema = /*#__PURE__*/ v.query( 6 - "community.lexicon.calendar.rsvp.getStats", 7 - { 8 - params: null, 9 - output: { 10 - type: "lex", 11 - schema: /*#__PURE__*/ v.object({ 12 - collection: /*#__PURE__*/ v.string(), 13 - last_record_time_us: /*#__PURE__*/ v.optional( 14 - /*#__PURE__*/ v.integer(), 15 - ), 16 - total_records: /*#__PURE__*/ v.integer(), 17 - unique_users: /*#__PURE__*/ v.integer(), 18 - }), 19 - }, 20 - }, 21 - ); 22 - 23 - type main$schematype = typeof _mainSchema; 24 - 25 - export interface mainSchema extends main$schematype {} 26 - 27 - export const mainSchema = _mainSchema as mainSchema; 28 - 29 - export interface $params {} 30 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 31 - 32 - declare module "@atcute/lexicons/ambient" { 33 - interface XRPCQueries { 34 - "community.lexicon.calendar.rsvp.getStats": mainSchema; 35 - } 36 - }
-61
src/lexicon-types/types/community/lexicon/calendar/rsvp/getUsers.ts
··· 1 - import type {} from "@atcute/lexicons"; 2 - import * as v from "@atcute/lexicons/validations"; 3 - import type {} from "@atcute/lexicons/ambient"; 4 - 5 - const _mainSchema = /*#__PURE__*/ v.query( 6 - "community.lexicon.calendar.rsvp.getUsers", 7 - { 8 - params: /*#__PURE__*/ v.object({ 9 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 10 - /** 11 - * @minimum 1 12 - * @maximum 100 13 - * @default 50 14 - */ 15 - limit: /*#__PURE__*/ v.optional( 16 - /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ 17 - /*#__PURE__*/ v.integerRange(1, 100), 18 - ]), 19 - 50, 20 - ), 21 - }), 22 - output: { 23 - type: "lex", 24 - schema: /*#__PURE__*/ v.object({ 25 - cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), 26 - get users() { 27 - return /*#__PURE__*/ v.array(userRecordSchema); 28 - }, 29 - }), 30 - }, 31 - }, 32 - ); 33 - const _userRecordSchema = /*#__PURE__*/ v.object({ 34 - $type: /*#__PURE__*/ v.optional( 35 - /*#__PURE__*/ v.literal( 36 - "community.lexicon.calendar.rsvp.getUsers#userRecord", 37 - ), 38 - ), 39 - did: /*#__PURE__*/ v.didString(), 40 - record_count: /*#__PURE__*/ v.integer(), 41 - }); 42 - 43 - type main$schematype = typeof _mainSchema; 44 - type userRecord$schematype = typeof _userRecordSchema; 45 - 46 - export interface mainSchema extends main$schematype {} 47 - export interface userRecordSchema extends userRecord$schematype {} 48 - 49 - export const mainSchema = _mainSchema as mainSchema; 50 - export const userRecordSchema = _userRecordSchema as userRecordSchema; 51 - 52 - export interface UserRecord extends v.InferInput<typeof userRecordSchema> {} 53 - 54 - export interface $params extends v.InferInput<mainSchema["params"]> {} 55 - export interface $output extends v.InferXRPCBodyInput<mainSchema["output"]> {} 56 - 57 - declare module "@atcute/lexicons/ambient" { 58 - interface XRPCQueries { 59 - "community.lexicon.calendar.rsvp.getUsers": mainSchema; 60 - } 61 - }
+1
src/lib/contrail.ts
··· 69 69 70 70 type ListEventsParams = { 71 71 actor?: ActorIdentifier; 72 + search?: string; 72 73 startsAtMin?: string; 73 74 startsAtMax?: string; 74 75 endsAtMin?: string;
+5
src/routes/+layout.svelte
··· 15 15 <a href="/calendar" class="text-base-500 hover:text-base-900 dark:text-base-400 dark:hover:text-base-50 text-sm font-medium transition-colors">calendar</a> 16 16 </div> 17 17 <div class="flex items-center gap-4"> 18 + <a href="/search" class="text-base-500 hover:text-base-900 dark:text-base-400 dark:hover:text-base-50 transition-colors"> 19 + <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="size-5"> 20 + <path stroke-linecap="round" stroke-linejoin="round" d="m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z" /> 21 + </svg> 22 + </a> 18 23 {#if user.isLoggedIn} 19 24 <Button href="/create">Create Event</Button> 20 25 <a href="/p/{user.profile?.handle || user.did}" class="shrink-0">
+34
src/routes/search/+page.server.ts
··· 1 + import { flattenEventRecords, listEventRecordsFromContrail } from '$lib/contrail'; 2 + import type { PageServerLoad } from './$types'; 3 + 4 + const PAGE_SIZE = 20; 5 + 6 + export const load: PageServerLoad = async ({ url }) => { 7 + const q = url.searchParams.get('q')?.trim() || ''; 8 + const cursor = url.searchParams.get('cursor') ?? undefined; 9 + 10 + if (!q) return { events: [], handles: {}, cursor: null, query: '' }; 11 + 12 + const response = await listEventRecordsFromContrail({ 13 + search: q, 14 + profiles: true, 15 + sort: 'startsAt', 16 + order: 'desc', 17 + limit: PAGE_SIZE, 18 + cursor 19 + }); 20 + 21 + if (!response) return { events: [], handles: {}, cursor: null, query: q }; 22 + 23 + const handles: Record<string, string> = {}; 24 + for (const p of response.profiles ?? []) { 25 + if (p.handle) handles[p.did] = p.handle; 26 + } 27 + 28 + return { 29 + events: flattenEventRecords(response.records), 30 + handles, 31 + cursor: response.cursor ?? null, 32 + query: q 33 + }; 34 + };
+58
src/routes/search/+page.svelte
··· 1 + <script lang="ts"> 2 + import EventCard from '$lib/components/EventCard.svelte'; 3 + import { Input, Button } from '@foxui/core'; 4 + import { goto } from '$app/navigation'; 5 + 6 + let { data } = $props(); 7 + 8 + let query = $state(data.query); 9 + 10 + function handleSearch(e: Event) { 11 + e.preventDefault(); 12 + const q = query.trim(); 13 + if (q) { 14 + goto(`/search?q=${encodeURIComponent(q)}`); 15 + } 16 + } 17 + </script> 18 + 19 + <svelte:head> 20 + <title>{data.query ? `"${data.query}" - Search` : 'Search Events'}</title> 21 + </svelte:head> 22 + 23 + <div class="mx-auto max-w-3xl px-6 py-8 sm:py-12"> 24 + <h1 class="text-base-900 dark:text-base-50 mb-6 text-2xl font-bold">Search Events</h1> 25 + 26 + <form onsubmit={handleSearch} class="mb-8 flex gap-2"> 27 + <Input 28 + type="text" 29 + bind:value={query} 30 + placeholder="Search by name, description..." 31 + class="flex-1" 32 + /> 33 + <Button type="submit" disabled={!query.trim()}>Search</Button> 34 + </form> 35 + 36 + {#if data.query} 37 + {#if data.events.length === 0} 38 + <p class="text-base-500 py-8 text-center">No events found for "{data.query}".</p> 39 + {:else} 40 + <div class="grid gap-6 sm:grid-cols-2"> 41 + {#each data.events as event (event.uri)} 42 + <EventCard {event} actor={data.handles[event.did]} /> 43 + {/each} 44 + </div> 45 + 46 + {#if data.cursor} 47 + <div class="mt-8 text-center"> 48 + <a 49 + href="?q={encodeURIComponent(data.query)}&cursor={data.cursor}" 50 + class="bg-base-200 dark:bg-base-800 text-base-900 dark:text-base-50 hover:bg-base-300 dark:hover:bg-base-700 inline-block rounded-xl px-5 py-2 text-sm font-medium transition-colors" 51 + > 52 + Load more 53 + </a> 54 + </div> 55 + {/if} 56 + {/if} 57 + {/if} 58 + </div>
static/favicon.png

This is a binary file and will not be displayed.