{% include "lib/githubLinks.html" -%}
{% include "lib/paramList.html" -%}
{% extends 'layout/base.template.html' -%}

{% block body %}
p.location-badge.
  exported from {@link {$ doc.moduleDoc.id $} {$doc.moduleDoc.id $} }
  defined in {$ githubViewLink(doc) $}

:markdown
{$ doc.moduleDoc.description | indent(2, true) | trimBlankLines $}

{%- if doc.decorators %}
.l-main-section
  h2 Annotations
{%- for decorator in doc.decorators %}
  .l-sub-section
    h3.annotation {$ decorator.name $}
    pre.prettyprint
      code.
        @{$ decorator.name $}{$ paramList(decorator.arguments) | indent(8, false) $}
{% endfor %}
{% endif -%}


{%- if doc.constructorDoc or doc.members.length -%}
.l-main-section
  h2 Members

{%- if doc.constructorDoc %}
  .l-sub-section
    h3 {$ doc.constructorDoc.name $}

    {% if doc.constructorDoc.parameters %}
    pre.prettyprint
      code.
        {$ doc.constructorDoc.name $}{$ paramList(doc.constructorDoc.parameters) | indent(8, false) | trim $}
    {% endif %}
    :markdown
{$ doc.constructorDoc.description | indent(6, true) | replace('## Example', '') | replace('# Example', '') | trimBlankLines $}


{% endif -%}

{%- for member in doc.members %}{% if not member.private %}
  .l-sub-section
    h3 {$ member.name $}{% if member.optional %}?{% endif %}

    {% if member.parameters %}
    pre.prettyprint
      code.
        {$ member.name $}{$ paramList(member.parameters) | indent(8, false) | trim $}{$ returnType(doc.returnType) $}
    {% endif %}
    :markdown
{$ member.description | indent(6, true) | replace('## Example', '') | replace('# Example', '') | trimBlankLines $}



{% endif %}{% endfor %}
{%- endif -%}

{% endblock %}
