arch-repo-manager/srv/static/index.html

283 lines
13 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<title>Build service</title>
<meta charset="UTF-8" />
<meta name="description" content="Service for managing and building Arch Linux packages" />
<meta name="author" content="Martchus" />
<meta name="keywords" content="pacman, Arch Linux, build, service" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<link rel="icon" href="img/favicon.svg" type="image/svg+xml" />
<!-- include xterm.js -->
<link rel="stylesheet" type="text/css" href="node_modules/@xterm/xterm/css/xterm.css" />
<script type="text/javascript">window.exports = {} // hack for xtermjs exports as it does not support ES6 modules yet</script>
<script src="node_modules/@xterm/xterm/lib/xterm.js"></script>
<script src="node_modules/@xterm/addon-search/lib/addon-search.js"></script>
<!-- include custom styles and scripts -->
<link rel="stylesheet" type="text/css" href="css/basics.css" />
<link rel="stylesheet" type="text/css" href="css/layout.css" />
<link rel="stylesheet" type="text/css" href="css/genericrendering.css" />
<link rel="stylesheet" type="text/css" href="css/specifics.css" />
<script type="module" src="js/main.js"></script>
</head>
<body>
<header>
<nav>
<div>
<a href="#" id="logo-link">
<img src="img/logo.svg" alt="Logo" />
</a>
Repository Manager for Arch Linux<br />
<span><em>Unofficial</em> tool to build packages and manage repositories</span>
</div>
<ul>
<li id="back-nav-link">
<a href="../" title="Back to root"></a>
</li>
<li id="global-nav-link">
<a href="#global-section" title="Databases">DBs</a>
</li>
<li id="package-search-nav-link">
<a href="#package-search-section" title="Package search">Search</a>
</li>
<li id="package-details-nav-link">
<a href="#package-details-section" title="Package details">Package</a>
</li>
<li id="build-action-nav-link">
<a href="#build-action-section" title="Build actions">Actions</a>
</li>
<li id="build-action-details-nav-link">
<a href="#build-action-details-section" title="Build action details">Details</a>
</li>
</ul>
</nav>
</header>
<main>
<section id="global-section">
<h2>Databases</h2>
<div id="global-status">
</div>
</section>
<section id="package-search-section">
<h2>Package search</h2>
<form id="package-search-form" action="/packages" method="GET">
<table class="form-row">
<tr>
<th>Package name:</th>
<td><input type="search" name="name" placeholder="Package name" /></td>
<th rowspan="3">Database:</th>
<th rowspan="3">
<select id="package-search-db-arch-filter" class="arch-filter">
<option id="package-search-db-all-archs">All archs</option>
</select>
<br />
<select id="package-search-db" name="db" multiple="multiple">
<option id="package-search-db-any" style="font-style: italic;">any</option>
</select>
</th>
</tr>
<tr>
<th>Mode:</th>
<td>
<select name="mode">
<optgroup label="By package name">
<option value="name-contains">Name contains</option>
<option value="regex">Regex match for name</option>
<option value="name">Exact match for repo/name</option>
</optgroup>
<optgroup label="By dependency">
<option value="provides">Provides match</option>
<option value="depends">Depends match</option>
<option value="libprovides">Library provides match</option>
<option value="libdepends">Library depends match</option>
</optgroup>
</select>
</td>
</tr>
<tr>
<th></th>
<td>
<button type="submit" style="background-image: url(img/icon/magnify.svg)" class="icon-button">Search</button>
</td>
</tr>
</table>
</form>
<form id="package-results-form">
<div id="package-search-results">
</div>
<fieldset>
<legend>Actions</legend>
<div>
<button type="button" name="selectall" style="background-image: url(img/icon/select-all.svg)" class="icon-button">
Select all packages
</button>
<button type="button" name="unselectall" style="background-image: url(img/icon/select-off.svg)" class="icon-button">
Unselect all package
</button>
<button type="button" name="startselected" style="background-image: url(img/icon/plus.svg)" class="icon-button">
Start build action from selection
</button>
</div>
</fieldset>
</form>
</section>
<section id="package-details-section">
<h2>Package details<span id="package-details-actions" class="heading-actions"></span></h2>
<div id="package-details-container">
<p>No package selected. Use the "Search" to find and select a package.</p>
</div>
</section>
<section id="build-action-section">
<h2>
Build actions
<span class="heading-actions" id="build-action-toolbar">
<a href="#" title="Stop service"
class="icon-link"
data-action="/quit"
data-method="POST"
data-confirmation="Do you really want to stop the service?"><img src="img/icon/power.svg" alt="Save state manually" class="icon" /></a>
</span>
</h2>
<form id="build-actions-list-form">
<div id="build-actions-list">
<p>Loading build actions ...</p>
</div>
<fieldset>
<legend>Modify selected actions</legend>
<div>
<button type="button" name="selectall" style="background-image: url(img/icon/select-all.svg)" class="icon-button">
Select all actions
</button>
<button type="button" name="unselectall" style="background-image: url(img/icon/select-off.svg)" class="icon-button">
Unselect all actions
</button>
<button type="button" name="showselected" style="background-image: url(img/icon/magnify.svg)" class="icon-button">
Show selected actions
</button>
<button type="button" name="deleteselected" style="background-image: url(img/icon/delete.svg)" class="icon-button">
Delete selected actions
</button>
</div>
</fieldset>
</form>
<form id ="build-action-form" action="/build-action" method="POST">
<fieldset>
<legend>Start new build action</legend>
<div>
<div style="max-width: 800px;">
<div class="form-row">
<div class="form-split-50">
<label for="build-action-task">Predefined task:</label>
<br />
<select name="task" id="build-action-task">
<option id="build-action-task-none" data-ignore="1" style="font-style: italic;">None</option>
</select>
</div>
<div class="form-split-50" id="build-action-task-info">
</div>
</div>
<div class="form-row">
<div class="form-split-50">
<label for="build-action-type">Action:</label>
<br />
<div><select name="type" id="build-action-type"></select></div>
</div>
<div class="form-split-50">
<label for="build-action-directory">Directory:</label>
<br />
<input name="directory" id="build-action-directory" />
</div>
</div>
<div class="form-row">
<div class="form-split-50">
<label for="build-action-source-repo">Source repo:</label>
<br />
<select id="build-action-source-repo-arch-filter" class="arch-filter">
<option id="build-action-source-repo-all-archs">All archs</option>
</select>
<br />
<select name="source-repo" id="build-action-source-repo" multiple="multiple">
<option id="build-action-source-repo-none" style="font-style: italic;">none</option>
</select>
</div>
<div class="form-split-50">
<label for="build-action-destination-repo">Destination repo:</label>
<br />
<select id="build-action-destination-repo-arch-filter" class="arch-filter">
<option id="build-action-destination-repo-all-archs">All archs</option>
</select>
<br />
<select name="destination-repo" id="build-action-destination-repo" multiple="multiple">
<option id="build-action-destination-repo-none" style="font-style: italic;">none</option>
</select>
</div>
</div>
</div>
<div class="form-row">
<label for="build-action-package-names">Package names:</label>
<input type="button" value="Clear" style="float: right;" onclick="this.form.elements['package-names'].value = ''" />
<br />
<textarea name="package-names" id="build-action-package-names" style="box-sizing: border-box; width: 100%; height: 50px;"></textarea>
</div>
<div class="form-row">
<fieldset>
<legend>Flags:</legend>
<div id="build-action-flags"></div>
</fieldset>
</div>
<div class="form-row">
<fieldset>
<legend>Settings:</legend>
<table id="build-action-settings"></table>
</fieldset>
</div>
<div class="form-row">
<fieldset>
<legend>Start condition:</legend>
<input id="build-action-start-immediately" name="start-condition" type="radio" value="immediately"
checked="checked" onchange="this.form['start-after-id'].disabled = this.checked" />
<label for="build-action-start-immediately">Immediately</label>
<input id="build-action-start-manually" name="start-condition" type="radio" value="manually"
onchange="this.form['start-after-id'].disabled = this.checked" />
<label for="build-action-start-manually">Manually</label>
<input id="build-action-start-after" name="start-condition" type="radio" value="after"
onchange="this.form['start-after-id'].disabled = !this.checked" />
<label for="build-action-start-after">After</label>
<input type="text" name="start-after-id" value="" placeholder="build action ID" disabled="disabled" />
<input type="button" name="start-after-latest" value="After latest"
title="Start after the first action displayed on the current page of the build actions table" />
</fieldset>
</div>
</div>
<div>
<button type="submit" style="background-image: url(img/icon/plus.svg)" class="icon-button">
Submit build action
</button>
<button type="reset" style="background-image: url(img/icon/undo-variant.svg)" class="icon-button">
Reset form
</button>
</div>
</fieldset>
</form>
</section>
<section id="build-action-details-section">
<h2>Build action details<span id="build-action-details-actions" class="heading-actions"></span></h2>
<div id="build-action-results">
<p>No build action has been selected yet. Start or select a build action under "Actions" first.</p>
</div>
</section>
</main>
<div id="about-dialog" style="display: none;">
<a href="#" onclick="this.parentNode.style.display = 'none'; return false;" class="close-button">×</a>
<div id="about-text">
<h1>Repository Manager for Arch Linux</h1>
<p><img src="img/logo.svg" alt="Logo" /></p>
<p id="application-version">unknown version</p>
<p><a id="source-code-repo-link" href="" target="blank">Source code repository</a></p>
<p>Icons from <a href="https://materialdesignicons.com" target="blank">Material Design Icons</a></p>
</div>
</div>
</body>
</html>