Files
animethemes-server/app/GraphQL/Schemas/Admin/featuredtheme.graphql
T
2025-05-12 02:07:27 -03:00

53 lines
2.3 KiB
GraphQL

"Represents a video to be featured on the homepage of the site for a specified amount of time."
type FeaturedTheme {
"The primary key of the resource"
id: Int! @rename(attribute: "featured_theme_id")
"The start date of the resource"
startAt: DateTimeTz! @rename(attribute: "start_at")
"The end date of the resource"
endAt: DateTimeTz! @rename(attribute: "end_at")
animethemeentry: AnimeThemeEntry @belongsTo
user: User @belongsTo
video: Video @belongsTo
"The date that the resource was created"
createdAt: DateTimeTz @rename(attribute: "created_at")
"The date that the resource was last modified"
updatedAt: DateTimeTz @rename(attribute: "updated_at")
"The date that the resource was deleted"
deletedAt: DateTimeTz @rename(attribute: "deleted_at")
}
enum FeaturedThemeColumnsOrderable {
ID @enum(value: "featured_theme_id")
START_AT
END_AT
CREATED_AT
UPDATED_AT
DELETED_AT
}
extend type Query {
"Returns the first featured theme where the current date is between start_at and end_at dates."
currentfeaturedtheme: FeaturedTheme @find
@canModel(ability: "viewAny", injectArgs: true)
@builder(method: "App\\GraphQL\\Builders\\Admin\\FeaturedThemeBuilder@current")
"Returns a listing of featured theme resources given fields."
featuredthemes(
startAt_lesser: DateTimeTz @where(key: "start_at", operator: "<")
startAt_greater: DateTimeTz @where(key: "start_at", operator: ">")
endAt_lesser: DateTimeTz @where(key: "end_at", operator: "<")
endAt_greater: DateTimeTz @where(key: "end_at", operator: ">")
createdAt_lesser: DateTimeTz @where(key: "created_at", operator: "<")
createdAt_greater: DateTimeTz @where(key: "created_at", operator: ">")
updatedAt_lesser: DateTimeTz @where(key: "updated_at", operator: "<")
updatedAt_greater: DateTimeTz @where(key: "updated_at", operator: ">")
deletedAt_lesser: DateTimeTz @where(key: "deleted_at", operator: "<")
deletedAt_greater: DateTimeTz @where(key: "deleted_at", operator: ">")
orderBy: _ @orderBy(columnsEnum: "FeaturedThemeColumnsOrderable")
): [FeaturedTheme!]!
@canModel(ability: "viewAny", injectArgs: true)
@builder(method: "App\\GraphQL\\Builders\\Admin\\FeaturedThemeBuilder@index")
@softDeletes
@paginate
}