feat(api): 🏷️ Port Role and CustomEmoji OpenAPI schemas
Some checks failed
Mirror to Codeberg / Mirror (push) Failing after 1s

This commit is contained in:
Jesse Wierzbinski 2025-02-11 18:22:39 +01:00
parent 7c622730dc
commit 264e2fe8ac
No known key found for this signature in database
17 changed files with 319 additions and 177 deletions

View file

@ -1,6 +1,7 @@
import { apiRoute, auth, withUserParam } from "@/api";
import { createRoute, z } from "@hono/zod-openapi";
import { Role } from "@versia/kit/db";
import { Role as RoleSchema } from "~/classes/schemas/versia.ts";
const route = createRoute({
method: "get",
@ -22,7 +23,7 @@ const route = createRoute({
description: "List of roles",
content: {
"application/json": {
schema: z.array(Role.schema),
schema: z.array(RoleSchema),
},
},
},

View file

@ -3,6 +3,7 @@ import { createRoute, z } from "@hono/zod-openapi";
import { Emoji } from "@versia/kit/db";
import { Emojis, RolePermissions } from "@versia/kit/tables";
import { and, eq, isNull, or } from "drizzle-orm";
import { CustomEmoji } from "~/classes/schemas/emoji";
const route = createRoute({
method: "get",
@ -20,7 +21,7 @@ const route = createRoute({
description: "Emojis",
content: {
"application/json": {
schema: z.array(Emoji.schema),
schema: z.array(CustomEmoji),
},
},
},

View file

@ -4,6 +4,7 @@ import { createRoute, z } from "@hono/zod-openapi";
import { Emoji } from "@versia/kit/db";
import { RolePermissions } from "@versia/kit/tables";
import { ApiError } from "~/classes/errors/api-error";
import { CustomEmoji } from "~/classes/schemas/emoji";
import { config } from "~/packages/config-manager";
import { ErrorSchema } from "~/types/api";
@ -69,7 +70,7 @@ const routeGet = createRoute({
description: "Emoji",
content: {
"application/json": {
schema: Emoji.schema,
schema: CustomEmoji,
},
},
},
@ -120,7 +121,7 @@ const routePatch = createRoute({
description: "Emoji modified",
content: {
"application/json": {
schema: Emoji.schema,
schema: CustomEmoji,
},
},
},

View file

@ -5,6 +5,7 @@ import { Emoji, Media } from "@versia/kit/db";
import { Emojis, RolePermissions } from "@versia/kit/tables";
import { and, eq, isNull, or } from "drizzle-orm";
import { ApiError } from "~/classes/errors/api-error";
import { CustomEmoji } from "~/classes/schemas/emoji";
import { config } from "~/packages/config-manager";
import { ErrorSchema } from "~/types/api";
@ -82,7 +83,7 @@ const route = createRoute({
description: "Uploaded emoji",
content: {
"application/json": {
schema: Emoji.schema,
schema: CustomEmoji,
},
},
},

View file

@ -3,6 +3,7 @@ import { createRoute, z } from "@hono/zod-openapi";
import { Role } from "@versia/kit/db";
import { RolePermissions } from "@versia/kit/tables";
import { ApiError } from "~/classes/errors/api-error";
import { Role as RoleSchema } from "~/classes/schemas/versia.ts";
import { ErrorSchema } from "~/types/api";
const routeGet = createRoute({
@ -24,7 +25,7 @@ const routeGet = createRoute({
description: "Role",
content: {
"application/json": {
schema: Role.schema,
schema: RoleSchema,
},
},
},
@ -57,7 +58,7 @@ const routePatch = createRoute({
body: {
content: {
"application/json": {
schema: Role.schema.partial(),
schema: RoleSchema.omit({ id: true }).partial(),
},
},
},

View file

@ -2,6 +2,7 @@ import { apiRoute, auth } from "@/api";
import { createRoute, z } from "@hono/zod-openapi";
import { Role } from "@versia/kit/db";
import { ApiError } from "~/classes/errors/api-error";
import { Role as RoleSchema } from "~/classes/schemas/versia.ts";
import { RolePermissions } from "~/drizzle/schema";
import { ErrorSchema } from "~/types/api";
@ -19,7 +20,7 @@ const routeGet = createRoute({
description: "List of all roles",
content: {
"application/json": {
schema: z.array(Role.schema),
schema: z.array(RoleSchema),
},
},
},
@ -40,7 +41,7 @@ const routePost = createRoute({
body: {
content: {
"application/json": {
schema: Role.schema.omit({ id: true }),
schema: RoleSchema.omit({ id: true }),
},
},
},
@ -50,7 +51,7 @@ const routePost = createRoute({
description: "Role created",
content: {
"application/json": {
schema: Role.schema,
schema: RoleSchema,
},
},
},