diff options
Diffstat (limited to 'app/graphql/types/event_type.rb')
-rw-r--r-- | app/graphql/types/event_type.rb | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/app/graphql/types/event_type.rb b/app/graphql/types/event_type.rb new file mode 100644 index 00000000000..2a4c2e7c60a --- /dev/null +++ b/app/graphql/types/event_type.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +module Types + class EventType < BaseObject + graphql_name 'Event' + description 'Representing an event' + + present_using EventPresenter + + authorize :read_event + + field :id, GraphQL::ID_TYPE, + description: 'ID of the event.', + null: false + + field :author, Types::UserType, + description: 'Author of this event.', + null: false + + field :action, Types::EventActionEnum, + description: 'Action of the event.', + null: false + + field :created_at, Types::TimeType, + description: 'When this event was created.', + null: false + + field :updated_at, Types::TimeType, + description: 'When this event was updated.', + null: false + + def author + Gitlab::Graphql::Loaders::BatchModelLoader.new(User, object.author_id).find + end + end +end |