Skip to content

Commit cd24434

Browse files
save file
1 parent e763f98 commit cd24434

File tree

1 file changed

+79
-79
lines changed

1 file changed

+79
-79
lines changed

utils/misc/global-state-diff/v2.0/global-state-diff-v2.0.html

Lines changed: 79 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
<link rel=icon type='image/png' href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAB41BMVEVHcExEPzkoWIEtobIxrLcud5M+cYQtfJUrjKIqe5grgZ0upLMmTHsmS3cpu8MvpbMqZ4o4ZXwzkaQveJMsn7Aob48nf50qhZ8qnLAlVYIppLUsma0mW4YspLUlN2coYIYxo7EqgJwohKEoSnciGVMjKWMyoK8kMmQumaoytLstj6Q1mqg0sLoyr7kuiqAzq7coOGUqNmAmOmc6oqwqWYE2lacwrbcqc5IoiKItjKMvlqgpobIsZoQrhJsqhZ8pcpIoiKIqgJkqSHElPG0vjqMnYYguqrcoYIcnS3cndZcsaYgpjKQmWoQpgZwuobImOm8ogp8qe5ktqbcnWIImVH4ro7QlOGwrmq0tq7glOW0odpUlS3omQnQpaowqpbYnUXwrpbUkJV4gFE8iG1wjHFskMWgiG1gvtsAru8Mus7wttL4rYIcqf50raIswlKgrkKcpf5wtlqsvl6otjKEpaYkplKopZYUuZIImQ3Aqk6k1iJ0mQXErqLYrYIMpi6I0qbYlX4gkQ3EspLQslKkojKYlOGsskacrmKsrYoUmWoQpeJcnY4spgZ0xh54ro7UocpUofp0lU34sa4glWYYmaJAnpbcnm7Amf54ngqAniKMnjacnhaEleJojJ2YniaQoobQlXogCX05qAAAAk3RSTlMAAc3TZSwJVLbC0sveOf44OQMoFte59sXm7PjG9t6ruK7C92lApmg6OUFpF3hSNTAZDmoOayCEZ+hkcvojisuw9Ycpe6TW08zI9YTd2dq63fTO4Oi939De3NvQ2NKe8cPZZUz668x5neuix2fjZJa7yZ5NQnD6j0xP6E9h1aXNsfqm4sz2xr23SODZ6NN97OXs1pCs7VkWAAABjElEQVQoz2NgoBdgMxZyMmTDISls2dvO7SHvZS6MRZJRQFExcJps9BQuTvFiTOmO/gnyc6YlRE+Z1W5RWYQuaxMbZT8RIh3K4e1iiiorGKskMimEU1qh0V3cz5FJrFAQRdqpe2Zf/GSlOO5WyQApacnpEvoo0tULZobHTJ49Nch/8oypNT7T57OgSDvLODSHyShJuYXJBEi5uYtZm6FIGzHZucgxcTErgIj62kARHVTdC+aFRwINj4gEGh7hOn0+qu6KhpkSYLtB0syd0611UaQNXGfGyQf7igAN7wnlkJwugubxEt82r/guCW6Pbm9uW1EuK/TIKvOM8pkzTZZnyiyRutI8jGizERUT9QRJt3A45AthiU9HccVpTTxTODlttbHFN6NQlZV0iEk5KyPO9MLOjlUjPmnDNFV1CIu1wE4PwtJP1zGGSiclz001UlY2yc61nzGPw1JLTY2FJYuPDxZwKilzVdV5eXkFBMxzLLT0NDT4+fkz+TI0YUlFJdEA6gZWmLO1WTQFaZ1vAIUhYF6nuTxlAAAAAElFTkSuQmCC'>
2222
<meta name=viewport content='width=device-width, initial-scale=1'>
23-
23+
2424
<script type='application/ld+json'>
2525
{
2626
"@context" : "https://schema.org",
@@ -36,13 +36,13 @@
3636
"offers" : {"@type":"Offer","price":"0","priceCurrency":"GBP"}
3737
}
3838
</script>
39-
4039

41-
<script src='https://javascript-2020.github.io/stackoverflow/libs/stringify.js'></script>
42-
4340

44-
<script src='https://libs.ext-code.com/js/dom/component/component.js'></script>
45-
41+
<script src='https://javascript-2020.github.io/stackoverflow/libs/stringify.js'></script>
42+
43+
44+
<script src='https://libs.ext-code.com/js/dom/component/v3.0/component.js'></script>
45+
4646
<script init>
4747
console.clear();
4848
console.log('global-state-diff.html');
@@ -58,26 +58,26 @@
5858
var keydown;
5959
var debug;
6060
var inspect;
61-
61+
6262
var hdr;
6363

6464

6565

6666
var detect;
67-
68-
69-
67+
68+
69+
7070
//:
7171

7272

7373
async function init(){
7474
debug('init',version);
75-
75+
7676
var menu = menumod();
7777

7878
mod.base.add({ext,$,datatype,keydown,menu,menumod});
7979

80-
80+
8181
hdr = mod['misc-hdr'];
8282

8383
hdr.initmod({ext,$});
@@ -95,13 +95,13 @@
9595

9696
//:
9797

98-
98+
9999
(async()=>{
100100

101101
mod.stack.add;
102102

103103
({ext} = await import('https://libs.ext-code.com/js/io/ext-loader/ext-loader.m.js'));
104-
104+
105105
var promise = ext.load.libs(
106106
'js/dom/$.js',
107107
'js/core/datatype.js',
@@ -111,18 +111,18 @@
111111
'js/string/inspect/inspect.js'
112112
);
113113
[$,datatype,menumod,keydown,debug,inspect] = await promise;
114-
114+
115115
mod.stack.complete;
116-
116+
117117
})();
118-
119-
118+
119+
120120
</script>
121121

122-
122+
123123
<style>
124-
125-
124+
125+
126126
html
127127
{height:100%;font-family:arial}
128128
body
@@ -131,7 +131,7 @@
131131
}
132132
body>*
133133
{max-width:1400px;width:100%;padding:0 20px;}
134-
134+
135135

136136
section
137137
{border:1px solid lightblue;padding:10px;border-radius:10px;display:flex;flex-direction:column;gap:20px}
@@ -143,8 +143,8 @@
143143
{font-size:16px;padding:5px 10px;box-sizing:border-box}
144144
input[type=button]
145145
{cursor:pointer}
146-
147-
146+
147+
148148
.input
149149
{display:flex;align-items:center;gap:10px}
150150
.input > input
@@ -161,8 +161,8 @@
161161
{padding:2px;
162162
content:url(data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAABSlBMVEVHcEwnz/4C8P4g1P4L6P43wf5Mr/4a2v4Y3P4/uv5PrP4+vf5Auv4ozv5KsP4vyv45wP5Jsf5Auf49vP5Mrv4zxf44wf5Lr/46wP4h1P5Lr/46vv5Jsv4R5P5Hs/5Etv44wf5Hs/41w/4uyv47vv49vP5Ftf5GtP4c2f4rzP4tyv4m0f5Etv5Nrv4xxv4xxv4xx/4W3/5KsP5Mr/4/u/4uyv5Isv4K6f4l0f4qzv4W3/4V3/5Nrv5Mrv5Mrv5Mr/4W3v4e2P5BuP5Hsv4N5v4K6f4O5v42w/5Dt/4E7/4uyf4C8P4nz/4M5/4K6v4oz/4P5f4k0v4b2v5Gs/4E7v4I6/5Nrf4e1/4H7P4E7v5Auv5Dtv4sy/5Isv5GtP4wx/49vP4zxf47vv44wP42w/5LsP5Jsf4i1P4n0P4N5v4k0v4a2v4S4v4X3v6OfcqkAAAAVnRSTlMACo7CjQWN/VczjgIJMfIXJzHtjj5iVekR71Hvtz7CjelXjre2wiJj2PCFIWbR7+fEnXaodz3544/USfOC22Tm7CXOnqfUZ+/3VTV9bsTzqGDahpb2tyRB6bIAAAIDSURBVDjLrZVpV9pAFIYntdFiQkZsLCQECtJSlqAsFRBU3Kuta1sncYGuJEDt///aISkkkyHo6enzLTlP5s5758wNAC526pd3d1++/fzx/evNze1tp210wxURUMTWBz2v2EWtLc7jBTPmoJfNrqy8i0ajixgB00VISJIeW9JMKbcWDAYDNiFMQN1EqAAJcUfSBif0fsQWQjLxpjGnXUJa5CoIbTiP8KJ0OqfNMLQIZhGad/Ke3t///vWwGKv1+yPxfW55+TnmJWZW5ggxcqX3m6WSVTpSdPcxHCLExmf97AI8e1j8cK1f8X9Fq/Sotrf0k2v9KRiJ08L8mwhf2CQx8oK/yJyPw3Q67ULaV4Tr7tRCwFfkllLF4ushccwGPyUMzwzhMQz/X1Kz+QVMmh2LcjgsTxDZ3OpqIpFYfDu+KGwoxE5JvTtpF9NX9BEB792jn0gD4eNEsVAQHyXOO7fQFmNNLZOnPV5BqEyI+Yxm1qkluS0BCWRp8FEze6mTJQtVVd8MUfcEhBSGFOGMOWmaoc0AmRoXP5cmiHEReEXANOopzCsLRYlXjWolGXE2jK/r/ujEWAdOFIxWGrjO8ljXazG6MeynthEn2gAP9P7B4XCE2thzdG2v2jbK5LfHZ3hINbclSco6o/kIh1Einq4e1qxp5m2PkqZ/CPvbXvFot+xe7w/EpaiUrJ24NAAAAABJRU5ErkJggg==);
163163
}
164-
165-
164+
165+
166166
#output, #output2
167167
{white-space:pre;font-family:monospace;font-size:16px}
168168
#item, #item2
@@ -171,8 +171,8 @@
171171
{}
172172
#values
173173
{}
174-
175-
174+
175+
176176
iframe
177177
{display:none}
178178

@@ -181,12 +181,12 @@
181181
</head>
182182

183183
<body>
184-
184+
185185
<misc-hdr component=grp style='position:relative'>
186186
<img class=title src='images/global-state-diff.png' style='top:-5px;height:40px' alt=global-state-diff>
187187
<time slot=date datetime=2025-10-18>18 Oct 2025</time>
188188
</misc-hdr>
189-
189+
190190
<section id=script>
191191

192192
<h3>
@@ -218,8 +218,8 @@ <h3>
218218
</div>
219219

220220
</section>
221-
222-
221+
222+
223223
<section id=import>
224224

225225
<h3>
@@ -251,14 +251,14 @@ <h3>
251251
</div>
252252

253253
</section>
254-
255-
254+
255+
256256
</body>
257-
258-
257+
258+
259259
<script>
260-
261-
260+
261+
262262
var item;
263263
var item2;
264264

@@ -267,23 +267,23 @@ <h3>
267267

268268

269269
function initdom(){
270-
271-
270+
271+
272272

273273
$('#script .paste').onclick = async e=>{var txt=await navigator.clipboard.readText();src.value=txt};
274274
$('#script .copy').onclick = e=>navigator.clipboard.writeText(src.value);
275-
275+
276276
item = $('#item');
277277
item.remove();
278278

279279
go.onclick = function(){
280280

281281
process(src.value);
282-
282+
283283
}//onclick
284-
285-
286-
284+
285+
286+
287287
$('#import .paste').onclick = async e=>{var txt=await navigator.clipboard.readText();src2.value=txt};
288288
$('#import .copy').onclick = e=>navigator.clipboard.writeText(src2.value);
289289

@@ -293,32 +293,32 @@ <h3>
293293
go2.onclick = function(){
294294

295295
process2(src2.value);
296-
296+
297297
}//onclick
298-
299-
298+
299+
300300

301301
}//initdom
302302

303-
304-
//:
305-
306303

304+
//:
305+
306+
307307
function process(src){
308308

309-
309+
310310
var iframe = document.createElement('iframe');
311311
iframe.onload = onload;
312312
document.body.append(iframe);
313-
313+
314314

315315
function onload(){
316316

317317
var win = iframe.contentWindow;
318318
var doc = iframe.contentDocument;
319319

320320
var beforeKeys = new Set(Object.keys(win));
321-
321+
322322

323323
var script = document.createElement('script');
324324
script.src = src;
@@ -327,8 +327,8 @@ <h3>
327327

328328
var afterKeys = new Set(Object.keys(win));
329329
var added = [...afterKeys].filter(k=>!beforeKeys.has(k));
330-
331-
var str = '';
330+
331+
var str = '';
332332
added.forEach(key=>{
333333

334334
var s = win[key].toString();
@@ -339,7 +339,7 @@ <h3>
339339
str += `window.${key} [ ${typeof win[key]} ] : ${s1}`+'\n';
340340

341341
console.log(`window.${key} =`,win[key]);
342-
342+
343343
});
344344

345345
var nitem = item.cloneNode(true);
@@ -360,8 +360,8 @@ <h3>
360360
}//onload
361361

362362
}//process
363-
364-
363+
364+
365365

366366

367367
async function process2(src){
@@ -371,7 +371,7 @@ <h3>
371371

372372
var str = '';
373373
for(var key in mod){
374-
374+
375375

376376
var s1 = '[ null ]';
377377

@@ -382,8 +382,8 @@ <h3>
382382
s1 = tostring(mod[key]);
383383
str += key+` [ ${typeof mod[key]} ] : ${s1}`+'\n';
384384
for(var prop in mod[key]){
385-
386-
var s2 = tostring(mod[key][prop]);
385+
386+
var s2 = tostring(mod[key][prop]);
387387
str += ' '+prop+` [ ${typeof mod[key][prop]} ] : ${s2}`+'\n';
388388

389389
}//for
@@ -403,10 +403,10 @@ <h3>
403403
$('#values').textContent = str;
404404

405405
output2.append(nitem);
406-
407-
406+
407+
408408
function tostring(v){
409-
409+
410410
var s = v.toString();
411411
var s1 = s.slice(0,80);
412412
if(s.length>s1.length){
@@ -417,51 +417,51 @@ <h3>
417417
}//tostring
418418

419419
}//process
420-
421-
422-
423-
424420

425-
421+
422+
423+
424+
425+
426426
(async()=>{
427427

428428
var {init,parse} = await import('https://unpkg.com/es-module-lexer?module');
429429

430430
detect = async function(code){
431431

432432
await init();
433-
433+
434434
var [imports,exports] = parse(code);
435-
435+
436436
var isESM = imports.length>0 || exports.length>0;
437437
var isCommonJS = /require\(|module\.exports|exports\./.test(code);
438438

439439
var isNode = /process\.|__dirname|require\(/.test(code);
440440
var isBrowser = /window\.|document\.|navigator\./.test(code);
441-
441+
442442
var type = 'Unknown';
443443
if (isESM){
444444
type = 'ESM';
445445
}else if(isCommonJS){
446446
type = 'CommonJS';
447447
}
448-
448+
449449
if(isNode){
450450
type += ' (Node.js)';
451451
}else if(isBrowser){
452452
type += ' (Browser)';
453453
}
454-
454+
455455
return type;
456456

457457
}//detect
458-
459-
})();
458+
459+
})();
460460

461461

462462
</script>
463-
464-
463+
464+
465465

466466
</html>
467467

0 commit comments

Comments
 (0)