-
Notifications
You must be signed in to change notification settings - Fork 17
/
index_static.html
158 lines (156 loc) · 10.7 KB
/
index_static.html
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
<!DOCTYPE html>
<html lang="en" class="">
<head>
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no"/>
<title>Install Tasmota</title>
<style>
div,fieldset,input,select{padding:5px;font-size:1em;}
fieldset{background:#4f4f4f;}
p{margin:0.5em 0;}
input{width:100%;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;background:#dddddd;color:#000000;}
input[type=checkbox],input[type=radio]{width:1em;margin-right:6px;vertical-align:-1px;}
input[type=range]{width:99%;}
select{width:100%;background:#dddddd;color:#000000;}
textarea{resize:vertical;width:98%;height:318px;padding:5px;overflow:auto;background:#1f1f1f;color:#65c115;}
body{text-align:center;font-family:verdana,sans-serif;background:#252525;}
td{padding:0px;}
button{border:0;border-radius:0.3rem;background:#1fa3ec;color:#faffff;line-height:2.4rem;font-size:1.2rem;width:100%;-webkit-transition-duration:0.4s;transition-duration:0.4s;cursor:pointer;}
button:hover{background:#0e70a4;}
.bred{background:#d43535;}
.bred:hover{background:#931f1f;}
.bgrn{background:#47c266;}
.bgrn:hover{background:#5aaf6f;}
a{color:#1fa3ec;text-decoration:none;}
.p{float:left;text-align:left;}
.q{float:right;text-align:right;}
.r{border-radius:0.3em;padding:2px;margin:6px 2px;}
.pick-variant{margin-bottom:16px;}
</style>
<script
type="module"
src="https://unpkg.com/[email protected]/dist/web/install-button.js?module"
></script>
</head>
<body>
<div style='display:inline-block;color:#eaeaea;min-width:340px;'>
<h1>Install Tasmota</h1>
<div class="pick-variant">
<ol style='text-align:left'>
<li>Connect the ESP device to your computer</br>using USB or serial-to-USB adapter</li></br>
<li>Select the firmware variant suitable for</br>your device</li></br>
<li>Hit "Install" and select the correct port</br>or find help if <a href="https://tasmota.github.io/docs/Getting-Started/" target='_blank' style='color:#aaa;'>no device found</a></li>
</ol>
</br>
<select>
<optgroup label="Release">
<option value="manifest/release.tasmota.manifest.json">Tasmota</option>
<option value="manifest/release.tasmota-display.manifest.json">Tasmota Display</option>
<option value="manifest/release.tasmota-ir.manifest.json">Tasmota Infra Red</option>
<option value="manifest/release.tasmota-lite.manifest.json">Tasmota Lite</option>
<option value="manifest/release.tasmota-sensors.manifest.json">Tasmota Sensors</option>
<option value="manifest/release.tasmota-knx.manifest.json">Tasmota KNX</option>
<option value="manifest/release.tasmota-zbbridge.manifest.json">Tasmota Zigbee Bridge (Sonoff)</option>
<option value="manifest/release.tasmota-zigbee.manifest.json">Tasmota Zigbee</option>
<option value="manifest/release.tasmota-AF.manifest.json">Tasmota (Afrikaans)</option>
<option value="manifest/release.tasmota-BG.manifest.json">Tasmota (Bulgarian)</option>
<option value="manifest/release.tasmota-CN.manifest.json">Tasmota (Chinese - China)</option>
<option value="manifest/release.tasmota-TW.manifest.json">Tasmota (Chinese - Taiwan)</option>
<option value="manifest/release.tasmota-CZ.manifest.json">Tasmota (Czech)</option>
<option value="manifest/release.tasmota-NL.manifest.json">Tasmota (Dutch)</option>
<option value="manifest/release.tasmota-FR.manifest.json">Tasmota (French)</option>
<option value="manifest/release.tasmota-FY.manifest.json">Tasmota (Frysk)</option>
<option value="manifest/release.tasmota-DE.manifest.json">Tasmota (German)</option>
<option value="manifest/release.tasmota-GR.manifest.json">Tasmota (Greek)</option>
<option value="manifest/release.tasmota-HE.manifest.json">Tasmota (Hebrew)</option>
<option value="manifest/release.tasmota-HU.manifest.json">Tasmota (Hungarian)</option>
<option value="manifest/release.tasmota-IT.manifest.json">Tasmota (Italian)</option>
<option value="manifest/release.tasmota-KO.manifest.json">Tasmota (Korean)</option>
<option value="manifest/release.tasmota-PL.manifest.json">Tasmota (Polish)</option>
<option value="manifest/release.tasmota-PT.manifest.json">Tasmota (Portuguese)</option>
<option value="manifest/release.tasmota-BR.manifest.json">Tasmota (Portuguese - Brazil)</option>
<option value="manifest/release.tasmota-RO.manifest.json">Tasmota (Romanian)</option>
<option value="manifest/release.tasmota-RU.manifest.json">Tasmota (Russian)</option>
<option value="manifest/release.tasmota-SK.manifest.json">Tasmota (Slovak)</option>
<option value="manifest/release.tasmota-ES.manifest.json">Tasmota (Spanish)</option>
<option value="manifest/release.tasmota-SE.manifest.json">Tasmota (Swedish)</option>
<option value="manifest/release.tasmota-TR.manifest.json">Tasmota (Turkish)</option>
<option value="manifest/release.tasmota-UK.manifest.json">Tasmota (Ukrainian)</option>
<option value="manifest/release.tasmota-VN.manifest.json">Tasmota (Vietnamese)</option>
<option value="manifest/release.tasmota32solo1.manifest.json">Tasmota32 Solo1</option>
<option value="manifest/release.tasmota32-lvgl.manifest.json">Tasmota32 LVGL</option>
<option value="manifest/release.tasmota32-webcam.manifest.json">Tasmota32 WebCam</option>
<option value="manifest/release.tasmota32-bluetooth.manifest.json">Tasmota32 Bluetooth</option>
</optgroup>
<optgroup label="Development">
<option value="manifest/development.tasmota.manifest.json">Tasmota</option>
<option value="manifest/development.tasmota4M.manifest.json">Tasmota 4MB flash</option>
<option value="manifest/development.tasmota-display.manifest.json">Tasmota Display</option>
<option value="manifest/development.tasmota-ir.manifest.json">Tasmota Infra Red</option>
<option value="manifest/development.tasmota-lite.manifest.json">Tasmota Lite</option>
<option value="manifest/development.tasmota-sensors.manifest.json">Tasmota Sensors</option>
<option value="manifest/development.tasmota-knx.manifest.json">Tasmota KNX</option>
<option value="manifest/development.tasmota-zbbridge.manifest.json">Tasmota Zigbee Bridge (Sonoff)</option>
<option value="manifest/development.tasmota-zigbee.manifest.json">Tasmota Zigbee</option>
<option value="manifest/development.tasmota-AF.manifest.json">Tasmota (Afrikaans)</option>
<option value="manifest/development.tasmota-BG.manifest.json">Tasmota (Bulgarian)</option>
<option value="manifest/development.tasmota-CN.manifest.json">Tasmota (Chinese - China)</option>
<option value="manifest/development.tasmota-TW.manifest.json">Tasmota (Chinese - Taiwan)</option>
<option value="manifest/development.tasmota-CZ.manifest.json">Tasmota (Czech)</option>
<option value="manifest/development.tasmota-NL.manifest.json">Tasmota (Dutch)</option>
<option value="manifest/development.tasmota-FR.manifest.json">Tasmota (French)</option>
<option value="manifest/development.tasmota-FY.manifest.json">Tasmota (Frysk)</option>
<option value="manifest/development.tasmota-DE.manifest.json">Tasmota (German)</option>
<option value="manifest/development.tasmota-GR.manifest.json">Tasmota (Greek)</option>
<option value="manifest/development.tasmota-HE.manifest.json">Tasmota (Hebrew)</option>
<option value="manifest/development.tasmota-HU.manifest.json">Tasmota (Hungarian)</option>
<option value="manifest/development.tasmota-IT.manifest.json">Tasmota (Italian)</option>
<option value="manifest/development.tasmota-KO.manifest.json">Tasmota (Korean)</option>
<option value="manifest/development.tasmota-PL.manifest.json">Tasmota (Polish)</option>
<option value="manifest/development.tasmota-PT.manifest.json">Tasmota (Portuguese)</option>
<option value="manifest/development.tasmota-BR.manifest.json">Tasmota (Portuguese - Brazil)</option>
<option value="manifest/development.tasmota-RO.manifest.json">Tasmota (Romanian)</option>
<option value="manifest/development.tasmota-RU.manifest.json">Tasmota (Russian)</option>
<option value="manifest/development.tasmota-SK.manifest.json">Tasmota (Slovak)</option>
<option value="manifest/development.tasmota-ES.manifest.json">Tasmota (Spanish)</option>
<option value="manifest/development.tasmota-SE.manifest.json">Tasmota (Swedish)</option>
<option value="manifest/development.tasmota-TR.manifest.json">Tasmota (Turkish)</option>
<option value="manifest/development.tasmota-UK.manifest.json">Tasmota (Ukrainian)</option>
<option value="manifest/development.tasmota-VN.manifest.json">Tasmota (Vietnamese)</option>
<option value="manifest/development.tasmota32solo1.manifest.json">Tasmota32 Solo1</option>
<option value="manifest/development.tasmota32-lvgl.manifest.json">Tasmota32 LVGL</option>
<option value="manifest/development.tasmota32-webcam.manifest.json">Tasmota32 WebCam</option>
<option value="manifest/development.tasmota32-bluetooth.manifest.json">Tasmota32 Bluetooth</option>
</optgroup>
</select>
</br></br>
<p>
<esp-web-install-button id="inst">
<i slot="unsupported">
Your browser does not support Web Serial.</br>Open this page in Google Chrome or</br>Microsoft Edge instead
<span class="not-supported-i hidden">(but not on your mobile device)</span>.
</i>
</esp-web-install-button>
</p>
</div>
<div style='text-align:right;font-size:11px;'>
<hr/>
<a href="https://esphome.github.io/esp-web-tools/" target='_blank' style='color:#aaa;'>Tasmota Installer powered by ESP Web Tools</a>
</div>
<script>
const installEl = document.querySelector("esp-web-install-button");
installEl.overrides = {
checkSameFirmware(manifest, improvInfo) {
const manifestFirmware = manifest.name.toLowerCase();
const deviceFirmware = improvInfo.firmware.toLowerCase();
return manifestFirmware.includes(deviceFirmware);
}
};
const selectEl = document.querySelector(".pick-variant select");
installEl.manifest = selectEl.value;
selectEl.addEventListener("change", () => {
installEl.manifest = selectEl.value;
});
</script>
</body>
</html>