mn-angular-lib 1.0.98 → 1.0.99

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.
@@ -6785,7 +6785,13 @@ class MnModalShellComponent {
6785
6785
  prevSample = null;
6786
6786
  get hostClasses() {
6787
6787
  const size = this.config.sizeWidth || ModalSize.MD;
6788
- const closing = this.isClosing ? ' closing' : '';
6788
+ // `closing` is intentionally NOT derived here. startClosing() adds the
6789
+ // `.closing` class imperatively (classList.add) for reliable, zoneless-safe
6790
+ // application. Deriving it from `isClosing` in this getter as well makes the
6791
+ // host class string flip value after the view has been checked, which throws
6792
+ // NG0100 (ExpressionChangedAfterItHasBeenCheckedError) in dev. Angular's class
6793
+ // binding only manages the tokens it emits, so it leaves the imperatively
6794
+ // added `.closing` untouched.
6789
6795
  const animType = typeof this.config.animation === 'string'
6790
6796
  ? this.config.animation
6791
6797
  : this.config.animation?.type || 'slide';
@@ -6793,7 +6799,7 @@ class MnModalShellComponent {
6793
6799
  const stacked = this.isStacked ? ' is-stacked' : '';
6794
6800
  const mobileSheet = this.isMobileSheet ? ' mobile-sheet' : '';
6795
6801
  const swiping = this.swipeDismissing ? ' swipe-dismissing' : '';
6796
- return `modal-shell modal-${size}${closing}${animation}${stacked}${mobileSheet}${swiping}`;
6802
+ return `modal-shell modal-${size}${animation}${stacked}${mobileSheet}${swiping}`;
6797
6803
  }
6798
6804
  dragStartY = 0;
6799
6805
  /** Whether the sheet can be dismissed at all (drives whether the swipe is armed). */