sl-map-web 0.6.0

Web UI and JSON API for the SL map renderer
Documentation
<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <title>Library — sl-map-web</title>
    <link rel="stylesheet" href="/static/style.css" />
  </head>
  <body>
    <header>
      <div class="topbar">
        <h1>Library</h1>
        <div class="topbar-user">
          <span id="logged-in-as"></span>
          <button type="button" id="logout-button" class="topbar-logout hidden">
            Logout
          </button>
        </div>
      </div>
      <nav class="primary-nav">
        <a href="/">Render</a>
        <a href="/library" class="active">Library</a>
        <a href="/groups">Groups</a>
        <a href="/invitations" id="invitations-link">Invitations</a>
        <a href="/profile">Profile</a>
      </nav>
    </header>

    <section>
      <div class="row">
        <label>
          Scope
          <select id="scope-select"></select>
        </label>
      </div>
    </section>

    <nav class="tabs" role="tablist">
      <button type="button" class="tab active" data-tab="notecards">
        Notecards
      </button>
      <button type="button" class="tab" data-tab="renders">Renders</button>
      <button type="button" class="tab" data-tab="glw">GLW data</button>
      <button type="button" class="tab" data-tab="logos">Logos</button>
      <button type="button" class="tab" data-tab="themes">Themes</button>
    </nav>

    <section id="tab-notecards" class="tab-panel active">
      <h2>Notecards</h2>
      <p id="notecards-status" class="status"></p>
      <table id="notecards-table" class="library-table">
        <thead>
          <tr>
            <th>Name</th>
            <th>Waypoints</th>
            <th>Start</th>
            <th>End</th>
            <th>Lower-left</th>
            <th>Upper-right</th>
            <th>Uploaded by</th>
            <th>Created</th>
            <th>Actions</th>
          </tr>
        </thead>
        <tbody id="notecards-tbody"></tbody>
      </table>
    </section>

    <section id="tab-renders" class="tab-panel">
      <h2>Renders</h2>
      <p id="renders-status" class="status"></p>
      <table id="renders-table" class="library-table">
        <thead>
          <tr>
            <th>Status</th>
            <th>Kind</th>
            <th>Notecard</th>
            <th>GLW data</th>
            <th>Lower-left</th>
            <th>Upper-right</th>
            <th>Created by</th>
            <th>Created</th>
            <th>Actions</th>
          </tr>
        </thead>
        <tbody id="renders-tbody"></tbody>
      </table>
    </section>

    <section id="tab-glw" class="tab-panel">
      <h2>GLW data</h2>
      <p id="glw-status" class="status"></p>
      <table id="glw-table" class="library-table">
        <thead>
          <tr>
            <th>Name</th>
            <th>Source</th>
            <th>Event id / key</th>
            <th>Event name</th>
            <th>Fetched at</th>
            <th>Created by</th>
            <th>Created</th>
            <th>Actions</th>
          </tr>
        </thead>
        <tbody id="glw-tbody"></tbody>
      </table>
    </section>

    <section id="tab-logos" class="tab-panel">
      <h2>Logos</h2>
      <p id="logos-status" class="status"></p>
      <form id="logo-upload-form" class="row">
        <label>
          Name
          <input type="text" id="logo-upload-name" maxlength="128" />
        </label>
        <label>
          Image (PNG, JPEG or WebP, max 5&nbsp;MiB / 2048&nbsp;px)
          <input
            type="file"
            id="logo-upload-file"
            accept="image/png,image/jpeg,image/webp"
          />
        </label>
        <button type="submit" id="logo-upload-button">Upload logo</button>
      </form>
      <table id="logos-table" class="library-table">
        <thead>
          <tr>
            <th>Preview</th>
            <th>Name</th>
            <th>Dimensions</th>
            <th>Size</th>
            <th>Uploaded by</th>
            <th>Created</th>
            <th>Actions</th>
          </tr>
        </thead>
        <tbody id="logos-tbody"></tbody>
      </table>
    </section>

    <section id="tab-themes" class="tab-panel">
      <h2>Themes</h2>
      <p id="themes-status" class="status"></p>
      <table id="themes-table" class="library-table">
        <thead>
          <tr>
            <th>Name</th>
            <th>Created by</th>
            <th>Created</th>
            <th>Updated</th>
            <th>Actions</th>
          </tr>
        </thead>
        <tbody id="themes-tbody"></tbody>
      </table>
    </section>

    <script src="/static/app.js"></script>
    <script src="/static/modal.js"></script>
    <script src="/static/library.js"></script>
  </body>
</html>