discourse/app/serializers/theme_field_serializer.rb

46 lines
728 B
Ruby

# frozen_string_literal: true
class ThemeFieldSerializer < ApplicationSerializer
attributes :name, :target, :value, :error, :type_id, :upload_id, :url, :filename, :migrated
def include_url?
object.upload
end
def include_upload_id?
object.upload
end
def include_filename?
object.upload
end
def url
object.upload&.url
end
def filename
object.upload&.original_filename
end
def include_value?
@options[:include_value] || false
end
def target
Theme.lookup_target(object.target_id)&.to_s
end
def include_error?
object.error.present?
end
def migrated
!!object.theme_settings_migration
end
def include_migrated?
target == "migrations"
end
end