@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, Optional, ElementRef, 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, _getEventTarget, _isTestEnvironment } from '@angular/cdk/platform';
@@ -319,9 +319,9 @@ class ScrollStrategyOptions {
319
319
  this._document = document;
320
320
  }
321
321
  }
322
- 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 });
323
- ScrollStrategyOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ScrollStrategyOptions, providedIn: 'root' });
324
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: ScrollStrategyOptions, decorators: [{
322
+ 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 });
323
+ ScrollStrategyOptions.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ScrollStrategyOptions, providedIn: 'root' });
324
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: ScrollStrategyOptions, decorators: [{
325
325
  type: Injectable,
326
326
  args: [{ providedIn: 'root' }]
327
327
  }], ctorParameters: function () { return [{ type: i1.ScrollDispatcher }, { type: i1.ViewportRuler }, { type: i0.NgZone }, { type: undefined, decorators: [{
@@ -508,9 +508,9 @@ class BaseOverlayDispatcher {
508
508
  }
509
509
  }
510
510
  }
511
- BaseOverlayDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BaseOverlayDispatcher, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
512
- BaseOverlayDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BaseOverlayDispatcher, providedIn: 'root' });
513
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: BaseOverlayDispatcher, decorators: [{
511
+ 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 });
512
+ BaseOverlayDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: BaseOverlayDispatcher, providedIn: 'root' });
513
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: BaseOverlayDispatcher, decorators: [{
514
514
  type: Injectable,
515
515
  args: [{ providedIn: 'root' }]
516
516
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -531,8 +531,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
531
531
  * on event target and order of overlay opens.
532
532
  */
533
533
  class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
534
- constructor(document) {
534
+ constructor(document,
535
+ /** @breaking-change 14.0.0 _ngZone will be required. */
536
+ _ngZone) {
535
537
  super(document);
538
+ this._ngZone = _ngZone;
536
539
  /** Keyboard event listener that will be attached to the body. */
537
540
  this._keydownListener = (event) => {
538
541
  const overlays = this._attachedOverlays;
@@ -544,7 +547,14 @@ class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
544
547
  // because we don't want overlays that don't handle keyboard events to block the ones below
545
548
  // them that do.
546
549
  if (overlays[i]._keydownEvents.observers.length > 0) {
547
- overlays[i]._keydownEvents.next(event);
550
+ const keydownEvents = overlays[i]._keydownEvents;
551
+ /** @breaking-change 14.0.0 _ngZone will be required. */
552
+ if (this._ngZone) {
553
+ this._ngZone.run(() => keydownEvents.next(event));
554
+ }
555
+ else {
556
+ keydownEvents.next(event);
557
+ }
548
558
  break;
549
559
  }
550
560
  }
@@ -555,7 +565,13 @@ class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
555
565
  super.add(overlayRef);
556
566
  // Lazily start dispatcher once first overlay is added
557
567
  if (!this._isAttached) {
558
- this._document.body.addEventListener('keydown', this._keydownListener);
568
+ /** @breaking-change 14.0.0 _ngZone will be required. */
569
+ if (this._ngZone) {
570
+ this._ngZone.runOutsideAngular(() => this._document.body.addEventListener('keydown', this._keydownListener));
571
+ }
572
+ else {
573
+ this._document.body.addEventListener('keydown', this._keydownListener);
574
+ }
559
575
  this._isAttached = true;
560
576
  }
561
577
  }
@@ -567,14 +583,16 @@ class OverlayKeyboardDispatcher extends BaseOverlayDispatcher {
567
583
  }
568
584
  }
569
585
  }
570
- OverlayKeyboardDispatcher.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayKeyboardDispatcher, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable });
571
- OverlayKeyboardDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayKeyboardDispatcher, providedIn: 'root' });
572
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayKeyboardDispatcher, decorators: [{
586
+ 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 });
587
+ OverlayKeyboardDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayKeyboardDispatcher, providedIn: 'root' });
588
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayKeyboardDispatcher, decorators: [{
573
589
  type: Injectable,
574
590
  args: [{ providedIn: 'root' }]
575
591
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
576
592
  type: Inject,
577
593
  args: [DOCUMENT]
594
+ }] }, { type: i0.NgZone, decorators: [{
595
+ type: Optional
578
596
  }] }]; } });
579
597
 
580
598
  /**
@@ -590,9 +608,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
590
608
  * on event target and order of overlay opens.
591
609
  */
592
610
  class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
593
- constructor(document, _platform) {
611
+ constructor(document, _platform,
612
+ /** @breaking-change 14.0.0 _ngZone will be required. */
613
+ _ngZone) {
594
614
  super(document);
595
615
  this._platform = _platform;
616
+ this._ngZone = _ngZone;
596
617
  this._cursorStyleIsSet = false;
597
618
  /** Store pointerdown event target to track origin of click. */
598
619
  this._pointerDownListener = (event) => {
@@ -633,7 +654,14 @@ class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
633
654
  overlayRef.overlayElement.contains(origin)) {
634
655
  break;
635
656
  }
636
- overlayRef._outsidePointerEvents.next(event);
657
+ const outsidePointerEvents = overlayRef._outsidePointerEvents;
658
+ /** @breaking-change 14.0.0 _ngZone will be required. */
659
+ if (this._ngZone) {
660
+ this._ngZone.run(() => outsidePointerEvents.next(event));
661
+ }
662
+ else {
663
+ outsidePointerEvents.next(event);
664
+ }
637
665
  }
638
666
  };
639
667
  }
@@ -648,10 +676,13 @@ class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
648
676
  // https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/HandlingEvents/HandlingEvents.html
649
677
  if (!this._isAttached) {
650
678
  const body = this._document.body;
651
- body.addEventListener('pointerdown', this._pointerDownListener, true);
652
- body.addEventListener('click', this._clickListener, true);
653
- body.addEventListener('auxclick', this._clickListener, true);
654
- body.addEventListener('contextmenu', this._clickListener, true);
679
+ /** @breaking-change 14.0.0 _ngZone will be required. */
680
+ if (this._ngZone) {
681
+ this._ngZone.runOutsideAngular(() => this._addEventListeners(body));
682
+ }
683
+ else {
684
+ this._addEventListeners(body);
685
+ }
655
686
  // click event is not fired on iOS. To make element "clickable" we are
656
687
  // setting the cursor to pointer
657
688
  if (this._platform.IOS && !this._cursorStyleIsSet) {
@@ -677,16 +708,24 @@ class OverlayOutsideClickDispatcher extends BaseOverlayDispatcher {
677
708
  this._isAttached = false;
678
709
  }
679
710
  }
711
+ _addEventListeners(body) {
712
+ body.addEventListener('pointerdown', this._pointerDownListener, true);
713
+ body.addEventListener('click', this._clickListener, true);
714
+ body.addEventListener('auxclick', this._clickListener, true);
715
+ body.addEventListener('contextmenu', this._clickListener, true);
716
+ }
680
717
  }
681
- 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 });
682
- OverlayOutsideClickDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayOutsideClickDispatcher, providedIn: 'root' });
683
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayOutsideClickDispatcher, decorators: [{
718
+ 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 });
719
+ OverlayOutsideClickDispatcher.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayOutsideClickDispatcher, providedIn: 'root' });
720
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayOutsideClickDispatcher, decorators: [{
684
721
  type: Injectable,
685
722
  args: [{ providedIn: 'root' }]
686
723
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
687
724
  type: Inject,
688
725
  args: [DOCUMENT]
689
- }] }, { type: i1$1.Platform }]; } });
726
+ }] }, { type: i1$1.Platform }, { type: i0.NgZone, decorators: [{
727
+ type: Optional
728
+ }] }]; } });
690
729
 
691
730
  /**
692
731
  * @license
@@ -754,9 +793,9 @@ class OverlayContainer {
754
793
  this._containerElement = container;
755
794
  }
756
795
  }
757
- 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 });
758
- OverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayContainer, providedIn: 'root' });
759
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayContainer, decorators: [{
796
+ 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 });
797
+ OverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayContainer, providedIn: 'root' });
798
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayContainer, decorators: [{
760
799
  type: Injectable,
761
800
  args: [{ providedIn: 'root' }]
762
801
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -792,6 +831,9 @@ class OverlayRef {
792
831
  this._detachments = new Subject();
793
832
  this._locationChanges = Subscription.EMPTY;
794
833
  this._backdropClickHandler = (event) => this._backdropClick.next(event);
834
+ this._backdropTransitionendHandler = (event) => {
835
+ this._disposeBackdrop(event.target);
836
+ };
795
837
  /** Stream of keydown events dispatched to this overlay. */
796
838
  this._keydownEvents = new Subject();
797
839
  /** Stream of mouse outside events dispatched to this overlay. */
@@ -1080,22 +1122,9 @@ class OverlayRef {
1080
1122
  if (!backdropToDetach) {
1081
1123
  return;
1082
1124
  }
1083
- let timeoutId;
1084
- const finishDetach = () => {
1085
- // It may not be attached to anything in certain cases (e.g. unit tests).
1086
- if (backdropToDetach) {
1087
- backdropToDetach.removeEventListener('click', this._backdropClickHandler);
1088
- backdropToDetach.removeEventListener('transitionend', finishDetach);
1089
- this._disposeBackdrop(backdropToDetach);
1090
- }
1091
- if (this._config.backdropClass) {
1092
- this._toggleClasses(backdropToDetach, this._config.backdropClass, false);
1093
- }
1094
- clearTimeout(timeoutId);
1095
- };
1096
1125
  backdropToDetach.classList.remove('cdk-overlay-backdrop-showing');
1097
1126
  this._ngZone.runOutsideAngular(() => {
1098
- backdropToDetach.addEventListener('transitionend', finishDetach);
1127
+ backdropToDetach.addEventListener('transitionend', this._backdropTransitionendHandler);
1099
1128
  });
1100
1129
  // If the backdrop doesn't have a transition, the `transitionend` event won't fire.
1101
1130
  // In this case we make it unclickable and we try to remove it after a delay.
@@ -1103,7 +1132,10 @@ class OverlayRef {
1103
1132
  // Run this outside the Angular zone because there's nothing that Angular cares about.
1104
1133
  // If it were to run inside the Angular zone, every test that used Overlay would have to be
1105
1134
  // either async or fakeAsync.
1106
- timeoutId = this._ngZone.runOutsideAngular(() => setTimeout(finishDetach, 500));
1135
+ this._backdropTimeout = this._ngZone.runOutsideAngular(() => setTimeout(() => {
1136
+ console.log('fallback');
1137
+ this._disposeBackdrop(backdropToDetach);
1138
+ }, 500));
1107
1139
  }
1108
1140
  /** Toggles a single CSS class or an array of classes on an element. */
1109
1141
  _toggleClasses(element, cssClasses, isAdd) {
@@ -1152,6 +1184,8 @@ class OverlayRef {
1152
1184
  /** Removes a backdrop element from the DOM. */
1153
1185
  _disposeBackdrop(backdrop) {
1154
1186
  if (backdrop) {
1187
+ backdrop.removeEventListener('click', this._backdropClickHandler);
1188
+ backdrop.removeEventListener('transitionend', this._backdropTransitionendHandler);
1155
1189
  backdrop.remove();
1156
1190
  // It is possible that a new portal has been attached to this overlay since we started
1157
1191
  // removing the backdrop. If that is the case, only clear the backdrop reference if it
@@ -1160,6 +1194,10 @@ class OverlayRef {
1160
1194
  this._backdropElement = null;
1161
1195
  }
1162
1196
  }
1197
+ if (this._backdropTimeout) {
1198
+ clearTimeout(this._backdropTimeout);
1199
+ this._backdropTimeout = undefined;
1200
+ }
1163
1201
  }
1164
1202
  }
1165
1203
 
@@ -2151,12 +2189,12 @@ class GlobalPositionStrategy {
2151
2189
  this._cssPosition = 'static';
2152
2190
  this._topOffset = '';
2153
2191
  this._bottomOffset = '';
2154
- this._leftOffset = '';
2155
- this._rightOffset = '';
2156
2192
  this._alignItems = '';
2157
- this._justifyContent = '';
2193
+ this._xPosition = '';
2194
+ this._xOffset = '';
2158
2195
  this._width = '';
2159
2196
  this._height = '';
2197
+ this._isDisposed = false;
2160
2198
  }
2161
2199
  attach(overlayRef) {
2162
2200
  const config = overlayRef.getConfig();
@@ -2185,9 +2223,8 @@ class GlobalPositionStrategy {
2185
2223
  * @param value New left offset.
2186
2224
  */
2187
2225
  left(value = '') {
2188
- this._rightOffset = '';
2189
- this._leftOffset = value;
2190
- this._justifyContent = 'flex-start';
2226
+ this._xOffset = value;
2227
+ this._xPosition = 'left';
2191
2228
  return this;
2192
2229
  }
2193
2230
  /**
@@ -2205,9 +2242,28 @@ class GlobalPositionStrategy {
2205
2242
  * @param value New right offset.
2206
2243
  */
2207
2244
  right(value = '') {
2208
- this._leftOffset = '';
2209
- this._rightOffset = value;
2210
- this._justifyContent = 'flex-end';
2245
+ this._xOffset = value;
2246
+ this._xPosition = 'right';
2247
+ return this;
2248
+ }
2249
+ /**
2250
+ * Sets the overlay to the start of the viewport, depending on the overlay direction.
2251
+ * This will be to the left in LTR layouts and to the right in RTL.
2252
+ * @param offset Offset from the edge of the screen.
2253
+ */
2254
+ start(value = '') {
2255
+ this._xOffset = value;
2256
+ this._xPosition = 'start';
2257
+ return this;
2258
+ }
2259
+ /**
2260
+ * Sets the overlay to the end of the viewport, depending on the overlay direction.
2261
+ * This will be to the right in LTR layouts and to the left in RTL.
2262
+ * @param offset Offset from the edge of the screen.
2263
+ */
2264
+ end(value = '') {
2265
+ this._xOffset = value;
2266
+ this._xPosition = 'end';
2211
2267
  return this;
2212
2268
  }
2213
2269
  /**
@@ -2248,7 +2304,7 @@ class GlobalPositionStrategy {
2248
2304
  */
2249
2305
  centerHorizontally(offset = '') {
2250
2306
  this.left(offset);
2251
- this._justifyContent = 'center';
2307
+ this._xPosition = 'center';
2252
2308
  return this;
2253
2309
  }
2254
2310
  /**
@@ -2281,32 +2337,48 @@ class GlobalPositionStrategy {
2281
2337
  (!maxWidth || maxWidth === '100%' || maxWidth === '100vw');
2282
2338
  const shouldBeFlushVertically = (height === '100%' || height === '100vh') &&
2283
2339
  (!maxHeight || maxHeight === '100%' || maxHeight === '100vh');
2284
- styles.position = this._cssPosition;
2285
- styles.marginLeft = shouldBeFlushHorizontally ? '0' : this._leftOffset;
2286
- styles.marginTop = shouldBeFlushVertically ? '0' : this._topOffset;
2287
- styles.marginBottom = this._bottomOffset;
2288
- styles.marginRight = this._rightOffset;
2340
+ const xPosition = this._xPosition;
2341
+ const xOffset = this._xOffset;
2342
+ const isRtl = this._overlayRef.getConfig().direction === 'rtl';
2343
+ let marginLeft = '';
2344
+ let marginRight = '';
2345
+ let justifyContent = '';
2289
2346
  if (shouldBeFlushHorizontally) {
2290
- parentStyles.justifyContent = 'flex-start';
2291
- }
2292
- else if (this._justifyContent === 'center') {
2293
- parentStyles.justifyContent = 'center';
2294
- }
2295
- else if (this._overlayRef.getConfig().direction === 'rtl') {
2296
- // In RTL the browser will invert `flex-start` and `flex-end` automatically, but we
2297
- // don't want that because our positioning is explicitly `left` and `right`, hence
2298
- // why we do another inversion to ensure that the overlay stays in the same position.
2299
- // TODO: reconsider this if we add `start` and `end` methods.
2300
- if (this._justifyContent === 'flex-start') {
2301
- parentStyles.justifyContent = 'flex-end';
2347
+ justifyContent = 'flex-start';
2348
+ }
2349
+ else if (xPosition === 'center') {
2350
+ justifyContent = 'center';
2351
+ if (isRtl) {
2352
+ marginRight = xOffset;
2302
2353
  }
2303
- else if (this._justifyContent === 'flex-end') {
2304
- parentStyles.justifyContent = 'flex-start';
2354
+ else {
2355
+ marginLeft = xOffset;
2305
2356
  }
2306
2357
  }
2307
- else {
2308
- parentStyles.justifyContent = this._justifyContent;
2358
+ else if (isRtl) {
2359
+ if (xPosition === 'left' || xPosition === 'end') {
2360
+ justifyContent = 'flex-end';
2361
+ marginLeft = xOffset;
2362
+ }
2363
+ else if (xPosition === 'right' || xPosition === 'start') {
2364
+ justifyContent = 'flex-start';
2365
+ marginRight = xOffset;
2366
+ }
2309
2367
  }
2368
+ else if (xPosition === 'left' || xPosition === 'start') {
2369
+ justifyContent = 'flex-start';
2370
+ marginLeft = xOffset;
2371
+ }
2372
+ else if (xPosition === 'right' || xPosition === 'end') {
2373
+ justifyContent = 'flex-end';
2374
+ marginRight = xOffset;
2375
+ }
2376
+ styles.position = this._cssPosition;
2377
+ styles.marginLeft = shouldBeFlushHorizontally ? '0' : marginLeft;
2378
+ styles.marginTop = shouldBeFlushVertically ? '0' : this._topOffset;
2379
+ styles.marginBottom = this._bottomOffset;
2380
+ styles.marginRight = shouldBeFlushHorizontally ? '0' : marginRight;
2381
+ parentStyles.justifyContent = justifyContent;
2310
2382
  parentStyles.alignItems = shouldBeFlushVertically ? 'flex-start' : this._alignItems;
2311
2383
  }
2312
2384
  /**
@@ -2363,9 +2435,9 @@ class OverlayPositionBuilder {
2363
2435
  return new FlexibleConnectedPositionStrategy(origin, this._viewportRuler, this._document, this._platform, this._overlayContainer);
2364
2436
  }
2365
2437
  }
2366
- 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 });
2367
- OverlayPositionBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayPositionBuilder, providedIn: 'root' });
2368
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayPositionBuilder, decorators: [{
2438
+ 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 });
2439
+ OverlayPositionBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayPositionBuilder, providedIn: 'root' });
2440
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayPositionBuilder, decorators: [{
2369
2441
  type: Injectable,
2370
2442
  args: [{ providedIn: 'root' }]
2371
2443
  }], ctorParameters: function () { return [{ type: i1.ViewportRuler }, { type: undefined, decorators: [{
@@ -2464,9 +2536,9 @@ class Overlay {
2464
2536
  return new DomPortalOutlet(pane, this._componentFactoryResolver, this._appRef, this._injector, this._document);
2465
2537
  }
2466
2538
  }
2467
- 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 });
2468
- Overlay.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: Overlay });
2469
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: Overlay, decorators: [{
2539
+ 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 });
2540
+ Overlay.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: Overlay });
2541
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: Overlay, decorators: [{
2470
2542
  type: Injectable
2471
2543
  }], ctorParameters: function () { return [{ type: ScrollStrategyOptions }, { type: OverlayContainer }, { type: i0.ComponentFactoryResolver }, { type: OverlayPositionBuilder }, { type: OverlayKeyboardDispatcher }, { type: i0.Injector }, { type: i0.NgZone }, { type: undefined, decorators: [{
2472
2544
  type: Inject,
@@ -2520,9 +2592,9 @@ class CdkOverlayOrigin {
2520
2592
  this.elementRef = elementRef;
2521
2593
  }
2522
2594
  }
2523
- CdkOverlayOrigin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CdkOverlayOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2524
- 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 });
2525
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CdkOverlayOrigin, decorators: [{
2595
+ 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 });
2596
+ 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 });
2597
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: CdkOverlayOrigin, decorators: [{
2526
2598
  type: Directive,
2527
2599
  args: [{
2528
2600
  selector: '[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]',
@@ -2787,9 +2859,9 @@ class CdkConnectedOverlay {
2787
2859
  this._positionSubscription.unsubscribe();
2788
2860
  }
2789
2861
  }
2790
- 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 });
2791
- 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 });
2792
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: CdkConnectedOverlay, decorators: [{
2862
+ 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 });
2863
+ 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 });
2864
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: CdkConnectedOverlay, decorators: [{
2793
2865
  type: Directive,
2794
2866
  args: [{
2795
2867
  selector: '[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]',
@@ -2896,10 +2968,10 @@ const CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER = {
2896
2968
  */
2897
2969
  class OverlayModule {
2898
2970
  }
2899
- OverlayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2900
- 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] });
2901
- 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] });
2902
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: OverlayModule, decorators: [{
2971
+ OverlayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2972
+ 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] });
2973
+ 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] });
2974
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: OverlayModule, decorators: [{
2903
2975
  type: NgModule,
2904
2976
  args: [{
2905
2977
  imports: [BidiModule, PortalModule, ScrollingModule],
@@ -2995,9 +3067,9 @@ class FullscreenOverlayContainer extends OverlayContainer {
2995
3067
  null);
2996
3068
  }
2997
3069
  }
2998
- 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 });
2999
- FullscreenOverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: FullscreenOverlayContainer, providedIn: 'root' });
3000
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: FullscreenOverlayContainer, decorators: [{
3070
+ 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 });
3071
+ FullscreenOverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: FullscreenOverlayContainer, providedIn: 'root' });
3072
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.5", ngImport: i0, type: FullscreenOverlayContainer, decorators: [{
3001
3073
  type: Injectable,
3002
3074
  args: [{ providedIn: 'root' }]
3003
3075
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{