Sha256: cc0fb959f72f97a5b0795929b2634c22e4489ccca27b6d51f73bf1d5ae867158

Contents?: true

Size: 690 Bytes

Versions: 44

Compression:

Stored size: 690 Bytes

Contents

module Avo
  module Resources
    module Controls
      class Action < BaseControl
        attr_reader :klass

        def initialize(klass, model: nil, resource: nil, view: nil, **args)
          super(**args)

          @klass = klass
          @resource = resource
          @model = model
          @view = view
        end

        def action
          @instance ||= @klass.new(model: @model, resource: @resource, view: @view)
        end

        def path
          Avo::Services::URIService.parse(@resource.record_path).append_paths("actions", action.param_id).to_s
        end

        def label
          @args[:label] || action.action_name
        end
      end
    end
  end
end

Version data entries

44 entries across 44 versions & 1 rubygems

Version Path
avo-2.32.3 lib/avo/resources/controls/action.rb
avo-2.32.2 lib/avo/resources/controls/action.rb
avo-2.32.1 lib/avo/resources/controls/action.rb
avo-2.32.0 lib/avo/resources/controls/action.rb
avo-2.31.0 lib/avo/resources/controls/action.rb
avo-2.30.2 lib/avo/resources/controls/action.rb
avo-2.30.1 lib/avo/resources/controls/action.rb
avo-2.30.1.pre4.pr1683 lib/avo/resources/controls/action.rb
avo-2.30.1.pre3.pr1683 lib/avo/resources/controls/action.rb
avo-2.30.1.pre2.pr1683 lib/avo/resources/controls/action.rb
avo-2.30.1.pre1.pr1683 lib/avo/resources/controls/action.rb
avo-2.30.0 lib/avo/resources/controls/action.rb
avo-2.29.1 lib/avo/resources/controls/action.rb
avo-2.29.1.pre.pr1652 lib/avo/resources/controls/action.rb
avo-2.29.0 lib/avo/resources/controls/action.rb
avo-2.28.3.pre.pr1646 lib/avo/resources/controls/action.rb
avo-2.28.2.pre.pr1642 lib/avo/resources/controls/action.rb
avo-2.28.1.pre.pr1642 lib/avo/resources/controls/action.rb
avo-2.28.0 lib/avo/resources/controls/action.rb
avo-2.27.2.pre.pr1606 lib/avo/resources/controls/action.rb