-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
85 lines (78 loc) · 3.11 KB
/
Copy pathindex.html
File metadata and controls
85 lines (78 loc) · 3.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- Title is localized at runtime by i18nView (see app/ui/i18nView.js). -->
<title>DS Vector — Image Converter</title>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<div class="app">
<header class="app__header">
<div class="brand">
<span class="brand__mark">◆</span>
<div class="brand__text">
<h1>DS Vector</h1>
<p data-i18n="app.tagline">Load, preview and convert your images</p>
</div>
</div>
<div class="header__actions">
<!-- Language switcher is built by app/ui/languageSwitcher.js -->
<div id="langSwitcher" class="lang"></div>
<div class="toolbar">
<button id="addBtn" class="btn btn--primary" type="button">
<svg viewBox="0 0 24 24" aria-hidden="true">
<path d="M12 5v14M5 12h14" />
</svg>
<span data-i18n="toolbar.add">Add images</span>
</button>
<button id="convertBtn" class="btn btn--accent" type="button" disabled>
<svg viewBox="0 0 24 24" aria-hidden="true">
<path d="M4 7h13l-3-3M20 17H7l3 3" />
</svg>
<span data-i18n="toolbar.convert">Convert</span>
</button>
<button id="clearBtn" class="btn btn--ghost" type="button" disabled>
<span data-i18n="toolbar.clear">Clear</span>
</button>
</div>
</div>
</header>
<main class="app__main">
<!-- Dropzone / empty state -->
<div id="dropzone" class="dropzone">
<div class="dropzone__inner">
<div class="dropzone__icon">
<svg viewBox="0 0 24 24" aria-hidden="true">
<path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" />
<path d="M12 3v13M7 8l5-5 5 5" />
</svg>
</div>
<h2 data-i18n="dropzone.title">Drag images here</h2>
<p data-i18n-html="dropzone.description">or click <strong>Add images</strong> to select from your computer</p>
<span class="dropzone__formats">JPEG · JPG · JFIF · GIF · TIFF · PNG · WEBP · BMP</span>
</div>
</div>
<!-- Image grid -->
<section id="grid" class="grid" hidden></section>
</main>
<footer class="app__footer">
<span id="counter" class="counter">No images loaded</span>
<span id="notice" class="notice" hidden></span>
</footer>
</div>
<!-- hidden input that handles multiple file selection -->
<input
id="fileInput"
type="file"
multiple
accept="image/jpeg,image/jpg,image/jpe,image/jfif,image/gif,image/tiff,image/png,image/webp,image/bmp,.jpeg,.jpg,.jpe,.jfif,.gif,.tif,.tiff,.png,.webp,.bmp"
hidden
/>
<script type="module" src="app/main.js"></script>
</body>
</html>