Sha256: 64eadc8eefbe92bad7246da663e4dfa3e0b06f17a25997f0aaca9d75e8b15e8b

Contents?: true

Size: 674 Bytes

Versions: 28

Compression:

Stored size: 674 Bytes

Contents

# frozen_string_literal: true

module ActiveElement
  module Components
    # One navigation tab in a Tabs component.
    class Tab
      attr_reader :title, :path, :content

      def initialize(controller, title:, path:, &block)
        @controller = controller
        @title = title
        @path = path
        @content = block_given? ? block.call : ''
      end

      def selected?
        controller.request.fullpath == path
      end

      def identifier
        Util::I18n.class_name(title)
      end

      def to_s
        ''
      end

      def tab(title)
        yield Tab.new(title)
      end

      private

      attr_reader :controller
    end
  end
end

Version data entries

28 entries across 28 versions & 1 rubygems

Version Path
active_element-0.0.31 lib/active_element/components/tab.rb
active_element-0.0.30 lib/active_element/components/tab.rb
active_element-0.0.29 lib/active_element/components/tab.rb
active_element-0.0.28 lib/active_element/components/tab.rb
active_element-0.0.27 lib/active_element/components/tab.rb
active_element-0.0.26 lib/active_element/components/tab.rb
active_element-0.0.24 lib/active_element/components/tab.rb
active_element-0.0.23 lib/active_element/components/tab.rb
active_element-0.0.22 lib/active_element/components/tab.rb
active_element-0.0.21 lib/active_element/components/tab.rb
active_element-0.0.19 lib/active_element/components/tab.rb
active_element-0.0.18 lib/active_element/components/tab.rb
active_element-0.0.17 lib/active_element/components/tab.rb
active_element-0.0.16 lib/active_element/components/tab.rb
active_element-0.0.15 lib/active_element/components/tab.rb
active_element-0.0.14 lib/active_element/components/tab.rb
active_element-0.0.13 lib/active_element/components/tab.rb
active_element-0.0.12 lib/active_element/components/tab.rb
active_element-0.0.11 lib/active_element/components/tab.rb
active_element-0.0.10 lib/active_element/components/tab.rb