Sha256: 5a2e1edee8ca7a43f928d70d4893f0fc9370e805ef6828972647d50ea8e85097

Contents?: true

Size: 854 Bytes

Versions: 6

Compression:

Stored size: 854 Bytes

Contents

module {{namespace_module}}
  module Accounts
    module Create
      class Denormalizer
        include Shogun::Denormalizer
        include Accounts

        MAPPING = {
          "id" => "id",
          "signature" => "signature",
          "username" => "username",
          "email" => "email",
          "name" => "name",
          "created_at" => "created_at",
          "destroyed_at" => "destroyed_at",
          "updated_at" => "updated_at",
          "href" => "href"
        }

        def initialize(object:)
          @object = object
          @meta = object.meta
          @links = object.links
          @linked = object.linked
        end

        private def document
          mapping.inject({}) do |hash, (field, name)|
            hash.merge(field => @object.public_send(name))
          end
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
shogun-6.4.2 scaffold/new/project/lib/namespace/accounts/create/denormalizer.rb
shogun-6.4.1 scaffold/new/project/lib/namespace/accounts/create/denormalizer.rb
shogun-6.4.0 scaffold/new/project/lib/namespace/accounts/create/denormalizer.rb
shogun-6.3.0 scaffold/new/project/lib/namespace/accounts/create/denormalizer.rb
shogun-6.2.3 scaffold/new/project/lib/namespace/accounts/create/denormalizer.rb
shogun-6.2.2 scaffold/new/project/lib/namespace/accounts/create/denormalizer.rb