Add new GraphQL type for milestones
- added the milestone type to be displayed with investments - the corresponding spec
This commit is contained in:
@@ -9,5 +9,6 @@ module Types
|
||||
field :location, String, null: true
|
||||
field :comments, Types::CommentType.connection_type, null: true
|
||||
field :comments_count, Integer, null: true
|
||||
field :milestones, Types::MilestoneType.connection_type, null: true
|
||||
end
|
||||
end
|
||||
|
||||
8
app/graphql/types/milestone_type.rb
Normal file
8
app/graphql/types/milestone_type.rb
Normal file
@@ -0,0 +1,8 @@
|
||||
module Types
|
||||
class MilestoneType < Types::BaseObject
|
||||
field :title, String, null: true
|
||||
field :description, String, null: true
|
||||
field :id, ID, null: false
|
||||
field :publication_date, GraphQL::Types::ISO8601Date, null: true
|
||||
end
|
||||
end
|
||||
@@ -20,6 +20,7 @@ module Types
|
||||
field :title, String, null: true
|
||||
field :video_url, String, null: true
|
||||
field :votes_for, Types::VoteType.connection_type, null: true
|
||||
field :milestones, Types::MilestoneType.connection_type, null: true
|
||||
|
||||
def tags
|
||||
object.tags.public_for_api
|
||||
|
||||
@@ -20,6 +20,11 @@ module Types
|
||||
argument :id, ID, required: true, default_value: false
|
||||
end
|
||||
|
||||
field :milestones, Types::MilestoneType.connection_type, "Returns all milestones", null: false
|
||||
field :milestone, Types::MilestoneType, "Returns milestone for ID", null: false do
|
||||
argument :id, ID, required: true, default_value: false
|
||||
end
|
||||
|
||||
field :proposals, Types::ProposalType.connection_type, "Returns all proposals", null: false
|
||||
field :proposal, Types::ProposalType, "Returns proposal for ID", null: false do
|
||||
argument :id, ID, required: true, default_value: false
|
||||
@@ -84,6 +89,14 @@ module Types
|
||||
Geozone.find(id)
|
||||
end
|
||||
|
||||
def milestones
|
||||
Milestone.public_for_api
|
||||
end
|
||||
|
||||
def milestone(id:)
|
||||
Milestone.find(id)
|
||||
end
|
||||
|
||||
def proposals
|
||||
Proposal.public_for_api
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user