Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/graphql/types/customer_relations/contact_type.rb')
-rw-r--r--app/graphql/types/customer_relations/contact_type.rb55
1 files changed, 55 insertions, 0 deletions
diff --git a/app/graphql/types/customer_relations/contact_type.rb b/app/graphql/types/customer_relations/contact_type.rb
new file mode 100644
index 00000000000..35b5bf45698
--- /dev/null
+++ b/app/graphql/types/customer_relations/contact_type.rb
@@ -0,0 +1,55 @@
+# frozen_string_literal: true
+
+module Types
+ module CustomerRelations
+ class ContactType < BaseObject
+ graphql_name 'CustomerRelationsContact'
+
+ authorize :read_contact
+
+ field :id,
+ GraphQL::Types::ID,
+ null: false,
+ description: 'Internal ID of the contact.'
+
+ field :organization, Types::CustomerRelations::OrganizationType,
+ null: true,
+ description: "Organization of the contact."
+
+ field :first_name,
+ GraphQL::Types::String,
+ null: false,
+ description: 'First name of the contact.'
+
+ field :last_name,
+ GraphQL::Types::String,
+ null: false,
+ description: 'Last name of the contact.'
+
+ field :phone,
+ GraphQL::Types::String,
+ null: true,
+ description: 'Phone number of the contact.'
+
+ field :email,
+ GraphQL::Types::String,
+ null: true,
+ description: 'Email address of the contact.'
+
+ field :description,
+ GraphQL::Types::String,
+ null: true,
+ description: 'Description or notes for the contact.'
+
+ field :created_at,
+ Types::TimeType,
+ null: false,
+ description: 'Timestamp the contact was created.'
+
+ field :updated_at,
+ Types::TimeType,
+ null: false,
+ description: 'Timestamp the contact was last updated.'
+ end
+ end
+end