Sha256: f827d7d61130985139ceceb47946476de804a731b653790a5f780ada256afad2

Contents?: true

Size: 1.92 KB

Versions: 21

Compression:

Stored size: 1.92 KB

Contents

module UiBibz::Ui::Core::Navigations

  # Create a dropdown
  #
  # This element is an extend of UiBibz::Ui::Core::Navigations::Component.
  # You can use tap method to add list items.
  #
  # ==== Attributes
  #
  # * +content+ - Content of element
  # * +options+ - Options of element
  # * +html_options+ - Html Options of element
  #
  # ==== Options
  #
  # You can add HTML attributes using the +html_options+.
  # You can pass arguments in options attribute:
  # * +status+ - status of élement with symbol value:
  #   (+:default+, +:primary+, +:info+, +:warning+, +:danger+)
  # * +size+
  #   (+:xs+, +:sm+, +:lg+)
  # * +glyph+ - Add glyph with name or hash options
  #   * +name+ - String
  #   * +size+ - Integer
  #   * +type+ - Symbol
  #
  # ==== Signatures
  #
  #   UiBibz::Ui::Core::Navigations::NavDropdown.new(options = nil, html_options = nil).tap do |d|
  #     ...
  #     d.list content = nil, options = nil, html_options = nil, &block
  #     d.list content = nil, options = nil, html_options = nil, &block
  #     d.list content = nil, options = nil, html_options = nil, &block
  #     ...
  #   end
  #
  # ==== Examples
  #
  #   UiBibz::Ui::Core::Navigations::NavDropdown.new(name, status: :success).tap do |d|
  #     d.list link_to('test', '#')
  #     d.list link_to('test2', '#')
  #   end.render
  #
  class NavDropdown < UiBibz::Ui::Core::Forms::Dropdowns::Dropdown

    # See UiBibz::Ui::Core::Dropdown.initialize
    def initialize content, options = nil, html_options  = nil, &block
      super
    end

    # Render html tag
    def pre_render
      content_tag :li, html_options do
        concat link_html
        concat ul_html
      end
    end

  private

    def component_html_classes
      [type, 'nav-item', without_caret]
    end

    def link_html
      link_to button_content, "#", class: join_classes(size, "dropdown-toggle", 'nav-link'), "data-toggle" => 'dropdown', "aria-expanded" => false
    end

  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
ui_bibz-2.4.0 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.15 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.14 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.13 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.12 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.11 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.10 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.9 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.8 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.7 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.6 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.5 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.4 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.3 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.2 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.1 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.3.0 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.2.2 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.2.1 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb
ui_bibz-2.2.0 lib/ui_bibz/ui/core/navigations/components/nav_dropdown.rb