Module: ActiveModel::Serializer::Adapter::JsonApi::ApiObjects::JsonApi

Defined in:
lib/active_model/serializer/adapter/json_api.rb

Class Method Summary (collapse)

Class Method Details

+ (Object) add!(hash)



20
21
22
# File 'lib/active_model/serializer/adapter/json_api.rb', line 20

def add!(hash)
  hash.merge!(object) if include_object?
end

+ (Boolean) include_object?

Returns:

  • (Boolean)


24
25
26
# File 'lib/active_model/serializer/adapter/json_api.rb', line 24

def include_object?
  ActiveModel::Serializer.config.jsonapi_include_toplevel_object
end

+ (Object) object

TODO: see if we can cache this



29
30
31
32
33
34
35
36
37
38
39
# File 'lib/active_model/serializer/adapter/json_api.rb', line 29

def object
  object = {
    jsonapi: {
      version: ActiveModel::Serializer.config.jsonapi_version,
      meta: ActiveModel::Serializer.config.jsonapi_toplevel_meta
    }
  }
  object[:jsonapi].reject! { |_, v| v.blank? }

  object
end