@mozaic-ds/angular 2.0.66 → 2.0.67
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.
|
@@ -4263,6 +4263,17 @@ class MozDrawerService {
|
|
|
4263
4263
|
const containerPortal = new ComponentPortal(DrawerContainerComponent, null, injector);
|
|
4264
4264
|
const containerRef = overlayRef.attach(containerPortal);
|
|
4265
4265
|
const containerInstance = containerRef.instance;
|
|
4266
|
+
// Render the closed state synchronously, then force a reflow so the browser
|
|
4267
|
+
// commits the dialog's initial `transform: translateX(100%)`. This gives the
|
|
4268
|
+
// CSS slide-in transition a painted starting point.
|
|
4269
|
+
//
|
|
4270
|
+
// Required under zoneless change detection (`provideZonelessChangeDetection`):
|
|
4271
|
+
// without it, the container's first change-detection pass can be flushed in
|
|
4272
|
+
// the same frame as `isOpen` flipping to `true`, so the dialog is painted
|
|
4273
|
+
// already-open and the `.is-open` transition never runs (the drawer "pops"
|
|
4274
|
+
// in instantly). Under zone.js this is just a harmless extra CD.
|
|
4275
|
+
containerRef.changeDetectorRef.detectChanges();
|
|
4276
|
+
void containerRef.location.nativeElement.offsetWidth;
|
|
4266
4277
|
// Wait for view init, then attach the user component inside the container
|
|
4267
4278
|
requestAnimationFrame(() => {
|
|
4268
4279
|
// Override the portal outlet's injector so the child component
|