diff --git a/app/graph/mutations/duplicate_team_mutation.rb b/app/graph/mutations/duplicate_team_mutation.rb index 81ec7feebc..b4d9a3dafd 100644 --- a/app/graph/mutations/duplicate_team_mutation.rb +++ b/app/graph/mutations/duplicate_team_mutation.rb @@ -3,7 +3,7 @@ class DuplicateTeamMutation < Mutations::BaseMutation argument :custom_slug, GraphQL::Types::String, required: false, camelize: false argument :custom_name, GraphQL::Types::String, required: false, camelize: false - field :team, PublicTeamType, null: true + field :team, TeamType, null: true def resolve(team_id:, custom_slug: nil, custom_name: nil) _type_name, id = CheckGraphql.decode_id(team_id) diff --git a/app/graph/types/me_type.rb b/app/graph/types/me_type.rb new file mode 100644 index 0000000000..71d1e950e1 --- /dev/null +++ b/app/graph/types/me_type.rb @@ -0,0 +1,157 @@ +class MeType < DefaultObject + description "Me type" + + implements GraphQL::Types::Relay::Node + + field :dbid, GraphQL::Types::Int, null: true + field :email, GraphQL::Types::String, null: true + field :unconfirmed_email, GraphQL::Types::String, null: true + field :providers, JsonStringType, null: true + field :uuid, GraphQL::Types::String, null: true + field :profile_image, GraphQL::Types::String, null: true + field :login, GraphQL::Types::String, null: true + field :name, GraphQL::Types::String, null: true + field :current_team_id, GraphQL::Types::Int, null: true + field :permissions, GraphQL::Types::String, null: true + field :jsonsettings, GraphQL::Types::String, null: true + field :number_of_teams, GraphQL::Types::Int, null: true + field :get_send_email_notifications, GraphQL::Types::Boolean, null: true + + def get_send_email_notifications + object.get_send_email_notifications + end + + field :get_send_successful_login_notifications, GraphQL::Types::Boolean, null: true + + def get_send_successful_login_notifications + object.get_send_successful_login_notifications + end + + field :get_send_failed_login_notifications, GraphQL::Types::Boolean, null: true + + def get_send_failed_login_notifications + object.get_send_failed_login_notifications + end + + field :bot_events, GraphQL::Types::String, null: true + field :is_bot, GraphQL::Types::Boolean, null: true + field :is_active, GraphQL::Types::Boolean, null: true + field :two_factor, JsonStringType, null: true + field :settings, JsonStringType, null: true + field :accepted_terms, GraphQL::Types::Boolean, null: true + field :last_accepted_terms_at, GraphQL::Types::String, null: true + field :team_ids, [GraphQL::Types::Int, null: true], null: true + + field :user_teams, GraphQL::Types::String, null: true + + def user_teams + User.current == object ? object.user_teams : {}.to_json + end + + field :last_active_at, GraphQL::Types::Int, null: true + field :completed_signup, GraphQL::Types::Boolean, null: true + + field :source_id, GraphQL::Types::Int, null: true + + field :token, GraphQL::Types::String, null: true + + def token + object.token if object == User.current + end + + field :is_admin, GraphQL::Types::Boolean, null: true + + def is_admin + object.is_admin if object == User.current + end + + field :current_project, ProjectType, null: true + + def current_project + User.current == object ? object.current_project : nil + end + + field :confirmed, GraphQL::Types::Boolean, null: true + + def confirmed + object.is_confirmed? + end + + field :source, SourceType, null: true + + def source + Source.find(object.source_id) + end + + field :current_team, TeamType, null: true + + def current_team + User.current == object ? object.current_team : nil + end + + field :bot, BotUserType, null: true + + def bot + object if object.is_bot + end + + field :team_user, TeamUserType, null: true do + argument :team_slug, GraphQL::Types::String, required: true, camelize: false + end + + def team_user(team_slug:) + tu = TeamUser + .joins(:team) + .where("teams.slug" => team_slug, :user_id => object.id) + .last + tu.nil? ? nil : TeamUser.find_if_can(tu.id, context[:ability]) + end + + field :teams, TeamType.connection_type, null: true + + def teams + return Team.none unless object == User.current + object.teams + end + + field :team_users, TeamUserType.connection_type, null: true do + argument :status, GraphQL::Types::String, required: false + end + + def team_users(status: nil) + return TeamUser.none unless object == User.current + team_users = object.team_users + team_users = team_users.where(status: status) if status + team_users + end + + field :annotations, AnnotationType.connection_type, null: true do + argument :type, GraphQL::Types::String, required: false + end + + def annotations(type: nil) + return Annotation.none unless object == User.current + type.blank? ? object.annotations : object.annotations(type) + end + + field :assignments, ProjectMediaType.connection_type, null: true do + argument :team_id, GraphQL::Types::Int, required: false, camelize: false + end + + def assignments(team_id: nil) + return ProjectMedia.none unless object == User.current + pms = Annotation.project_media_assigned_to_user(object).order("id DESC") + team_id = team_id.to_i + pms = pms.where(team_id: team_id) if team_id > 0 + # TODO: remove finished items + # pms.reject { |pm| pm.is_finished? } + pms + end + + field :feed_invitations, FeedInvitationType.connection_type, null: false + + def feed_invitations + return FeedInvitation.none if object.email.blank? || User.current != object + FeedInvitation.where(email: object.email) + end +end diff --git a/app/graph/types/project_media_type.rb b/app/graph/types/project_media_type.rb index f0c6411982..a641d2db64 100644 --- a/app/graph/types/project_media_type.rb +++ b/app/graph/types/project_media_type.rb @@ -132,6 +132,18 @@ def account field :team, TeamType, null: true def team + RecordLoader + .for(Team) + .load(object.team_id) + .then do |team| + ability = context[:ability] || Ability.new + team if ability.can?(:read, team) + end + end + + field :public_team, PublicTeamType, null: true + + def public_team RecordLoader.for(Team).load(object.team_id) end diff --git a/app/graph/types/project_type.rb b/app/graph/types/project_type.rb index ab39118c35..034e30cb4e 100644 --- a/app/graph/types/project_type.rb +++ b/app/graph/types/project_type.rb @@ -13,7 +13,7 @@ class ProjectType < DefaultObject field :search_id, GraphQL::Types::String, null: true field :url, GraphQL::Types::String, null: true field :search, CheckSearchType, null: true - field :team, PublicTeamType, null: true + field :team, TeamType, null: true field :project_group_id, GraphQL::Types::Int, null: true field :project_group, ProjectGroupType, null: true field :privacy, GraphQL::Types::Int, null: true diff --git a/app/graph/types/query_type.rb b/app/graph/types/query_type.rb index 5e9b9b7589..79e336b521 100644 --- a/app/graph/types/query_type.rb +++ b/app/graph/types/query_type.rb @@ -56,7 +56,7 @@ def about end field :me, - UserType, + MeType, description: "Information about the current user", null: true diff --git a/app/graph/types/team_type.rb b/app/graph/types/team_type.rb index 2b42dbe43c..782cc07b64 100644 --- a/app/graph/types/team_type.rb +++ b/app/graph/types/team_type.rb @@ -13,7 +13,6 @@ class TeamType < DefaultObject field :members_count, GraphQL::Types::Int, null: true field :projects_count, GraphQL::Types::Int, null: true field :permissions, GraphQL::Types::String, null: true - field :get_slack_notifications_enabled, GraphQL::Types::String, null: true field :get_slack_webhook, GraphQL::Types::String, null: true field :get_embed_whitelist, GraphQL::Types::String, null: true field :get_report_design_image_template, GraphQL::Types::String, null: true @@ -37,20 +36,15 @@ class TeamType < DefaultObject field :spam_count, GraphQL::Types::Int, null: true field :trash_count, GraphQL::Types::Int, null: true field :unconfirmed_count, GraphQL::Types::Int, null: true - field :get_languages, GraphQL::Types::String, null: true - field :get_language, GraphQL::Types::String, null: true field :get_language_detection, GraphQL::Types::Boolean, null: true field :get_report, JsonStringType, null: true field :get_fieldsets, JsonStringType, null: true field :list_columns, JsonStringType, null: true - field :get_data_report_url, GraphQL::Types::String, null: true field :url, GraphQL::Types::String, null: true - field :get_tipline_inbox_filters, JsonStringType, null: true - field :get_suggested_matches_filters, JsonStringType, null: true field :data_report, JsonStringType, null: true field :available_newsletter_header_types, JsonStringType, null: true # List of header type strings - field :get_outgoing_urls_utm_code, GraphQL::Types::String, null: true - field :get_shorten_outgoing_urls, GraphQL::Types::Boolean, null: true + + field :get_slack_notifications_enabled, GraphQL::Types::String, null: true def get_slack_notifications_enabled object.get_slack_notifications_enabled @@ -80,16 +74,6 @@ def get_status_target_turnaround object.get_status_target_turnaround end - field :pusher_channel, GraphQL::Types::String, null: true - field :search_id, GraphQL::Types::String, null: true - field :search, CheckSearchType, null: true - field :check_search_trash, CheckSearchType, null: true - field :check_search_unconfirmed, CheckSearchType, null: true - field :check_search_spam, CheckSearchType, null: true - field :trash_size, JsonStringType, null: true - field :public_team_id, GraphQL::Types::String, null: true - field :permissions_info, JsonStringType, null: true - field :dynamic_search_fields_json_schema, JsonStringType, null: true field :get_slack_notifications, JsonStringType, null: true def get_slack_notifications @@ -102,13 +86,6 @@ def get_rules object.get_rules end - field :rules_json_schema, GraphQL::Types::String, null: true - field :slack_notifications_json_schema, GraphQL::Types::String, null: true - field :rules_search_fields_json_schema, JsonStringType, null: true - field :medias_count, GraphQL::Types::Int, null: true - field :spam_count, GraphQL::Types::Int, null: true - field :trash_count, GraphQL::Types::Int, null: true - field :unconfirmed_count, GraphQL::Types::Int, null: true field :get_languages, GraphQL::Types::String, null: true def get_languages @@ -153,8 +130,6 @@ def get_suggested_matches_filters object.get_suggested_matches_filters end - field :data_report, JsonStringType, null: true - field :available_newsletter_header_types, JsonStringType, null: true # List of header type strings field :get_outgoing_urls_utm_code, GraphQL::Types::String, null: true def get_outgoing_urls_utm_code diff --git a/app/graph/types/team_user_type.rb b/app/graph/types/team_user_type.rb index 1c25e57fd7..82935134ff 100644 --- a/app/graph/types/team_user_type.rb +++ b/app/graph/types/team_user_type.rb @@ -9,7 +9,7 @@ class TeamUserType < DefaultObject field :status, GraphQL::Types::String, null: true field :role, GraphQL::Types::String, null: true field :permissions, GraphQL::Types::String, null: true - field :team, PublicTeamType, null: true + field :team, TeamType, null: true field :user, UserType, null: true field :invited_by, UserType, null: true diff --git a/app/graph/types/user_type.rb b/app/graph/types/user_type.rb index 9148145405..1b39e8796e 100644 --- a/app/graph/types/user_type.rb +++ b/app/graph/types/user_type.rb @@ -5,76 +5,26 @@ class UserType < DefaultObject field :dbid, GraphQL::Types::Int, null: true field :email, GraphQL::Types::String, null: true - field :unconfirmed_email, GraphQL::Types::String, null: true field :providers, JsonStringType, null: true - field :uuid, GraphQL::Types::String, null: true field :profile_image, GraphQL::Types::String, null: true field :login, GraphQL::Types::String, null: true field :name, GraphQL::Types::String, null: true field :current_team_id, GraphQL::Types::Int, null: true field :permissions, GraphQL::Types::String, null: true - field :jsonsettings, GraphQL::Types::String, null: true field :number_of_teams, GraphQL::Types::Int, null: true - field :get_send_email_notifications, GraphQL::Types::Boolean, null: true - - def get_send_email_notifications - object.get_send_email_notifications - end - - field :get_send_successful_login_notifications, GraphQL::Types::Boolean, null: true - - def get_send_successful_login_notifications - object.get_send_successful_login_notifications - end - - field :get_send_failed_login_notifications, GraphQL::Types::Boolean, null: true - - def get_send_failed_login_notifications - object.get_send_failed_login_notifications - end - - field :bot_events, GraphQL::Types::String, null: true - field :is_bot, GraphQL::Types::Boolean, null: true field :is_active, GraphQL::Types::Boolean, null: true - field :two_factor, JsonStringType, null: true - field :settings, JsonStringType, null: true field :accepted_terms, GraphQL::Types::Boolean, null: true field :last_accepted_terms_at, GraphQL::Types::String, null: true field :team_ids, [GraphQL::Types::Int, null: true], null: true - - field :user_teams, GraphQL::Types::String, null: true - - def user_teams - User.current == object ? object.user_teams : {}.to_json - end - field :last_active_at, GraphQL::Types::Int, null: true field :completed_signup, GraphQL::Types::Boolean, null: true - field :source_id, GraphQL::Types::Int, null: true + field :is_bot, GraphQL::Types::Boolean, null: true - field :token, GraphQL::Types::String, null: true - - def token - object.token if object == User.current - end - - field :is_admin, GraphQL::Types::Boolean, null: true - - def is_admin - object.is_admin if object == User.current - end - - field :current_project, ProjectType, null: true - - def current_project - User.current == object ? object.current_project : nil - end - - field :confirmed, GraphQL::Types::Boolean, null: true + field :current_team, TeamType, null: true - def confirmed - object.is_confirmed? + def current_team + User.current == object ? object.current_team : nil end field :source, SourceType, null: true @@ -83,18 +33,6 @@ def source Source.find(object.source_id) end - field :current_team, PublicTeamType, null: true - - def current_team - User.current == object ? object.current_team : nil - end - - field :bot, BotUserType, null: true - - def bot - object if object.is_bot - end - field :team_user, TeamUserType, null: true do argument :team_slug, GraphQL::Types::String, required: true, camelize: false end @@ -107,13 +45,6 @@ def team_user(team_slug:) tu.nil? ? nil : TeamUser.find_if_can(tu.id, context[:ability]) end - field :teams, TeamType.connection_type, null: true - - def teams - return Team.none unless object == User.current - object.teams - end - field :team_users, TeamUserType.connection_type, null: true do argument :status, GraphQL::Types::String, required: false end @@ -124,34 +55,4 @@ def team_users(status: nil) team_users = team_users.where(status: status) if status team_users end - - field :annotations, AnnotationType.connection_type, null: true do - argument :type, GraphQL::Types::String, required: false - end - - def annotations(type: nil) - return Annotation.none unless object == User.current - type.blank? ? object.annotations : object.annotations(type) - end - - field :assignments, ProjectMediaType.connection_type, null: true do - argument :team_id, GraphQL::Types::Int, required: false, camelize: false - end - - def assignments(team_id: nil) - return ProjectMedia.none unless object == User.current - pms = Annotation.project_media_assigned_to_user(object).order("id DESC") - team_id = team_id.to_i - pms = pms.where(team_id: team_id) if team_id > 0 - # TODO: remove finished items - # pms.reject { |pm| pm.is_finished? } - pms - end - - field :feed_invitations, FeedInvitationType.connection_type, null: false - - def feed_invitations - return FeedInvitation.none if object.email.blank? || User.current != object - FeedInvitation.where(email: object.email) - end end diff --git a/lib/relay.idl b/lib/relay.idl index b343374372..6cf58bad83 100644 --- a/lib/relay.idl +++ b/lib/relay.idl @@ -4249,7 +4249,7 @@ type DuplicateTeamMutationPayload { A unique identifier for the client performing the mutation. """ clientMutationId: String - team: PublicTeam + team: Team } type Dynamic implements Node { @@ -8463,6 +8463,158 @@ type GenerateTwoFactorBackupCodesPayload { scalar JsonStringType +""" +Me type +""" +type Me implements Node { + accepted_terms: Boolean + annotations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + type: String + ): AnnotationConnection + assignments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + team_id: Int + ): ProjectMediaConnection + bot: BotUser + bot_events: String + completed_signup: Boolean + confirmed: Boolean + created_at: String + current_project: Project + current_team: Team + current_team_id: Int + dbid: Int + email: String + feed_invitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): FeedInvitationConnection! + get_send_email_notifications: Boolean + get_send_failed_login_notifications: Boolean + get_send_successful_login_notifications: Boolean + id: ID! + is_active: Boolean + is_admin: Boolean + is_bot: Boolean + jsonsettings: String + last_accepted_terms_at: String + last_active_at: Int + login: String + name: String + number_of_teams: Int + permissions: String + profile_image: String + providers: JsonStringType + settings: JsonStringType + source: Source + source_id: Int + team_ids: [Int] + team_user(team_slug: String!): TeamUser + team_users( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + status: String + ): TeamUserConnection + teams( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): TeamConnection + token: String + two_factor: JsonStringType + unconfirmed_email: String + updated_at: String + user_teams: String + uuid: String +} + """ Media type """ @@ -9859,7 +10011,7 @@ type Project implements Node { pusher_channel: String search: CheckSearch search_id: String - team: PublicTeam + team: Team title: String! updated_at: String url: String @@ -10973,6 +11125,7 @@ type ProjectMedia implements Node { project: Project project_group: ProjectGroup project_id: Int + public_team: PublicTeam published: String pusher_channel: String quote: String @@ -11274,7 +11427,7 @@ type Query { """ Information about the current user """ - me: User + me: Me """ Fetches an object given its ID. @@ -12980,7 +13133,7 @@ type TeamUser implements Node { permissions: String role: String status: String - team: PublicTeam + team: Team team_id: Int updated_at: String user: User @@ -15561,89 +15714,15 @@ User type """ type User implements Node { accepted_terms: Boolean - annotations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - type: String - ): AnnotationConnection - assignments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - team_id: Int - ): ProjectMediaConnection - bot: BotUser - bot_events: String completed_signup: Boolean - confirmed: Boolean created_at: String - current_project: Project - current_team: PublicTeam + current_team: Team current_team_id: Int dbid: Int email: String - feed_invitations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): FeedInvitationConnection! - get_send_email_notifications: Boolean - get_send_failed_login_notifications: Boolean - get_send_successful_login_notifications: Boolean id: ID! is_active: Boolean - is_admin: Boolean is_bot: Boolean - jsonsettings: String last_accepted_terms_at: String last_active_at: Int login: String @@ -15652,7 +15731,6 @@ type User implements Node { permissions: String profile_image: String providers: JsonStringType - settings: JsonStringType source: Source source_id: Int team_ids: [Int] @@ -15679,33 +15757,7 @@ type User implements Node { last: Int status: String ): TeamUserConnection - teams( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): TeamConnection - token: String - two_factor: JsonStringType - unconfirmed_email: String updated_at: String - user_teams: String - uuid: String } """ diff --git a/public/relay.json b/public/relay.json index 56a885e9b7..35de6a21d3 100644 --- a/public/relay.json +++ b/public/relay.json @@ -23989,7 +23989,7 @@ ], "type": { "kind": "OBJECT", - "name": "PublicTeam", + "name": "Team", "ofType": null }, "isDeprecated": false, @@ -45655,70 +45655,1237 @@ ], "type": { "kind": "OBJECT", - "name": "ProjectMediaConnection", + "name": "ProjectMediaConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "parsed_fragment", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "JsonStringType", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "permissions", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "project", + "description": null, + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "Project", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "team", + "description": null, + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "Team", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "updated_at", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "version", + "description": null, + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "Version", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + { + "kind": "INTERFACE", + "name": "Node", + "ofType": null + } + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "FlagConnection", + "description": "The connection type for Flag.", + "fields": [ + { + "name": "edges", + "description": "A list of edges.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "FlagEdge", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "nodes", + "description": "A list of nodes.", + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "Flag", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "pageInfo", + "description": "Information to aid in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "PageInfo", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "totalCount", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "FlagEdge", + "description": "An edge in a connection.", + "fields": [ + { + "name": "cursor", + "description": "A cursor for use in pagination.", + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "node", + "description": "The item at the end of the edge.", + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "Flag", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "INPUT_OBJECT", + "name": "GenerateTwoFactorBackupCodesInput", + "description": "Autogenerated input type of GenerateTwoFactorBackupCodes", + "fields": null, + "inputFields": [ + { + "name": "id", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "GenerateTwoFactorBackupCodesPayload", + "description": "Autogenerated return type of GenerateTwoFactorBackupCodes", + "fields": [ + { + "name": "clientMutationId", + "description": "A unique identifier for the client performing the mutation.", + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "codes", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "JsonStringType", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "success", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + } + ], + "inputFields": null, + "interfaces": [ + + ], + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "ID", + "description": "Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"VXNlci0xMA==\"`) or integer (such as `4`) input value will be accepted as an ID.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "Int", + "description": "Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.", + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "SCALAR", + "name": "JsonStringType", + "description": null, + "fields": null, + "inputFields": null, + "interfaces": null, + "enumValues": null, + "possibleTypes": null + }, + { + "kind": "OBJECT", + "name": "Me", + "description": "Me type", + "fields": [ + { + "name": "accepted_terms", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "annotations", + "description": null, + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "type", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "AnnotationConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "assignments", + "description": null, + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "team_id", + "description": null, + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "ProjectMediaConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "bot", + "description": null, + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "BotUser", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "bot_events", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "completed_signup", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "confirmed", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "created_at", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "current_project", + "description": null, + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "Project", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "current_team", + "description": null, + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "Team", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "current_team_id", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "dbid", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "email", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "feed_invitations", + "description": null, + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "OBJECT", + "name": "FeedInvitationConnection", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "get_send_email_notifications", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "get_send_failed_login_notifications", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "get_send_successful_login_notifications", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "id", + "description": null, + "args": [ + + ], + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "ID", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "is_active", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "is_admin", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "is_bot", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Boolean", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "jsonsettings", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "last_accepted_terms_at", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "last_active_at", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "login", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "name", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "number_of_teams", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "permissions", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "profile_image", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "providers", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "JsonStringType", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "settings", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "JsonStringType", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "source", + "description": null, + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "Source", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "source_id", + "description": null, + "args": [ + + ], + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "team_ids", + "description": null, + "args": [ + + ], + "type": { + "kind": "LIST", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + } + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "team_user", + "description": null, + "args": [ + { + "name": "team_slug", + "description": null, + "type": { + "kind": "NON_NULL", + "name": null, + "ofType": { + "kind": "SCALAR", + "name": "String", + "ofType": null + } + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "TeamUser", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "team_users", + "description": null, + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "status", + "description": null, + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "TeamUserConnection", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "teams", + "description": null, + "args": [ + { + "name": "after", + "description": "Returns the elements in the list that come after the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "before", + "description": "Returns the elements in the list that come before the specified cursor.", + "type": { + "kind": "SCALAR", + "name": "String", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "first", + "description": "Returns the first _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + }, + { + "name": "last", + "description": "Returns the last _n_ elements from the list.", + "type": { + "kind": "SCALAR", + "name": "Int", + "ofType": null + }, + "defaultValue": null, + "isDeprecated": false, + "deprecationReason": null + } + ], + "type": { + "kind": "OBJECT", + "name": "TeamConnection", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "parsed_fragment", + "name": "token", "description": null, "args": [ ], "type": { "kind": "SCALAR", - "name": "JsonStringType", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "permissions", + "name": "two_factor", "description": null, "args": [ ], "type": { "kind": "SCALAR", - "name": "String", + "name": "JsonStringType", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "project", + "name": "unconfirmed_email", "description": null, "args": [ ], "type": { - "kind": "OBJECT", - "name": "Project", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "team", + "name": "updated_at", "description": null, "args": [ ], "type": { - "kind": "OBJECT", - "name": "Team", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, "deprecationReason": null }, { - "name": "updated_at", + "name": "user_teams", "description": null, "args": [ @@ -45732,14 +46899,14 @@ "deprecationReason": null }, { - "name": "version", + "name": "uuid", "description": null, "args": [ ], "type": { - "kind": "OBJECT", - "name": "Version", + "kind": "SCALAR", + "name": "String", "ofType": null }, "isDeprecated": false, @@ -45757,256 +46924,6 @@ "enumValues": null, "possibleTypes": null }, - { - "kind": "OBJECT", - "name": "FlagConnection", - "description": "The connection type for Flag.", - "fields": [ - { - "name": "edges", - "description": "A list of edges.", - "args": [ - - ], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "FlagEdge", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "nodes", - "description": "A list of nodes.", - "args": [ - - ], - "type": { - "kind": "LIST", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "Flag", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "pageInfo", - "description": "Information to aid in pagination.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "PageInfo", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "totalCount", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "FlagEdge", - "description": "An edge in a connection.", - "fields": [ - { - "name": "cursor", - "description": "A cursor for use in pagination.", - "args": [ - - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "String", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "node", - "description": "The item at the end of the edge.", - "args": [ - - ], - "type": { - "kind": "OBJECT", - "name": "Flag", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "INPUT_OBJECT", - "name": "GenerateTwoFactorBackupCodesInput", - "description": "Autogenerated input type of GenerateTwoFactorBackupCodes", - "fields": null, - "inputFields": [ - { - "name": "id", - "description": null, - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - } - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "clientMutationId", - "description": "A unique identifier for the client performing the mutation.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "OBJECT", - "name": "GenerateTwoFactorBackupCodesPayload", - "description": "Autogenerated return type of GenerateTwoFactorBackupCodes", - "fields": [ - { - "name": "clientMutationId", - "description": "A unique identifier for the client performing the mutation.", - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "codes", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "JsonStringType", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "success", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - } - ], - "inputFields": null, - "interfaces": [ - - ], - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "ID", - "description": "Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `\"VXNlci0xMA==\"`) or integer (such as `4`) input value will be accepted as an ID.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "Int", - "description": "Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.", - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, - { - "kind": "SCALAR", - "name": "JsonStringType", - "description": null, - "fields": null, - "inputFields": null, - "interfaces": null, - "enumValues": null, - "possibleTypes": null - }, { "kind": "OBJECT", "name": "Media", @@ -52628,6 +53545,11 @@ "name": "Flag", "ofType": null }, + { + "kind": "OBJECT", + "name": "Me", + "ofType": null + }, { "kind": "OBJECT", "name": "Media", @@ -53176,7 +54098,7 @@ ], "type": { "kind": "OBJECT", - "name": "PublicTeam", + "name": "Team", "ofType": null }, "isDeprecated": false, @@ -57702,6 +58624,20 @@ "isDeprecated": false, "deprecationReason": null }, + { + "name": "public_team", + "description": null, + "args": [ + + ], + "type": { + "kind": "OBJECT", + "name": "PublicTeam", + "ofType": null + }, + "isDeprecated": false, + "deprecationReason": null + }, { "name": "published", "description": null, @@ -59362,7 +60298,7 @@ ], "type": { "kind": "OBJECT", - "name": "User", + "name": "Me", "ofType": null }, "isDeprecated": false, @@ -67851,7 +68787,7 @@ ], "type": { "kind": "OBJECT", - "name": "PublicTeam", + "name": "Team", "ofType": null }, "isDeprecated": false, @@ -85636,180 +86572,6 @@ "isDeprecated": false, "deprecationReason": null }, - { - "name": "annotations", - "description": null, - "args": [ - { - "name": "after", - "description": "Returns the elements in the list that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements in the list that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns the first _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns the last _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "type", - "description": null, - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "AnnotationConnection", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "assignments", - "description": null, - "args": [ - { - "name": "after", - "description": "Returns the elements in the list that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements in the list that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns the first _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns the last _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "team_id", - "description": null, - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "ProjectMediaConnection", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "bot", - "description": null, - "args": [ - - ], - "type": { - "kind": "OBJECT", - "name": "BotUser", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "bot_events", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, { "name": "completed_signup", "description": null, @@ -85824,20 +86586,6 @@ "isDeprecated": false, "deprecationReason": null }, - { - "name": "confirmed", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, { "name": "created_at", "description": null, @@ -85852,20 +86600,6 @@ "isDeprecated": false, "deprecationReason": null }, - { - "name": "current_project", - "description": null, - "args": [ - - ], - "type": { - "kind": "OBJECT", - "name": "Project", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, { "name": "current_team", "description": null, @@ -85874,7 +86608,7 @@ ], "type": { "kind": "OBJECT", - "name": "PublicTeam", + "name": "Team", "ofType": null }, "isDeprecated": false, @@ -85922,113 +86656,6 @@ "isDeprecated": false, "deprecationReason": null }, - { - "name": "feed_invitations", - "description": null, - "args": [ - { - "name": "after", - "description": "Returns the elements in the list that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements in the list that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns the first _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns the last _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "NON_NULL", - "name": null, - "ofType": { - "kind": "OBJECT", - "name": "FeedInvitationConnection", - "ofType": null - } - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "get_send_email_notifications", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "get_send_failed_login_notifications", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "get_send_successful_login_notifications", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, { "name": "id", "description": null, @@ -86061,20 +86688,6 @@ "isDeprecated": false, "deprecationReason": null }, - { - "name": "is_admin", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "Boolean", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, { "name": "is_bot", "description": null, @@ -86089,20 +86702,6 @@ "isDeprecated": false, "deprecationReason": null }, - { - "name": "jsonsettings", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, { "name": "last_accepted_terms_at", "description": null, @@ -86215,20 +86814,6 @@ "isDeprecated": false, "deprecationReason": null }, - { - "name": "settings", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "JsonStringType", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, { "name": "source", "description": null, @@ -86377,142 +86962,11 @@ "isDeprecated": false, "deprecationReason": null }, - { - "name": "teams", - "description": null, - "args": [ - { - "name": "after", - "description": "Returns the elements in the list that come after the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "before", - "description": "Returns the elements in the list that come before the specified cursor.", - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "first", - "description": "Returns the first _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "last", - "description": "Returns the last _n_ elements from the list.", - "type": { - "kind": "SCALAR", - "name": "Int", - "ofType": null - }, - "defaultValue": null, - "isDeprecated": false, - "deprecationReason": null - } - ], - "type": { - "kind": "OBJECT", - "name": "TeamConnection", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "token", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "two_factor", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "JsonStringType", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "unconfirmed_email", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, { "name": "updated_at", "description": null, "args": [ - ], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "user_teams", - "description": null, - "args": [ - - ], - "type": { - "kind": "SCALAR", - "name": "String", - "ofType": null - }, - "isDeprecated": false, - "deprecationReason": null - }, - { - "name": "uuid", - "description": null, - "args": [ - ], "type": { "kind": "SCALAR",