@angular/cdk 13.0.0-rc.0 → 13.0.0-rc.1

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 (366) hide show
  1. package/esm2020/a11y/a11y-module.mjs +1 -1
  2. package/esm2020/a11y/aria-describer/aria-describer.mjs +3 -4
  3. package/esm2020/a11y/aria-describer/aria-reference.mjs +1 -1
  4. package/esm2020/a11y/fake-event-detection.mjs +6 -5
  5. package/esm2020/a11y/focus-monitor/focus-monitor.mjs +20 -16
  6. package/esm2020/a11y/focus-trap/configurable-focus-trap-factory.mjs +2 -2
  7. package/esm2020/a11y/focus-trap/configurable-focus-trap.mjs +4 -2
  8. package/esm2020/a11y/focus-trap/event-listener-inert-strategy.mjs +1 -1
  9. package/esm2020/a11y/focus-trap/focus-trap-inert-strategy.mjs +2 -2
  10. package/esm2020/a11y/focus-trap/focus-trap-manager.mjs +2 -2
  11. package/esm2020/a11y/focus-trap/focus-trap.mjs +30 -20
  12. package/esm2020/a11y/high-contrast-mode/high-contrast-mode-detector.mjs +9 -6
  13. package/esm2020/a11y/input-modality/input-modality-detector.mjs +1 -1
  14. package/esm2020/a11y/interactivity-checker/interactivity-checker.mjs +15 -13
  15. package/esm2020/a11y/key-manager/activedescendant-key-manager.mjs +1 -1
  16. package/esm2020/a11y/key-manager/list-key-manager.mjs +10 -6
  17. package/esm2020/a11y/live-announcer/live-announcer-tokens.mjs +1 -1
  18. package/esm2020/a11y/live-announcer/live-announcer.mjs +6 -6
  19. package/esm2020/accordion/accordion-item.mjs +18 -11
  20. package/esm2020/accordion/accordion-module.mjs +1 -1
  21. package/esm2020/accordion/accordion.mjs +7 -3
  22. package/esm2020/bidi/bidi-module.mjs +1 -1
  23. package/esm2020/bidi/dir-document-token.mjs +1 -1
  24. package/esm2020/bidi/dir.mjs +9 -5
  25. package/esm2020/bidi/directionality.mjs +2 -2
  26. package/esm2020/bidi/public-api.mjs +1 -1
  27. package/esm2020/clipboard/clipboard-module.mjs +1 -1
  28. package/esm2020/clipboard/clipboard.mjs +1 -1
  29. package/esm2020/clipboard/copy-to-clipboard.mjs +2 -2
  30. package/esm2020/clipboard/pending-copy.mjs +4 -3
  31. package/esm2020/collections/array-data-source.mjs +1 -1
  32. package/esm2020/collections/collection-viewer.mjs +1 -1
  33. package/esm2020/collections/dispose-view-repeater-strategy.mjs +2 -3
  34. package/esm2020/collections/recycle-view-repeater-strategy.mjs +7 -4
  35. package/esm2020/collections/selection-model.mjs +2 -2
  36. package/esm2020/collections/tree-adapter.mjs +1 -1
  37. package/esm2020/collections/unique-selection-dispatcher.mjs +1 -1
  38. package/esm2020/collections/view-repeater.mjs +2 -2
  39. package/esm2020/drag-drop/client-rect.mjs +6 -4
  40. package/esm2020/drag-drop/clone-node.mjs +1 -1
  41. package/esm2020/drag-drop/directives/assertions.mjs +2 -3
  42. package/esm2020/drag-drop/directives/config.mjs +1 -1
  43. package/esm2020/drag-drop/directives/drag-handle.mjs +5 -3
  44. package/esm2020/drag-drop/directives/drag-preview.mjs +7 -3
  45. package/esm2020/drag-drop/directives/drag.mjs +46 -37
  46. package/esm2020/drag-drop/directives/drop-list-group.mjs +4 -2
  47. package/esm2020/drag-drop/directives/drop-list.mjs +12 -11
  48. package/esm2020/drag-drop/drag-drop-module.mjs +3 -7
  49. package/esm2020/drag-drop/drag-drop-registry.mjs +6 -6
  50. package/esm2020/drag-drop/drag-drop.mjs +2 -2
  51. package/esm2020/drag-drop/drag-events.mjs +1 -1
  52. package/esm2020/drag-drop/drag-ref.mjs +56 -41
  53. package/esm2020/drag-drop/drag-styling.mjs +6 -6
  54. package/esm2020/drag-drop/drag-utils.mjs +1 -1
  55. package/esm2020/drag-drop/drop-list-ref.mjs +55 -37
  56. package/esm2020/drag-drop/parent-position-tracker.mjs +2 -2
  57. package/esm2020/drag-drop/transition-duration.mjs +3 -3
  58. package/esm2020/keycodes/keycodes.mjs +1 -1
  59. package/esm2020/layout/breakpoints-observer.mjs +3 -2
  60. package/esm2020/layout/breakpoints.mjs +1 -1
  61. package/esm2020/layout/layout-module.mjs +1 -1
  62. package/esm2020/layout/media-matcher.mjs +8 -7
  63. package/esm2020/observers/observe-content.mjs +11 -8
  64. package/esm2020/overlay/dispatchers/base-overlay-dispatcher.mjs +1 -1
  65. package/esm2020/overlay/dispatchers/overlay-keyboard-dispatcher.mjs +1 -1
  66. package/esm2020/overlay/dispatchers/overlay-outside-click-dispatcher.mjs +22 -3
  67. package/esm2020/overlay/fullscreen-overlay-container.mjs +3 -3
  68. package/esm2020/overlay/overlay-config.mjs +1 -1
  69. package/esm2020/overlay/overlay-container.mjs +2 -3
  70. package/esm2020/overlay/overlay-directives.mjs +49 -24
  71. package/esm2020/overlay/overlay-module.mjs +3 -9
  72. package/esm2020/overlay/overlay-ref.mjs +2 -4
  73. package/esm2020/overlay/overlay.mjs +1 -1
  74. package/esm2020/overlay/position/connected-position.mjs +1 -1
  75. package/esm2020/overlay/position/flexible-connected-position-strategy.mjs +26 -27
  76. package/esm2020/overlay/position/global-position-strategy.mjs +9 -3
  77. package/esm2020/overlay/position/overlay-position-builder.mjs +1 -1
  78. package/esm2020/overlay/position/scroll-clip.mjs +1 -1
  79. package/esm2020/overlay/scroll/block-scroll-strategy.mjs +1 -1
  80. package/esm2020/overlay/scroll/close-scroll-strategy.mjs +1 -1
  81. package/esm2020/overlay/scroll/index.mjs +2 -2
  82. package/esm2020/overlay/scroll/noop-scroll-strategy.mjs +1 -1
  83. package/esm2020/overlay/scroll/reposition-scroll-strategy.mjs +1 -1
  84. package/esm2020/overlay/scroll/scroll-strategy-options.mjs +1 -1
  85. package/esm2020/platform/features/input-types.mjs +1 -1
  86. package/esm2020/platform/features/passive-listeners.mjs +2 -2
  87. package/esm2020/platform/features/scrolling.mjs +1 -1
  88. package/esm2020/platform/features/shadow-dom.mjs +4 -3
  89. package/esm2020/platform/features/test-environment.mjs +3 -3
  90. package/esm2020/platform/platform-module.mjs +1 -1
  91. package/esm2020/platform/platform.mjs +15 -9
  92. package/esm2020/portal/dom-portal-outlet.mjs +3 -3
  93. package/esm2020/portal/portal-directives.mjs +26 -19
  94. package/esm2020/portal/portal-errors.mjs +1 -1
  95. package/esm2020/portal/portal-injector.mjs +1 -1
  96. package/esm2020/portal/portal.mjs +2 -2
  97. package/esm2020/scrolling/fixed-size-virtual-scroll.mjs +34 -14
  98. package/esm2020/scrolling/scroll-dispatcher.mjs +6 -7
  99. package/esm2020/scrolling/scrollable.mjs +5 -4
  100. package/esm2020/scrolling/scrolling-module.mjs +6 -21
  101. package/esm2020/scrolling/viewport-ruler.mjs +15 -9
  102. package/esm2020/scrolling/virtual-for-of.mjs +12 -16
  103. package/esm2020/scrolling/virtual-scroll-strategy.mjs +1 -1
  104. package/esm2020/scrolling/virtual-scroll-viewport.mjs +15 -11
  105. package/esm2020/stepper/step-header.mjs +1 -1
  106. package/esm2020/stepper/step-label.mjs +1 -1
  107. package/esm2020/stepper/stepper-button.mjs +3 -3
  108. package/esm2020/stepper/stepper-module.mjs +4 -16
  109. package/esm2020/stepper/stepper.mjs +24 -13
  110. package/esm2020/table/can-stick.mjs +4 -2
  111. package/esm2020/table/cell.mjs +12 -10
  112. package/esm2020/table/coalesced-style-scheduler.mjs +7 -5
  113. package/esm2020/table/row.mjs +3 -3
  114. package/esm2020/table/sticky-position-listener.mjs +1 -1
  115. package/esm2020/table/sticky-styler.mjs +26 -16
  116. package/esm2020/table/table-errors.mjs +1 -1
  117. package/esm2020/table/table-module.mjs +4 -4
  118. package/esm2020/table/table.mjs +25 -20
  119. package/esm2020/table/text-column.mjs +1 -1
  120. package/esm2020/table/tokens.mjs +1 -1
  121. package/esm2020/testing/change-detection.mjs +2 -2
  122. package/esm2020/testing/component-harness.mjs +4 -3
  123. package/esm2020/testing/element-dimensions.mjs +1 -1
  124. package/esm2020/testing/harness-environment.mjs +15 -11
  125. package/esm2020/testing/protractor/protractor-element.mjs +11 -10
  126. package/esm2020/testing/protractor/protractor-harness-environment.mjs +2 -2
  127. package/esm2020/testing/selenium-webdriver/selenium-web-driver-element.mjs +12 -11
  128. package/esm2020/testing/selenium-webdriver/selenium-web-driver-harness-environment.mjs +3 -4
  129. package/esm2020/testing/selenium-webdriver/selenium-webdriver-keys.mjs +2 -2
  130. package/esm2020/testing/test-element.mjs +1 -1
  131. package/esm2020/testing/testbed/fake-events/dispatch-events.mjs +1 -1
  132. package/esm2020/testing/testbed/fake-events/element-focus.mjs +2 -2
  133. package/esm2020/testing/testbed/fake-events/event-objects.mjs +1 -1
  134. package/esm2020/testing/testbed/fake-events/type-in-element.mjs +17 -8
  135. package/esm2020/testing/testbed/task-state-zone-interceptor.mjs +2 -2
  136. package/esm2020/testing/testbed/testbed-harness-environment.mjs +3 -3
  137. package/esm2020/testing/testbed/unit-test-element.mjs +4 -5
  138. package/esm2020/text-field/autofill.mjs +2 -2
  139. package/esm2020/text-field/autosize.mjs +19 -13
  140. package/esm2020/text-field/text-field-module.mjs +1 -1
  141. package/esm2020/tree/control/base-tree-control.mjs +4 -4
  142. package/esm2020/tree/control/flat-tree-control.mjs +1 -1
  143. package/esm2020/tree/control/nested-tree-control.mjs +2 -3
  144. package/esm2020/tree/nested-node.mjs +9 -7
  145. package/esm2020/tree/node.mjs +2 -4
  146. package/esm2020/tree/outlet.mjs +3 -3
  147. package/esm2020/tree/padding.mjs +14 -6
  148. package/esm2020/tree/toggle.mjs +7 -3
  149. package/esm2020/tree/tree.mjs +25 -13
  150. package/esm2020/version.mjs +1 -1
  151. package/fesm2015/a11y.mjs +94 -69
  152. package/fesm2015/a11y.mjs.map +1 -1
  153. package/fesm2015/accordion.mjs +23 -12
  154. package/fesm2015/accordion.mjs.map +1 -1
  155. package/fesm2015/bidi.mjs +8 -4
  156. package/fesm2015/bidi.mjs.map +1 -1
  157. package/fesm2015/cdk.mjs +1 -1
  158. package/fesm2015/cdk.mjs.map +1 -1
  159. package/fesm2015/clipboard.mjs +4 -3
  160. package/fesm2015/clipboard.mjs.map +1 -1
  161. package/fesm2015/collections.mjs +8 -6
  162. package/fesm2015/collections.mjs.map +1 -1
  163. package/fesm2015/drag-drop.mjs +198 -150
  164. package/fesm2015/drag-drop.mjs.map +1 -1
  165. package/fesm2015/keycodes.mjs.map +1 -1
  166. package/fesm2015/layout.mjs +9 -7
  167. package/fesm2015/layout.mjs.map +1 -1
  168. package/fesm2015/observers.mjs +9 -6
  169. package/fesm2015/observers.mjs.map +1 -1
  170. package/fesm2015/overlay.mjs +108 -68
  171. package/fesm2015/overlay.mjs.map +1 -1
  172. package/fesm2015/platform.mjs +20 -13
  173. package/fesm2015/platform.mjs.map +1 -1
  174. package/fesm2015/portal.mjs +27 -20
  175. package/fesm2015/portal.mjs.map +1 -1
  176. package/fesm2015/scrolling.mjs +85 -74
  177. package/fesm2015/scrolling.mjs.map +1 -1
  178. package/fesm2015/stepper.mjs +27 -28
  179. package/fesm2015/stepper.mjs.map +1 -1
  180. package/fesm2015/table.mjs +69 -48
  181. package/fesm2015/table.mjs.map +1 -1
  182. package/fesm2015/testing/protractor.mjs +11 -10
  183. package/fesm2015/testing/protractor.mjs.map +1 -1
  184. package/fesm2015/testing/selenium-webdriver.mjs +13 -13
  185. package/fesm2015/testing/selenium-webdriver.mjs.map +1 -1
  186. package/fesm2015/testing/testbed.mjs +22 -14
  187. package/fesm2015/testing/testbed.mjs.map +1 -1
  188. package/fesm2015/testing.mjs +17 -12
  189. package/fesm2015/testing.mjs.map +1 -1
  190. package/fesm2015/text-field.mjs +18 -12
  191. package/fesm2015/text-field.mjs.map +1 -1
  192. package/fesm2015/tree.mjs +55 -32
  193. package/fesm2015/tree.mjs.map +1 -1
  194. package/fesm2020/a11y.mjs +94 -69
  195. package/fesm2020/a11y.mjs.map +1 -1
  196. package/fesm2020/accordion.mjs +23 -12
  197. package/fesm2020/accordion.mjs.map +1 -1
  198. package/fesm2020/bidi.mjs +8 -4
  199. package/fesm2020/bidi.mjs.map +1 -1
  200. package/fesm2020/cdk.mjs +1 -1
  201. package/fesm2020/cdk.mjs.map +1 -1
  202. package/fesm2020/clipboard.mjs +4 -3
  203. package/fesm2020/clipboard.mjs.map +1 -1
  204. package/fesm2020/collections.mjs +8 -6
  205. package/fesm2020/collections.mjs.map +1 -1
  206. package/fesm2020/drag-drop.mjs +198 -150
  207. package/fesm2020/drag-drop.mjs.map +1 -1
  208. package/fesm2020/keycodes.mjs.map +1 -1
  209. package/fesm2020/layout.mjs +9 -7
  210. package/fesm2020/layout.mjs.map +1 -1
  211. package/fesm2020/observers.mjs +9 -6
  212. package/fesm2020/observers.mjs.map +1 -1
  213. package/fesm2020/overlay.mjs +108 -68
  214. package/fesm2020/overlay.mjs.map +1 -1
  215. package/fesm2020/platform.mjs +20 -13
  216. package/fesm2020/platform.mjs.map +1 -1
  217. package/fesm2020/portal.mjs +27 -20
  218. package/fesm2020/portal.mjs.map +1 -1
  219. package/fesm2020/scrolling.mjs +85 -74
  220. package/fesm2020/scrolling.mjs.map +1 -1
  221. package/fesm2020/stepper.mjs +27 -28
  222. package/fesm2020/stepper.mjs.map +1 -1
  223. package/fesm2020/table.mjs +69 -48
  224. package/fesm2020/table.mjs.map +1 -1
  225. package/fesm2020/testing/protractor.mjs +11 -10
  226. package/fesm2020/testing/protractor.mjs.map +1 -1
  227. package/fesm2020/testing/selenium-webdriver.mjs +13 -13
  228. package/fesm2020/testing/selenium-webdriver.mjs.map +1 -1
  229. package/fesm2020/testing/testbed.mjs +22 -14
  230. package/fesm2020/testing/testbed.mjs.map +1 -1
  231. package/fesm2020/testing.mjs +18 -13
  232. package/fesm2020/testing.mjs.map +1 -1
  233. package/fesm2020/text-field.mjs +18 -12
  234. package/fesm2020/text-field.mjs.map +1 -1
  235. package/fesm2020/tree.mjs +55 -32
  236. package/fesm2020/tree.mjs.map +1 -1
  237. package/overlay/dispatchers/overlay-outside-click-dispatcher.d.ts +3 -0
  238. package/overlay/position/flexible-connected-position-strategy.d.ts +2 -2
  239. package/overlay/scroll/index.d.ts +1 -1
  240. package/package.json +1 -1
  241. package/schematics/ng-add/index.js +2 -2
  242. package/schematics/ng-add/index.mjs +2 -2
  243. package/schematics/ng-add/package-config.js +4 -2
  244. package/schematics/ng-add/package-config.mjs +4 -2
  245. package/schematics/ng-add/schema.js +1 -1
  246. package/schematics/ng-add/schema.mjs +1 -1
  247. package/schematics/ng-generate/drag-drop/index.js +2 -2
  248. package/schematics/ng-generate/drag-drop/index.mjs +2 -2
  249. package/schematics/ng-update/data/attribute-selectors.js +7 -5
  250. package/schematics/ng-update/data/attribute-selectors.mjs +7 -5
  251. package/schematics/ng-update/data/class-names.js +13 -11
  252. package/schematics/ng-update/data/class-names.mjs +13 -11
  253. package/schematics/ng-update/data/constructor-checks.js +28 -20
  254. package/schematics/ng-update/data/constructor-checks.mjs +28 -20
  255. package/schematics/ng-update/data/css-selectors.js +2 -2
  256. package/schematics/ng-update/data/css-selectors.mjs +2 -2
  257. package/schematics/ng-update/data/element-selectors.js +2 -2
  258. package/schematics/ng-update/data/element-selectors.mjs +2 -2
  259. package/schematics/ng-update/data/input-names.js +40 -16
  260. package/schematics/ng-update/data/input-names.mjs +40 -16
  261. package/schematics/ng-update/data/method-call-checks.js +32 -18
  262. package/schematics/ng-update/data/method-call-checks.mjs +32 -18
  263. package/schematics/ng-update/data/output-names.js +8 -6
  264. package/schematics/ng-update/data/output-names.mjs +8 -6
  265. package/schematics/ng-update/data/property-names.js +40 -32
  266. package/schematics/ng-update/data/property-names.mjs +40 -32
  267. package/schematics/ng-update/devkit-migration-rule.js +4 -3
  268. package/schematics/ng-update/devkit-migration-rule.mjs +4 -3
  269. package/schematics/ng-update/devkit-migration.d.ts +1 -1
  270. package/schematics/ng-update/devkit-migration.js +1 -1
  271. package/schematics/ng-update/devkit-migration.mjs +1 -1
  272. package/schematics/ng-update/html-parsing/elements.js +1 -1
  273. package/schematics/ng-update/html-parsing/elements.mjs +1 -1
  274. package/schematics/ng-update/index.js +2 -4
  275. package/schematics/ng-update/index.mjs +2 -4
  276. package/schematics/ng-update/migrations/attribute-selectors.js +7 -3
  277. package/schematics/ng-update/migrations/attribute-selectors.mjs +7 -3
  278. package/schematics/ng-update/migrations/class-inheritance.js +1 -1
  279. package/schematics/ng-update/migrations/class-inheritance.mjs +1 -1
  280. package/schematics/ng-update/migrations/class-names.js +3 -2
  281. package/schematics/ng-update/migrations/class-names.mjs +3 -2
  282. package/schematics/ng-update/migrations/constructor-signature.js +15 -12
  283. package/schematics/ng-update/migrations/constructor-signature.mjs +15 -12
  284. package/schematics/ng-update/migrations/css-selectors.js +3 -2
  285. package/schematics/ng-update/migrations/css-selectors.mjs +3 -2
  286. package/schematics/ng-update/migrations/element-selectors.js +3 -2
  287. package/schematics/ng-update/migrations/element-selectors.mjs +3 -2
  288. package/schematics/ng-update/migrations/input-names.js +4 -5
  289. package/schematics/ng-update/migrations/input-names.mjs +4 -5
  290. package/schematics/ng-update/migrations/method-call-arguments.js +3 -2
  291. package/schematics/ng-update/migrations/method-call-arguments.mjs +3 -2
  292. package/schematics/ng-update/migrations/misc-template.js +2 -2
  293. package/schematics/ng-update/migrations/misc-template.mjs +2 -2
  294. package/schematics/ng-update/migrations/output-names.js +4 -5
  295. package/schematics/ng-update/migrations/output-names.mjs +4 -5
  296. package/schematics/ng-update/migrations/property-names.js +3 -2
  297. package/schematics/ng-update/migrations/property-names.mjs +3 -2
  298. package/schematics/ng-update/migrations/symbol-removal.js +1 -1
  299. package/schematics/ng-update/migrations/symbol-removal.mjs +1 -1
  300. package/schematics/ng-update/migrations/tilde-import-v13/tilde-import-migration.js +4 -3
  301. package/schematics/ng-update/migrations/tilde-import-v13/tilde-import-migration.mjs +4 -3
  302. package/schematics/ng-update/typescript/base-types.js +1 -1
  303. package/schematics/ng-update/typescript/base-types.mjs +1 -1
  304. package/schematics/ng-update/typescript/literal.d.ts +1 -1
  305. package/schematics/ng-update/typescript/literal.js +1 -1
  306. package/schematics/ng-update/typescript/literal.mjs +1 -1
  307. package/schematics/ng-update/typescript/module-specifiers.js +3 -3
  308. package/schematics/ng-update/typescript/module-specifiers.mjs +3 -3
  309. package/schematics/ng-update/upgrade-data.js +1 -1
  310. package/schematics/ng-update/upgrade-data.mjs +1 -1
  311. package/schematics/update-tool/component-resource-collector.js +2 -2
  312. package/schematics/update-tool/component-resource-collector.mjs +2 -2
  313. package/schematics/update-tool/file-system.js +1 -1
  314. package/schematics/update-tool/file-system.mjs +1 -1
  315. package/schematics/update-tool/index.d.ts +4 -1
  316. package/schematics/update-tool/index.js +7 -3
  317. package/schematics/update-tool/index.mjs +7 -3
  318. package/schematics/update-tool/migration.d.ts +1 -1
  319. package/schematics/update-tool/migration.js +1 -1
  320. package/schematics/update-tool/migration.mjs +1 -1
  321. package/schematics/update-tool/target-version.js +1 -1
  322. package/schematics/update-tool/target-version.mjs +1 -1
  323. package/schematics/update-tool/utils/decorators.js +7 -3
  324. package/schematics/update-tool/utils/decorators.mjs +7 -3
  325. package/schematics/update-tool/utils/functions.js +1 -1
  326. package/schematics/update-tool/utils/functions.mjs +1 -1
  327. package/schematics/update-tool/utils/imports.js +2 -2
  328. package/schematics/update-tool/utils/imports.mjs +2 -2
  329. package/schematics/update-tool/utils/line-mappings.js +1 -1
  330. package/schematics/update-tool/utils/line-mappings.mjs +1 -1
  331. package/schematics/update-tool/utils/parse-tsconfig.js +1 -1
  332. package/schematics/update-tool/utils/parse-tsconfig.mjs +1 -1
  333. package/schematics/update-tool/utils/property-name.js +1 -1
  334. package/schematics/update-tool/utils/property-name.mjs +1 -1
  335. package/schematics/update-tool/utils/virtual-host.js +2 -2
  336. package/schematics/update-tool/utils/virtual-host.mjs +2 -2
  337. package/schematics/update-tool/version-changes.js +1 -1
  338. package/schematics/update-tool/version-changes.mjs +1 -1
  339. package/schematics/utils/ast/ng-module-imports.js +5 -3
  340. package/schematics/utils/ast/ng-module-imports.mjs +5 -3
  341. package/schematics/utils/ast.js +1 -1
  342. package/schematics/utils/ast.mjs +1 -1
  343. package/schematics/utils/build-component.js +12 -18
  344. package/schematics/utils/build-component.mjs +12 -18
  345. package/schematics/utils/get-project.js +1 -1
  346. package/schematics/utils/get-project.mjs +1 -1
  347. package/schematics/utils/html-manipulation.js +6 -5
  348. package/schematics/utils/html-manipulation.mjs +6 -5
  349. package/schematics/utils/parse5-element.js +9 -10
  350. package/schematics/utils/parse5-element.mjs +9 -10
  351. package/schematics/utils/project-main-file.js +1 -1
  352. package/schematics/utils/project-main-file.mjs +1 -1
  353. package/schematics/utils/project-style-file.js +3 -5
  354. package/schematics/utils/project-style-file.mjs +3 -5
  355. package/schematics/utils/project-targets.js +1 -1
  356. package/schematics/utils/project-targets.mjs +1 -1
  357. package/schematics/utils/project-tsconfig-paths.js +2 -2
  358. package/schematics/utils/project-tsconfig-paths.mjs +2 -2
  359. package/schematics/utils/schematic-options.js +7 -5
  360. package/schematics/utils/schematic-options.mjs +7 -5
  361. package/schematics/utils/vendored-ast-utils/index.js +15 -16
  362. package/schematics/utils/vendored-ast-utils/index.mjs +15 -16
  363. package/testing/testbed/proxy-zone-types.d.ts +1 -1
  364. package/testing/testbed/zone-types.d.ts +1 -1
  365. package/tree/control/base-tree-control.d.ts +1 -1
  366. package/tree/control/nested-tree-control.d.ts +2 -2
package/fesm2015/a11y.mjs CHANGED
@@ -185,8 +185,7 @@ class AriaDescriber {
185
185
  /** Removes all cdk-describedby messages that are hosted through the element. */
186
186
  _removeCdkDescribedByReferenceIds(element) {
187
187
  // Remove all aria-describedby reference IDs that are prefixed by CDK_DESCRIBEDBY_ID_PREFIX
188
- const originalReferenceIds = getAriaReferenceIds(element, 'aria-describedby')
189
- .filter(id => id.indexOf(CDK_DESCRIBEDBY_ID_PREFIX) != 0);
188
+ const originalReferenceIds = getAriaReferenceIds(element, 'aria-describedby').filter(id => id.indexOf(CDK_DESCRIBEDBY_ID_PREFIX) != 0);
190
189
  element.setAttribute('aria-describedby', originalReferenceIds.join(' '));
191
190
  }
192
191
  /**
@@ -233,7 +232,7 @@ class AriaDescriber {
233
232
  const ariaLabel = element.getAttribute('aria-label');
234
233
  // We shouldn't set descriptions if they're exactly the same as the `aria-label` of the
235
234
  // element, because screen readers will end up reading out the same text twice in a row.
236
- return trimmedMessage ? (!ariaLabel || ariaLabel.trim() !== trimmedMessage) : false;
235
+ return trimmedMessage ? !ariaLabel || ariaLabel.trim() !== trimmedMessage : false;
237
236
  }
238
237
  /** Checks whether a node is an Element node. */
239
238
  _isElementNode(element) {
@@ -361,15 +360,18 @@ class ListKeyManager {
361
360
  * @param debounceInterval Time to wait after the last keystroke before setting the active item.
362
361
  */
363
362
  withTypeAhead(debounceInterval = 200) {
364
- if ((typeof ngDevMode === 'undefined' || ngDevMode) && (this._items.length &&
365
- this._items.some(item => typeof item.getLabel !== 'function'))) {
363
+ if ((typeof ngDevMode === 'undefined' || ngDevMode) &&
364
+ this._items.length &&
365
+ this._items.some(item => typeof item.getLabel !== 'function')) {
366
366
  throw Error('ListKeyManager items in typeahead mode must implement the `getLabel` method.');
367
367
  }
368
368
  this._typeaheadSubscription.unsubscribe();
369
369
  // Debounce the presses of non-navigational keys, collect the ones that correspond to letters
370
370
  // and convert those letters back into a string. Afterwards find the first item that starts
371
371
  // with that string and select it.
372
- this._typeaheadSubscription = this._letterKeyStream.pipe(tap(letter => this._pressedLetters.push(letter)), debounceTime(debounceInterval), filter(() => this._pressedLetters.length > 0), map(() => this._pressedLetters.join(''))).subscribe(inputString => {
372
+ this._typeaheadSubscription = this._letterKeyStream
373
+ .pipe(tap(letter => this._pressedLetters.push(letter)), debounceTime(debounceInterval), filter(() => this._pressedLetters.length > 0), map(() => this._pressedLetters.join('')))
374
+ .subscribe(inputString => {
373
375
  const items = this._getItemsArray();
374
376
  // Start at 1 because we want to start searching at the item immediately
375
377
  // following the current active item.
@@ -508,7 +510,8 @@ class ListKeyManager {
508
510
  }
509
511
  /** Sets the active item to a previous enabled item in the list. */
510
512
  setPreviousItemActive() {
511
- this._activeItemIndex < 0 && this._wrap ? this.setLastItemActive()
513
+ this._activeItemIndex < 0 && this._wrap
514
+ ? this.setLastItemActive()
512
515
  : this._setActiveItemByDelta(-1);
513
516
  }
514
517
  updateActiveItem(item) {
@@ -535,7 +538,7 @@ class ListKeyManager {
535
538
  _setActiveInWrapMode(delta) {
536
539
  const items = this._getItemsArray();
537
540
  for (let i = 1; i <= items.length; i++) {
538
- const index = (this._activeItemIndex + (delta * i) + items.length) % items.length;
541
+ const index = (this._activeItemIndex + delta * i + items.length) % items.length;
539
542
  const item = items[index];
540
543
  if (!this._skipPredicateFn(item)) {
541
544
  this.setActiveItem(index);
@@ -744,8 +747,9 @@ class InteractivityChecker {
744
747
  isFocusable(element, config) {
745
748
  // Perform checks in order of left to most expensive.
746
749
  // Again, naive approach that does not capture many edge cases and browser quirks.
747
- return isPotentiallyFocusable(element) && !this.isDisabled(element) &&
748
- ((config === null || config === void 0 ? void 0 : config.ignoreVisibility) || this.isVisible(element));
750
+ return (isPotentiallyFocusable(element) &&
751
+ !this.isDisabled(element) &&
752
+ ((config === null || config === void 0 ? void 0 : config.ignoreVisibility) || this.isVisible(element)));
749
753
  }
750
754
  }
751
755
  InteractivityChecker.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0-next.15", ngImport: i0, type: InteractivityChecker, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -771,16 +775,17 @@ function getFrameElement(window) {
771
775
  function hasGeometry(element) {
772
776
  // Use logic from jQuery to check for an invisible element.
773
777
  // See https://github.com/jquery/jquery/blob/master/src/css/hiddenVisibleSelectors.js#L12
774
- return !!(element.offsetWidth || element.offsetHeight ||
778
+ return !!(element.offsetWidth ||
779
+ element.offsetHeight ||
775
780
  (typeof element.getClientRects === 'function' && element.getClientRects().length));
776
781
  }
777
782
  /** Gets whether an element's */
778
783
  function isNativeFormElement(element) {
779
784
  let nodeName = element.nodeName.toLowerCase();
780
- return nodeName === 'input' ||
785
+ return (nodeName === 'input' ||
781
786
  nodeName === 'select' ||
782
787
  nodeName === 'button' ||
783
- nodeName === 'textarea';
788
+ nodeName === 'textarea');
784
789
  }
785
790
  /** Gets whether an element is an `<input type="hidden">`. */
786
791
  function isHiddenInput(element) {
@@ -822,10 +827,10 @@ function getTabIndexValue(element) {
822
827
  function isPotentiallyTabbableIOS(element) {
823
828
  let nodeName = element.nodeName.toLowerCase();
824
829
  let inputType = nodeName === 'input' && element.type;
825
- return inputType === 'text'
826
- || inputType === 'password'
827
- || nodeName === 'select'
828
- || nodeName === 'textarea';
830
+ return (inputType === 'text' ||
831
+ inputType === 'password' ||
832
+ nodeName === 'select' ||
833
+ nodeName === 'textarea');
829
834
  }
830
835
  /**
831
836
  * Gets whether an element is potentially focusable without taking current visible/disabled state
@@ -836,15 +841,15 @@ function isPotentiallyFocusable(element) {
836
841
  if (isHiddenInput(element)) {
837
842
  return false;
838
843
  }
839
- return isNativeFormElement(element) ||
844
+ return (isNativeFormElement(element) ||
840
845
  isAnchorWithHref(element) ||
841
846
  element.hasAttribute('contenteditable') ||
842
- hasValidTabIndex(element);
847
+ hasValidTabIndex(element));
843
848
  }
844
849
  /** Gets the parent window of a DOM node with regards of being inside of an iframe. */
845
850
  function getWindow(node) {
846
851
  // ownerDocument is null if `node` itself *is* a document.
847
- return node.ownerDocument && node.ownerDocument.defaultView || window;
852
+ return (node.ownerDocument && node.ownerDocument.defaultView) || window;
848
853
  }
849
854
 
850
855
  /**
@@ -880,7 +885,9 @@ class FocusTrap {
880
885
  }
881
886
  }
882
887
  /** Whether the focus trap is active. */
883
- get enabled() { return this._enabled; }
888
+ get enabled() {
889
+ return this._enabled;
890
+ }
884
891
  set enabled(value) {
885
892
  this._enabled = value;
886
893
  if (this._startAnchor && this._endAnchor) {
@@ -970,9 +977,7 @@ class FocusTrap {
970
977
  */
971
978
  _getRegionBoundary(bound) {
972
979
  // Contains the deprecated version of selector, for temporary backwards comparability.
973
- let markers = this._element.querySelectorAll(`[cdk-focus-region-${bound}], ` +
974
- `[cdkFocusRegion${bound}], ` +
975
- `[cdk-focus-${bound}]`);
980
+ let markers = this._element.querySelectorAll(`[cdk-focus-region-${bound}], ` + `[cdkFocusRegion${bound}], ` + `[cdk-focus-${bound}]`);
976
981
  for (let i = 0; i < markers.length; i++) {
977
982
  // @breaking-change 8.0.0
978
983
  if (markers[i].hasAttribute(`cdk-focus-${bound}`)) {
@@ -989,8 +994,9 @@ class FocusTrap {
989
994
  if (bound == 'start') {
990
995
  return markers.length ? markers[0] : this._getFirstTabbableElement(this._element);
991
996
  }
992
- return markers.length ?
993
- markers[markers.length - 1] : this._getLastTabbableElement(this._element);
997
+ return markers.length
998
+ ? markers[markers.length - 1]
999
+ : this._getLastTabbableElement(this._element);
994
1000
  }
995
1001
  /**
996
1002
  * Focuses the element that should be focused when the focus trap is initialized.
@@ -998,8 +1004,7 @@ class FocusTrap {
998
1004
  */
999
1005
  focusInitialElement(options) {
1000
1006
  // Contains the deprecated version of selector, for temporary backwards comparability.
1001
- const redirectToElement = this._element.querySelector(`[cdk-focus-initial], ` +
1002
- `[cdkFocusInitial]`);
1007
+ const redirectToElement = this._element.querySelector(`[cdk-focus-initial], ` + `[cdkFocusInitial]`);
1003
1008
  if (redirectToElement) {
1004
1009
  // @breaking-change 8.0.0
1005
1010
  if (redirectToElement.hasAttribute(`cdk-focus-initial`)) {
@@ -1058,9 +1063,9 @@ class FocusTrap {
1058
1063
  }
1059
1064
  const children = root.children;
1060
1065
  for (let i = 0; i < children.length; i++) {
1061
- const tabbableChild = children[i].nodeType === this._document.ELEMENT_NODE ?
1062
- this._getFirstTabbableElement(children[i]) :
1063
- null;
1066
+ const tabbableChild = children[i].nodeType === this._document.ELEMENT_NODE
1067
+ ? this._getFirstTabbableElement(children[i])
1068
+ : null;
1064
1069
  if (tabbableChild) {
1065
1070
  return tabbableChild;
1066
1071
  }
@@ -1075,9 +1080,9 @@ class FocusTrap {
1075
1080
  // Iterate in reverse DOM order.
1076
1081
  const children = root.children;
1077
1082
  for (let i = children.length - 1; i >= 0; i--) {
1078
- const tabbableChild = children[i].nodeType === this._document.ELEMENT_NODE ?
1079
- this._getLastTabbableElement(children[i]) :
1080
- null;
1083
+ const tabbableChild = children[i].nodeType === this._document.ELEMENT_NODE
1084
+ ? this._getLastTabbableElement(children[i])
1085
+ : null;
1081
1086
  if (tabbableChild) {
1082
1087
  return tabbableChild;
1083
1088
  }
@@ -1171,14 +1176,22 @@ class CdkTrapFocus {
1171
1176
  this.focusTrap = this._focusTrapFactory.create(this._elementRef.nativeElement, true);
1172
1177
  }
1173
1178
  /** Whether the focus trap is active. */
1174
- get enabled() { return this.focusTrap.enabled; }
1175
- set enabled(value) { this.focusTrap.enabled = coerceBooleanProperty(value); }
1179
+ get enabled() {
1180
+ return this.focusTrap.enabled;
1181
+ }
1182
+ set enabled(value) {
1183
+ this.focusTrap.enabled = coerceBooleanProperty(value);
1184
+ }
1176
1185
  /**
1177
1186
  * Whether the directive should automatically move focus into the trapped region upon
1178
1187
  * initialization and return focus to the previous activeElement upon destruction.
1179
1188
  */
1180
- get autoCapture() { return this._autoCapture; }
1181
- set autoCapture(value) { this._autoCapture = coerceBooleanProperty(value); }
1189
+ get autoCapture() {
1190
+ return this._autoCapture;
1191
+ }
1192
+ set autoCapture(value) {
1193
+ this._autoCapture = coerceBooleanProperty(value);
1194
+ }
1182
1195
  ngOnDestroy() {
1183
1196
  this.focusTrap.destroy();
1184
1197
  // If we stored a previously focused element when using autoCapture, return focus to that
@@ -1201,7 +1214,9 @@ class CdkTrapFocus {
1201
1214
  }
1202
1215
  ngOnChanges(changes) {
1203
1216
  const autoCaptureChange = changes['autoCapture'];
1204
- if (autoCaptureChange && !autoCaptureChange.firstChange && this.autoCapture &&
1217
+ if (autoCaptureChange &&
1218
+ !autoCaptureChange.firstChange &&
1219
+ this.autoCapture &&
1205
1220
  this.focusTrap.hasAttached()) {
1206
1221
  this._captureFocus();
1207
1222
  }
@@ -1253,7 +1268,9 @@ class ConfigurableFocusTrap extends FocusTrap {
1253
1268
  this._focusTrapManager.register(this);
1254
1269
  }
1255
1270
  /** Whether the FocusTrap is enabled. */
1256
- get enabled() { return this._enabled; }
1271
+ get enabled() {
1272
+ return this._enabled;
1273
+ }
1257
1274
  set enabled(value) {
1258
1275
  this._enabled = value;
1259
1276
  if (this._enabled) {
@@ -1372,7 +1389,7 @@ class FocusTrapManager {
1372
1389
  */
1373
1390
  register(focusTrap) {
1374
1391
  // Dedupe focusTraps that register multiple times.
1375
- this._focusTrapStack = this._focusTrapStack.filter((ft) => ft !== focusTrap);
1392
+ this._focusTrapStack = this._focusTrapStack.filter(ft => ft !== focusTrap);
1376
1393
  let stack = this._focusTrapStack;
1377
1394
  if (stack.length) {
1378
1395
  stack[stack.length - 1]._disable();
@@ -1466,14 +1483,15 @@ function isFakeMousedownFromScreenReader(event) {
1466
1483
  }
1467
1484
  /** Gets whether an event could be a faked `touchstart` event dispatched by a screen reader. */
1468
1485
  function isFakeTouchstartFromScreenReader(event) {
1469
- const touch = (event.touches && event.touches[0]) ||
1470
- (event.changedTouches && event.changedTouches[0]);
1486
+ const touch = (event.touches && event.touches[0]) || (event.changedTouches && event.changedTouches[0]);
1471
1487
  // A fake `touchstart` can be distinguished from a real one by looking at the `identifier`
1472
1488
  // which is typically >= 0 on a real device versus -1 from a screen reader. Just to be safe,
1473
1489
  // we can also look at `radiusX` and `radiusY`. This behavior was observed against a Windows 10
1474
1490
  // device with a touch screen running NVDA v2020.4 and Firefox 85 or Chrome 88.
1475
- return !!touch && touch.identifier === -1 && (touch.radiusX == null || touch.radiusX === 1) &&
1476
- (touch.radiusY == null || touch.radiusY === 1);
1491
+ return (!!touch &&
1492
+ touch.identifier === -1 &&
1493
+ (touch.radiusX == null || touch.radiusX === 1) &&
1494
+ (touch.radiusY == null || touch.radiusY === 1));
1477
1495
  }
1478
1496
 
1479
1497
  /**
@@ -1685,7 +1703,7 @@ class LiveAnnouncer {
1685
1703
  clearTimeout(this._previousTimeout);
1686
1704
  if (!politeness) {
1687
1705
  politeness =
1688
- (defaultOptions && defaultOptions.politeness) ? defaultOptions.politeness : 'polite';
1706
+ defaultOptions && defaultOptions.politeness ? defaultOptions.politeness : 'polite';
1689
1707
  }
1690
1708
  if (duration == null && defaultOptions) {
1691
1709
  duration = defaultOptions.duration;
@@ -1776,7 +1794,9 @@ class CdkAriaLive {
1776
1794
  this._politeness = 'polite';
1777
1795
  }
1778
1796
  /** The aria-live politeness level to use when announcing messages. */
1779
- get politeness() { return this._politeness; }
1797
+ get politeness() {
1798
+ return this._politeness;
1799
+ }
1780
1800
  set politeness(value) {
1781
1801
  this._politeness = value === 'off' || value === 'assertive' ? value : 'polite';
1782
1802
  if (this._politeness === 'off') {
@@ -1787,9 +1807,7 @@ class CdkAriaLive {
1787
1807
  }
1788
1808
  else if (!this._subscription) {
1789
1809
  this._subscription = this._ngZone.runOutsideAngular(() => {
1790
- return this._contentObserver
1791
- .observe(this._elementRef)
1792
- .subscribe(() => {
1810
+ return this._contentObserver.observe(this._elementRef).subscribe(() => {
1793
1811
  // Note that we use textContent here, rather than innerText, in order to avoid a reflow.
1794
1812
  const elementText = this._elementRef.nativeElement.textContent;
1795
1813
  // The `MutationObserver` fires also for attribute
@@ -1836,7 +1854,7 @@ const FOCUS_MONITOR_DEFAULT_OPTIONS = new InjectionToken('cdk-focus-monitor-defa
1836
1854
  */
1837
1855
  const captureEventListenerOptions = normalizePassiveListenerOptions({
1838
1856
  passive: true,
1839
- capture: true
1857
+ capture: true,
1840
1858
  });
1841
1859
  /** Monitors mouse and keyboard events to determine the cause of focus events. */
1842
1860
  class FocusMonitor {
@@ -1874,7 +1892,7 @@ class FocusMonitor {
1874
1892
  // Make a note of when the window regains focus, so we can
1875
1893
  // restore the origin info for the focused element.
1876
1894
  this._windowFocused = true;
1877
- this._windowFocusTimeoutId = setTimeout(() => this._windowFocused = false);
1895
+ this._windowFocusTimeoutId = setTimeout(() => (this._windowFocused = false));
1878
1896
  };
1879
1897
  /** Subject for stopping our InputModalityDetector subscription. */
1880
1898
  this._stopInputModalityDetector = new Subject();
@@ -1918,7 +1936,7 @@ class FocusMonitor {
1918
1936
  const info = {
1919
1937
  checkChildren: checkChildren,
1920
1938
  subject: new Subject(),
1921
- rootNode
1939
+ rootNode,
1922
1940
  };
1923
1941
  this._elementInfo.set(nativeElement, info);
1924
1942
  this._registerGlobalListeners(info);
@@ -1941,8 +1959,7 @@ class FocusMonitor {
1941
1959
  // which means that the focus classes won't be updated. If that's the case, update the classes
1942
1960
  // directly without waiting for an event.
1943
1961
  if (nativeElement === focusedElement) {
1944
- this._getClosestElementsInfo(nativeElement)
1945
- .forEach(([currentElement, info]) => this._originChanged(currentElement, origin, info));
1962
+ this._getClosestElementsInfo(nativeElement).forEach(([currentElement, info]) => this._originChanged(currentElement, origin, info));
1946
1963
  }
1947
1964
  else {
1948
1965
  this._setOrigin(origin);
@@ -1984,7 +2001,7 @@ class FocusMonitor {
1984
2001
  // events).
1985
2002
  //
1986
2003
  // Because we can't distinguish between these two cases, we default to setting `program`.
1987
- return (this._windowFocused && this._lastFocusOrigin) ? this._lastFocusOrigin : 'program';
2004
+ return this._windowFocused && this._lastFocusOrigin ? this._lastFocusOrigin : 'program';
1988
2005
  }
1989
2006
  /**
1990
2007
  * Returns whether the focus event should be attributed to touch. Recall that in IMMEDIATE mode, a
@@ -2005,8 +2022,8 @@ class FocusMonitor {
2005
2022
  // #child, #parent is programmatically focused. This code will attribute the focus to touch
2006
2023
  // instead of program. This is a relatively minor edge-case that can be worked around by using
2007
2024
  // focusVia(parent, 'program') to focus #parent.
2008
- return (this._detectionMode === 1 /* EVENTUAL */) ||
2009
- !!(focusEventTarget === null || focusEventTarget === void 0 ? void 0 : focusEventTarget.contains(this._inputModalityDetector._mostRecentTarget));
2025
+ return (this._detectionMode === 1 /* EVENTUAL */ ||
2026
+ !!(focusEventTarget === null || focusEventTarget === void 0 ? void 0 : focusEventTarget.contains(this._inputModalityDetector._mostRecentTarget)));
2010
2027
  }
2011
2028
  /**
2012
2029
  * Sets the focus classes on the element based on the given focus origin.
@@ -2030,7 +2047,7 @@ class FocusMonitor {
2030
2047
  _setOrigin(origin, isFromInteraction = false) {
2031
2048
  this._ngZone.runOutsideAngular(() => {
2032
2049
  this._origin = origin;
2033
- this._originFromTouchInteraction = (origin === 'touch') && isFromInteraction;
2050
+ this._originFromTouchInteraction = origin === 'touch' && isFromInteraction;
2034
2051
  // If we're in IMMEDIATE mode, reset the origin at the next tick (or in `TOUCH_BUFFER_MS` ms
2035
2052
  // for a touch event). We reset the origin at the next tick because Firefox focuses one tick
2036
2053
  // after the interaction event. We wait `TOUCH_BUFFER_MS` ms before resetting the origin for
@@ -2039,7 +2056,7 @@ class FocusMonitor {
2039
2056
  if (this._detectionMode === 0 /* IMMEDIATE */) {
2040
2057
  clearTimeout(this._originTimeoutId);
2041
2058
  const ms = this._originFromTouchInteraction ? TOUCH_BUFFER_MS : 1;
2042
- this._originTimeoutId = setTimeout(() => this._origin = null, ms);
2059
+ this._originTimeoutId = setTimeout(() => (this._origin = null), ms);
2043
2060
  }
2044
2061
  });
2045
2062
  }
@@ -2071,8 +2088,10 @@ class FocusMonitor {
2071
2088
  // If we are counting child-element-focus as focused, make sure that we aren't just blurring in
2072
2089
  // order to focus another child of the monitored element.
2073
2090
  const elementInfo = this._elementInfo.get(element);
2074
- if (!elementInfo || (elementInfo.checkChildren && event.relatedTarget instanceof Node &&
2075
- element.contains(event.relatedTarget))) {
2091
+ if (!elementInfo ||
2092
+ (elementInfo.checkChildren &&
2093
+ event.relatedTarget instanceof Node &&
2094
+ element.contains(event.relatedTarget))) {
2076
2095
  return;
2077
2096
  }
2078
2097
  this._setClasses(element);
@@ -2105,7 +2124,9 @@ class FocusMonitor {
2105
2124
  // The InputModalityDetector is also just a collection of global listeners.
2106
2125
  this._inputModalityDetector.modalityDetected
2107
2126
  .pipe(takeUntil(this._stopInputModalityDetector))
2108
- .subscribe(modality => { this._setOrigin(modality, true /* isFromInteraction */); });
2127
+ .subscribe(modality => {
2128
+ this._setOrigin(modality, true /* isFromInteraction */);
2129
+ });
2109
2130
  }
2110
2131
  }
2111
2132
  _removeGlobalListeners(elementInfo) {
@@ -2188,7 +2209,8 @@ class CdkMonitorFocus {
2188
2209
  }
2189
2210
  ngAfterViewInit() {
2190
2211
  const element = this._elementRef.nativeElement;
2191
- this._monitorSubscription = this._focusMonitor.monitor(element, element.nodeType === 1 && element.hasAttribute('cdkMonitorSubtreeFocus'))
2212
+ this._monitorSubscription = this._focusMonitor
2213
+ .monitor(element, element.nodeType === 1 && element.hasAttribute('cdkMonitorSubtreeFocus'))
2192
2214
  .subscribe(origin => this.cdkFocusChange.emit(origin));
2193
2215
  }
2194
2216
  ngOnDestroy() {
@@ -2248,13 +2270,16 @@ class HighContrastModeDetector {
2248
2270
  // via the document so we can fake it in tests. Note that we have extra null checks, because
2249
2271
  // this logic will likely run during app bootstrap and throwing can break the entire app.
2250
2272
  const documentWindow = this._document.defaultView || window;
2251
- const computedStyle = (documentWindow && documentWindow.getComputedStyle) ?
2252
- documentWindow.getComputedStyle(testElement) : null;
2253
- const computedColor = (computedStyle && computedStyle.backgroundColor || '').replace(/ /g, '');
2273
+ const computedStyle = documentWindow && documentWindow.getComputedStyle
2274
+ ? documentWindow.getComputedStyle(testElement)
2275
+ : null;
2276
+ const computedColor = ((computedStyle && computedStyle.backgroundColor) || '').replace(/ /g, '');
2254
2277
  testElement.remove();
2255
2278
  switch (computedColor) {
2256
- case 'rgb(0,0,0)': return 2 /* WHITE_ON_BLACK */;
2257
- case 'rgb(255,255,255)': return 1 /* BLACK_ON_WHITE */;
2279
+ case 'rgb(0,0,0)':
2280
+ return 2 /* WHITE_ON_BLACK */;
2281
+ case 'rgb(255,255,255)':
2282
+ return 1 /* BLACK_ON_WHITE */;
2258
2283
  }
2259
2284
  return 0 /* NONE */;
2260
2285
  }