# frozen_string_literal: true class CustomWizard::SubmissionSerializer < ApplicationSerializer attributes :id, :fields, :submitted_at, :user def include_user? object.wizard.user.present? end def user ::BasicUserSerializer.new(object.wizard.user, root: false).as_json end def fields @fields ||= begin result = {} object.wizard.template["steps"].each do |step| step["fields"].each do |field| if value = object.fields[field["id"]] result[field["id"]] = { value: value, type: field["type"], label: field["label"] } end end end result end end end