mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2024-12-27 02:04:33 +08:00
dd27fadd98
* Add step reordering service endpoint to API [SCI-6891] * Generalize reorder validation [SCI-6891] * Add endpoint for reordering step elements, fix issues [SCI-6892] * Add appropriate serializers [SCI-6891][SCI-6892] * Add step elements to step serializer [SCI-6891] * Simplify routes, add locking [SCI-6891]
20 lines
507 B
Ruby
20 lines
507 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Api
|
|
module V1
|
|
class StepOrderableElementSerializer < ActiveModel::Serializer
|
|
attributes :position, :element
|
|
|
|
def element
|
|
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).as_json
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|