♻️ refactor: add schema to all controllers in internal module
This commit is contained in:
@ -0,0 +1,92 @@
|
||||
import { t } from "elysia";
|
||||
import { AppRouteSchema } from "../../../helpers/types/AppRouteSchema";
|
||||
|
||||
export const createVideoServiceInternalSchema = {
|
||||
body: t.Object({
|
||||
name: t.String({
|
||||
description: "The name of the video service",
|
||||
}),
|
||||
domain: t.String({
|
||||
description: "The domain of the video service",
|
||||
}),
|
||||
logo: t.String({
|
||||
description: "The logo URL of the video service",
|
||||
}),
|
||||
hexColor: t.String({
|
||||
description: "The hex color associated with the video service",
|
||||
}),
|
||||
endpointVideo: t.String({
|
||||
description: "The endpoint URL for video streaming",
|
||||
}),
|
||||
endpointThumbnail: t.String({
|
||||
description: "The endpoint URL for thumbnails",
|
||||
}),
|
||||
endpointDownload: t.Optional(
|
||||
t.String({
|
||||
description: "The endpoint URL for downloads",
|
||||
}),
|
||||
),
|
||||
}),
|
||||
detail: {
|
||||
summary: "Create a new video service",
|
||||
description:
|
||||
"Perform creation of a new video service. This operation adds a new video service to the database based on the provided data.",
|
||||
responses: {
|
||||
201: {
|
||||
description: "Video service created successfully",
|
||||
content: {
|
||||
"application/json": {
|
||||
schema: {
|
||||
type: "object",
|
||||
properties: {
|
||||
success: { type: "boolean", default: true },
|
||||
status: { type: "integer", default: 201 },
|
||||
message: { type: "string", default: "Video service created" },
|
||||
data: {
|
||||
type: "object",
|
||||
description:
|
||||
"The created video service object. This field is returned only if the environment is running in development mode.",
|
||||
properties: {
|
||||
id: { type: "string", description: "The ID of the created video service" },
|
||||
name: { type: "string", description: "The name of the video service" },
|
||||
domain: { type: "string", description: "The domain of the video service" },
|
||||
logo: { type: "string", description: "The logo URL of the video service" },
|
||||
hexColor: { type: "string", description: "The hex color associated with the video service" },
|
||||
endpointVideo: { type: "string", description: "The endpoint URL for video streaming" },
|
||||
endpointThumbnail: { type: "string", description: "The endpoint URL for thumbnails" },
|
||||
endpointDownload: {
|
||||
type: "string",
|
||||
description:
|
||||
"The endpoint URL for downloads. This field is optional and may be null if not provided.",
|
||||
},
|
||||
createdAt: {
|
||||
type: "string",
|
||||
format: "date-time",
|
||||
description: "The timestamp when the video service was created",
|
||||
},
|
||||
updatedAt: {
|
||||
type: "string",
|
||||
format: "date-time",
|
||||
description: "The timestamp when the video service was last updated",
|
||||
},
|
||||
deletedAt: {
|
||||
type: "string",
|
||||
format: "date-time",
|
||||
description:
|
||||
"The timestamp when the video service was deleted. This field is null if the video service is not deleted.",
|
||||
},
|
||||
createdBy: {
|
||||
type: "string",
|
||||
description:
|
||||
"The ID of the account that created the video service (filled with the system account ID)",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
} satisfies AppRouteSchema;
|
||||
Reference in New Issue
Block a user