From bcc5afea49ede6373c9570db381282de21918d8d Mon Sep 17 00:00:00 2001 From: Seongmin Lee Date: Wed, 16 Sep 2026 00:24:16 +0900 Subject: [PATCH] web: codegen Signed-off-by: Seongmin Lee --- web/src/lib/api/lexicons/index.ts | 25 ++++-- .../temp/{repo => webhook}/createWebhook.ts | 4 +- .../temp/{repo => webhook}/deleteWebhook.ts | 4 +- .../getDeliveriesForWebhooks.ts} | 17 ++-- .../temp/{repo => webhook}/listWebhooks.ts | 6 +- .../retryDelivery.ts} | 4 +- .../temp/{repo => webhook}/toggleWebhook.ts | 4 +- .../temp/{repo => webhook}/updateWebhook.ts | 4 +- .../types/sh/tangled/ci/triggerPipeline.ts | 4 +- .../lexicons/types/sh/tangled/embed/commit.ts | 24 ++++++ .../lexicons/types/sh/tangled/feed/defs.ts | 36 +++++++++ .../types/sh/tangled/feed/listComments.ts | 3 +- .../api/lexicons/types/sh/tangled/knot/ban.ts | 32 ++++++++ .../lexicons/types/sh/tangled/knot/unban.ts | 32 ++++++++ .../types/sh/tangled/repo/listCobVersions.ts | 81 +++++++++++++++++++ .../lexicons/types/sh/tangled/repo/push.ts | 23 ++++++ .../lexicons/types/sh/tangled/repo/rename.ts | 43 ++++++++++ .../types/sh/tangled/repo/reserveKey.ts | 42 ++++++++++ .../sh/tangled/repo/setContributionPolicy.ts | 43 ++++++++++ 19 files changed, 402 insertions(+), 29 deletions(-) rename web/src/lib/api/lexicons/types/org/tangled/temp/{repo => webhook}/createWebhook.ts (94%) rename web/src/lib/api/lexicons/types/org/tangled/temp/{repo => webhook}/deleteWebhook.ts (89%) rename web/src/lib/api/lexicons/types/org/tangled/temp/{repo/listWebhookDeliveries.ts => webhook/getDeliveriesForWebhooks.ts} (82%) rename web/src/lib/api/lexicons/types/org/tangled/temp/{repo => webhook}/listWebhooks.ts (91%) rename web/src/lib/api/lexicons/types/org/tangled/temp/{repo/retryWebhookDelivery.ts => webhook/retryDelivery.ts} (90%) rename web/src/lib/api/lexicons/types/org/tangled/temp/{repo => webhook}/toggleWebhook.ts (91%) rename web/src/lib/api/lexicons/types/org/tangled/temp/{repo => webhook}/updateWebhook.ts (92%) create mode 100644 web/src/lib/api/lexicons/types/sh/tangled/feed/defs.ts create mode 100644 web/src/lib/api/lexicons/types/sh/tangled/knot/ban.ts create mode 100644 web/src/lib/api/lexicons/types/sh/tangled/knot/unban.ts create mode 100644 web/src/lib/api/lexicons/types/sh/tangled/repo/listCobVersions.ts create mode 100644 web/src/lib/api/lexicons/types/sh/tangled/repo/push.ts create mode 100644 web/src/lib/api/lexicons/types/sh/tangled/repo/rename.ts create mode 100644 web/src/lib/api/lexicons/types/sh/tangled/repo/reserveKey.ts create mode 100644 web/src/lib/api/lexicons/types/sh/tangled/repo/setContributionPolicy.ts diff --git a/web/src/lib/api/lexicons/index.ts b/web/src/lib/api/lexicons/index.ts index a02c85079..b66b725f6 100644 --- a/web/src/lib/api/lexicons/index.ts +++ b/web/src/lib/api/lexicons/index.ts @@ -21,16 +21,9 @@ export * as OrgTangledTempNotificationMarkAllRead from "./types/org/tangled/temp export * as OrgTangledTempNotificationMarkEntityRead from "./types/org/tangled/temp/notification/markEntityRead.js"; export * as OrgTangledTempNotificationUpdatePreferences from "./types/org/tangled/temp/notification/updatePreferences.js"; export * as OrgTangledTempNotificationUpdateSeen from "./types/org/tangled/temp/notification/updateSeen.js"; -export * as OrgTangledTempRepoCreateWebhook from "./types/org/tangled/temp/repo/createWebhook.js"; -export * as OrgTangledTempRepoDeleteWebhook from "./types/org/tangled/temp/repo/deleteWebhook.js"; export * as OrgTangledTempRepoDisableSite from "./types/org/tangled/temp/repo/disableSite.js"; export * as OrgTangledTempRepoGetSiteConfig from "./types/org/tangled/temp/repo/getSiteConfig.js"; -export * as OrgTangledTempRepoListWebhookDeliveries from "./types/org/tangled/temp/repo/listWebhookDeliveries.js"; -export * as OrgTangledTempRepoListWebhooks from "./types/org/tangled/temp/repo/listWebhooks.js"; -export * as OrgTangledTempRepoRetryWebhookDelivery from "./types/org/tangled/temp/repo/retryWebhookDelivery.js"; -export * as OrgTangledTempRepoToggleWebhook from "./types/org/tangled/temp/repo/toggleWebhook.js"; export * as OrgTangledTempRepoUpdateSiteConfig from "./types/org/tangled/temp/repo/updateSiteConfig.js"; -export * as OrgTangledTempRepoUpdateWebhook from "./types/org/tangled/temp/repo/updateWebhook.js"; export * as OrgTangledTempSearchSearchCode from "./types/org/tangled/temp/search/searchCode.js"; export * as OrgTangledTempSiteClaimDomain from "./types/org/tangled/temp/site/claimDomain.js"; export * as OrgTangledTempSiteGetDomainClaim from "./types/org/tangled/temp/site/getDomainClaim.js"; @@ -46,6 +39,13 @@ export * as OrgTangledTempSpindleQuotaList from "./types/org/tangled/temp/spindl export * as OrgTangledTempSpindleQuotaSet from "./types/org/tangled/temp/spindle/quota/set.js"; export * as OrgTangledTempSpindleQuotaUnset from "./types/org/tangled/temp/spindle/quota/unset.js"; export * as OrgTangledTempSpindleQuotaUsage from "./types/org/tangled/temp/spindle/quota/usage.js"; +export * as OrgTangledTempWebhookCreateWebhook from "./types/org/tangled/temp/webhook/createWebhook.js"; +export * as OrgTangledTempWebhookDeleteWebhook from "./types/org/tangled/temp/webhook/deleteWebhook.js"; +export * as OrgTangledTempWebhookGetDeliveriesForWebhooks from "./types/org/tangled/temp/webhook/getDeliveriesForWebhooks.js"; +export * as OrgTangledTempWebhookListWebhooks from "./types/org/tangled/temp/webhook/listWebhooks.js"; +export * as OrgTangledTempWebhookRetryDelivery from "./types/org/tangled/temp/webhook/retryDelivery.js"; +export * as OrgTangledTempWebhookToggleWebhook from "./types/org/tangled/temp/webhook/toggleWebhook.js"; +export * as OrgTangledTempWebhookUpdateWebhook from "./types/org/tangled/temp/webhook/updateWebhook.js"; export * as ShTangledActorDefs from "./types/sh/tangled/actor/defs.js"; export * as ShTangledActorGetProfile from "./types/sh/tangled/actor/getProfile.js"; export * as ShTangledActorGetProfileActivity from "./types/sh/tangled/actor/getProfileActivity.js"; @@ -70,6 +70,7 @@ export * as ShTangledFeedCountReactions from "./types/sh/tangled/feed/countReact export * as ShTangledFeedCountReactionsBy from "./types/sh/tangled/feed/countReactionsBy.js"; export * as ShTangledFeedCountStars from "./types/sh/tangled/feed/countStars.js"; export * as ShTangledFeedCountStarsBy from "./types/sh/tangled/feed/countStarsBy.js"; +export * as ShTangledFeedDefs from "./types/sh/tangled/feed/defs.js"; export * as ShTangledFeedGetStar from "./types/sh/tangled/feed/getStar.js"; export * as ShTangledFeedGetTimeline from "./types/sh/tangled/feed/getTimeline.js"; export * as ShTangledFeedListComments from "./types/sh/tangled/feed/listComments.js"; @@ -106,7 +107,8 @@ export * as ShTangledGitTempListCommits from "./types/sh/tangled/git/temp/listCo export * as ShTangledGitTempListLanguages from "./types/sh/tangled/git/temp/listLanguages.js"; export * as ShTangledGitTempListTags from "./types/sh/tangled/git/temp/listTags.js"; export * as ShTangledGitTemp2GetBlame from "./types/sh/tangled/git/temp2/getBlame.js"; -export * as ShTangledGitTemp2GetCommitStats from "./types/sh/tangled/git/temp2/getCommitStats.js";export * as ShTangledGitTemp2GetDiff from "./types/sh/tangled/git/temp2/getDiff.js"; +export * as ShTangledGitTemp2GetCommitStats from "./types/sh/tangled/git/temp2/getCommitStats.js"; +export * as ShTangledGitTemp2GetDiff from "./types/sh/tangled/git/temp2/getDiff.js"; export * as ShTangledGitTemp2GetInterdiff from "./types/sh/tangled/git/temp2/getInterdiff.js"; export * as ShTangledGitTemp2ListCommits from "./types/sh/tangled/git/temp2/listCommits.js"; export * as ShTangledGitTemp2MergeCheck from "./types/sh/tangled/git/temp2/mergeCheck.js"; @@ -126,6 +128,7 @@ export * as ShTangledIdentityResolveCommitters from "./types/sh/tangled/identity export * as ShTangledKnot from "./types/sh/tangled/knot.js"; export * as ShTangledKnotAcceptMembership from "./types/sh/tangled/knot/acceptMembership.js"; export * as ShTangledKnotAddMember from "./types/sh/tangled/knot/addMember.js"; +export * as ShTangledKnotBan from "./types/sh/tangled/knot/ban.js"; export * as ShTangledKnotCountKnots from "./types/sh/tangled/knot/countKnots.js"; export * as ShTangledKnotCountMembers from "./types/sh/tangled/knot/countMembers.js"; export * as ShTangledKnotCountMembersBy from "./types/sh/tangled/knot/countMembersBy.js"; @@ -139,6 +142,7 @@ export * as ShTangledKnotMember from "./types/sh/tangled/knot/member.js"; export * as ShTangledKnotMemberAcceptance from "./types/sh/tangled/knot/memberAcceptance.js"; export * as ShTangledKnotMemberInvite from "./types/sh/tangled/knot/memberInvite.js"; export * as ShTangledKnotRemoveMember from "./types/sh/tangled/knot/removeMember.js"; +export * as ShTangledKnotUnban from "./types/sh/tangled/knot/unban.js"; export * as ShTangledKnotVersion from "./types/sh/tangled/knot/version.js"; export * as ShTangledLabelCountDefinitions from "./types/sh/tangled/label/countDefinitions.js"; export * as ShTangledLabelCountOps from "./types/sh/tangled/label/countOps.js"; @@ -224,6 +228,7 @@ export * as ShTangledRepoIssueStateOpen from "./types/sh/tangled/repo/issue/stat export * as ShTangledRepoLanguages from "./types/sh/tangled/repo/languages.js"; export * as ShTangledRepoListArtifacts from "./types/sh/tangled/repo/listArtifacts.js"; export * as ShTangledRepoListArtifactsBy from "./types/sh/tangled/repo/listArtifactsBy.js"; +export * as ShTangledRepoListCobVersions from "./types/sh/tangled/repo/listCobVersions.js"; export * as ShTangledRepoListCollaboratorInvites from "./types/sh/tangled/repo/listCollaboratorInvites.js"; export * as ShTangledRepoListCollaboratorInvitesBy from "./types/sh/tangled/repo/listCollaboratorInvitesBy.js"; export * as ShTangledRepoListCollaborators from "./types/sh/tangled/repo/listCollaborators.js"; @@ -247,8 +252,12 @@ export * as ShTangledRepoPullStatus from "./types/sh/tangled/repo/pull/status.js export * as ShTangledRepoPullStatusClosed from "./types/sh/tangled/repo/pull/status/closed.js"; export * as ShTangledRepoPullStatusMerged from "./types/sh/tangled/repo/pull/status/merged.js"; export * as ShTangledRepoPullStatusOpen from "./types/sh/tangled/repo/pull/status/open.js"; +export * as ShTangledRepoPush from "./types/sh/tangled/repo/push.js"; export * as ShTangledRepoRemoveCollaborator from "./types/sh/tangled/repo/removeCollaborator.js"; export * as ShTangledRepoRemoveSecret from "./types/sh/tangled/repo/removeSecret.js"; +export * as ShTangledRepoRename from "./types/sh/tangled/repo/rename.js"; +export * as ShTangledRepoReserveKey from "./types/sh/tangled/repo/reserveKey.js"; +export * as ShTangledRepoSetContributionPolicy from "./types/sh/tangled/repo/setContributionPolicy.js"; export * as ShTangledRepoSetDefaultBranch from "./types/sh/tangled/repo/setDefaultBranch.js"; export * as ShTangledRepoTag from "./types/sh/tangled/repo/tag.js"; export * as ShTangledRepoTags from "./types/sh/tangled/repo/tags.js"; diff --git a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/createWebhook.ts b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/createWebhook.ts similarity index 94% rename from web/src/lib/api/lexicons/types/org/tangled/temp/repo/createWebhook.ts rename to web/src/lib/api/lexicons/types/org/tangled/temp/webhook/createWebhook.ts index 9800e048e..ab14857f8 100644 --- a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/createWebhook.ts +++ b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/createWebhook.ts @@ -3,7 +3,7 @@ import * as v from "@atcute/lexicons/validations"; import type {} from "@atcute/lexicons/ambient"; const _mainSchema = /*#__PURE__*/ v.procedure( - "org.tangled.temp.repo.createWebhook", + "org.tangled.temp.webhook.createWebhook", { params: null, input: { @@ -55,6 +55,6 @@ export interface $output extends v.InferXRPCBodyInput {} declare module "@atcute/lexicons/ambient" { interface XRPCProcedures { - "org.tangled.temp.repo.createWebhook": mainSchema; + "org.tangled.temp.webhook.createWebhook": mainSchema; } } diff --git a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/deleteWebhook.ts b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/deleteWebhook.ts similarity index 89% rename from web/src/lib/api/lexicons/types/org/tangled/temp/repo/deleteWebhook.ts rename to web/src/lib/api/lexicons/types/org/tangled/temp/webhook/deleteWebhook.ts index fcb7c7085..0db7c4ff8 100644 --- a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/deleteWebhook.ts +++ b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/deleteWebhook.ts @@ -3,7 +3,7 @@ import * as v from "@atcute/lexicons/validations"; import type {} from "@atcute/lexicons/ambient"; const _mainSchema = /*#__PURE__*/ v.procedure( - "org.tangled.temp.repo.deleteWebhook", + "org.tangled.temp.webhook.deleteWebhook", { params: null, input: { @@ -34,6 +34,6 @@ export interface $input extends v.InferXRPCBodyInput {} declare module "@atcute/lexicons/ambient" { interface XRPCProcedures { - "org.tangled.temp.repo.deleteWebhook": mainSchema; + "org.tangled.temp.webhook.deleteWebhook": mainSchema; } } diff --git a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/listWebhookDeliveries.ts b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/getDeliveriesForWebhooks.ts similarity index 82% rename from web/src/lib/api/lexicons/types/org/tangled/temp/repo/listWebhookDeliveries.ts rename to web/src/lib/api/lexicons/types/org/tangled/temp/webhook/getDeliveriesForWebhooks.ts index 37ae1ea4e..406e63082 100644 --- a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/listWebhookDeliveries.ts +++ b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/getDeliveriesForWebhooks.ts @@ -5,7 +5,7 @@ import type {} from "@atcute/lexicons/ambient"; const _deliverySchema = /*#__PURE__*/ v.object({ $type: /*#__PURE__*/ v.optional( /*#__PURE__*/ v.literal( - "org.tangled.temp.repo.listWebhookDeliveries#delivery", + "org.tangled.temp.webhook.getDeliveriesForWebhooks#delivery", ), ), createdAt: /*#__PURE__*/ v.datetimeString(), @@ -23,23 +23,30 @@ const _deliverySchema = /*#__PURE__*/ v.object({ responseCode: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.integer()), success: /*#__PURE__*/ v.boolean(), url: /*#__PURE__*/ v.genericUriString(), + webhookId: /*#__PURE__*/ v.integer(), }); const _mainSchema = /*#__PURE__*/ v.query( - "org.tangled.temp.repo.listWebhookDeliveries", + "org.tangled.temp.webhook.getDeliveriesForWebhooks", { params: /*#__PURE__*/ v.object({ /** - * Webhook ID. + * @minLength 1 + * @maxLength 50 */ - id: /*#__PURE__*/ v.integer(), + ids: /*#__PURE__*/ v.constrain( + /*#__PURE__*/ v.array(/*#__PURE__*/ v.integer()), + [/*#__PURE__*/ v.arrayLength(1, 50)], + ), /** * @minimum 1 * @maximum 100 + * @default 5 */ limit: /*#__PURE__*/ v.optional( /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ /*#__PURE__*/ v.integerRange(1, 100), ]), + 5, ), /** * DID of the repository as minted by the knot. @@ -73,6 +80,6 @@ export interface $output extends v.InferXRPCBodyInput {} declare module "@atcute/lexicons/ambient" { interface XRPCQueries { - "org.tangled.temp.repo.listWebhookDeliveries": mainSchema; + "org.tangled.temp.webhook.getDeliveriesForWebhooks": mainSchema; } } diff --git a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/listWebhooks.ts b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/listWebhooks.ts similarity index 91% rename from web/src/lib/api/lexicons/types/org/tangled/temp/repo/listWebhooks.ts rename to web/src/lib/api/lexicons/types/org/tangled/temp/webhook/listWebhooks.ts index 7820a177c..531f97b1d 100644 --- a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/listWebhooks.ts +++ b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/listWebhooks.ts @@ -3,7 +3,7 @@ import * as v from "@atcute/lexicons/validations"; import type {} from "@atcute/lexicons/ambient"; const _mainSchema = /*#__PURE__*/ v.query( - "org.tangled.temp.repo.listWebhooks", + "org.tangled.temp.webhook.listWebhooks", { params: /*#__PURE__*/ v.object({ /** @@ -23,7 +23,7 @@ const _mainSchema = /*#__PURE__*/ v.query( ); const _webhookSchema = /*#__PURE__*/ v.object({ $type: /*#__PURE__*/ v.optional( - /*#__PURE__*/ v.literal("org.tangled.temp.repo.listWebhooks#webhook"), + /*#__PURE__*/ v.literal("org.tangled.temp.webhook.listWebhooks#webhook"), ), /** * Whether the webhook is currently enabled. @@ -61,6 +61,6 @@ export interface $output extends v.InferXRPCBodyInput {} declare module "@atcute/lexicons/ambient" { interface XRPCQueries { - "org.tangled.temp.repo.listWebhooks": mainSchema; + "org.tangled.temp.webhook.listWebhooks": mainSchema; } } diff --git a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/retryWebhookDelivery.ts b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/retryDelivery.ts similarity index 90% rename from web/src/lib/api/lexicons/types/org/tangled/temp/repo/retryWebhookDelivery.ts rename to web/src/lib/api/lexicons/types/org/tangled/temp/webhook/retryDelivery.ts index 79898eafe..389d6d6c7 100644 --- a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/retryWebhookDelivery.ts +++ b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/retryDelivery.ts @@ -3,7 +3,7 @@ import * as v from "@atcute/lexicons/validations"; import type {} from "@atcute/lexicons/ambient"; const _mainSchema = /*#__PURE__*/ v.procedure( - "org.tangled.temp.repo.retryWebhookDelivery", + "org.tangled.temp.webhook.retryDelivery", { params: null, input: { @@ -38,6 +38,6 @@ export interface $input extends v.InferXRPCBodyInput {} declare module "@atcute/lexicons/ambient" { interface XRPCProcedures { - "org.tangled.temp.repo.retryWebhookDelivery": mainSchema; + "org.tangled.temp.webhook.retryDelivery": mainSchema; } } diff --git a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/toggleWebhook.ts b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/toggleWebhook.ts similarity index 91% rename from web/src/lib/api/lexicons/types/org/tangled/temp/repo/toggleWebhook.ts rename to web/src/lib/api/lexicons/types/org/tangled/temp/webhook/toggleWebhook.ts index a6ff59d20..c138c5513 100644 --- a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/toggleWebhook.ts +++ b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/toggleWebhook.ts @@ -3,7 +3,7 @@ import * as v from "@atcute/lexicons/validations"; import type {} from "@atcute/lexicons/ambient"; const _mainSchema = /*#__PURE__*/ v.procedure( - "org.tangled.temp.repo.toggleWebhook", + "org.tangled.temp.webhook.toggleWebhook", { params: null, input: { @@ -43,6 +43,6 @@ export interface $output extends v.InferXRPCBodyInput {} declare module "@atcute/lexicons/ambient" { interface XRPCProcedures { - "org.tangled.temp.repo.toggleWebhook": mainSchema; + "org.tangled.temp.webhook.toggleWebhook": mainSchema; } } diff --git a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/updateWebhook.ts b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/updateWebhook.ts similarity index 92% rename from web/src/lib/api/lexicons/types/org/tangled/temp/repo/updateWebhook.ts rename to web/src/lib/api/lexicons/types/org/tangled/temp/webhook/updateWebhook.ts index 2b4d3c133..3e716c94f 100644 --- a/web/src/lib/api/lexicons/types/org/tangled/temp/repo/updateWebhook.ts +++ b/web/src/lib/api/lexicons/types/org/tangled/temp/webhook/updateWebhook.ts @@ -3,7 +3,7 @@ import * as v from "@atcute/lexicons/validations"; import type {} from "@atcute/lexicons/ambient"; const _mainSchema = /*#__PURE__*/ v.procedure( - "org.tangled.temp.repo.updateWebhook", + "org.tangled.temp.webhook.updateWebhook", { params: null, input: { @@ -40,6 +40,6 @@ export interface $input extends v.InferXRPCBodyInput {} declare module "@atcute/lexicons/ambient" { interface XRPCProcedures { - "org.tangled.temp.repo.updateWebhook": mainSchema; + "org.tangled.temp.webhook.updateWebhook": mainSchema; } } diff --git a/web/src/lib/api/lexicons/types/sh/tangled/ci/triggerPipeline.ts b/web/src/lib/api/lexicons/types/sh/tangled/ci/triggerPipeline.ts index 306789ec6..5e3edaf98 100644 --- a/web/src/lib/api/lexicons/types/sh/tangled/ci/triggerPipeline.ts +++ b/web/src/lib/api/lexicons/types/sh/tangled/ci/triggerPipeline.ts @@ -33,9 +33,9 @@ const _mainSchema = /*#__PURE__*/ v.procedure("sh.tangled.ci.triggerPipeline", { type: "lex", schema: /*#__PURE__*/ v.object({ /** - * Spindle-local id of the created pipeline + * AT-URI of the created pipeline */ - pipeline: /*#__PURE__*/ v.string(), + pipeline: /*#__PURE__*/ v.resourceUriString(), }), }, }); diff --git a/web/src/lib/api/lexicons/types/sh/tangled/embed/commit.ts b/web/src/lib/api/lexicons/types/sh/tangled/embed/commit.ts index a62564cd6..87c2e30fa 100644 --- a/web/src/lib/api/lexicons/types/sh/tangled/embed/commit.ts +++ b/web/src/lib/api/lexicons/types/sh/tangled/embed/commit.ts @@ -11,11 +11,35 @@ const _mainSchema = /*#__PURE__*/ v.object({ }, repo: /*#__PURE__*/ v.didString(), }); +const _viewSchema = /*#__PURE__*/ v.object({ + $type: /*#__PURE__*/ v.optional( + /*#__PURE__*/ v.literal("sh.tangled.embed.commit#view"), + ), + /** + * @maxLength 32 + */ + change: /*#__PURE__*/ v.optional( + /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ + /*#__PURE__*/ v.stringLength(0, 32), + ]), + ), + /** + * @maxLength 64 + */ + commit: /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ + /*#__PURE__*/ v.stringLength(0, 64), + ]), + repo: /*#__PURE__*/ v.didString(), +}); type main$schematype = typeof _mainSchema; +type view$schematype = typeof _viewSchema; export interface mainSchema extends main$schematype {} +export interface viewSchema extends view$schematype {} export const mainSchema = _mainSchema as mainSchema; +export const viewSchema = _viewSchema as viewSchema; export interface Main extends v.InferInput {} +export interface View extends v.InferInput {} diff --git a/web/src/lib/api/lexicons/types/sh/tangled/feed/defs.ts b/web/src/lib/api/lexicons/types/sh/tangled/feed/defs.ts new file mode 100644 index 000000000..a92afff03 --- /dev/null +++ b/web/src/lib/api/lexicons/types/sh/tangled/feed/defs.ts @@ -0,0 +1,36 @@ +import type {} from "@atcute/lexicons"; +import * as v from "@atcute/lexicons/validations"; +import * as ComAtprotoRepoStrongRef from "@atcute/atproto/types/repo/strongRef"; +import * as ShTangledEmbedCommit from "../embed/commit.js"; +import * as ShTangledMarkupMarkdown from "../markup/markdown.js"; + +const _commentViewSchema = /*#__PURE__*/ v.object({ + $type: /*#__PURE__*/ v.optional( + /*#__PURE__*/ v.literal("sh.tangled.feed.defs#commentView"), + ), + get body() { + return /*#__PURE__*/ v.variant([ShTangledMarkupMarkdown.mainSchema]); + }, + cid: /*#__PURE__*/ v.cidString(), + createdAt: /*#__PURE__*/ v.datetimeString(), + get embed() { + return /*#__PURE__*/ v.optional( + /*#__PURE__*/ v.variant([ShTangledEmbedCommit.viewSchema]), + ); + }, + get replyTo() { + return /*#__PURE__*/ v.optional(ComAtprotoRepoStrongRef.mainSchema); + }, + get subject() { + return ComAtprotoRepoStrongRef.mainSchema; + }, + uri: /*#__PURE__*/ v.resourceUriString(), +}); + +type commentView$schematype = typeof _commentViewSchema; + +export interface commentViewSchema extends commentView$schematype {} + +export const commentViewSchema = _commentViewSchema as commentViewSchema; + +export interface CommentView extends v.InferInput {} diff --git a/web/src/lib/api/lexicons/types/sh/tangled/feed/listComments.ts b/web/src/lib/api/lexicons/types/sh/tangled/feed/listComments.ts index fabb76cab..44e4ff44f 100644 --- a/web/src/lib/api/lexicons/types/sh/tangled/feed/listComments.ts +++ b/web/src/lib/api/lexicons/types/sh/tangled/feed/listComments.ts @@ -1,6 +1,7 @@ import type {} from "@atcute/lexicons"; import * as v from "@atcute/lexicons/validations"; import type {} from "@atcute/lexicons/ambient"; +import * as ShTangledFeedDefs from "./defs.js"; const _listItemSchema = /*#__PURE__*/ v.object({ $type: /*#__PURE__*/ v.optional( @@ -53,7 +54,7 @@ const _mainSchema = /*#__PURE__*/ v.query("sh.tangled.feed.listComments", { schema: /*#__PURE__*/ v.object({ cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), get items() { - return /*#__PURE__*/ v.array(listItemSchema); + return /*#__PURE__*/ v.array(ShTangledFeedDefs.commentViewSchema); }, /** * Total items in the full list; omitted for filtered or merged views diff --git a/web/src/lib/api/lexicons/types/sh/tangled/knot/ban.ts b/web/src/lib/api/lexicons/types/sh/tangled/knot/ban.ts new file mode 100644 index 000000000..a2d993f2d --- /dev/null +++ b/web/src/lib/api/lexicons/types/sh/tangled/knot/ban.ts @@ -0,0 +1,32 @@ +import type {} from "@atcute/lexicons"; +import * as v from "@atcute/lexicons/validations"; +import type {} from "@atcute/lexicons/ambient"; + +const _mainSchema = /*#__PURE__*/ v.procedure("sh.tangled.knot.ban", { + params: null, + input: { + type: "lex", + schema: /*#__PURE__*/ v.object({ + /** + * DID of the account to block + */ + subject: /*#__PURE__*/ v.didString(), + }), + }, + output: null, +}); + +type main$schematype = typeof _mainSchema; + +export interface mainSchema extends main$schematype {} + +export const mainSchema = _mainSchema as mainSchema; + +export interface $params {} +export interface $input extends v.InferXRPCBodyInput {} + +declare module "@atcute/lexicons/ambient" { + interface XRPCProcedures { + "sh.tangled.knot.ban": mainSchema; + } +} diff --git a/web/src/lib/api/lexicons/types/sh/tangled/knot/unban.ts b/web/src/lib/api/lexicons/types/sh/tangled/knot/unban.ts new file mode 100644 index 000000000..5d34401d6 --- /dev/null +++ b/web/src/lib/api/lexicons/types/sh/tangled/knot/unban.ts @@ -0,0 +1,32 @@ +import type {} from "@atcute/lexicons"; +import * as v from "@atcute/lexicons/validations"; +import type {} from "@atcute/lexicons/ambient"; + +const _mainSchema = /*#__PURE__*/ v.procedure("sh.tangled.knot.unban", { + params: null, + input: { + type: "lex", + schema: /*#__PURE__*/ v.object({ + /** + * DID of the account to unblock + */ + subject: /*#__PURE__*/ v.didString(), + }), + }, + output: null, +}); + +type main$schematype = typeof _mainSchema; + +export interface mainSchema extends main$schematype {} + +export const mainSchema = _mainSchema as mainSchema; + +export interface $params {} +export interface $input extends v.InferXRPCBodyInput {} + +declare module "@atcute/lexicons/ambient" { + interface XRPCProcedures { + "sh.tangled.knot.unban": mainSchema; + } +} diff --git a/web/src/lib/api/lexicons/types/sh/tangled/repo/listCobVersions.ts b/web/src/lib/api/lexicons/types/sh/tangled/repo/listCobVersions.ts new file mode 100644 index 000000000..2db57121d --- /dev/null +++ b/web/src/lib/api/lexicons/types/sh/tangled/repo/listCobVersions.ts @@ -0,0 +1,81 @@ +import type {} from "@atcute/lexicons"; +import * as v from "@atcute/lexicons/validations"; +import type {} from "@atcute/lexicons/ambient"; + +const _mainSchema = /*#__PURE__*/ v.query("sh.tangled.repo.listCobVersions", { + params: /*#__PURE__*/ v.object({ + /** + * Pass the cursor from one page into the next query to keep walking versions. + */ + cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), + /** + * @minimum 1 + * @maximum 500 + * @default 100 + */ + limit: /*#__PURE__*/ v.optional( + /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.integer(), [ + /*#__PURE__*/ v.integerRange(1, 500), + ]), + 100, + ), + /** + * AT-URI of a record in a repository this knot hosts, its repository authority a DID. + */ + uri: /*#__PURE__*/ v.resourceUriString(), + }), + output: { + type: "lex", + schema: /*#__PURE__*/ v.object({ + /** + * Left out when the page already reaches the newest version. + */ + cursor: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.string()), + uri: /*#__PURE__*/ v.resourceUriString(), + get versions() { + return /*#__PURE__*/ v.array(versionSchema); + }, + }), + }, +}); +const _versionSchema = /*#__PURE__*/ v.object({ + $type: /*#__PURE__*/ v.optional( + /*#__PURE__*/ v.literal("sh.tangled.repo.listCobVersions#version"), + ), + /** + * Git Object ID of the change associated with this version. + */ + changeId: /*#__PURE__*/ v.string(), + /** + * Missing once the version is removed, or when the change is a deletion. + */ + cid: /*#__PURE__*/ v.optional(/*#__PURE__*/ v.cidString()), + /** + * When this knot wrote the commit this version rides in. Not the record's own `createdAt`. + */ + createdAt: /*#__PURE__*/ v.datetimeString(), + /** + * The DID of the account that made this version. + */ + editor: /*#__PURE__*/ v.didString(), +}); + +type main$schematype = typeof _mainSchema; +type version$schematype = typeof _versionSchema; + +export interface mainSchema extends main$schematype {} +export interface versionSchema extends version$schematype {} + +export const mainSchema = _mainSchema as mainSchema; +export const versionSchema = _versionSchema as versionSchema; + +export interface Version extends v.InferInput {} + +export interface $params extends v.InferInput {} +export interface $output extends v.InferXRPCBodyInput {} + +declare module "@atcute/lexicons/ambient" { + interface XRPCQueries { + "sh.tangled.repo.listCobVersions": mainSchema; + } +} diff --git a/web/src/lib/api/lexicons/types/sh/tangled/repo/push.ts b/web/src/lib/api/lexicons/types/sh/tangled/repo/push.ts new file mode 100644 index 000000000..ee38fbbf1 --- /dev/null +++ b/web/src/lib/api/lexicons/types/sh/tangled/repo/push.ts @@ -0,0 +1,23 @@ +import type {} from "@atcute/lexicons"; +import * as v from "@atcute/lexicons/validations"; +import type {} from "@atcute/lexicons/ambient"; + +const _mainSchema = /*#__PURE__*/ v.procedure("sh.tangled.repo.push", { + params: null, + input: null, + output: null, +}); + +type main$schematype = typeof _mainSchema; + +export interface mainSchema extends main$schematype {} + +export const mainSchema = _mainSchema as mainSchema; + +export interface $params {} + +declare module "@atcute/lexicons/ambient" { + interface XRPCProcedures { + "sh.tangled.repo.push": mainSchema; + } +} diff --git a/web/src/lib/api/lexicons/types/sh/tangled/repo/rename.ts b/web/src/lib/api/lexicons/types/sh/tangled/repo/rename.ts new file mode 100644 index 000000000..630b9c619 --- /dev/null +++ b/web/src/lib/api/lexicons/types/sh/tangled/repo/rename.ts @@ -0,0 +1,43 @@ +import type {} from "@atcute/lexicons"; +import * as v from "@atcute/lexicons/validations"; +import type {} from "@atcute/lexicons/ambient"; + +const _mainSchema = /*#__PURE__*/ v.procedure("sh.tangled.repo.rename", { + params: null, + input: { + type: "lex", + schema: /*#__PURE__*/ v.object({ + /** + * New display name of the repository + * @maxLength 100 + */ + name: /*#__PURE__*/ v.constrain(/*#__PURE__*/ v.string(), [ + /*#__PURE__*/ v.stringLength(0, 100), + ]), + /** + * DID of the repository to rename + */ + repo: /*#__PURE__*/ v.didString(), + /** + * Rkey of the sh.tangled.repo record written for the new name + */ + rkey: /*#__PURE__*/ v.recordKeyString(), + }), + }, + output: null, +}); + +type main$schematype = typeof _mainSchema; + +export interface mainSchema extends main$schematype {} + +export const mainSchema = _mainSchema as mainSchema; + +export interface $params {} +export interface $input extends v.InferXRPCBodyInput {} + +declare module "@atcute/lexicons/ambient" { + interface XRPCProcedures { + "sh.tangled.repo.rename": mainSchema; + } +} diff --git a/web/src/lib/api/lexicons/types/sh/tangled/repo/reserveKey.ts b/web/src/lib/api/lexicons/types/sh/tangled/repo/reserveKey.ts new file mode 100644 index 000000000..569c351c2 --- /dev/null +++ b/web/src/lib/api/lexicons/types/sh/tangled/repo/reserveKey.ts @@ -0,0 +1,42 @@ +import type {} from "@atcute/lexicons"; +import * as v from "@atcute/lexicons/validations"; +import type {} from "@atcute/lexicons/ambient"; + +const _mainSchema = /*#__PURE__*/ v.procedure("sh.tangled.repo.reserveKey", { + params: null, + input: { + type: "lex", + schema: /*#__PURE__*/ v.object({ + /** + * The did:web identity the repository will use. + */ + repoDid: /*#__PURE__*/ v.didString(), + }), + }, + output: { + type: "lex", + schema: /*#__PURE__*/ v.object({ + /** + * Multibase-encoded public key to publish in the did:web document. + */ + key: /*#__PURE__*/ v.string(), + repoDid: /*#__PURE__*/ v.didString(), + }), + }, +}); + +type main$schematype = typeof _mainSchema; + +export interface mainSchema extends main$schematype {} + +export const mainSchema = _mainSchema as mainSchema; + +export interface $params {} +export interface $input extends v.InferXRPCBodyInput {} +export interface $output extends v.InferXRPCBodyInput {} + +declare module "@atcute/lexicons/ambient" { + interface XRPCProcedures { + "sh.tangled.repo.reserveKey": mainSchema; + } +} diff --git a/web/src/lib/api/lexicons/types/sh/tangled/repo/setContributionPolicy.ts b/web/src/lib/api/lexicons/types/sh/tangled/repo/setContributionPolicy.ts new file mode 100644 index 000000000..4172f439b --- /dev/null +++ b/web/src/lib/api/lexicons/types/sh/tangled/repo/setContributionPolicy.ts @@ -0,0 +1,43 @@ +import type {} from "@atcute/lexicons"; +import * as v from "@atcute/lexicons/validations"; +import type {} from "@atcute/lexicons/ambient"; + +const _mainSchema = /*#__PURE__*/ v.procedure( + "sh.tangled.repo.setContributionPolicy", + { + params: null, + input: { + type: "lex", + schema: /*#__PURE__*/ v.object({ + /** + * anyone: any account with a DID can contribute. Members: accounts on this knot's member roll. Collaborators: the owner and the repository's collaborators. + */ + contributionPolicy: /*#__PURE__*/ v.literalEnum([ + "anyone", + "collaborators", + "members", + ]), + /** + * DID of the repository this policy change is for + */ + repo: /*#__PURE__*/ v.didString(), + }), + }, + output: null, + }, +); + +type main$schematype = typeof _mainSchema; + +export interface mainSchema extends main$schematype {} + +export const mainSchema = _mainSchema as mainSchema; + +export interface $params {} +export interface $input extends v.InferXRPCBodyInput {} + +declare module "@atcute/lexicons/ambient" { + interface XRPCProcedures { + "sh.tangled.repo.setContributionPolicy": mainSchema; + } +} -- 2.51.2