@angular/cdk 19.0.0-next.0 → 19.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 (580) hide show
  1. package/a11y/_index.scss +12 -54
  2. package/a11y/index.d.ts +24 -38
  3. package/accordion/index.d.ts +5 -4
  4. package/bidi/index.d.ts +2 -2
  5. package/clipboard/index.d.ts +3 -4
  6. package/dialog/index.d.ts +12 -12
  7. package/drag-drop/index.d.ts +17 -37
  8. package/fesm2022/a11y.mjs +134 -181
  9. package/fesm2022/a11y.mjs.map +1 -1
  10. package/fesm2022/accordion.mjs +20 -27
  11. package/fesm2022/accordion.mjs.map +1 -1
  12. package/fesm2022/bidi.mjs +14 -19
  13. package/fesm2022/bidi.mjs.map +1 -1
  14. package/fesm2022/cdk.mjs +1 -1
  15. package/fesm2022/cdk.mjs.map +1 -1
  16. package/fesm2022/clipboard.mjs +19 -27
  17. package/fesm2022/clipboard.mjs.map +1 -1
  18. package/fesm2022/coercion/private.mjs.map +1 -1
  19. package/fesm2022/coercion.mjs.map +1 -1
  20. package/fesm2022/collections.mjs +3 -3
  21. package/fesm2022/collections.mjs.map +1 -1
  22. package/fesm2022/dialog.mjs +36 -56
  23. package/fesm2022/dialog.mjs.map +1 -1
  24. package/fesm2022/drag-drop.mjs +107 -181
  25. package/fesm2022/drag-drop.mjs.map +1 -1
  26. package/fesm2022/keycodes.mjs.map +1 -1
  27. package/fesm2022/layout.mjs +21 -26
  28. package/fesm2022/layout.mjs.map +1 -1
  29. package/fesm2022/listbox.mjs +17 -13
  30. package/fesm2022/listbox.mjs.map +1 -1
  31. package/fesm2022/menu.mjs +49 -61
  32. package/fesm2022/menu.mjs.map +1 -1
  33. package/fesm2022/observers/private.mjs +3 -3
  34. package/fesm2022/observers/private.mjs.map +1 -1
  35. package/fesm2022/observers.mjs +21 -22
  36. package/fesm2022/observers.mjs.map +1 -1
  37. package/fesm2022/overlay.mjs +120 -149
  38. package/fesm2022/overlay.mjs.map +1 -1
  39. package/fesm2022/platform.mjs +11 -14
  40. package/fesm2022/platform.mjs.map +1 -1
  41. package/fesm2022/portal.mjs +60 -63
  42. package/fesm2022/portal.mjs.map +1 -1
  43. package/fesm2022/private.mjs +65 -0
  44. package/fesm2022/private.mjs.map +1 -0
  45. package/fesm2022/scrolling.mjs +90 -132
  46. package/fesm2022/scrolling.mjs.map +1 -1
  47. package/fesm2022/stepper.mjs +69 -63
  48. package/fesm2022/stepper.mjs.map +1 -1
  49. package/fesm2022/table.mjs +171 -250
  50. package/fesm2022/table.mjs.map +1 -1
  51. package/fesm2022/testing/selenium-webdriver.mjs.map +1 -1
  52. package/fesm2022/testing/testbed.mjs +3 -2
  53. package/fesm2022/testing/testbed.mjs.map +1 -1
  54. package/fesm2022/testing.mjs.map +1 -1
  55. package/fesm2022/text-field.mjs +46 -40
  56. package/fesm2022/text-field.mjs.map +1 -1
  57. package/fesm2022/tree.mjs +90 -80
  58. package/fesm2022/tree.mjs.map +1 -1
  59. package/layout/index.d.ts +5 -7
  60. package/observers/index.d.ts +2 -2
  61. package/overlay/_index.scss +56 -21
  62. package/overlay/index.d.ts +24 -36
  63. package/overlay-prebuilt.css +1 -1
  64. package/package.json +5 -55
  65. package/platform/index.d.ts +2 -1
  66. package/portal/index.d.ts +22 -19
  67. package/private/index.d.ts +30 -0
  68. package/schematics/index.d.ts +1 -1
  69. package/schematics/index.js +2 -2
  70. package/schematics/index.mjs +2 -2
  71. package/schematics/ng-add/index.d.ts +1 -1
  72. package/schematics/ng-add/index.js +3 -3
  73. package/schematics/ng-add/index.mjs +3 -3
  74. package/schematics/ng-add/package-config.d.ts +1 -1
  75. package/schematics/ng-add/package-config.js +2 -2
  76. package/schematics/ng-add/package-config.mjs +2 -2
  77. package/schematics/ng-add/schema.d.ts +1 -1
  78. package/schematics/ng-add/schema.js +2 -2
  79. package/schematics/ng-add/schema.mjs +2 -2
  80. package/schematics/ng-generate/drag-drop/index.d.ts +1 -1
  81. package/schematics/ng-generate/drag-drop/index.js +2 -2
  82. package/schematics/ng-generate/drag-drop/index.mjs +2 -2
  83. package/schematics/ng-generate/drag-drop/schema.d.ts +1 -1
  84. package/schematics/ng-generate/drag-drop/schema.js +2 -2
  85. package/schematics/ng-generate/drag-drop/schema.mjs +2 -2
  86. package/schematics/ng-update/data/attribute-selectors.d.ts +1 -1
  87. package/schematics/ng-update/data/attribute-selectors.js +2 -2
  88. package/schematics/ng-update/data/attribute-selectors.mjs +2 -2
  89. package/schematics/ng-update/data/class-names.d.ts +1 -1
  90. package/schematics/ng-update/data/class-names.js +2 -2
  91. package/schematics/ng-update/data/class-names.mjs +2 -2
  92. package/schematics/ng-update/data/constructor-checks.d.ts +1 -1
  93. package/schematics/ng-update/data/constructor-checks.js +2 -2
  94. package/schematics/ng-update/data/constructor-checks.mjs +2 -2
  95. package/schematics/ng-update/data/css-selectors.d.ts +1 -1
  96. package/schematics/ng-update/data/css-selectors.js +2 -2
  97. package/schematics/ng-update/data/css-selectors.mjs +2 -2
  98. package/schematics/ng-update/data/css-tokens.d.ts +1 -1
  99. package/schematics/ng-update/data/css-tokens.js +2 -2
  100. package/schematics/ng-update/data/css-tokens.mjs +2 -2
  101. package/schematics/ng-update/data/element-selectors.d.ts +1 -1
  102. package/schematics/ng-update/data/element-selectors.js +2 -2
  103. package/schematics/ng-update/data/element-selectors.mjs +2 -2
  104. package/schematics/ng-update/data/index.d.ts +1 -1
  105. package/schematics/ng-update/data/index.js +2 -2
  106. package/schematics/ng-update/data/index.mjs +2 -2
  107. package/schematics/ng-update/data/input-names.d.ts +1 -1
  108. package/schematics/ng-update/data/input-names.js +2 -2
  109. package/schematics/ng-update/data/input-names.mjs +2 -2
  110. package/schematics/ng-update/data/method-call-checks.d.ts +1 -1
  111. package/schematics/ng-update/data/method-call-checks.js +2 -2
  112. package/schematics/ng-update/data/method-call-checks.mjs +2 -2
  113. package/schematics/ng-update/data/output-names.d.ts +1 -1
  114. package/schematics/ng-update/data/output-names.js +2 -2
  115. package/schematics/ng-update/data/output-names.mjs +2 -2
  116. package/schematics/ng-update/data/property-names.d.ts +1 -1
  117. package/schematics/ng-update/data/property-names.js +2 -2
  118. package/schematics/ng-update/data/property-names.mjs +2 -2
  119. package/schematics/ng-update/data/symbol-removal.d.ts +1 -1
  120. package/schematics/ng-update/data/symbol-removal.js +2 -2
  121. package/schematics/ng-update/data/symbol-removal.mjs +2 -2
  122. package/schematics/ng-update/devkit-file-system.d.ts +1 -1
  123. package/schematics/ng-update/devkit-file-system.js +2 -2
  124. package/schematics/ng-update/devkit-file-system.mjs +2 -2
  125. package/schematics/ng-update/devkit-migration-rule.d.ts +1 -1
  126. package/schematics/ng-update/devkit-migration-rule.js +2 -2
  127. package/schematics/ng-update/devkit-migration-rule.mjs +2 -2
  128. package/schematics/ng-update/devkit-migration.d.ts +1 -1
  129. package/schematics/ng-update/devkit-migration.js +2 -2
  130. package/schematics/ng-update/devkit-migration.mjs +2 -2
  131. package/schematics/ng-update/find-stylesheets.d.ts +1 -1
  132. package/schematics/ng-update/find-stylesheets.js +2 -2
  133. package/schematics/ng-update/find-stylesheets.mjs +2 -2
  134. package/schematics/ng-update/html-parsing/angular.d.ts +1 -1
  135. package/schematics/ng-update/html-parsing/angular.js +2 -2
  136. package/schematics/ng-update/html-parsing/angular.mjs +2 -2
  137. package/schematics/ng-update/html-parsing/elements.d.ts +1 -1
  138. package/schematics/ng-update/html-parsing/elements.js +2 -2
  139. package/schematics/ng-update/html-parsing/elements.mjs +2 -2
  140. package/schematics/ng-update/index.d.ts +1 -1
  141. package/schematics/ng-update/index.js +2 -2
  142. package/schematics/ng-update/index.mjs +2 -2
  143. package/schematics/ng-update/migrations/attribute-selectors.d.ts +1 -1
  144. package/schematics/ng-update/migrations/attribute-selectors.js +2 -2
  145. package/schematics/ng-update/migrations/attribute-selectors.mjs +2 -2
  146. package/schematics/ng-update/migrations/class-inheritance.d.ts +1 -1
  147. package/schematics/ng-update/migrations/class-inheritance.js +2 -2
  148. package/schematics/ng-update/migrations/class-inheritance.mjs +2 -2
  149. package/schematics/ng-update/migrations/class-names.d.ts +1 -1
  150. package/schematics/ng-update/migrations/class-names.js +2 -2
  151. package/schematics/ng-update/migrations/class-names.mjs +2 -2
  152. package/schematics/ng-update/migrations/constructor-signature.d.ts +1 -1
  153. package/schematics/ng-update/migrations/constructor-signature.js +2 -2
  154. package/schematics/ng-update/migrations/constructor-signature.mjs +2 -2
  155. package/schematics/ng-update/migrations/css-selectors.d.ts +1 -1
  156. package/schematics/ng-update/migrations/css-selectors.js +2 -2
  157. package/schematics/ng-update/migrations/css-selectors.mjs +2 -2
  158. package/schematics/ng-update/migrations/css-tokens.d.ts +1 -1
  159. package/schematics/ng-update/migrations/css-tokens.js +2 -2
  160. package/schematics/ng-update/migrations/css-tokens.mjs +2 -2
  161. package/schematics/ng-update/migrations/element-selectors.d.ts +1 -1
  162. package/schematics/ng-update/migrations/element-selectors.js +2 -2
  163. package/schematics/ng-update/migrations/element-selectors.mjs +2 -2
  164. package/schematics/ng-update/migrations/input-names.d.ts +1 -1
  165. package/schematics/ng-update/migrations/input-names.js +2 -2
  166. package/schematics/ng-update/migrations/input-names.mjs +2 -2
  167. package/schematics/ng-update/migrations/method-call-arguments.d.ts +1 -1
  168. package/schematics/ng-update/migrations/method-call-arguments.js +2 -2
  169. package/schematics/ng-update/migrations/method-call-arguments.mjs +2 -2
  170. package/schematics/ng-update/migrations/misc-template.d.ts +1 -1
  171. package/schematics/ng-update/migrations/misc-template.js +2 -2
  172. package/schematics/ng-update/migrations/misc-template.mjs +2 -2
  173. package/schematics/ng-update/migrations/output-names.d.ts +1 -1
  174. package/schematics/ng-update/migrations/output-names.js +2 -2
  175. package/schematics/ng-update/migrations/output-names.mjs +2 -2
  176. package/schematics/ng-update/migrations/property-names.d.ts +1 -1
  177. package/schematics/ng-update/migrations/property-names.js +2 -2
  178. package/schematics/ng-update/migrations/property-names.mjs +2 -2
  179. package/schematics/ng-update/migrations/symbol-removal.d.ts +1 -1
  180. package/schematics/ng-update/migrations/symbol-removal.js +2 -2
  181. package/schematics/ng-update/migrations/symbol-removal.mjs +2 -2
  182. package/schematics/ng-update/public-api.d.ts +1 -1
  183. package/schematics/ng-update/public-api.js +2 -2
  184. package/schematics/ng-update/public-api.mjs +2 -2
  185. package/schematics/ng-update/typescript/base-types.d.ts +1 -1
  186. package/schematics/ng-update/typescript/base-types.js +2 -2
  187. package/schematics/ng-update/typescript/base-types.mjs +2 -2
  188. package/schematics/ng-update/typescript/imports.d.ts +1 -1
  189. package/schematics/ng-update/typescript/imports.js +2 -2
  190. package/schematics/ng-update/typescript/imports.mjs +2 -2
  191. package/schematics/ng-update/typescript/literal.d.ts +1 -1
  192. package/schematics/ng-update/typescript/literal.js +2 -2
  193. package/schematics/ng-update/typescript/literal.mjs +2 -2
  194. package/schematics/ng-update/typescript/module-specifiers.d.ts +1 -1
  195. package/schematics/ng-update/typescript/module-specifiers.js +2 -2
  196. package/schematics/ng-update/typescript/module-specifiers.mjs +2 -2
  197. package/schematics/ng-update/upgrade-data.d.ts +1 -1
  198. package/schematics/ng-update/upgrade-data.js +2 -2
  199. package/schematics/ng-update/upgrade-data.mjs +2 -2
  200. package/schematics/paths.d.ts +1 -1
  201. package/schematics/paths.js +2 -2
  202. package/schematics/paths.mjs +2 -2
  203. package/schematics/update-tool/component-resource-collector.d.ts +1 -1
  204. package/schematics/update-tool/component-resource-collector.js +2 -2
  205. package/schematics/update-tool/component-resource-collector.mjs +2 -2
  206. package/schematics/update-tool/file-system.d.ts +1 -1
  207. package/schematics/update-tool/file-system.js +2 -2
  208. package/schematics/update-tool/file-system.mjs +2 -2
  209. package/schematics/update-tool/index.d.ts +1 -1
  210. package/schematics/update-tool/index.js +2 -2
  211. package/schematics/update-tool/index.mjs +2 -2
  212. package/schematics/update-tool/logger.d.ts +1 -1
  213. package/schematics/update-tool/logger.js +2 -2
  214. package/schematics/update-tool/logger.mjs +2 -2
  215. package/schematics/update-tool/migration.d.ts +1 -1
  216. package/schematics/update-tool/migration.js +2 -2
  217. package/schematics/update-tool/migration.mjs +2 -2
  218. package/schematics/update-tool/public-api.d.ts +1 -1
  219. package/schematics/update-tool/public-api.js +2 -2
  220. package/schematics/update-tool/public-api.mjs +2 -2
  221. package/schematics/update-tool/target-version.d.ts +1 -1
  222. package/schematics/update-tool/target-version.js +2 -2
  223. package/schematics/update-tool/target-version.mjs +2 -2
  224. package/schematics/update-tool/update-recorder.d.ts +1 -1
  225. package/schematics/update-tool/update-recorder.js +2 -2
  226. package/schematics/update-tool/update-recorder.mjs +2 -2
  227. package/schematics/update-tool/utils/decorators.d.ts +1 -1
  228. package/schematics/update-tool/utils/decorators.js +2 -2
  229. package/schematics/update-tool/utils/decorators.mjs +2 -2
  230. package/schematics/update-tool/utils/diagnostics.d.ts +1 -1
  231. package/schematics/update-tool/utils/diagnostics.js +2 -2
  232. package/schematics/update-tool/utils/diagnostics.mjs +2 -2
  233. package/schematics/update-tool/utils/functions.d.ts +1 -1
  234. package/schematics/update-tool/utils/functions.js +2 -2
  235. package/schematics/update-tool/utils/functions.mjs +2 -2
  236. package/schematics/update-tool/utils/imports.d.ts +1 -1
  237. package/schematics/update-tool/utils/imports.js +2 -2
  238. package/schematics/update-tool/utils/imports.mjs +2 -2
  239. package/schematics/update-tool/utils/line-mappings.d.ts +1 -1
  240. package/schematics/update-tool/utils/line-mappings.js +2 -2
  241. package/schematics/update-tool/utils/line-mappings.mjs +2 -2
  242. package/schematics/update-tool/utils/parse-tsconfig.d.ts +1 -1
  243. package/schematics/update-tool/utils/parse-tsconfig.js +2 -2
  244. package/schematics/update-tool/utils/parse-tsconfig.mjs +2 -2
  245. package/schematics/update-tool/utils/property-name.d.ts +1 -1
  246. package/schematics/update-tool/utils/property-name.js +2 -2
  247. package/schematics/update-tool/utils/property-name.mjs +2 -2
  248. package/schematics/update-tool/utils/virtual-host.d.ts +1 -1
  249. package/schematics/update-tool/utils/virtual-host.js +2 -2
  250. package/schematics/update-tool/utils/virtual-host.mjs +2 -2
  251. package/schematics/update-tool/version-changes.d.ts +1 -1
  252. package/schematics/update-tool/version-changes.js +2 -2
  253. package/schematics/update-tool/version-changes.mjs +2 -2
  254. package/schematics/utils/ast/ng-module-imports.d.ts +1 -1
  255. package/schematics/utils/ast/ng-module-imports.js +2 -2
  256. package/schematics/utils/ast/ng-module-imports.mjs +2 -2
  257. package/schematics/utils/ast.d.ts +1 -1
  258. package/schematics/utils/ast.js +2 -2
  259. package/schematics/utils/ast.mjs +2 -2
  260. package/schematics/utils/build-component.d.ts +1 -1
  261. package/schematics/utils/build-component.js +2 -2
  262. package/schematics/utils/build-component.mjs +2 -2
  263. package/schematics/utils/get-project.d.ts +1 -1
  264. package/schematics/utils/get-project.js +2 -2
  265. package/schematics/utils/get-project.mjs +2 -2
  266. package/schematics/utils/html-manipulation.d.ts +1 -1
  267. package/schematics/utils/html-manipulation.js +2 -2
  268. package/schematics/utils/html-manipulation.mjs +2 -2
  269. package/schematics/utils/index.d.ts +1 -1
  270. package/schematics/utils/index.js +2 -2
  271. package/schematics/utils/index.mjs +2 -2
  272. package/schematics/utils/parse5-element.d.ts +1 -1
  273. package/schematics/utils/parse5-element.js +2 -2
  274. package/schematics/utils/parse5-element.mjs +2 -2
  275. package/schematics/utils/project-index-file.d.ts +1 -1
  276. package/schematics/utils/project-index-file.js +2 -2
  277. package/schematics/utils/project-index-file.mjs +2 -2
  278. package/schematics/utils/project-main-file.d.ts +1 -1
  279. package/schematics/utils/project-main-file.js +2 -2
  280. package/schematics/utils/project-main-file.mjs +2 -2
  281. package/schematics/utils/project-style-file.d.ts +1 -1
  282. package/schematics/utils/project-style-file.js +2 -2
  283. package/schematics/utils/project-style-file.mjs +2 -2
  284. package/schematics/utils/project-targets.d.ts +1 -1
  285. package/schematics/utils/project-targets.js +4 -3
  286. package/schematics/utils/project-targets.mjs +4 -3
  287. package/schematics/utils/project-tsconfig-paths.d.ts +1 -1
  288. package/schematics/utils/project-tsconfig-paths.js +2 -2
  289. package/schematics/utils/project-tsconfig-paths.mjs +2 -2
  290. package/schematics/utils/schematic-options.d.ts +1 -1
  291. package/schematics/utils/schematic-options.js +2 -2
  292. package/schematics/utils/schematic-options.mjs +2 -2
  293. package/scrolling/index.d.ts +19 -38
  294. package/stepper/index.d.ts +16 -69
  295. package/table/index.d.ts +41 -56
  296. package/text-field/index.d.ts +6 -9
  297. package/tree/index.d.ts +17 -16
  298. package/esm2022/a11y/a11y-module.mjs +0 -31
  299. package/esm2022/a11y/a11y_public_index.mjs +0 -5
  300. package/esm2022/a11y/aria-describer/aria-describer.mjs +0 -232
  301. package/esm2022/a11y/aria-describer/aria-reference.mjs +0 -47
  302. package/esm2022/a11y/fake-event-detection.mjs +0 -29
  303. package/esm2022/a11y/focus-monitor/focus-monitor.mjs +0 -468
  304. package/esm2022/a11y/focus-trap/configurable-focus-trap-config.mjs +0 -9
  305. package/esm2022/a11y/focus-trap/configurable-focus-trap-factory.mjs +0 -54
  306. package/esm2022/a11y/focus-trap/configurable-focus-trap.mjs +0 -51
  307. package/esm2022/a11y/focus-trap/event-listener-inert-strategy.mjs +0 -61
  308. package/esm2022/a11y/focus-trap/focus-trap-inert-strategy.mjs +0 -11
  309. package/esm2022/a11y/focus-trap/focus-trap-manager.mjs +0 -53
  310. package/esm2022/a11y/focus-trap/focus-trap.mjs +0 -396
  311. package/esm2022/a11y/high-contrast-mode/high-contrast-mode-detector.mjs +0 -116
  312. package/esm2022/a11y/index.mjs +0 -9
  313. package/esm2022/a11y/input-modality/input-modality-detector.mjs +0 -176
  314. package/esm2022/a11y/interactivity-checker/interactivity-checker.mjs +0 -238
  315. package/esm2022/a11y/key-manager/activedescendant-key-manager.mjs +0 -20
  316. package/esm2022/a11y/key-manager/focus-key-manager.mjs +0 -29
  317. package/esm2022/a11y/key-manager/list-key-manager.mjs +0 -357
  318. package/esm2022/a11y/key-manager/noop-tree-key-manager.mjs +0 -94
  319. package/esm2022/a11y/key-manager/tree-key-manager-strategy.mjs +0 -9
  320. package/esm2022/a11y/key-manager/tree-key-manager.mjs +0 -345
  321. package/esm2022/a11y/key-manager/typeahead.mjs +0 -91
  322. package/esm2022/a11y/live-announcer/live-announcer-tokens.mjs +0 -19
  323. package/esm2022/a11y/live-announcer/live-announcer.mjs +0 -210
  324. package/esm2022/a11y/public-api.mjs +0 -30
  325. package/esm2022/accordion/accordion-item.mjs +0 -162
  326. package/esm2022/accordion/accordion-module.mjs +0 -24
  327. package/esm2022/accordion/accordion.mjs +0 -65
  328. package/esm2022/accordion/accordion_public_index.mjs +0 -5
  329. package/esm2022/accordion/index.mjs +0 -9
  330. package/esm2022/accordion/public-api.mjs +0 -11
  331. package/esm2022/bidi/bidi-module.mjs +0 -23
  332. package/esm2022/bidi/bidi_public_index.mjs +0 -5
  333. package/esm2022/bidi/dir-document-token.mjs +0 -33
  334. package/esm2022/bidi/dir.mjs +0 -70
  335. package/esm2022/bidi/directionality.mjs +0 -52
  336. package/esm2022/bidi/index.mjs +0 -9
  337. package/esm2022/bidi/public-api.mjs +0 -12
  338. package/esm2022/clipboard/clipboard-module.mjs +0 -23
  339. package/esm2022/clipboard/clipboard.mjs +0 -53
  340. package/esm2022/clipboard/clipboard_public_index.mjs +0 -5
  341. package/esm2022/clipboard/copy-to-clipboard.mjs +0 -100
  342. package/esm2022/clipboard/index.mjs +0 -9
  343. package/esm2022/clipboard/pending-copy.mjs +0 -71
  344. package/esm2022/clipboard/public-api.mjs +0 -12
  345. package/esm2022/coercion/array.mjs +0 -11
  346. package/esm2022/coercion/boolean-property.mjs +0 -12
  347. package/esm2022/coercion/css-pixel-value.mjs +0 -15
  348. package/esm2022/coercion/element.mjs +0 -16
  349. package/esm2022/coercion/index.mjs +0 -9
  350. package/esm2022/coercion/number-property.mjs +0 -24
  351. package/esm2022/coercion/private/index.mjs +0 -9
  352. package/esm2022/coercion/private/observable.mjs +0 -19
  353. package/esm2022/coercion/private/private_public_index.mjs +0 -5
  354. package/esm2022/coercion/public-api.mjs +0 -14
  355. package/esm2022/coercion/string-array.mjs +0 -38
  356. package/esm2022/collections/array-data-source.mjs +0 -21
  357. package/esm2022/collections/collection-viewer.mjs +0 -9
  358. package/esm2022/collections/collections_public_index.mjs +0 -5
  359. package/esm2022/collections/data-source.mjs +0 -19
  360. package/esm2022/collections/dispose-view-repeater-strategy.mjs +0 -48
  361. package/esm2022/collections/index.mjs +0 -9
  362. package/esm2022/collections/public-api.mjs +0 -17
  363. package/esm2022/collections/recycle-view-repeater-strategy.mjs +0 -129
  364. package/esm2022/collections/selection-model.mjs +0 -225
  365. package/esm2022/collections/tree-adapter.mjs +0 -9
  366. package/esm2022/collections/unique-selection-dispatcher.mjs +0 -55
  367. package/esm2022/collections/view-repeater.mjs +0 -26
  368. package/esm2022/dialog/dialog-config.mjs +0 -70
  369. package/esm2022/dialog/dialog-container.mjs +0 -308
  370. package/esm2022/dialog/dialog-injectors.mjs +0 -40
  371. package/esm2022/dialog/dialog-module.mjs +0 -40
  372. package/esm2022/dialog/dialog-ref.mjs +0 -85
  373. package/esm2022/dialog/dialog.mjs +0 -303
  374. package/esm2022/dialog/dialog_public_index.mjs +0 -5
  375. package/esm2022/dialog/index.mjs +0 -9
  376. package/esm2022/dialog/public-api.mjs +0 -14
  377. package/esm2022/drag-drop/directives/assertions.mjs +0 -18
  378. package/esm2022/drag-drop/directives/config.mjs +0 -14
  379. package/esm2022/drag-drop/directives/drag-handle.mjs +0 -68
  380. package/esm2022/drag-drop/directives/drag-placeholder.mjs +0 -43
  381. package/esm2022/drag-drop/directives/drag-preview.mjs +0 -48
  382. package/esm2022/drag-drop/directives/drag.mjs +0 -520
  383. package/esm2022/drag-drop/directives/drop-list-group.mjs +0 -47
  384. package/esm2022/drag-drop/directives/drop-list.mjs +0 -352
  385. package/esm2022/drag-drop/dom/clone-node.mjs +0 -65
  386. package/esm2022/drag-drop/dom/dom-rect.mjs +0 -64
  387. package/esm2022/drag-drop/dom/parent-position-tracker.mjs +0 -76
  388. package/esm2022/drag-drop/dom/root-node.mjs +0 -21
  389. package/esm2022/drag-drop/dom/styling.mjs +0 -89
  390. package/esm2022/drag-drop/dom/transition-duration.mjs +0 -36
  391. package/esm2022/drag-drop/drag-drop-module.mjs +0 -49
  392. package/esm2022/drag-drop/drag-drop-registry.mjs +0 -266
  393. package/esm2022/drag-drop/drag-drop.mjs +0 -57
  394. package/esm2022/drag-drop/drag-drop_public_index.mjs +0 -5
  395. package/esm2022/drag-drop/drag-events.mjs +0 -9
  396. package/esm2022/drag-drop/drag-parent.mjs +0 -16
  397. package/esm2022/drag-drop/drag-ref.mjs +0 -1097
  398. package/esm2022/drag-drop/drag-utils.mjs +0 -60
  399. package/esm2022/drag-drop/drop-list-ref.mjs +0 -672
  400. package/esm2022/drag-drop/index.mjs +0 -9
  401. package/esm2022/drag-drop/preview-ref.mjs +0 -117
  402. package/esm2022/drag-drop/public-api.mjs +0 -23
  403. package/esm2022/drag-drop/sorting/drop-list-sort-strategy.mjs +0 -9
  404. package/esm2022/drag-drop/sorting/mixed-sort-strategy.mjs +0 -246
  405. package/esm2022/drag-drop/sorting/single-axis-sort-strategy.mjs +0 -343
  406. package/esm2022/index.mjs +0 -9
  407. package/esm2022/keycodes/index.mjs +0 -9
  408. package/esm2022/keycodes/keycodes.mjs +0 -127
  409. package/esm2022/keycodes/keycodes_public_index.mjs +0 -5
  410. package/esm2022/keycodes/modifiers.mjs +0 -18
  411. package/esm2022/keycodes/public-api.mjs +0 -10
  412. package/esm2022/layout/breakpoints-observer.mjs +0 -105
  413. package/esm2022/layout/breakpoints.mjs +0 -29
  414. package/esm2022/layout/index.mjs +0 -9
  415. package/esm2022/layout/layout-module.mjs +0 -19
  416. package/esm2022/layout/layout_public_index.mjs +0 -5
  417. package/esm2022/layout/media-matcher.mjs +0 -94
  418. package/esm2022/layout/public-api.mjs +0 -12
  419. package/esm2022/listbox/index.mjs +0 -9
  420. package/esm2022/listbox/listbox-module.mjs +0 -24
  421. package/esm2022/listbox/listbox.mjs +0 -888
  422. package/esm2022/listbox/listbox_public_index.mjs +0 -5
  423. package/esm2022/listbox/public-api.mjs +0 -10
  424. package/esm2022/menu/context-menu-trigger.mjs +0 -221
  425. package/esm2022/menu/event-detection.mjs +0 -28
  426. package/esm2022/menu/index.mjs +0 -9
  427. package/esm2022/menu/menu-aim.mjs +0 -204
  428. package/esm2022/menu/menu-bar.mjs +0 -134
  429. package/esm2022/menu/menu-base.mjs +0 -192
  430. package/esm2022/menu/menu-errors.mjs +0 -22
  431. package/esm2022/menu/menu-group.mjs +0 -31
  432. package/esm2022/menu/menu-interface.mjs +0 -11
  433. package/esm2022/menu/menu-item-checkbox.mjs +0 -50
  434. package/esm2022/menu/menu-item-radio.mjs +0 -72
  435. package/esm2022/menu/menu-item-selectable.mjs +0 -36
  436. package/esm2022/menu/menu-item.mjs +0 -270
  437. package/esm2022/menu/menu-module.mjs +0 -60
  438. package/esm2022/menu/menu-stack.mjs +0 -163
  439. package/esm2022/menu/menu-trigger-base.mjs +0 -119
  440. package/esm2022/menu/menu-trigger.mjs +0 -313
  441. package/esm2022/menu/menu.mjs +0 -135
  442. package/esm2022/menu/menu_public_index.mjs +0 -5
  443. package/esm2022/menu/pointer-focus-tracker.mjs +0 -51
  444. package/esm2022/menu/public-api.mjs +0 -24
  445. package/esm2022/observers/index.mjs +0 -9
  446. package/esm2022/observers/observe-content.mjs +0 -216
  447. package/esm2022/observers/observers_public_index.mjs +0 -5
  448. package/esm2022/observers/private/index.mjs +0 -9
  449. package/esm2022/observers/private/private_public_index.mjs +0 -5
  450. package/esm2022/observers/private/shared-resize-observer.mjs +0 -125
  451. package/esm2022/observers/public-api.mjs +0 -9
  452. package/esm2022/overlay/dispatchers/base-overlay-dispatcher.mjs +0 -52
  453. package/esm2022/overlay/dispatchers/index.mjs +0 -10
  454. package/esm2022/overlay/dispatchers/overlay-keyboard-dispatcher.mjs +0 -81
  455. package/esm2022/overlay/dispatchers/overlay-outside-click-dispatcher.mjs +0 -151
  456. package/esm2022/overlay/fullscreen-overlay-container.mjs +0 -94
  457. package/esm2022/overlay/index.mjs +0 -9
  458. package/esm2022/overlay/overlay-config.mjs +0 -45
  459. package/esm2022/overlay/overlay-container.mjs +0 -81
  460. package/esm2022/overlay/overlay-directives.mjs +0 -432
  461. package/esm2022/overlay/overlay-module.mjs +0 -28
  462. package/esm2022/overlay/overlay-ref.mjs +0 -437
  463. package/esm2022/overlay/overlay.mjs +0 -126
  464. package/esm2022/overlay/overlay_public_index.mjs +0 -5
  465. package/esm2022/overlay/position/connected-position.mjs +0 -88
  466. package/esm2022/overlay/position/flexible-connected-position-strategy.mjs +0 -1002
  467. package/esm2022/overlay/position/global-position-strategy.mjs +0 -237
  468. package/esm2022/overlay/position/overlay-position-builder.mjs +0 -50
  469. package/esm2022/overlay/position/position-strategy.mjs +0 -9
  470. package/esm2022/overlay/position/scroll-clip.mjs +0 -40
  471. package/esm2022/overlay/public-api.mjs +0 -22
  472. package/esm2022/overlay/scroll/block-scroll-strategy.mjs +0 -80
  473. package/esm2022/overlay/scroll/close-scroll-strategy.mjs +0 -65
  474. package/esm2022/overlay/scroll/index.mjs +0 -14
  475. package/esm2022/overlay/scroll/noop-scroll-strategy.mjs +0 -17
  476. package/esm2022/overlay/scroll/reposition-scroll-strategy.mjs +0 -61
  477. package/esm2022/overlay/scroll/scroll-strategy-options.mjs +0 -55
  478. package/esm2022/overlay/scroll/scroll-strategy.mjs +0 -14
  479. package/esm2022/platform/features/input-types.mjs +0 -59
  480. package/esm2022/platform/features/passive-listeners.mjs +0 -36
  481. package/esm2022/platform/features/scrolling.mjs +0 -104
  482. package/esm2022/platform/features/shadow-dom.mjs +0 -54
  483. package/esm2022/platform/features/test-environment.mjs +0 -24
  484. package/esm2022/platform/index.mjs +0 -9
  485. package/esm2022/platform/platform-module.mjs +0 -19
  486. package/esm2022/platform/platform.mjs +0 -85
  487. package/esm2022/platform/platform_public_index.mjs +0 -5
  488. package/esm2022/platform/public-api.mjs +0 -15
  489. package/esm2022/portal/dom-portal-outlet.mjs +0 -158
  490. package/esm2022/portal/index.mjs +0 -9
  491. package/esm2022/portal/portal-directives.mjs +0 -251
  492. package/esm2022/portal/portal-errors.mjs +0 -51
  493. package/esm2022/portal/portal-injector.mjs +0 -28
  494. package/esm2022/portal/portal.mjs +0 -189
  495. package/esm2022/portal/portal_public_index.mjs +0 -5
  496. package/esm2022/portal/public-api.mjs +0 -12
  497. package/esm2022/public-api.mjs +0 -9
  498. package/esm2022/scrolling/fixed-size-virtual-scroll.mjs +0 -218
  499. package/esm2022/scrolling/index.mjs +0 -9
  500. package/esm2022/scrolling/public-api.mjs +0 -20
  501. package/esm2022/scrolling/scroll-dispatcher.mjs +0 -163
  502. package/esm2022/scrolling/scrollable.mjs +0 -177
  503. package/esm2022/scrolling/scrolling-module.mjs +0 -69
  504. package/esm2022/scrolling/scrolling_public_index.mjs +0 -5
  505. package/esm2022/scrolling/viewport-ruler.mjs +0 -146
  506. package/esm2022/scrolling/virtual-for-of.mjs +0 -299
  507. package/esm2022/scrolling/virtual-scroll-repeater.mjs +0 -9
  508. package/esm2022/scrolling/virtual-scroll-strategy.mjs +0 -11
  509. package/esm2022/scrolling/virtual-scroll-viewport.mjs +0 -445
  510. package/esm2022/scrolling/virtual-scrollable-element.mjs +0 -42
  511. package/esm2022/scrolling/virtual-scrollable-window.mjs +0 -41
  512. package/esm2022/scrolling/virtual-scrollable.mjs +0 -40
  513. package/esm2022/stepper/index.mjs +0 -9
  514. package/esm2022/stepper/public-api.mjs +0 -13
  515. package/esm2022/stepper/step-header.mjs +0 -31
  516. package/esm2022/stepper/step-label.mjs +0 -24
  517. package/esm2022/stepper/stepper-button.mjs +0 -58
  518. package/esm2022/stepper/stepper-module.mjs +0 -41
  519. package/esm2022/stepper/stepper.mjs +0 -452
  520. package/esm2022/stepper/stepper_public_index.mjs +0 -5
  521. package/esm2022/table/can-stick.mjs +0 -46
  522. package/esm2022/table/cell.mjs +0 -245
  523. package/esm2022/table/coalesced-style-scheduler.mjs +0 -79
  524. package/esm2022/table/index.mjs +0 -9
  525. package/esm2022/table/public-api.mjs +0 -20
  526. package/esm2022/table/row.mjs +0 -317
  527. package/esm2022/table/sticky-position-listener.mjs +0 -11
  528. package/esm2022/table/sticky-styler.mjs +0 -347
  529. package/esm2022/table/table-errors.mjs +0 -67
  530. package/esm2022/table/table-module.mjs +0 -93
  531. package/esm2022/table/table.mjs +0 -1148
  532. package/esm2022/table/table_public_index.mjs +0 -5
  533. package/esm2022/table/text-column.mjs +0 -154
  534. package/esm2022/table/tokens.mjs +0 -16
  535. package/esm2022/testing/change-detection.mjs +0 -102
  536. package/esm2022/testing/component-harness.mjs +0 -328
  537. package/esm2022/testing/element-dimensions.mjs +0 -9
  538. package/esm2022/testing/harness-environment.mjs +0 -220
  539. package/esm2022/testing/index.mjs +0 -9
  540. package/esm2022/testing/public-api.mjs +0 -15
  541. package/esm2022/testing/selenium-webdriver/index.mjs +0 -9
  542. package/esm2022/testing/selenium-webdriver/public-api.mjs +0 -10
  543. package/esm2022/testing/selenium-webdriver/selenium-web-driver-element.mjs +0 -216
  544. package/esm2022/testing/selenium-webdriver/selenium-web-driver-harness-environment.mjs +0 -88
  545. package/esm2022/testing/selenium-webdriver/selenium-webdriver-keys.mjs +0 -64
  546. package/esm2022/testing/test-element-errors.mjs +0 -15
  547. package/esm2022/testing/test-element.mjs +0 -49
  548. package/esm2022/testing/testbed/fake-events/dispatch-events.mjs +0 -53
  549. package/esm2022/testing/testbed/fake-events/element-focus.mjs +0 -39
  550. package/esm2022/testing/testbed/fake-events/event-objects.mjs +0 -127
  551. package/esm2022/testing/testbed/fake-events/index.mjs +0 -14
  552. package/esm2022/testing/testbed/fake-events/type-in-element.mjs +0 -97
  553. package/esm2022/testing/testbed/index.mjs +0 -9
  554. package/esm2022/testing/testbed/public-api.mjs +0 -10
  555. package/esm2022/testing/testbed/task-state-zone-interceptor.mjs +0 -82
  556. package/esm2022/testing/testbed/testbed-harness-environment.mjs +0 -165
  557. package/esm2022/testing/testbed/unit-test-element.mjs +0 -258
  558. package/esm2022/testing/text-filtering.mjs +0 -21
  559. package/esm2022/text-field/autofill.mjs +0 -114
  560. package/esm2022/text-field/autosize.mjs +0 -309
  561. package/esm2022/text-field/index.mjs +0 -9
  562. package/esm2022/text-field/public-api.mjs +0 -11
  563. package/esm2022/text-field/text-field-module.mjs +0 -24
  564. package/esm2022/text-field/text-field_public_index.mjs +0 -5
  565. package/esm2022/tree/control/base-tree-control.mjs +0 -62
  566. package/esm2022/tree/control/flat-tree-control.mjs +0 -57
  567. package/esm2022/tree/control/nested-tree-control.mjs +0 -67
  568. package/esm2022/tree/control/tree-control.mjs +0 -2
  569. package/esm2022/tree/index.mjs +0 -9
  570. package/esm2022/tree/nested-node.mjs +0 -103
  571. package/esm2022/tree/node.mjs +0 -36
  572. package/esm2022/tree/outlet.mjs +0 -40
  573. package/esm2022/tree/padding.mjs +0 -129
  574. package/esm2022/tree/public-api.mjs +0 -20
  575. package/esm2022/tree/toggle.mjs +0 -51
  576. package/esm2022/tree/tree-errors.mjs +0 -44
  577. package/esm2022/tree/tree-module.mjs +0 -49
  578. package/esm2022/tree/tree.mjs +0 -1123
  579. package/esm2022/tree/tree_public_index.mjs +0 -5
  580. package/esm2022/version.mjs +0 -11
@@ -107,10 +107,10 @@ class SharedResizeObserver {
107
107
  }
108
108
  return this._observers.get(box).observe(target);
109
109
  }
110
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: SharedResizeObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
111
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: SharedResizeObserver, providedIn: 'root' }); }
110
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: SharedResizeObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
111
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: SharedResizeObserver, providedIn: 'root' }); }
112
112
  }
113
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: SharedResizeObserver, decorators: [{
113
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: SharedResizeObserver, decorators: [{
114
114
  type: Injectable,
115
115
  args: [{
116
116
  providedIn: 'root',
@@ -1 +1 @@
1
- {"version":3,"file":"private.mjs","sources":["../../../../../../../src/cdk/observers/private/shared-resize-observer.ts","../../../../../../../src/cdk/observers/private/private_public_index.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.io/license\n */\nimport {inject, Injectable, NgZone, OnDestroy} 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 /** 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 window.addEventListener('error', loopLimitExceededErrorHandler);\n });\n }\n }\n\n ngOnDestroy() {\n for (const [, observer] of this._observers) {\n observer.destroy();\n }\n this._observers.clear();\n if (typeof ResizeObserver !== 'undefined' && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n window.removeEventListener('error', loopLimitExceededErrorHandler);\n }\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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"private.mjs","sources":["../../../../../../../src/cdk/observers/private/shared-resize-observer.ts","../../../../../../../src/cdk/observers/private/private_public_index.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} 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 /** 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 window.addEventListener('error', loopLimitExceededErrorHandler);\n });\n }\n }\n\n ngOnDestroy() {\n for (const [, observer] of this._observers) {\n observer.destroy();\n }\n this._observers.clear();\n if (typeof ResizeObserver !== 'undefined' && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n window.removeEventListener('error', loopLimitExceededErrorHandler);\n }\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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { coerceElement, coerceNumberProperty } from '@angular/cdk/coercion';
2
2
  import * as i0 from '@angular/core';
3
- import { Injectable, inject, NgZone, EventEmitter, booleanAttribute, Directive, Output, Input, NgModule } from '@angular/core';
3
+ import { Injectable, inject, NgZone, ElementRef, EventEmitter, booleanAttribute, Directive, Output, Input, NgModule } from '@angular/core';
4
4
  import { Observable, Subject } from 'rxjs';
5
5
  import { map, filter, debounceTime } from 'rxjs/operators';
6
6
 
@@ -38,17 +38,17 @@ class MutationObserverFactory {
38
38
  create(callback) {
39
39
  return typeof MutationObserver === 'undefined' ? null : new MutationObserver(callback);
40
40
  }
41
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: MutationObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
42
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: MutationObserverFactory, providedIn: 'root' }); }
41
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MutationObserverFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
42
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MutationObserverFactory, providedIn: 'root' }); }
43
43
  }
44
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: MutationObserverFactory, decorators: [{
44
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: MutationObserverFactory, decorators: [{
45
45
  type: Injectable,
46
46
  args: [{ providedIn: 'root' }]
47
47
  }] });
48
48
  /** An injectable service that allows watching elements for changes to their content. */
49
49
  class ContentObserver {
50
- constructor(_mutationObserverFactory) {
51
- this._mutationObserverFactory = _mutationObserverFactory;
50
+ constructor() {
51
+ this._mutationObserverFactory = inject(MutationObserverFactory);
52
52
  /** Keeps track of the existing MutationObservers so they can be reused. */
53
53
  this._observedElements = new Map();
54
54
  this._ngZone = inject(NgZone);
@@ -120,13 +120,13 @@ class ContentObserver {
120
120
  this._observedElements.delete(element);
121
121
  }
122
122
  }
123
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: ContentObserver, deps: [{ token: MutationObserverFactory }], target: i0.ɵɵFactoryTarget.Injectable }); }
124
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: ContentObserver, providedIn: 'root' }); }
123
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ContentObserver, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
124
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ContentObserver, providedIn: 'root' }); }
125
125
  }
126
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: ContentObserver, decorators: [{
126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ContentObserver, decorators: [{
127
127
  type: Injectable,
128
128
  args: [{ providedIn: 'root' }]
129
- }], ctorParameters: () => [{ type: MutationObserverFactory }] });
129
+ }], ctorParameters: () => [] });
130
130
  /**
131
131
  * Directive that triggers a callback whenever the content of
132
132
  * its associated element has changed.
@@ -151,9 +151,9 @@ class CdkObserveContent {
151
151
  this._debounce = coerceNumberProperty(value);
152
152
  this._subscribe();
153
153
  }
154
- constructor(_contentObserver, _elementRef) {
155
- this._contentObserver = _contentObserver;
156
- this._elementRef = _elementRef;
154
+ constructor() {
155
+ this._contentObserver = inject(ContentObserver);
156
+ this._elementRef = inject(ElementRef);
157
157
  /** Event emitted for each change in the element's content. */
158
158
  this.event = new EventEmitter();
159
159
  this._disabled = false;
@@ -175,17 +175,16 @@ class CdkObserveContent {
175
175
  _unsubscribe() {
176
176
  this._currentSubscription?.unsubscribe();
177
177
  }
178
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: CdkObserveContent, deps: [{ token: ContentObserver }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
179
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.0-next.2", type: CdkObserveContent, isStandalone: true, selector: "[cdkObserveContent]", inputs: { disabled: ["cdkObserveContentDisabled", "disabled", booleanAttribute], debounce: "debounce" }, outputs: { event: "cdkObserveContent" }, exportAs: ["cdkObserveContent"], ngImport: i0 }); }
178
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: CdkObserveContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
179
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.0-next.10", type: CdkObserveContent, isStandalone: true, selector: "[cdkObserveContent]", inputs: { disabled: ["cdkObserveContentDisabled", "disabled", booleanAttribute], debounce: "debounce" }, outputs: { event: "cdkObserveContent" }, exportAs: ["cdkObserveContent"], ngImport: i0 }); }
180
180
  }
181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: CdkObserveContent, decorators: [{
181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: CdkObserveContent, decorators: [{
182
182
  type: Directive,
183
183
  args: [{
184
184
  selector: '[cdkObserveContent]',
185
185
  exportAs: 'cdkObserveContent',
186
- standalone: true,
187
186
  }]
188
- }], ctorParameters: () => [{ type: ContentObserver }, { type: i0.ElementRef }], propDecorators: { event: [{
187
+ }], ctorParameters: () => [], propDecorators: { event: [{
189
188
  type: Output,
190
189
  args: ['cdkObserveContent']
191
190
  }], disabled: [{
@@ -195,11 +194,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0-next.2",
195
194
  type: Input
196
195
  }] } });
197
196
  class ObserversModule {
198
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: ObserversModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
199
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.0-next.2", ngImport: i0, type: ObserversModule, imports: [CdkObserveContent], exports: [CdkObserveContent] }); }
200
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: ObserversModule, providers: [MutationObserverFactory] }); }
197
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ObserversModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
198
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.0-next.10", ngImport: i0, type: ObserversModule, imports: [CdkObserveContent], exports: [CdkObserveContent] }); }
199
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ObserversModule, providers: [MutationObserverFactory] }); }
201
200
  }
202
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0-next.2", ngImport: i0, type: ObserversModule, decorators: [{
201
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0-next.10", ngImport: i0, type: ObserversModule, decorators: [{
203
202
  type: NgModule,
204
203
  args: [{
205
204
  imports: [CdkObserveContent],
@@ -1 +1 @@
1
- {"version":3,"file":"observers.mjs","sources":["../../../../../../src/cdk/observers/observe-content.ts","../../../../../../src/cdk/observers/observers_public_index.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.io/license\n */\n\nimport {NumberInput, coerceElement, coerceNumberProperty} from '@angular/cdk/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 /** 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(private _mutationObserverFactory: MutationObserverFactory) {}\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 standalone: true,\n})\nexport class CdkObserveContent implements AfterContentInit, OnDestroy {\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(\n private _contentObserver: ContentObserver,\n private _elementRef: ElementRef<HTMLElement>,\n ) {}\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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observers.mjs","sources":["../../../../../../src/cdk/observers/observe-content.ts","../../../../../../src/cdk/observers/observers_public_index.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 '@angular/cdk/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","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}