tasmota-webserial-esptool 7.2.3 → 7.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +32 -13
- package/css/style.css +1 -1
- package/dist/esp_loader.d.ts +12 -1
- package/dist/esp_loader.js +85 -15
- package/dist/web/index.js +1 -1
- package/js/modules/esptool.js +1 -1
- package/package.json +3 -3
- package/src/esp_loader.ts +99 -19
- package/index.html +0 -344
package/index.html
DELETED
|
@@ -1,344 +0,0 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<title>WebSerial ESPTool</title>
|
|
5
|
-
<meta charset="utf-8" />
|
|
6
|
-
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
7
|
-
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
8
|
-
<script>
|
|
9
|
-
// Redirect to HTTPS if HTTP is requested.
|
|
10
|
-
if (
|
|
11
|
-
window.location.hostname !== "localhost" &&
|
|
12
|
-
window.location.protocol === "http:"
|
|
13
|
-
) {
|
|
14
|
-
window.location.href = "https:" + window.location.href.substring(5);
|
|
15
|
-
}
|
|
16
|
-
</script>
|
|
17
|
-
|
|
18
|
-
<!-- import the web page's stylesheets along with the themes -->
|
|
19
|
-
<link rel="stylesheet" href="css/style.css" />
|
|
20
|
-
<link
|
|
21
|
-
rel="stylesheet"
|
|
22
|
-
href="css/light.css"
|
|
23
|
-
id="light"
|
|
24
|
-
class="alternate"
|
|
25
|
-
disabled
|
|
26
|
-
/>
|
|
27
|
-
<link
|
|
28
|
-
rel="stylesheet"
|
|
29
|
-
href="css/dark.css"
|
|
30
|
-
id="dark"
|
|
31
|
-
class="alternate"
|
|
32
|
-
disabled
|
|
33
|
-
/>
|
|
34
|
-
|
|
35
|
-
<!-- import the webpage's javascript file -->
|
|
36
|
-
<script module>
|
|
37
|
-
window.esptoolPackage = import(
|
|
38
|
-
// In development we import locally.
|
|
39
|
-
window.location.hostname === "localhost"
|
|
40
|
-
? "./js/modules/esptool.js"
|
|
41
|
-
: "./js/modules/esptool.js"
|
|
42
|
-
);
|
|
43
|
-
</script>
|
|
44
|
-
<script src="js/script.js" module defer></script>
|
|
45
|
-
</head>
|
|
46
|
-
<body>
|
|
47
|
-
<header class="header">
|
|
48
|
-
<div class="left">
|
|
49
|
-
<div class="title">WebSerial ESPTool</div>
|
|
50
|
-
</div>
|
|
51
|
-
<div class="right">
|
|
52
|
-
<div class="controls-row">
|
|
53
|
-
<label for="showlog">Show Log</label>
|
|
54
|
-
<div class="onoffswitch">
|
|
55
|
-
<input
|
|
56
|
-
type="checkbox"
|
|
57
|
-
name="showlog"
|
|
58
|
-
class="onoffswitch-checkbox"
|
|
59
|
-
id="showlog"
|
|
60
|
-
/>
|
|
61
|
-
<label class="onoffswitch-label" for="showlog">
|
|
62
|
-
<span class="onoffswitch-inner"></span>
|
|
63
|
-
<span class="onoffswitch-switch"></span>
|
|
64
|
-
</label>
|
|
65
|
-
</div>
|
|
66
|
-
|
|
67
|
-
<span class="log-controls">
|
|
68
|
-
<label for="autoscroll">Autoscroll</label>
|
|
69
|
-
<div class="onoffswitch">
|
|
70
|
-
<input
|
|
71
|
-
type="checkbox"
|
|
72
|
-
name="autoscroll"
|
|
73
|
-
class="onoffswitch-checkbox"
|
|
74
|
-
id="autoscroll"
|
|
75
|
-
/>
|
|
76
|
-
<label class="onoffswitch-label" for="autoscroll">
|
|
77
|
-
<span class="onoffswitch-inner"></span>
|
|
78
|
-
<span class="onoffswitch-switch"></span>
|
|
79
|
-
</label>
|
|
80
|
-
</div>
|
|
81
|
-
<button id="butClear" type="button" class="small-btn">
|
|
82
|
-
Clear
|
|
83
|
-
</button>
|
|
84
|
-
</span>
|
|
85
|
-
|
|
86
|
-
<label for="debugmode">Debug</label>
|
|
87
|
-
<div class="onoffswitch">
|
|
88
|
-
<input
|
|
89
|
-
type="checkbox"
|
|
90
|
-
name="debugmode"
|
|
91
|
-
class="onoffswitch-checkbox"
|
|
92
|
-
id="debugmode"
|
|
93
|
-
/>
|
|
94
|
-
<label class="onoffswitch-label" for="debugmode">
|
|
95
|
-
<span class="onoffswitch-inner"></span>
|
|
96
|
-
<span class="onoffswitch-switch"></span>
|
|
97
|
-
</label>
|
|
98
|
-
</div>
|
|
99
|
-
|
|
100
|
-
<label for="darkmode">Dark</label>
|
|
101
|
-
<div class="onoffswitch">
|
|
102
|
-
<input
|
|
103
|
-
type="checkbox"
|
|
104
|
-
name="darkmode"
|
|
105
|
-
class="onoffswitch-checkbox"
|
|
106
|
-
id="darkmode"
|
|
107
|
-
/>
|
|
108
|
-
<label class="onoffswitch-label" for="darkmode">
|
|
109
|
-
<span class="onoffswitch-inner"></span>
|
|
110
|
-
<span class="onoffswitch-switch"></span>
|
|
111
|
-
</label>
|
|
112
|
-
</div>
|
|
113
|
-
</div>
|
|
114
|
-
<select id="baudRate"></select>
|
|
115
|
-
<button id="butConnect" type="button">Connect</button>
|
|
116
|
-
</div>
|
|
117
|
-
</header>
|
|
118
|
-
<main class="main">
|
|
119
|
-
<div id="notSupported" class="notSupported">
|
|
120
|
-
Sorry, <b>Web Serial</b> is not supported on this device, make sure
|
|
121
|
-
you're running Chrome 89 or later.
|
|
122
|
-
</div>
|
|
123
|
-
<div id="app">
|
|
124
|
-
<div id="commands">
|
|
125
|
-
<div class="upload">
|
|
126
|
-
<label
|
|
127
|
-
>Offset: 0x
|
|
128
|
-
<input class="offset" type="text" value="0" />
|
|
129
|
-
</label>
|
|
130
|
-
<label class="firmware">
|
|
131
|
-
<input type="file" accept=".bin" />
|
|
132
|
-
<svg
|
|
133
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
134
|
-
width="20"
|
|
135
|
-
height="17"
|
|
136
|
-
viewbox="0 0 20 17"
|
|
137
|
-
>
|
|
138
|
-
<path
|
|
139
|
-
d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"
|
|
140
|
-
/>
|
|
141
|
-
</svg>
|
|
142
|
-
<span>Choose a file…</span>
|
|
143
|
-
</label>
|
|
144
|
-
<div class="progress-bar hidden"><div></div></div>
|
|
145
|
-
</div>
|
|
146
|
-
<div class="upload">
|
|
147
|
-
<label
|
|
148
|
-
>Offset: 0x
|
|
149
|
-
<input class="offset" type="text" value="0" />
|
|
150
|
-
</label>
|
|
151
|
-
<label class="firmware">
|
|
152
|
-
<input type="file" accept=".bin" />
|
|
153
|
-
<svg
|
|
154
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
155
|
-
width="20"
|
|
156
|
-
height="17"
|
|
157
|
-
viewbox="0 0 20 17"
|
|
158
|
-
>
|
|
159
|
-
<path
|
|
160
|
-
d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"
|
|
161
|
-
/>
|
|
162
|
-
</svg>
|
|
163
|
-
<span>Choose a file…</span>
|
|
164
|
-
</label>
|
|
165
|
-
<div class="progress-bar hidden"><div></div></div>
|
|
166
|
-
</div>
|
|
167
|
-
<div class="upload">
|
|
168
|
-
<label
|
|
169
|
-
>Offset: 0x
|
|
170
|
-
<input class="offset" type="text" value="0" />
|
|
171
|
-
</label>
|
|
172
|
-
<label class="firmware">
|
|
173
|
-
<input type="file" accept=".bin" />
|
|
174
|
-
<svg
|
|
175
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
176
|
-
width="20"
|
|
177
|
-
height="17"
|
|
178
|
-
viewbox="0 0 20 17"
|
|
179
|
-
>
|
|
180
|
-
<path
|
|
181
|
-
d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"
|
|
182
|
-
/>
|
|
183
|
-
</svg>
|
|
184
|
-
<span>Choose a file…</span>
|
|
185
|
-
</label>
|
|
186
|
-
<div class="progress-bar hidden"><div></div></div>
|
|
187
|
-
</div>
|
|
188
|
-
<div class="upload">
|
|
189
|
-
<label
|
|
190
|
-
>Offset: 0x
|
|
191
|
-
<input class="offset" type="text" value="0" />
|
|
192
|
-
</label>
|
|
193
|
-
<label class="firmware">
|
|
194
|
-
<input type="file" accept=".bin" />
|
|
195
|
-
<svg
|
|
196
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
197
|
-
width="20"
|
|
198
|
-
height="17"
|
|
199
|
-
viewbox="0 0 20 17"
|
|
200
|
-
>
|
|
201
|
-
<path
|
|
202
|
-
d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"
|
|
203
|
-
/>
|
|
204
|
-
</svg>
|
|
205
|
-
<span>Choose a file…</span>
|
|
206
|
-
</label>
|
|
207
|
-
<div class="progress-bar hidden"><div></div></div>
|
|
208
|
-
</div>
|
|
209
|
-
<div class="upload">
|
|
210
|
-
<label
|
|
211
|
-
>Offset: 0x
|
|
212
|
-
<input class="offset" type="text" value="0" />
|
|
213
|
-
</label>
|
|
214
|
-
<label class="firmware">
|
|
215
|
-
<input type="file" accept=".bin" />
|
|
216
|
-
<svg
|
|
217
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
218
|
-
width="20"
|
|
219
|
-
height="17"
|
|
220
|
-
viewbox="0 0 20 17"
|
|
221
|
-
>
|
|
222
|
-
<path
|
|
223
|
-
d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"
|
|
224
|
-
/>
|
|
225
|
-
</svg>
|
|
226
|
-
<span>Choose a file…</span>
|
|
227
|
-
</label>
|
|
228
|
-
<div class="progress-bar hidden"><div></div></div>
|
|
229
|
-
</div>
|
|
230
|
-
<div class="upload">
|
|
231
|
-
<label
|
|
232
|
-
>Offset: 0x
|
|
233
|
-
<input class="offset" type="text" value="0" />
|
|
234
|
-
</label>
|
|
235
|
-
<label class="firmware">
|
|
236
|
-
<input type="file" accept=".bin" />
|
|
237
|
-
<svg
|
|
238
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
239
|
-
width="20"
|
|
240
|
-
height="17"
|
|
241
|
-
viewbox="0 0 20 17"
|
|
242
|
-
>
|
|
243
|
-
<path
|
|
244
|
-
d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"
|
|
245
|
-
/>
|
|
246
|
-
</svg>
|
|
247
|
-
<span>Choose a file…</span>
|
|
248
|
-
</label>
|
|
249
|
-
<div class="progress-bar hidden"><div></div></div>
|
|
250
|
-
</div>
|
|
251
|
-
<div class="upload">
|
|
252
|
-
<label
|
|
253
|
-
>Offset: 0x
|
|
254
|
-
<input class="offset" type="text" value="0" />
|
|
255
|
-
</label>
|
|
256
|
-
<label class="firmware">
|
|
257
|
-
<input type="file" accept=".bin" />
|
|
258
|
-
<svg
|
|
259
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
260
|
-
width="20"
|
|
261
|
-
height="17"
|
|
262
|
-
viewbox="0 0 20 17"
|
|
263
|
-
>
|
|
264
|
-
<path
|
|
265
|
-
d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"
|
|
266
|
-
/>
|
|
267
|
-
</svg>
|
|
268
|
-
<span>Choose a file…</span>
|
|
269
|
-
</label>
|
|
270
|
-
<div class="progress-bar hidden"><div></div></div>
|
|
271
|
-
</div>
|
|
272
|
-
<div class="upload">
|
|
273
|
-
<label
|
|
274
|
-
>Offset: 0x
|
|
275
|
-
<input class="offset" type="text" value="0" />
|
|
276
|
-
</label>
|
|
277
|
-
<label class="firmware">
|
|
278
|
-
<input type="file" accept=".bin" />
|
|
279
|
-
<svg
|
|
280
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
281
|
-
width="20"
|
|
282
|
-
height="17"
|
|
283
|
-
viewbox="0 0 20 17"
|
|
284
|
-
>
|
|
285
|
-
<path
|
|
286
|
-
d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"
|
|
287
|
-
/>
|
|
288
|
-
</svg>
|
|
289
|
-
<span>Choose a file…</span>
|
|
290
|
-
</label>
|
|
291
|
-
<div class="progress-bar hidden"><div></div></div>
|
|
292
|
-
</div>
|
|
293
|
-
<div class="buttons">
|
|
294
|
-
<button id="butErase" type="button" disabled="disabled">
|
|
295
|
-
Erase
|
|
296
|
-
</button>
|
|
297
|
-
<button id="butProgram" type="button" disabled="disabled">
|
|
298
|
-
Program
|
|
299
|
-
</button>
|
|
300
|
-
</div>
|
|
301
|
-
<div class="partition-table">
|
|
302
|
-
<button id="butReadPartitions" type="button" disabled="disabled">
|
|
303
|
-
Read Partition Table
|
|
304
|
-
</button>
|
|
305
|
-
<div class="progress-bar hidden" id="partitionProgress">
|
|
306
|
-
<div></div>
|
|
307
|
-
</div>
|
|
308
|
-
<div id="partitionList" class="hidden"></div>
|
|
309
|
-
</div>
|
|
310
|
-
<div class="read-flash">
|
|
311
|
-
<div class="progress-bar hidden" id="readProgress"><div></div></div>
|
|
312
|
-
<div class="read-flash-inputs">
|
|
313
|
-
<label>
|
|
314
|
-
Address: 0x
|
|
315
|
-
<input id="readOffset" type="text" value="0" />
|
|
316
|
-
</label>
|
|
317
|
-
<label>
|
|
318
|
-
Size: 0x
|
|
319
|
-
<input id="readSize" type="text" value="1000" />
|
|
320
|
-
</label>
|
|
321
|
-
<button id="butReadFlash" type="button" disabled="disabled">
|
|
322
|
-
Read Flash
|
|
323
|
-
</button>
|
|
324
|
-
</div>
|
|
325
|
-
</div>
|
|
326
|
-
</div>
|
|
327
|
-
<div id="log"></div>
|
|
328
|
-
</div>
|
|
329
|
-
</main>
|
|
330
|
-
|
|
331
|
-
<!-- ESP32-S2 Reconnect Modal -->
|
|
332
|
-
<div id="esp32s2Modal" class="modal hidden">
|
|
333
|
-
<div class="modal-content">
|
|
334
|
-
<h2>ESP32-S2 has switched to USB CDC mode</h2>
|
|
335
|
-
<p>Please click the button below to select the new serial port.</p>
|
|
336
|
-
<button id="butReconnectS2" type="button" class="modal-button">
|
|
337
|
-
Select New Port
|
|
338
|
-
</button>
|
|
339
|
-
</div>
|
|
340
|
-
</div>
|
|
341
|
-
|
|
342
|
-
<footer class="footer"></footer>
|
|
343
|
-
</body>
|
|
344
|
-
</html>
|