scinote-web/app/serializers/step_orderable_element_serializer.rb
2022-05-11 09:51:47 +02:00

17 lines
486 B
Ruby

# frozen_string_literal: true
class StepOrderableElementSerializer < ActiveModel::Serializer
attributes :position, :orderable, :orderable_type
def orderable
case object.orderable_type
when 'Checklist'
ChecklistSerializer.new(object.orderable).as_json
when 'StepTable'
TableSerializer.new(object.orderable.table).as_json
when 'StepText'
StepTextSerializer.new(object.orderable, scope: { user: @instance_options[:user] }).as_json
end
end
end