Sha256: ae118cb9d3ced3151e7e6f1210c055182be202187fe3130241c5e478100ea4d7
Contents?: true
Size: 1.08 KB
Versions: 5
Compression:
Stored size: 1.08 KB
Contents
# frozen_string_literal: true class Avo::ItemSwitcherComponent < Avo::BaseComponent include Turbo::FramesHelper attr_reader :resource attr_reader :reflection attr_reader :index attr_reader :item attr_reader :view def initialize(resource: nil, reflection: nil, item: nil, index: nil, view: nil, form: nil) @resource = resource @reflection = reflection @form = form @index = index @item = item @view = view end def form @form || nil end def render? # Stops rendering if the field should be hidden in reflections if item.is_field? return false if in_reflection? && item.hidden_in_reflection? end true end def in_reflection? @reflection.present? end def tab_group_component Avo::TabGroupComponent.new resource: @resource, group: item.hydrate(view: view), index: index, params: params, form: form, view: view end def field_component item.component_for_view(@view).new(field: item.hydrate(resource: @resource, view: @view, model: @resource.model), resource: @resource, index: index, form: form) end end
Version data entries
5 entries across 5 versions & 1 rubygems