Commit 807cdbc4 authored by Rene Saarsoo's avatar Rene Saarsoo
Browse files

Support for @removed tag.

Otherwise like @deprecated, but for documenting members that have
been completely removed.
parent faf8db38
Loading
Loading
Loading
Loading
+36 −0
Original line number Diff line number Diff line
require "jsduck/meta_tag"

module JsDuck::Tag
  # Implementation of @removed tag.
  #
  # To document members that were present in previous version but are
  # completely gone now.  Other than that it behaves exactly like @deprecated.
  class Removed < JsDuck::MetaTag
    def initialize
      @name = "removed"
      @key = :removed
      @signature = {:long => "removed", :short => "REM"}
      @multiline = true
    end

    def to_value(contents)
      text = contents[0]
      if text =~ /\A([0-9.]+)(.*)\Z/
        {:version => $1, :text => $2.strip}
      else
        {:text => text || ""}
      end
    end

    def to_html(val)
      ver = val[:version] ? "since " + val[:version] : ""
      <<-EOHTML
        <div class='signature-box removed'>
        <p>This #{@context[:tagname]} has been <strong>removed</strong> #{ver}</p>
        #{format(val[:text])}
        </div>
      EOHTML
    end
  end
end
+10 −4
Original line number Diff line number Diff line
@@ -153,12 +153,18 @@
  text-align: center;
  &.template {
    background-color: #eee; }
  &.deprecated {
  &.deprecated, &.removed {
    color: #600;
    background-color: #fee;
    strong {
      text-transform: uppercase;
      color: white;
      @include border-radius(2px);
      padding: 0 3px;
      background-color: #aa0000; } } }
      padding: 0 3px; } }
  &.deprecated strong {
    color: white;
    background-color: #aa0000; }
  &.removed strong {
    color: #aa0000;
    border: 1px solid #aa0000;
    background-color: transparent;
    text-decoration: line-through; } }
+5 −0
Original line number Diff line number Diff line
@@ -152,6 +152,11 @@
  // specific colors
  &.deprecated {
    background-color: #aa0000; }
  &.removed {
    color: #aa0000;
    background-color: transparent;
    border: 1px solid #aa0000;
    text-decoration: line-through; }
  &.static {
    background-color: $docs-text-color; }
  &.required {