[day-04] expose exercise in graphql
This commit is contained in:
19
lib/wabanex_web/schema/types/exercise.ex
Normal file
19
lib/wabanex_web/schema/types/exercise.ex
Normal file
@@ -0,0 +1,19 @@
|
||||
defmodule WabanexWeb.Schema.Types.Exercise do
|
||||
use Absinthe.Schema.Notation
|
||||
|
||||
@desc "Logic exercise representation"
|
||||
object :exercise do
|
||||
field :id, non_null(:uuid4)
|
||||
field :name, non_null(:string)
|
||||
field :video_url, :string
|
||||
field :protocol_description, non_null(:string)
|
||||
field :repetitions, non_null(:string)
|
||||
end
|
||||
|
||||
input_object :create_exercise_input do
|
||||
field :name, non_null(:string)
|
||||
field :video_url, :string
|
||||
field :protocol_description, non_null(:string)
|
||||
field :repetitions, non_null(:string)
|
||||
end
|
||||
end
|
@@ -1,16 +1,20 @@
|
||||
defmodule WabanexWeb.Schema.Types.Training do
|
||||
use Absinthe.Schema.Notation
|
||||
|
||||
import_types WabanexWeb.Schema.Types.Exercise
|
||||
|
||||
@desc "Logic training representation"
|
||||
object :training do
|
||||
field :id, non_null(:uuid4)
|
||||
field :start_date, non_null(:string)
|
||||
field :end_date, :string
|
||||
field :exercises, non_null(list_of(:exercise))
|
||||
end
|
||||
|
||||
input_object :create_training_input do
|
||||
field :user_id, non_null(:uuid4)
|
||||
field :start_date, non_null(:string)
|
||||
field :end_date, :string
|
||||
field :exercises, non_null(list_of(:create_exercise_input))
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user