Sha256: dc99b9c0f354efe6c935bb5e815193bf070776c89ce00d08565b1662a5cf588d

Contents?: true

Size: 957 Bytes

Versions: 28

Compression:

Stored size: 957 Bytes

Contents

module JsDuck
  module Categories

    # Renders class names for class categories page.
    class ClassName
      def initialize(doc_formatter, relations={})
        @doc_formatter = doc_formatter
        @relations = relations
      end

      # Renders the class name as a link or plain text.
      #
      # For new classes appends a star behind class name.  For classes
      # with new members appends list n small stars behind class name
      # (reflecting the number of new members).
      def render(name)
        cls = @relations[name]
        if cls
          @doc_formatter.link(name, nil, name) + render_new_label(cls)
        else
          name
        end
      end

      private

      # Adds small star to new classes in the current version.
      def render_new_label(cls)
        if cls[:new]
          "&nbsp;<span class='new-class' title='New class'>&#9733;</span>"
        else
          ""
        end
      end

    end

  end
end

Version data entries

28 entries across 28 versions & 3 rubygems

Version Path
solvas-jsduck-6.0.0.30539 lib/jsduck/categories/class_name.rb
solvas-jsduck-6.0.0.9571 lib/jsduck/categories/class_name.rb
solvas-jsduck-6.0.0.6154 lib/jsduck/categories/class_name.rb
solvas-jsduck-6.0.0.4021 lib/jsduck/categories/class_name.rb
solvas-jsduck-6.0.0.2554 lib/jsduck/categories/class_name.rb
solvas-jsduck-6.0.0.1891 lib/jsduck/categories/class_name.rb
solvas-jsduck-6.0.0.beta.1888 lib/jsduck/categories/class_name.rb
jsduck-troopjs-0.0.10 lib/jsduck/categories/class_name.rb
jsduck-troopjs-0.0.9 lib/jsduck/categories/class_name.rb
jsduck-troopjs-0.0.8 lib/jsduck/categories/class_name.rb
jsduck-troopjs-0.0.7 lib/jsduck/categories/class_name.rb
jsduck-troopjs-0.0.5 lib/jsduck/categories/class_name.rb
jsduck-troopjs-0.0.4 lib/jsduck/categories/class_name.rb
jsduck-troopjs-0.0.3 lib/jsduck/categories/class_name.rb
jsduck-troopjs-0.0.1 lib/jsduck/categories/class_name.rb
jsduck-6.0.0beta lib/jsduck/categories/class_name.rb
jsduck-5.3.4 lib/jsduck/categories/class_name.rb
jsduck-5.3.3 lib/jsduck/categories/class_name.rb
jsduck-5.3.2 lib/jsduck/categories/class_name.rb
jsduck-5.3.1 lib/jsduck/categories/class_name.rb