Sha256: 8c83cdf526124b9567562993f8ea3f56b3251d0aeeaade99a54a7229d17de695

Contents?: true

Size: 881 Bytes

Versions: 20

Compression:

Stored size: 881 Bytes

Contents

# frozen_string_literal: true

class Avo::Index::GridItemComponent < Avo::BaseComponent
  include Avo::ResourcesHelper

  attr_reader :parent_resource

  def initialize(resource: nil, reflection: nil, parent_model: nil, parent_resource: nil)
    @resource = resource
    @reflection = reflection
    @grid_fields = resource.get_grid_fields
    @parent_model = parent_model
    @parent_resource = parent_resource
  end

  private

  def cover
    @grid_fields.cover_field
  end

  def title
    @grid_fields.title_field
  end

  def body
    @grid_fields.body_field
  end

  def resource_view_path
    args = {}

    if @parent_model.present?
      args = {
        via_resource_class: parent_resource.class.to_s,
        via_resource_id: @parent_model.id
      }
    end

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

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
avo-2.26.1.pr1584.pre.1 app/components/avo/index/grid_item_component.rb
avo-2.26.0 app/components/avo/index/grid_item_component.rb
avo-2.25.0 app/components/avo/index/grid_item_component.rb
avo-2.24.1 app/components/avo/index/grid_item_component.rb
avo-2.24.0 app/components/avo/index/grid_item_component.rb
avo-2.23.3.pre.1.pr1529 app/components/avo/index/grid_item_component.rb
avo-2.23.2 app/components/avo/index/grid_item_component.rb
avo-2.23.1 app/components/avo/index/grid_item_component.rb
avo-2.23.0 app/components/avo/index/grid_item_component.rb
avo-2.22.0 app/components/avo/index/grid_item_component.rb
avo-2.21.3.pre.pr1489 app/components/avo/index/grid_item_component.rb
avo-2.21.2.pre.pr1486 app/components/avo/index/grid_item_component.rb
avo-2.21.1.pre.pr1484 app/components/avo/index/grid_item_component.rb
avo-2.21.0 app/components/avo/index/grid_item_component.rb
avo-2.21.1.pre.pr1476 app/components/avo/index/grid_item_component.rb
avo-2.21.1.pre.issue1450 app/components/avo/index/grid_item_component.rb
avo-2.21.1.pre.issue1444 app/components/avo/index/grid_item_component.rb
avo-2.20.0 app/components/avo/index/grid_item_component.rb
avo-2.19.0 app/components/avo/index/grid_item_component.rb
avo-2.18.1.pre.1.eagerloaddirs app/components/avo/index/grid_item_component.rb