@angular/cdk 20.0.0-next.1 → 20.0.0-next.10

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 (445) hide show
  1. package/_adev_assets/cdk_testing.json +1 -0
  2. package/_adev_assets/cdk_testing_protractor.json +1 -0
  3. package/_adev_assets/cdk_testing_selenium_webdriver.json +1 -0
  4. package/_adev_assets/cdk_testing_testbed.json +1 -0
  5. package/a11y/index.d.ts +11 -11
  6. package/{a11y-module.d-7d03e079.d.ts → a11y-module.d-DBHGyKoh.d.ts} +4 -3
  7. package/a11y-prebuilt.css +1 -1
  8. package/accordion/index.d.ts +1 -1
  9. package/{activedescendant-key-manager.d-11921e3a.d.ts → activedescendant-key-manager.d-Bjic5obv.d.ts} +3 -2
  10. package/bidi/index.d.ts +1 -1
  11. package/{bidi-module.d-f8648621.d.ts → bidi-module.d-IN1Vp56w.d.ts} +8 -4
  12. package/clipboard/index.d.ts +2 -1
  13. package/coercion/index.d.ts +3 -2
  14. package/collections/index.d.ts +9 -8
  15. package/{data-source.d-7cab2c9d.d.ts → data-source.d-Bblv7Zvh.d.ts} +2 -1
  16. package/dialog/index.d.ts +26 -19
  17. package/drag-drop/index.d.ts +14 -6
  18. package/fesm2022/{a11y-module-e6996d20.mjs → a11y-module-DpEjWNCj.mjs} +32 -33
  19. package/fesm2022/a11y-module-DpEjWNCj.mjs.map +1 -0
  20. package/fesm2022/a11y.mjs +35 -36
  21. package/fesm2022/a11y.mjs.map +1 -1
  22. package/fesm2022/accordion.mjs +12 -12
  23. package/fesm2022/accordion.mjs.map +1 -1
  24. package/fesm2022/{activedescendant-key-manager-1351a9d3.mjs → activedescendant-key-manager-DC3-fwQI.mjs} +2 -2
  25. package/fesm2022/activedescendant-key-manager-DC3-fwQI.mjs.map +1 -0
  26. package/fesm2022/{array-ee3b4bab.mjs → array-I1yfCXUO.mjs} +1 -1
  27. package/fesm2022/array-I1yfCXUO.mjs.map +1 -0
  28. package/fesm2022/bidi.mjs +77 -4
  29. package/fesm2022/bidi.mjs.map +1 -1
  30. package/fesm2022/{breakpoints-observer-d4584b66.mjs → breakpoints-observer-DpQzdtrE.mjs} +9 -9
  31. package/fesm2022/breakpoints-observer-DpQzdtrE.mjs.map +1 -0
  32. package/fesm2022/cdk.mjs +1 -1
  33. package/fesm2022/cdk.mjs.map +1 -1
  34. package/fesm2022/clipboard.mjs +11 -12
  35. package/fesm2022/clipboard.mjs.map +1 -1
  36. package/fesm2022/coercion/private.mjs +14 -2
  37. package/fesm2022/coercion/private.mjs.map +1 -1
  38. package/fesm2022/coercion.mjs +3 -3
  39. package/fesm2022/coercion.mjs.map +1 -1
  40. package/fesm2022/collections.mjs +5 -5
  41. package/fesm2022/{css-pixel-value-286c9a60.mjs → css-pixel-value-C_HEqLhI.mjs} +1 -1
  42. package/fesm2022/css-pixel-value-C_HEqLhI.mjs.map +1 -0
  43. package/fesm2022/{data-source-5320b6fd.mjs → data-source-D34wiQZj.mjs} +1 -1
  44. package/fesm2022/data-source-D34wiQZj.mjs.map +1 -0
  45. package/fesm2022/dialog.mjs +88 -71
  46. package/fesm2022/dialog.mjs.map +1 -1
  47. package/fesm2022/{directionality-7ea26429.mjs → directionality-Ck5Uc9Se.mjs} +13 -8
  48. package/fesm2022/directionality-Ck5Uc9Se.mjs.map +1 -0
  49. package/fesm2022/{dispose-view-repeater-strategy-b11b87ea.mjs → dispose-view-repeater-strategy-D_JReLI1.mjs} +2 -2
  50. package/fesm2022/dispose-view-repeater-strategy-D_JReLI1.mjs.map +1 -0
  51. package/fesm2022/drag-drop.mjs +125 -60
  52. package/fesm2022/drag-drop.mjs.map +1 -1
  53. package/fesm2022/{element-705567fe.mjs → element-x4z00URv.mjs} +2 -2
  54. package/fesm2022/element-x4z00URv.mjs.map +1 -0
  55. package/fesm2022/{fake-event-detection-7055b1bd.mjs → fake-event-detection-DWOdFTFz.mjs} +1 -1
  56. package/fesm2022/fake-event-detection-DWOdFTFz.mjs.map +1 -0
  57. package/fesm2022/{focus-key-manager-58d29acd.mjs → focus-key-manager-C1rAQJ5z.mjs} +2 -2
  58. package/fesm2022/focus-key-manager-C1rAQJ5z.mjs.map +1 -0
  59. package/fesm2022/{focus-monitor-cebaa0d1.mjs → focus-monitor-DKFfep8Q.mjs} +21 -23
  60. package/fesm2022/focus-monitor-DKFfep8Q.mjs.map +1 -0
  61. package/fesm2022/{id-generator-fba495fb.mjs → id-generator-BwB8lolC.mjs} +4 -4
  62. package/fesm2022/id-generator-BwB8lolC.mjs.map +1 -0
  63. package/fesm2022/{keycodes-107cd3e4.mjs → keycodes-CpHkExLC.mjs} +2 -2
  64. package/fesm2022/keycodes-CpHkExLC.mjs.map +1 -0
  65. package/fesm2022/keycodes.mjs +14 -2
  66. package/fesm2022/keycodes.mjs.map +1 -1
  67. package/fesm2022/layout.mjs +7 -7
  68. package/fesm2022/layout.mjs.map +1 -1
  69. package/fesm2022/{list-key-manager-c7b5cefb.mjs → list-key-manager-CyOIXo8P.mjs} +4 -4
  70. package/fesm2022/list-key-manager-CyOIXo8P.mjs.map +1 -0
  71. package/fesm2022/listbox.mjs +20 -20
  72. package/fesm2022/listbox.mjs.map +1 -1
  73. package/fesm2022/menu.mjs +85 -90
  74. package/fesm2022/menu.mjs.map +1 -1
  75. package/fesm2022/observers/private.mjs +3 -3
  76. package/fesm2022/observers/private.mjs.map +1 -1
  77. package/fesm2022/observers.mjs +209 -5
  78. package/fesm2022/observers.mjs.map +1 -1
  79. package/fesm2022/{overlay-module-863b82c9.mjs → overlay-module-BaGhSGqO.mjs} +204 -171
  80. package/fesm2022/overlay-module-BaGhSGqO.mjs.map +1 -0
  81. package/fesm2022/overlay.mjs +23 -24
  82. package/fesm2022/overlay.mjs.map +1 -1
  83. package/fesm2022/{passive-listeners-c0bdc49f.mjs → passive-listeners-esHZRgIN.mjs} +1 -1
  84. package/fesm2022/passive-listeners-esHZRgIN.mjs.map +1 -0
  85. package/fesm2022/{platform-1be098b0.mjs → platform-CPg0IbDW.mjs} +4 -4
  86. package/fesm2022/platform-CPg0IbDW.mjs.map +1 -0
  87. package/fesm2022/platform.mjs +9 -10
  88. package/fesm2022/platform.mjs.map +1 -1
  89. package/fesm2022/portal.mjs +613 -3
  90. package/fesm2022/portal.mjs.map +1 -1
  91. package/fesm2022/private.mjs +18 -3
  92. package/fesm2022/private.mjs.map +1 -1
  93. package/fesm2022/{recycle-view-repeater-strategy-c1712813.mjs → recycle-view-repeater-strategy-DoWdPqVw.mjs} +2 -2
  94. package/fesm2022/recycle-view-repeater-strategy-DoWdPqVw.mjs.map +1 -0
  95. package/fesm2022/{scrolling-61955dd1.mjs → scrolling-BkvA05C8.mjs} +1 -1
  96. package/fesm2022/scrolling-BkvA05C8.mjs.map +1 -0
  97. package/fesm2022/scrolling.mjs +1462 -11
  98. package/fesm2022/scrolling.mjs.map +1 -1
  99. package/fesm2022/{selection-model-30243dba.mjs → selection-model-BCgC8uEN.mjs} +1 -1
  100. package/fesm2022/selection-model-BCgC8uEN.mjs.map +1 -0
  101. package/fesm2022/{shadow-dom-9f403d00.mjs → shadow-dom-B0oHn41l.mjs} +2 -2
  102. package/fesm2022/shadow-dom-B0oHn41l.mjs.map +1 -0
  103. package/fesm2022/stepper.mjs +43 -38
  104. package/fesm2022/stepper.mjs.map +1 -1
  105. package/fesm2022/{style-loader-e14dc585.mjs → style-loader-BDEAZOey.mjs} +4 -4
  106. package/fesm2022/style-loader-BDEAZOey.mjs.map +1 -0
  107. package/fesm2022/table.mjs +170 -226
  108. package/fesm2022/table.mjs.map +1 -1
  109. package/fesm2022/{test-environment-34eef1ee.mjs → test-environment-CT0XxPyp.mjs} +1 -1
  110. package/fesm2022/test-environment-CT0XxPyp.mjs.map +1 -0
  111. package/fesm2022/testing/selenium-webdriver.mjs +1 -1
  112. package/fesm2022/testing/selenium-webdriver.mjs.map +1 -1
  113. package/fesm2022/testing/testbed.mjs +2 -2
  114. package/fesm2022/testing/testbed.mjs.map +1 -1
  115. package/fesm2022/testing.mjs +697 -2
  116. package/fesm2022/testing.mjs.map +1 -1
  117. package/fesm2022/text-field.mjs +27 -24
  118. package/fesm2022/text-field.mjs.map +1 -1
  119. package/fesm2022/{tree-key-manager-2f20c79c.mjs → tree-key-manager-KnCoIkIC.mjs} +3 -3
  120. package/fesm2022/tree-key-manager-KnCoIkIC.mjs.map +1 -0
  121. package/fesm2022/tree.mjs +47 -35
  122. package/fesm2022/tree.mjs.map +1 -1
  123. package/fesm2022/{typeahead-11ae39bd.mjs → typeahead-9ZW4Dtsf.mjs} +2 -2
  124. package/fesm2022/typeahead-9ZW4Dtsf.mjs.map +1 -0
  125. package/fesm2022/{unique-selection-dispatcher-1d6f91d8.mjs → unique-selection-dispatcher-Cag6cZJ2.mjs} +4 -4
  126. package/fesm2022/unique-selection-dispatcher-Cag6cZJ2.mjs.map +1 -0
  127. package/{focus-key-manager.d-415a6958.d.ts → focus-key-manager.d-BIKDy8oD.d.ts} +4 -3
  128. package/{focus-monitor.d-810a02e6.d.ts → focus-monitor.d-CvvJeQRc.d.ts} +2 -1
  129. package/{harness-environment.d-4d615248.d.ts → harness-environment.d-BatBdODN.d.ts} +2 -1
  130. package/keycodes/index.d.ts +2 -1
  131. package/layout/index.d.ts +2 -1
  132. package/{list-key-manager.d-72e9a2e7.d.ts → list-key-manager.d-BlK3jyRn.d.ts} +2 -1
  133. package/listbox/index.d.ts +5 -4
  134. package/menu/index.d.ts +16 -18
  135. package/{number-property.d-ce316715.d.ts → number-property.d-CJVxXUcb.d.ts} +2 -1
  136. package/observers/index.d.ts +84 -4
  137. package/overlay/_index.scss +7 -1
  138. package/overlay/index.d.ts +77 -80
  139. package/{overlay-module.d-5d06db8a.d.ts → overlay-module.d-BiAhhk6g.d.ts} +23 -12
  140. package/overlay-prebuilt.css +1 -1
  141. package/package.json +2 -4
  142. package/platform/index.d.ts +2 -17
  143. package/portal/index.d.ts +3 -3
  144. package/{portal-directives.d-d345bd53.d.ts → portal-directives.d-DbeNrI5D.d.ts} +2 -1
  145. package/private/index.d.ts +1 -1
  146. package/schematics/index.js +1 -1
  147. package/schematics/index.js.map +1 -0
  148. package/schematics/ng-add/index.js +11 -19
  149. package/schematics/ng-add/index.js.map +1 -0
  150. package/schematics/ng-add/schema.js +1 -1
  151. package/schematics/ng-add/schema.js.map +1 -0
  152. package/schematics/ng-generate/drag-drop/index.js +15 -6
  153. package/schematics/ng-generate/drag-drop/index.js.map +1 -0
  154. package/schematics/ng-generate/drag-drop/schema.js +1 -1
  155. package/schematics/ng-generate/drag-drop/schema.js.map +1 -0
  156. package/schematics/ng-update/data/attribute-selectors.js +1 -1
  157. package/schematics/ng-update/data/attribute-selectors.js.map +1 -0
  158. package/schematics/ng-update/data/class-names.js +1 -1
  159. package/schematics/ng-update/data/class-names.js.map +1 -0
  160. package/schematics/ng-update/data/constructor-checks.js +1 -1
  161. package/schematics/ng-update/data/constructor-checks.js.map +1 -0
  162. package/schematics/ng-update/data/css-selectors.js +1 -1
  163. package/schematics/ng-update/data/css-selectors.js.map +1 -0
  164. package/schematics/ng-update/data/css-tokens.js +1 -1
  165. package/schematics/ng-update/data/css-tokens.js.map +1 -0
  166. package/schematics/ng-update/data/element-selectors.js +1 -1
  167. package/schematics/ng-update/data/element-selectors.js.map +1 -0
  168. package/schematics/ng-update/data/index.js +1 -1
  169. package/schematics/ng-update/data/index.js.map +1 -0
  170. package/schematics/ng-update/data/input-names.js +1 -1
  171. package/schematics/ng-update/data/input-names.js.map +1 -0
  172. package/schematics/ng-update/data/method-call-checks.js +1 -1
  173. package/schematics/ng-update/data/method-call-checks.js.map +1 -0
  174. package/schematics/ng-update/data/output-names.js +1 -1
  175. package/schematics/ng-update/data/output-names.js.map +1 -0
  176. package/schematics/ng-update/data/property-names.js +1 -1
  177. package/schematics/ng-update/data/property-names.js.map +1 -0
  178. package/schematics/ng-update/data/symbol-removal.js +1 -1
  179. package/schematics/ng-update/data/symbol-removal.js.map +1 -0
  180. package/schematics/ng-update/devkit-file-system.js +2 -3
  181. package/schematics/ng-update/devkit-file-system.js.map +1 -0
  182. package/schematics/ng-update/devkit-migration-rule.js +13 -4
  183. package/schematics/ng-update/devkit-migration-rule.js.map +1 -0
  184. package/schematics/ng-update/devkit-migration.d.ts +2 -2
  185. package/schematics/ng-update/devkit-migration.js +1 -1
  186. package/schematics/ng-update/devkit-migration.js.map +1 -0
  187. package/schematics/ng-update/find-stylesheets.js +1 -1
  188. package/schematics/ng-update/find-stylesheets.js.map +1 -0
  189. package/schematics/ng-update/html-parsing/angular.js +2 -2
  190. package/schematics/ng-update/html-parsing/angular.js.map +1 -0
  191. package/schematics/ng-update/html-parsing/elements.js +3 -2
  192. package/schematics/ng-update/html-parsing/elements.js.map +1 -0
  193. package/schematics/ng-update/index.js +1 -1
  194. package/schematics/ng-update/index.js.map +1 -0
  195. package/schematics/ng-update/migrations/attribute-selectors.js +8 -5
  196. package/schematics/ng-update/migrations/attribute-selectors.js.map +1 -0
  197. package/schematics/ng-update/migrations/class-inheritance.js +11 -8
  198. package/schematics/ng-update/migrations/class-inheritance.js.map +1 -0
  199. package/schematics/ng-update/migrations/class-names.js +15 -12
  200. package/schematics/ng-update/migrations/class-names.js.map +1 -0
  201. package/schematics/ng-update/migrations/constructor-signature.js +10 -7
  202. package/schematics/ng-update/migrations/constructor-signature.js.map +1 -0
  203. package/schematics/ng-update/migrations/css-selectors.js +8 -5
  204. package/schematics/ng-update/migrations/css-selectors.js.map +1 -0
  205. package/schematics/ng-update/migrations/css-tokens.js +8 -5
  206. package/schematics/ng-update/migrations/css-tokens.js.map +1 -0
  207. package/schematics/ng-update/migrations/element-selectors.js +8 -5
  208. package/schematics/ng-update/migrations/element-selectors.js.map +1 -0
  209. package/schematics/ng-update/migrations/input-names.js +8 -5
  210. package/schematics/ng-update/migrations/input-names.js.map +1 -0
  211. package/schematics/ng-update/migrations/method-call-arguments.js +8 -5
  212. package/schematics/ng-update/migrations/method-call-arguments.js.map +1 -0
  213. package/schematics/ng-update/migrations/misc-template.js +6 -3
  214. package/schematics/ng-update/migrations/misc-template.js.map +1 -0
  215. package/schematics/ng-update/migrations/output-names.js +8 -5
  216. package/schematics/ng-update/migrations/output-names.js.map +1 -0
  217. package/schematics/ng-update/migrations/property-names.js +8 -5
  218. package/schematics/ng-update/migrations/property-names.js.map +1 -0
  219. package/schematics/ng-update/migrations/symbol-removal.js +10 -6
  220. package/schematics/ng-update/migrations/symbol-removal.js.map +1 -0
  221. package/schematics/ng-update/public-api.js +1 -1
  222. package/schematics/ng-update/public-api.js.map +1 -0
  223. package/schematics/ng-update/typescript/base-types.js +1 -1
  224. package/schematics/ng-update/typescript/base-types.js.map +1 -0
  225. package/schematics/ng-update/typescript/imports.js +1 -1
  226. package/schematics/ng-update/typescript/imports.js.map +1 -0
  227. package/schematics/ng-update/typescript/literal.js +1 -1
  228. package/schematics/ng-update/typescript/literal.js.map +1 -0
  229. package/schematics/ng-update/typescript/module-specifiers.js +1 -1
  230. package/schematics/ng-update/typescript/module-specifiers.js.map +1 -0
  231. package/schematics/ng-update/upgrade-data.js +1 -1
  232. package/schematics/ng-update/upgrade-data.js.map +1 -0
  233. package/schematics/paths.js +1 -1
  234. package/schematics/paths.js.map +1 -0
  235. package/schematics/update-tool/component-resource-collector.js +3 -5
  236. package/schematics/update-tool/component-resource-collector.js.map +1 -0
  237. package/schematics/update-tool/file-system.js +1 -1
  238. package/schematics/update-tool/file-system.js.map +1 -0
  239. package/schematics/update-tool/index.js +2 -8
  240. package/schematics/update-tool/index.js.map +1 -0
  241. package/schematics/update-tool/logger.js +1 -1
  242. package/schematics/update-tool/logger.js.map +1 -0
  243. package/schematics/update-tool/migration.js +3 -10
  244. package/schematics/update-tool/migration.js.map +1 -0
  245. package/schematics/update-tool/public-api.js +1 -1
  246. package/schematics/update-tool/public-api.js.map +1 -0
  247. package/schematics/update-tool/target-version.js +1 -1
  248. package/schematics/update-tool/target-version.js.map +1 -0
  249. package/schematics/update-tool/update-recorder.js +1 -1
  250. package/schematics/update-tool/update-recorder.js.map +1 -0
  251. package/schematics/update-tool/utils/decorators.js +1 -1
  252. package/schematics/update-tool/utils/decorators.js.map +1 -0
  253. package/schematics/update-tool/utils/diagnostics.js +1 -1
  254. package/schematics/update-tool/utils/diagnostics.js.map +1 -0
  255. package/schematics/update-tool/utils/functions.js +1 -1
  256. package/schematics/update-tool/utils/functions.js.map +1 -0
  257. package/schematics/update-tool/utils/imports.js +1 -1
  258. package/schematics/update-tool/utils/imports.js.map +1 -0
  259. package/schematics/update-tool/utils/line-mappings.js +1 -1
  260. package/schematics/update-tool/utils/line-mappings.js.map +1 -0
  261. package/schematics/update-tool/utils/parse-tsconfig.js +1 -1
  262. package/schematics/update-tool/utils/parse-tsconfig.js.map +1 -0
  263. package/schematics/update-tool/utils/property-name.js +1 -1
  264. package/schematics/update-tool/utils/property-name.js.map +1 -0
  265. package/schematics/update-tool/utils/virtual-host.js +2 -3
  266. package/schematics/update-tool/utils/virtual-host.js.map +1 -0
  267. package/schematics/update-tool/version-changes.js +1 -1
  268. package/schematics/update-tool/version-changes.js.map +1 -0
  269. package/schematics/utils/ast/ng-module-imports.js +1 -1
  270. package/schematics/utils/ast/ng-module-imports.js.map +1 -0
  271. package/schematics/utils/ast.d.ts +2 -2
  272. package/schematics/utils/ast.js +23 -12
  273. package/schematics/utils/ast.js.map +1 -0
  274. package/schematics/utils/build-component.js +22 -17
  275. package/schematics/utils/build-component.js.map +1 -0
  276. package/schematics/utils/get-project.d.ts +2 -2
  277. package/schematics/utils/get-project.js +1 -1
  278. package/schematics/utils/get-project.js.map +1 -0
  279. package/schematics/utils/html-manipulation.js +1 -1
  280. package/schematics/utils/html-manipulation.js.map +1 -0
  281. package/schematics/utils/index.js +1 -1
  282. package/schematics/utils/index.js.map +1 -0
  283. package/schematics/utils/parse5-element.js +1 -1
  284. package/schematics/utils/parse5-element.js.map +1 -0
  285. package/schematics/utils/project-index-file.d.ts +6 -3
  286. package/schematics/utils/project-index-file.js +30 -7
  287. package/schematics/utils/project-index-file.js.map +1 -0
  288. package/schematics/utils/project-main-file.d.ts +3 -2
  289. package/schematics/utils/project-main-file.js +1 -1
  290. package/schematics/utils/project-main-file.js.map +1 -0
  291. package/schematics/utils/project-style-file.d.ts +2 -2
  292. package/schematics/utils/project-style-file.js +1 -1
  293. package/schematics/utils/project-style-file.js.map +1 -0
  294. package/schematics/utils/project-targets.d.ts +5 -4
  295. package/schematics/utils/project-targets.js +15 -8
  296. package/schematics/utils/project-targets.js.map +1 -0
  297. package/schematics/utils/project-tsconfig-paths.d.ts +3 -3
  298. package/schematics/utils/project-tsconfig-paths.js +26 -14
  299. package/schematics/utils/project-tsconfig-paths.js.map +1 -0
  300. package/schematics/utils/schematic-options.d.ts +2 -2
  301. package/schematics/utils/schematic-options.js +27 -15
  302. package/schematics/utils/schematic-options.js.map +1 -0
  303. package/scrolling/index.d.ts +62 -7
  304. package/{scrolling-module.d-a08a462d.d.ts → scrolling-module.d-DP0Qb7T9.d.ts} +5 -4
  305. package/{selection-model.d-1a70542c.d.ts → selection-model.d-DNgOONDg.d.ts} +2 -1
  306. package/stepper/index.d.ts +6 -5
  307. package/table/index.d.ts +9 -197
  308. package/testing/index.d.ts +3 -2
  309. package/testing/selenium-webdriver/index.d.ts +3 -2
  310. package/testing/testbed/index.d.ts +3 -2
  311. package/text-field/index.d.ts +5 -2
  312. package/text-field-prebuilt.css +1 -1
  313. package/tree/index.d.ts +7 -4
  314. package/{tree-key-manager-strategy.d-603161dd.d.ts → tree-key-manager-strategy.d-XB6M79l-.d.ts} +1 -1
  315. package/{unique-selection-dispatcher.d-7993b9f5.d.ts → unique-selection-dispatcher.d-DSFqf1MM.d.ts} +2 -1
  316. package/{view-repeater.d-79039e1f.d.ts → view-repeater.d-BKljR8u8.d.ts} +2 -1
  317. package/fesm2022/a11y-module-e6996d20.mjs.map +0 -1
  318. package/fesm2022/activedescendant-key-manager-1351a9d3.mjs.map +0 -1
  319. package/fesm2022/array-ee3b4bab.mjs.map +0 -1
  320. package/fesm2022/backwards-compatibility-bcbe473e.mjs +0 -25
  321. package/fesm2022/backwards-compatibility-bcbe473e.mjs.map +0 -1
  322. package/fesm2022/bidi-module-0726b65c.mjs +0 -78
  323. package/fesm2022/bidi-module-0726b65c.mjs.map +0 -1
  324. package/fesm2022/breakpoints-observer-d4584b66.mjs.map +0 -1
  325. package/fesm2022/css-pixel-value-286c9a60.mjs.map +0 -1
  326. package/fesm2022/data-source-5320b6fd.mjs.map +0 -1
  327. package/fesm2022/directionality-7ea26429.mjs.map +0 -1
  328. package/fesm2022/dispose-view-repeater-strategy-b11b87ea.mjs.map +0 -1
  329. package/fesm2022/element-705567fe.mjs.map +0 -1
  330. package/fesm2022/fake-event-detection-7055b1bd.mjs.map +0 -1
  331. package/fesm2022/focus-key-manager-58d29acd.mjs.map +0 -1
  332. package/fesm2022/focus-monitor-cebaa0d1.mjs.map +0 -1
  333. package/fesm2022/id-generator-fba495fb.mjs.map +0 -1
  334. package/fesm2022/keycodes-107cd3e4.mjs.map +0 -1
  335. package/fesm2022/list-key-manager-c7b5cefb.mjs.map +0 -1
  336. package/fesm2022/modifiers-33a5859e.mjs +0 -13
  337. package/fesm2022/modifiers-33a5859e.mjs.map +0 -1
  338. package/fesm2022/observable-97c0792c.mjs +0 -15
  339. package/fesm2022/observable-97c0792c.mjs.map +0 -1
  340. package/fesm2022/observe-content-d2a6b5a0.mjs +0 -210
  341. package/fesm2022/observe-content-d2a6b5a0.mjs.map +0 -1
  342. package/fesm2022/overlay-module-863b82c9.mjs.map +0 -1
  343. package/fesm2022/passive-listeners-c0bdc49f.mjs.map +0 -1
  344. package/fesm2022/platform-1be098b0.mjs.map +0 -1
  345. package/fesm2022/portal-directives-c88fea11.mjs +0 -615
  346. package/fesm2022/portal-directives-c88fea11.mjs.map +0 -1
  347. package/fesm2022/recycle-view-repeater-strategy-c1712813.mjs.map +0 -1
  348. package/fesm2022/scrolling-61955dd1.mjs.map +0 -1
  349. package/fesm2022/scrolling-module-aa9eeac5.mjs +0 -1463
  350. package/fesm2022/scrolling-module-aa9eeac5.mjs.map +0 -1
  351. package/fesm2022/selection-model-30243dba.mjs.map +0 -1
  352. package/fesm2022/shadow-dom-9f403d00.mjs.map +0 -1
  353. package/fesm2022/style-loader-e14dc585.mjs.map +0 -1
  354. package/fesm2022/test-environment-34eef1ee.mjs.map +0 -1
  355. package/fesm2022/text-filtering-b60ba8a2.mjs +0 -698
  356. package/fesm2022/text-filtering-b60ba8a2.mjs.map +0 -1
  357. package/fesm2022/tree-key-manager-2f20c79c.mjs.map +0 -1
  358. package/fesm2022/typeahead-11ae39bd.mjs.map +0 -1
  359. package/fesm2022/unique-selection-dispatcher-1d6f91d8.mjs.map +0 -1
  360. package/fesm2022/visually-hidden-83aea4a0.mjs +0 -18
  361. package/fesm2022/visually-hidden-83aea4a0.mjs.map +0 -1
  362. package/observe-content.d-c08bc882.d.ts +0 -84
  363. package/schematics/index.mjs +0 -37
  364. package/schematics/ng-add/index.mjs +0 -39
  365. package/schematics/ng-add/package-config.d.ts +0 -12
  366. package/schematics/ng-add/package-config.js +0 -51
  367. package/schematics/ng-add/package-config.mjs +0 -51
  368. package/schematics/ng-add/schema.mjs +0 -10
  369. package/schematics/ng-generate/drag-drop/index.mjs +0 -33
  370. package/schematics/ng-generate/drag-drop/schema.mjs +0 -10
  371. package/schematics/ng-update/data/attribute-selectors.mjs +0 -12
  372. package/schematics/ng-update/data/class-names.mjs +0 -12
  373. package/schematics/ng-update/data/constructor-checks.mjs +0 -17
  374. package/schematics/ng-update/data/css-selectors.mjs +0 -12
  375. package/schematics/ng-update/data/css-tokens.mjs +0 -12
  376. package/schematics/ng-update/data/element-selectors.mjs +0 -12
  377. package/schematics/ng-update/data/index.mjs +0 -35
  378. package/schematics/ng-update/data/input-names.mjs +0 -12
  379. package/schematics/ng-update/data/method-call-checks.mjs +0 -12
  380. package/schematics/ng-update/data/output-names.mjs +0 -12
  381. package/schematics/ng-update/data/property-names.mjs +0 -12
  382. package/schematics/ng-update/data/symbol-removal.mjs +0 -12
  383. package/schematics/ng-update/devkit-file-system.mjs +0 -84
  384. package/schematics/ng-update/devkit-migration-rule.mjs +0 -133
  385. package/schematics/ng-update/devkit-migration.mjs +0 -20
  386. package/schematics/ng-update/find-stylesheets.mjs +0 -41
  387. package/schematics/ng-update/html-parsing/angular.mjs +0 -51
  388. package/schematics/ng-update/html-parsing/elements.mjs +0 -62
  389. package/schematics/ng-update/index.mjs +0 -29
  390. package/schematics/ng-update/migrations/attribute-selectors.mjs +0 -68
  391. package/schematics/ng-update/migrations/class-inheritance.mjs +0 -55
  392. package/schematics/ng-update/migrations/class-names.mjs +0 -88
  393. package/schematics/ng-update/migrations/constructor-signature.mjs +0 -136
  394. package/schematics/ng-update/migrations/css-selectors.mjs +0 -72
  395. package/schematics/ng-update/migrations/css-tokens.mjs +0 -80
  396. package/schematics/ng-update/migrations/element-selectors.mjs +0 -63
  397. package/schematics/ng-update/migrations/input-names.mjs +0 -56
  398. package/schematics/ng-update/migrations/method-call-arguments.mjs +0 -59
  399. package/schematics/ng-update/migrations/misc-template.mjs +0 -22
  400. package/schematics/ng-update/migrations/output-names.mjs +0 -43
  401. package/schematics/ng-update/migrations/property-names.mjs +0 -57
  402. package/schematics/ng-update/migrations/symbol-removal.mjs +0 -43
  403. package/schematics/ng-update/public-api.mjs +0 -36
  404. package/schematics/ng-update/typescript/base-types.mjs +0 -23
  405. package/schematics/ng-update/typescript/imports.mjs +0 -53
  406. package/schematics/ng-update/typescript/literal.mjs +0 -32
  407. package/schematics/ng-update/typescript/module-specifiers.mjs +0 -35
  408. package/schematics/ng-update/upgrade-data.mjs +0 -40
  409. package/schematics/paths.mjs +0 -16
  410. package/schematics/schematics.externs.js +0 -0
  411. package/schematics/tsconfig.json +0 -29
  412. package/schematics/update-tool/component-resource-collector.mjs +0 -166
  413. package/schematics/update-tool/file-system.mjs +0 -18
  414. package/schematics/update-tool/index.mjs +0 -178
  415. package/schematics/update-tool/logger.mjs +0 -18
  416. package/schematics/update-tool/migration.mjs +0 -77
  417. package/schematics/update-tool/public-api.mjs +0 -33
  418. package/schematics/update-tool/target-version.mjs +0 -27
  419. package/schematics/update-tool/update-recorder.mjs +0 -10
  420. package/schematics/update-tool/update-tool.externs.js +0 -0
  421. package/schematics/update-tool/utils/decorators.mjs +0 -41
  422. package/schematics/update-tool/utils/diagnostics.mjs +0 -18
  423. package/schematics/update-tool/utils/functions.mjs +0 -20
  424. package/schematics/update-tool/utils/imports.mjs +0 -110
  425. package/schematics/update-tool/utils/line-mappings.mjs +0 -75
  426. package/schematics/update-tool/utils/parse-tsconfig.mjs +0 -45
  427. package/schematics/update-tool/utils/property-name.mjs +0 -27
  428. package/schematics/update-tool/utils/virtual-host.mjs +0 -72
  429. package/schematics/update-tool/version-changes.mjs +0 -38
  430. package/schematics/utils/ast/ng-module-imports.mjs +0 -82
  431. package/schematics/utils/ast.mjs +0 -68
  432. package/schematics/utils/build-component.mjs +0 -183
  433. package/schematics/utils/get-project.mjs +0 -28
  434. package/schematics/utils/html-manipulation.mjs +0 -91
  435. package/schematics/utils/index.mjs +0 -36
  436. package/schematics/utils/parse5-element.mjs +0 -30
  437. package/schematics/utils/project-index-file.mjs +0 -20
  438. package/schematics/utils/project-main-file.mjs +0 -25
  439. package/schematics/utils/project-style-file.mjs +0 -42
  440. package/schematics/utils/project-targets.mjs +0 -39
  441. package/schematics/utils/project-tsconfig-paths.mjs +0 -34
  442. package/schematics/utils/schematic-options.mjs +0 -77
  443. package/viewport-ruler.d-f3d3e82f.d.ts +0 -57
  444. /package/{platform.d-0a5b4792.d.ts → platform.d-B3vREl3q.d.ts} +0 -0
  445. /package/{style-loader.d-19baab84.d.ts → style-loader.d-BXZfQZTF.d.ts} +0 -0
@@ -110,10 +110,10 @@ class SharedResizeObserver {
110
110
  }
111
111
  return this._observers.get(box).observe(target);
112
112
  }
113
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: SharedResizeObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
114
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: SharedResizeObserver, providedIn: 'root' });
113
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: SharedResizeObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
114
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: SharedResizeObserver, providedIn: 'root' });
115
115
  }
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.1", ngImport: i0, type: SharedResizeObserver, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: SharedResizeObserver, decorators: [{
117
117
  type: Injectable,
118
118
  args: [{
119
119
  providedIn: 'root',
@@ -1 +1 @@
1
- {"version":3,"file":"private.mjs","sources":["../../../../../../../src/cdk/observers/private/shared-resize-observer.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\nimport {inject, Injectable, NgZone, OnDestroy, RendererFactory2} from '@angular/core';\nimport {Observable, Subject} from 'rxjs';\nimport {filter, shareReplay, takeUntil} from 'rxjs/operators';\n\n/**\n * Handler that logs \"ResizeObserver loop limit exceeded\" errors.\n * These errors are not shown in the Chrome console, so we log them to ensure developers are aware.\n * @param e The error\n */\nconst loopLimitExceededErrorHandler = (e: unknown) => {\n if (e instanceof ErrorEvent && e.message === 'ResizeObserver loop limit exceeded') {\n console.error(\n `${e.message}. This could indicate a performance issue with your app. See https://github.com/WICG/resize-observer/blob/master/explainer.md#error-handling`,\n );\n }\n};\n\n/**\n * A shared ResizeObserver to be used for a particular box type (content-box, border-box, or\n * device-pixel-content-box)\n */\nclass SingleBoxSharedResizeObserver {\n /** Stream that emits when the shared observer is destroyed. */\n private _destroyed = new Subject<void>();\n /** Stream of all events from the ResizeObserver. */\n private _resizeSubject = new Subject<ResizeObserverEntry[]>();\n /** ResizeObserver used to observe element resize events. */\n private _resizeObserver?: ResizeObserver;\n /** A map of elements to streams of their resize events. */\n private _elementObservables = new Map<Element, Observable<ResizeObserverEntry[]>>();\n\n constructor(\n /** The box type to observe for resizes. */\n private _box: ResizeObserverBoxOptions,\n ) {\n if (typeof ResizeObserver !== 'undefined') {\n this._resizeObserver = new ResizeObserver(entries => this._resizeSubject.next(entries));\n }\n }\n\n /**\n * Gets a stream of resize events for the given element.\n * @param target The element to observe.\n * @return The stream of resize events for the element.\n */\n observe(target: Element): Observable<ResizeObserverEntry[]> {\n if (!this._elementObservables.has(target)) {\n this._elementObservables.set(\n target,\n new Observable<ResizeObserverEntry[]>(observer => {\n const subscription = this._resizeSubject.subscribe(observer);\n this._resizeObserver?.observe(target, {box: this._box});\n return () => {\n this._resizeObserver?.unobserve(target);\n subscription.unsubscribe();\n this._elementObservables.delete(target);\n };\n }).pipe(\n filter(entries => entries.some(entry => entry.target === target)),\n // Share a replay of the last event so that subsequent calls to observe the same element\n // receive initial sizing info like the first one. Also enable ref counting so the\n // element will be automatically unobserved when there are no more subscriptions.\n shareReplay({bufferSize: 1, refCount: true}),\n takeUntil(this._destroyed),\n ),\n );\n }\n return this._elementObservables.get(target)!;\n }\n\n /** Destroys this instance. */\n destroy() {\n this._destroyed.next();\n this._destroyed.complete();\n this._resizeSubject.complete();\n this._elementObservables.clear();\n }\n}\n\n/**\n * Allows observing resize events on multiple elements using a shared set of ResizeObserver.\n * Sharing a ResizeObserver instance is recommended for better performance (see\n * https://github.com/WICG/resize-observer/issues/59).\n *\n * Rather than share a single `ResizeObserver`, this class creates one `ResizeObserver` per type\n * of observed box ('content-box', 'border-box', and 'device-pixel-content-box'). This avoids\n * later calls to `observe` with a different box type from influencing the events dispatched to\n * earlier calls.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SharedResizeObserver implements OnDestroy {\n private _cleanupErrorListener: (() => void) | undefined;\n\n /** Map of box type to shared resize observer. */\n private _observers = new Map<ResizeObserverBoxOptions, SingleBoxSharedResizeObserver>();\n\n /** The Angular zone. */\n private _ngZone = inject(NgZone);\n\n constructor() {\n if (typeof ResizeObserver !== 'undefined' && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n this._ngZone.runOutsideAngular(() => {\n const renderer = inject(RendererFactory2).createRenderer(null, null);\n this._cleanupErrorListener = renderer.listen(\n 'window',\n 'error',\n loopLimitExceededErrorHandler,\n );\n });\n }\n }\n\n ngOnDestroy() {\n for (const [, observer] of this._observers) {\n observer.destroy();\n }\n this._observers.clear();\n this._cleanupErrorListener?.();\n }\n\n /**\n * Gets a stream of resize events for the given target element and box type.\n * @param target The element to observe for resizes.\n * @param options Options to pass to the `ResizeObserver`\n * @return The stream of resize events for the element.\n */\n observe(target: Element, options?: ResizeObserverOptions): Observable<ResizeObserverEntry[]> {\n const box = options?.box || 'content-box';\n if (!this._observers.has(box)) {\n this._observers.set(box, new SingleBoxSharedResizeObserver(box));\n }\n return this._observers.get(box)!.observe(target);\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"private.mjs","sources":["../../../../../../darwin_arm64-fastbuild-ST-46c76129e412/bin/src/cdk/observers/private/shared-resize-observer.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\nimport {inject, Injectable, NgZone, OnDestroy, RendererFactory2} from '@angular/core';\nimport {Observable, Subject} from 'rxjs';\nimport {filter, shareReplay, takeUntil} from 'rxjs/operators';\n\n/**\n * Handler that logs \"ResizeObserver loop limit exceeded\" errors.\n * These errors are not shown in the Chrome console, so we log them to ensure developers are aware.\n * @param e The error\n */\nconst loopLimitExceededErrorHandler = (e: unknown) => {\n if (e instanceof ErrorEvent && e.message === 'ResizeObserver loop limit exceeded') {\n console.error(\n `${e.message}. This could indicate a performance issue with your app. See https://github.com/WICG/resize-observer/blob/master/explainer.md#error-handling`,\n );\n }\n};\n\n/**\n * A shared ResizeObserver to be used for a particular box type (content-box, border-box, or\n * device-pixel-content-box)\n */\nclass SingleBoxSharedResizeObserver {\n /** Stream that emits when the shared observer is destroyed. */\n private _destroyed = new Subject<void>();\n /** Stream of all events from the ResizeObserver. */\n private _resizeSubject = new Subject<ResizeObserverEntry[]>();\n /** ResizeObserver used to observe element resize events. */\n private _resizeObserver?: ResizeObserver;\n /** A map of elements to streams of their resize events. */\n private _elementObservables = new Map<Element, Observable<ResizeObserverEntry[]>>();\n\n constructor(\n /** The box type to observe for resizes. */\n private _box: ResizeObserverBoxOptions,\n ) {\n if (typeof ResizeObserver !== 'undefined') {\n this._resizeObserver = new ResizeObserver(entries => this._resizeSubject.next(entries));\n }\n }\n\n /**\n * Gets a stream of resize events for the given element.\n * @param target The element to observe.\n * @return The stream of resize events for the element.\n */\n observe(target: Element): Observable<ResizeObserverEntry[]> {\n if (!this._elementObservables.has(target)) {\n this._elementObservables.set(\n target,\n new Observable<ResizeObserverEntry[]>(observer => {\n const subscription = this._resizeSubject.subscribe(observer);\n this._resizeObserver?.observe(target, {box: this._box});\n return () => {\n this._resizeObserver?.unobserve(target);\n subscription.unsubscribe();\n this._elementObservables.delete(target);\n };\n }).pipe(\n filter(entries => entries.some(entry => entry.target === target)),\n // Share a replay of the last event so that subsequent calls to observe the same element\n // receive initial sizing info like the first one. Also enable ref counting so the\n // element will be automatically unobserved when there are no more subscriptions.\n shareReplay({bufferSize: 1, refCount: true}),\n takeUntil(this._destroyed),\n ),\n );\n }\n return this._elementObservables.get(target)!;\n }\n\n /** Destroys this instance. */\n destroy() {\n this._destroyed.next();\n this._destroyed.complete();\n this._resizeSubject.complete();\n this._elementObservables.clear();\n }\n}\n\n/**\n * Allows observing resize events on multiple elements using a shared set of ResizeObserver.\n * Sharing a ResizeObserver instance is recommended for better performance (see\n * https://github.com/WICG/resize-observer/issues/59).\n *\n * Rather than share a single `ResizeObserver`, this class creates one `ResizeObserver` per type\n * of observed box ('content-box', 'border-box', and 'device-pixel-content-box'). This avoids\n * later calls to `observe` with a different box type from influencing the events dispatched to\n * earlier calls.\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SharedResizeObserver implements OnDestroy {\n private _cleanupErrorListener: (() => void) | undefined;\n\n /** Map of box type to shared resize observer. */\n private _observers = new Map<ResizeObserverBoxOptions, SingleBoxSharedResizeObserver>();\n\n /** The Angular zone. */\n private _ngZone = inject(NgZone);\n\n constructor() {\n if (typeof ResizeObserver !== 'undefined' && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n this._ngZone.runOutsideAngular(() => {\n const renderer = inject(RendererFactory2).createRenderer(null, null);\n this._cleanupErrorListener = renderer.listen(\n 'window',\n 'error',\n loopLimitExceededErrorHandler,\n );\n });\n }\n }\n\n ngOnDestroy() {\n for (const [, observer] of this._observers) {\n observer.destroy();\n }\n this._observers.clear();\n this._cleanupErrorListener?.();\n }\n\n /**\n * Gets a stream of resize events for the given target element and box type.\n * @param target The element to observe for resizes.\n * @param options Options to pass to the `ResizeObserver`\n * @return The stream of resize events for the element.\n */\n observe(target: Element, options?: ResizeObserverOptions): Observable<ResizeObserverEntry[]> {\n const box = options?.box || 'content-box';\n if (!this._observers.has(box)) {\n this._observers.set(box, new SingleBoxSharedResizeObserver(box));\n }\n return this._observers.get(box)!.observe(target);\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,210 @@
1
- export { a as CdkObserveContent, C as ContentObserver, M as MutationObserverFactory, O as ObserversModule } from './observe-content-d2a6b5a0.mjs';
2
- import '@angular/core';
3
- import 'rxjs';
4
- import 'rxjs/operators';
5
- import './element-705567fe.mjs';
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, inject, NgZone, ElementRef, EventEmitter, booleanAttribute, Directive, Output, Input, NgModule } from '@angular/core';
3
+ import { Observable, Subject } from 'rxjs';
4
+ import { map, filter, debounceTime } from 'rxjs/operators';
5
+ import { c as coerceNumberProperty, a as coerceElement } from './element-x4z00URv.mjs';
6
+
7
+ // Angular may add, remove, or edit comment nodes during change detection. We don't care about
8
+ // these changes because they don't affect the user-preceived content, and worse it can cause
9
+ // infinite change detection cycles where the change detection updates a comment, triggering the
10
+ // MutationObserver, triggering another change detection and kicking the cycle off again.
11
+ function shouldIgnoreRecord(record) {
12
+ // Ignore changes to comment text.
13
+ if (record.type === 'characterData' && record.target instanceof Comment) {
14
+ return true;
15
+ }
16
+ // Ignore addition / removal of comments.
17
+ if (record.type === 'childList') {
18
+ for (let i = 0; i < record.addedNodes.length; i++) {
19
+ if (!(record.addedNodes[i] instanceof Comment)) {
20
+ return false;
21
+ }
22
+ }
23
+ for (let i = 0; i < record.removedNodes.length; i++) {
24
+ if (!(record.removedNodes[i] instanceof Comment)) {
25
+ return false;
26
+ }
27
+ }
28
+ return true;
29
+ }
30
+ // Observe everything else.
31
+ return false;
32
+ }
33
+ /**
34
+ * Factory that creates a new MutationObserver and allows us to stub it out in unit tests.
35
+ * @docs-private
36
+ */
37
+ class MutationObserverFactory {
38
+ create(callback) {
39
+ return typeof MutationObserver === 'undefined' ? null : new MutationObserver(callback);
40
+ }
41
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: MutationObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
42
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: MutationObserverFactory, providedIn: 'root' });
43
+ }
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: MutationObserverFactory, decorators: [{
45
+ type: Injectable,
46
+ args: [{ providedIn: 'root' }]
47
+ }] });
48
+ /** An injectable service that allows watching elements for changes to their content. */
49
+ class ContentObserver {
50
+ _mutationObserverFactory = inject(MutationObserverFactory);
51
+ /** Keeps track of the existing MutationObservers so they can be reused. */
52
+ _observedElements = new Map();
53
+ _ngZone = inject(NgZone);
54
+ constructor() { }
55
+ ngOnDestroy() {
56
+ this._observedElements.forEach((_, element) => this._cleanupObserver(element));
57
+ }
58
+ observe(elementOrRef) {
59
+ const element = coerceElement(elementOrRef);
60
+ return new Observable((observer) => {
61
+ const stream = this._observeElement(element);
62
+ const subscription = stream
63
+ .pipe(map(records => records.filter(record => !shouldIgnoreRecord(record))), filter(records => !!records.length))
64
+ .subscribe(records => {
65
+ this._ngZone.run(() => {
66
+ observer.next(records);
67
+ });
68
+ });
69
+ return () => {
70
+ subscription.unsubscribe();
71
+ this._unobserveElement(element);
72
+ };
73
+ });
74
+ }
75
+ /**
76
+ * Observes the given element by using the existing MutationObserver if available, or creating a
77
+ * new one if not.
78
+ */
79
+ _observeElement(element) {
80
+ return this._ngZone.runOutsideAngular(() => {
81
+ if (!this._observedElements.has(element)) {
82
+ const stream = new Subject();
83
+ const observer = this._mutationObserverFactory.create(mutations => stream.next(mutations));
84
+ if (observer) {
85
+ observer.observe(element, {
86
+ characterData: true,
87
+ childList: true,
88
+ subtree: true,
89
+ });
90
+ }
91
+ this._observedElements.set(element, { observer, stream, count: 1 });
92
+ }
93
+ else {
94
+ this._observedElements.get(element).count++;
95
+ }
96
+ return this._observedElements.get(element).stream;
97
+ });
98
+ }
99
+ /**
100
+ * Un-observes the given element and cleans up the underlying MutationObserver if nobody else is
101
+ * observing this element.
102
+ */
103
+ _unobserveElement(element) {
104
+ if (this._observedElements.has(element)) {
105
+ this._observedElements.get(element).count--;
106
+ if (!this._observedElements.get(element).count) {
107
+ this._cleanupObserver(element);
108
+ }
109
+ }
110
+ }
111
+ /** Clean up the underlying MutationObserver for the specified element. */
112
+ _cleanupObserver(element) {
113
+ if (this._observedElements.has(element)) {
114
+ const { observer, stream } = this._observedElements.get(element);
115
+ if (observer) {
116
+ observer.disconnect();
117
+ }
118
+ stream.complete();
119
+ this._observedElements.delete(element);
120
+ }
121
+ }
122
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: ContentObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
123
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: ContentObserver, providedIn: 'root' });
124
+ }
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: ContentObserver, decorators: [{
126
+ type: Injectable,
127
+ args: [{ providedIn: 'root' }]
128
+ }], ctorParameters: () => [] });
129
+ /**
130
+ * Directive that triggers a callback whenever the content of
131
+ * its associated element has changed.
132
+ */
133
+ class CdkObserveContent {
134
+ _contentObserver = inject(ContentObserver);
135
+ _elementRef = inject(ElementRef);
136
+ /** Event emitted for each change in the element's content. */
137
+ event = new EventEmitter();
138
+ /**
139
+ * Whether observing content is disabled. This option can be used
140
+ * to disconnect the underlying MutationObserver until it is needed.
141
+ */
142
+ get disabled() {
143
+ return this._disabled;
144
+ }
145
+ set disabled(value) {
146
+ this._disabled = value;
147
+ this._disabled ? this._unsubscribe() : this._subscribe();
148
+ }
149
+ _disabled = false;
150
+ /** Debounce interval for emitting the changes. */
151
+ get debounce() {
152
+ return this._debounce;
153
+ }
154
+ set debounce(value) {
155
+ this._debounce = coerceNumberProperty(value);
156
+ this._subscribe();
157
+ }
158
+ _debounce;
159
+ _currentSubscription = null;
160
+ constructor() { }
161
+ ngAfterContentInit() {
162
+ if (!this._currentSubscription && !this.disabled) {
163
+ this._subscribe();
164
+ }
165
+ }
166
+ ngOnDestroy() {
167
+ this._unsubscribe();
168
+ }
169
+ _subscribe() {
170
+ this._unsubscribe();
171
+ const stream = this._contentObserver.observe(this._elementRef);
172
+ this._currentSubscription = (this.debounce ? stream.pipe(debounceTime(this.debounce)) : stream).subscribe(this.event);
173
+ }
174
+ _unsubscribe() {
175
+ this._currentSubscription?.unsubscribe();
176
+ }
177
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: CdkObserveContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
178
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.0.0-next.5", type: CdkObserveContent, isStandalone: true, selector: "[cdkObserveContent]", inputs: { disabled: ["cdkObserveContentDisabled", "disabled", booleanAttribute], debounce: "debounce" }, outputs: { event: "cdkObserveContent" }, exportAs: ["cdkObserveContent"], ngImport: i0 });
179
+ }
180
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: CdkObserveContent, decorators: [{
181
+ type: Directive,
182
+ args: [{
183
+ selector: '[cdkObserveContent]',
184
+ exportAs: 'cdkObserveContent',
185
+ }]
186
+ }], ctorParameters: () => [], propDecorators: { event: [{
187
+ type: Output,
188
+ args: ['cdkObserveContent']
189
+ }], disabled: [{
190
+ type: Input,
191
+ args: [{ alias: 'cdkObserveContentDisabled', transform: booleanAttribute }]
192
+ }], debounce: [{
193
+ type: Input
194
+ }] } });
195
+ class ObserversModule {
196
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: ObserversModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
197
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.0-next.5", ngImport: i0, type: ObserversModule, imports: [CdkObserveContent], exports: [CdkObserveContent] });
198
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: ObserversModule, providers: [MutationObserverFactory] });
199
+ }
200
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-next.5", ngImport: i0, type: ObserversModule, decorators: [{
201
+ type: NgModule,
202
+ args: [{
203
+ imports: [CdkObserveContent],
204
+ exports: [CdkObserveContent],
205
+ providers: [MutationObserverFactory],
206
+ }]
207
+ }] });
208
+
209
+ export { CdkObserveContent, ContentObserver, MutationObserverFactory, ObserversModule };
6
210
  //# sourceMappingURL=observers.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"observers.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
1
+ {"version":3,"file":"observers.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-46c76129e412/bin/src/cdk/observers/observe-content.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {NumberInput, coerceElement, coerceNumberProperty} from '../coercion';\nimport {\n AfterContentInit,\n Directive,\n ElementRef,\n EventEmitter,\n Injectable,\n Input,\n NgModule,\n NgZone,\n OnDestroy,\n Output,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport {Observable, Observer, Subject, Subscription} from 'rxjs';\nimport {debounceTime, filter, map} from 'rxjs/operators';\n\n// Angular may add, remove, or edit comment nodes during change detection. We don't care about\n// these changes because they don't affect the user-preceived content, and worse it can cause\n// infinite change detection cycles where the change detection updates a comment, triggering the\n// MutationObserver, triggering another change detection and kicking the cycle off again.\nfunction shouldIgnoreRecord(record: MutationRecord) {\n // Ignore changes to comment text.\n if (record.type === 'characterData' && record.target instanceof Comment) {\n return true;\n }\n // Ignore addition / removal of comments.\n if (record.type === 'childList') {\n for (let i = 0; i < record.addedNodes.length; i++) {\n if (!(record.addedNodes[i] instanceof Comment)) {\n return false;\n }\n }\n for (let i = 0; i < record.removedNodes.length; i++) {\n if (!(record.removedNodes[i] instanceof Comment)) {\n return false;\n }\n }\n return true;\n }\n // Observe everything else.\n return false;\n}\n\n/**\n * Factory that creates a new MutationObserver and allows us to stub it out in unit tests.\n * @docs-private\n */\n@Injectable({providedIn: 'root'})\nexport class MutationObserverFactory {\n create(callback: MutationCallback): MutationObserver | null {\n return typeof MutationObserver === 'undefined' ? null : new MutationObserver(callback);\n }\n}\n\n/** An injectable service that allows watching elements for changes to their content. */\n@Injectable({providedIn: 'root'})\nexport class ContentObserver implements OnDestroy {\n private _mutationObserverFactory = inject(MutationObserverFactory);\n\n /** Keeps track of the existing MutationObservers so they can be reused. */\n private _observedElements = new Map<\n Element,\n {\n observer: MutationObserver | null;\n readonly stream: Subject<MutationRecord[]>;\n count: number;\n }\n >();\n\n private _ngZone = inject(NgZone);\n\n constructor(...args: unknown[]);\n constructor() {}\n\n ngOnDestroy() {\n this._observedElements.forEach((_, element) => this._cleanupObserver(element));\n }\n\n /**\n * Observe content changes on an element.\n * @param element The element to observe for content changes.\n */\n observe(element: Element): Observable<MutationRecord[]>;\n\n /**\n * Observe content changes on an element.\n * @param element The element to observe for content changes.\n */\n observe(element: ElementRef<Element>): Observable<MutationRecord[]>;\n\n observe(elementOrRef: Element | ElementRef<Element>): Observable<MutationRecord[]> {\n const element = coerceElement(elementOrRef);\n\n return new Observable((observer: Observer<MutationRecord[]>) => {\n const stream = this._observeElement(element);\n const subscription = stream\n .pipe(\n map(records => records.filter(record => !shouldIgnoreRecord(record))),\n filter(records => !!records.length),\n )\n .subscribe(records => {\n this._ngZone.run(() => {\n observer.next(records);\n });\n });\n\n return () => {\n subscription.unsubscribe();\n this._unobserveElement(element);\n };\n });\n }\n\n /**\n * Observes the given element by using the existing MutationObserver if available, or creating a\n * new one if not.\n */\n private _observeElement(element: Element): Subject<MutationRecord[]> {\n return this._ngZone.runOutsideAngular(() => {\n if (!this._observedElements.has(element)) {\n const stream = new Subject<MutationRecord[]>();\n const observer = this._mutationObserverFactory.create(mutations => stream.next(mutations));\n if (observer) {\n observer.observe(element, {\n characterData: true,\n childList: true,\n subtree: true,\n });\n }\n this._observedElements.set(element, {observer, stream, count: 1});\n } else {\n this._observedElements.get(element)!.count++;\n }\n return this._observedElements.get(element)!.stream;\n });\n }\n\n /**\n * Un-observes the given element and cleans up the underlying MutationObserver if nobody else is\n * observing this element.\n */\n private _unobserveElement(element: Element) {\n if (this._observedElements.has(element)) {\n this._observedElements.get(element)!.count--;\n if (!this._observedElements.get(element)!.count) {\n this._cleanupObserver(element);\n }\n }\n }\n\n /** Clean up the underlying MutationObserver for the specified element. */\n private _cleanupObserver(element: Element) {\n if (this._observedElements.has(element)) {\n const {observer, stream} = this._observedElements.get(element)!;\n if (observer) {\n observer.disconnect();\n }\n stream.complete();\n this._observedElements.delete(element);\n }\n }\n}\n\n/**\n * Directive that triggers a callback whenever the content of\n * its associated element has changed.\n */\n@Directive({\n selector: '[cdkObserveContent]',\n exportAs: 'cdkObserveContent',\n})\nexport class CdkObserveContent implements AfterContentInit, OnDestroy {\n private _contentObserver = inject(ContentObserver);\n private _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n /** Event emitted for each change in the element's content. */\n @Output('cdkObserveContent') readonly event = new EventEmitter<MutationRecord[]>();\n\n /**\n * Whether observing content is disabled. This option can be used\n * to disconnect the underlying MutationObserver until it is needed.\n */\n @Input({alias: 'cdkObserveContentDisabled', transform: booleanAttribute})\n get disabled(): boolean {\n return this._disabled;\n }\n set disabled(value: boolean) {\n this._disabled = value;\n this._disabled ? this._unsubscribe() : this._subscribe();\n }\n private _disabled = false;\n\n /** Debounce interval for emitting the changes. */\n @Input()\n get debounce(): number {\n return this._debounce;\n }\n set debounce(value: NumberInput) {\n this._debounce = coerceNumberProperty(value);\n this._subscribe();\n }\n private _debounce: number;\n\n private _currentSubscription: Subscription | null = null;\n\n constructor(...args: unknown[]);\n constructor() {}\n\n ngAfterContentInit() {\n if (!this._currentSubscription && !this.disabled) {\n this._subscribe();\n }\n }\n\n ngOnDestroy() {\n this._unsubscribe();\n }\n\n private _subscribe() {\n this._unsubscribe();\n const stream = this._contentObserver.observe(this._elementRef);\n\n this._currentSubscription = (\n this.debounce ? stream.pipe(debounceTime(this.debounce)) : stream\n ).subscribe(this.event);\n }\n\n private _unsubscribe() {\n this._currentSubscription?.unsubscribe();\n }\n}\n\n@NgModule({\n imports: [CdkObserveContent],\n exports: [CdkObserveContent],\n providers: [MutationObserverFactory],\n})\nexport class ObserversModule {}\n"],"names":[],"mappings":"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"}