vail/static/index.html

350 lines
11 KiB
HTML
Raw Normal View History

2020-04-09 23:09:33 -06:00
<!DOCTYPE html>
<html>
2020-05-01 15:07:09 -06:00
<head>
<title>Vail</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
2022-12-14 12:42:27 -07:00
<meta property="og:url" content="https://vail.woozle.org/">
<meta property="og:type" content="website">
<meta property="og:title" content="Vail: Internet Morse Code">
<meta property="og:description" content="Send and recieve with just a computer or smartphone">
2022-12-14 12:53:18 -07:00
<meta property="og:image" content="https://vail.woozle.org/key.jpg">
<!-- Image from https://www.flickr.com/photos/nationalmuseumofamericanhistory/14448709921
-- Used with permission (CC-BY-NC) -->
2022-12-14 12:42:27 -07:00
2022-05-08 11:33:25 -06:00
<!-- Bulma CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.9.3/css/bulma.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@mdi/font@6.5.95/css/materialdesignicons.min.css">
2022-05-28 20:39:20 -06:00
2020-05-01 15:07:09 -06:00
<!-- Vail stuff -->
2020-05-26 20:52:48 -06:00
<link rel="manifest" href="manifest.json">
2022-06-06 16:52:22 -06:00
<link rel="icon" href="assets/vail.png" sizes="256x256" type="image/png">
<link rel="icon" href="assets/vail.svg" sizes="any" type="image/svg+xml">
<script type="module" src="scripts/vail.mjs"></script>
<script type="module" src="scripts/ui.mjs"></script>
2020-05-01 15:07:09 -06:00
<link rel="stylesheet" href="vail.css">
2023-01-06 14:07:12 -07:00
<link rel="stylesheet" href="dark.css">
2020-05-01 15:07:09 -06:00
</head>
<body>
2022-05-14 18:51:05 -06:00
<nav class="navbar is-dark">
2022-05-08 11:33:25 -06:00
<div class="navbar-brand">
<a class="navbar-item">
2022-06-06 16:52:22 -06:00
<img class="" src="assets/vail.svg" alt="">
2022-05-14 18:51:05 -06:00
<div class="block">Vail</div>
2022-05-08 11:33:25 -06:00
</a>
</div>
<div class="navbar-menu">
<div class="navbar-end">
2022-05-15 10:46:51 -06:00
<a class="navbar-item" href="https://discord.gg/GBzj8cBat7" target="_blank" title="Text/voice chat on Discord"><i class="mdi mdi-discord"></i></a>
<a class="navbar-item" href="https://github.com/nealey/vail/wiki" target="_blank" title="Vail Wiki">Help</a>
2020-05-01 15:07:09 -06:00
</div>
</div>
2022-05-08 11:33:25 -06:00
</nav>
2022-05-14 18:51:05 -06:00
2022-05-08 11:33:25 -06:00
<section class="section">
2022-05-28 20:39:20 -06:00
<div class="columns is-multiline">
2022-05-14 18:51:05 -06:00
<div class="column">
<div class="box" id="transciever">
<div class="level">
<div class="level-left">
<div class="level-item">
2022-06-06 21:32:04 -06:00
<h1 class="title" data-i18n="heading.repeater">Repeater</h1>
2021-04-27 12:42:06 -06:00
</div>
2022-05-14 18:51:05 -06:00
</div>
<div class="level-right">
<div class="level-item">
<!-- This appears as a little light that turns on when someone's sending -->
2022-06-06 10:55:11 -06:00
<span class="tag recv-lamp">
2022-05-14 18:51:05 -06:00
<output class="has-text-info" id="note"></output>
2023-01-16 17:29:40 -07:00
<i class="mdi mdi-volume-off muted"></i>
2022-05-14 18:51:05 -06:00
</span>
</div>
</div>
2022-04-24 17:13:56 -06:00
</div>
2022-05-28 20:39:20 -06:00
<div class="block is-flex">
<input class="input" type="text" id="repeater" list="repeater-list">
<datalist id="repeater-list"></datalist>
<div class="dropdown is-right is-hoverable">
<div class="dropdown-trigger">
<button class="button" aria-haspopup="true" aria-controls="stock-repeaters">
<span class="icon is-small">
<i class="mdi mdi-chevron-down" aria-hidden="true"></i>
</span>
</button>
</div>
<div class="dropdown-menu" id="stock-repeaters" role="menu">
<div class="dropdown-content">
<a class="dropdown-item" data-value="">General</a>
<a class="dropdown-item" data-value="1">Channel 1</a>
<a class="dropdown-item" data-value="2">Channel 2</a>
<a class="dropdown-item" data-value="3">Channel 3</a>
<hr class="dropdown-divider">
<a class="dropdown-item" data-value="Null">Null (no transmit)</a>
<a class="dropdown-item">Echo</a>
<a class="dropdown-item">Fortunes</a>
<a class="dropdown-item">Fortunes: Pauses ×2</a>
<a class="dropdown-item">Fortunes: Pauses ×4</a>
<a class="dropdown-item">Fortunes: Pauses ×8</a>
</div>
</div>
</div>
</div>
2022-05-14 18:51:05 -06:00
<div class="block">
<div class="" id="charts">
<canvas class="chart" id="rxChart" data-color="orange"></canvas>
<canvas class="chart" id="txChart" data-color="teal"></canvas>
<canvas class="chart" id="key0Chart" data-color="olive"></canvas>
<canvas class="chart" id="key1Chart" data-color="purple"></canvas>
2020-05-01 15:07:09 -06:00
</div>
2022-05-14 18:51:05 -06:00
</div>
2022-05-28 20:39:20 -06:00
2022-05-14 18:51:05 -06:00
<div class="block">
<table class="wide">
<tr>
<td>
<button class="button key is-primary" data-key="0" title="right click for Key">
Key
</button>
<div class="shortcuts">
<kbd title="keyboard button">.</kbd>
<kbd title="keyboard button">x</kbd>
2022-05-08 11:33:25 -06:00
<i class="mdi mdi-gamepad-circle-left" title="Gamepad Left Button"></i>
2022-05-14 18:51:05 -06:00
</div>
</td>
<td>
<button class="button key is-primary" data-key="1" title="right click for Key">
Key
</button>
<div class="shortcuts">
<kbd title="keyboard button">/</kbd>
<kbd title="keyboard button">z</kbd>
2022-05-08 11:33:25 -06:00
<i class="mdi mdi-gamepad-circle-up" title="Gamepad Top Button"></i>
2022-05-14 18:51:05 -06:00
</div>
</td>
</tr>
</table>
</div>
<div>
<div class="field is-horizontal">
<div class="field-label">
2022-06-06 21:32:04 -06:00
<label class="label" data-i18n="heading.mode">Mode</label>
2022-05-14 18:51:05 -06:00
</div>
<div class="field-body">
<div class="field">
<div class="control">
<div class="select">
<select id="keyer-mode">
2022-06-06 21:32:04 -06:00
<option value="cootie" data-i18n="keyer.cootie">Straight Key / Cootie</option>
<option value="bug" data-i18n="keyer.bug">Bug</option>
<option value="elbug" data-i18n="keyer.elbug">ElBug</option>
<option value="singledot" data-i18n="keyer.singledot">Single Dot</option>
<option value="ultimatic" data-i18n="keyer.ultimatic">Ultimatic</option>
<option value="iambic" data-i18n="keyer.iambic">Iambic (Plain)</option>
<option value="iambica" data-i18n="keyer.iambica">Iambic A</option>
<option value="iambicb" data-i18n="keyer.iambicb">Iambic B</option>
<option value="keyahead" data-i18n="keyer.keyahead">Keyahead</option>
2022-05-14 18:51:05 -06:00
</select>
</div>
</div>
</div>
2021-04-27 17:30:16 -06:00
</div>
2020-05-01 15:07:09 -06:00
</div>
2022-05-14 18:51:05 -06:00
<div class="field is-horizontal">
<div class="field-label">
<label class="label">
<output for="keyer-rate"></output>&nbsp;<span data-i18n="label.wpm">WPM</span>
2022-05-14 21:17:44 -06:00
/
2022-06-06 21:32:04 -06:00
<span data-fill="keyer-ms"></span><span data-i18n="label:ms">ms</span>
2022-05-14 18:51:05 -06:00
</label>
</div>
<div class="field-body">
<div class="field">
<div class="control">
<input
id="keyer-rate"
type="range"
min="5"
max="50"
2022-05-14 18:51:05 -06:00
step="1"
value="12">
</div>
</div>
</div>
</div>
2020-05-01 15:07:09 -06:00
</div>
2022-05-28 20:39:20 -06:00
2020-05-01 15:07:09 -06:00
</div>
2022-05-14 18:51:05 -06:00
</div>
2020-05-01 15:07:09 -06:00
2022-05-14 18:51:05 -06:00
<div class="column">
<div class="box">
2022-06-06 21:32:04 -06:00
<h2 class="title" data-i18n="heading.notes" data-i18n="heading.notes"></h2>
<textarea class="textarea" data-i18n-placeholder="description.notes" id="notes"></textarea>
2022-05-28 20:39:20 -06:00
<nav class="breadcrumb has-bullet-separator">
<ul>
2022-06-06 21:32:04 -06:00
<li><a href="https://discord.gg/GBzj8cBat7" target="_blank" data-i18n-title="title.discord"><i class="mdi mdi-discord"></i></a></li>
<li><a href="https://github.com/nealey/vail/wiki" target="_blank" data-i18n-title="title.wiki">Help</a></li>
2022-05-28 20:39:20 -06:00
</ul>
</nav>
2020-05-01 15:07:09 -06:00
</div>
2022-05-14 18:51:05 -06:00
</div>
2020-05-01 15:07:09 -06:00
2022-05-14 18:51:05 -06:00
<div class="column">
<div class="box">
2022-06-06 21:32:04 -06:00
<h2 class="title" data-i18n="heading.knobs">Knobs</h2>
2022-05-14 18:51:05 -06:00
<div class="block">
<div class="control">
2022-06-06 21:32:04 -06:00
<button id="reset" class="button" data-i18n="label.reset">
2022-05-14 18:51:05 -06:00
Reset
</button>
</div>
2022-06-06 21:32:04 -06:00
<div data-i18n="description.reset">
2022-05-14 18:51:05 -06:00
Reset all Vail preferences to default.
</div>
2021-07-16 10:10:50 -06:00
</div>
2022-05-14 18:51:05 -06:00
<div class="field is-horizontal">
<div class="field-label">
<label class="label">
2023-01-16 17:29:40 -07:00
<span data-i18n="label.rx-delay">rx delay:</span>
2022-05-14 18:51:05 -06:00
<output for="rx-delay"></output>s
2022-04-24 17:13:56 -06:00
</label>
2022-05-14 18:51:05 -06:00
</div>
<div class="field-body">
<div class="field">
<div class="control">
<input
id="rx-delay"
type="range"
min="0"
max="10"
value="4"
step="0.1"
list="rx-delays">
<datalist id="rx-delays">
<option value="0"></option>
<option value="1"></option>
<option value="2" label="2s"></option>
<option value="3"></option>
<option value="4" label="4s"></option>
<option value="5"></option>
<option value="6" label="6s"></option>
<option value="7"></option>
<option value="8" label="8s"></option>
<option value="9"></option>
<option value="10"></option>
</datalist>
</div>
</div>
</div>
2021-07-31 09:17:27 -06:00
</div>
2023-01-16 17:29:40 -07:00
<div class="field is-horizontal">
<div class="field-label">
<label class="label">
<span data-i18n="label.gain">volume:</span>
<output for="masterGain"></output>%
<i class="mdi mdi-volume-off muted"></i>
</label>
</div>
<div class="field-body">
<div class="field">
<div class="control">
<input
id="masterGain"
type="range"
min="0"
max="100"
value="100"
step="1">
</div>
</div>
</div>
</div>
<div class="field is-horizontal">
<div class="field-label">
<label class="label">
<span data-i18n="label.tx-tone">tx tone:</span>
<output for="tx-tone"></output>
</label>
</div>
<div class="field-body">
<div class="field">
<div class="control">
<input
id="tx-tone"
type="range"
min="0"
max="127"
value="69"
step="1"
list="tones">
</div>
</div>
</div>
</div>
<div class="field is-horizontal">
<div class="field-label">
<label class="label">
<span data-i18n="label.rx-tone">rx tone:</span>
<output for="rx-tone"></output>
</label>
</div>
<div class="field-body">
<div class="field">
<div class="control">
<input
id="rx-tone"
type="range"
min="0"
max="127"
value="69"
step="1"
list="tones">
</div>
</div>
</div>
</div>
<datalist id="tones">
<option value="0" label="C-1"></option>
<option value="12" label="C0"></option>
<option value="24" label="C1"></option>
<option value="36" label="C2"></option>
<option value="48" label="C3"></option>
<option value="60" label="C4"></option>
<option value="72" label="C5"></option>
<option value="84" label="C6"></option>
<option value="96" label="C7"></option>
<option value="108" label="C8"></option>
<option value="120" label="C9"></option>
</datalist>
2022-05-14 18:51:05 -06:00
<p>
<label class="checkbox">
<input type="checkbox" id="telegraph-buzzer">
2022-06-06 21:32:04 -06:00
<span data-i18n="label.telegraph-sounds">Telegraph sounds</span>
2022-05-14 18:51:05 -06:00
</label>
</p>
</div>
2020-05-01 15:07:09 -06:00
</div>
2022-05-14 18:51:05 -06:00
</div>
</section>
<div class="columns is-centered bottom">
<div class="column is-half" id="errors"></div>
</div>
2020-05-01 15:07:09 -06:00
</body>
2020-04-10 10:23:40 -06:00
</html>
<!-- vim: set noet ts=2 sw=2 : -->