@angular/material 11.0.4 → 11.1.2

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 (583) hide show
  1. package/_theming.scss +354 -337
  2. package/autocomplete/_autocomplete-theme.scss +4 -5
  3. package/autocomplete/autocomplete.d.ts +7 -1
  4. package/autocomplete/index.metadata.json +1 -1
  5. package/autocomplete/testing/autocomplete-harness.d.ts +29 -15
  6. package/badge/_badge-theme.scss +2 -3
  7. package/bottom-sheet/_bottom-sheet-theme.scss +4 -5
  8. package/bundles/material-autocomplete-testing.umd.js +54 -36
  9. package/bundles/material-autocomplete-testing.umd.js.map +1 -1
  10. package/bundles/material-autocomplete-testing.umd.min.js +2 -2
  11. package/bundles/material-autocomplete-testing.umd.min.js.map +1 -1
  12. package/bundles/material-autocomplete.umd.js +31 -9
  13. package/bundles/material-autocomplete.umd.js.map +1 -1
  14. package/bundles/material-autocomplete.umd.min.js +3 -3
  15. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  16. package/bundles/material-badge-testing.umd.js +9 -1
  17. package/bundles/material-badge-testing.umd.js.map +1 -1
  18. package/bundles/material-badge-testing.umd.min.js +1 -1
  19. package/bundles/material-badge-testing.umd.min.js.map +1 -1
  20. package/bundles/material-badge.umd.js +9 -1
  21. package/bundles/material-badge.umd.js.map +1 -1
  22. package/bundles/material-badge.umd.min.js +3 -3
  23. package/bundles/material-badge.umd.min.js.map +1 -1
  24. package/bundles/material-bottom-sheet-testing.umd.js +9 -1
  25. package/bundles/material-bottom-sheet-testing.umd.js.map +1 -1
  26. package/bundles/material-bottom-sheet-testing.umd.min.js +1 -1
  27. package/bundles/material-bottom-sheet-testing.umd.min.js.map +1 -1
  28. package/bundles/material-bottom-sheet.umd.js +9 -1
  29. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  30. package/bundles/material-bottom-sheet.umd.min.js +1 -1
  31. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  32. package/bundles/material-button-testing.umd.js +9 -1
  33. package/bundles/material-button-testing.umd.js.map +1 -1
  34. package/bundles/material-button-testing.umd.min.js +1 -1
  35. package/bundles/material-button-testing.umd.min.js.map +1 -1
  36. package/bundles/material-button-toggle-testing.umd.js +9 -1
  37. package/bundles/material-button-toggle-testing.umd.js.map +1 -1
  38. package/bundles/material-button-toggle-testing.umd.min.js +1 -1
  39. package/bundles/material-button-toggle-testing.umd.min.js.map +1 -1
  40. package/bundles/material-button-toggle.umd.js +9 -1
  41. package/bundles/material-button-toggle.umd.js.map +1 -1
  42. package/bundles/material-button-toggle.umd.min.js +1 -1
  43. package/bundles/material-button-toggle.umd.min.js.map +1 -1
  44. package/bundles/material-button.umd.js +17 -5
  45. package/bundles/material-button.umd.js.map +1 -1
  46. package/bundles/material-button.umd.min.js +1 -1
  47. package/bundles/material-button.umd.min.js.map +1 -1
  48. package/bundles/material-card-testing.umd.js +9 -1
  49. package/bundles/material-card-testing.umd.js.map +1 -1
  50. package/bundles/material-card-testing.umd.min.js +1 -1
  51. package/bundles/material-card-testing.umd.min.js.map +1 -1
  52. package/bundles/material-checkbox-testing.umd.js +73 -64
  53. package/bundles/material-checkbox-testing.umd.js.map +1 -1
  54. package/bundles/material-checkbox-testing.umd.min.js +2 -2
  55. package/bundles/material-checkbox-testing.umd.min.js.map +1 -1
  56. package/bundles/material-checkbox.umd.js +15 -3
  57. package/bundles/material-checkbox.umd.js.map +1 -1
  58. package/bundles/material-checkbox.umd.min.js +2 -2
  59. package/bundles/material-checkbox.umd.min.js.map +1 -1
  60. package/bundles/material-chips-testing.umd.js +189 -29
  61. package/bundles/material-chips-testing.umd.js.map +1 -1
  62. package/bundles/material-chips-testing.umd.min.js +2 -2
  63. package/bundles/material-chips-testing.umd.min.js.map +1 -1
  64. package/bundles/material-chips.umd.js +9 -1
  65. package/bundles/material-chips.umd.js.map +1 -1
  66. package/bundles/material-chips.umd.min.js +4 -4
  67. package/bundles/material-chips.umd.min.js.map +1 -1
  68. package/bundles/material-core-testing.umd.js +14 -3
  69. package/bundles/material-core-testing.umd.js.map +1 -1
  70. package/bundles/material-core-testing.umd.min.js +1 -1
  71. package/bundles/material-core-testing.umd.min.js.map +1 -1
  72. package/bundles/material-core.umd.js +55 -14
  73. package/bundles/material-core.umd.js.map +1 -1
  74. package/bundles/material-core.umd.min.js +16 -8
  75. package/bundles/material-core.umd.min.js.map +1 -1
  76. package/bundles/material-datepicker-testing.umd.js +24 -12
  77. package/bundles/material-datepicker-testing.umd.js.map +1 -1
  78. package/bundles/material-datepicker-testing.umd.min.js +1 -1
  79. package/bundles/material-datepicker-testing.umd.min.js.map +1 -1
  80. package/bundles/material-datepicker.umd.js +250 -80
  81. package/bundles/material-datepicker.umd.js.map +1 -1
  82. package/bundles/material-datepicker.umd.min.js +20 -12
  83. package/bundles/material-datepicker.umd.min.js.map +1 -1
  84. package/bundles/material-dialog-testing.umd.js +9 -1
  85. package/bundles/material-dialog-testing.umd.js.map +1 -1
  86. package/bundles/material-dialog-testing.umd.min.js +1 -1
  87. package/bundles/material-dialog-testing.umd.min.js.map +1 -1
  88. package/bundles/material-dialog.umd.js +10 -2
  89. package/bundles/material-dialog.umd.js.map +1 -1
  90. package/bundles/material-dialog.umd.min.js +8 -8
  91. package/bundles/material-dialog.umd.min.js.map +1 -1
  92. package/bundles/material-divider-testing.umd.js +9 -1
  93. package/bundles/material-divider-testing.umd.js.map +1 -1
  94. package/bundles/material-divider-testing.umd.min.js +2 -2
  95. package/bundles/material-divider-testing.umd.min.js.map +1 -1
  96. package/bundles/material-expansion-testing.umd.js +9 -1
  97. package/bundles/material-expansion-testing.umd.js.map +1 -1
  98. package/bundles/material-expansion-testing.umd.min.js +1 -1
  99. package/bundles/material-expansion-testing.umd.min.js.map +1 -1
  100. package/bundles/material-expansion.umd.js +16 -4
  101. package/bundles/material-expansion.umd.js.map +1 -1
  102. package/bundles/material-expansion.umd.min.js +6 -6
  103. package/bundles/material-expansion.umd.min.js.map +1 -1
  104. package/bundles/material-form-field-testing-control.umd.js +9 -1
  105. package/bundles/material-form-field-testing-control.umd.js.map +1 -1
  106. package/bundles/material-form-field-testing-control.umd.min.js +1 -1
  107. package/bundles/material-form-field-testing-control.umd.min.js.map +1 -1
  108. package/bundles/material-form-field-testing.umd.js +41 -30
  109. package/bundles/material-form-field-testing.umd.js.map +1 -1
  110. package/bundles/material-form-field-testing.umd.min.js +3 -3
  111. package/bundles/material-form-field-testing.umd.min.js.map +1 -1
  112. package/bundles/material-form-field.umd.js +11 -3
  113. package/bundles/material-form-field.umd.js.map +1 -1
  114. package/bundles/material-form-field.umd.min.js +2 -2
  115. package/bundles/material-form-field.umd.min.js.map +1 -1
  116. package/bundles/material-grid-list-testing.umd.js +15 -5
  117. package/bundles/material-grid-list-testing.umd.js.map +1 -1
  118. package/bundles/material-grid-list-testing.umd.min.js +2 -2
  119. package/bundles/material-grid-list-testing.umd.min.js.map +1 -1
  120. package/bundles/material-grid-list.umd.js +156 -146
  121. package/bundles/material-grid-list.umd.js.map +1 -1
  122. package/bundles/material-grid-list.umd.min.js +12 -19
  123. package/bundles/material-grid-list.umd.min.js.map +1 -1
  124. package/bundles/material-icon-testing.umd.js +12 -2
  125. package/bundles/material-icon-testing.umd.js.map +1 -1
  126. package/bundles/material-icon-testing.umd.min.js +2 -2
  127. package/bundles/material-icon-testing.umd.min.js.map +1 -1
  128. package/bundles/material-icon.umd.js +46 -2
  129. package/bundles/material-icon.umd.js.map +1 -1
  130. package/bundles/material-icon.umd.min.js +3 -3
  131. package/bundles/material-icon.umd.min.js.map +1 -1
  132. package/bundles/material-input-testing.umd.js +19 -8
  133. package/bundles/material-input-testing.umd.js.map +1 -1
  134. package/bundles/material-input-testing.umd.min.js +1 -1
  135. package/bundles/material-input-testing.umd.min.js.map +1 -1
  136. package/bundles/material-input.umd.js +9 -1
  137. package/bundles/material-input.umd.js.map +1 -1
  138. package/bundles/material-input.umd.min.js +1 -1
  139. package/bundles/material-input.umd.min.js.map +1 -1
  140. package/bundles/material-list-testing.umd.js +62 -57
  141. package/bundles/material-list-testing.umd.js.map +1 -1
  142. package/bundles/material-list-testing.umd.min.js +1 -1
  143. package/bundles/material-list-testing.umd.min.js.map +1 -1
  144. package/bundles/material-list.umd.js +9 -1
  145. package/bundles/material-list.umd.js.map +1 -1
  146. package/bundles/material-list.umd.min.js +1 -1
  147. package/bundles/material-list.umd.min.js.map +1 -1
  148. package/bundles/material-menu-testing.umd.js +94 -67
  149. package/bundles/material-menu-testing.umd.js.map +1 -1
  150. package/bundles/material-menu-testing.umd.min.js +2 -2
  151. package/bundles/material-menu-testing.umd.min.js.map +1 -1
  152. package/bundles/material-menu.umd.js +24 -28
  153. package/bundles/material-menu.umd.js.map +1 -1
  154. package/bundles/material-menu.umd.min.js +3 -3
  155. package/bundles/material-menu.umd.min.js.map +1 -1
  156. package/bundles/material-paginator-testing.umd.js +50 -34
  157. package/bundles/material-paginator-testing.umd.js.map +1 -1
  158. package/bundles/material-paginator-testing.umd.min.js +2 -2
  159. package/bundles/material-paginator-testing.umd.min.js.map +1 -1
  160. package/bundles/material-paginator.umd.js +9 -1
  161. package/bundles/material-paginator.umd.js.map +1 -1
  162. package/bundles/material-paginator.umd.min.js +1 -1
  163. package/bundles/material-paginator.umd.min.js.map +1 -1
  164. package/bundles/material-progress-bar-testing.umd.js +9 -1
  165. package/bundles/material-progress-bar-testing.umd.js.map +1 -1
  166. package/bundles/material-progress-bar-testing.umd.min.js +1 -1
  167. package/bundles/material-progress-bar-testing.umd.min.js.map +1 -1
  168. package/bundles/material-progress-bar.umd.js +9 -1
  169. package/bundles/material-progress-bar.umd.js.map +1 -1
  170. package/bundles/material-progress-bar.umd.min.js +1 -1
  171. package/bundles/material-progress-bar.umd.min.js.map +1 -1
  172. package/bundles/material-progress-spinner-testing.umd.js +9 -1
  173. package/bundles/material-progress-spinner-testing.umd.js.map +1 -1
  174. package/bundles/material-progress-spinner-testing.umd.min.js +1 -1
  175. package/bundles/material-progress-spinner-testing.umd.min.js.map +1 -1
  176. package/bundles/material-progress-spinner.umd.js +9 -1
  177. package/bundles/material-progress-spinner.umd.js.map +1 -1
  178. package/bundles/material-progress-spinner.umd.min.js +2 -2
  179. package/bundles/material-progress-spinner.umd.min.js.map +1 -1
  180. package/bundles/material-radio-testing.umd.js +88 -63
  181. package/bundles/material-radio-testing.umd.js.map +1 -1
  182. package/bundles/material-radio-testing.umd.min.js +2 -2
  183. package/bundles/material-radio-testing.umd.min.js.map +1 -1
  184. package/bundles/material-radio.umd.js +18 -5
  185. package/bundles/material-radio.umd.js.map +1 -1
  186. package/bundles/material-radio.umd.min.js +1 -1
  187. package/bundles/material-radio.umd.min.js.map +1 -1
  188. package/bundles/material-select-testing.umd.js +73 -51
  189. package/bundles/material-select-testing.umd.js.map +1 -1
  190. package/bundles/material-select-testing.umd.min.js +2 -2
  191. package/bundles/material-select-testing.umd.min.js.map +1 -1
  192. package/bundles/material-select.umd.js +14 -3
  193. package/bundles/material-select.umd.js.map +1 -1
  194. package/bundles/material-select.umd.min.js +5 -5
  195. package/bundles/material-select.umd.min.js.map +1 -1
  196. package/bundles/material-sidenav-testing.umd.js +175 -28
  197. package/bundles/material-sidenav-testing.umd.js.map +1 -1
  198. package/bundles/material-sidenav-testing.umd.min.js +2 -2
  199. package/bundles/material-sidenav-testing.umd.min.js.map +1 -1
  200. package/bundles/material-sidenav.umd.js +9 -1
  201. package/bundles/material-sidenav.umd.js.map +1 -1
  202. package/bundles/material-sidenav.umd.min.js +1 -1
  203. package/bundles/material-sidenav.umd.min.js.map +1 -1
  204. package/bundles/material-slide-toggle-testing.umd.js +9 -1
  205. package/bundles/material-slide-toggle-testing.umd.js.map +1 -1
  206. package/bundles/material-slide-toggle-testing.umd.min.js +1 -1
  207. package/bundles/material-slide-toggle-testing.umd.min.js.map +1 -1
  208. package/bundles/material-slide-toggle.umd.js +16 -3
  209. package/bundles/material-slide-toggle.umd.js.map +1 -1
  210. package/bundles/material-slide-toggle.umd.min.js +3 -3
  211. package/bundles/material-slide-toggle.umd.min.js.map +1 -1
  212. package/bundles/material-slider-testing.umd.js +15 -4
  213. package/bundles/material-slider-testing.umd.js.map +1 -1
  214. package/bundles/material-slider-testing.umd.min.js +2 -2
  215. package/bundles/material-slider-testing.umd.min.js.map +1 -1
  216. package/bundles/material-slider.umd.js +9 -1
  217. package/bundles/material-slider.umd.js.map +1 -1
  218. package/bundles/material-slider.umd.min.js +1 -1
  219. package/bundles/material-slider.umd.min.js.map +1 -1
  220. package/bundles/material-snack-bar-testing.umd.js +29 -12
  221. package/bundles/material-snack-bar-testing.umd.js.map +1 -1
  222. package/bundles/material-snack-bar-testing.umd.min.js +2 -2
  223. package/bundles/material-snack-bar-testing.umd.min.js.map +1 -1
  224. package/bundles/material-snack-bar.umd.js +20 -2
  225. package/bundles/material-snack-bar.umd.js.map +1 -1
  226. package/bundles/material-snack-bar.umd.min.js +1 -1
  227. package/bundles/material-snack-bar.umd.min.js.map +1 -1
  228. package/bundles/material-sort-testing.umd.js +9 -1
  229. package/bundles/material-sort-testing.umd.js.map +1 -1
  230. package/bundles/material-sort-testing.umd.min.js +1 -1
  231. package/bundles/material-sort-testing.umd.min.js.map +1 -1
  232. package/bundles/material-sort.umd.js +9 -1
  233. package/bundles/material-sort.umd.js.map +1 -1
  234. package/bundles/material-sort.umd.min.js +3 -3
  235. package/bundles/material-sort.umd.min.js.map +1 -1
  236. package/bundles/material-stepper-testing.umd.js +9 -1
  237. package/bundles/material-stepper-testing.umd.js.map +1 -1
  238. package/bundles/material-stepper-testing.umd.min.js +2 -2
  239. package/bundles/material-stepper-testing.umd.min.js.map +1 -1
  240. package/bundles/material-stepper.umd.js +16 -3
  241. package/bundles/material-stepper.umd.js.map +1 -1
  242. package/bundles/material-stepper.umd.min.js +3 -3
  243. package/bundles/material-stepper.umd.min.js.map +1 -1
  244. package/bundles/material-table-testing.umd.js +26 -17
  245. package/bundles/material-table-testing.umd.js.map +1 -1
  246. package/bundles/material-table-testing.umd.min.js +2 -2
  247. package/bundles/material-table-testing.umd.min.js.map +1 -1
  248. package/bundles/material-table.umd.js +65 -38
  249. package/bundles/material-table.umd.js.map +1 -1
  250. package/bundles/material-table.umd.min.js +3 -3
  251. package/bundles/material-table.umd.min.js.map +1 -1
  252. package/bundles/material-tabs-testing.umd.js +11 -3
  253. package/bundles/material-tabs-testing.umd.js.map +1 -1
  254. package/bundles/material-tabs-testing.umd.min.js +1 -1
  255. package/bundles/material-tabs-testing.umd.min.js.map +1 -1
  256. package/bundles/material-tabs.umd.js +10 -2
  257. package/bundles/material-tabs.umd.js.map +1 -1
  258. package/bundles/material-tabs.umd.min.js +5 -5
  259. package/bundles/material-tabs.umd.min.js.map +1 -1
  260. package/bundles/material-toolbar-testing.umd.js +11 -2
  261. package/bundles/material-toolbar-testing.umd.js.map +1 -1
  262. package/bundles/material-toolbar-testing.umd.min.js +2 -2
  263. package/bundles/material-toolbar-testing.umd.min.js.map +1 -1
  264. package/bundles/material-toolbar.umd.js +9 -1
  265. package/bundles/material-toolbar.umd.js.map +1 -1
  266. package/bundles/material-toolbar.umd.min.js +2 -2
  267. package/bundles/material-toolbar.umd.min.js.map +1 -1
  268. package/bundles/material-tooltip-testing.umd.js +9 -1
  269. package/bundles/material-tooltip-testing.umd.js.map +1 -1
  270. package/bundles/material-tooltip-testing.umd.min.js +1 -1
  271. package/bundles/material-tooltip-testing.umd.min.js.map +1 -1
  272. package/bundles/material-tooltip.umd.js +35 -7
  273. package/bundles/material-tooltip.umd.js.map +1 -1
  274. package/bundles/material-tooltip.umd.min.js +3 -3
  275. package/bundles/material-tooltip.umd.min.js.map +1 -1
  276. package/bundles/material-tree-testing.umd.js +10 -2
  277. package/bundles/material-tree-testing.umd.js.map +1 -1
  278. package/bundles/material-tree-testing.umd.min.js +1 -1
  279. package/bundles/material-tree-testing.umd.min.js.map +1 -1
  280. package/bundles/material-tree.umd.js +9 -1
  281. package/bundles/material-tree.umd.js.map +1 -1
  282. package/bundles/material-tree.umd.min.js +3 -3
  283. package/bundles/material-tree.umd.min.js.map +1 -1
  284. package/button/_button-base.scss +2 -2
  285. package/button/_button-theme.scss +10 -11
  286. package/button/index.metadata.json +1 -1
  287. package/button-toggle/_button-toggle-theme.scss +9 -10
  288. package/card/_card-theme.scss +5 -6
  289. package/checkbox/_checkbox-theme.scss +2 -3
  290. package/checkbox/testing/checkbox-harness.d.ts +21 -16
  291. package/chips/_chips-theme.scss +4 -5
  292. package/chips/testing/chip-harness-filters.d.ts +11 -3
  293. package/chips/testing/chip-harness.d.ts +5 -5
  294. package/chips/testing/chip-list-harness.d.ts +15 -12
  295. package/chips/testing/chip-listbox-harness.d.ts +34 -0
  296. package/chips/testing/chip-option-harness.d.ts +29 -0
  297. package/chips/testing/public-api.d.ts +3 -1
  298. package/core/_core.scss +6 -6
  299. package/core/color/_all-color.scss +2 -1
  300. package/core/datetime/date-formats.d.ts +1 -0
  301. package/core/density/private/_all-density.scss +34 -0
  302. package/core/density/{_index.scss → private/_compatibility.scss} +11 -8
  303. package/core/focus-indicators/_focus-indicators.scss +3 -4
  304. package/core/index.metadata.json +1 -1
  305. package/core/option/_optgroup-theme.scss +2 -3
  306. package/core/option/_option-theme.scss +2 -3
  307. package/core/option/index.d.ts +1 -0
  308. package/core/option/optgroup.d.ts +4 -0
  309. package/core/option/option-parent.d.ts +22 -0
  310. package/core/option/option.d.ts +2 -14
  311. package/core/ripple/_ripple.scss +2 -3
  312. package/core/selection/pseudo-checkbox/_pseudo-checkbox-theme.scss +2 -3
  313. package/core/style/_elevation.scss +2 -18
  314. package/core/style/_form-common.scss +2 -2
  315. package/core/style/_private.scss +40 -0
  316. package/core/testing/option-harness.d.ts +2 -0
  317. package/core/theming/_all-theme.scss +3 -2
  318. package/core/theming/_theming.scss +148 -38
  319. package/core/typography/_all-typography.scss +1 -1
  320. package/datepicker/_datepicker-theme.scss +5 -6
  321. package/datepicker/date-range-input-parts.d.ts +2 -3
  322. package/datepicker/date-range-input.d.ts +5 -4
  323. package/datepicker/date-selection-model.d.ts +10 -0
  324. package/datepicker/datepicker-actions.d.ts +33 -0
  325. package/datepicker/datepicker-base.d.ts +52 -9
  326. package/datepicker/datepicker-input-base.d.ts +5 -10
  327. package/datepicker/datepicker-input.d.ts +9 -8
  328. package/datepicker/datepicker-toggle.d.ts +4 -2
  329. package/datepicker/index.metadata.json +1 -1
  330. package/datepicker/public-api.d.ts +1 -0
  331. package/dialog/_dialog-theme.scss +4 -5
  332. package/divider/_divider-theme.scss +2 -3
  333. package/esm2015/autocomplete/autocomplete-trigger.js +10 -2
  334. package/esm2015/autocomplete/autocomplete.js +11 -4
  335. package/esm2015/autocomplete/testing/autocomplete-harness.js +27 -19
  336. package/esm2015/button/button.js +10 -5
  337. package/esm2015/checkbox/checkbox.js +8 -3
  338. package/esm2015/checkbox/testing/checkbox-harness.js +31 -36
  339. package/esm2015/chips/testing/chip-harness-filters.js +1 -1
  340. package/esm2015/chips/testing/chip-harness.js +6 -6
  341. package/esm2015/chips/testing/chip-list-harness.js +19 -16
  342. package/esm2015/chips/testing/chip-listbox-harness.js +49 -0
  343. package/esm2015/chips/testing/chip-option-harness.js +54 -0
  344. package/esm2015/chips/testing/public-api.js +4 -2
  345. package/esm2015/core/common-behaviors/common-module.js +1 -1
  346. package/esm2015/core/datetime/date-formats.js +1 -1
  347. package/esm2015/core/option/index.js +2 -1
  348. package/esm2015/core/option/optgroup.js +32 -7
  349. package/esm2015/core/option/option-parent.js +13 -0
  350. package/esm2015/core/option/option.js +5 -8
  351. package/esm2015/core/testing/option-harness.js +7 -2
  352. package/esm2015/core/version.js +1 -1
  353. package/esm2015/datepicker/date-range-input-parts.js +10 -14
  354. package/esm2015/datepicker/date-range-input.js +11 -4
  355. package/esm2015/datepicker/date-range-picker.js +3 -2
  356. package/esm2015/datepicker/date-selection-model.js +24 -1
  357. package/esm2015/datepicker/datepicker-actions.js +89 -0
  358. package/esm2015/datepicker/datepicker-base.js +66 -25
  359. package/esm2015/datepicker/datepicker-input-base.js +15 -27
  360. package/esm2015/datepicker/datepicker-input.js +11 -5
  361. package/esm2015/datepicker/datepicker-module.js +8 -1
  362. package/esm2015/datepicker/datepicker-toggle.js +7 -10
  363. package/esm2015/datepicker/datepicker.js +5 -2
  364. package/esm2015/datepicker/month-view.js +6 -3
  365. package/esm2015/datepicker/public-api.js +2 -1
  366. package/esm2015/datepicker/testing/date-range-input-harness.js +4 -4
  367. package/esm2015/datepicker/testing/datepicker-input-harness.js +3 -3
  368. package/esm2015/datepicker/testing/datepicker-trigger-harness-base.js +3 -3
  369. package/esm2015/dialog/dialog-ref.js +2 -2
  370. package/esm2015/expansion/expansion-panel-header.js +9 -4
  371. package/esm2015/expansion/expansion-panel.js +1 -1
  372. package/esm2015/form-field/form-field-animations.js +2 -2
  373. package/esm2015/form-field/form-field.js +2 -2
  374. package/esm2015/form-field/testing/form-field-harness.js +14 -9
  375. package/esm2015/grid-list/public-api.js +3 -2
  376. package/esm2015/grid-list/testing/grid-list-harness.js +6 -5
  377. package/esm2015/icon/icon-registry.js +39 -3
  378. package/esm2015/icon/testing/fake-icon-registry.js +4 -2
  379. package/esm2015/input/testing/input-harness.js +3 -3
  380. package/esm2015/input/testing/native-select-harness.js +7 -5
  381. package/esm2015/list/selection-list.js +1 -1
  382. package/esm2015/list/testing/list-harness-base.js +5 -4
  383. package/esm2015/list/testing/list-item-harness-base.js +5 -4
  384. package/esm2015/list/testing/selection-list-harness.js +8 -5
  385. package/esm2015/menu/menu-item.js +3 -3
  386. package/esm2015/menu/menu-trigger.js +15 -25
  387. package/esm2015/menu/menu.js +2 -2
  388. package/esm2015/menu/testing/menu-harness.js +44 -32
  389. package/esm2015/paginator/testing/paginator-harness.js +27 -25
  390. package/esm2015/radio/radio.js +10 -5
  391. package/esm2015/radio/testing/radio-harness.js +40 -29
  392. package/esm2015/select/select.js +6 -3
  393. package/esm2015/select/testing/select-harness.js +36 -28
  394. package/esm2015/sidenav/testing/drawer-container-harness.js +41 -0
  395. package/esm2015/sidenav/testing/drawer-content-harness.js +23 -0
  396. package/esm2015/sidenav/testing/drawer-harness-filters.js +1 -1
  397. package/esm2015/sidenav/testing/drawer-harness.js +19 -13
  398. package/esm2015/sidenav/testing/public-api.js +6 -2
  399. package/esm2015/sidenav/testing/sidenav-container-harness.js +41 -0
  400. package/esm2015/sidenav/testing/sidenav-content-harness.js +23 -0
  401. package/esm2015/sidenav/testing/sidenav-harness.js +4 -4
  402. package/esm2015/slide-toggle/slide-toggle.js +8 -3
  403. package/esm2015/slider/testing/slider-harness.js +5 -5
  404. package/esm2015/snack-bar/snack-bar-container.js +12 -2
  405. package/esm2015/snack-bar/testing/snack-bar-harness.js +19 -12
  406. package/esm2015/stepper/step-header.js +8 -3
  407. package/esm2015/table/table-data-source.js +34 -21
  408. package/esm2015/table/testing/cell-harness.js +3 -3
  409. package/esm2015/table/testing/row-harness.js +5 -5
  410. package/esm2015/table/testing/table-harness.js +8 -8
  411. package/esm2015/tabs/tab-body.js +3 -3
  412. package/esm2015/tabs/testing/tab-group-harness.js +3 -3
  413. package/esm2015/tabs/testing/tab-nav-bar-harness.js +3 -3
  414. package/esm2015/toolbar/testing/toolbar-harness.js +3 -3
  415. package/esm2015/tooltip/tooltip.js +28 -7
  416. package/esm2015/tree/testing/tree-harness.js +2 -2
  417. package/expansion/_expansion-mixins.scss +11 -0
  418. package/expansion/_expansion-theme.scss +13 -19
  419. package/expansion/index.metadata.json +1 -1
  420. package/fesm2015/autocomplete/testing.js +26 -18
  421. package/fesm2015/autocomplete/testing.js.map +1 -1
  422. package/fesm2015/autocomplete.js +19 -5
  423. package/fesm2015/autocomplete.js.map +1 -1
  424. package/fesm2015/button.js +9 -4
  425. package/fesm2015/button.js.map +1 -1
  426. package/fesm2015/checkbox/testing.js +30 -35
  427. package/fesm2015/checkbox/testing.js.map +1 -1
  428. package/fesm2015/checkbox.js +7 -2
  429. package/fesm2015/checkbox.js.map +1 -1
  430. package/fesm2015/chips/testing.js +120 -21
  431. package/fesm2015/chips/testing.js.map +1 -1
  432. package/fesm2015/core/testing.js +6 -1
  433. package/fesm2015/core/testing.js.map +1 -1
  434. package/fesm2015/core.js +45 -13
  435. package/fesm2015/core.js.map +1 -1
  436. package/fesm2015/datepicker/testing.js +5 -5
  437. package/fesm2015/datepicker/testing.js.map +1 -1
  438. package/fesm2015/datepicker.js +275 -116
  439. package/fesm2015/datepicker.js.map +1 -1
  440. package/fesm2015/dialog.js +1 -1
  441. package/fesm2015/dialog.js.map +1 -1
  442. package/fesm2015/expansion.js +8 -3
  443. package/fesm2015/expansion.js.map +1 -1
  444. package/fesm2015/form-field/testing.js +13 -8
  445. package/fesm2015/form-field/testing.js.map +1 -1
  446. package/fesm2015/form-field.js +2 -2
  447. package/fesm2015/form-field.js.map +1 -1
  448. package/fesm2015/grid-list/testing.js +5 -4
  449. package/fesm2015/grid-list/testing.js.map +1 -1
  450. package/fesm2015/grid-list.js +128 -126
  451. package/fesm2015/grid-list.js.map +1 -1
  452. package/fesm2015/icon/testing.js +3 -1
  453. package/fesm2015/icon/testing.js.map +1 -1
  454. package/fesm2015/icon.js +38 -2
  455. package/fesm2015/icon.js.map +1 -1
  456. package/fesm2015/input/testing.js +7 -5
  457. package/fesm2015/input/testing.js.map +1 -1
  458. package/fesm2015/list/testing.js +13 -8
  459. package/fesm2015/list/testing.js.map +1 -1
  460. package/fesm2015/list.js.map +1 -1
  461. package/fesm2015/menu/testing.js +45 -33
  462. package/fesm2015/menu/testing.js.map +1 -1
  463. package/fesm2015/menu.js +17 -27
  464. package/fesm2015/menu.js.map +1 -1
  465. package/fesm2015/paginator/testing.js +26 -24
  466. package/fesm2015/paginator/testing.js.map +1 -1
  467. package/fesm2015/paginator.js.map +1 -1
  468. package/fesm2015/progress-spinner.js.map +1 -1
  469. package/fesm2015/radio/testing.js +39 -28
  470. package/fesm2015/radio/testing.js.map +1 -1
  471. package/fesm2015/radio.js +9 -4
  472. package/fesm2015/radio.js.map +1 -1
  473. package/fesm2015/select/testing.js +36 -28
  474. package/fesm2015/select/testing.js.map +1 -1
  475. package/fesm2015/select.js +5 -2
  476. package/fesm2015/select.js.map +1 -1
  477. package/fesm2015/sidenav/testing.js +139 -15
  478. package/fesm2015/sidenav/testing.js.map +1 -1
  479. package/fesm2015/sidenav.js.map +1 -1
  480. package/fesm2015/slide-toggle.js +7 -2
  481. package/fesm2015/slide-toggle.js.map +1 -1
  482. package/fesm2015/slider/testing.js +4 -4
  483. package/fesm2015/slider/testing.js.map +1 -1
  484. package/fesm2015/snack-bar/testing.js +18 -11
  485. package/fesm2015/snack-bar/testing.js.map +1 -1
  486. package/fesm2015/snack-bar.js +11 -1
  487. package/fesm2015/snack-bar.js.map +1 -1
  488. package/fesm2015/stepper.js +7 -2
  489. package/fesm2015/stepper.js.map +1 -1
  490. package/fesm2015/table/testing.js +11 -11
  491. package/fesm2015/table/testing.js.map +1 -1
  492. package/fesm2015/table.js +34 -21
  493. package/fesm2015/table.js.map +1 -1
  494. package/fesm2015/tabs/testing.js +3 -3
  495. package/fesm2015/tabs/testing.js.map +1 -1
  496. package/fesm2015/tabs.js +2 -2
  497. package/fesm2015/tabs.js.map +1 -1
  498. package/fesm2015/toolbar/testing.js +2 -2
  499. package/fesm2015/toolbar/testing.js.map +1 -1
  500. package/fesm2015/tooltip.js +27 -7
  501. package/fesm2015/tooltip.js.map +1 -1
  502. package/fesm2015/tree/testing.js +1 -1
  503. package/fesm2015/tree/testing.js.map +1 -1
  504. package/form-field/_form-field-fill-theme.scss +4 -5
  505. package/form-field/_form-field-legacy-theme.scss +5 -6
  506. package/form-field/_form-field-outline-theme.scss +4 -5
  507. package/form-field/_form-field-standard-theme.scss +5 -6
  508. package/form-field/_form-field-theme.scss +8 -9
  509. package/form-field/index.metadata.json +1 -1
  510. package/grid-list/_grid-list-theme.scss +2 -3
  511. package/grid-list/index.metadata.json +1 -1
  512. package/grid-list/public-api.d.ts +2 -1
  513. package/icon/_icon-theme.scss +2 -3
  514. package/icon/icon-registry.d.ts +23 -0
  515. package/icon/index.metadata.json +1 -1
  516. package/icon/testing/fake-icon-registry.d.ts +1 -0
  517. package/icon/testing/index.metadata.json +1 -1
  518. package/input/_input-theme.scss +3 -4
  519. package/list/_list-theme.scss +2 -3
  520. package/list/index.metadata.json +1 -1
  521. package/list/selection-list.d.ts +6 -1
  522. package/list/testing/list-harness-base.d.ts +1 -1
  523. package/list/testing/list-item-harness-base.d.ts +2 -2
  524. package/list/testing/selection-list-harness.d.ts +2 -1
  525. package/menu/_menu-theme.scss +4 -5
  526. package/menu/index.metadata.json +1 -1
  527. package/menu/menu-trigger.d.ts +1 -3
  528. package/menu/menu.d.ts +4 -2
  529. package/menu/testing/menu-harness.d.ts +39 -26
  530. package/package.json +2 -2
  531. package/paginator/_paginator-theme.scss +7 -8
  532. package/paginator/testing/paginator-harness.d.ts +32 -19
  533. package/prebuilt-themes/deeppurple-amber.css +1 -1
  534. package/prebuilt-themes/indigo-pink.css +1 -1
  535. package/prebuilt-themes/pink-bluegrey.css +1 -1
  536. package/prebuilt-themes/purple-green.css +1 -1
  537. package/progress-bar/_progress-bar-theme.scss +2 -3
  538. package/progress-spinner/_progress-spinner-theme.scss +2 -3
  539. package/radio/_radio-theme.scss +2 -3
  540. package/radio/index.metadata.json +1 -1
  541. package/radio/radio.d.ts +2 -2
  542. package/radio/testing/radio-harness.d.ts +39 -24
  543. package/schematics/ng-add/fonts/material-fonts.js +7 -5
  544. package/schematics/ng-add/index.js +1 -1
  545. package/schematics/ng-add/setup-project.js +4 -3
  546. package/select/_select-theme.scss +5 -6
  547. package/select/index.metadata.json +1 -1
  548. package/select/testing/select-harness.d.ts +28 -16
  549. package/sidenav/_sidenav-theme.scss +4 -5
  550. package/sidenav/testing/drawer-container-harness.d.ts +30 -0
  551. package/sidenav/testing/drawer-content-harness.d.ts +21 -0
  552. package/sidenav/testing/drawer-harness-filters.d.ts +6 -0
  553. package/sidenav/testing/drawer-harness.d.ts +13 -7
  554. package/sidenav/testing/public-api.d.ts +5 -1
  555. package/sidenav/testing/sidenav-container-harness.d.ts +30 -0
  556. package/sidenav/testing/sidenav-content-harness.d.ts +21 -0
  557. package/sidenav/testing/sidenav-harness.d.ts +3 -3
  558. package/slide-toggle/_slide-toggle-theme.scss +4 -5
  559. package/slide-toggle/slide-toggle.d.ts +2 -2
  560. package/slider/_slider-theme.scss +2 -3
  561. package/snack-bar/_snack-bar-theme.scss +4 -5
  562. package/snack-bar/index.metadata.json +1 -1
  563. package/snack-bar/snack-bar-container.d.ts +5 -0
  564. package/snack-bar/testing/snack-bar-harness.d.ts +7 -4
  565. package/sort/_sort-theme.scss +2 -3
  566. package/stepper/_stepper-theme.scss +7 -8
  567. package/stepper/step-header.d.ts +2 -2
  568. package/table/_table-theme.scss +2 -3
  569. package/table/index.metadata.json +1 -1
  570. package/table/table-data-source.d.ts +31 -20
  571. package/table/testing/cell-harness.d.ts +2 -2
  572. package/tabs/_tabs-common.scss +2 -2
  573. package/tabs/_tabs-theme.scss +14 -9
  574. package/tabs/index.metadata.json +1 -1
  575. package/tabs/tab-body.d.ts +3 -3
  576. package/toolbar/_toolbar-theme.scss +8 -9
  577. package/tooltip/_tooltip-theme.scss +2 -3
  578. package/tooltip/index.metadata.json +1 -1
  579. package/tooltip/tooltip.d.ts +10 -1
  580. package/tree/_tree-theme.scss +7 -8
  581. package/core/density/_all-density.scss +0 -19
  582. package/core/style/_noop-animation.scss +0 -22
  583. package/core/theming/_check-duplicate-styles.scss +0 -106
@@ -1 +1 @@
1
- {"version":3,"sources":["src/material/material-icon-testing.umd.js"],"names":["global","factory","exports","module","require","define","amd","self","ng","material","icon","testing","cdk","core","rxjs","this","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","adopt","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","n","v","op","TypeError","pop","length","push","MatIconHarness","_super","arguments","__extends","__","constructor","create","with","options","_this","HarnessPredicate","addOption","type","harness","_a","getType","name","text","stringMatches","getName","namespace","getNamespace","host","getAttribute","nameFromDom","isInline","hasClass","ComponentHarness","hostSelector","MatIconTestingModule","FakeMatIconRegistry","addSvgIcon","addSvgIconLiteral","addSvgIconInNamespace","addSvgIconLiteralInNamespace","addSvgIconSet","addSvgIconSetLiteral","addSvgIconSetInNamespace","addSvgIconSetLiteralInNamespace","registerFontClassAlias","classNameForFontAlias","alias","getDefaultFontSetClass","getSvgIconFromUrl","of","_generateEmptySvg","getNamedSvgIcon","setDefaultFontSetClass","ngOnDestroy","emptySvg","document","createElementNS","classList","add","setAttribute","decorators","Injectable","NgModule","args","providers","provide","MatIconRegistry","useClass","defineProperty"],"mappings":"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","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/testing'), require('@angular/core'), require('@angular/material/icon'), require('rxjs')) :\n typeof define === 'function' && define.amd ? define('@angular/material/icon/testing', ['exports', '@angular/cdk/testing', '@angular/core', '@angular/material/icon', 'rxjs'], factory) :\n (global = global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.icon = global.ng.material.icon || {}, global.ng.material.icon.testing = {}), global.ng.cdk.testing, global.ng.core, global.ng.material.icon, global.rxjs));\n}(this, (function (exports, testing, core, icon, rxjs) { 'use strict';\n\n /*! *****************************************************************************\n Copyright (c) Microsoft Corporation.\n\n Permission to use, copy, modify, and/or distribute this software for any\n purpose with or without fee is hereby granted.\n\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n PERFORMANCE OF THIS SOFTWARE.\n ***************************************************************************** */\n /* global Reflect, Promise */\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b)\n if (Object.prototype.hasOwnProperty.call(b, p))\n d[p] = b[p]; };\n return extendStatics(d, b);\n };\n function __extends(d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n }\n var __assign = function () {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s)\n if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };\n function __rest(s, e) {\n var t = {};\n for (var p in s)\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n }\n function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\")\n r = Reflect.decorate(decorators, target, key, desc);\n else\n for (var i = decorators.length - 1; i >= 0; i--)\n if (d = decorators[i])\n r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n }\n function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); };\n }\n function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\")\n return Reflect.metadata(metadataKey, metadataValue);\n }\n function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try {\n step(generator.next(value));\n }\n catch (e) {\n reject(e);\n } }\n function rejected(value) { try {\n step(generator[\"throw\"](value));\n }\n catch (e) {\n reject(e);\n } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n }\n function __generator(thisArg, body) {\n var _ = { label: 0, sent: function () { if (t[0] & 1)\n throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function () { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f)\n throw new TypeError(\"Generator is already executing.\");\n while (_)\n try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)\n return t;\n if (y = 0, t)\n op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return { value: op[1], done: false };\n case 5:\n _.label++;\n y = op[1];\n op = [0];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2])\n _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n }\n catch (e) {\n op = [6, e];\n y = 0;\n }\n finally {\n f = t = 0;\n }\n if (op[0] & 5)\n throw op[1];\n return { value: op[0] ? op[1] : void 0, done: true };\n }\n }\n var __createBinding = Object.create ? (function (o, m, k, k2) {\n if (k2 === undefined)\n k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });\n }) : (function (o, m, k, k2) {\n if (k2 === undefined)\n k2 = k;\n o[k2] = m[k];\n });\n function __exportStar(m, o) {\n for (var p in m)\n if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p))\n __createBinding(o, m, p);\n }\n function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m)\n return m.call(o);\n if (o && typeof o.length === \"number\")\n return {\n next: function () {\n if (o && i >= o.length)\n o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n }\n function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m)\n return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done)\n ar.push(r.value);\n }\n catch (error) {\n e = { error: error };\n }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"]))\n m.call(i);\n }\n finally {\n if (e)\n throw e.error;\n }\n }\n return ar;\n }\n function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n }\n function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++)\n s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n }\n ;\n function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n }\n function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator)\n throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n])\n i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try {\n step(g[n](v));\n }\n catch (e) {\n settle(q[0][3], e);\n } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length)\n resume(q[0][0], q[0][1]); }\n }\n function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\n }\n function __asyncValues(o) {\n if (!Symbol.asyncIterator)\n throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }\n }\n function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) {\n Object.defineProperty(cooked, \"raw\", { value: raw });\n }\n else {\n cooked.raw = raw;\n }\n return cooked;\n }\n ;\n var __setModuleDefault = Object.create ? (function (o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n }) : function (o, v) {\n o[\"default\"] = v;\n };\n function __importStar(mod) {\n if (mod && mod.__esModule)\n return mod;\n var result = {};\n if (mod != null)\n for (var k in mod)\n if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k))\n __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n }\n function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n }\n function __classPrivateFieldGet(receiver, privateMap) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to get private field on non-instance\");\n }\n return privateMap.get(receiver);\n }\n function __classPrivateFieldSet(receiver, privateMap, value) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to set private field on non-instance\");\n }\n privateMap.set(receiver, value);\n return value;\n }\n\n /** Harness for interacting with a standard mat-icon in tests. */\n var MatIconHarness = /** @class */ (function (_super) {\n __extends(MatIconHarness, _super);\n function MatIconHarness() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatIconHarness` that meets\n * certain criteria.\n * @param options Options for filtering which icon instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n MatIconHarness.with = function (options) {\n var _this = this;\n if (options === void 0) { options = {}; }\n return new testing.HarnessPredicate(MatIconHarness, options)\n .addOption('type', options.type, function (harness, type) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, harness.getType()];\n case 1: return [2 /*return*/, (_a.sent()) === type];\n }\n }); }); })\n .addOption('name', options.name, function (harness, text) { return testing.HarnessPredicate.stringMatches(harness.getName(), text); })\n .addOption('namespace', options.namespace, function (harness, text) { return testing.HarnessPredicate.stringMatches(harness.getNamespace(), text); });\n };\n /** Gets the type of the icon. */\n MatIconHarness.prototype.getType = function () {\n return __awaiter(this, void 0, void 0, function () {\n var type;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [4 /*yield*/, (_a.sent()).getAttribute('data-mat-icon-type')];\n case 2:\n type = _a.sent();\n return [2 /*return*/, type === 'svg' ? 0 /* SVG */ : 1 /* FONT */];\n }\n });\n });\n };\n /** Gets the name of the icon. */\n MatIconHarness.prototype.getName = function () {\n return __awaiter(this, void 0, void 0, function () {\n var host, nameFromDom;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1:\n host = _a.sent();\n return [4 /*yield*/, host.getAttribute('data-mat-icon-name')];\n case 2:\n nameFromDom = _a.sent();\n // If we managed to figure out the name from the attribute, use it.\n if (nameFromDom) {\n return [2 /*return*/, nameFromDom];\n }\n return [4 /*yield*/, this.getType()];\n case 3:\n // Some icons support defining the icon as a ligature.\n // As a fallback, try to extract it from the DOM text.\n if ((_a.sent()) === 1 /* FONT */) {\n return [2 /*return*/, host.text()];\n }\n return [2 /*return*/, null];\n }\n });\n });\n };\n /** Gets the namespace of the icon. */\n MatIconHarness.prototype.getNamespace = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).getAttribute('data-mat-icon-namespace')];\n }\n });\n });\n };\n /** Gets whether the icon is inline. */\n MatIconHarness.prototype.isInline = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).hasClass('mat-icon-inline')];\n }\n });\n });\n };\n return MatIconHarness;\n }(testing.ComponentHarness));\n /** The selector for the host element of a `MatIcon` instance. */\n MatIconHarness.hostSelector = '.mat-icon';\n\n /**\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 // tslint:enable:no-any\n /**\n * A null icon registry that must be imported to allow disabling of custom\n * icons.\n */\n var FakeMatIconRegistry = /** @class */ (function () {\n function FakeMatIconRegistry() {\n }\n FakeMatIconRegistry.prototype.addSvgIcon = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconLiteral = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconInNamespace = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconLiteralInNamespace = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconSet = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconSetLiteral = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconSetInNamespace = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconSetLiteralInNamespace = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.registerFontClassAlias = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.classNameForFontAlias = function (alias) {\n return alias;\n };\n FakeMatIconRegistry.prototype.getDefaultFontSetClass = function () {\n return 'material-icons';\n };\n FakeMatIconRegistry.prototype.getSvgIconFromUrl = function () {\n return rxjs.of(this._generateEmptySvg());\n };\n FakeMatIconRegistry.prototype.getNamedSvgIcon = function () {\n return rxjs.of(this._generateEmptySvg());\n };\n FakeMatIconRegistry.prototype.setDefaultFontSetClass = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.ngOnDestroy = function () { };\n FakeMatIconRegistry.prototype._generateEmptySvg = function () {\n var emptySvg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n emptySvg.classList.add('fake-testing-svg');\n // Emulate real icon characteristics from `MatIconRegistry` so size remains consistent in tests.\n emptySvg.setAttribute('fit', '');\n emptySvg.setAttribute('height', '100%');\n emptySvg.setAttribute('width', '100%');\n emptySvg.setAttribute('preserveAspectRatio', 'xMidYMid meet');\n emptySvg.setAttribute('focusable', 'false');\n return emptySvg;\n };\n return FakeMatIconRegistry;\n }());\n FakeMatIconRegistry.decorators = [\n { type: core.Injectable }\n ];\n /** Import this module in tests to install the null icon registry. */\n var MatIconTestingModule = /** @class */ (function () {\n function MatIconTestingModule() {\n }\n return MatIconTestingModule;\n }());\n MatIconTestingModule.decorators = [\n { type: core.NgModule, args: [{\n providers: [{ provide: icon.MatIconRegistry, useClass: FakeMatIconRegistry }]\n },] }\n ];\n\n /**\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\n /**\n * Generated bundle index. Do not edit.\n */\n\n exports.FakeMatIconRegistry = FakeMatIconRegistry;\n exports.MatIconHarness = MatIconHarness;\n exports.MatIconTestingModule = MatIconTestingModule;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=material-icon-testing.umd.js.map\n"]}
1
+ {"version":3,"sources":["src/material/material-icon-testing.umd.js"],"names":["global","factory","exports","module","require","define","amd","self","ng","material","icon","testing","cdk","core","rxjs","this","extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","value","step","next","e","rejected","result","done","adopt","then","apply","__generator","body","f","y","t","g","_","label","sent","trys","ops","verb","throw","return","Symbol","iterator","n","v","op","TypeError","pop","length","push","MatIconHarness","_super","arguments","__extends","String","__","constructor","create","with","options","_this","HarnessPredicate","addOption","type","harness","_a","getType","name","text","stringMatches","getName","namespace","getNamespace","host","getAttribute","nameFromDom","isInline","hasClass","ComponentHarness","hostSelector","MatIconTestingModule","FakeMatIconRegistry","addSvgIcon","addSvgIconLiteral","addSvgIconInNamespace","addSvgIconLiteralInNamespace","addSvgIconSet","addSvgIconSetLiteral","addSvgIconSetInNamespace","addSvgIconSetLiteralInNamespace","registerFontClassAlias","classNameForFontAlias","alias","getDefaultFontSetClass","getSvgIconFromUrl","of","_generateEmptySvg","getNamedSvgIcon","setDefaultFontSetClass","addSvgIconResolver","ngOnDestroy","emptySvg","document","createElementNS","classList","add","setAttribute","decorators","Injectable","NgModule","args","providers","provide","MatIconRegistry","useClass","defineProperty"],"mappings":"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","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/testing'), require('@angular/core'), require('@angular/material/icon'), require('rxjs')) :\n typeof define === 'function' && define.amd ? define('@angular/material/icon/testing', ['exports', '@angular/cdk/testing', '@angular/core', '@angular/material/icon', 'rxjs'], factory) :\n (global = global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.icon = global.ng.material.icon || {}, global.ng.material.icon.testing = {}), global.ng.cdk.testing, global.ng.core, global.ng.material.icon, global.rxjs));\n}(this, (function (exports, testing, core, icon, rxjs) { 'use strict';\n\n /*! *****************************************************************************\n Copyright (c) Microsoft Corporation.\n\n Permission to use, copy, modify, and/or distribute this software for any\n purpose with or without fee is hereby granted.\n\n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n PERFORMANCE OF THIS SOFTWARE.\n ***************************************************************************** */\n /* global Reflect, Promise */\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b)\n if (Object.prototype.hasOwnProperty.call(b, p))\n d[p] = b[p]; };\n return extendStatics(d, b);\n };\n function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n }\n var __assign = function () {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s)\n if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };\n function __rest(s, e) {\n var t = {};\n for (var p in s)\n if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n }\n function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\")\n r = Reflect.decorate(decorators, target, key, desc);\n else\n for (var i = decorators.length - 1; i >= 0; i--)\n if (d = decorators[i])\n r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n }\n function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); };\n }\n function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\")\n return Reflect.metadata(metadataKey, metadataValue);\n }\n function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try {\n step(generator.next(value));\n }\n catch (e) {\n reject(e);\n } }\n function rejected(value) { try {\n step(generator[\"throw\"](value));\n }\n catch (e) {\n reject(e);\n } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n }\n function __generator(thisArg, body) {\n var _ = { label: 0, sent: function () { if (t[0] & 1)\n throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function () { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f)\n throw new TypeError(\"Generator is already executing.\");\n while (_)\n try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)\n return t;\n if (y = 0, t)\n op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return { value: op[1], done: false };\n case 5:\n _.label++;\n y = op[1];\n op = [0];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2])\n _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n }\n catch (e) {\n op = [6, e];\n y = 0;\n }\n finally {\n f = t = 0;\n }\n if (op[0] & 5)\n throw op[1];\n return { value: op[0] ? op[1] : void 0, done: true };\n }\n }\n var __createBinding = Object.create ? (function (o, m, k, k2) {\n if (k2 === undefined)\n k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });\n }) : (function (o, m, k, k2) {\n if (k2 === undefined)\n k2 = k;\n o[k2] = m[k];\n });\n function __exportStar(m, o) {\n for (var p in m)\n if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p))\n __createBinding(o, m, p);\n }\n function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m)\n return m.call(o);\n if (o && typeof o.length === \"number\")\n return {\n next: function () {\n if (o && i >= o.length)\n o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n }\n function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m)\n return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done)\n ar.push(r.value);\n }\n catch (error) {\n e = { error: error };\n }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"]))\n m.call(i);\n }\n finally {\n if (e)\n throw e.error;\n }\n }\n return ar;\n }\n /** @deprecated */\n function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n }\n /** @deprecated */\n function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++)\n s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n }\n function __spreadArray(to, from) {\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\n to[j] = from[i];\n return to;\n }\n function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n }\n function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator)\n throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n])\n i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try {\n step(g[n](v));\n }\n catch (e) {\n settle(q[0][3], e);\n } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length)\n resume(q[0][0], q[0][1]); }\n }\n function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\n }\n function __asyncValues(o) {\n if (!Symbol.asyncIterator)\n throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }\n }\n function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) {\n Object.defineProperty(cooked, \"raw\", { value: raw });\n }\n else {\n cooked.raw = raw;\n }\n return cooked;\n }\n ;\n var __setModuleDefault = Object.create ? (function (o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n }) : function (o, v) {\n o[\"default\"] = v;\n };\n function __importStar(mod) {\n if (mod && mod.__esModule)\n return mod;\n var result = {};\n if (mod != null)\n for (var k in mod)\n if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k))\n __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n }\n function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n }\n function __classPrivateFieldGet(receiver, privateMap) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to get private field on non-instance\");\n }\n return privateMap.get(receiver);\n }\n function __classPrivateFieldSet(receiver, privateMap, value) {\n if (!privateMap.has(receiver)) {\n throw new TypeError(\"attempted to set private field on non-instance\");\n }\n privateMap.set(receiver, value);\n return value;\n }\n\n /** Harness for interacting with a standard mat-icon in tests. */\n var MatIconHarness = /** @class */ (function (_super) {\n __extends(MatIconHarness, _super);\n function MatIconHarness() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /**\n * Gets a `HarnessPredicate` that can be used to search for a `MatIconHarness` that meets\n * certain criteria.\n * @param options Options for filtering which icon instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n MatIconHarness.with = function (options) {\n var _this = this;\n if (options === void 0) { options = {}; }\n return new testing.HarnessPredicate(MatIconHarness, options)\n .addOption('type', options.type, function (harness, type) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, harness.getType()];\n case 1: return [2 /*return*/, (_a.sent()) === type];\n }\n }); }); })\n .addOption('name', options.name, function (harness, text) { return testing.HarnessPredicate.stringMatches(harness.getName(), text); })\n .addOption('namespace', options.namespace, function (harness, text) { return testing.HarnessPredicate.stringMatches(harness.getNamespace(), text); });\n };\n /** Gets the type of the icon. */\n MatIconHarness.prototype.getType = function () {\n return __awaiter(this, void 0, void 0, function () {\n var type;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [4 /*yield*/, (_a.sent()).getAttribute('data-mat-icon-type')];\n case 2:\n type = _a.sent();\n return [2 /*return*/, type === 'svg' ? 0 /* SVG */ : 1 /* FONT */];\n }\n });\n });\n };\n /** Gets the name of the icon. */\n MatIconHarness.prototype.getName = function () {\n return __awaiter(this, void 0, void 0, function () {\n var host, nameFromDom;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1:\n host = _a.sent();\n return [4 /*yield*/, host.getAttribute('data-mat-icon-name')];\n case 2:\n nameFromDom = _a.sent();\n // If we managed to figure out the name from the attribute, use it.\n if (nameFromDom) {\n return [2 /*return*/, nameFromDom];\n }\n return [4 /*yield*/, this.getType()];\n case 3:\n // Some icons support defining the icon as a ligature.\n // As a fallback, try to extract it from the DOM text.\n if ((_a.sent()) === 1 /* FONT */) {\n return [2 /*return*/, host.text()];\n }\n return [2 /*return*/, null];\n }\n });\n });\n };\n /** Gets the namespace of the icon. */\n MatIconHarness.prototype.getNamespace = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).getAttribute('data-mat-icon-namespace')];\n }\n });\n });\n };\n /** Gets whether the icon is inline. */\n MatIconHarness.prototype.isInline = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.host()];\n case 1: return [2 /*return*/, (_a.sent()).hasClass('mat-icon-inline')];\n }\n });\n });\n };\n return MatIconHarness;\n }(testing.ComponentHarness));\n /** The selector for the host element of a `MatIcon` instance. */\n MatIconHarness.hostSelector = '.mat-icon';\n\n /**\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 /**\n * A null icon registry that must be imported to allow disabling of custom\n * icons.\n */\n var FakeMatIconRegistry = /** @class */ (function () {\n function FakeMatIconRegistry() {\n }\n FakeMatIconRegistry.prototype.addSvgIcon = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconLiteral = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconInNamespace = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconLiteralInNamespace = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconSet = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconSetLiteral = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconSetInNamespace = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconSetLiteralInNamespace = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.registerFontClassAlias = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.classNameForFontAlias = function (alias) {\n return alias;\n };\n FakeMatIconRegistry.prototype.getDefaultFontSetClass = function () {\n return 'material-icons';\n };\n FakeMatIconRegistry.prototype.getSvgIconFromUrl = function () {\n return rxjs.of(this._generateEmptySvg());\n };\n FakeMatIconRegistry.prototype.getNamedSvgIcon = function () {\n return rxjs.of(this._generateEmptySvg());\n };\n FakeMatIconRegistry.prototype.setDefaultFontSetClass = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.addSvgIconResolver = function () {\n return this;\n };\n FakeMatIconRegistry.prototype.ngOnDestroy = function () { };\n FakeMatIconRegistry.prototype._generateEmptySvg = function () {\n var emptySvg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n emptySvg.classList.add('fake-testing-svg');\n // Emulate real icon characteristics from `MatIconRegistry` so size remains consistent in tests.\n emptySvg.setAttribute('fit', '');\n emptySvg.setAttribute('height', '100%');\n emptySvg.setAttribute('width', '100%');\n emptySvg.setAttribute('preserveAspectRatio', 'xMidYMid meet');\n emptySvg.setAttribute('focusable', 'false');\n return emptySvg;\n };\n return FakeMatIconRegistry;\n }());\n FakeMatIconRegistry.decorators = [\n { type: core.Injectable }\n ];\n /** Import this module in tests to install the null icon registry. */\n var MatIconTestingModule = /** @class */ (function () {\n function MatIconTestingModule() {\n }\n return MatIconTestingModule;\n }());\n MatIconTestingModule.decorators = [\n { type: core.NgModule, args: [{\n providers: [{ provide: icon.MatIconRegistry, useClass: FakeMatIconRegistry }]\n },] }\n ];\n\n /**\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\n /**\n * Generated bundle index. Do not edit.\n */\n\n exports.FakeMatIconRegistry = FakeMatIconRegistry;\n exports.MatIconHarness = MatIconHarness;\n exports.MatIconTestingModule = MatIconTestingModule;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=material-icon-testing.umd.js.map\n"]}
@@ -28,6 +28,8 @@
28
28
  return extendStatics(d, b);
29
29
  };
30
30
  function __extends(d, b) {
31
+ if (typeof b !== "function" && b !== null)
32
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
31
33
  extendStatics(d, b);
32
34
  function __() { this.constructor = d; }
33
35
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
@@ -213,11 +215,13 @@
213
215
  }
214
216
  return ar;
215
217
  }
218
+ /** @deprecated */
216
219
  function __spread() {
217
220
  for (var ar = [], i = 0; i < arguments.length; i++)
218
221
  ar = ar.concat(__read(arguments[i]));
219
222
  return ar;
220
223
  }
224
+ /** @deprecated */
221
225
  function __spreadArrays() {
222
226
  for (var s = 0, i = 0, il = arguments.length; i < il; i++)
223
227
  s += arguments[i].length;
@@ -226,7 +230,11 @@
226
230
  r[k] = a[j];
227
231
  return r;
228
232
  }
229
- ;
233
+ function __spreadArray(to, from) {
234
+ for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)
235
+ to[j] = from[i];
236
+ return to;
237
+ }
230
238
  function __await(v) {
231
239
  return this instanceof __await ? (this.v = v, this) : new __await(v);
232
240
  }
@@ -387,6 +395,8 @@
387
395
  this._inProgressUrlFetches = new Map();
388
396
  /** Map from font identifiers to their CSS class names. Used for icon fonts. */
389
397
  this._fontCssClassesByAlias = new Map();
398
+ /** Registered icon resolver functions. */
399
+ this._resolvers = [];
390
400
  /**
391
401
  * The CSS class to apply when an `<mat-icon>` component has no icon name, url, or font specified.
392
402
  * The default 'material-icons' value assumes that the material icon font has been loaded as
@@ -420,6 +430,18 @@
420
430
  MatIconRegistry.prototype.addSvgIconInNamespace = function (namespace, iconName, url, options) {
421
431
  return this._addSvgIconConfig(namespace, iconName, new SvgIconConfig(url, null, options));
422
432
  };
433
+ /**
434
+ * Registers an icon resolver function with the registry. The function will be invoked with the
435
+ * name and namespace of an icon when the registry tries to resolve the URL from which to fetch
436
+ * the icon. The resolver is expected to return a `SafeResourceUrl` that points to the icon,
437
+ * an object with the icon URL and icon options, or `null` if the icon is not supported. Resolvers
438
+ * will be invoked in the order in which they have been registered.
439
+ * @param resolver Resolver function to be registered.
440
+ */
441
+ MatIconRegistry.prototype.addSvgIconResolver = function (resolver) {
442
+ this._resolvers.push(resolver);
443
+ return this;
444
+ };
423
445
  /**
424
446
  * Registers an icon using an HTML string in the specified namespace.
425
447
  * @param namespace Namespace in which the icon should be registered.
@@ -535,12 +557,18 @@
535
557
  */
536
558
  MatIconRegistry.prototype.getNamedSvgIcon = function (name, namespace) {
537
559
  if (namespace === void 0) { namespace = ''; }
538
- // Return (copy of) cached icon if possible.
539
560
  var key = iconKey(namespace, name);
540
561
  var config = this._svgIconConfigs.get(key);
562
+ // Return (copy of) cached icon if possible.
541
563
  if (config) {
542
564
  return this._getSvgFromConfig(config);
543
565
  }
566
+ // Otherwise try to resolve the config from one of the resolver functions.
567
+ config = this._getIconConfigFromResolvers(namespace, name);
568
+ if (config) {
569
+ this._svgIconConfigs.set(key, config);
570
+ return this._getSvgFromConfig(config);
571
+ }
544
572
  // See if we have any icon sets registered for the namespace.
545
573
  var iconSetConfigs = this._iconSetConfigs.get(namespace);
546
574
  if (iconSetConfigs) {
@@ -549,6 +577,7 @@
549
577
  return rxjs.throwError(getMatIconNameNotFoundError(key));
550
578
  };
551
579
  MatIconRegistry.prototype.ngOnDestroy = function () {
580
+ this._resolvers = [];
552
581
  this._svgIconConfigs.clear();
553
582
  this._iconSetConfigs.clear();
554
583
  this._cachedIconsByUrl.clear();
@@ -801,6 +830,18 @@
801
830
  }
802
831
  return config.svgElement;
803
832
  };
833
+ /** Tries to create an icon config through the registered resolver functions. */
834
+ MatIconRegistry.prototype._getIconConfigFromResolvers = function (namespace, name) {
835
+ for (var i = 0; i < this._resolvers.length; i++) {
836
+ var result = this._resolvers[i](name, namespace);
837
+ if (result) {
838
+ return isSafeUrlWithOptions(result) ?
839
+ new SvgIconConfig(result.url, null, result.options) :
840
+ new SvgIconConfig(result, null);
841
+ }
842
+ }
843
+ return undefined;
844
+ };
804
845
  return MatIconRegistry;
805
846
  }());
806
847
  MatIconRegistry.ɵprov = i0.ɵɵdefineInjectable({ factory: function MatIconRegistry_Factory() { return new MatIconRegistry(i0.ɵɵinject(i1.HttpClient, 8), i0.ɵɵinject(i2.DomSanitizer), i0.ɵɵinject(i3.DOCUMENT, 8), i0.ɵɵinject(i0.ErrorHandler)); }, token: MatIconRegistry, providedIn: "root" });
@@ -838,6 +879,9 @@
838
879
  function iconKey(namespace, name) {
839
880
  return namespace + ':' + name;
840
881
  }
882
+ function isSafeUrlWithOptions(value) {
883
+ return !!(value.url && value.options);
884
+ }
841
885
 
842
886
  // Boilerplate for applying mixins to MatIcon.
843
887
  /** @docs-private */