Sha256: bffb9fb4886fc44654b9955216ef87a5101dab6b3da735aa2fe7d7cf4b7dabb0

Contents?: true

Size: 879 Bytes

Versions: 13

Compression:

Stored size: 879 Bytes

Contents

# frozen_string_literal: true

class Avo::Fields::IndexComponent < Avo::BaseComponent
  include Avo::ResourcesHelper

  attr_reader :parent_resource
  attr_reader :view

  def initialize(field: nil, resource: nil, reflection: nil, index: 0, parent_record: nil, parent_resource: nil)
    @field = field
    @resource = resource
    @index = index
    @parent_record = parent_record
    @parent_resource = parent_resource
    @view = :index
    @reflection = reflection
  end

  def resource_view_path
    args = {}

    if @parent_record.present?
      args = {
        via_resource_class: @parent_resource.class,
        via_record_id: @parent_record.to_param
      }
    end

    helpers.resource_view_path(record: @resource.record, resource: parent_or_child_resource, **args)
  end

  def field_wrapper_args
    {
      field: @field,
      resource: @resource
    }
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
avo-3.0.0.pre13 app/components/avo/fields/index_component.rb
avo-3.0.0.pre12 app/components/avo/fields/index_component.rb
avo-3.0.0.pre10 app/components/avo/fields/index_component.rb
avo-3.0.0.pre11 app/components/avo/fields/index_component.rb
avo-3.0.0.pre8 app/components/avo/fields/index_component.rb
avo-3.0.0.pre9 app/components/avo/fields/index_component.rb
avo-3.0.0.pre7 app/components/avo/fields/index_component.rb
avo-3.0.0.pre5 app/components/avo/fields/index_component.rb
avo-3.0.0.pre6 app/components/avo/fields/index_component.rb
avo-3.0.0.pre4 app/components/avo/fields/index_component.rb
avo-3.0.0.pre3 app/components/avo/fields/index_component.rb
avo-3.0.0.pre2 app/components/avo/fields/index_component.rb
avo-3.0.0.pre1 app/components/avo/fields/index_component.rb