mnfst 0.5.263 → 0.5.264
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/lib/manifest.data.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"manifest.appwrite.auth.js": "sha384-9WNhIeSEzxxJm+yP7cV41kV2xyzyXgFCNpThqiREcNbb6tnIW6O7VRZPL2jwy9Nk",
|
|
3
|
-
"manifest.appwrite.data.js": "sha384-
|
|
3
|
+
"manifest.appwrite.data.js": "sha384-eV1YxeLMCf9zm5onq75vkiJwNB5ykd6Fv4ZPKz4L9DME2ZvEmef5FQSq4HMRbAEK",
|
|
4
4
|
"manifest.appwrite.presences.js": "sha384-/CagPsgWhO1sWEevCNGJmZ/ezRK9YCjLjvF7hxNSM4gVlJmEVtfSLfF7wnsRq441",
|
|
5
5
|
"manifest.bindings.js": "sha384-lPtMf8Ykaic9gNVZKq8Scia1881ZeMAyxer3WCIkUNwwrgzGBWto1OXADUwjvORF",
|
|
6
6
|
"manifest.charts.js": "sha384-AFbP7mQnigy7DU1s+YE30yKTeQAKfgNazhbfSNbfd9ZpLgeulZKaPi/fAq3gJHDO",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"manifest.combobox.js": "sha384-/lJo6vaxKjgnBSRs/dzkhK1dzGk3GBw8FISoNJZB70mwAVwu1k5veZyBXjOb4keS",
|
|
12
12
|
"manifest.components.js": "sha384-BUFA8h+G5Plr82sV7bKzO42pPoiRZwRQcKj1lt2ROFiKjjlkayU/vmkAFqEsdBA+",
|
|
13
13
|
"manifest.computed.js": "sha384-GYML/e81gQfN+iDbqhPUgny8bINCyL+SrbTofoGk4hlCnLLjv51mCv42JMqq+ku5",
|
|
14
|
-
"manifest.data.js": "sha384-
|
|
14
|
+
"manifest.data.js": "sha384-f3ncx+C3dVh8WQfzsMqLzP+f7r6aAtrTJ/yzz7jKA8SV743cq4rPr10COtH22J2e",
|
|
15
15
|
"manifest.datepicker.js": "sha384-EzlMwvIxlla/0BuyhAEqxN0M8TGcWIWgEIg840V0akKQQK1uY648wPWMkobvtq/o",
|
|
16
16
|
"manifest.defer.js": "sha384-5cHzFTbx+cZmGpk9FuiUtW3ciC9NvvHwJeHP7xL5yiZVp9PhMWVdQ7L9y6ju2yoo",
|
|
17
17
|
"manifest.device.js": "sha384-YeQaS56L8IILqrQNBSeAOLwIh5DuAOrE60cYLK1+46qJtUrXlAvqGe2j5mbV4Vq7",
|
|
@@ -28,13 +28,13 @@
|
|
|
28
28
|
"manifest.slides.js": "sha384-3uRTkyK9XPLmnxI2+igZlpi4EyPlU/7IHj5j3BZJJ2KN455vXyk99fiXV3feO/XY",
|
|
29
29
|
"manifest.status.js": "sha384-ofu7nBnVIGZ1U1o2R9d2H3V8aEMPUCVbl5FO3gIToXqi0oa36fTviEdh5UU7Kitw",
|
|
30
30
|
"manifest.svg.js": "sha384-qr/8H9+2cIhSXNbRWRtIdrDlTOxKlNJqwEefHvCYoiBNW/kKhPTFa109Orv/EBnb",
|
|
31
|
-
"manifest.sw.js": "sha384-
|
|
31
|
+
"manifest.sw.js": "sha384-1YhTn8oZZM4IrB59KqwQ7zk7P+KIAoMT4POZaz08NpQqhwJh4qDEERuKDT9jro1N",
|
|
32
32
|
"manifest.tabs.js": "sha384-otU09H7jnawVKQdLAYpMCd3jx00tgyPVr42D2hLIBzN5dG4se505YesavdnMqEi1",
|
|
33
33
|
"manifest.tailwind.js": "sha384-yuP3LEvWU+QVjxjkZ0YhErtC9RrGmhOmHjjFjhS9obqZbp5/KTIEnSR0CXDvHE0B",
|
|
34
34
|
"manifest.toasts.js": "sha384-3zkWxzw693pxg3QDFsoYCA3CqYaLKmBaMArULXODD66Utolpewl0OAeTB92aWUVv",
|
|
35
35
|
"manifest.tooltips.js": "sha384-hXGp5j0s6p2kGZY/hqLPEbaUv68ca63kFCjYiZqK3DcC12mpHTBy1vz3kuApyf4p",
|
|
36
36
|
"manifest.url.parameters.js": "sha384-J2aSVBOPsoqsbafHndrWLHEDpKb4AKJAoQnVmKA4gZh5P/8HHjFWHO/lkusmG84l",
|
|
37
37
|
"manifest.utilities.js": "sha384-h17EquaRtNcEW0yfhk7R+a+2+CzTlBxPuFryO6i9NV/OiIRMihREoyzQ77QawoQ7",
|
|
38
|
-
"manifest.virtual.js": "sha384-
|
|
38
|
+
"manifest.virtual.js": "sha384-ru/eYigBWgJHcHCP0yGKRaF1FNsKisWN61LBWaH16+8ZIh5H8fWtP3aMe0s9/mrg",
|
|
39
39
|
"manifest.js": "sha384-qMp2SeZUWYE/Lth8sguzlCAzXxn72gBDBPYUZ1iDlQVvzYuCc8/NPgw1gUJR88u1"
|
|
40
40
|
}
|
package/lib/manifest.sw.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
// Build stamps the published version here; unstamped (dev) falls back to the
|
|
18
18
|
// registration URL's `v`, then 'dev'.
|
|
19
|
-
const BUILD_VERSION = '0.5.
|
|
19
|
+
const BUILD_VERSION = '0.5.264';
|
|
20
20
|
const CACHE_PREFIX = 'mnfst-sw:';
|
|
21
21
|
const META_CACHE = CACHE_PREFIX + 'meta';
|
|
22
22
|
// Sized to hold a full precache.json warm-up (PRECACHE_MAX_ENTRIES server-side)
|
package/lib/manifest.virtual.js
CHANGED
|
@@ -241,6 +241,7 @@ function initializeVirtualPlugin() {
|
|
|
241
241
|
|
|
242
242
|
const visible = new Set();
|
|
243
243
|
const keys = [];
|
|
244
|
+
const items = [];
|
|
244
245
|
for (let i = startItem; i < endItem; i++) {
|
|
245
246
|
const item = data[i];
|
|
246
247
|
if (item == null) continue;
|
|
@@ -248,15 +249,35 @@ function initializeVirtualPlugin() {
|
|
|
248
249
|
if (key == null) continue;
|
|
249
250
|
visible.add(key);
|
|
250
251
|
keys.push(key);
|
|
251
|
-
|
|
252
|
-
if (!entry) entry = mountRow(item, key);
|
|
253
|
-
else if (entry.scope[itemName] !== item) entry.scope[itemName] = item; // rebind by key
|
|
254
|
-
host.insertBefore(entry.node, botSpacer); // keep DOM order = data order
|
|
252
|
+
items.push(item);
|
|
255
253
|
}
|
|
256
254
|
for (const [key, entry] of rendered) {
|
|
257
255
|
if (!visible.has(key)) removeRow(key, entry);
|
|
258
256
|
}
|
|
259
257
|
|
|
258
|
+
// Keep DOM order = data order, moving only rows out of place
|
|
259
|
+
const rowNodes = new Set();
|
|
260
|
+
for (const entry of rendered.values()) rowNodes.add(entry.node);
|
|
261
|
+
// Next row in the host; skips what a row root rendered (x-if clones), survives a row's init detaching it
|
|
262
|
+
const nextRow = (n) => {
|
|
263
|
+
while (n && n !== botSpacer && n.parentNode === host && !rowNodes.has(n)) n = n.nextSibling;
|
|
264
|
+
return n && n.parentNode === host ? n : botSpacer;
|
|
265
|
+
};
|
|
266
|
+
let cursor = nextRow(topSpacer.nextSibling);
|
|
267
|
+
for (let i = 0; i < keys.length; i++) {
|
|
268
|
+
if (cursor.parentNode !== host) cursor = botSpacer;
|
|
269
|
+
let entry = rendered.get(keys[i]);
|
|
270
|
+
if (!entry) {
|
|
271
|
+
entry = mountRow(items[i], keys[i], cursor);
|
|
272
|
+
rowNodes.add(entry.node);
|
|
273
|
+
if (entry.node.parentNode !== host) host.insertBefore(entry.node, cursor); // root replaced itself in init
|
|
274
|
+
continue;
|
|
275
|
+
}
|
|
276
|
+
if (entry.scope[itemName] !== items[i]) entry.scope[itemName] = items[i]; // rebind by key
|
|
277
|
+
if (entry.node === cursor) cursor = nextRow(cursor.nextSibling);
|
|
278
|
+
else host.insertBefore(entry.node, cursor);
|
|
279
|
+
}
|
|
280
|
+
|
|
260
281
|
// Measure anything not yet measured, then reconcile offsets once.
|
|
261
282
|
scheduleMeasure(keys);
|
|
262
283
|
}
|
|
@@ -306,10 +327,10 @@ function initializeVirtualPlugin() {
|
|
|
306
327
|
scheduleMeasure(keys);
|
|
307
328
|
}
|
|
308
329
|
|
|
309
|
-
function mountRow(item, key) {
|
|
330
|
+
function mountRow(item, key, before = anchor) {
|
|
310
331
|
const tpl = template.content.firstElementChild;
|
|
311
332
|
const node = tpl.cloneNode(true);
|
|
312
|
-
host.insertBefore(node,
|
|
333
|
+
host.insertBefore(node, before); // connect before init
|
|
313
334
|
const scope = Alpine.reactive({ [itemName]: item });
|
|
314
335
|
const removeScope = Alpine.addScopeToNode(node, scope);
|
|
315
336
|
Alpine.initTree(node);
|
|
@@ -422,11 +443,12 @@ function initializeVirtualPlugin() {
|
|
|
422
443
|
|
|
423
444
|
// ---- Scroll / resize ----
|
|
424
445
|
|
|
446
|
+
let destroyed = false;
|
|
425
447
|
let scrollScheduled = false;
|
|
426
448
|
const onScroll = () => {
|
|
427
449
|
if (scrollScheduled) return;
|
|
428
450
|
scrollScheduled = true;
|
|
429
|
-
requestAnimationFrame(() => { scrollScheduled = false; render(); });
|
|
451
|
+
requestAnimationFrame(() => { scrollScheduled = false; if (!destroyed) render(); });
|
|
430
452
|
};
|
|
431
453
|
scrollEl.addEventListener('scroll', onScroll, { passive: true });
|
|
432
454
|
|
|
@@ -440,6 +462,7 @@ function initializeVirtualPlugin() {
|
|
|
440
462
|
if (!kind && !isMasonry && host !== scrollEl) ro.observe(host); // only until a hidden host is classified
|
|
441
463
|
|
|
442
464
|
cleanup(() => {
|
|
465
|
+
destroyed = true;
|
|
443
466
|
scrollEl.removeEventListener('scroll', onScroll);
|
|
444
467
|
ro.disconnect();
|
|
445
468
|
clearTimeout(resizeTimer);
|