Sha256: 8341e995e843046df81d31fee674edb496990bc5f72d0e018e23abdf980cd881

Contents?: true

Size: 555 Bytes

Versions: 2

Compression:

Stored size: 555 Bytes

Contents

require File.join(File.dirname(__FILE__), 'layout_component')

module ExpressAdmin
  class Pane < LayoutComponent

    emits -> {
      div(dom_id, class: classes) {
        heading if title || status
        _yield
      }
    }

    def heading
      h2.title {
        null_wrap { title }
        span.status(status) if status
      }
    end

    def dom_id
      nil
    end

    def title
      @config[:title] || ''
    end

    def status
      @config[:status] || nil
    end

    def classes
      super << " #{@config[:id]}"
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
express_admin-1.2.1 app/components/express_admin/pane.rb
express_admin-1.2.0 app/components/express_admin/pane.rb