@fundamental-ngx/core 0.64.2-rc.46 → 0.64.2-rc.48

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.
@@ -1369,7 +1369,16 @@ class PopoverService {
1369
1369
  return;
1370
1370
  }
1371
1371
  let animationFrame = null;
1372
- const scheduleUpdate = () => {
1372
+ const scheduleUpdate = (records) => {
1373
+ // Skip self-caused mutations, else we loop: updatePosition() writes `style` on the
1374
+ // overlay's position wrapper (.cdk-overlay-connected-position-bounding-box), which this
1375
+ // observer would see and react to. Test against .cdk-overlay-container, not
1376
+ // overlayElement -- the wrapper is overlayElement's parent, so it isn't contained by it.
1377
+ const overlayEl = this._overlayRef?.overlayElement;
1378
+ const overlayContainer = overlayEl?.closest('.cdk-overlay-container') ?? overlayEl;
1379
+ if (overlayContainer && records.every((record) => overlayContainer.contains(record.target))) {
1380
+ return;
1381
+ }
1373
1382
  if (animationFrame !== null) {
1374
1383
  return;
1375
1384
  }