123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8" />
- <title>Typing Freaks Editor</title>
- <link rel="stylesheet" href="editor.css" />
- </head>
- <body>
- <div id="container">
- <div id="open-screen">
- <button id="open-new">Create New</button>
- or load an existing file
- <input id="open-file" type="file" accept="application/json" />
- </div>
- <div id="config-screen">
- <span id="config-navigation"></span>
- <button id="config-add">Add Level Set</button>
- <button id="config-download">Download</button>
- <button id="config-close">Close</button>
- <div id="config-levels"></div>
- </div>
- <div id="level-screen">
- <div class="playback">
- <div id="youtube"></div>
- <div class="controls">
- <div id="display"></div>
- <div class="waveform-container">
- <canvas id="waveform"></canvas>
- <canvas id="waveform-overlay"></canvas>
- </div>
- <div class="scrubber">
- <div class="bar">
- <div class="bar-overlay"></div>
- </div>
- <div class="markers"></div>
- </div>
- <div>
- <button id="play">Play</button>
- <button id="pause">Pause</button>
- <button id="insert-marker">Insert Marker</button>
- </div>
- </div>
- </div>
- <div class="header">
- <span id="level-title"></span>
- <button id="level-save">Save</button>
- <button id="level-close">Close</button>
- </div>
- <div class="lyrics">
- <div class="header time">Time</div>
- <div class="header span play-section remove-section">Controls</div>
- <div class="header">Kana</div>
- <div class="header">Kanji</div>
- </div>
- </div>
- </div>
- <template id="line-template">
- <input
- class="time"
- type="number"
- step="0.05"
- required
- autocomplete="off"
- />
- <button class="play-section">Play</button>
- <button class="remove-section">Remove</button>
- <input
- class="kana"
- pattern="[a-zA-Zぁ-んァ-ンー\s]*"
- autocomplete="off"
- />
- <input class="kanji" autocomplete="off" />
- </template>
- <template id="level-set-template">
- <div class="level-set">
- <div class="header">
- <div class="name"></div>
- <button class="add-level">Add Level</button>
- <button class="move-up">^</button>
- <button class="move-down">v</button>
- <button class="remove">Remove</button>
- </div>
- <table class="level-list">
- <thead>
- <tr>
- <th>Title</th>
- <th>Creator</th>
- <th>Genre</th>
- <th>Difficulty</th>
- <th>Audio</th>
- <th>Link</th>
- <th>Lyrics</th>
- <th>Actions</th>
- </tr>
- </thead>
- <tbody> </tbody>
- </table>
- </div>
- </template>
- <template id="level-list-item-template">
- <tr>
- <td class="name"></td>
- <td class="creator"></td>
- <td class="genre"></td>
- <td class="difficulty"></td>
- <td class="audio"></td>
- <td class="link"></td>
- <td>
- <button class="edit-lyrics">Edit Lyrics</button>
- </td>
- <td>
- <button class="move-up">^</button>
- <button class="move-down">v</button>
- <button class="remove-level">Remove</button>
- </td>
- </tr>
- </template>
- <script type="module" src="editor/index.js"></script>
- </body>
- </html>
|