mikser-io-layouts 2.5.0 → 2.6.0
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/assembly.js +11 -1
- package/package.json +2 -2
package/lib/assembly.js
CHANGED
|
@@ -142,7 +142,16 @@ export function createOnBeforeRender({
|
|
|
142
142
|
const mutatedEntities = new Map(seeds.map(s => [s.id, s]))
|
|
143
143
|
const queryAffected = runtime.manifest?.queryAffected(mutatedEntities) ?? new Set()
|
|
144
144
|
|
|
145
|
-
|
|
145
|
+
// Entities whose last render attempt threw. Nothing else will
|
|
146
|
+
// schedule them: their own source has not changed, so they are
|
|
147
|
+
// gated at import, and the manifest still holds the snapshot from
|
|
148
|
+
// the last GOOD render — every hash agrees and the page stays
|
|
149
|
+
// broken. Same hook as the opt-outs above, for the same reason:
|
|
150
|
+
// a dispatch set the ref walk cannot reach.
|
|
151
|
+
const failedIds = runtime.manifest?.failedIds?.() ?? []
|
|
152
|
+
|
|
153
|
+
if (seeds.length === 0 && optOutEntities.length === 0
|
|
154
|
+
&& queryAffected.size === 0 && failedIds.length === 0) return
|
|
146
155
|
|
|
147
156
|
const closure = seeds.length ? runtime.refs.inverseClosureOf(seeds) : new Set()
|
|
148
157
|
// Combine closure ids + opt-out ids + query-affected ids
|
|
@@ -150,6 +159,7 @@ export function createOnBeforeRender({
|
|
|
150
159
|
const dispatchIds = new Set(closure)
|
|
151
160
|
for (const e of optOutEntities) dispatchIds.add(e.id)
|
|
152
161
|
for (const id of queryAffected) dispatchIds.add(id)
|
|
162
|
+
for (const id of failedIds) dispatchIds.add(id)
|
|
153
163
|
|
|
154
164
|
// Hydrate each id via findById. LRU cache absorbs
|
|
155
165
|
// duplicates (refs BFS revisits, partial dispatches
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mikser-io-layouts",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.6.0",
|
|
4
4
|
"description": "SSG-flavor task-production policy for mikser-io. Multi-match layout assignment, per-layout destinations, postprocess chain attachment, layout inspection.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
},
|
|
19
19
|
"homepage": "https://github.com/almero-digital-marketing/mikser-io-layouts#readme",
|
|
20
20
|
"peerDependencies": {
|
|
21
|
-
"mikser-io": "^9.
|
|
21
|
+
"mikser-io": "^9.25.0"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"globby": "^14.0.0",
|