Sha256: ee84faf12544d0c797550fd8f7def5b1cefee3c22fe65056428e0040ad006c5c

Contents?: true

Size: 583 Bytes

Versions: 98

Compression:

Stored size: 583 Bytes

Contents

require "dry-initializer"

class Avo::Menu::BaseItem
  extend Dry::Initializer

  option :collapsable, default: proc { false }
  option :collapsed, default: proc { false }
  option :icon, optional: true
  option :items, default: proc { [] }
  option :name, default: proc { "" }
  option :visible, default: proc { true }
  option :data, default: proc { {} }

  def visible?
    return visible if visible.in? [true, false]

    if visible.respond_to? :call
      Avo::Hosts::BaseHost.new(block: visible).handle
    end
  end

  def navigation_label
    label || entity_label
  end
end

Version data entries

98 entries across 98 versions & 1 rubygems

Version Path
avo-2.53.0 lib/avo/menu/base_item.rb
avo-2.52.0 lib/avo/menu/base_item.rb
avo-2.49.0 lib/avo/menu/base_item.rb
avo-2.48.0 lib/avo/menu/base_item.rb
avo-2.47.0 lib/avo/menu/base_item.rb
avo-2.46.0 lib/avo/menu/base_item.rb
avo-2.45.0 lib/avo/menu/base_item.rb
avo-2.44.0 lib/avo/menu/base_item.rb
avo-2.43.0 lib/avo/menu/base_item.rb
avo-2.42.2 lib/avo/menu/base_item.rb
avo-2.42.1 lib/avo/menu/base_item.rb
avo-2.42.0 lib/avo/menu/base_item.rb
avo-2.41.0 lib/avo/menu/base_item.rb
avo-2.40.0 lib/avo/menu/base_item.rb
avo-2.39.0 lib/avo/menu/base_item.rb
avo-2.38.0 lib/avo/menu/base_item.rb
avo-2.37.2 lib/avo/menu/base_item.rb
avo-2.37.1 lib/avo/menu/base_item.rb
avo-2.37.0 lib/avo/menu/base_item.rb
avo-2.36.3 lib/avo/menu/base_item.rb