dsh-unlag 1.9.72 → 1.9.74
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/client.js +24 -7
- package/package.json +1 -1
package/client.js
CHANGED
|
@@ -249,8 +249,11 @@ window.__ModuleLoader__.load({
|
|
|
249
249
|
holdReason = null;
|
|
250
250
|
return 'ok';
|
|
251
251
|
}
|
|
252
|
+
// The refusal's wording is the app's, read as a key into a table of gates: a key the table does
|
|
253
|
+
// not own (a prototype name, a word from a newer app) falls back to the list rather than to
|
|
254
|
+
// whatever that name happens to resolve to.
|
|
252
255
|
const reason = data !== null && typeof data === 'object' && typeof data.reason === 'string' ? data.reason : 'list';
|
|
253
|
-
held(VERIFY_GATES[reason]
|
|
256
|
+
held(Object.hasOwn(VERIFY_GATES, reason) ? VERIFY_GATES[reason] : 'list');
|
|
254
257
|
return 'blocked';
|
|
255
258
|
}
|
|
256
259
|
|
|
@@ -351,17 +354,31 @@ window.__ModuleLoader__.load({
|
|
|
351
354
|
let frozen = null;
|
|
352
355
|
for (const row of rows) {
|
|
353
356
|
if (row === null || typeof row !== 'object') continue;
|
|
354
|
-
|
|
357
|
+
// The saved list crosses a boundary from the shell: a row whose fields cannot be read is a
|
|
358
|
+
// list this page cannot vouch for, and naming the row beats a page-shaped notice.
|
|
359
|
+
let kind = '';
|
|
360
|
+
let runs = false;
|
|
361
|
+
let src = '';
|
|
362
|
+
let name = '';
|
|
363
|
+
let value = null;
|
|
364
|
+
try {
|
|
365
|
+
kind = typeof row.kind === 'string' ? row.kind : '';
|
|
366
|
+
runs = kind === 'script-src' || kind === 'script-preload';
|
|
367
|
+
src = typeof row.src === 'string' ? row.src : '';
|
|
368
|
+
name = typeof row.name === 'string' ? row.name : '';
|
|
369
|
+
value = row.value;
|
|
370
|
+
} catch {
|
|
371
|
+
return held('row');
|
|
372
|
+
}
|
|
373
|
+
if (!STARTUP_ROW_KINDS.has(kind)) return held('row');
|
|
355
374
|
// Only the rows a document runs as scripts have to load as classic scripts. Style and
|
|
356
375
|
// markup rows carry their own text and their address is not a script at all, so reading
|
|
357
376
|
// them back would refuse a sound list over a false alarm.
|
|
358
|
-
|
|
359
|
-
if (runs
|
|
360
|
-
if (runs) scripts.push(row.src);
|
|
377
|
+
if (runs && src === '') return held('src');
|
|
378
|
+
if (runs) scripts.push(src);
|
|
361
379
|
// Inline rows carry their own text and are not fetched; the queue script among them ends
|
|
362
380
|
// in a nested return that a flat scan would misread, so their text is left to the document.
|
|
363
|
-
if (
|
|
364
|
-
let value = row.value;
|
|
381
|
+
if (kind !== 'global' || name !== '__DSH_BOOT__') continue; // ui-copy-ignore
|
|
365
382
|
if (typeof value === 'string') {
|
|
366
383
|
try {
|
|
367
384
|
value = JSON.parse(value);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-unlag",
|
|
3
|
-
"version": "1.9.
|
|
3
|
+
"version": "1.9.74",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A press applies plugin edits right away and brings a laggy interface back; automatic reloading stays off unless you turn it on, so the press is the only trigger, and nothing restarts.",
|
|
6
6
|
"license": "MIT",
|