acme-proxy-admin 0.6.1

The operation layer and web admin panel of acme-proxy (internal crate, no semver promise)
Documentation
{#- The swap target of the audit list. Read-only: there is no control in this
    table, because nothing in the panel may alter the trail. -#}
<div id="audit-table">
  <div class="panel table-scroll">
    <table>
      <thead>
        <tr>
          <th>Row</th>
          <th>When</th>
          <th>Event</th>
          <th>Profile</th>
          <th>Actor</th>
          <th>Client</th>
          <th>Identifiers</th>
        </tr>
      </thead>
      <tbody>
        {% for entry in page.items %}
          <tr>
            <td><a href="/ui/audit/{{ entry.id }}"><code>{{ entry.id }}</code></a></td>
            <td class="small"><time datetime="{{ entry.createdAt }}">{{ entry.createdAt }}</time><br><span class="muted">{{ entry.createdAt | ago }}</span></td>
            <td><span class="badge {{ entry.outcome }}">{{ entry.event }}</span></td>
            <td><code>{{ entry.profile }}</code></td>
            <td class="small">
              {{ entry.actorKind }}{% if entry.actorId %}:<code>{{ entry.actorId }}</code>{% endif %}
            </td>
            {#- Address and reverse name in one cell: they are empty together
                (a CLI or relay row has neither), so two columns would be two
                blanks rather than one honest dash. -#}
            <td class="small wrap-anywhere">
              {%- if entry.clientIp -%}
                <code>{{ entry.clientIp }}</code>
                {%- if entry.clientPtr %}<br>{{ entry.clientPtr }}{% endif -%}
              {%- else -%}
                —
              {%- endif -%}
            </td>
            <td class="wrap-anywhere">
              {%- for identifier in entry.identifiers -%}
                {% if not loop.first %}, {% endif %}{{ identifier }}
              {%- endfor -%}
            </td>
          </tr>
        {% else %}
          <tr><td class="empty" colspan="7">No audit row matches.</td></tr>
        {% endfor %}
      </tbody>
    </table>
  </div>
  {% include "partials/_pager.html" %}
</div>