@angular/cdk 14.0.0-next.1 → 14.0.0-next.12

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 (357) hide show
  1. package/a11y/_index.scss +11 -0
  2. package/a11y/a11y-module.d.ts +2 -3
  3. package/a11y/focus-monitor/focus-monitor.d.ts +1 -1
  4. package/a11y/focus-trap/focus-trap.d.ts +1 -1
  5. package/a11y/live-announcer/live-announcer.d.ts +5 -1
  6. package/a11y-prebuilt.css +1 -1
  7. package/accordion/accordion-item.d.ts +1 -1
  8. package/accordion/accordion.d.ts +1 -1
  9. package/bidi/dir.d.ts +1 -1
  10. package/clipboard/copy-to-clipboard.d.ts +1 -1
  11. package/dialog/dialog-config.d.ts +115 -0
  12. package/dialog/dialog-container.d.ts +95 -0
  13. package/dialog/dialog-injectors.d.ts +24 -0
  14. package/dialog/dialog-module.d.ts +10 -0
  15. package/dialog/dialog-ref.d.ts +64 -0
  16. package/dialog/dialog.d.ts +103 -0
  17. package/dialog/dialog_public_index.d.ts +4 -0
  18. package/dialog/index.d.ts +8 -0
  19. package/dialog/package.json +9 -0
  20. package/dialog/public-api.d.ts +13 -0
  21. package/drag-drop/directives/drag-handle.d.ts +1 -1
  22. package/drag-drop/directives/drag-placeholder.d.ts +1 -1
  23. package/drag-drop/directives/drag-preview.d.ts +1 -1
  24. package/drag-drop/directives/drag.d.ts +8 -9
  25. package/drag-drop/directives/drop-list-group.d.ts +1 -1
  26. package/drag-drop/directives/drop-list.d.ts +1 -1
  27. package/drag-drop/drag-events.d.ts +8 -0
  28. package/drag-drop/drag-ref.d.ts +11 -1
  29. package/drag-drop/drop-list-ref.d.ts +5 -1
  30. package/drag-drop/parent-position-tracker.d.ts +11 -3
  31. package/esm2020/a11y/a11y-module.mjs +6 -7
  32. package/esm2020/a11y/aria-describer/aria-describer.mjs +4 -4
  33. package/esm2020/a11y/focus-monitor/focus-monitor.mjs +13 -11
  34. package/esm2020/a11y/focus-trap/configurable-focus-trap-factory.mjs +4 -4
  35. package/esm2020/a11y/focus-trap/focus-trap-manager.mjs +4 -4
  36. package/esm2020/a11y/focus-trap/focus-trap.mjs +7 -7
  37. package/esm2020/a11y/high-contrast-mode/high-contrast-mode-detector.mjs +7 -12
  38. package/esm2020/a11y/input-modality/input-modality-detector.mjs +4 -4
  39. package/esm2020/a11y/interactivity-checker/interactivity-checker.mjs +4 -4
  40. package/esm2020/a11y/live-announcer/live-announcer.mjs +26 -18
  41. package/esm2020/accordion/accordion-item.mjs +4 -4
  42. package/esm2020/accordion/accordion-module.mjs +5 -5
  43. package/esm2020/accordion/accordion.mjs +4 -4
  44. package/esm2020/bidi/bidi-module.mjs +5 -5
  45. package/esm2020/bidi/dir.mjs +4 -4
  46. package/esm2020/bidi/directionality.mjs +4 -4
  47. package/esm2020/clipboard/clipboard-module.mjs +5 -5
  48. package/esm2020/clipboard/clipboard.mjs +4 -4
  49. package/esm2020/clipboard/copy-to-clipboard.mjs +4 -4
  50. package/esm2020/collections/unique-selection-dispatcher.mjs +4 -4
  51. package/esm2020/dialog/dialog-config.mjs +58 -0
  52. package/esm2020/dialog/dialog-container.mjs +265 -0
  53. package/esm2020/dialog/dialog-injectors.mjs +26 -0
  54. package/esm2020/dialog/dialog-module.mjs +42 -0
  55. package/esm2020/dialog/dialog-ref.mjs +76 -0
  56. package/esm2020/dialog/dialog.mjs +285 -0
  57. package/esm2020/dialog/dialog_public_index.mjs +5 -0
  58. package/esm2020/dialog/index.mjs +9 -0
  59. package/esm2020/dialog/public-api.mjs +14 -0
  60. package/esm2020/drag-drop/directives/drag-handle.mjs +4 -4
  61. package/esm2020/drag-drop/directives/drag-placeholder.mjs +4 -4
  62. package/esm2020/drag-drop/directives/drag-preview.mjs +4 -4
  63. package/esm2020/drag-drop/directives/drag.mjs +33 -24
  64. package/esm2020/drag-drop/directives/drop-list-group.mjs +4 -4
  65. package/esm2020/drag-drop/directives/drop-list.mjs +14 -13
  66. package/esm2020/drag-drop/drag-drop-module.mjs +5 -5
  67. package/esm2020/drag-drop/drag-drop-registry.mjs +4 -4
  68. package/esm2020/drag-drop/drag-drop.mjs +4 -4
  69. package/esm2020/drag-drop/drag-events.mjs +1 -1
  70. package/esm2020/drag-drop/drag-ref.mjs +48 -24
  71. package/esm2020/drag-drop/drop-list-ref.mjs +7 -3
  72. package/esm2020/drag-drop/parent-position-tracker.mjs +13 -5
  73. package/esm2020/layout/breakpoints-observer.mjs +4 -4
  74. package/esm2020/layout/layout-module.mjs +5 -5
  75. package/esm2020/layout/media-matcher.mjs +4 -4
  76. package/esm2020/menu/context-menu-trigger.mjs +227 -0
  77. package/esm2020/menu/index.mjs +9 -0
  78. package/esm2020/menu/menu-aim.mjs +204 -0
  79. package/esm2020/menu/menu-bar.mjs +159 -0
  80. package/esm2020/menu/menu-base.mjs +203 -0
  81. package/esm2020/menu/menu-errors.mjs +22 -0
  82. package/esm2020/menu/menu-group.mjs +30 -0
  83. package/esm2020/menu/menu-interface.mjs +11 -0
  84. package/esm2020/menu/menu-item-checkbox.mjs +48 -0
  85. package/esm2020/menu/menu-item-radio.mjs +114 -0
  86. package/esm2020/menu/menu-item-selectable.mjs +42 -0
  87. package/esm2020/menu/menu-item.mjs +289 -0
  88. package/esm2020/menu/menu-module.mjs +62 -0
  89. package/esm2020/menu/menu-stack.mjs +156 -0
  90. package/esm2020/menu/menu-trigger-base.mjs +114 -0
  91. package/esm2020/menu/menu-trigger.mjs +302 -0
  92. package/esm2020/menu/menu.mjs +168 -0
  93. package/esm2020/menu/menu_public_index.mjs +5 -0
  94. package/esm2020/menu/pointer-focus-tracker.mjs +51 -0
  95. package/esm2020/menu/public-api.mjs +24 -0
  96. package/esm2020/observers/observe-content.mjs +14 -14
  97. package/esm2020/overlay/dispatchers/base-overlay-dispatcher.mjs +4 -4
  98. package/esm2020/overlay/dispatchers/overlay-keyboard-dispatcher.mjs +26 -8
  99. package/esm2020/overlay/dispatchers/overlay-outside-click-dispatcher.mjs +33 -12
  100. package/esm2020/overlay/fullscreen-overlay-container.mjs +4 -4
  101. package/esm2020/overlay/overlay-container.mjs +4 -4
  102. package/esm2020/overlay/overlay-directives.mjs +7 -7
  103. package/esm2020/overlay/overlay-module.mjs +5 -5
  104. package/esm2020/overlay/overlay-ref.mjs +27 -20
  105. package/esm2020/overlay/overlay.mjs +14 -8
  106. package/esm2020/overlay/position/flexible-connected-position-strategy.mjs +13 -1
  107. package/esm2020/overlay/position/global-position-strategy.mjs +64 -30
  108. package/esm2020/overlay/position/overlay-position-builder.mjs +4 -4
  109. package/esm2020/overlay/public-api.mjs +2 -2
  110. package/esm2020/overlay/scroll/scroll-strategy-options.mjs +4 -4
  111. package/esm2020/platform/platform-module.mjs +5 -5
  112. package/esm2020/platform/platform.mjs +4 -4
  113. package/esm2020/portal/dom-portal-outlet.mjs +29 -5
  114. package/esm2020/portal/portal-directives.mjs +20 -18
  115. package/esm2020/portal/portal.mjs +12 -3
  116. package/esm2020/scrolling/fixed-size-virtual-scroll.mjs +4 -4
  117. package/esm2020/scrolling/scroll-dispatcher.mjs +4 -4
  118. package/esm2020/scrolling/scrollable.mjs +4 -4
  119. package/esm2020/scrolling/scrolling-module.mjs +10 -11
  120. package/esm2020/scrolling/viewport-ruler.mjs +4 -4
  121. package/esm2020/scrolling/virtual-for-of.mjs +7 -5
  122. package/esm2020/scrolling/virtual-scroll-viewport.mjs +8 -6
  123. package/esm2020/stepper/step-header.mjs +4 -4
  124. package/esm2020/stepper/step-label.mjs +4 -4
  125. package/esm2020/stepper/stepper-button.mjs +7 -7
  126. package/esm2020/stepper/stepper-module.mjs +5 -5
  127. package/esm2020/stepper/stepper.mjs +9 -22
  128. package/esm2020/table/cell.mjs +22 -22
  129. package/esm2020/table/coalesced-style-scheduler.mjs +4 -4
  130. package/esm2020/table/row.mjs +28 -28
  131. package/esm2020/table/table-module.mjs +5 -5
  132. package/esm2020/table/table.mjs +21 -21
  133. package/esm2020/table/text-column.mjs +5 -5
  134. package/esm2020/testing/component-harness.mjs +7 -1
  135. package/esm2020/testing/harness-environment.mjs +12 -1
  136. package/esm2020/testing/public-api.mjs +2 -1
  137. package/esm2020/testing/selenium-webdriver/selenium-web-driver-element.mjs +8 -3
  138. package/esm2020/testing/test-element-errors.mjs +15 -0
  139. package/esm2020/testing/test-element.mjs +1 -1
  140. package/esm2020/testing/testbed/fake-events/type-in-element.mjs +13 -4
  141. package/esm2020/testing/testbed/unit-test-element.mjs +21 -5
  142. package/esm2020/text-field/autofill.mjs +7 -7
  143. package/esm2020/text-field/autosize.mjs +4 -4
  144. package/esm2020/text-field/text-field-module.mjs +5 -7
  145. package/esm2020/tree/nested-node.mjs +4 -4
  146. package/esm2020/tree/node.mjs +4 -4
  147. package/esm2020/tree/outlet.mjs +4 -4
  148. package/esm2020/tree/padding.mjs +4 -4
  149. package/esm2020/tree/toggle.mjs +4 -4
  150. package/esm2020/tree/tree-module.mjs +5 -5
  151. package/esm2020/tree/tree.mjs +7 -7
  152. package/esm2020/version.mjs +1 -1
  153. package/fesm2015/a11y.mjs +71 -66
  154. package/fesm2015/a11y.mjs.map +1 -1
  155. package/fesm2015/accordion.mjs +10 -10
  156. package/fesm2015/accordion.mjs.map +1 -1
  157. package/fesm2015/bidi.mjs +10 -10
  158. package/fesm2015/bidi.mjs.map +1 -1
  159. package/fesm2015/cdk.mjs +1 -1
  160. package/fesm2015/cdk.mjs.map +1 -1
  161. package/fesm2015/clipboard.mjs +10 -10
  162. package/fesm2015/clipboard.mjs.map +1 -1
  163. package/fesm2015/coercion.mjs.map +1 -1
  164. package/fesm2015/collections.mjs +3 -3
  165. package/fesm2015/collections.mjs.map +1 -1
  166. package/fesm2015/dialog.mjs +749 -0
  167. package/fesm2015/dialog.mjs.map +1 -0
  168. package/fesm2015/drag-drop.mjs +133 -86
  169. package/fesm2015/drag-drop.mjs.map +1 -1
  170. package/fesm2015/keycodes.mjs.map +1 -1
  171. package/fesm2015/layout.mjs +10 -10
  172. package/fesm2015/layout.mjs.map +1 -1
  173. package/fesm2015/menu.mjs +2131 -0
  174. package/fesm2015/menu.mjs.map +1 -0
  175. package/fesm2015/observers.mjs +13 -13
  176. package/fesm2015/observers.mjs.map +1 -1
  177. package/fesm2015/overlay.mjs +197 -99
  178. package/fesm2015/overlay.mjs.map +1 -1
  179. package/fesm2015/platform.mjs +7 -7
  180. package/fesm2015/platform.mjs.map +1 -1
  181. package/fesm2015/portal.mjs +58 -24
  182. package/fesm2015/portal.mjs.map +1 -1
  183. package/fesm2015/scrolling.mjs +35 -31
  184. package/fesm2015/scrolling.mjs.map +1 -1
  185. package/fesm2015/stepper.mjs +24 -37
  186. package/fesm2015/stepper.mjs.map +1 -1
  187. package/fesm2015/table.mjs +79 -79
  188. package/fesm2015/table.mjs.map +1 -1
  189. package/fesm2015/testing/selenium-webdriver.mjs +7 -2
  190. package/fesm2015/testing/selenium-webdriver.mjs.map +1 -1
  191. package/fesm2015/testing/testbed.mjs +32 -8
  192. package/fesm2015/testing/testbed.mjs.map +1 -1
  193. package/fesm2015/testing.mjs +39 -1
  194. package/fesm2015/testing.mjs.map +1 -1
  195. package/fesm2015/text-field.mjs +14 -15
  196. package/fesm2015/text-field.mjs.map +1 -1
  197. package/fesm2015/tree.mjs +25 -25
  198. package/fesm2015/tree.mjs.map +1 -1
  199. package/fesm2020/a11y.mjs +70 -65
  200. package/fesm2020/a11y.mjs.map +1 -1
  201. package/fesm2020/accordion.mjs +10 -10
  202. package/fesm2020/accordion.mjs.map +1 -1
  203. package/fesm2020/bidi.mjs +10 -10
  204. package/fesm2020/bidi.mjs.map +1 -1
  205. package/fesm2020/cdk.mjs +1 -1
  206. package/fesm2020/cdk.mjs.map +1 -1
  207. package/fesm2020/clipboard.mjs +10 -10
  208. package/fesm2020/clipboard.mjs.map +1 -1
  209. package/fesm2020/coercion.mjs.map +1 -1
  210. package/fesm2020/collections.mjs +3 -3
  211. package/fesm2020/collections.mjs.map +1 -1
  212. package/fesm2020/dialog.mjs +753 -0
  213. package/fesm2020/dialog.mjs.map +1 -0
  214. package/fesm2020/drag-drop.mjs +132 -86
  215. package/fesm2020/drag-drop.mjs.map +1 -1
  216. package/fesm2020/keycodes.mjs.map +1 -1
  217. package/fesm2020/layout.mjs +10 -10
  218. package/fesm2020/layout.mjs.map +1 -1
  219. package/fesm2020/menu.mjs +2104 -0
  220. package/fesm2020/menu.mjs.map +1 -0
  221. package/fesm2020/observers.mjs +13 -13
  222. package/fesm2020/observers.mjs.map +1 -1
  223. package/fesm2020/overlay.mjs +197 -99
  224. package/fesm2020/overlay.mjs.map +1 -1
  225. package/fesm2020/platform.mjs +7 -7
  226. package/fesm2020/platform.mjs.map +1 -1
  227. package/fesm2020/portal.mjs +58 -24
  228. package/fesm2020/portal.mjs.map +1 -1
  229. package/fesm2020/scrolling.mjs +35 -31
  230. package/fesm2020/scrolling.mjs.map +1 -1
  231. package/fesm2020/stepper.mjs +24 -37
  232. package/fesm2020/stepper.mjs.map +1 -1
  233. package/fesm2020/table.mjs +79 -79
  234. package/fesm2020/table.mjs.map +1 -1
  235. package/fesm2020/testing/selenium-webdriver.mjs +7 -2
  236. package/fesm2020/testing/selenium-webdriver.mjs.map +1 -1
  237. package/fesm2020/testing/testbed.mjs +32 -8
  238. package/fesm2020/testing/testbed.mjs.map +1 -1
  239. package/fesm2020/testing.mjs +33 -1
  240. package/fesm2020/testing.mjs.map +1 -1
  241. package/fesm2020/text-field.mjs +14 -15
  242. package/fesm2020/text-field.mjs.map +1 -1
  243. package/fesm2020/tree.mjs +25 -25
  244. package/fesm2020/tree.mjs.map +1 -1
  245. package/menu/context-menu-trigger.d.ts +98 -0
  246. package/menu/index.d.ts +8 -0
  247. package/menu/menu-aim.d.ts +107 -0
  248. package/menu/menu-bar.d.ts +52 -0
  249. package/menu/menu-base.d.ts +104 -0
  250. package/menu/menu-errors.d.ts +17 -0
  251. package/menu/menu-group.d.ts +8 -0
  252. package/menu/menu-interface.d.ts +25 -0
  253. package/menu/menu-item-checkbox.d.ts +18 -0
  254. package/menu/menu-item-radio.d.ts +59 -0
  255. package/menu/menu-item-selectable.d.ts +21 -0
  256. package/menu/menu-item.d.ts +140 -0
  257. package/menu/menu-module.d.ts +17 -0
  258. package/menu/menu-stack.d.ts +122 -0
  259. package/menu/menu-trigger-base.d.ts +77 -0
  260. package/menu/menu-trigger.d.ts +104 -0
  261. package/menu/menu.d.ts +60 -0
  262. package/menu/menu_public_index.d.ts +4 -0
  263. package/menu/package.json +9 -0
  264. package/menu/pointer-focus-tracker.d.ts +47 -0
  265. package/menu/public-api.d.ts +23 -0
  266. package/observers/observe-content.d.ts +1 -1
  267. package/overlay/_index.scss +11 -1
  268. package/overlay/dispatchers/overlay-keyboard-dispatcher.d.ts +7 -2
  269. package/overlay/dispatchers/overlay-outside-click-dispatcher.d.ts +8 -2
  270. package/overlay/overlay-directives.d.ts +2 -2
  271. package/overlay/overlay-ref.d.ts +4 -1
  272. package/overlay/overlay.d.ts +3 -2
  273. package/overlay/position/flexible-connected-position-strategy.d.ts +2 -0
  274. package/overlay/position/global-position-strategy.d.ts +14 -3
  275. package/overlay/public-api.d.ts +1 -1
  276. package/overlay-prebuilt.css +1 -1
  277. package/package.json +19 -3
  278. package/portal/dom-portal-outlet.d.ts +17 -6
  279. package/portal/portal-directives.d.ts +4 -4
  280. package/portal/portal.d.ts +12 -2
  281. package/schematics/collection.json +2 -1
  282. package/schematics/index.js +6 -2
  283. package/schematics/index.mjs +6 -2
  284. package/schematics/migration.json +5 -0
  285. package/schematics/ng-add/index.js +1 -1
  286. package/schematics/ng-add/index.mjs +1 -1
  287. package/schematics/ng-generate/drag-drop/index.js +5 -14
  288. package/schematics/ng-generate/drag-drop/index.mjs +5 -14
  289. package/schematics/ng-generate/drag-drop/schema.json +1 -1
  290. package/schematics/ng-update/data/constructor-checks.js +7 -1
  291. package/schematics/ng-update/data/constructor-checks.mjs +7 -1
  292. package/schematics/ng-update/data/index.js +6 -2
  293. package/schematics/ng-update/data/index.mjs +6 -2
  294. package/schematics/ng-update/devkit-migration-rule.js +5 -14
  295. package/schematics/ng-update/devkit-migration-rule.mjs +5 -14
  296. package/schematics/ng-update/devkit-migration.js +1 -1
  297. package/schematics/ng-update/devkit-migration.mjs +1 -1
  298. package/schematics/ng-update/html-parsing/elements.js +2 -3
  299. package/schematics/ng-update/html-parsing/elements.mjs +2 -3
  300. package/schematics/ng-update/index.d.ts +2 -0
  301. package/schematics/ng-update/index.js +7 -2
  302. package/schematics/ng-update/index.mjs +7 -2
  303. package/schematics/ng-update/migrations/symbol-removal.js +2 -3
  304. package/schematics/ng-update/migrations/symbol-removal.mjs +2 -3
  305. package/schematics/ng-update/public-api.js +6 -2
  306. package/schematics/ng-update/public-api.mjs +6 -2
  307. package/schematics/tsconfig.json +2 -10
  308. package/schematics/update-tool/public-api.js +6 -2
  309. package/schematics/update-tool/public-api.mjs +6 -2
  310. package/schematics/update-tool/target-version.d.ts +2 -1
  311. package/schematics/update-tool/target-version.js +2 -1
  312. package/schematics/update-tool/target-version.mjs +2 -1
  313. package/schematics/utils/ast.js +11 -22
  314. package/schematics/utils/ast.mjs +11 -22
  315. package/schematics/utils/build-component.js +10 -15
  316. package/schematics/utils/build-component.mjs +10 -15
  317. package/schematics/utils/get-project.d.ts +1 -1
  318. package/schematics/utils/get-project.js +7 -2
  319. package/schematics/utils/get-project.mjs +7 -2
  320. package/schematics/utils/index.js +6 -2
  321. package/schematics/utils/index.mjs +6 -2
  322. package/schematics/utils/project-index-file.js +2 -2
  323. package/schematics/utils/project-index-file.mjs +2 -2
  324. package/schematics/utils/project-targets.js +3 -4
  325. package/schematics/utils/project-targets.mjs +3 -4
  326. package/schematics/utils/project-tsconfig-paths.js +16 -28
  327. package/schematics/utils/project-tsconfig-paths.mjs +16 -28
  328. package/scrolling/fixed-size-virtual-scroll.d.ts +1 -1
  329. package/scrolling/scrollable.d.ts +1 -1
  330. package/scrolling/scrolling-module.d.ts +1 -2
  331. package/scrolling/virtual-for-of.d.ts +1 -1
  332. package/scrolling/virtual-scroll-viewport.d.ts +1 -1
  333. package/stepper/step-header.d.ts +1 -1
  334. package/stepper/step-label.d.ts +1 -1
  335. package/stepper/stepper-button.d.ts +2 -2
  336. package/stepper/stepper.d.ts +5 -14
  337. package/table/cell.d.ts +7 -7
  338. package/table/row.d.ts +9 -9
  339. package/table/table.d.ts +8 -12
  340. package/table/text-column.d.ts +2 -2
  341. package/testing/component-harness.d.ts +18 -0
  342. package/testing/harness-environment.d.ts +2 -0
  343. package/testing/public-api.d.ts +1 -0
  344. package/testing/test-element-errors.d.ts +12 -0
  345. package/testing/test-element.d.ts +4 -2
  346. package/testing/testbed/fake-events/type-in-element.d.ts +2 -2
  347. package/testing/testbed/unit-test-element.d.ts +4 -1
  348. package/text-field/autofill.d.ts +1 -1
  349. package/text-field/autosize.d.ts +1 -1
  350. package/text-field/text-field-module.d.ts +1 -2
  351. package/text-field-prebuilt.css +1 -1
  352. package/tree/nested-node.d.ts +1 -1
  353. package/tree/node.d.ts +1 -1
  354. package/tree/outlet.d.ts +1 -1
  355. package/tree/padding.d.ts +1 -1
  356. package/tree/toggle.d.ts +1 -1
  357. package/tree/tree.d.ts +2 -2
@@ -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, ANIMATION_MODULE_TYPE, 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.14", 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.14", ngImport: i0, type: ScrollStrategyOptions, providedIn: 'root' });
324
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", 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.14", 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.14", ngImport: i0, type: BaseOverlayDispatcher, providedIn: 'root' });
513
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", 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.14", 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.14", ngImport: i0, type: OverlayKeyboardDispatcher, providedIn: 'root' });
588
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", 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.14", 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.14", ngImport: i0, type: OverlayOutsideClickDispatcher, providedIn: 'root' });
720
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", 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.14", 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.14", ngImport: i0, type: OverlayContainer, providedIn: 'root' });
798
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: OverlayContainer, decorators: [{
760
799
  type: Injectable,
761
800
  args: [{ providedIn: 'root' }]
762
801
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -776,7 +815,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
776
815
  * Used to manipulate or dispose of said overlay.
777
816
  */
778
817
  class OverlayRef {
779
- constructor(_portalOutlet, _host, _pane, _config, _ngZone, _keyboardDispatcher, _document, _location, _outsideClickDispatcher) {
818
+ constructor(_portalOutlet, _host, _pane, _config, _ngZone, _keyboardDispatcher, _document, _location, _outsideClickDispatcher, _animationsDisabled = false) {
780
819
  this._portalOutlet = _portalOutlet;
781
820
  this._host = _host;
782
821
  this._pane = _pane;
@@ -786,12 +825,16 @@ class OverlayRef {
786
825
  this._document = _document;
787
826
  this._location = _location;
788
827
  this._outsideClickDispatcher = _outsideClickDispatcher;
828
+ this._animationsDisabled = _animationsDisabled;
789
829
  this._backdropElement = null;
790
830
  this._backdropClick = new Subject();
791
831
  this._attachments = new Subject();
792
832
  this._detachments = new Subject();
793
833
  this._locationChanges = Subscription.EMPTY;
794
834
  this._backdropClickHandler = (event) => this._backdropClick.next(event);
835
+ this._backdropTransitionendHandler = (event) => {
836
+ this._disposeBackdrop(event.target);
837
+ };
795
838
  /** Stream of keydown events dispatched to this overlay. */
796
839
  this._keydownEvents = new Subject();
797
840
  /** Stream of mouse outside events dispatched to this overlay. */
@@ -826,11 +869,12 @@ class OverlayRef {
826
869
  * @returns The portal attachment result.
827
870
  */
828
871
  attach(portal) {
829
- let attachResult = this._portalOutlet.attach(portal);
830
- // Update the pane element with the given configuration.
872
+ // Insert the host into the DOM before attaching the portal, otherwise
873
+ // the animations module will skip animations on repeat attachments.
831
874
  if (!this._host.parentElement && this._previousHostParent) {
832
875
  this._previousHostParent.appendChild(this._host);
833
876
  }
877
+ const attachResult = this._portalOutlet.attach(portal);
834
878
  if (this._positionStrategy) {
835
879
  this._positionStrategy.attach(this);
836
880
  }
@@ -1039,6 +1083,9 @@ class OverlayRef {
1039
1083
  const showingClass = 'cdk-overlay-backdrop-showing';
1040
1084
  this._backdropElement = this._document.createElement('div');
1041
1085
  this._backdropElement.classList.add('cdk-overlay-backdrop');
1086
+ if (this._animationsDisabled) {
1087
+ this._backdropElement.classList.add('cdk-overlay-backdrop-noop-animation');
1088
+ }
1042
1089
  if (this._config.backdropClass) {
1043
1090
  this._toggleClasses(this._backdropElement, this._config.backdropClass, true);
1044
1091
  }
@@ -1049,7 +1096,7 @@ class OverlayRef {
1049
1096
  // action desired when such a click occurs (usually closing the overlay).
1050
1097
  this._backdropElement.addEventListener('click', this._backdropClickHandler);
1051
1098
  // Add class to fade-in the backdrop after one frame.
1052
- if (typeof requestAnimationFrame !== 'undefined') {
1099
+ if (!this._animationsDisabled && typeof requestAnimationFrame !== 'undefined') {
1053
1100
  this._ngZone.runOutsideAngular(() => {
1054
1101
  requestAnimationFrame(() => {
1055
1102
  if (this._backdropElement) {
@@ -1080,22 +1127,13 @@ class OverlayRef {
1080
1127
  if (!backdropToDetach) {
1081
1128
  return;
1082
1129
  }
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
- };
1130
+ if (this._animationsDisabled) {
1131
+ this._disposeBackdrop(backdropToDetach);
1132
+ return;
1133
+ }
1096
1134
  backdropToDetach.classList.remove('cdk-overlay-backdrop-showing');
1097
1135
  this._ngZone.runOutsideAngular(() => {
1098
- backdropToDetach.addEventListener('transitionend', finishDetach);
1136
+ backdropToDetach.addEventListener('transitionend', this._backdropTransitionendHandler);
1099
1137
  });
1100
1138
  // If the backdrop doesn't have a transition, the `transitionend` event won't fire.
1101
1139
  // In this case we make it unclickable and we try to remove it after a delay.
@@ -1103,7 +1141,9 @@ class OverlayRef {
1103
1141
  // Run this outside the Angular zone because there's nothing that Angular cares about.
1104
1142
  // If it were to run inside the Angular zone, every test that used Overlay would have to be
1105
1143
  // either async or fakeAsync.
1106
- timeoutId = this._ngZone.runOutsideAngular(() => setTimeout(finishDetach, 500));
1144
+ this._backdropTimeout = this._ngZone.runOutsideAngular(() => setTimeout(() => {
1145
+ this._disposeBackdrop(backdropToDetach);
1146
+ }, 500));
1107
1147
  }
1108
1148
  /** Toggles a single CSS class or an array of classes on an element. */
1109
1149
  _toggleClasses(element, cssClasses, isAdd) {
@@ -1152,6 +1192,8 @@ class OverlayRef {
1152
1192
  /** Removes a backdrop element from the DOM. */
1153
1193
  _disposeBackdrop(backdrop) {
1154
1194
  if (backdrop) {
1195
+ backdrop.removeEventListener('click', this._backdropClickHandler);
1196
+ backdrop.removeEventListener('transitionend', this._backdropTransitionendHandler);
1155
1197
  backdrop.remove();
1156
1198
  // It is possible that a new portal has been attached to this overlay since we started
1157
1199
  // removing the backdrop. If that is the case, only clear the backdrop reference if it
@@ -1160,6 +1202,10 @@ class OverlayRef {
1160
1202
  this._backdropElement = null;
1161
1203
  }
1162
1204
  }
1205
+ if (this._backdropTimeout) {
1206
+ clearTimeout(this._backdropTimeout);
1207
+ this._backdropTimeout = undefined;
1208
+ }
1163
1209
  }
1164
1210
  }
1165
1211
 
@@ -2130,6 +2176,18 @@ function getRoundedBoundingClientRect(clientRect) {
2130
2176
  height: Math.floor(clientRect.height),
2131
2177
  };
2132
2178
  }
2179
+ const STANDARD_DROPDOWN_BELOW_POSITIONS = [
2180
+ { originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top' },
2181
+ { originX: 'start', originY: 'top', overlayX: 'start', overlayY: 'bottom' },
2182
+ { originX: 'end', originY: 'bottom', overlayX: 'end', overlayY: 'top' },
2183
+ { originX: 'end', originY: 'top', overlayX: 'end', overlayY: 'bottom' },
2184
+ ];
2185
+ const STANDARD_DROPDOWN_ADJACENT_POSITIONS = [
2186
+ { originX: 'end', originY: 'top', overlayX: 'start', overlayY: 'top' },
2187
+ { originX: 'end', originY: 'bottom', overlayX: 'start', overlayY: 'bottom' },
2188
+ { originX: 'start', originY: 'top', overlayX: 'end', overlayY: 'top' },
2189
+ { originX: 'start', originY: 'bottom', overlayX: 'end', overlayY: 'bottom' },
2190
+ ];
2133
2191
 
2134
2192
  /**
2135
2193
  * @license
@@ -2151,12 +2209,12 @@ class GlobalPositionStrategy {
2151
2209
  this._cssPosition = 'static';
2152
2210
  this._topOffset = '';
2153
2211
  this._bottomOffset = '';
2154
- this._leftOffset = '';
2155
- this._rightOffset = '';
2156
2212
  this._alignItems = '';
2157
- this._justifyContent = '';
2213
+ this._xPosition = '';
2214
+ this._xOffset = '';
2158
2215
  this._width = '';
2159
2216
  this._height = '';
2217
+ this._isDisposed = false;
2160
2218
  }
2161
2219
  attach(overlayRef) {
2162
2220
  const config = overlayRef.getConfig();
@@ -2185,9 +2243,8 @@ class GlobalPositionStrategy {
2185
2243
  * @param value New left offset.
2186
2244
  */
2187
2245
  left(value = '') {
2188
- this._rightOffset = '';
2189
- this._leftOffset = value;
2190
- this._justifyContent = 'flex-start';
2246
+ this._xOffset = value;
2247
+ this._xPosition = 'left';
2191
2248
  return this;
2192
2249
  }
2193
2250
  /**
@@ -2205,9 +2262,28 @@ class GlobalPositionStrategy {
2205
2262
  * @param value New right offset.
2206
2263
  */
2207
2264
  right(value = '') {
2208
- this._leftOffset = '';
2209
- this._rightOffset = value;
2210
- this._justifyContent = 'flex-end';
2265
+ this._xOffset = value;
2266
+ this._xPosition = 'right';
2267
+ return this;
2268
+ }
2269
+ /**
2270
+ * Sets the overlay to the start of the viewport, depending on the overlay direction.
2271
+ * This will be to the left in LTR layouts and to the right in RTL.
2272
+ * @param offset Offset from the edge of the screen.
2273
+ */
2274
+ start(value = '') {
2275
+ this._xOffset = value;
2276
+ this._xPosition = 'start';
2277
+ return this;
2278
+ }
2279
+ /**
2280
+ * Sets the overlay to the end of the viewport, depending on the overlay direction.
2281
+ * This will be to the right in LTR layouts and to the left in RTL.
2282
+ * @param offset Offset from the edge of the screen.
2283
+ */
2284
+ end(value = '') {
2285
+ this._xOffset = value;
2286
+ this._xPosition = 'end';
2211
2287
  return this;
2212
2288
  }
2213
2289
  /**
@@ -2248,7 +2324,7 @@ class GlobalPositionStrategy {
2248
2324
  */
2249
2325
  centerHorizontally(offset = '') {
2250
2326
  this.left(offset);
2251
- this._justifyContent = 'center';
2327
+ this._xPosition = 'center';
2252
2328
  return this;
2253
2329
  }
2254
2330
  /**
@@ -2281,32 +2357,48 @@ class GlobalPositionStrategy {
2281
2357
  (!maxWidth || maxWidth === '100%' || maxWidth === '100vw');
2282
2358
  const shouldBeFlushVertically = (height === '100%' || height === '100vh') &&
2283
2359
  (!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;
2360
+ const xPosition = this._xPosition;
2361
+ const xOffset = this._xOffset;
2362
+ const isRtl = this._overlayRef.getConfig().direction === 'rtl';
2363
+ let marginLeft = '';
2364
+ let marginRight = '';
2365
+ let justifyContent = '';
2289
2366
  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';
2367
+ justifyContent = 'flex-start';
2368
+ }
2369
+ else if (xPosition === 'center') {
2370
+ justifyContent = 'center';
2371
+ if (isRtl) {
2372
+ marginRight = xOffset;
2302
2373
  }
2303
- else if (this._justifyContent === 'flex-end') {
2304
- parentStyles.justifyContent = 'flex-start';
2374
+ else {
2375
+ marginLeft = xOffset;
2305
2376
  }
2306
2377
  }
2307
- else {
2308
- parentStyles.justifyContent = this._justifyContent;
2378
+ else if (isRtl) {
2379
+ if (xPosition === 'left' || xPosition === 'end') {
2380
+ justifyContent = 'flex-end';
2381
+ marginLeft = xOffset;
2382
+ }
2383
+ else if (xPosition === 'right' || xPosition === 'start') {
2384
+ justifyContent = 'flex-start';
2385
+ marginRight = xOffset;
2386
+ }
2387
+ }
2388
+ else if (xPosition === 'left' || xPosition === 'start') {
2389
+ justifyContent = 'flex-start';
2390
+ marginLeft = xOffset;
2391
+ }
2392
+ else if (xPosition === 'right' || xPosition === 'end') {
2393
+ justifyContent = 'flex-end';
2394
+ marginRight = xOffset;
2309
2395
  }
2396
+ styles.position = this._cssPosition;
2397
+ styles.marginLeft = shouldBeFlushHorizontally ? '0' : marginLeft;
2398
+ styles.marginTop = shouldBeFlushVertically ? '0' : this._topOffset;
2399
+ styles.marginBottom = this._bottomOffset;
2400
+ styles.marginRight = shouldBeFlushHorizontally ? '0' : marginRight;
2401
+ parentStyles.justifyContent = justifyContent;
2310
2402
  parentStyles.alignItems = shouldBeFlushVertically ? 'flex-start' : this._alignItems;
2311
2403
  }
2312
2404
  /**
@@ -2363,9 +2455,9 @@ class OverlayPositionBuilder {
2363
2455
  return new FlexibleConnectedPositionStrategy(origin, this._viewportRuler, this._document, this._platform, this._overlayContainer);
2364
2456
  }
2365
2457
  }
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: [{
2458
+ OverlayPositionBuilder.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: OverlayPositionBuilder, deps: [{ token: i1.ViewportRuler }, { token: DOCUMENT }, { token: i1$1.Platform }, { token: OverlayContainer }], target: i0.ɵɵFactoryTarget.Injectable });
2459
+ OverlayPositionBuilder.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: OverlayPositionBuilder, providedIn: 'root' });
2460
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: OverlayPositionBuilder, decorators: [{
2369
2461
  type: Injectable,
2370
2462
  args: [{ providedIn: 'root' }]
2371
2463
  }], ctorParameters: function () { return [{ type: i1.ViewportRuler }, { type: undefined, decorators: [{
@@ -2395,7 +2487,7 @@ let nextUniqueId = 0;
2395
2487
  class Overlay {
2396
2488
  constructor(
2397
2489
  /** Scrolling strategies that can be used when creating an overlay. */
2398
- scrollStrategies, _overlayContainer, _componentFactoryResolver, _positionBuilder, _keyboardDispatcher, _injector, _ngZone, _document, _directionality, _location, _outsideClickDispatcher) {
2490
+ scrollStrategies, _overlayContainer, _componentFactoryResolver, _positionBuilder, _keyboardDispatcher, _injector, _ngZone, _document, _directionality, _location, _outsideClickDispatcher, _animationsModuleType) {
2399
2491
  this.scrollStrategies = scrollStrategies;
2400
2492
  this._overlayContainer = _overlayContainer;
2401
2493
  this._componentFactoryResolver = _componentFactoryResolver;
@@ -2407,6 +2499,7 @@ class Overlay {
2407
2499
  this._directionality = _directionality;
2408
2500
  this._location = _location;
2409
2501
  this._outsideClickDispatcher = _outsideClickDispatcher;
2502
+ this._animationsModuleType = _animationsModuleType;
2410
2503
  }
2411
2504
  /**
2412
2505
  * Creates an overlay.
@@ -2419,7 +2512,7 @@ class Overlay {
2419
2512
  const portalOutlet = this._createPortalOutlet(pane);
2420
2513
  const overlayConfig = new OverlayConfig(config);
2421
2514
  overlayConfig.direction = overlayConfig.direction || this._directionality.value;
2422
- return new OverlayRef(portalOutlet, host, pane, overlayConfig, this._ngZone, this._keyboardDispatcher, this._document, this._location, this._outsideClickDispatcher);
2515
+ return new OverlayRef(portalOutlet, host, pane, overlayConfig, this._ngZone, this._keyboardDispatcher, this._document, this._location, this._outsideClickDispatcher, this._animationsModuleType === 'NoopAnimations');
2423
2516
  }
2424
2517
  /**
2425
2518
  * Gets a position builder that can be used, via fluent API,
@@ -2464,14 +2557,19 @@ class Overlay {
2464
2557
  return new DomPortalOutlet(pane, this._componentFactoryResolver, this._appRef, this._injector, this._document);
2465
2558
  }
2466
2559
  }
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: [{
2560
+ Overlay.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.14", 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 }, { token: ANIMATION_MODULE_TYPE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2561
+ Overlay.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: Overlay });
2562
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: Overlay, decorators: [{
2470
2563
  type: Injectable
2471
2564
  }], ctorParameters: function () { return [{ type: ScrollStrategyOptions }, { type: OverlayContainer }, { type: i0.ComponentFactoryResolver }, { type: OverlayPositionBuilder }, { type: OverlayKeyboardDispatcher }, { type: i0.Injector }, { type: i0.NgZone }, { type: undefined, decorators: [{
2472
2565
  type: Inject,
2473
2566
  args: [DOCUMENT]
2474
- }] }, { type: i5.Directionality }, { type: i6.Location }, { type: OverlayOutsideClickDispatcher }]; } });
2567
+ }] }, { type: i5.Directionality }, { type: i6.Location }, { type: OverlayOutsideClickDispatcher }, { type: undefined, decorators: [{
2568
+ type: Inject,
2569
+ args: [ANIMATION_MODULE_TYPE]
2570
+ }, {
2571
+ type: Optional
2572
+ }] }]; } });
2475
2573
 
2476
2574
  /**
2477
2575
  * @license
@@ -2520,9 +2618,9 @@ class CdkOverlayOrigin {
2520
2618
  this.elementRef = elementRef;
2521
2619
  }
2522
2620
  }
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: [{
2621
+ CdkOverlayOrigin.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: CdkOverlayOrigin, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
2622
+ CdkOverlayOrigin.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.14", type: CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"], ngImport: i0 });
2623
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: CdkOverlayOrigin, decorators: [{
2526
2624
  type: Directive,
2527
2625
  args: [{
2528
2626
  selector: '[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]',
@@ -2787,9 +2885,9 @@ class CdkConnectedOverlay {
2787
2885
  this._positionSubscription.unsubscribe();
2788
2886
  }
2789
2887
  }
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: [{
2888
+ CdkConnectedOverlay.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.14", 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 });
2889
+ CdkConnectedOverlay.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "14.0.0-next.14", 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 });
2890
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: CdkConnectedOverlay, decorators: [{
2793
2891
  type: Directive,
2794
2892
  args: [{
2795
2893
  selector: '[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]',
@@ -2896,10 +2994,10 @@ const CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER = {
2896
2994
  */
2897
2995
  class OverlayModule {
2898
2996
  }
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: [{
2997
+ OverlayModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: OverlayModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2998
+ OverlayModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: OverlayModule, declarations: [CdkConnectedOverlay, CdkOverlayOrigin], imports: [BidiModule, PortalModule, ScrollingModule], exports: [CdkConnectedOverlay, CdkOverlayOrigin, ScrollingModule] });
2999
+ OverlayModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: OverlayModule, providers: [Overlay, CDK_CONNECTED_OVERLAY_SCROLL_STRATEGY_PROVIDER], imports: [[BidiModule, PortalModule, ScrollingModule], ScrollingModule] });
3000
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: OverlayModule, decorators: [{
2903
3001
  type: NgModule,
2904
3002
  args: [{
2905
3003
  imports: [BidiModule, PortalModule, ScrollingModule],
@@ -2995,9 +3093,9 @@ class FullscreenOverlayContainer extends OverlayContainer {
2995
3093
  null);
2996
3094
  }
2997
3095
  }
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: [{
3096
+ FullscreenOverlayContainer.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: FullscreenOverlayContainer, deps: [{ token: DOCUMENT }, { token: i1$1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
3097
+ FullscreenOverlayContainer.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: FullscreenOverlayContainer, providedIn: 'root' });
3098
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.0-next.14", ngImport: i0, type: FullscreenOverlayContainer, decorators: [{
3001
3099
  type: Injectable,
3002
3100
  args: [{ providedIn: 'root' }]
3003
3101
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
@@ -3025,5 +3123,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
3025
3123
  * Generated bundle index. Do not edit.
3026
3124
  */
3027
3125
 
3028
- export { BlockScrollStrategy, CdkConnectedOverlay, CdkOverlayOrigin, CloseScrollStrategy, ConnectedOverlayPositionChange, ConnectionPositionPair, FlexibleConnectedPositionStrategy, FullscreenOverlayContainer, GlobalPositionStrategy, NoopScrollStrategy, Overlay, OverlayConfig, OverlayContainer, OverlayKeyboardDispatcher, OverlayModule, OverlayOutsideClickDispatcher, OverlayPositionBuilder, OverlayRef, RepositionScrollStrategy, ScrollStrategyOptions, ScrollingVisibility, validateHorizontalPosition, validateVerticalPosition };
3126
+ export { BlockScrollStrategy, CdkConnectedOverlay, CdkOverlayOrigin, CloseScrollStrategy, ConnectedOverlayPositionChange, ConnectionPositionPair, FlexibleConnectedPositionStrategy, FullscreenOverlayContainer, GlobalPositionStrategy, NoopScrollStrategy, Overlay, OverlayConfig, OverlayContainer, OverlayKeyboardDispatcher, OverlayModule, OverlayOutsideClickDispatcher, OverlayPositionBuilder, OverlayRef, RepositionScrollStrategy, STANDARD_DROPDOWN_ADJACENT_POSITIONS, STANDARD_DROPDOWN_BELOW_POSITIONS, ScrollStrategyOptions, ScrollingVisibility, validateHorizontalPosition, validateVerticalPosition };
3029
3127
  //# sourceMappingURL=overlay.mjs.map