Sha256: 092a8ca638bf7144c68f5fb9ec87d53a844a093256192d5746db239aa5cdf2ac

Contents?: true

Size: 467 Bytes

Versions: 185

Compression:

Stored size: 467 Bytes

Contents

require "dry-initializer"

module Avo
  module Hosts
    class Ordering
      extend Dry::Initializer

      option :options, default: proc { {} }
      option :resource
      option :record, default: proc { resource.model }
      option :params, default: proc { resource.params }

      def order(direction)
        action = options.dig(:actions, direction.to_sym)

        if action.present?
          instance_exec(&action)
        end
      end
    end
  end
end

Version data entries

185 entries across 185 versions & 1 rubygems

Version Path
avo-2.53.0 lib/avo/hosts/ordering.rb
avo-2.52.0 lib/avo/hosts/ordering.rb
avo-2.49.0 lib/avo/hosts/ordering.rb
avo-2.48.0 lib/avo/hosts/ordering.rb
avo-2.47.0 lib/avo/hosts/ordering.rb
avo-2.46.0 lib/avo/hosts/ordering.rb
avo-2.45.0 lib/avo/hosts/ordering.rb
avo-2.44.0 lib/avo/hosts/ordering.rb
avo-2.43.0 lib/avo/hosts/ordering.rb
avo-2.42.2 lib/avo/hosts/ordering.rb
avo-2.42.1 lib/avo/hosts/ordering.rb
avo-2.42.0 lib/avo/hosts/ordering.rb
avo-2.41.0 lib/avo/hosts/ordering.rb
avo-2.40.0 lib/avo/hosts/ordering.rb
avo-2.39.0 lib/avo/hosts/ordering.rb
avo-2.38.0 lib/avo/hosts/ordering.rb
avo-2.37.2 lib/avo/hosts/ordering.rb
avo-2.37.1 lib/avo/hosts/ordering.rb
avo-2.37.0 lib/avo/hosts/ordering.rb
avo-2.36.3 lib/avo/hosts/ordering.rb