Current section

Files

Jump to
step_flow lib step_flow view workflow_definition_view.ex
Raw

lib/step_flow/view/workflow_definition_view.ex

defmodule StepFlow.WorkflowDefinitionView do
use StepFlow, :view
alias StepFlow.WorkflowDefinitionView
def render("index.json", %{workflow_definitions: %{data: workflow_definitions, total: total}}) do
%{
data: render_many(workflow_definitions, WorkflowDefinitionView, "workflow_definition.json"),
total: total
}
end
def render("show.json", %{workflow_definition: workflow_definition}) do
%{data: render_one(workflow_definition, WorkflowDefinitionView, "workflow_definition.json")}
end
def render("workflow_definition.json", %{workflow_definition: workflow_definition}) do
%{
identifier: workflow_definition["identifier"],
label: workflow_definition["label"],
icon: workflow_definition["icon"],
version_major: workflow_definition["version_major"],
version_minor: workflow_definition["version_minor"],
version_micro: workflow_definition["version_micro"],
tags: workflow_definition["tags"],
start_parameters: workflow_definition["start_parameters"],
parameters: workflow_definition["parameters"],
steps: workflow_definition["steps"]
}
end
def render("error.json", %{errors: errors}) do
formatted =
Enum.map(errors, fn error ->
case error do
{message, details} ->
%{
message: message,
details: details
}
end
end)
%{errors: formatted}
end
end