Sha256: 3afe6382bce71fc0868b6510d4a9a67f2ac318f387216cfedba7108d164b0762
Contents?: true
Size: 1.2 KB
Versions: 18
Compression:
Stored size: 1.2 KB
Contents
class Avo::Resources::Items::ItemGroup prepend Avo::Concerns::IsResourceItem include Avo::Concerns::HasItems include Avo::Concerns::HasItemType include Avo::Concerns::VisibleItems include Avo::Concerns::VisibleInDifferentViews attr_reader :name attr_reader :description delegate :items, :add_item, to: :items_holder def initialize(name: nil, description: nil, view: nil, **args) @name = name @view = Avo::ViewInquirer.new view @description = description @items_holder = Avo::Resources::Items::Holder.new @args = args post_initialize if respond_to?(:post_initialize) end class Builder class << self def parse_block(**args, &block) Docile.dsl_eval(new(**args), &block).build end end delegate :heading, to: :items_holder delegate :field, to: :items_holder delegate :row, to: :items_holder delegate :items, to: :items_holder attr_reader :items_holder def initialize(name: nil, **args) @panel = Avo::Resources::Items::Panel.new(name: name, **args) @items_holder = Avo::Resources::Items::Holder.new end # Fetch the tab def build @panel.items_holder = @items_holder @panel end end end
Version data entries
18 entries across 18 versions & 1 rubygems