refactor(api): ♻️ Upgrade zod-openapi to 0.18.3

Needed to add "as const" to all middleware handlers :)
This commit is contained in:
Jesse Wierzbinski 2024-12-30 18:20:22 +01:00
parent fbfd237f27
commit 621dd7e9d9
No known key found for this signature in database
74 changed files with 86 additions and 86 deletions

View file

@ -35,7 +35,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/block", path: "/api/v1/accounts/{id}/block",
summary: "Block user", summary: "Block user",
description: "Block a user", description: "Block a user",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
responses: { responses: {
200: { 200: {
description: "Updated relationship", description: "Updated relationship",

View file

@ -46,7 +46,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/follow", path: "/api/v1/accounts/{id}/follow",
summary: "Follow user", summary: "Follow user",
description: "Follow a user", description: "Follow a user",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
responses: { responses: {
200: { 200: {
description: "Updated relationship", description: "Updated relationship",

View file

@ -43,7 +43,7 @@ const route = createRoute({
summary: "Get account followers", summary: "Get account followers",
description: description:
"Gets an paginated list of accounts that follow the specified account", "Gets an paginated list of accounts that follow the specified account",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
query: schemas.query, query: schemas.query,

View file

@ -43,7 +43,7 @@ const route = createRoute({
summary: "Get account following", summary: "Get account following",
description: description:
"Gets an paginated list of accounts that the specified account follows", "Gets an paginated list of accounts that the specified account follows",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
query: schemas.query, query: schemas.query,

View file

@ -32,7 +32,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}", path: "/api/v1/accounts/{id}",
summary: "Get account data", summary: "Get account data",
description: "Gets the specified account data", description: "Gets the specified account data",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -44,7 +44,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/mute", path: "/api/v1/accounts/{id}/mute",
summary: "Mute user", summary: "Mute user",
description: "Mute a user", description: "Mute a user",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
body: { body: {

View file

@ -38,7 +38,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/note", path: "/api/v1/accounts/{id}/note",
summary: "Set note", summary: "Set note",
description: "Set a note on a user's profile, visible only to you", description: "Set a note on a user's profile, visible only to you",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
body: { body: {

View file

@ -35,7 +35,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/pin", path: "/api/v1/accounts/{id}/pin",
summary: "Pin user", summary: "Pin user",
description: "Pin a user to your profile", description: "Pin a user to your profile",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -32,7 +32,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/refetch", path: "/api/v1/accounts/{id}/refetch",
summary: "Refetch user", summary: "Refetch user",
description: "Refetch a user's profile from the remote server", description: "Refetch a user's profile from the remote server",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -35,7 +35,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/remove_from_followers", path: "/api/v1/accounts/{id}/remove_from_followers",
summary: "Remove user from followers", summary: "Remove user from followers",
description: "Remove a user from your followers", description: "Remove a user from your followers",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -35,7 +35,7 @@ const routePost = createRoute({
method: "post", method: "post",
path: "/api/v1/accounts/{id}/roles/{role_id}", path: "/api/v1/accounts/{id}/roles/{role_id}",
summary: "Assign role to user", summary: "Assign role to user",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },
@ -74,7 +74,7 @@ const routeDelete = createRoute({
method: "delete", method: "delete",
path: "/api/v1/accounts/{id}/roles/{role_id}", path: "/api/v1/accounts/{id}/roles/{role_id}",
summary: "Remove role from user", summary: "Remove role from user",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -29,7 +29,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/accounts/{id}/roles", path: "/api/v1/accounts/{id}/roles",
summary: "List user roles", summary: "List user roles",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -59,7 +59,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/statuses", path: "/api/v1/accounts/{id}/statuses",
summary: "Get account statuses", summary: "Get account statuses",
description: "Gets an paginated list of statuses by the specified account", description: "Gets an paginated list of statuses by the specified account",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
query: schemas.query, query: schemas.query,

View file

@ -35,7 +35,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/unblock", path: "/api/v1/accounts/{id}/unblock",
summary: "Unblock user", summary: "Unblock user",
description: "Unblock a user", description: "Unblock a user",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -35,7 +35,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/unfollow", path: "/api/v1/accounts/{id}/unfollow",
summary: "Unfollow user", summary: "Unfollow user",
description: "Unfollow a user", description: "Unfollow a user",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -35,7 +35,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/unmute", path: "/api/v1/accounts/{id}/unmute",
summary: "Unmute user", summary: "Unmute user",
description: "Unmute a user", description: "Unmute a user",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -35,7 +35,7 @@ const route = createRoute({
path: "/api/v1/accounts/{id}/unpin", path: "/api/v1/accounts/{id}/unpin",
summary: "Unpin user", summary: "Unpin user",
description: "Unpin a user from your profile", description: "Unpin a user from your profile",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -39,7 +39,7 @@ const route = createRoute({
summary: "Get familiar followers", summary: "Get familiar followers",
description: description:
"Obtain a list of all accounts that follow a given account, filtered for accounts you follow.", "Obtain a list of all accounts that follow a given account, filtered for accounts you follow.",
middleware: [auth(meta.auth, meta.permissions), qsQuery()], middleware: [auth(meta.auth, meta.permissions), qsQuery()] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -33,7 +33,7 @@ const route = createRoute({
path: "/api/v1/accounts/id", path: "/api/v1/accounts/id",
summary: "Get account by username", summary: "Get account by username",
description: "Get an account by username", description: "Get an account by username",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -34,7 +34,7 @@ const route = createRoute({
path: "/api/v1/accounts/lookup", path: "/api/v1/accounts/lookup",
summary: "Lookup account", summary: "Lookup account",
description: "Lookup an account by acct", description: "Lookup an account by acct",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -32,7 +32,7 @@ const route = createRoute({
path: "/api/v1/accounts/relationships", path: "/api/v1/accounts/relationships",
summary: "Get relationships", summary: "Get relationships",
description: "Get relationships by account ID", description: "Get relationships by account ID",
middleware: [auth(meta.auth, meta.permissions), qsQuery()], middleware: [auth(meta.auth, meta.permissions), qsQuery()] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -50,7 +50,7 @@ export const route = createRoute({
path: "/api/v1/accounts/search", path: "/api/v1/accounts/search",
summary: "Search accounts", summary: "Search accounts",
description: "Search for accounts", description: "Search for accounts",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -151,7 +151,7 @@ const route = createRoute({
path: "/api/v1/accounts/update_credentials", path: "/api/v1/accounts/update_credentials",
summary: "Update credentials", summary: "Update credentials",
description: "Update user credentials", description: "Update user credentials",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
request: { request: {
body: { body: {
content: { content: {

View file

@ -21,7 +21,7 @@ const route = createRoute({
path: "/api/v1/accounts/verify_credentials", path: "/api/v1/accounts/verify_credentials",
summary: "Verify credentials", summary: "Verify credentials",
description: "Get your own account information", description: "Get your own account information",
middleware: [auth(meta.auth)], middleware: [auth(meta.auth)] as const,
responses: { responses: {
200: { 200: {
description: "Account", description: "Account",

View file

@ -24,7 +24,7 @@ const route = createRoute({
path: "/api/v1/apps/verify_credentials", path: "/api/v1/apps/verify_credentials",
summary: "Verify credentials", summary: "Verify credentials",
description: "Get your own application information", description: "Get your own application information",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
responses: { responses: {
200: { 200: {
description: "Application", description: "Application",

View file

@ -36,7 +36,7 @@ const route = createRoute({
path: "/api/v1/blocks", path: "/api/v1/blocks",
summary: "Get blocks", summary: "Get blocks",
description: "Get users you have blocked", description: "Get users you have blocked",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -24,7 +24,7 @@ const route = createRoute({
path: "/api/v1/challenges", path: "/api/v1/challenges",
summary: "Generate a challenge", summary: "Generate a challenge",
description: "Generate a challenge to solve", description: "Generate a challenge to solve",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
responses: { responses: {
200: { 200: {
description: "Challenge", description: "Challenge",

View file

@ -23,7 +23,7 @@ const route = createRoute({
path: "/api/v1/custom_emojis", path: "/api/v1/custom_emojis",
summary: "Get custom emojis", summary: "Get custom emojis",
description: "Get custom emojis", description: "Get custom emojis",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
responses: { responses: {
200: { 200: {
description: "Emojis", description: "Emojis",

View file

@ -71,7 +71,7 @@ const routeGet = createRoute({
method: "get", method: "get",
path: "/api/v1/emojis/{id}", path: "/api/v1/emojis/{id}",
summary: "Get emoji data", summary: "Get emoji data",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },
@ -115,7 +115,7 @@ const routePatch = createRoute({
method: "patch", method: "patch",
path: "/api/v1/emojis/{id}", path: "/api/v1/emojis/{id}",
summary: "Modify emoji", summary: "Modify emoji",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
request: { request: {
params: schemas.param, params: schemas.param,
body: { body: {
@ -180,7 +180,7 @@ const routeDelete = createRoute({
method: "delete", method: "delete",
path: "/api/v1/emojis/{id}", path: "/api/v1/emojis/{id}",
summary: "Delete emoji", summary: "Delete emoji",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -67,7 +67,7 @@ const route = createRoute({
path: "/api/v1/emojis", path: "/api/v1/emojis",
summary: "Upload emoji", summary: "Upload emoji",
description: "Upload an emoji", description: "Upload an emoji",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
request: { request: {
body: { body: {
content: { content: {

View file

@ -34,7 +34,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/favourites", path: "/api/v1/favourites",
summary: "Get favourites", summary: "Get favourites",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -30,7 +30,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/follow_requests/{account_id}/authorize", path: "/api/v1/follow_requests/{account_id}/authorize",
summary: "Authorize follow request", summary: "Authorize follow request",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -30,7 +30,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/follow_requests/{account_id}/reject", path: "/api/v1/follow_requests/{account_id}/reject",
summary: "Reject follow request", summary: "Reject follow request",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -34,7 +34,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/follow_requests", path: "/api/v1/follow_requests",
summary: "Get follow requests", summary: "Get follow requests",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -48,7 +48,7 @@ const routeGet = createRoute({
method: "get", method: "get",
path: "/api/v1/markers", path: "/api/v1/markers",
summary: "Get markers", summary: "Get markers",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: z.object({ query: z.object({
"timeline[]": z "timeline[]": z
@ -82,7 +82,7 @@ const routePost = createRoute({
method: "post", method: "post",
path: "/api/v1/markers", path: "/api/v1/markers",
summary: "Update markers", summary: "Update markers",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: z.object({ query: z.object({
"home[last_read_id]": z.string().regex(idValidator).optional(), "home[last_read_id]": z.string().regex(idValidator).optional(),

View file

@ -41,7 +41,7 @@ const routePut = createRoute({
method: "put", method: "put",
path: "/api/v1/media/{id}", path: "/api/v1/media/{id}",
summary: "Update media", summary: "Update media",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
body: { body: {
@ -84,7 +84,7 @@ const routeGet = createRoute({
method: "get", method: "get",
path: "/api/v1/media/{id}", path: "/api/v1/media/{id}",
summary: "Get media", summary: "Get media",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -40,7 +40,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/media", path: "/api/v1/media",
summary: "Upload media", summary: "Upload media",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
body: { body: {
content: { content: {

View file

@ -35,7 +35,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/mutes", path: "/api/v1/mutes",
summary: "Get muted users", summary: "Get muted users",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -31,7 +31,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/notifications/{id}/dismiss", path: "/api/v1/notifications/{id}/dismiss",
summary: "Dismiss notification", summary: "Dismiss notification",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -31,7 +31,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/notifications/{id}", path: "/api/v1/notifications/{id}",
summary: "Get notification", summary: "Get notification",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -23,7 +23,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/notifications/clear", path: "/api/v1/notifications/clear",
summary: "Clear notifications", summary: "Clear notifications",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
responses: { responses: {
200: { 200: {
description: "Notifications cleared", description: "Notifications cleared",

View file

@ -30,7 +30,7 @@ const route = createRoute({
method: "delete", method: "delete",
path: "/api/v1/notifications/destroy_multiple", path: "/api/v1/notifications/destroy_multiple",
summary: "Dismiss multiple notifications", summary: "Dismiss multiple notifications",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -94,7 +94,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/notifications", path: "/api/v1/notifications",
summary: "Get notifications", summary: "Get notifications",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -23,7 +23,7 @@ const route = createRoute({
method: "delete", method: "delete",
path: "/api/v1/profile/avatar", path: "/api/v1/profile/avatar",
summary: "Delete avatar", summary: "Delete avatar",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
responses: { responses: {
200: { 200: {
description: "User", description: "User",

View file

@ -23,7 +23,7 @@ const route = createRoute({
method: "delete", method: "delete",
path: "/api/v1/profile/header", path: "/api/v1/profile/header",
summary: "Delete header", summary: "Delete header",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
responses: { responses: {
200: { 200: {
description: "User", description: "User",

View file

@ -70,7 +70,7 @@ const routePatch = createRoute({
method: "patch", method: "patch",
path: "/api/v1/roles/{id}", path: "/api/v1/roles/{id}",
summary: "Update role data", summary: "Update role data",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
body: { body: {
@ -116,7 +116,7 @@ const routeDelete = createRoute({
method: "delete", method: "delete",
path: "/api/v1/roles/{id}", path: "/api/v1/roles/{id}",
summary: "Delete role", summary: "Delete role",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -54,7 +54,7 @@ const routePost = createRoute({
method: "post", method: "post",
path: "/api/v1/roles", path: "/api/v1/roles",
summary: "Create a new role", summary: "Create a new role",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
body: { body: {
content: { content: {

View file

@ -29,7 +29,7 @@ export const schemas = {
const route = createRoute({ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/statuses/{id}/context", path: "/api/v1/statuses/{id}/context",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
summary: "Get status context", summary: "Get status context",
request: { request: {
params: schemas.param, params: schemas.param,

View file

@ -30,7 +30,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/statuses/{id}/favourite", path: "/api/v1/statuses/{id}/favourite",
summary: "Favourite a status", summary: "Favourite a status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -37,7 +37,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/statuses/{id}/favourited_by", path: "/api/v1/statuses/{id}/favourited_by",
summary: "Get users who favourited a status", summary: "Get users who favourited a status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
query: schemas.query, query: schemas.query,

View file

@ -92,7 +92,7 @@ const routeGet = createRoute({
method: "get", method: "get",
path: "/api/v1/statuses/{id}", path: "/api/v1/statuses/{id}",
summary: "Get status", summary: "Get status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },
@ -120,7 +120,7 @@ const routeDelete = createRoute({
method: "delete", method: "delete",
path: "/api/v1/statuses/{id}", path: "/api/v1/statuses/{id}",
summary: "Delete a status", summary: "Delete a status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },
@ -156,7 +156,7 @@ const routePut = createRoute({
method: "put", method: "put",
path: "/api/v1/statuses/{id}", path: "/api/v1/statuses/{id}",
summary: "Update a status", summary: "Update a status",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
request: { request: {
params: schemas.param, params: schemas.param,
body: { body: {

View file

@ -31,7 +31,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/statuses/{id}/pin", path: "/api/v1/statuses/{id}/pin",
summary: "Pin a status", summary: "Pin a status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -34,7 +34,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/statuses/{id}/reblog", path: "/api/v1/statuses/{id}/reblog",
summary: "Reblog a status", summary: "Reblog a status",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
request: { request: {
params: schemas.param, params: schemas.param,
body: { body: {

View file

@ -37,7 +37,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/statuses/{id}/reblogged_by", path: "/api/v1/statuses/{id}/reblogged_by",
summary: "Get users who reblogged a status", summary: "Get users who reblogged a status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
query: schemas.query, query: schemas.query,

View file

@ -31,7 +31,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/statuses/{id}/source", path: "/api/v1/statuses/{id}/source",
summary: "Get status source", summary: "Get status source",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -30,7 +30,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/statuses/{id}/unfavourite", path: "/api/v1/statuses/{id}/unfavourite",
summary: "Unfavourite a status", summary: "Unfavourite a status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -30,7 +30,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/statuses/{id}/unpin", path: "/api/v1/statuses/{id}/unpin",
summary: "Unpin a status", summary: "Unpin a status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -31,7 +31,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/statuses/{id}/unreblog", path: "/api/v1/statuses/{id}/unreblog",
summary: "Unreblog a status", summary: "Unreblog a status",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -103,7 +103,7 @@ export const schemas = {
const route = createRoute({ const route = createRoute({
method: "post", method: "post",
path: "/api/v1/statuses", path: "/api/v1/statuses",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
summary: "Post a new status", summary: "Post a new status",
request: { request: {
body: { body: {

View file

@ -39,7 +39,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/timelines/home", path: "/api/v1/timelines/home",
summary: "Get home timeline", summary: "Get home timeline",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -49,7 +49,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v1/timelines/public", path: "/api/v1/timelines/public",
summary: "Get public timeline", summary: "Get public timeline",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

View file

@ -89,7 +89,7 @@ const routeGet = createRoute({
method: "get", method: "get",
path: "/api/v2/filters/{id}", path: "/api/v2/filters/{id}",
summary: "Get filter", summary: "Get filter",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },
@ -125,7 +125,7 @@ const routePut = createRoute({
method: "put", method: "put",
path: "/api/v2/filters/{id}", path: "/api/v2/filters/{id}",
summary: "Update filter", summary: "Update filter",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
request: { request: {
params: schemas.param, params: schemas.param,
body: { body: {
@ -168,7 +168,7 @@ const routeDelete = createRoute({
method: "delete", method: "delete",
path: "/api/v2/filters/{id}", path: "/api/v2/filters/{id}",
summary: "Delete filter", summary: "Delete filter",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
params: schemas.param, params: schemas.param,
}, },

View file

@ -77,7 +77,7 @@ const routeGet = createRoute({
method: "get", method: "get",
path: "/api/v2/filters", path: "/api/v2/filters",
summary: "Get filters", summary: "Get filters",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
responses: { responses: {
200: { 200: {
description: "Filters", description: "Filters",
@ -102,7 +102,7 @@ const routePost = createRoute({
method: "post", method: "post",
path: "/api/v2/filters", path: "/api/v2/filters",
summary: "Create filter", summary: "Create filter",
middleware: [auth(meta.auth, meta.permissions), jsonOrForm()], middleware: [auth(meta.auth, meta.permissions), jsonOrForm()] as const,
request: { request: {
body: { body: {
content: { content: {

View file

@ -40,7 +40,7 @@ const route = createRoute({
method: "post", method: "post",
path: "/api/v2/media", path: "/api/v2/media",
summary: "Upload media", summary: "Upload media",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
body: { body: {
content: { content: {

View file

@ -52,7 +52,7 @@ const route = createRoute({
method: "get", method: "get",
path: "/api/v2/search", path: "/api/v2/search",
summary: "Instance database search", summary: "Instance database search",
middleware: [auth(meta.auth, meta.permissions)], middleware: [auth(meta.auth, meta.permissions)] as const,
request: { request: {
query: schemas.query, query: schemas.query,
}, },

BIN
bun.lockb

Binary file not shown.

View file

@ -112,7 +112,7 @@
"@hackmd/markdown-it-task-lists": "^2.1.4", "@hackmd/markdown-it-task-lists": "^2.1.4",
"@hono/prometheus": "^1.0.1", "@hono/prometheus": "^1.0.1",
"@hono/swagger-ui": "^0.5.0", "@hono/swagger-ui": "^0.5.0",
"@hono/zod-openapi": "0.16.3", "@hono/zod-openapi": "0.18.3",
"@inquirer/confirm": "^5.1.1", "@inquirer/confirm": "^5.1.1",
"@inquirer/input": "^4.1.1", "@inquirer/input": "^4.1.1",
"@json2csv/plainjs": "^7.0.6", "@json2csv/plainjs": "^7.0.6",

View file

@ -22,7 +22,7 @@ export class Plugin<ConfigSchema extends z.ZodTypeAny> {
public constructor(private configSchema: ConfigSchema) {} public constructor(private configSchema: ConfigSchema) {}
public get middleware(): MiddlewareHandler { public get middleware(): MiddlewareHandler<HonoPluginEnv<ConfigSchema>> {
// Middleware that adds the plugin's configuration to the request object // Middleware that adds the plugin's configuration to the request object
return createMiddleware<HonoPluginEnv<ConfigSchema>>( return createMiddleware<HonoPluginEnv<ConfigSchema>>(
async (context, next) => { async (context, next) => {

View file

@ -75,7 +75,7 @@ export default (plugin: PluginType): void =>
}), }),
jsonOrForm(), jsonOrForm(),
plugin.middleware, plugin.middleware,
], ] as const,
responses: { responses: {
302: { 302: {
description: "Redirect to the application", description: "Redirect to the application",

View file

@ -37,7 +37,7 @@ export default (plugin: PluginType): void => {
required: false, required: false,
}), }),
plugin.middleware, plugin.middleware,
], ] as const,
}), }),
async (context) => { async (context) => {
const jwk = await exportJWK( const jwk = await exportJWK(

View file

@ -34,7 +34,7 @@ export default (plugin: PluginType): void => {
summary: "SSO callback", summary: "SSO callback",
description: description:
"After the user has authenticated to an external OpenID provider, they are redirected here to complete the OAuth flow and get a code", "After the user has authenticated to an external OpenID provider, they are redirected here to complete the OAuth flow and get a code",
middleware: [plugin.middleware], middleware: [plugin.middleware] as const,
request: { request: {
query: schemas.query, query: schemas.query,
params: schemas.param, params: schemas.param,

View file

@ -30,7 +30,7 @@ export default (plugin: PluginType): void => {
request: { request: {
query: schemas.query, query: schemas.query,
}, },
middleware: [plugin.middleware], middleware: [plugin.middleware] as const,
responses: { responses: {
302: { 302: {
description: description:

View file

@ -25,7 +25,7 @@ export default (plugin: PluginType): void => {
}, },
), ),
plugin.middleware, plugin.middleware,
], ] as const,
request: { request: {
params: z.object({ params: z.object({
id: z.string(), id: z.string(),
@ -124,7 +124,7 @@ export default (plugin: PluginType): void => {
}, },
), ),
plugin.middleware, plugin.middleware,
], ] as const,
request: { request: {
params: z.object({ params: z.object({
id: z.string(), id: z.string(),

View file

@ -28,7 +28,7 @@ export default (plugin: PluginType): void => {
}, },
), ),
plugin.middleware, plugin.middleware,
], ] as const,
responses: { responses: {
200: { 200: {
description: "Linked accounts", description: "Linked accounts",
@ -91,7 +91,7 @@ export default (plugin: PluginType): void => {
}, },
), ),
plugin.middleware, plugin.middleware,
], ] as const,
request: { request: {
body: { body: {
content: { content: {