@b9g/crank 0.5.6 → 0.5.7

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/crank.cjs CHANGED
@@ -546,7 +546,10 @@ function diffChildren(renderer, root, host, ctx, scope, parent, children, hydrat
546
546
  // cleanup remaining retainers
547
547
  for (; oi < oldLength; oi++) {
548
548
  const ret = oldRetained[oi];
549
- if (typeof ret === "object") {
549
+ if (typeof ret === "object" &&
550
+ (typeof ret.el.key === "undefined" ||
551
+ !seenKeys ||
552
+ !seenKeys.has(ret.el.key))) {
550
553
  (graveyard = graveyard || []).push(ret);
551
554
  }
552
555
  }