@angular/cdk 14.0.0-next.3 → 14.0.0-next.6

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.
Files changed (208) hide show
  1. package/a11y/live-announcer/live-announcer.d.ts +3 -1
  2. package/drag-drop/drag-events.d.ts +8 -0
  3. package/drag-drop/drag-ref.d.ts +7 -1
  4. package/drag-drop/drop-list-ref.d.ts +5 -1
  5. package/drag-drop/parent-position-tracker.d.ts +11 -3
  6. package/esm2020/a11y/a11y-module.mjs +5 -5
  7. package/esm2020/a11y/aria-describer/aria-describer.mjs +4 -4
  8. package/esm2020/a11y/focus-monitor/focus-monitor.mjs +7 -7
  9. package/esm2020/a11y/focus-trap/configurable-focus-trap-factory.mjs +4 -4
  10. package/esm2020/a11y/focus-trap/focus-trap-manager.mjs +4 -4
  11. package/esm2020/a11y/focus-trap/focus-trap.mjs +7 -7
  12. package/esm2020/a11y/high-contrast-mode/high-contrast-mode-detector.mjs +7 -12
  13. package/esm2020/a11y/input-modality/input-modality-detector.mjs +4 -4
  14. package/esm2020/a11y/interactivity-checker/interactivity-checker.mjs +4 -4
  15. package/esm2020/a11y/live-announcer/live-announcer.mjs +11 -8
  16. package/esm2020/accordion/accordion-item.mjs +4 -4
  17. package/esm2020/accordion/accordion-module.mjs +5 -5
  18. package/esm2020/accordion/accordion.mjs +4 -4
  19. package/esm2020/bidi/bidi-module.mjs +5 -5
  20. package/esm2020/bidi/dir.mjs +4 -4
  21. package/esm2020/bidi/directionality.mjs +4 -4
  22. package/esm2020/clipboard/clipboard-module.mjs +5 -5
  23. package/esm2020/clipboard/clipboard.mjs +4 -4
  24. package/esm2020/clipboard/copy-to-clipboard.mjs +4 -4
  25. package/esm2020/collections/unique-selection-dispatcher.mjs +4 -4
  26. package/esm2020/drag-drop/directives/drag-handle.mjs +4 -4
  27. package/esm2020/drag-drop/directives/drag-placeholder.mjs +4 -4
  28. package/esm2020/drag-drop/directives/drag-preview.mjs +4 -4
  29. package/esm2020/drag-drop/directives/drag.mjs +26 -24
  30. package/esm2020/drag-drop/directives/drop-list-group.mjs +4 -4
  31. package/esm2020/drag-drop/directives/drop-list.mjs +14 -13
  32. package/esm2020/drag-drop/drag-drop-module.mjs +5 -5
  33. package/esm2020/drag-drop/drag-drop-registry.mjs +4 -4
  34. package/esm2020/drag-drop/drag-drop.mjs +4 -4
  35. package/esm2020/drag-drop/drag-events.mjs +1 -1
  36. package/esm2020/drag-drop/drag-ref.mjs +33 -21
  37. package/esm2020/drag-drop/drop-list-ref.mjs +7 -3
  38. package/esm2020/drag-drop/parent-position-tracker.mjs +13 -5
  39. package/esm2020/layout/breakpoints-observer.mjs +4 -4
  40. package/esm2020/layout/layout-module.mjs +5 -5
  41. package/esm2020/layout/media-matcher.mjs +4 -4
  42. package/esm2020/observers/observe-content.mjs +14 -14
  43. package/esm2020/overlay/dispatchers/base-overlay-dispatcher.mjs +4 -4
  44. package/esm2020/overlay/dispatchers/overlay-keyboard-dispatcher.mjs +26 -8
  45. package/esm2020/overlay/dispatchers/overlay-outside-click-dispatcher.mjs +33 -12
  46. package/esm2020/overlay/fullscreen-overlay-container.mjs +4 -4
  47. package/esm2020/overlay/overlay-container.mjs +4 -4
  48. package/esm2020/overlay/overlay-directives.mjs +7 -7
  49. package/esm2020/overlay/overlay-module.mjs +5 -5
  50. package/esm2020/overlay/overlay-ref.mjs +15 -16
  51. package/esm2020/overlay/overlay.mjs +4 -4
  52. package/esm2020/overlay/position/global-position-strategy.mjs +64 -30
  53. package/esm2020/overlay/position/overlay-position-builder.mjs +4 -4
  54. package/esm2020/overlay/scroll/scroll-strategy-options.mjs +4 -4
  55. package/esm2020/platform/platform-module.mjs +5 -5
  56. package/esm2020/platform/platform.mjs +4 -4
  57. package/esm2020/portal/dom-portal-outlet.mjs +4 -2
  58. package/esm2020/portal/portal-directives.mjs +20 -18
  59. package/esm2020/portal/portal.mjs +12 -3
  60. package/esm2020/scrolling/fixed-size-virtual-scroll.mjs +4 -4
  61. package/esm2020/scrolling/scroll-dispatcher.mjs +4 -4
  62. package/esm2020/scrolling/scrollable.mjs +4 -4
  63. package/esm2020/scrolling/scrolling-module.mjs +9 -9
  64. package/esm2020/scrolling/viewport-ruler.mjs +4 -4
  65. package/esm2020/scrolling/virtual-for-of.mjs +4 -4
  66. package/esm2020/scrolling/virtual-scroll-viewport.mjs +4 -4
  67. package/esm2020/stepper/step-header.mjs +4 -4
  68. package/esm2020/stepper/step-label.mjs +4 -4
  69. package/esm2020/stepper/stepper-button.mjs +7 -7
  70. package/esm2020/stepper/stepper-module.mjs +5 -5
  71. package/esm2020/stepper/stepper.mjs +9 -22
  72. package/esm2020/table/cell.mjs +22 -22
  73. package/esm2020/table/coalesced-style-scheduler.mjs +4 -4
  74. package/esm2020/table/row.mjs +28 -28
  75. package/esm2020/table/table-module.mjs +5 -5
  76. package/esm2020/table/table.mjs +19 -19
  77. package/esm2020/table/text-column.mjs +4 -4
  78. package/esm2020/testing/harness-environment.mjs +4 -1
  79. package/esm2020/testing/public-api.mjs +2 -1
  80. package/esm2020/testing/selenium-webdriver/selenium-web-driver-element.mjs +8 -3
  81. package/esm2020/testing/test-element-errors.mjs +15 -0
  82. package/esm2020/testing/test-element.mjs +1 -1
  83. package/esm2020/testing/testbed/fake-events/type-in-element.mjs +12 -3
  84. package/esm2020/testing/testbed/unit-test-element.mjs +21 -5
  85. package/esm2020/text-field/autofill.mjs +7 -7
  86. package/esm2020/text-field/autosize.mjs +4 -4
  87. package/esm2020/text-field/text-field-module.mjs +5 -5
  88. package/esm2020/tree/nested-node.mjs +4 -4
  89. package/esm2020/tree/node.mjs +4 -4
  90. package/esm2020/tree/outlet.mjs +4 -4
  91. package/esm2020/tree/padding.mjs +4 -4
  92. package/esm2020/tree/toggle.mjs +4 -4
  93. package/esm2020/tree/tree-module.mjs +5 -5
  94. package/esm2020/tree/tree.mjs +7 -7
  95. package/esm2020/version.mjs +1 -1
  96. package/fesm2015/a11y.mjs +47 -49
  97. package/fesm2015/a11y.mjs.map +1 -1
  98. package/fesm2015/accordion.mjs +10 -10
  99. package/fesm2015/accordion.mjs.map +1 -1
  100. package/fesm2015/bidi.mjs +10 -10
  101. package/fesm2015/bidi.mjs.map +1 -1
  102. package/fesm2015/cdk.mjs +1 -1
  103. package/fesm2015/cdk.mjs.map +1 -1
  104. package/fesm2015/clipboard.mjs +10 -10
  105. package/fesm2015/clipboard.mjs.map +1 -1
  106. package/fesm2015/coercion.mjs.map +1 -1
  107. package/fesm2015/collections.mjs +3 -3
  108. package/fesm2015/collections.mjs.map +1 -1
  109. package/fesm2015/drag-drop.mjs +111 -83
  110. package/fesm2015/drag-drop.mjs.map +1 -1
  111. package/fesm2015/keycodes.mjs.map +1 -1
  112. package/fesm2015/layout.mjs +10 -10
  113. package/fesm2015/layout.mjs.map +1 -1
  114. package/fesm2015/observers.mjs +13 -13
  115. package/fesm2015/observers.mjs.map +1 -1
  116. package/fesm2015/overlay.mjs +163 -91
  117. package/fesm2015/overlay.mjs.map +1 -1
  118. package/fesm2015/platform.mjs +7 -7
  119. package/fesm2015/platform.mjs.map +1 -1
  120. package/fesm2015/portal.mjs +33 -20
  121. package/fesm2015/portal.mjs.map +1 -1
  122. package/fesm2015/scrolling.mjs +26 -26
  123. package/fesm2015/scrolling.mjs.map +1 -1
  124. package/fesm2015/stepper.mjs +24 -37
  125. package/fesm2015/stepper.mjs.map +1 -1
  126. package/fesm2015/table.mjs +76 -76
  127. package/fesm2015/table.mjs.map +1 -1
  128. package/fesm2015/testing/selenium-webdriver.mjs +7 -2
  129. package/fesm2015/testing/selenium-webdriver.mjs.map +1 -1
  130. package/fesm2015/testing/testbed.mjs +31 -7
  131. package/fesm2015/testing/testbed.mjs.map +1 -1
  132. package/fesm2015/testing.mjs +19 -1
  133. package/fesm2015/testing.mjs.map +1 -1
  134. package/fesm2015/text-field.mjs +13 -13
  135. package/fesm2015/text-field.mjs.map +1 -1
  136. package/fesm2015/tree.mjs +25 -25
  137. package/fesm2015/tree.mjs.map +1 -1
  138. package/fesm2020/a11y.mjs +47 -49
  139. package/fesm2020/a11y.mjs.map +1 -1
  140. package/fesm2020/accordion.mjs +10 -10
  141. package/fesm2020/accordion.mjs.map +1 -1
  142. package/fesm2020/bidi.mjs +10 -10
  143. package/fesm2020/bidi.mjs.map +1 -1
  144. package/fesm2020/cdk.mjs +1 -1
  145. package/fesm2020/cdk.mjs.map +1 -1
  146. package/fesm2020/clipboard.mjs +10 -10
  147. package/fesm2020/clipboard.mjs.map +1 -1
  148. package/fesm2020/coercion.mjs.map +1 -1
  149. package/fesm2020/collections.mjs +3 -3
  150. package/fesm2020/collections.mjs.map +1 -1
  151. package/fesm2020/drag-drop.mjs +110 -83
  152. package/fesm2020/drag-drop.mjs.map +1 -1
  153. package/fesm2020/keycodes.mjs.map +1 -1
  154. package/fesm2020/layout.mjs +10 -10
  155. package/fesm2020/layout.mjs.map +1 -1
  156. package/fesm2020/observers.mjs +13 -13
  157. package/fesm2020/observers.mjs.map +1 -1
  158. package/fesm2020/overlay.mjs +163 -91
  159. package/fesm2020/overlay.mjs.map +1 -1
  160. package/fesm2020/platform.mjs +7 -7
  161. package/fesm2020/platform.mjs.map +1 -1
  162. package/fesm2020/portal.mjs +33 -20
  163. package/fesm2020/portal.mjs.map +1 -1
  164. package/fesm2020/scrolling.mjs +26 -26
  165. package/fesm2020/scrolling.mjs.map +1 -1
  166. package/fesm2020/stepper.mjs +24 -37
  167. package/fesm2020/stepper.mjs.map +1 -1
  168. package/fesm2020/table.mjs +76 -76
  169. package/fesm2020/table.mjs.map +1 -1
  170. package/fesm2020/testing/selenium-webdriver.mjs +7 -2
  171. package/fesm2020/testing/selenium-webdriver.mjs.map +1 -1
  172. package/fesm2020/testing/testbed.mjs +31 -7
  173. package/fesm2020/testing/testbed.mjs.map +1 -1
  174. package/fesm2020/testing.mjs +19 -1
  175. package/fesm2020/testing.mjs.map +1 -1
  176. package/fesm2020/text-field.mjs +13 -13
  177. package/fesm2020/text-field.mjs.map +1 -1
  178. package/fesm2020/tree.mjs +25 -25
  179. package/fesm2020/tree.mjs.map +1 -1
  180. package/overlay/_index.scss +7 -1
  181. package/overlay/dispatchers/overlay-keyboard-dispatcher.d.ts +7 -2
  182. package/overlay/dispatchers/overlay-outside-click-dispatcher.d.ts +8 -2
  183. package/overlay/overlay-ref.d.ts +2 -0
  184. package/overlay/position/global-position-strategy.d.ts +14 -3
  185. package/overlay-prebuilt.css +1 -1
  186. package/package.json +3 -3
  187. package/portal/dom-portal-outlet.d.ts +2 -2
  188. package/portal/portal.d.ts +12 -2
  189. package/schematics/migration.json +5 -0
  190. package/schematics/ng-add/index.js +1 -1
  191. package/schematics/ng-add/index.mjs +1 -1
  192. package/schematics/ng-update/data/constructor-checks.js +7 -1
  193. package/schematics/ng-update/data/constructor-checks.mjs +7 -1
  194. package/schematics/ng-update/devkit-migration-rule.js +2 -2
  195. package/schematics/ng-update/devkit-migration-rule.mjs +2 -2
  196. package/schematics/ng-update/index.d.ts +2 -0
  197. package/schematics/ng-update/index.js +7 -2
  198. package/schematics/ng-update/index.mjs +7 -2
  199. package/schematics/update-tool/target-version.d.ts +2 -1
  200. package/schematics/update-tool/target-version.js +2 -1
  201. package/schematics/update-tool/target-version.mjs +2 -1
  202. package/stepper/stepper.d.ts +3 -12
  203. package/table/text-column.d.ts +1 -1
  204. package/testing/public-api.d.ts +1 -0
  205. package/testing/test-element-errors.d.ts +12 -0
  206. package/testing/test-element.d.ts +4 -2
  207. package/testing/testbed/fake-events/type-in-element.d.ts +2 -2
  208. package/testing/testbed/unit-test-element.d.ts +4 -1
@@ -4,7 +4,7 @@ export { CdkScrollable, ScrollDispatcher, ViewportRuler } from '@angular/cdk/scr
4
4
  import * as i6 from '@angular/common';
5
5
  import { DOCUMENT } from '@angular/common';
6
6
  import * as i0 from '@angular/core';
7
- import { Injectable, Inject, ElementRef, ApplicationRef, InjectionToken, Directive, EventEmitter, Optional, Input, Output, NgModule } from '@angular/core';
7
+ import { Injectable, Inject, ElementRef, Optional, ApplicationRef, InjectionToken, Directive, EventEmitter, Input, Output, NgModule } from '@angular/core';
8
8
  import { coerceCssPixelValue, coerceArray, coerceBooleanProperty } from '@angular/cdk/coercion';
9
9
  import * as i1$1 from '@angular/cdk/platform';
10
10
  import { supportsScrollBehavior, _isTestEnvironment, _getEventTarget } from '@angular/cdk/platform';
@@ -312,9 +312,9 @@ class ScrollStrategyOptions {
312
312
  this._document = document;
313
313
  }
314
314
  }
315
- ScrollStrategyOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ScrollStrategyOptions, deps: [{ token: i1.ScrollDispatcher }, { token: i1.ViewportRuler }, { token: i0.NgZone }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
316
- ScrollStrategyOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ScrollStrategyOptions, providedIn: 'root' });
317
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ScrollStrategyOptions, decorators: [{
315
+ ScrollStrategyOptions.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ScrollStrategyOptions, deps: [{ token: i1.ScrollDispatcher }, { token: i1.ViewportRuler }, { token: i0.NgZone }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
316
+ ScrollStrategyOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ScrollStrategyOptions, providedIn: 'root' });
317
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ScrollStrategyOptions, decorators: [{
318
318
  type: Injectable,
319
319
  args: [{ providedIn: 'root' }]
320
320
  }], ctorParameters: function () {
@@ -492,6 +492,9 @@ class OverlayRef {
492
492
  this._detachments = new Subject();
493
493
  this._locationChanges = Subscription.EMPTY;
494
494
  this._backdropClickHandler = (event) => this._backdropClick.next(event);
495
+ this._backdropTransitionendHandler = (event) => {
496
+ this._disposeBackdrop(event.target);
497
+ };
495
498
  /** Stream of keydown events dispatched to this overlay. */
496
499
  this._keydownEvents = new Subject();
497
500
  /** Stream of mouse outside events dispatched to this overlay. */
@@ -781,22 +784,9 @@ class OverlayRef {
781
784
  if (!backdropToDetach) {
782
785
  return;
783
786
  }
784
- let timeoutId;
785
- const finishDetach = () => {
786
- // It may not be attached to anything in certain cases (e.g. unit tests).
787
- if (backdropToDetach) {
788
- backdropToDetach.removeEventListener('click', this._backdropClickHandler);
789
- backdropToDetach.removeEventListener('transitionend', finishDetach);
790
- this._disposeBackdrop(backdropToDetach);
791
- }
792
- if (this._config.backdropClass) {
793
- this._toggleClasses(backdropToDetach, this._config.backdropClass, false);
794
- }
795
- clearTimeout(timeoutId);
796
- };
797
787
  backdropToDetach.classList.remove('cdk-overlay-backdrop-showing');
798
788
  this._ngZone.runOutsideAngular(() => {
799
- backdropToDetach.addEventListener('transitionend', finishDetach);
789
+ backdropToDetach.addEventListener('transitionend', this._backdropTransitionendHandler);
800
790
  });
801
791
  // If the backdrop doesn't have a transition, the `transitionend` event won't fire.
802
792
  // In this case we make it unclickable and we try to remove it after a delay.
@@ -804,7 +794,10 @@ class OverlayRef {
804
794
  // Run this outside the Angular zone because there's nothing that Angular cares about.
805
795
  // If it were to run inside the Angular zone, every test that used Overlay would have to be
806
796
  // either async or fakeAsync.
807
- timeoutId = this._ngZone.runOutsideAngular(() => setTimeout(finishDetach, 500));
797
+ this._backdropTimeout = this._ngZone.runOutsideAngular(() => setTimeout(() => {
798
+ console.log('fallback');
799
+ this._disposeBackdrop(backdropToDetach);
800
+ }, 500));
808
801
  }
809
802
  /** Toggles a single CSS class or an array of classes on an element. */
810
803
  _toggleClasses(element, cssClasses, isAdd) {
@@ -853,6 +846,8 @@ class OverlayRef {
853
846
  /** Removes a backdrop element from the DOM. */
854
847
  _disposeBackdrop(backdrop) {
855
848
  if (backdrop) {
849
+ backdrop.removeEventListener('click', this._backdropClickHandler);
850
+ backdrop.removeEventListener('transitionend', this._backdropTransitionendHandler);
856
851
  backdrop.remove();
857
852
  // It is possible that a new portal has been attached to this overlay since we started
858
853
  // removing the backdrop. If that is the case, only clear the backdrop reference if it
@@ -861,6 +856,10 @@ class OverlayRef {
861
856
  this._backdropElement = null;
862
857
  }
863
858
  }
859
+ if (this._backdropTimeout) {
860
+ clearTimeout(this._backdropTimeout);
861
+ this._backdropTimeout = undefined;
862
+ }
864
863
  }
865
864
  }
866
865
 
@@ -931,9 +930,9 @@ class OverlayContainer {
931
930
  this._containerElement = container;
932
931
  }
933
932
  }
934
- OverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayContainer, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
935
- OverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayContainer, providedIn: 'root' });
936
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayContainer, decorators: [{
933
+ OverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayContainer, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
934
+ OverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayContainer, providedIn: 'root' });
935
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayContainer, decorators: [{
937
936
  type: Injectable,
938
937
  args: [{ providedIn: 'root' }]
939
938
  }], ctorParameters: function () {
@@ -1931,12 +1930,12 @@ class GlobalPositionStrategy {
1931
1930
  this._cssPosition = 'static';
1932
1931
  this._topOffset = '';
1933
1932
  this._bottomOffset = '';
1934
- this._leftOffset = '';
1935
- this._rightOffset = '';
1936
1933
  this._alignItems = '';
1937
- this._justifyContent = '';
1934
+ this._xPosition = '';
1935
+ this._xOffset = '';
1938
1936
  this._width = '';
1939
1937
  this._height = '';
1938
+ this._isDisposed = false;
1940
1939
  }
1941
1940
  attach(overlayRef) {
1942
1941
  const config = overlayRef.getConfig();
@@ -1965,9 +1964,8 @@ class GlobalPositionStrategy {
1965
1964
  * @param value New left offset.
1966
1965
  */
1967
1966
  left(value = '') {
1968
- this._rightOffset = '';
1969
- this._leftOffset = value;
1970
- this._justifyContent = 'flex-start';
1967
+ this._xOffset = value;
1968
+ this._xPosition = 'left';
1971
1969
  return this;
1972
1970
  }
1973
1971
  /**
@@ -1985,9 +1983,28 @@ class GlobalPositionStrategy {
1985
1983
  * @param value New right offset.
1986
1984
  */
1987
1985
  right(value = '') {
1988
- this._leftOffset = '';
1989
- this._rightOffset = value;
1990
- this._justifyContent = 'flex-end';
1986
+ this._xOffset = value;
1987
+ this._xPosition = 'right';
1988
+ return this;
1989
+ }
1990
+ /**
1991
+ * Sets the overlay to the start of the viewport, depending on the overlay direction.
1992
+ * This will be to the left in LTR layouts and to the right in RTL.
1993
+ * @param offset Offset from the edge of the screen.
1994
+ */
1995
+ start(value = '') {
1996
+ this._xOffset = value;
1997
+ this._xPosition = 'start';
1998
+ return this;
1999
+ }
2000
+ /**
2001
+ * Sets the overlay to the end of the viewport, depending on the overlay direction.
2002
+ * This will be to the right in LTR layouts and to the left in RTL.
2003
+ * @param offset Offset from the edge of the screen.
2004
+ */
2005
+ end(value = '') {
2006
+ this._xOffset = value;
2007
+ this._xPosition = 'end';
1991
2008
  return this;
1992
2009
  }
1993
2010
  /**
@@ -2028,7 +2045,7 @@ class GlobalPositionStrategy {
2028
2045
  */
2029
2046
  centerHorizontally(offset = '') {
2030
2047
  this.left(offset);
2031
- this._justifyContent = 'center';
2048
+ this._xPosition = 'center';
2032
2049
  return this;
2033
2050
  }
2034
2051
  /**
@@ -2061,32 +2078,48 @@ class GlobalPositionStrategy {
2061
2078
  (!maxWidth || maxWidth === '100%' || maxWidth === '100vw');
2062
2079
  const shouldBeFlushVertically = (height === '100%' || height === '100vh') &&
2063
2080
  (!maxHeight || maxHeight === '100%' || maxHeight === '100vh');
2064
- styles.position = this._cssPosition;
2065
- styles.marginLeft = shouldBeFlushHorizontally ? '0' : this._leftOffset;
2066
- styles.marginTop = shouldBeFlushVertically ? '0' : this._topOffset;
2067
- styles.marginBottom = this._bottomOffset;
2068
- styles.marginRight = this._rightOffset;
2081
+ const xPosition = this._xPosition;
2082
+ const xOffset = this._xOffset;
2083
+ const isRtl = this._overlayRef.getConfig().direction === 'rtl';
2084
+ let marginLeft = '';
2085
+ let marginRight = '';
2086
+ let justifyContent = '';
2069
2087
  if (shouldBeFlushHorizontally) {
2070
- parentStyles.justifyContent = 'flex-start';
2071
- }
2072
- else if (this._justifyContent === 'center') {
2073
- parentStyles.justifyContent = 'center';
2074
- }
2075
- else if (this._overlayRef.getConfig().direction === 'rtl') {
2076
- // In RTL the browser will invert `flex-start` and `flex-end` automatically, but we
2077
- // don't want that because our positioning is explicitly `left` and `right`, hence
2078
- // why we do another inversion to ensure that the overlay stays in the same position.
2079
- // TODO: reconsider this if we add `start` and `end` methods.
2080
- if (this._justifyContent === 'flex-start') {
2081
- parentStyles.justifyContent = 'flex-end';
2088
+ justifyContent = 'flex-start';
2089
+ }
2090
+ else if (xPosition === 'center') {
2091
+ justifyContent = 'center';
2092
+ if (isRtl) {
2093
+ marginRight = xOffset;
2082
2094
  }
2083
- else if (this._justifyContent === 'flex-end') {
2084
- parentStyles.justifyContent = 'flex-start';
2095
+ else {
2096
+ marginLeft = xOffset;
2085
2097
  }
2086
2098
  }
2087
- else {
2088
- parentStyles.justifyContent = this._justifyContent;
2099
+ else if (isRtl) {
2100
+ if (xPosition === 'left' || xPosition === 'end') {
2101
+ justifyContent = 'flex-end';
2102
+ marginLeft = xOffset;
2103
+ }
2104
+ else if (xPosition === 'right' || xPosition === 'start') {
2105
+ justifyContent = 'flex-start';
2106
+ marginRight = xOffset;
2107
+ }
2108
+ }
2109
+ else if (xPosition === 'left' || xPosition === 'start') {
2110
+ justifyContent = 'flex-start';
2111
+ marginLeft = xOffset;
2112
+ }
2113
+ else if (xPosition === 'right' || xPosition === 'end') {
2114
+ justifyContent = 'flex-end';
2115
+ marginRight = xOffset;
2089
2116
  }
2117
+ styles.position = this._cssPosition;
2118
+ styles.marginLeft = shouldBeFlushHorizontally ? '0' : marginLeft;
2119
+ styles.marginTop = shouldBeFlushVertically ? '0' : this._topOffset;
2120
+ styles.marginBottom = this._bottomOffset;
2121
+ styles.marginRight = shouldBeFlushHorizontally ? '0' : marginRight;
2122
+ parentStyles.justifyContent = justifyContent;
2090
2123
  parentStyles.alignItems = shouldBeFlushVertically ? 'flex-start' : this._alignItems;
2091
2124
  }
2092
2125
  /**
@@ -2136,9 +2169,9 @@ class OverlayPositionBuilder {
2136
2169
  return new FlexibleConnectedPositionStrategy(origin, this._viewportRuler, this._document, this._platform, this._overlayContainer);
2137
2170
  }
2138
2171
  }
2139
- OverlayPositionBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayPositionBuilder, deps: [{ token: i1.ViewportRuler }, { token: DOCUMENT }, { token: i1$1.Platform }, { token: OverlayContainer }], target: i0.ɵɵFactoryTarget.Injectable });
2140
- OverlayPositionBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayPositionBuilder, providedIn: 'root' });
2141
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayPositionBuilder, decorators: [{
2172
+ OverlayPositionBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayPositionBuilder, deps: [{ token: i1.ViewportRuler }, { token: DOCUMENT }, { token: i1$1.Platform }, { token: OverlayContainer }], target: i0.ɵɵFactoryTarget.Injectable });
2173
+ OverlayPositionBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayPositionBuilder, providedIn: 'root' });
2174
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayPositionBuilder, decorators: [{
2142
2175
  type: Injectable,
2143
2176
  args: [{ providedIn: 'root' }]
2144
2177
  }], ctorParameters: function () {
@@ -2187,9 +2220,9 @@ class BaseOverlayDispatcher {
2187
2220
  }
2188
2221
  }
2189
2222
  }
2190
- BaseOverlayDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BaseOverlayDispatcher, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
2191
- BaseOverlayDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BaseOverlayDispatcher, providedIn: 'root' });
2192
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BaseOverlayDispatcher, decorators: [{
2223
+ BaseOverlayDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: BaseOverlayDispatcher, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
2224
+ BaseOverlayDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: BaseOverlayDispatcher, providedIn: 'root' });
2225
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: BaseOverlayDispatcher, decorators: [{
2193
2226
  type: Injectable,
2194
2227
  args: [{ providedIn: 'root' }]
2195
2228
  }], ctorParameters: function () {
@@ -2212,8 +2245,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
2212
2245
  * on event target and order of overlay opens.
2213
2246
  */
2214
2247
  class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
2215
- constructor(document) {
2248
+ constructor(document,
2249
+ /** @breaking-change 14.0.0 _ngZone will be required. */
2250
+ _ngZone) {
2216
2251
  super(document);
2252
+ this._ngZone = _ngZone;
2217
2253
  /** Keyboard event listener that will be attached to the body. */
2218
2254
  this._keydownListener = (event) => {
2219
2255
  const overlays = this._attachedOverlays;
@@ -2225,7 +2261,14 @@ class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
2225
2261
  // because we don't want overlays that don't handle keyboard events to block the ones below
2226
2262
  // them that do.
2227
2263
  if (overlays[i]._keydownEvents.observers.length > 0) {
2228
- overlays[i]._keydownEvents.next(event);
2264
+ const keydownEvents = overlays[i]._keydownEvents;
2265
+ /** @breaking-change 14.0.0 _ngZone will be required. */
2266
+ if (this._ngZone) {
2267
+ this._ngZone.run(() => keydownEvents.next(event));
2268
+ }
2269
+ else {
2270
+ keydownEvents.next(event);
2271
+ }
2229
2272
  break;
2230
2273
  }
2231
2274
  }
@@ -2236,7 +2279,13 @@ class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
2236
2279
  super.add(overlayRef);
2237
2280
  // Lazily start dispatcher once first overlay is added
2238
2281
  if (!this._isAttached) {
2239
- this._document.body.addEventListener('keydown', this._keydownListener);
2282
+ /** @breaking-change 14.0.0 _ngZone will be required. */
2283
+ if (this._ngZone) {
2284
+ this._ngZone.runOutsideAngular(() => this._document.body.addEventListener('keydown', this._keydownListener));
2285
+ }
2286
+ else {
2287
+ this._document.body.addEventListener('keydown', this._keydownListener);
2288
+ }
2240
2289
  this._isAttached = true;
2241
2290
  }
2242
2291
  }
@@ -2248,15 +2297,17 @@ class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
2248
2297
  }
2249
2298
  }
2250
2299
  }
2251
- OverlayKeyboardDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayKeyboardDispatcher, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
2252
- OverlayKeyboardDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayKeyboardDispatcher, providedIn: 'root' });
2253
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayKeyboardDispatcher, decorators: [{
2300
+ OverlayKeyboardDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayKeyboardDispatcher, deps: [{ token: DOCUMENT }, { token: i0.NgZone, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2301
+ OverlayKeyboardDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayKeyboardDispatcher, providedIn: 'root' });
2302
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayKeyboardDispatcher, decorators: [{
2254
2303
  type: Injectable,
2255
2304
  args: [{ providedIn: 'root' }]
2256
2305
  }], ctorParameters: function () {
2257
2306
  return [{ type: undefined, decorators: [{
2258
2307
  type: Inject,
2259
2308
  args: [DOCUMENT]
2309
+ }] }, { type: i0.NgZone, decorators: [{
2310
+ type: Optional
2260
2311
  }] }];
2261
2312
  } });
2262
2313
 
@@ -2273,9 +2324,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
2273
2324
  * on event target and order of overlay opens.
2274
2325
  */
2275
2326
  class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
2276
- constructor(document, _platform) {
2327
+ constructor(document, _platform,
2328
+ /** @breaking-change 14.0.0 _ngZone will be required. */
2329
+ _ngZone) {
2277
2330
  super(document);
2278
2331
  this._platform = _platform;
2332
+ this._ngZone = _ngZone;
2279
2333
  this._cursorStyleIsSet = false;
2280
2334
  /** Store pointerdown event target to track origin of click. */
2281
2335
  this._pointerDownListener = (event) => {
@@ -2316,7 +2370,14 @@ class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
2316
2370
  overlayRef.overlayElement.contains(origin)) {
2317
2371
  break;
2318
2372
  }
2319
- overlayRef._outsidePointerEvents.next(event);
2373
+ const outsidePointerEvents = overlayRef._outsidePointerEvents;
2374
+ /** @breaking-change 14.0.0 _ngZone will be required. */
2375
+ if (this._ngZone) {
2376
+ this._ngZone.run(() => outsidePointerEvents.next(event));
2377
+ }
2378
+ else {
2379
+ outsidePointerEvents.next(event);
2380
+ }
2320
2381
  }
2321
2382
  };
2322
2383
  }
@@ -2331,10 +2392,13 @@ class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
2331
2392
  // https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html
2332
2393
  if (!this._isAttached) {
2333
2394
  const body = this._document.body;
2334
- body.addEventListener('pointerdown', this._pointerDownListener, true);
2335
- body.addEventListener('click', this._clickListener, true);
2336
- body.addEventListener('auxclick', this._clickListener, true);
2337
- body.addEventListener('contextmenu', this._clickListener, true);
2395
+ /** @breaking-change 14.0.0 _ngZone will be required. */
2396
+ if (this._ngZone) {
2397
+ this._ngZone.runOutsideAngular(() => this._addEventListeners(body));
2398
+ }
2399
+ else {
2400
+ this._addEventListeners(body);
2401
+ }
2338
2402
  // click event is not fired on iOS. To make element "clickable" we are
2339
2403
  // setting the cursor to pointer
2340
2404
  if (this._platform.IOS && !this._cursorStyleIsSet) {
@@ -2360,17 +2424,25 @@ class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
2360
2424
  this._isAttached = false;
2361
2425
  }
2362
2426
  }
2427
+ _addEventListeners(body) {
2428
+ body.addEventListener('pointerdown', this._pointerDownListener, true);
2429
+ body.addEventListener('click', this._clickListener, true);
2430
+ body.addEventListener('auxclick', this._clickListener, true);
2431
+ body.addEventListener('contextmenu', this._clickListener, true);
2432
+ }
2363
2433
  }
2364
- OverlayOutsideClickDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayOutsideClickDispatcher, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
2365
- OverlayOutsideClickDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayOutsideClickDispatcher, providedIn: 'root' });
2366
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayOutsideClickDispatcher, decorators: [{
2434
+ OverlayOutsideClickDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayOutsideClickDispatcher, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }, { token: i0.NgZone, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2435
+ OverlayOutsideClickDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayOutsideClickDispatcher, providedIn: 'root' });
2436
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayOutsideClickDispatcher, decorators: [{
2367
2437
  type: Injectable,
2368
2438
  args: [{ providedIn: 'root' }]
2369
2439
  }], ctorParameters: function () {
2370
2440
  return [{ type: undefined, decorators: [{
2371
2441
  type: Inject,
2372
2442
  args: [DOCUMENT]
2373
- }] }, { type: i1$1.Platform }];
2443
+ }] }, { type: i1$1.Platform }, { type: i0.NgZone, decorators: [{
2444
+ type: Optional
2445
+ }] }];
2374
2446
  } });
2375
2447
 
2376
2448
  /** Next overlay unique ID. */
@@ -2457,9 +2529,9 @@ class Overlay {
2457
2529
  return new DomPortalOutlet(pane, this._componentFactoryResolver, this._appRef, this._injector, this._document);
2458
2530
  }
2459
2531
  }
2460
- Overlay.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: Overlay, deps: [{ token: ScrollStrategyOptions }, { token: OverlayContainer }, { token: i0.ComponentFactoryResolver }, { token: OverlayPositionBuilder }, { token: OverlayKeyboardDispatcher }, { token: i0.Injector }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i5.Directionality }, { token: i6.Location }, { token: OverlayOutsideClickDispatcher }], target: i0.ɵɵFactoryTarget.Injectable });
2461
- Overlay.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: Overlay });
2462
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: Overlay, decorators: [{
2532
+ Overlay.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: Overlay, deps: [{ token: ScrollStrategyOptions }, { token: OverlayContainer }, { token: i0.ComponentFactoryResolver }, { token: OverlayPositionBuilder }, { token: OverlayKeyboardDispatcher }, { token: i0.Injector }, { token: i0.NgZone }, { token: DOCUMENT }, { token: i5.Directionality }, { token: i6.Location }, { token: OverlayOutsideClickDispatcher }], target: i0.ɵɵFactoryTarget.Injectable });
2533
+ Overlay.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: Overlay });
2534
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: Overlay, decorators: [{
2463
2535
  type: Injectable
2464
2536
  }], ctorParameters: function () {
2465
2537
  return [{ type: ScrollStrategyOptions }, { type: OverlayContainer }, { type: i0.ComponentFactoryResolver }, { type: OverlayPositionBuilder }, { type: OverlayKeyboardDispatcher }, { type: i0.Injector }, { type: i0.NgZone }, { type: undefined, decorators: [{
@@ -2508,9 +2580,9 @@ class CdkOverlayOrigin {
2508
2580
  this.elementRef = elementRef;
2509
2581
  }
2510
2582
  }
2511
- CdkOverlayOrigin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CdkOverlayOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2512
- CdkOverlayOrigin.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"], ngImport: i0 });
2513
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CdkOverlayOrigin, decorators: [{
2583
+ CdkOverlayOrigin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: CdkOverlayOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2584
+ CdkOverlayOrigin.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.5", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"], ngImport: i0 });
2585
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: CdkOverlayOrigin, decorators: [{
2514
2586
  type: Directive,
2515
2587
  args: [{
2516
2588
  selector: '[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]',
@@ -2775,9 +2847,9 @@ class CdkConnectedOverlay {
2775
2847
  this._positionSubscription.unsubscribe();
2776
2848
  }
2777
2849
  }
2778
- CdkConnectedOverlay.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CdkConnectedOverlay, deps: [{ token: Overlay }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY }, { token: i5.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2779
- CdkConnectedOverlay.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: { origin: ["cdkConnectedOverlayOrigin", "origin"], positions: ["cdkConnectedOverlayPositions", "positions"], positionStrategy: ["cdkConnectedOverlayPositionStrategy", "positionStrategy"], offsetX: ["cdkConnectedOverlayOffsetX", "offsetX"], offsetY: ["cdkConnectedOverlayOffsetY", "offsetY"], width: ["cdkConnectedOverlayWidth", "width"], height: ["cdkConnectedOverlayHeight", "height"], minWidth: ["cdkConnectedOverlayMinWidth", "minWidth"], minHeight: ["cdkConnectedOverlayMinHeight", "minHeight"], backdropClass: ["cdkConnectedOverlayBackdropClass", "backdropClass"], panelClass: ["cdkConnectedOverlayPanelClass", "panelClass"], viewportMargin: ["cdkConnectedOverlayViewportMargin", "viewportMargin"], scrollStrategy: ["cdkConnectedOverlayScrollStrategy", "scrollStrategy"], open: ["cdkConnectedOverlayOpen", "open"], disableClose: ["cdkConnectedOverlayDisableClose", "disableClose"], transformOriginSelector: ["cdkConnectedOverlayTransformOriginOn", "transformOriginSelector"], hasBackdrop: ["cdkConnectedOverlayHasBackdrop", "hasBackdrop"], lockPosition: ["cdkConnectedOverlayLockPosition", "lockPosition"], flexibleDimensions: ["cdkConnectedOverlayFlexibleDimensions", "flexibleDimensions"], growAfterOpen: ["cdkConnectedOverlayGrowAfterOpen", "growAfterOpen"], push: ["cdkConnectedOverlayPush", "push"] }, outputs: { backdropClick: "backdropClick", positionChange: "positionChange", attach: "attach", detach: "detach", overlayKeydown: "overlayKeydown", overlayOutsideClick: "overlayOutsideClick" }, exportAs: ["cdkConnectedOverlay"], usesOnChanges: true, ngImport: i0 });
2780
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CdkConnectedOverlay, decorators: [{
2850
+ CdkConnectedOverlay.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: CdkConnectedOverlay, deps: [{ token: Overlay }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY }, { token: i5.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
2851
+ CdkConnectedOverlay.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.5", type: CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: { origin: ["cdkConnectedOverlayOrigin", "origin"], positions: ["cdkConnectedOverlayPositions", "positions"], positionStrategy: ["cdkConnectedOverlayPositionStrategy", "positionStrategy"], offsetX: ["cdkConnectedOverlayOffsetX", "offsetX"], offsetY: ["cdkConnectedOverlayOffsetY", "offsetY"], width: ["cdkConnectedOverlayWidth", "width"], height: ["cdkConnectedOverlayHeight", "height"], minWidth: ["cdkConnectedOverlayMinWidth", "minWidth"], minHeight: ["cdkConnectedOverlayMinHeight", "minHeight"], backdropClass: ["cdkConnectedOverlayBackdropClass", "backdropClass"], panelClass: ["cdkConnectedOverlayPanelClass", "panelClass"], viewportMargin: ["cdkConnectedOverlayViewportMargin", "viewportMargin"], scrollStrategy: ["cdkConnectedOverlayScrollStrategy", "scrollStrategy"], open: ["cdkConnectedOverlayOpen", "open"], disableClose: ["cdkConnectedOverlayDisableClose", "disableClose"], transformOriginSelector: ["cdkConnectedOverlayTransformOriginOn", "transformOriginSelector"], hasBackdrop: ["cdkConnectedOverlayHasBackdrop", "hasBackdrop"], lockPosition: ["cdkConnectedOverlayLockPosition", "lockPosition"], flexibleDimensions: ["cdkConnectedOverlayFlexibleDimensions", "flexibleDimensions"], growAfterOpen: ["cdkConnectedOverlayGrowAfterOpen", "growAfterOpen"], push: ["cdkConnectedOverlayPush", "push"] }, outputs: { backdropClick: "backdropClick", positionChange: "positionChange", attach: "attach", detach: "detach", overlayKeydown: "overlayKeydown", overlayOutsideClick: "overlayOutsideClick" }, exportAs: ["cdkConnectedOverlay"], usesOnChanges: true, ngImport: i0 });
2852
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: CdkConnectedOverlay, decorators: [{
2781
2853
  type: Directive,
2782
2854
  args: [{
2783
2855
  selector: '[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]',
@@ -2886,10 +2958,10 @@ const CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER = {
2886
2958
  */
2887
2959
  class OverlayModule {
2888
2960
  }
2889
- OverlayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2890
- OverlayModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayModule, declarations: [CdkConnectedOverlay, CdkOverlayOrigin], imports: [BidiModule, PortalModule, ScrollingModule], exports: [CdkConnectedOverlay, CdkOverlayOrigin, ScrollingModule] });
2891
- OverlayModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayModule, providers: [Overlay, CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER], imports: [[BidiModule, PortalModule, ScrollingModule], ScrollingModule] });
2892
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayModule, decorators: [{
2961
+ OverlayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2962
+ OverlayModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayModule, declarations: [CdkConnectedOverlay, CdkOverlayOrigin], imports: [BidiModule, PortalModule, ScrollingModule], exports: [CdkConnectedOverlay, CdkOverlayOrigin, ScrollingModule] });
2963
+ OverlayModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayModule, providers: [Overlay, CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER], imports: [[BidiModule, PortalModule, ScrollingModule], ScrollingModule] });
2964
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayModule, decorators: [{
2893
2965
  type: NgModule,
2894
2966
  args: [{
2895
2967
  imports: [BidiModule, PortalModule, ScrollingModule],
@@ -2985,9 +3057,9 @@ class FullscreenOverlayContainer extends OverlayContainer {
2985
3057
  null);
2986
3058
  }
2987
3059
  }
2988
- FullscreenOverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: FullscreenOverlayContainer, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
2989
- FullscreenOverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: FullscreenOverlayContainer, providedIn: 'root' });
2990
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: FullscreenOverlayContainer, decorators: [{
3060
+ FullscreenOverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: FullscreenOverlayContainer, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
3061
+ FullscreenOverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: FullscreenOverlayContainer, providedIn: 'root' });
3062
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: FullscreenOverlayContainer, decorators: [{
2991
3063
  type: Injectable,
2992
3064
  args: [{ providedIn: 'root' }]
2993
3065
  }], ctorParameters: function () {