@angular/material 6.4.6 → 6.4.7

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 (479) hide show
  1. package/_theming.scss +5 -2
  2. package/autocomplete/typings/autocomplete-trigger.d.ts +12 -1
  3. package/autocomplete/typings/autocomplete.d.ts +1 -1
  4. package/autocomplete/typings/index.metadata.json +1 -1
  5. package/badge/typings/badge.d.ts +6 -2
  6. package/badge/typings/index.metadata.json +1 -1
  7. package/bottom-sheet/typings/bottom-sheet-container.d.ts +1 -1
  8. package/bottom-sheet/typings/index.metadata.json +1 -1
  9. package/bundles/material-autocomplete.umd.js +32 -1
  10. package/bundles/material-autocomplete.umd.js.map +1 -1
  11. package/bundles/material-autocomplete.umd.min.js +1 -1
  12. package/bundles/material-autocomplete.umd.min.js.map +1 -1
  13. package/bundles/material-badge.umd.js +6 -2
  14. package/bundles/material-badge.umd.js.map +1 -1
  15. package/bundles/material-badge.umd.min.js +1 -1
  16. package/bundles/material-badge.umd.min.js.map +1 -1
  17. package/bundles/material-bottom-sheet.umd.js.map +1 -1
  18. package/bundles/material-bottom-sheet.umd.min.js.map +1 -1
  19. package/bundles/material-button-toggle.umd.js +2 -1
  20. package/bundles/material-button-toggle.umd.js.map +1 -1
  21. package/bundles/material-button-toggle.umd.min.js +1 -1
  22. package/bundles/material-button-toggle.umd.min.js.map +1 -1
  23. package/bundles/material-card.umd.js +1 -1
  24. package/bundles/material-card.umd.js.map +1 -1
  25. package/bundles/material-card.umd.min.js +1 -1
  26. package/bundles/material-card.umd.min.js.map +1 -1
  27. package/bundles/material-checkbox.umd.js.map +1 -1
  28. package/bundles/material-checkbox.umd.min.js.map +1 -1
  29. package/bundles/material-chips.umd.js +104 -92
  30. package/bundles/material-chips.umd.js.map +1 -1
  31. package/bundles/material-chips.umd.min.js +1 -1
  32. package/bundles/material-chips.umd.min.js.map +1 -1
  33. package/bundles/material-core.umd.js +13 -16
  34. package/bundles/material-core.umd.js.map +1 -1
  35. package/bundles/material-core.umd.min.js +2 -2
  36. package/bundles/material-core.umd.min.js.map +1 -1
  37. package/bundles/material-datepicker.umd.js +20 -4
  38. package/bundles/material-datepicker.umd.js.map +1 -1
  39. package/bundles/material-datepicker.umd.min.js +2 -2
  40. package/bundles/material-datepicker.umd.min.js.map +1 -1
  41. package/bundles/material-dialog.umd.js.map +1 -1
  42. package/bundles/material-dialog.umd.min.js.map +1 -1
  43. package/bundles/material-expansion.umd.js +200 -74
  44. package/bundles/material-expansion.umd.js.map +1 -1
  45. package/bundles/material-expansion.umd.min.js +1 -1
  46. package/bundles/material-expansion.umd.min.js.map +1 -1
  47. package/bundles/material-form-field.umd.js +29 -18
  48. package/bundles/material-form-field.umd.js.map +1 -1
  49. package/bundles/material-form-field.umd.min.js +1 -1
  50. package/bundles/material-form-field.umd.min.js.map +1 -1
  51. package/bundles/material-grid-list.umd.js +10 -34
  52. package/bundles/material-grid-list.umd.js.map +1 -1
  53. package/bundles/material-grid-list.umd.min.js +1 -1
  54. package/bundles/material-grid-list.umd.min.js.map +1 -1
  55. package/bundles/material-icon.umd.js.map +1 -1
  56. package/bundles/material-icon.umd.min.js.map +1 -1
  57. package/bundles/material-input.umd.js +13 -6
  58. package/bundles/material-input.umd.js.map +1 -1
  59. package/bundles/material-input.umd.min.js +1 -1
  60. package/bundles/material-input.umd.min.js.map +1 -1
  61. package/bundles/material-list.umd.js +4 -4
  62. package/bundles/material-list.umd.js.map +1 -1
  63. package/bundles/material-list.umd.min.js +5 -5
  64. package/bundles/material-list.umd.min.js.map +1 -1
  65. package/bundles/material-menu.umd.js +10 -9
  66. package/bundles/material-menu.umd.js.map +1 -1
  67. package/bundles/material-menu.umd.min.js +1 -1
  68. package/bundles/material-menu.umd.min.js.map +1 -1
  69. package/bundles/material-progress-bar.umd.js +28 -10
  70. package/bundles/material-progress-bar.umd.js.map +1 -1
  71. package/bundles/material-progress-bar.umd.min.js +1 -1
  72. package/bundles/material-progress-bar.umd.min.js.map +1 -1
  73. package/bundles/material-radio.umd.js.map +1 -1
  74. package/bundles/material-radio.umd.min.js.map +1 -1
  75. package/bundles/material-select.umd.js +8 -3
  76. package/bundles/material-select.umd.js.map +1 -1
  77. package/bundles/material-select.umd.min.js +1 -1
  78. package/bundles/material-select.umd.min.js.map +1 -1
  79. package/bundles/material-sidenav.umd.js +5 -1
  80. package/bundles/material-sidenav.umd.js.map +1 -1
  81. package/bundles/material-sidenav.umd.min.js +1 -1
  82. package/bundles/material-sidenav.umd.min.js.map +1 -1
  83. package/bundles/material-slide-toggle.umd.js +1 -1
  84. package/bundles/material-slide-toggle.umd.js.map +1 -1
  85. package/bundles/material-slide-toggle.umd.min.js +1 -1
  86. package/bundles/material-slide-toggle.umd.min.js.map +1 -1
  87. package/bundles/material-slider.umd.js +1 -1
  88. package/bundles/material-slider.umd.js.map +1 -1
  89. package/bundles/material-slider.umd.min.js +1 -1
  90. package/bundles/material-slider.umd.min.js.map +1 -1
  91. package/bundles/material-snack-bar.umd.js.map +1 -1
  92. package/bundles/material-snack-bar.umd.min.js.map +1 -1
  93. package/bundles/material-stepper.umd.js +30 -18
  94. package/bundles/material-stepper.umd.js.map +1 -1
  95. package/bundles/material-stepper.umd.min.js +1 -1
  96. package/bundles/material-stepper.umd.min.js.map +1 -1
  97. package/bundles/material-table.umd.js +31 -31
  98. package/bundles/material-table.umd.js.map +1 -1
  99. package/bundles/material-table.umd.min.js +1 -1
  100. package/bundles/material-table.umd.min.js.map +1 -1
  101. package/bundles/material-tabs.umd.js +18 -21
  102. package/bundles/material-tabs.umd.js.map +1 -1
  103. package/bundles/material-tabs.umd.min.js +2 -2
  104. package/bundles/material-tabs.umd.min.js.map +1 -1
  105. package/bundles/material-tooltip.umd.js +11 -11
  106. package/bundles/material-tooltip.umd.js.map +1 -1
  107. package/bundles/material-tooltip.umd.min.js +1 -1
  108. package/bundles/material-tooltip.umd.min.js.map +1 -1
  109. package/bundles/material-tree.umd.js +28 -54
  110. package/bundles/material-tree.umd.js.map +1 -1
  111. package/bundles/material-tree.umd.min.js +1 -1
  112. package/bundles/material-tree.umd.min.js.map +1 -1
  113. package/bundles/material.umd.js +578 -386
  114. package/bundles/material.umd.js.map +1 -1
  115. package/bundles/material.umd.min.js +21 -21
  116. package/bundles/material.umd.min.js.map +1 -1
  117. package/button-toggle/typings/button-toggle.d.ts +1 -1
  118. package/button-toggle/typings/index.metadata.json +1 -1
  119. package/card/typings/index.metadata.json +1 -1
  120. package/checkbox/typings/checkbox.d.ts +2 -2
  121. package/checkbox/typings/index.metadata.json +1 -1
  122. package/chips/typings/chip-input.d.ts +5 -2
  123. package/chips/typings/chip-list.d.ts +12 -19
  124. package/chips/typings/chip.d.ts +3 -2
  125. package/chips/typings/index.metadata.json +1 -1
  126. package/core/typings/index.metadata.json +1 -1
  127. package/core/typings/line/line.d.ts +1 -1
  128. package/core/typings/option/option.d.ts +3 -4
  129. package/core/typings/ripple/ripple-renderer.d.ts +1 -1
  130. package/core/typings/ripple/ripple.d.ts +1 -1
  131. package/datepicker/typings/calendar-body.d.ts +1 -1
  132. package/datepicker/typings/datepicker-input.d.ts +1 -1
  133. package/datepicker/typings/datepicker-toggle.d.ts +3 -1
  134. package/datepicker/typings/datepicker.d.ts +1 -1
  135. package/datepicker/typings/index.metadata.json +1 -1
  136. package/dialog/typings/dialog-container.d.ts +1 -1
  137. package/dialog/typings/dialog-content-directives.d.ts +2 -2
  138. package/dialog/typings/index.metadata.json +1 -1
  139. package/esm2015/autocomplete.js +29 -1
  140. package/esm2015/autocomplete.js.map +1 -1
  141. package/esm2015/badge.js +8 -3
  142. package/esm2015/badge.js.map +1 -1
  143. package/esm2015/bottom-sheet.js.map +1 -1
  144. package/esm2015/button-toggle.js +2 -1
  145. package/esm2015/button-toggle.js.map +1 -1
  146. package/esm2015/card.js +1 -1
  147. package/esm2015/card.js.map +1 -1
  148. package/esm2015/checkbox.js.map +1 -1
  149. package/esm2015/chips.js +93 -74
  150. package/esm2015/chips.js.map +1 -1
  151. package/esm2015/core.js +10 -7
  152. package/esm2015/core.js.map +1 -1
  153. package/esm2015/datepicker.js +22 -5
  154. package/esm2015/datepicker.js.map +1 -1
  155. package/esm2015/dialog.js.map +1 -1
  156. package/esm2015/expansion.js +158 -66
  157. package/esm2015/expansion.js.map +1 -1
  158. package/esm2015/form-field.js +29 -19
  159. package/esm2015/form-field.js.map +1 -1
  160. package/esm2015/grid-list.js +7 -30
  161. package/esm2015/grid-list.js.map +1 -1
  162. package/esm2015/icon.js.map +1 -1
  163. package/esm2015/input.js +13 -7
  164. package/esm2015/input.js.map +1 -1
  165. package/esm2015/list.js +4 -4
  166. package/esm2015/list.js.map +1 -1
  167. package/esm2015/material.js +9 -9
  168. package/esm2015/material.js.map +1 -1
  169. package/esm2015/menu.js +7 -6
  170. package/esm2015/menu.js.map +1 -1
  171. package/esm2015/progress-bar.js +25 -6
  172. package/esm2015/progress-bar.js.map +1 -1
  173. package/esm2015/radio.js.map +1 -1
  174. package/esm2015/select.js +8 -3
  175. package/esm2015/select.js.map +1 -1
  176. package/esm2015/sidenav.js +5 -1
  177. package/esm2015/sidenav.js.map +1 -1
  178. package/esm2015/slide-toggle.js +1 -1
  179. package/esm2015/slide-toggle.js.map +1 -1
  180. package/esm2015/slider.js +1 -1
  181. package/esm2015/slider.js.map +1 -1
  182. package/esm2015/snack-bar.js.map +1 -1
  183. package/esm2015/stepper.js +25 -21
  184. package/esm2015/stepper.js.map +1 -1
  185. package/esm2015/table.js +22 -32
  186. package/esm2015/table.js.map +1 -1
  187. package/esm2015/tabs.js +7 -17
  188. package/esm2015/tabs.js.map +1 -1
  189. package/esm2015/tooltip.js +9 -9
  190. package/esm2015/tooltip.js.map +1 -1
  191. package/esm2015/tree.js +16 -54
  192. package/esm2015/tree.js.map +1 -1
  193. package/esm5/autocomplete.es5.js +32 -1
  194. package/esm5/autocomplete.es5.js.map +1 -1
  195. package/esm5/badge.es5.js +7 -3
  196. package/esm5/badge.es5.js.map +1 -1
  197. package/esm5/bottom-sheet.es5.js.map +1 -1
  198. package/esm5/button-toggle.es5.js +2 -1
  199. package/esm5/button-toggle.es5.js.map +1 -1
  200. package/esm5/card.es5.js +1 -1
  201. package/esm5/card.es5.js.map +1 -1
  202. package/esm5/checkbox.es5.js.map +1 -1
  203. package/esm5/chips.es5.js +103 -91
  204. package/esm5/chips.es5.js.map +1 -1
  205. package/esm5/core.es5.js +10 -12
  206. package/esm5/core.es5.js.map +1 -1
  207. package/esm5/datepicker.es5.js +21 -5
  208. package/esm5/datepicker.es5.js.map +1 -1
  209. package/esm5/dialog.es5.js.map +1 -1
  210. package/esm5/expansion.es5.js +202 -78
  211. package/esm5/expansion.es5.js.map +1 -1
  212. package/esm5/form-field.es5.js +29 -18
  213. package/esm5/form-field.es5.js.map +1 -1
  214. package/esm5/grid-list.es5.js +7 -30
  215. package/esm5/grid-list.es5.js.map +1 -1
  216. package/esm5/icon.es5.js.map +1 -1
  217. package/esm5/input.es5.js +13 -7
  218. package/esm5/input.es5.js.map +1 -1
  219. package/esm5/list.es5.js +4 -4
  220. package/esm5/list.es5.js.map +1 -1
  221. package/esm5/material.es5.js +9 -9
  222. package/esm5/material.es5.js.map +1 -1
  223. package/esm5/menu.es5.js +5 -4
  224. package/esm5/menu.es5.js.map +1 -1
  225. package/esm5/progress-bar.es5.js +25 -9
  226. package/esm5/progress-bar.es5.js.map +1 -1
  227. package/esm5/radio.es5.js.map +1 -1
  228. package/esm5/select.es5.js +8 -3
  229. package/esm5/select.es5.js.map +1 -1
  230. package/esm5/sidenav.es5.js +5 -1
  231. package/esm5/sidenav.es5.js.map +1 -1
  232. package/esm5/slide-toggle.es5.js +1 -1
  233. package/esm5/slide-toggle.es5.js.map +1 -1
  234. package/esm5/slider.es5.js +1 -1
  235. package/esm5/slider.es5.js.map +1 -1
  236. package/esm5/snack-bar.es5.js.map +1 -1
  237. package/esm5/stepper.es5.js +25 -17
  238. package/esm5/stepper.es5.js.map +1 -1
  239. package/esm5/table.es5.js +22 -30
  240. package/esm5/table.es5.js.map +1 -1
  241. package/esm5/tabs.es5.js +9 -12
  242. package/esm5/tabs.es5.js.map +1 -1
  243. package/esm5/tooltip.es5.js +11 -11
  244. package/esm5/tooltip.es5.js.map +1 -1
  245. package/esm5/tree.es5.js +22 -53
  246. package/esm5/tree.es5.js.map +1 -1
  247. package/expansion/typings/accordion-base.d.ts +30 -0
  248. package/expansion/typings/accordion.d.ts +18 -4
  249. package/expansion/typings/expansion-panel-header.d.ts +13 -2
  250. package/expansion/typings/expansion-panel.d.ts +10 -6
  251. package/expansion/typings/index.metadata.json +1 -1
  252. package/expansion/typings/public-api.d.ts +1 -0
  253. package/form-field/typings/form-field.d.ts +4 -3
  254. package/form-field/typings/index.metadata.json +1 -1
  255. package/grid-list/typings/grid-list.d.ts +1 -1
  256. package/grid-list/typings/grid-tile.d.ts +2 -2
  257. package/grid-list/typings/index.metadata.json +1 -1
  258. package/icon/typings/icon.d.ts +1 -1
  259. package/icon/typings/index.metadata.json +1 -1
  260. package/input/typings/autosize.d.ts +2 -1
  261. package/input/typings/index.metadata.json +1 -1
  262. package/input/typings/input.d.ts +2 -2
  263. package/list/typings/index.metadata.json +1 -1
  264. package/list/typings/list.d.ts +1 -1
  265. package/list/typings/selection-list.d.ts +2 -2
  266. package/menu/typings/index.d.ts +4 -4
  267. package/menu/typings/index.metadata.json +1 -1
  268. package/menu/typings/menu-directive.d.ts +1 -1
  269. package/menu/typings/menu-item.d.ts +1 -1
  270. package/menu/typings/menu-trigger.d.ts +1 -1
  271. package/package.json +4 -4
  272. package/prebuilt-themes/deeppurple-amber.css +1 -1
  273. package/prebuilt-themes/indigo-pink.css +1 -1
  274. package/prebuilt-themes/pink-bluegrey.css +1 -1
  275. package/prebuilt-themes/purple-green.css +1 -1
  276. package/progress-bar/typings/index.metadata.json +1 -1
  277. package/progress-bar/typings/progress-bar.d.ts +17 -3
  278. package/radio/typings/radio.d.ts +1 -1
  279. package/sidenav/typings/drawer.d.ts +2 -2
  280. package/sidenav/typings/index.metadata.json +1 -1
  281. package/slide-toggle/typings/index.metadata.json +1 -1
  282. package/slide-toggle/typings/slide-toggle.d.ts +3 -3
  283. package/slider/typings/index.metadata.json +1 -1
  284. package/snack-bar/typings/index.metadata.json +1 -1
  285. package/snack-bar/typings/snack-bar-container.d.ts +1 -1
  286. package/stepper/typings/index.metadata.json +1 -1
  287. package/stepper/typings/step-header.d.ts +2 -2
  288. package/stepper/typings/step-label.d.ts +2 -10
  289. package/stepper/typings/stepper-button.d.ts +4 -2
  290. package/stepper/typings/stepper.d.ts +4 -3
  291. package/table/typings/cell.d.ts +8 -5
  292. package/table/typings/index.metadata.json +1 -1
  293. package/table/typings/row.d.ts +6 -3
  294. package/table/typings/table.d.ts +2 -8
  295. package/tabs/typings/index.d.ts +5 -5
  296. package/tabs/typings/index.metadata.json +1 -1
  297. package/tabs/typings/ink-bar.d.ts +1 -1
  298. package/tabs/typings/tab-body.d.ts +1 -1
  299. package/tabs/typings/tab-label.d.ts +2 -10
  300. package/tooltip/typings/index.metadata.json +1 -1
  301. package/tooltip/typings/tooltip.d.ts +3 -3
  302. package/tree/typings/index.metadata.json +1 -1
  303. package/tree/typings/node.d.ts +7 -7
  304. package/tree/typings/padding.d.ts +3 -5
  305. package/tree/typings/toggle.d.ts +10 -3
  306. package/tree/typings/tree.d.ts +2 -3
  307. package/typings/autocomplete/autocomplete-trigger.d.ts +12 -1
  308. package/typings/autocomplete/autocomplete.d.ts +1 -1
  309. package/typings/autocomplete/index.metadata.json +1 -1
  310. package/typings/badge/badge.d.ts +6 -2
  311. package/typings/badge/index.metadata.json +1 -1
  312. package/typings/bottom-sheet/bottom-sheet-container.d.ts +1 -1
  313. package/typings/bottom-sheet/index.metadata.json +1 -1
  314. package/typings/button-toggle/button-toggle.d.ts +1 -1
  315. package/typings/button-toggle/index.metadata.json +1 -1
  316. package/typings/card/index.metadata.json +1 -1
  317. package/typings/checkbox/checkbox.d.ts +2 -2
  318. package/typings/checkbox/index.metadata.json +1 -1
  319. package/typings/chips/chip-input.d.ts +5 -2
  320. package/typings/chips/chip-list.d.ts +12 -19
  321. package/typings/chips/chip.d.ts +3 -2
  322. package/typings/chips/index.metadata.json +1 -1
  323. package/typings/core/index.metadata.json +1 -1
  324. package/typings/core/line/line.d.ts +1 -1
  325. package/typings/core/option/option.d.ts +3 -4
  326. package/typings/core/ripple/ripple-renderer.d.ts +1 -1
  327. package/typings/core/ripple/ripple.d.ts +1 -1
  328. package/typings/datepicker/calendar-body.d.ts +1 -1
  329. package/typings/datepicker/datepicker-input.d.ts +1 -1
  330. package/typings/datepicker/datepicker-toggle.d.ts +3 -1
  331. package/typings/datepicker/datepicker.d.ts +1 -1
  332. package/typings/datepicker/index.metadata.json +1 -1
  333. package/typings/dialog/dialog-container.d.ts +1 -1
  334. package/typings/dialog/dialog-content-directives.d.ts +2 -2
  335. package/typings/dialog/index.metadata.json +1 -1
  336. package/typings/esm5/autocomplete/autocomplete-trigger.d.ts +12 -1
  337. package/typings/esm5/autocomplete/autocomplete.d.ts +1 -1
  338. package/typings/esm5/autocomplete/index.metadata.json +1 -1
  339. package/typings/esm5/badge/badge.d.ts +6 -2
  340. package/typings/esm5/badge/index.metadata.json +1 -1
  341. package/typings/esm5/bottom-sheet/bottom-sheet-container.d.ts +1 -1
  342. package/typings/esm5/bottom-sheet/index.metadata.json +1 -1
  343. package/typings/esm5/button-toggle/button-toggle.d.ts +1 -1
  344. package/typings/esm5/button-toggle/index.metadata.json +1 -1
  345. package/typings/esm5/card/index.metadata.json +1 -1
  346. package/typings/esm5/checkbox/checkbox.d.ts +2 -2
  347. package/typings/esm5/checkbox/index.metadata.json +1 -1
  348. package/typings/esm5/chips/chip-input.d.ts +5 -2
  349. package/typings/esm5/chips/chip-list.d.ts +12 -19
  350. package/typings/esm5/chips/chip.d.ts +3 -2
  351. package/typings/esm5/chips/index.metadata.json +1 -1
  352. package/typings/esm5/core/index.metadata.json +1 -1
  353. package/typings/esm5/core/line/line.d.ts +1 -1
  354. package/typings/esm5/core/option/option.d.ts +3 -4
  355. package/typings/esm5/core/ripple/ripple-renderer.d.ts +1 -1
  356. package/typings/esm5/core/ripple/ripple.d.ts +1 -1
  357. package/typings/esm5/datepicker/calendar-body.d.ts +1 -1
  358. package/typings/esm5/datepicker/datepicker-input.d.ts +1 -1
  359. package/typings/esm5/datepicker/datepicker-toggle.d.ts +3 -1
  360. package/typings/esm5/datepicker/datepicker.d.ts +1 -1
  361. package/typings/esm5/datepicker/index.metadata.json +1 -1
  362. package/typings/esm5/dialog/dialog-container.d.ts +1 -1
  363. package/typings/esm5/dialog/dialog-content-directives.d.ts +2 -2
  364. package/typings/esm5/dialog/index.metadata.json +1 -1
  365. package/typings/esm5/expansion/accordion-base.d.ts +30 -0
  366. package/typings/esm5/expansion/accordion.d.ts +18 -4
  367. package/typings/esm5/expansion/expansion-panel-header.d.ts +13 -2
  368. package/typings/esm5/expansion/expansion-panel.d.ts +10 -6
  369. package/typings/esm5/expansion/index.metadata.json +1 -1
  370. package/typings/esm5/expansion/public-api.d.ts +1 -0
  371. package/typings/esm5/form-field/form-field.d.ts +4 -3
  372. package/typings/esm5/form-field/index.metadata.json +1 -1
  373. package/typings/esm5/grid-list/grid-list.d.ts +1 -1
  374. package/typings/esm5/grid-list/grid-tile.d.ts +2 -2
  375. package/typings/esm5/grid-list/index.metadata.json +1 -1
  376. package/typings/esm5/icon/icon.d.ts +1 -1
  377. package/typings/esm5/icon/index.metadata.json +1 -1
  378. package/typings/esm5/index.metadata.json +1 -1
  379. package/typings/esm5/input/autosize.d.ts +2 -1
  380. package/typings/esm5/input/index.metadata.json +1 -1
  381. package/typings/esm5/input/input.d.ts +2 -2
  382. package/typings/esm5/list/index.metadata.json +1 -1
  383. package/typings/esm5/list/list.d.ts +1 -1
  384. package/typings/esm5/list/selection-list.d.ts +2 -2
  385. package/typings/esm5/menu/index.d.ts +4 -4
  386. package/typings/esm5/menu/index.metadata.json +1 -1
  387. package/typings/esm5/menu/menu-directive.d.ts +1 -1
  388. package/typings/esm5/menu/menu-item.d.ts +1 -1
  389. package/typings/esm5/menu/menu-trigger.d.ts +1 -1
  390. package/typings/esm5/progress-bar/index.metadata.json +1 -1
  391. package/typings/esm5/progress-bar/progress-bar.d.ts +17 -3
  392. package/typings/esm5/radio/radio.d.ts +1 -1
  393. package/typings/esm5/sidenav/drawer.d.ts +2 -2
  394. package/typings/esm5/sidenav/index.metadata.json +1 -1
  395. package/typings/esm5/slide-toggle/index.metadata.json +1 -1
  396. package/typings/esm5/slide-toggle/slide-toggle.d.ts +3 -3
  397. package/typings/esm5/slider/index.metadata.json +1 -1
  398. package/typings/esm5/snack-bar/index.metadata.json +1 -1
  399. package/typings/esm5/snack-bar/snack-bar-container.d.ts +1 -1
  400. package/typings/esm5/stepper/index.metadata.json +1 -1
  401. package/typings/esm5/stepper/step-header.d.ts +2 -2
  402. package/typings/esm5/stepper/step-label.d.ts +2 -10
  403. package/typings/esm5/stepper/stepper-button.d.ts +4 -2
  404. package/typings/esm5/stepper/stepper.d.ts +4 -3
  405. package/typings/esm5/table/cell.d.ts +8 -5
  406. package/typings/esm5/table/index.metadata.json +1 -1
  407. package/typings/esm5/table/row.d.ts +6 -3
  408. package/typings/esm5/table/table.d.ts +2 -8
  409. package/typings/esm5/tabs/index.d.ts +5 -5
  410. package/typings/esm5/tabs/index.metadata.json +1 -1
  411. package/typings/esm5/tabs/ink-bar.d.ts +1 -1
  412. package/typings/esm5/tabs/tab-body.d.ts +1 -1
  413. package/typings/esm5/tabs/tab-label.d.ts +2 -10
  414. package/typings/esm5/tooltip/index.metadata.json +1 -1
  415. package/typings/esm5/tooltip/tooltip.d.ts +3 -3
  416. package/typings/esm5/tree/index.metadata.json +1 -1
  417. package/typings/esm5/tree/node.d.ts +7 -7
  418. package/typings/esm5/tree/padding.d.ts +3 -5
  419. package/typings/esm5/tree/toggle.d.ts +10 -3
  420. package/typings/esm5/tree/tree.d.ts +2 -3
  421. package/typings/expansion/accordion-base.d.ts +30 -0
  422. package/typings/expansion/accordion.d.ts +18 -4
  423. package/typings/expansion/expansion-panel-header.d.ts +13 -2
  424. package/typings/expansion/expansion-panel.d.ts +10 -6
  425. package/typings/expansion/index.metadata.json +1 -1
  426. package/typings/expansion/public-api.d.ts +1 -0
  427. package/typings/form-field/form-field.d.ts +4 -3
  428. package/typings/form-field/index.metadata.json +1 -1
  429. package/typings/grid-list/grid-list.d.ts +1 -1
  430. package/typings/grid-list/grid-tile.d.ts +2 -2
  431. package/typings/grid-list/index.metadata.json +1 -1
  432. package/typings/icon/icon.d.ts +1 -1
  433. package/typings/icon/index.metadata.json +1 -1
  434. package/typings/index.metadata.json +1 -1
  435. package/typings/input/autosize.d.ts +2 -1
  436. package/typings/input/index.metadata.json +1 -1
  437. package/typings/input/input.d.ts +2 -2
  438. package/typings/list/index.metadata.json +1 -1
  439. package/typings/list/list.d.ts +1 -1
  440. package/typings/list/selection-list.d.ts +2 -2
  441. package/typings/menu/index.d.ts +4 -4
  442. package/typings/menu/index.metadata.json +1 -1
  443. package/typings/menu/menu-directive.d.ts +1 -1
  444. package/typings/menu/menu-item.d.ts +1 -1
  445. package/typings/menu/menu-trigger.d.ts +1 -1
  446. package/typings/progress-bar/index.metadata.json +1 -1
  447. package/typings/progress-bar/progress-bar.d.ts +17 -3
  448. package/typings/radio/radio.d.ts +1 -1
  449. package/typings/sidenav/drawer.d.ts +2 -2
  450. package/typings/sidenav/index.metadata.json +1 -1
  451. package/typings/slide-toggle/index.metadata.json +1 -1
  452. package/typings/slide-toggle/slide-toggle.d.ts +3 -3
  453. package/typings/slider/index.metadata.json +1 -1
  454. package/typings/snack-bar/index.metadata.json +1 -1
  455. package/typings/snack-bar/snack-bar-container.d.ts +1 -1
  456. package/typings/stepper/index.metadata.json +1 -1
  457. package/typings/stepper/step-header.d.ts +2 -2
  458. package/typings/stepper/step-label.d.ts +2 -10
  459. package/typings/stepper/stepper-button.d.ts +4 -2
  460. package/typings/stepper/stepper.d.ts +4 -3
  461. package/typings/table/cell.d.ts +8 -5
  462. package/typings/table/index.metadata.json +1 -1
  463. package/typings/table/row.d.ts +6 -3
  464. package/typings/table/table.d.ts +2 -8
  465. package/typings/tabs/index.d.ts +5 -5
  466. package/typings/tabs/index.metadata.json +1 -1
  467. package/typings/tabs/ink-bar.d.ts +1 -1
  468. package/typings/tabs/tab-body.d.ts +1 -1
  469. package/typings/tabs/tab-label.d.ts +2 -10
  470. package/typings/tooltip/index.metadata.json +1 -1
  471. package/typings/tooltip/tooltip.d.ts +3 -3
  472. package/typings/tree/index.metadata.json +1 -1
  473. package/typings/tree/node.d.ts +7 -7
  474. package/typings/tree/padding.d.ts +3 -5
  475. package/typings/tree/toggle.d.ts +10 -3
  476. package/typings/tree/tree.d.ts +2 -3
  477. package/grid-list/typings/grid-list-measure.d.ts +0 -17
  478. package/typings/esm5/grid-list/grid-list-measure.d.ts +0 -17
  479. package/typings/grid-list/grid-list-measure.d.ts +0 -17
@@ -6,10 +6,10 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  (function (global, factory) {
9
- typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/tree'), require('@angular/material/core'), require('@angular/cdk/bidi'), require('@angular/common'), require('@angular/cdk/collections'), require('rxjs'), require('rxjs/operators')) :
10
- typeof define === 'function' && define.amd ? define('@angular/material/tree', ['exports', '@angular/core', '@angular/cdk/tree', '@angular/material/core', '@angular/cdk/bidi', '@angular/common', '@angular/cdk/collections', 'rxjs', 'rxjs/operators'], factory) :
11
- (factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.tree = {}),global.ng.core,global.ng.cdk.tree,global.ng.material.core,global.ng.cdk.bidi,global.ng.common,global.ng.cdk.collections,global.rxjs,global.rxjs.operators));
12
- }(this, (function (exports,core,tree,core$1,bidi,common,collections,rxjs,operators) { 'use strict';
9
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/cdk/tree'), require('@angular/material/core'), require('@angular/common'), require('@angular/cdk/collections'), require('rxjs'), require('rxjs/operators')) :
10
+ typeof define === 'function' && define.amd ? define('@angular/material/tree', ['exports', '@angular/core', '@angular/cdk/tree', '@angular/material/core', '@angular/common', '@angular/cdk/collections', 'rxjs', 'rxjs/operators'], factory) :
11
+ (factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.tree = {}),global.ng.core,global.ng.cdk.tree,global.ng.material.core,global.ng.common,global.ng.cdk.collections,global.rxjs,global.rxjs.operators));
12
+ }(this, (function (exports,core,tree,core$1,common,collections,rxjs,operators) { 'use strict';
13
13
 
14
14
  /*! *****************************************************************************
15
15
  Copyright (c) Microsoft Corporation. All rights reserved.
@@ -68,6 +68,8 @@ var MatTreeNodeOutlet = /** @class */ (function () {
68
68
  * @fileoverview added by tsickle
69
69
  * @suppress {checkTypes} checked by tsc
70
70
  */
71
+ // TODO(devversion): workaround for https://github.com/angular/material2/issues/12760
72
+ var /** @type {?} */ _CdkTreeNodeDef = tree.CdkTreeNodeDef;
71
73
  var /** @type {?} */ _MatTreeNodeMixinBase = core$1.mixinTabIndex(core$1.mixinDisabled(tree.CdkTreeNode));
72
74
  var /** @type {?} */ _MatNestedTreeNodeMixinBase = core$1.mixinTabIndex(core$1.mixinDisabled(tree.CdkNestedTreeNode));
73
75
  /**
@@ -115,13 +117,8 @@ var MatTreeNode = /** @class */ (function (_super) {
115
117
  */
116
118
  var MatTreeNodeDef = /** @class */ (function (_super) {
117
119
  __extends(MatTreeNodeDef, _super);
118
- // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to
119
- // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a
120
- // fixed bug.
121
- // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this
122
- // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version
123
- function MatTreeNodeDef(template) {
124
- return _super.call(this, template) || this;
120
+ function MatTreeNodeDef() {
121
+ return _super !== null && _super.apply(this, arguments) || this;
125
122
  }
126
123
  MatTreeNodeDef.decorators = [
127
124
  { type: core.Directive, args: [{
@@ -133,14 +130,11 @@ var MatTreeNodeDef = /** @class */ (function (_super) {
133
130
  },] },
134
131
  ];
135
132
  /** @nocollapse */
136
- MatTreeNodeDef.ctorParameters = function () { return [
137
- { type: core.TemplateRef, },
138
- ]; };
139
133
  MatTreeNodeDef.propDecorators = {
140
134
  "data": [{ type: core.Input, args: ['matTreeNode',] },],
141
135
  };
142
136
  return MatTreeNodeDef;
143
- }(tree.CdkTreeNodeDef));
137
+ }(_CdkTreeNodeDef));
144
138
  /**
145
139
  * Wrapper for the CdkTree nested node with Material design styles.
146
140
  * @template T
@@ -210,19 +204,16 @@ var MatNestedTreeNode = /** @class */ (function (_super) {
210
204
  * @fileoverview added by tsickle
211
205
  * @suppress {checkTypes} checked by tsc
212
206
  */
207
+ // TODO(devversion): workaround for https://github.com/angular/material2/issues/12760
208
+ var /** @type {?} */ _CdkTreeNodePadding = tree.CdkTreeNodePadding;
213
209
  /**
214
210
  * Wrapper for the CdkTree padding with Material design styles.
215
211
  * @template T
216
212
  */
217
213
  var MatTreeNodePadding = /** @class */ (function (_super) {
218
214
  __extends(MatTreeNodePadding, _super);
219
- // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to
220
- // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a
221
- // fixed bug.
222
- // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this
223
- // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version
224
- function MatTreeNodePadding(_treeNode, _tree, _renderer, _element, _dir) {
225
- return _super.call(this, _treeNode, _tree, _renderer, _element, _dir) || this;
215
+ function MatTreeNodePadding() {
216
+ return _super !== null && _super.apply(this, arguments) || this;
226
217
  }
227
218
  MatTreeNodePadding.decorators = [
228
219
  { type: core.Directive, args: [{
@@ -231,37 +222,27 @@ var MatTreeNodePadding = /** @class */ (function (_super) {
231
222
  },] },
232
223
  ];
233
224
  /** @nocollapse */
234
- MatTreeNodePadding.ctorParameters = function () { return [
235
- { type: tree.CdkTreeNode, },
236
- { type: tree.CdkTree, },
237
- { type: core.Renderer2, },
238
- { type: core.ElementRef, },
239
- { type: bidi.Directionality, decorators: [{ type: core.Optional },] },
240
- ]; };
241
225
  MatTreeNodePadding.propDecorators = {
242
226
  "level": [{ type: core.Input, args: ['matTreeNodePadding',] },],
243
227
  "indent": [{ type: core.Input, args: ['matTreeNodePaddingIndent',] },],
244
228
  };
245
229
  return MatTreeNodePadding;
246
- }(tree.CdkTreeNodePadding));
230
+ }(_CdkTreeNodePadding));
247
231
 
248
232
  /**
249
233
  * @fileoverview added by tsickle
250
234
  * @suppress {checkTypes} checked by tsc
251
235
  */
236
+ // TODO(devversion): workaround for https://github.com/angular/material2/issues/12760
237
+ var /** @type {?} */ _CdkTree = tree.CdkTree;
252
238
  /**
253
239
  * Wrapper for the CdkTable with Material design styles.
254
240
  * @template T
255
241
  */
256
242
  var MatTree = /** @class */ (function (_super) {
257
243
  __extends(MatTree, _super);
258
- // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to
259
- // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a
260
- // fixed bug.
261
- // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this
262
- // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version
263
- function MatTree(_differs, _changeDetectorRef) {
264
- return _super.call(this, _differs, _changeDetectorRef) || this;
244
+ function MatTree() {
245
+ return _super !== null && _super.apply(this, arguments) || this;
265
246
  }
266
247
  MatTree.decorators = [
267
248
  { type: core.Component, args: [{selector: 'mat-tree',
@@ -278,33 +259,26 @@ var MatTree = /** @class */ (function (_super) {
278
259
  },] },
279
260
  ];
280
261
  /** @nocollapse */
281
- MatTree.ctorParameters = function () { return [
282
- { type: core.IterableDiffers, },
283
- { type: core.ChangeDetectorRef, },
284
- ]; };
285
262
  MatTree.propDecorators = {
286
263
  "_nodeOutlet": [{ type: core.ViewChild, args: [MatTreeNodeOutlet,] },],
287
264
  };
288
265
  return MatTree;
289
- }(tree.CdkTree));
266
+ }(_CdkTree));
290
267
 
291
268
  /**
292
269
  * @fileoverview added by tsickle
293
270
  * @suppress {checkTypes} checked by tsc
294
271
  */
272
+ // TODO(devversion): workaround for https://github.com/angular/material2/issues/12760
273
+ var /** @type {?} */ _CdkTreeNodeToggle = tree.CdkTreeNodeToggle;
295
274
  /**
296
275
  * Wrapper for the CdkTree's toggle with Material design styles.
297
276
  * @template T
298
277
  */
299
278
  var MatTreeNodeToggle = /** @class */ (function (_super) {
300
279
  __extends(MatTreeNodeToggle, _super);
301
- // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to
302
- // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a
303
- // fixed bug.
304
- // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this
305
- // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version
306
- function MatTreeNodeToggle(_tree, _treeNode) {
307
- var _this = _super.call(this, _tree, _treeNode) || this;
280
+ function MatTreeNodeToggle() {
281
+ var _this = _super !== null && _super.apply(this, arguments) || this;
308
282
  _this.recursive = false;
309
283
  return _this;
310
284
  }
@@ -318,15 +292,11 @@ var MatTreeNodeToggle = /** @class */ (function (_super) {
318
292
  },] },
319
293
  ];
320
294
  /** @nocollapse */
321
- MatTreeNodeToggle.ctorParameters = function () { return [
322
- { type: tree.CdkTree, },
323
- { type: tree.CdkTreeNode, },
324
- ]; };
325
295
  MatTreeNodeToggle.propDecorators = {
326
296
  "recursive": [{ type: core.Input, args: ['matTreeNodeToggleRecursive',] },],
327
297
  };
328
298
  return MatTreeNodeToggle;
329
- }(tree.CdkTreeNodeToggle));
299
+ }(_CdkTreeNodeToggle));
330
300
 
331
301
  /**
332
302
  * @fileoverview added by tsickle
@@ -697,14 +667,18 @@ MatTreeNestedDataSource = /** @class */ (function (_super) {
697
667
  return MatTreeNestedDataSource;
698
668
  }(collections.DataSource));
699
669
 
670
+ exports._CdkTreeNodeDef = _CdkTreeNodeDef;
700
671
  exports._MatTreeNodeMixinBase = _MatTreeNodeMixinBase;
701
672
  exports._MatNestedTreeNodeMixinBase = _MatNestedTreeNodeMixinBase;
702
673
  exports.MatTreeNode = MatTreeNode;
703
674
  exports.MatTreeNodeDef = MatTreeNodeDef;
704
675
  exports.MatNestedTreeNode = MatNestedTreeNode;
676
+ exports._CdkTreeNodePadding = _CdkTreeNodePadding;
705
677
  exports.MatTreeNodePadding = MatTreeNodePadding;
678
+ exports._CdkTree = _CdkTree;
706
679
  exports.MatTree = MatTree;
707
680
  exports.MatTreeModule = MatTreeModule;
681
+ exports._CdkTreeNodeToggle = _CdkTreeNodeToggle;
708
682
  exports.MatTreeNodeToggle = MatTreeNodeToggle;
709
683
  exports.MatTreeNodeOutlet = MatTreeNodeOutlet;
710
684
  exports.MatTreeFlattener = MatTreeFlattener;
@@ -1 +1 @@
1
- {"version":3,"file":"material-tree.umd.js","sources":["../../src/lib/tree/data-source/nested-data-source.ts","../../src/lib/tree/data-source/flat-data-source.ts","../../src/lib/tree/tree-module.ts","../../src/lib/tree/toggle.ts","../../src/lib/tree/tree.ts","../../src/lib/tree/padding.ts","../../src/lib/tree/node.ts","../../src/lib/tree/outlet.ts","../../node_modules/tslib/tslib.es6.js"],"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 {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n\n/**\n * Data source for nested tree.\n *\n * The data source for nested tree doesn't have to consider node flattener, or the way to expand\n * or collapse. The expansion/collapsion will be handled by TreeControl and each non-leaf node.\n */\nexport class MatTreeNestedDataSource<T> extends DataSource<T> {\n _data = new BehaviorSubject<T[]>([]);\n\n /**\n * Data for the nested tree\n */\n get data() { return this._data.value; }\n set data(value: T[]) { this._data.next(value); }\n\n connect(collectionViewer: CollectionViewer): Observable<T[]> {\n return merge(...[collectionViewer.viewChange, this._data])\n .pipe(map(() => {\n return this.data;\n }));\n }\n\n disconnect() {\n // no op\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\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {FlatTreeControl, TreeControl} from '@angular/cdk/tree';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\n\n/**\n * Tree flattener to convert a normal type of node to node with children & level information.\n * Transform nested nodes of type `T` to flattened nodes of type `F`.\n *\n * For example, the input data of type `T` is nested, and contains its children data:\n * SomeNode: {\n * key: 'Fruits',\n * children: [\n * NodeOne: {\n * key: 'Apple',\n * },\n * NodeTwo: {\n * key: 'Pear',\n * }\n * ]\n * }\n * After flattener flatten the tree, the structure will become\n * SomeNode: {\n * key: 'Fruits',\n * expandable: true,\n * level: 1\n * },\n * NodeOne: {\n * key: 'Apple',\n * expandable: false,\n * level: 2\n * },\n * NodeTwo: {\n * key: 'Pear',\n * expandable: false,\n * level: 2\n * }\n * and the output flattened type is `F` with additional information.\n */\nexport class MatTreeFlattener<T, F> {\n\n constructor(public transformFunction: (node: T, level: number) => F,\n public getLevel: (node: F) => number,\n public isExpandable: (node: F) => boolean,\n public getChildren: (node: T) => Observable<T[]> | T[]) {}\n\n _flattenNode(node: T, level: number,\n resultNodes: F[], parentMap: boolean[]): F[] {\n const flatNode = this.transformFunction(node, level);\n resultNodes.push(flatNode);\n\n if (this.isExpandable(flatNode)) {\n const childrenNodes = this.getChildren(node);\n if (Array.isArray(childrenNodes)) {\n this._flattenChildren(childrenNodes, level, resultNodes, parentMap);\n } else {\n childrenNodes.pipe(take(1)).subscribe(children => {\n this._flattenChildren(children, level, resultNodes, parentMap);\n });\n }\n }\n return resultNodes;\n }\n\n _flattenChildren(children: T[], level: number,\n resultNodes: F[], parentMap: boolean[]): void {\n children.forEach((child, index) => {\n let childParentMap: boolean[] = parentMap.slice();\n childParentMap.push(index != children.length - 1);\n this._flattenNode(child, level + 1, resultNodes, childParentMap);\n });\n }\n\n /**\n * Flatten a list of node type T to flattened version of node F.\n * Please note that type T may be nested, and the length of `structuredData` may be different\n * from that of returned list `F[]`.\n */\n flattenNodes(structuredData: T[]): F[] {\n let resultNodes: F[] = [];\n structuredData.forEach(node => this._flattenNode(node, 0, resultNodes, []));\n return resultNodes;\n }\n\n /**\n * Expand flattened node with current expansion status.\n * The returned list may have different length.\n */\n expandFlattenedNodes(nodes: F[], treeControl: TreeControl<F>): F[] {\n let results: F[] = [];\n let currentExpand: boolean[] = [];\n currentExpand[0] = true;\n\n nodes.forEach(node => {\n let expand = true;\n for (let i = 0; i <= this.getLevel(node); i++) {\n expand = expand && currentExpand[i];\n }\n if (expand) {\n results.push(node);\n }\n if (this.isExpandable(node)) {\n currentExpand[this.getLevel(node) + 1] = treeControl.isExpanded(node);\n }\n });\n return results;\n }\n}\n\n\n/**\n * Data source for flat tree.\n * The data source need to handle expansion/collapsion of the tree node and change the data feed\n * to `MatTree`.\n * The nested tree nodes of type `T` are flattened through `MatTreeFlattener`, and converted\n * to type `F` for `MatTree` to consume.\n */\nexport class MatTreeFlatDataSource<T, F> extends DataSource<F> {\n _flattenedData = new BehaviorSubject<F[]>([]);\n\n _expandedData = new BehaviorSubject<F[]>([]);\n\n _data: BehaviorSubject<T[]>;\n get data() { return this._data.value; }\n set data(value: T[]) {\n this._data.next(value);\n this._flattenedData.next(this.treeFlattener.flattenNodes(this.data));\n this.treeControl.dataNodes = this._flattenedData.value;\n }\n\n constructor(private treeControl: FlatTreeControl<F>,\n private treeFlattener: MatTreeFlattener<T, F>,\n initialData: T[] = []) {\n super();\n this._data = new BehaviorSubject<T[]>(initialData);\n }\n\n connect(collectionViewer: CollectionViewer): Observable<F[]> {\n const changes = [\n collectionViewer.viewChange,\n this.treeControl.expansionModel.onChange!,\n this._flattenedData\n ];\n return merge(...changes).pipe(map(() => {\n this._expandedData.next(\n this.treeFlattener.expandFlattenedNodes(this._flattenedData.value, this.treeControl));\n return this._expandedData.value;\n }));\n }\n\n disconnect() {\n // no op\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\nimport {NgModule} from '@angular/core';\n\nimport {CdkTreeModule} from '@angular/cdk/tree';\nimport {CommonModule} from '@angular/common';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatNestedTreeNode, MatTreeNodeDef, MatTreeNode} from './node';\nimport {MatTree} from './tree';\nimport {MatTreeNodeToggle} from './toggle';\nimport {MatTreeNodeOutlet} from './outlet';\nimport {MatTreeNodePadding} from './padding';\n\nconst MAT_TREE_DIRECTIVES = [\n MatNestedTreeNode,\n MatTreeNodeDef,\n MatTreeNodePadding,\n MatTreeNodeToggle,\n MatTree,\n MatTreeNode,\n MatTreeNodeOutlet\n];\n\n@NgModule({\n imports: [CdkTreeModule, CommonModule, MatCommonModule],\n exports: MAT_TREE_DIRECTIVES,\n declarations: MAT_TREE_DIRECTIVES,\n})\nexport class MatTreeModule {}\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\nimport {Directive, Input} from '@angular/core';\nimport {CdkTreeNodeToggle, CdkTree, CdkTreeNode} from '@angular/cdk/tree';\n\n/**\n * Wrapper for the CdkTree's toggle with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeToggle]',\n host: {\n '(click)': '_toggle($event)',\n },\n providers: [{provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle}]\n})\nexport class MatTreeNodeToggle<T> extends CdkTreeNodeToggle<T> {\n @Input('matTreeNodeToggleRecursive') recursive: boolean = false;\n\n // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to\n // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a\n // fixed bug.\n // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this\n // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version\n constructor(_tree: CdkTree<T>, _treeNode: CdkTreeNode<T>) {\n super(_tree, _treeNode);\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\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ViewChild,\n ViewEncapsulation,\n IterableDiffers,\n} from '@angular/core';\nimport {CdkTree} from '@angular/cdk/tree';\nimport {MatTreeNodeOutlet} from './outlet';\n\n/**\n * Wrapper for the CdkTable with Material design styles.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-tree',\n exportAs: 'matTree',\n template: `<ng-container matTreeNodeOutlet></ng-container>`,\n host: {\n 'class': 'mat-tree',\n 'role': 'tree',\n },\n styleUrls: ['tree.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{provide: CdkTree, useExisting: MatTree}]\n})\nexport class MatTree<T> extends CdkTree<T> {\n // Outlets within the tree's template where the dataNodes will be inserted.\n @ViewChild(MatTreeNodeOutlet) _nodeOutlet: MatTreeNodeOutlet;\n\n // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to\n // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a\n // fixed bug.\n // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this\n // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version\n constructor(_differs: IterableDiffers, _changeDetectorRef: ChangeDetectorRef) {\n super(_differs, _changeDetectorRef);\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 */\nimport {CdkTreeNodePadding, CdkTreeNode, CdkTree} from '@angular/cdk/tree';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {Directive, Input, Optional, Renderer2, ElementRef} from '@angular/core';\n\n\n/**\n * Wrapper for the CdkTree padding with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodePadding]',\n providers: [{provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding}]\n})\nexport class MatTreeNodePadding<T> extends CdkTreeNodePadding<T> {\n\n /** The level of depth of the tree node. The padding will be `level * indent` pixels. */\n @Input('matTreeNodePadding') level: number;\n\n /** The indent for each level. Default number 40px from material design menu sub-menu spec. */\n @Input('matTreeNodePaddingIndent') indent: number;\n\n // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to\n // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a\n // fixed bug.\n // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this\n // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version\n constructor(_treeNode: CdkTreeNode<T>,\n _tree: CdkTree<T>,\n _renderer: Renderer2,\n _element: ElementRef,\n @Optional() _dir: Directionality) {\n super(_treeNode, _tree, _renderer, _element, _dir);\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\nimport {\n CdkNestedTreeNode,\n CdkTree,\n CdkTreeNode,\n CdkTreeNodeDef,\n} from '@angular/cdk/tree';\nimport {\n AfterContentInit,\n Attribute,\n ContentChildren,\n Directive,\n ElementRef,\n Input,\n IterableDiffers,\n OnDestroy,\n QueryList,\n TemplateRef,\n} from '@angular/core';\nimport {CanDisable, HasTabIndex, mixinDisabled, mixinTabIndex} from '@angular/material/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n\nexport const _MatTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkTreeNode));\nexport const _MatNestedTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkNestedTreeNode));\n\n/**\n * Wrapper for the CdkTree node with Material design styles.\n */\n@Directive({\n selector: 'mat-tree-node',\n exportAs: 'matTreeNode',\n inputs: ['disabled', 'tabIndex'],\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.aria-level]': 'role === \"treeitem\" ? level : null',\n '[attr.role]': 'role',\n 'class': 'mat-tree-node'\n },\n providers: [{provide: CdkTreeNode, useExisting: MatTreeNode}]\n})\nexport class MatTreeNode<T> extends _MatTreeNodeMixinBase<T>\n implements CanDisable, HasTabIndex {\n @Input() role: 'treeitem' | 'group' = 'treeitem';\n\n constructor(protected _elementRef: ElementRef,\n protected _tree: CdkTree<T>,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n}\n\n/**\n * Wrapper for the CdkTree node definition with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeDef]',\n inputs: [\n 'when: matTreeNodeDefWhen'\n ],\n providers: [{provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef}]\n})\nexport class MatTreeNodeDef<T> extends CdkTreeNodeDef<T> {\n @Input('matTreeNode') data: T;\n\n // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to\n // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a\n // fixed bug.\n // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this\n // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version\n constructor(template: TemplateRef<any>) {\n super(template);\n }\n}\n\n/**\n * Wrapper for the CdkTree nested node with Material design styles.\n */\n@Directive({\n selector: 'mat-nested-tree-node',\n exportAs: 'matNestedTreeNode',\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.role]': 'role',\n 'class': 'mat-nested-tree-node',\n },\n inputs: ['disabled', 'tabIndex'],\n providers: [\n {provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode},\n {provide: CdkTreeNode, useExisting: MatNestedTreeNode}\n ]\n})\nexport class MatNestedTreeNode<T> extends _MatNestedTreeNodeMixinBase<T>\n implements AfterContentInit, CanDisable, HasTabIndex, OnDestroy {\n\n @Input('matNestedTreeNode') node: T;\n\n @ContentChildren(MatTreeNodeOutlet) nodeOutlet: QueryList<MatTreeNodeOutlet>;\n\n constructor(protected _elementRef: ElementRef,\n protected _tree: CdkTree<T>,\n protected _differs: IterableDiffers,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree, _differs);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/23091\n // In aot mode, the lifecycle hooks from parent class are not called.\n // TODO(tinayuangao): Remove when the angular issue #23091 is fixed\n ngAfterContentInit() {\n super.ngAfterContentInit();\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\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 */\nimport {CdkTreeNodeOutlet} from '@angular/cdk/tree';\nimport {\n Directive,\n ViewContainerRef,\n} from '@angular/core';\n\n/**\n * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes\n * inside the outlet.\n */\n@Directive({\n selector: '[matTreeNodeOutlet]'\n})\nexport class MatTreeNodeOutlet implements CdkTreeNodeOutlet {\n constructor(public viewContainer: ViewContainerRef) {}\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\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; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\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);\r\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); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n"],"names":["DataSource","merge","map","BehaviorSubject","tslib_1.__extends","take","CdkTreeModule","CommonModule","MatCommonModule","NgModule","CdkTreeNodeToggle","Input","CdkTreeNode","CdkTree","Directive","ChangeDetectionStrategy","ViewEncapsulation","Component","CdkTreeNodePadding","Directionality","Optional","ElementRef","Renderer2","ContentChildren","Attribute","IterableDiffers","CdkNestedTreeNode","CdkTreeNodeDef","TemplateRef","mixinTabIndex","mixinDisabled","ViewContainerRef"],"mappings":"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"}
1
+ {"version":3,"file":"material-tree.umd.js","sources":["../../src/lib/tree/data-source/nested-data-source.ts","../../src/lib/tree/data-source/flat-data-source.ts","../../src/lib/tree/tree-module.ts","../../src/lib/tree/toggle.ts","../../src/lib/tree/tree.ts","../../src/lib/tree/padding.ts","../../src/lib/tree/node.ts","../../src/lib/tree/outlet.ts","../../node_modules/tslib/tslib.es6.js"],"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 {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n\n/**\n * Data source for nested tree.\n *\n * The data source for nested tree doesn't have to consider node flattener, or the way to expand\n * or collapse. The expansion/collapsion will be handled by TreeControl and each non-leaf node.\n */\nexport class MatTreeNestedDataSource<T> extends DataSource<T> {\n _data = new BehaviorSubject<T[]>([]);\n\n /**\n * Data for the nested tree\n */\n get data() { return this._data.value; }\n set data(value: T[]) { this._data.next(value); }\n\n connect(collectionViewer: CollectionViewer): Observable<T[]> {\n return merge(...[collectionViewer.viewChange, this._data])\n .pipe(map(() => {\n return this.data;\n }));\n }\n\n disconnect() {\n // no op\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\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {FlatTreeControl, TreeControl} from '@angular/cdk/tree';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\n\n/**\n * Tree flattener to convert a normal type of node to node with children & level information.\n * Transform nested nodes of type `T` to flattened nodes of type `F`.\n *\n * For example, the input data of type `T` is nested, and contains its children data:\n * SomeNode: {\n * key: 'Fruits',\n * children: [\n * NodeOne: {\n * key: 'Apple',\n * },\n * NodeTwo: {\n * key: 'Pear',\n * }\n * ]\n * }\n * After flattener flatten the tree, the structure will become\n * SomeNode: {\n * key: 'Fruits',\n * expandable: true,\n * level: 1\n * },\n * NodeOne: {\n * key: 'Apple',\n * expandable: false,\n * level: 2\n * },\n * NodeTwo: {\n * key: 'Pear',\n * expandable: false,\n * level: 2\n * }\n * and the output flattened type is `F` with additional information.\n */\nexport class MatTreeFlattener<T, F> {\n\n constructor(public transformFunction: (node: T, level: number) => F,\n public getLevel: (node: F) => number,\n public isExpandable: (node: F) => boolean,\n public getChildren: (node: T) => Observable<T[]> | T[]) {}\n\n _flattenNode(node: T, level: number,\n resultNodes: F[], parentMap: boolean[]): F[] {\n const flatNode = this.transformFunction(node, level);\n resultNodes.push(flatNode);\n\n if (this.isExpandable(flatNode)) {\n const childrenNodes = this.getChildren(node);\n if (Array.isArray(childrenNodes)) {\n this._flattenChildren(childrenNodes, level, resultNodes, parentMap);\n } else {\n childrenNodes.pipe(take(1)).subscribe(children => {\n this._flattenChildren(children, level, resultNodes, parentMap);\n });\n }\n }\n return resultNodes;\n }\n\n _flattenChildren(children: T[], level: number,\n resultNodes: F[], parentMap: boolean[]): void {\n children.forEach((child, index) => {\n let childParentMap: boolean[] = parentMap.slice();\n childParentMap.push(index != children.length - 1);\n this._flattenNode(child, level + 1, resultNodes, childParentMap);\n });\n }\n\n /**\n * Flatten a list of node type T to flattened version of node F.\n * Please note that type T may be nested, and the length of `structuredData` may be different\n * from that of returned list `F[]`.\n */\n flattenNodes(structuredData: T[]): F[] {\n let resultNodes: F[] = [];\n structuredData.forEach(node => this._flattenNode(node, 0, resultNodes, []));\n return resultNodes;\n }\n\n /**\n * Expand flattened node with current expansion status.\n * The returned list may have different length.\n */\n expandFlattenedNodes(nodes: F[], treeControl: TreeControl<F>): F[] {\n let results: F[] = [];\n let currentExpand: boolean[] = [];\n currentExpand[0] = true;\n\n nodes.forEach(node => {\n let expand = true;\n for (let i = 0; i <= this.getLevel(node); i++) {\n expand = expand && currentExpand[i];\n }\n if (expand) {\n results.push(node);\n }\n if (this.isExpandable(node)) {\n currentExpand[this.getLevel(node) + 1] = treeControl.isExpanded(node);\n }\n });\n return results;\n }\n}\n\n\n/**\n * Data source for flat tree.\n * The data source need to handle expansion/collapsion of the tree node and change the data feed\n * to `MatTree`.\n * The nested tree nodes of type `T` are flattened through `MatTreeFlattener`, and converted\n * to type `F` for `MatTree` to consume.\n */\nexport class MatTreeFlatDataSource<T, F> extends DataSource<F> {\n _flattenedData = new BehaviorSubject<F[]>([]);\n\n _expandedData = new BehaviorSubject<F[]>([]);\n\n _data: BehaviorSubject<T[]>;\n get data() { return this._data.value; }\n set data(value: T[]) {\n this._data.next(value);\n this._flattenedData.next(this.treeFlattener.flattenNodes(this.data));\n this.treeControl.dataNodes = this._flattenedData.value;\n }\n\n constructor(private treeControl: FlatTreeControl<F>,\n private treeFlattener: MatTreeFlattener<T, F>,\n initialData: T[] = []) {\n super();\n this._data = new BehaviorSubject<T[]>(initialData);\n }\n\n connect(collectionViewer: CollectionViewer): Observable<F[]> {\n const changes = [\n collectionViewer.viewChange,\n this.treeControl.expansionModel.onChange!,\n this._flattenedData\n ];\n return merge(...changes).pipe(map(() => {\n this._expandedData.next(\n this.treeFlattener.expandFlattenedNodes(this._flattenedData.value, this.treeControl));\n return this._expandedData.value;\n }));\n }\n\n disconnect() {\n // no op\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\nimport {NgModule} from '@angular/core';\n\nimport {CdkTreeModule} from '@angular/cdk/tree';\nimport {CommonModule} from '@angular/common';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatNestedTreeNode, MatTreeNodeDef, MatTreeNode} from './node';\nimport {MatTree} from './tree';\nimport {MatTreeNodeToggle} from './toggle';\nimport {MatTreeNodeOutlet} from './outlet';\nimport {MatTreeNodePadding} from './padding';\n\nconst MAT_TREE_DIRECTIVES = [\n MatNestedTreeNode,\n MatTreeNodeDef,\n MatTreeNodePadding,\n MatTreeNodeToggle,\n MatTree,\n MatTreeNode,\n MatTreeNodeOutlet\n];\n\n@NgModule({\n imports: [CdkTreeModule, CommonModule, MatCommonModule],\n exports: MAT_TREE_DIRECTIVES,\n declarations: MAT_TREE_DIRECTIVES,\n})\nexport class MatTreeModule {}\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\nimport {CdkTreeNodeToggle} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodeToggle = CdkTreeNodeToggle;\n\n/**\n * Wrapper for the CdkTree's toggle with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeToggle]',\n host: {\n '(click)': '_toggle($event)',\n },\n providers: [{provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle}]\n})\nexport class MatTreeNodeToggle<T> extends _CdkTreeNodeToggle<T> {\n @Input('matTreeNodeToggleRecursive') recursive: boolean = false;\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\nimport {CdkTree} from '@angular/cdk/tree';\nimport {ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTree = CdkTree;\n\n/**\n * Wrapper for the CdkTable with Material design styles.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-tree',\n exportAs: 'matTree',\n template: `<ng-container matTreeNodeOutlet></ng-container>`,\n host: {\n 'class': 'mat-tree',\n 'role': 'tree',\n },\n styleUrls: ['tree.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{provide: CdkTree, useExisting: MatTree}]\n})\nexport class MatTree<T> extends _CdkTree<T> {\n // Outlets within the tree's template where the dataNodes will be inserted.\n @ViewChild(MatTreeNodeOutlet) _nodeOutlet: MatTreeNodeOutlet;\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 */\nimport {CdkTreeNodePadding} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodePadding = CdkTreeNodePadding;\n\n/**\n * Wrapper for the CdkTree padding with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodePadding]',\n providers: [{provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding}]\n})\nexport class MatTreeNodePadding<T> extends _CdkTreeNodePadding<T> {\n\n /** The level of depth of the tree node. The padding will be `level * indent` pixels. */\n @Input('matTreeNodePadding') level: number;\n\n /** The indent for each level. Default number 40px from material design menu sub-menu spec. */\n @Input('matTreeNodePaddingIndent') indent: number;\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\nimport {CdkNestedTreeNode, CdkTree, CdkTreeNode, CdkTreeNodeDef} from '@angular/cdk/tree';\nimport {\n AfterContentInit,\n Attribute,\n ContentChildren,\n Directive,\n ElementRef,\n Input,\n IterableDiffers,\n OnDestroy,\n QueryList,\n} from '@angular/core';\nimport {CanDisable, HasTabIndex, mixinDisabled, mixinTabIndex} from '@angular/material/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodeDef = CdkTreeNodeDef;\n\nexport const _MatTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkTreeNode));\nexport const _MatNestedTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkNestedTreeNode));\n\n/**\n * Wrapper for the CdkTree node with Material design styles.\n */\n@Directive({\n selector: 'mat-tree-node',\n exportAs: 'matTreeNode',\n inputs: ['disabled', 'tabIndex'],\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.aria-level]': 'role === \"treeitem\" ? level : null',\n '[attr.role]': 'role',\n 'class': 'mat-tree-node'\n },\n providers: [{provide: CdkTreeNode, useExisting: MatTreeNode}]\n})\nexport class MatTreeNode<T> extends _MatTreeNodeMixinBase<T>\n implements CanDisable, HasTabIndex {\n @Input() role: 'treeitem' | 'group' = 'treeitem';\n\n constructor(protected _elementRef: ElementRef<HTMLElement>,\n protected _tree: CdkTree<T>,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n}\n\n/**\n * Wrapper for the CdkTree node definition with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeDef]',\n inputs: [\n 'when: matTreeNodeDefWhen'\n ],\n providers: [{provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef}]\n})\nexport class MatTreeNodeDef<T> extends _CdkTreeNodeDef<T> {\n @Input('matTreeNode') data: T;\n}\n\n/**\n * Wrapper for the CdkTree nested node with Material design styles.\n */\n@Directive({\n selector: 'mat-nested-tree-node',\n exportAs: 'matNestedTreeNode',\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.role]': 'role',\n 'class': 'mat-nested-tree-node',\n },\n inputs: ['disabled', 'tabIndex'],\n providers: [\n {provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode},\n {provide: CdkTreeNode, useExisting: MatNestedTreeNode}\n ]\n})\nexport class MatNestedTreeNode<T> extends _MatNestedTreeNodeMixinBase<T>\n implements AfterContentInit, CanDisable, HasTabIndex, OnDestroy {\n\n @Input('matNestedTreeNode') node: T;\n\n @ContentChildren(MatTreeNodeOutlet) nodeOutlet: QueryList<MatTreeNodeOutlet>;\n\n constructor(protected _elementRef: ElementRef<HTMLElement>,\n protected _tree: CdkTree<T>,\n protected _differs: IterableDiffers,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree, _differs);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/23091\n // In aot mode, the lifecycle hooks from parent class are not called.\n // TODO(tinayuangao): Remove when the angular issue #23091 is fixed\n ngAfterContentInit() {\n super.ngAfterContentInit();\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\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 */\nimport {CdkTreeNodeOutlet} from '@angular/cdk/tree';\nimport {\n Directive,\n ViewContainerRef,\n} from '@angular/core';\n\n/**\n * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes\n * inside the outlet.\n */\n@Directive({\n selector: '[matTreeNodeOutlet]'\n})\nexport class MatTreeNodeOutlet implements CdkTreeNodeOutlet {\n constructor(public viewContainer: ViewContainerRef) {}\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\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; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\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);\r\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); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n"],"names":["DataSource","merge","map","BehaviorSubject","tslib_1.__extends","take","CdkTreeModule","CommonModule","MatCommonModule","NgModule","Input","CdkTreeNodeToggle","Directive","CdkTree","ChangeDetectionStrategy","ViewEncapsulation","Component","CdkTreeNodePadding","ContentChildren","Attribute","IterableDiffers","ElementRef","CdkTreeNode","CdkNestedTreeNode","CdkTreeNodeDef","mixinTabIndex","mixinDisabled","ViewContainerRef"],"mappings":"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"}
@@ -5,5 +5,5 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/tree"),require("@angular/material/core"),require("@angular/cdk/bidi"),require("@angular/common"),require("@angular/cdk/collections"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@angular/material/tree",["exports","@angular/core","@angular/cdk/tree","@angular/material/core","@angular/cdk/bidi","@angular/common","@angular/cdk/collections","rxjs","rxjs/operators"],t):t((e.ng=e.ng||{},e.ng.material=e.ng.material||{},e.ng.material.tree={}),e.ng.core,e.ng.cdk.tree,e.ng.material.core,e.ng.cdk.bidi,e.ng.common,e.ng.cdk.collections,e.rxjs,e.rxjs.operators)}(this,function(e,t,r,n,o,a,i,d,s){"use strict";function c(e,t){function r(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var u=function(e,t){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},l=function(){function e(e){this.viewContainer=e}return e.decorators=[{type:t.Directive,args:[{selector:"[matTreeNodeOutlet]"}]}],e.ctorParameters=function(){return[{type:t.ViewContainerRef}]},e}(),p=n.mixinTabIndex(n.mixinDisabled(r.CdkTreeNode)),f=n.mixinTabIndex(n.mixinDisabled(r.CdkNestedTreeNode)),g=function(e){function n(t,r,n){var o=e.call(this,t,r)||this;return o._elementRef=t,o._tree=r,o.role="treeitem",o.tabIndex=Number(n)||0,o}return c(n,e),n.decorators=[{type:t.Directive,args:[{selector:"mat-tree-node",exportAs:"matTreeNode",inputs:["disabled","tabIndex"],host:{"[attr.aria-expanded]":"isExpanded","[attr.aria-level]":'role === "treeitem" ? level : null',"[attr.role]":"role",class:"mat-tree-node"},providers:[{provide:r.CdkTreeNode,useExisting:n}]}]}],n.ctorParameters=function(){return[{type:t.ElementRef},{type:r.CdkTree},{type:void 0,decorators:[{type:t.Attribute,args:["tabindex"]}]}]},n.propDecorators={role:[{type:t.Input}]},n}(p),h=function(e){function n(t){return e.call(this,t)||this}return c(n,e),n.decorators=[{type:t.Directive,args:[{selector:"[matTreeNodeDef]",inputs:["when: matTreeNodeDefWhen"],providers:[{provide:r.CdkTreeNodeDef,useExisting:n}]}]}],n.ctorParameters=function(){return[{type:t.TemplateRef}]},n.propDecorators={data:[{type:t.Input,args:["matTreeNode"]}]},n}(r.CdkTreeNodeDef),m=function(e){function n(t,r,n,o){var a=e.call(this,t,r,n)||this;return a._elementRef=t,a._tree=r,a._differs=n,a.tabIndex=Number(o)||0,a}return c(n,e),n.prototype.ngAfterContentInit=function(){e.prototype.ngAfterContentInit.call(this)},n.prototype.ngOnDestroy=function(){e.prototype.ngOnDestroy.call(this)},n.decorators=[{type:t.Directive,args:[{selector:"mat-nested-tree-node",exportAs:"matNestedTreeNode",host:{"[attr.aria-expanded]":"isExpanded","[attr.role]":"role",class:"mat-nested-tree-node"},inputs:["disabled","tabIndex"],providers:[{provide:r.CdkNestedTreeNode,useExisting:n},{provide:r.CdkTreeNode,useExisting:n}]}]}],n.ctorParameters=function(){return[{type:t.ElementRef},{type:r.CdkTree},{type:t.IterableDiffers},{type:void 0,decorators:[{type:t.Attribute,args:["tabindex"]}]}]},n.propDecorators={node:[{type:t.Input,args:["matNestedTreeNode"]}],nodeOutlet:[{type:t.ContentChildren,args:[l]}]},n}(f),y=function(e){function n(t,r,n,o,a){return e.call(this,t,r,n,o,a)||this}return c(n,e),n.decorators=[{type:t.Directive,args:[{selector:"[matTreeNodePadding]",providers:[{provide:r.CdkTreeNodePadding,useExisting:n}]}]}],n.ctorParameters=function(){return[{type:r.CdkTreeNode},{type:r.CdkTree},{type:t.Renderer2},{type:t.ElementRef},{type:o.Directionality,decorators:[{type:t.Optional}]}]},n.propDecorators={level:[{type:t.Input,args:["matTreeNodePadding"]}],indent:[{type:t.Input,args:["matTreeNodePaddingIndent"]}]},n}(r.CdkTreeNodePadding),v=function(e){function n(t,r){return e.call(this,t,r)||this}return c(n,e),n.decorators=[{type:t.Component,args:[{selector:"mat-tree",exportAs:"matTree",template:"<ng-container matTreeNodeOutlet></ng-container>",host:{class:"mat-tree",role:"tree"},styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;min-height:48px;flex:1;overflow:hidden;word-wrap:break-word}.mat-nested-tree-ndoe{border-bottom-width:0}"],encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[{provide:r.CdkTree,useExisting:n}]}]}],n.ctorParameters=function(){return[{type:t.IterableDiffers},{type:t.ChangeDetectorRef}]},n.propDecorators={_nodeOutlet:[{type:t.ViewChild,args:[l]}]},n}(r.CdkTree),x=function(e){function n(t,r){var n=e.call(this,t,r)||this;return n.recursive=!1,n}return c(n,e),n.decorators=[{type:t.Directive,args:[{selector:"[matTreeNodeToggle]",host:{"(click)":"_toggle($event)"},providers:[{provide:r.CdkTreeNodeToggle,useExisting:n}]}]}],n.ctorParameters=function(){return[{type:r.CdkTree},{type:r.CdkTreeNode}]},n.propDecorators={recursive:[{type:t.Input,args:["matTreeNodeToggleRecursive"]}]},n}(r.CdkTreeNodeToggle),T=[m,h,y,x,v,g,l],N=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[r.CdkTreeModule,a.CommonModule,n.MatCommonModule],exports:T,declarations:T}]}],e}(),b=function(){function e(e,t,r,n){this.transformFunction=e,this.getLevel=t,this.isExpandable=r,this.getChildren=n}return e.prototype._flattenNode=function(e,t,r,n){var o=this,a=this.transformFunction(e,t);if(r.push(a),this.isExpandable(a)){var i=this.getChildren(e);Array.isArray(i)?this._flattenChildren(i,t,r,n):i.pipe(s.take(1)).subscribe(function(e){o._flattenChildren(e,t,r,n)})}return r},e.prototype._flattenChildren=function(e,t,r,n){var o=this;e.forEach(function(a,i){var d=n.slice();d.push(i!=e.length-1),o._flattenNode(a,t+1,r,d)})},e.prototype.flattenNodes=function(e){var t=this,r=[];return e.forEach(function(e){return t._flattenNode(e,0,r,[])}),r},e.prototype.expandFlattenedNodes=function(e,t){var r=this,n=[],o=[];return o[0]=!0,e.forEach(function(e){for(var a=!0,i=0;i<=r.getLevel(e);i++)a=a&&o[i];a&&n.push(e),r.isExpandable(e)&&(o[r.getLevel(e)+1]=t.isExpanded(e))}),n},e}(),C=function(e){function t(t,r,n){void 0===n&&(n=[]);var o=e.call(this)||this;return o.treeControl=t,o.treeFlattener=r,o._flattenedData=new d.BehaviorSubject([]),o._expandedData=new d.BehaviorSubject([]),o._data=new d.BehaviorSubject(n),o}return c(t,e),Object.defineProperty(t.prototype,"data",{get:function(){return this._data.value},set:function(e){this._data.next(e),this._flattenedData.next(this.treeFlattener.flattenNodes(this.data)),this.treeControl.dataNodes=this._flattenedData.value},enumerable:!0,configurable:!0}),t.prototype.connect=function(e){var t=this,r=[e.viewChange,this.treeControl.expansionModel.onChange,this._flattenedData];return d.merge.apply(void 0,r).pipe(s.map(function(){return t._expandedData.next(t.treeFlattener.expandFlattenedNodes(t._flattenedData.value,t.treeControl)),t._expandedData.value}))},t.prototype.disconnect=function(){},t}(i.DataSource),_=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._data=new d.BehaviorSubject([]),t}return c(t,e),Object.defineProperty(t.prototype,"data",{get:function(){return this._data.value},set:function(e){this._data.next(e)},enumerable:!0,configurable:!0}),t.prototype.connect=function(e){var t=this;return d.merge.apply(void 0,[e.viewChange,this._data]).pipe(s.map(function(){return t.data}))},t.prototype.disconnect=function(){},t}(i.DataSource);e._MatTreeNodeMixinBase=p,e._MatNestedTreeNodeMixinBase=f,e.MatTreeNode=g,e.MatTreeNodeDef=h,e.MatNestedTreeNode=m,e.MatTreeNodePadding=y,e.MatTree=v,e.MatTreeModule=N,e.MatTreeNodeToggle=x,e.MatTreeNodeOutlet=l,e.MatTreeFlattener=b,e.MatTreeFlatDataSource=C,e.MatTreeNestedDataSource=_,Object.defineProperty(e,"__esModule",{value:!0})});
8
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/tree"),require("@angular/material/core"),require("@angular/common"),require("@angular/cdk/collections"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@angular/material/tree",["exports","@angular/core","@angular/cdk/tree","@angular/material/core","@angular/common","@angular/cdk/collections","rxjs","rxjs/operators"],t):t((e.ng=e.ng||{},e.ng.material=e.ng.material||{},e.ng.material.tree={}),e.ng.core,e.ng.cdk.tree,e.ng.material.core,e.ng.common,e.ng.cdk.collections,e.rxjs,e.rxjs.operators)}(this,function(e,t,r,n,o,a,i,d){"use strict";function s(e,t){function r(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var u=function(e,t){return(u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)},l=function(){function e(e){this.viewContainer=e}return e.decorators=[{type:t.Directive,args:[{selector:"[matTreeNodeOutlet]"}]}],e.ctorParameters=function(){return[{type:t.ViewContainerRef}]},e}(),c=r.CdkTreeNodeDef,p=n.mixinTabIndex(n.mixinDisabled(r.CdkTreeNode)),f=n.mixinTabIndex(n.mixinDisabled(r.CdkNestedTreeNode)),g=function(e){function n(t,r,n){var o=e.call(this,t,r)||this;return o._elementRef=t,o._tree=r,o.role="treeitem",o.tabIndex=Number(n)||0,o}return s(n,e),n.decorators=[{type:t.Directive,args:[{selector:"mat-tree-node",exportAs:"matTreeNode",inputs:["disabled","tabIndex"],host:{"[attr.aria-expanded]":"isExpanded","[attr.aria-level]":'role === "treeitem" ? level : null',"[attr.role]":"role",class:"mat-tree-node"},providers:[{provide:r.CdkTreeNode,useExisting:n}]}]}],n.ctorParameters=function(){return[{type:t.ElementRef},{type:r.CdkTree},{type:void 0,decorators:[{type:t.Attribute,args:["tabindex"]}]}]},n.propDecorators={role:[{type:t.Input}]},n}(p),h=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return s(n,e),n.decorators=[{type:t.Directive,args:[{selector:"[matTreeNodeDef]",inputs:["when: matTreeNodeDefWhen"],providers:[{provide:r.CdkTreeNodeDef,useExisting:n}]}]}],n.propDecorators={data:[{type:t.Input,args:["matTreeNode"]}]},n}(c),m=function(e){function n(t,r,n,o){var a=e.call(this,t,r,n)||this;return a._elementRef=t,a._tree=r,a._differs=n,a.tabIndex=Number(o)||0,a}return s(n,e),n.prototype.ngAfterContentInit=function(){e.prototype.ngAfterContentInit.call(this)},n.prototype.ngOnDestroy=function(){e.prototype.ngOnDestroy.call(this)},n.decorators=[{type:t.Directive,args:[{selector:"mat-nested-tree-node",exportAs:"matNestedTreeNode",host:{"[attr.aria-expanded]":"isExpanded","[attr.role]":"role",class:"mat-nested-tree-node"},inputs:["disabled","tabIndex"],providers:[{provide:r.CdkNestedTreeNode,useExisting:n},{provide:r.CdkTreeNode,useExisting:n}]}]}],n.ctorParameters=function(){return[{type:t.ElementRef},{type:r.CdkTree},{type:t.IterableDiffers},{type:void 0,decorators:[{type:t.Attribute,args:["tabindex"]}]}]},n.propDecorators={node:[{type:t.Input,args:["matNestedTreeNode"]}],nodeOutlet:[{type:t.ContentChildren,args:[l]}]},n}(f),y=r.CdkTreeNodePadding,v=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return s(n,e),n.decorators=[{type:t.Directive,args:[{selector:"[matTreeNodePadding]",providers:[{provide:r.CdkTreeNodePadding,useExisting:n}]}]}],n.propDecorators={level:[{type:t.Input,args:["matTreeNodePadding"]}],indent:[{type:t.Input,args:["matTreeNodePaddingIndent"]}]},n}(y),x=r.CdkTree,T=function(e){function n(){return null!==e&&e.apply(this,arguments)||this}return s(n,e),n.decorators=[{type:t.Component,args:[{selector:"mat-tree",exportAs:"matTree",template:"<ng-container matTreeNodeOutlet></ng-container>",host:{class:"mat-tree",role:"tree"},styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;min-height:48px;flex:1;overflow:hidden;word-wrap:break-word}.mat-nested-tree-ndoe{border-bottom-width:0}"],encapsulation:t.ViewEncapsulation.None,changeDetection:t.ChangeDetectionStrategy.OnPush,providers:[{provide:r.CdkTree,useExisting:n}]}]}],n.propDecorators={_nodeOutlet:[{type:t.ViewChild,args:[l]}]},n}(x),N=r.CdkTreeNodeToggle,_=function(e){function n(){var t=null!==e&&e.apply(this,arguments)||this;return t.recursive=!1,t}return s(n,e),n.decorators=[{type:t.Directive,args:[{selector:"[matTreeNodeToggle]",host:{"(click)":"_toggle($event)"},providers:[{provide:r.CdkTreeNodeToggle,useExisting:n}]}]}],n.propDecorators={recursive:[{type:t.Input,args:["matTreeNodeToggleRecursive"]}]},n}(N),C=[m,h,v,_,T,g,l],b=function(){function e(){}return e.decorators=[{type:t.NgModule,args:[{imports:[r.CdkTreeModule,o.CommonModule,n.MatCommonModule],exports:C,declarations:C}]}],e}(),D=function(){function e(e,t,r,n){this.transformFunction=e,this.getLevel=t,this.isExpandable=r,this.getChildren=n}return e.prototype._flattenNode=function(e,t,r,n){var o=this,a=this.transformFunction(e,t);if(r.push(a),this.isExpandable(a)){var i=this.getChildren(e);Array.isArray(i)?this._flattenChildren(i,t,r,n):i.pipe(d.take(1)).subscribe(function(e){o._flattenChildren(e,t,r,n)})}return r},e.prototype._flattenChildren=function(e,t,r,n){var o=this;e.forEach(function(a,i){var d=n.slice();d.push(i!=e.length-1),o._flattenNode(a,t+1,r,d)})},e.prototype.flattenNodes=function(e){var t=this,r=[];return e.forEach(function(e){return t._flattenNode(e,0,r,[])}),r},e.prototype.expandFlattenedNodes=function(e,t){var r=this,n=[],o=[];return o[0]=!0,e.forEach(function(e){for(var a=!0,i=0;i<=r.getLevel(e);i++)a=a&&o[i];a&&n.push(e),r.isExpandable(e)&&(o[r.getLevel(e)+1]=t.isExpanded(e))}),n},e}(),k=function(e){function t(t,r,n){void 0===n&&(n=[]);var o=e.call(this)||this;return o.treeControl=t,o.treeFlattener=r,o._flattenedData=new i.BehaviorSubject([]),o._expandedData=new i.BehaviorSubject([]),o._data=new i.BehaviorSubject(n),o}return s(t,e),Object.defineProperty(t.prototype,"data",{get:function(){return this._data.value},set:function(e){this._data.next(e),this._flattenedData.next(this.treeFlattener.flattenNodes(this.data)),this.treeControl.dataNodes=this._flattenedData.value},enumerable:!0,configurable:!0}),t.prototype.connect=function(e){var t=this,r=[e.viewChange,this.treeControl.expansionModel.onChange,this._flattenedData];return i.merge.apply(void 0,r).pipe(d.map(function(){return t._expandedData.next(t.treeFlattener.expandFlattenedNodes(t._flattenedData.value,t.treeControl)),t._expandedData.value}))},t.prototype.disconnect=function(){},t}(a.DataSource),M=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._data=new i.BehaviorSubject([]),t}return s(t,e),Object.defineProperty(t.prototype,"data",{get:function(){return this._data.value},set:function(e){this._data.next(e)},enumerable:!0,configurable:!0}),t.prototype.connect=function(e){var t=this;return i.merge.apply(void 0,[e.viewChange,this._data]).pipe(d.map(function(){return t.data}))},t.prototype.disconnect=function(){},t}(a.DataSource);e._CdkTreeNodeDef=c,e._MatTreeNodeMixinBase=p,e._MatNestedTreeNodeMixinBase=f,e.MatTreeNode=g,e.MatTreeNodeDef=h,e.MatNestedTreeNode=m,e._CdkTreeNodePadding=y,e.MatTreeNodePadding=v,e._CdkTree=x,e.MatTree=T,e.MatTreeModule=b,e._CdkTreeNodeToggle=N,e.MatTreeNodeToggle=_,e.MatTreeNodeOutlet=l,e.MatTreeFlattener=D,e.MatTreeFlatDataSource=k,e.MatTreeNestedDataSource=M,Object.defineProperty(e,"__esModule",{value:!0})});
9
9
  //# sourceMappingURL=material-tree.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"material-tree.umd.min.js","sources":["../../node_modules/tslib/tslib.es6.js","../../src/lib/tree/outlet.ts","../../src/lib/tree/node.ts","../../src/lib/tree/padding.ts","../../src/lib/tree/tree.ts","../../src/lib/tree/toggle.ts","../../src/lib/tree/tree-module.ts","../../src/lib/tree/data-source/flat-data-source.ts","../../src/lib/tree/data-source/nested-data-source.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\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; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\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);\r\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); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\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 */\nimport {CdkTreeNodeOutlet} from '@angular/cdk/tree';\nimport {\n Directive,\n ViewContainerRef,\n} from '@angular/core';\n\n/**\n * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes\n * inside the outlet.\n */\n@Directive({\n selector: '[matTreeNodeOutlet]'\n})\nexport class MatTreeNodeOutlet implements CdkTreeNodeOutlet {\n constructor(public viewContainer: ViewContainerRef) {}\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\nimport {\n CdkNestedTreeNode,\n CdkTree,\n CdkTreeNode,\n CdkTreeNodeDef,\n} from '@angular/cdk/tree';\nimport {\n AfterContentInit,\n Attribute,\n ContentChildren,\n Directive,\n ElementRef,\n Input,\n IterableDiffers,\n OnDestroy,\n QueryList,\n TemplateRef,\n} from '@angular/core';\nimport {CanDisable, HasTabIndex, mixinDisabled, mixinTabIndex} from '@angular/material/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n\nexport const _MatTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkTreeNode));\nexport const _MatNestedTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkNestedTreeNode));\n\n/**\n * Wrapper for the CdkTree node with Material design styles.\n */\n@Directive({\n selector: 'mat-tree-node',\n exportAs: 'matTreeNode',\n inputs: ['disabled', 'tabIndex'],\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.aria-level]': 'role === \"treeitem\" ? level : null',\n '[attr.role]': 'role',\n 'class': 'mat-tree-node'\n },\n providers: [{provide: CdkTreeNode, useExisting: MatTreeNode}]\n})\nexport class MatTreeNode<T> extends _MatTreeNodeMixinBase<T>\n implements CanDisable, HasTabIndex {\n @Input() role: 'treeitem' | 'group' = 'treeitem';\n\n constructor(protected _elementRef: ElementRef,\n protected _tree: CdkTree<T>,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n}\n\n/**\n * Wrapper for the CdkTree node definition with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeDef]',\n inputs: [\n 'when: matTreeNodeDefWhen'\n ],\n providers: [{provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef}]\n})\nexport class MatTreeNodeDef<T> extends CdkTreeNodeDef<T> {\n @Input('matTreeNode') data: T;\n\n // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to\n // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a\n // fixed bug.\n // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this\n // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version\n constructor(template: TemplateRef<any>) {\n super(template);\n }\n}\n\n/**\n * Wrapper for the CdkTree nested node with Material design styles.\n */\n@Directive({\n selector: 'mat-nested-tree-node',\n exportAs: 'matNestedTreeNode',\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.role]': 'role',\n 'class': 'mat-nested-tree-node',\n },\n inputs: ['disabled', 'tabIndex'],\n providers: [\n {provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode},\n {provide: CdkTreeNode, useExisting: MatNestedTreeNode}\n ]\n})\nexport class MatNestedTreeNode<T> extends _MatNestedTreeNodeMixinBase<T>\n implements AfterContentInit, CanDisable, HasTabIndex, OnDestroy {\n\n @Input('matNestedTreeNode') node: T;\n\n @ContentChildren(MatTreeNodeOutlet) nodeOutlet: QueryList<MatTreeNodeOutlet>;\n\n constructor(protected _elementRef: ElementRef,\n protected _tree: CdkTree<T>,\n protected _differs: IterableDiffers,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree, _differs);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/23091\n // In aot mode, the lifecycle hooks from parent class are not called.\n // TODO(tinayuangao): Remove when the angular issue #23091 is fixed\n ngAfterContentInit() {\n super.ngAfterContentInit();\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\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 */\nimport {CdkTreeNodePadding, CdkTreeNode, CdkTree} from '@angular/cdk/tree';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {Directive, Input, Optional, Renderer2, ElementRef} from '@angular/core';\n\n\n/**\n * Wrapper for the CdkTree padding with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodePadding]',\n providers: [{provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding}]\n})\nexport class MatTreeNodePadding<T> extends CdkTreeNodePadding<T> {\n\n /** The level of depth of the tree node. The padding will be `level * indent` pixels. */\n @Input('matTreeNodePadding') level: number;\n\n /** The indent for each level. Default number 40px from material design menu sub-menu spec. */\n @Input('matTreeNodePaddingIndent') indent: number;\n\n // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to\n // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a\n // fixed bug.\n // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this\n // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version\n constructor(_treeNode: CdkTreeNode<T>,\n _tree: CdkTree<T>,\n _renderer: Renderer2,\n _element: ElementRef,\n @Optional() _dir: Directionality) {\n super(_treeNode, _tree, _renderer, _element, _dir);\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\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ViewChild,\n ViewEncapsulation,\n IterableDiffers,\n} from '@angular/core';\nimport {CdkTree} from '@angular/cdk/tree';\nimport {MatTreeNodeOutlet} from './outlet';\n\n/**\n * Wrapper for the CdkTable with Material design styles.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-tree',\n exportAs: 'matTree',\n template: `<ng-container matTreeNodeOutlet></ng-container>`,\n host: {\n 'class': 'mat-tree',\n 'role': 'tree',\n },\n styleUrls: ['tree.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{provide: CdkTree, useExisting: MatTree}]\n})\nexport class MatTree<T> extends CdkTree<T> {\n // Outlets within the tree's template where the dataNodes will be inserted.\n @ViewChild(MatTreeNodeOutlet) _nodeOutlet: MatTreeNodeOutlet;\n\n // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to\n // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a\n // fixed bug.\n // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this\n // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version\n constructor(_differs: IterableDiffers, _changeDetectorRef: ChangeDetectorRef) {\n super(_differs, _changeDetectorRef);\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\nimport {Directive, Input} from '@angular/core';\nimport {CdkTreeNodeToggle, CdkTree, CdkTreeNode} from '@angular/cdk/tree';\n\n/**\n * Wrapper for the CdkTree's toggle with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeToggle]',\n host: {\n '(click)': '_toggle($event)',\n },\n providers: [{provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle}]\n})\nexport class MatTreeNodeToggle<T> extends CdkTreeNodeToggle<T> {\n @Input('matTreeNodeToggleRecursive') recursive: boolean = false;\n\n // TODO(andrewseguin): Remove this explicitly set constructor when the compiler knows how to\n // properly build the es6 version of the class. Currently sets ctorParameters to empty due to a\n // fixed bug.\n // https://github.com/angular/tsickle/pull/760 - tsickle PR that fixed this\n // https://github.com/angular/angular/pull/23531 - updates compiler-cli to fixed version\n constructor(_tree: CdkTree<T>, _treeNode: CdkTreeNode<T>) {\n super(_tree, _treeNode);\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\nimport {NgModule} from '@angular/core';\n\nimport {CdkTreeModule} from '@angular/cdk/tree';\nimport {CommonModule} from '@angular/common';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatNestedTreeNode, MatTreeNodeDef, MatTreeNode} from './node';\nimport {MatTree} from './tree';\nimport {MatTreeNodeToggle} from './toggle';\nimport {MatTreeNodeOutlet} from './outlet';\nimport {MatTreeNodePadding} from './padding';\n\nconst MAT_TREE_DIRECTIVES = [\n MatNestedTreeNode,\n MatTreeNodeDef,\n MatTreeNodePadding,\n MatTreeNodeToggle,\n MatTree,\n MatTreeNode,\n MatTreeNodeOutlet\n];\n\n@NgModule({\n imports: [CdkTreeModule, CommonModule, MatCommonModule],\n exports: MAT_TREE_DIRECTIVES,\n declarations: MAT_TREE_DIRECTIVES,\n})\nexport class MatTreeModule {}\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\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {FlatTreeControl, TreeControl} from '@angular/cdk/tree';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\n\n/**\n * Tree flattener to convert a normal type of node to node with children & level information.\n * Transform nested nodes of type `T` to flattened nodes of type `F`.\n *\n * For example, the input data of type `T` is nested, and contains its children data:\n * SomeNode: {\n * key: 'Fruits',\n * children: [\n * NodeOne: {\n * key: 'Apple',\n * },\n * NodeTwo: {\n * key: 'Pear',\n * }\n * ]\n * }\n * After flattener flatten the tree, the structure will become\n * SomeNode: {\n * key: 'Fruits',\n * expandable: true,\n * level: 1\n * },\n * NodeOne: {\n * key: 'Apple',\n * expandable: false,\n * level: 2\n * },\n * NodeTwo: {\n * key: 'Pear',\n * expandable: false,\n * level: 2\n * }\n * and the output flattened type is `F` with additional information.\n */\nexport class MatTreeFlattener<T, F> {\n\n constructor(public transformFunction: (node: T, level: number) => F,\n public getLevel: (node: F) => number,\n public isExpandable: (node: F) => boolean,\n public getChildren: (node: T) => Observable<T[]> | T[]) {}\n\n _flattenNode(node: T, level: number,\n resultNodes: F[], parentMap: boolean[]): F[] {\n const flatNode = this.transformFunction(node, level);\n resultNodes.push(flatNode);\n\n if (this.isExpandable(flatNode)) {\n const childrenNodes = this.getChildren(node);\n if (Array.isArray(childrenNodes)) {\n this._flattenChildren(childrenNodes, level, resultNodes, parentMap);\n } else {\n childrenNodes.pipe(take(1)).subscribe(children => {\n this._flattenChildren(children, level, resultNodes, parentMap);\n });\n }\n }\n return resultNodes;\n }\n\n _flattenChildren(children: T[], level: number,\n resultNodes: F[], parentMap: boolean[]): void {\n children.forEach((child, index) => {\n let childParentMap: boolean[] = parentMap.slice();\n childParentMap.push(index != children.length - 1);\n this._flattenNode(child, level + 1, resultNodes, childParentMap);\n });\n }\n\n /**\n * Flatten a list of node type T to flattened version of node F.\n * Please note that type T may be nested, and the length of `structuredData` may be different\n * from that of returned list `F[]`.\n */\n flattenNodes(structuredData: T[]): F[] {\n let resultNodes: F[] = [];\n structuredData.forEach(node => this._flattenNode(node, 0, resultNodes, []));\n return resultNodes;\n }\n\n /**\n * Expand flattened node with current expansion status.\n * The returned list may have different length.\n */\n expandFlattenedNodes(nodes: F[], treeControl: TreeControl<F>): F[] {\n let results: F[] = [];\n let currentExpand: boolean[] = [];\n currentExpand[0] = true;\n\n nodes.forEach(node => {\n let expand = true;\n for (let i = 0; i <= this.getLevel(node); i++) {\n expand = expand && currentExpand[i];\n }\n if (expand) {\n results.push(node);\n }\n if (this.isExpandable(node)) {\n currentExpand[this.getLevel(node) + 1] = treeControl.isExpanded(node);\n }\n });\n return results;\n }\n}\n\n\n/**\n * Data source for flat tree.\n * The data source need to handle expansion/collapsion of the tree node and change the data feed\n * to `MatTree`.\n * The nested tree nodes of type `T` are flattened through `MatTreeFlattener`, and converted\n * to type `F` for `MatTree` to consume.\n */\nexport class MatTreeFlatDataSource<T, F> extends DataSource<F> {\n _flattenedData = new BehaviorSubject<F[]>([]);\n\n _expandedData = new BehaviorSubject<F[]>([]);\n\n _data: BehaviorSubject<T[]>;\n get data() { return this._data.value; }\n set data(value: T[]) {\n this._data.next(value);\n this._flattenedData.next(this.treeFlattener.flattenNodes(this.data));\n this.treeControl.dataNodes = this._flattenedData.value;\n }\n\n constructor(private treeControl: FlatTreeControl<F>,\n private treeFlattener: MatTreeFlattener<T, F>,\n initialData: T[] = []) {\n super();\n this._data = new BehaviorSubject<T[]>(initialData);\n }\n\n connect(collectionViewer: CollectionViewer): Observable<F[]> {\n const changes = [\n collectionViewer.viewChange,\n this.treeControl.expansionModel.onChange!,\n this._flattenedData\n ];\n return merge(...changes).pipe(map(() => {\n this._expandedData.next(\n this.treeFlattener.expandFlattenedNodes(this._flattenedData.value, this.treeControl));\n return this._expandedData.value;\n }));\n }\n\n disconnect() {\n // no op\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\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n\n/**\n * Data source for nested tree.\n *\n * The data source for nested tree doesn't have to consider node flattener, or the way to expand\n * or collapse. The expansion/collapsion will be handled by TreeControl and each non-leaf node.\n */\nexport class MatTreeNestedDataSource<T> extends DataSource<T> {\n _data = new BehaviorSubject<T[]>([]);\n\n /**\n * Data for the nested tree\n */\n get data() { return this._data.value; }\n set data(value: T[]) { this._data.next(value); }\n\n connect(collectionViewer: CollectionViewer): Observable<T[]> {\n return merge(...[collectionViewer.viewChange, this._data])\n .pipe(map(() => {\n return this.data;\n }));\n }\n\n disconnect() {\n // no op\n }\n}\n\n"],"names":["__extends","d","b","__","this","constructor","extendStatics","prototype","Object","create","setPrototypeOf","__proto__","Array","p","hasOwnProperty","MatTreeNodeOutlet","viewContainer","type","Directive","args","selector","ViewContainerRef","_MatTreeNodeMixinBase","mixinTabIndex","mixinDisabled","CdkTreeNode","_MatNestedTreeNodeMixinBase","CdkNestedTreeNode","MatTreeNode","_elementRef","_tree","tabIndex","_this","_super","call","role","Number","tslib_1.__extends","exportAs","inputs","host","[attr.aria-expanded]","[attr.aria-level]","[attr.role]","class","providers","provide","useExisting","ElementRef","CdkTree","undefined","decorators","Attribute","Input","MatTreeNodeDef","template","CdkTreeNodeDef","TemplateRef","data","MatNestedTreeNode","_differs","ngAfterContentInit","ngOnDestroy","IterableDiffers","node","nodeOutlet","ContentChildren","MatTreeNodePadding","_treeNode","_renderer","_element","_dir","CdkTreeNodePadding","Renderer2","Directionality","Optional","level","indent","MatTree","_changeDetectorRef","Component","styles","encapsulation","ViewEncapsulation","None","changeDetection","ChangeDetectionStrategy","OnPush","propDecorators","MatTreeNodeToggle","recursive","(click)","CdkTreeNodeToggle","MAT_TREE_DIRECTIVES","NgModule","imports","CdkTreeModule","CommonModule","MatCommonModule","exports","declarations","MatTreeModule","MatTreeFlattener","transformFunction","getLevel","isExpandable","getChildren","_flattenNode","resultNodes","parentMap","flatNode","push","childrenNodes","isArray","_flattenChildren","pipe","take","subscribe","children","forEach","child","index","childParentMap","slice","length","flattenNodes","structuredData","expandFlattenedNodes","nodes","treeControl","results","currentExpand","expand","i","isExpanded","MatTreeFlatDataSource","treeFlattener","initialData","_flattenedData","BehaviorSubject","_expandedData","_data","defineProperty","value","next","dataNodes","connect","collectionViewer","changes","viewChange","expansionModel","merge","apply","map","disconnect","DataSource","MatTreeNestedDataSource"],"mappings":"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"}
1
+ {"version":3,"file":"material-tree.umd.min.js","sources":["../../node_modules/tslib/tslib.es6.js","../../src/lib/tree/outlet.ts","../../src/lib/tree/node.ts","../../src/lib/tree/padding.ts","../../src/lib/tree/tree.ts","../../src/lib/tree/toggle.ts","../../src/lib/tree/tree-module.ts","../../src/lib/tree/data-source/flat-data-source.ts","../../src/lib/tree/data-source/nested-data-source.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\r\n t[p[i]] = s[p[i]];\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\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) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\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; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\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);\r\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); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\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 */\nimport {CdkTreeNodeOutlet} from '@angular/cdk/tree';\nimport {\n Directive,\n ViewContainerRef,\n} from '@angular/core';\n\n/**\n * Outlet for nested CdkNode. Put `[matTreeNodeOutlet]` on a tag to place children dataNodes\n * inside the outlet.\n */\n@Directive({\n selector: '[matTreeNodeOutlet]'\n})\nexport class MatTreeNodeOutlet implements CdkTreeNodeOutlet {\n constructor(public viewContainer: ViewContainerRef) {}\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\nimport {CdkNestedTreeNode, CdkTree, CdkTreeNode, CdkTreeNodeDef} from '@angular/cdk/tree';\nimport {\n AfterContentInit,\n Attribute,\n ContentChildren,\n Directive,\n ElementRef,\n Input,\n IterableDiffers,\n OnDestroy,\n QueryList,\n} from '@angular/core';\nimport {CanDisable, HasTabIndex, mixinDisabled, mixinTabIndex} from '@angular/material/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodeDef = CdkTreeNodeDef;\n\nexport const _MatTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkTreeNode));\nexport const _MatNestedTreeNodeMixinBase = mixinTabIndex(mixinDisabled(CdkNestedTreeNode));\n\n/**\n * Wrapper for the CdkTree node with Material design styles.\n */\n@Directive({\n selector: 'mat-tree-node',\n exportAs: 'matTreeNode',\n inputs: ['disabled', 'tabIndex'],\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.aria-level]': 'role === \"treeitem\" ? level : null',\n '[attr.role]': 'role',\n 'class': 'mat-tree-node'\n },\n providers: [{provide: CdkTreeNode, useExisting: MatTreeNode}]\n})\nexport class MatTreeNode<T> extends _MatTreeNodeMixinBase<T>\n implements CanDisable, HasTabIndex {\n @Input() role: 'treeitem' | 'group' = 'treeitem';\n\n constructor(protected _elementRef: ElementRef<HTMLElement>,\n protected _tree: CdkTree<T>,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n}\n\n/**\n * Wrapper for the CdkTree node definition with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeDef]',\n inputs: [\n 'when: matTreeNodeDefWhen'\n ],\n providers: [{provide: CdkTreeNodeDef, useExisting: MatTreeNodeDef}]\n})\nexport class MatTreeNodeDef<T> extends _CdkTreeNodeDef<T> {\n @Input('matTreeNode') data: T;\n}\n\n/**\n * Wrapper for the CdkTree nested node with Material design styles.\n */\n@Directive({\n selector: 'mat-nested-tree-node',\n exportAs: 'matNestedTreeNode',\n host: {\n '[attr.aria-expanded]': 'isExpanded',\n '[attr.role]': 'role',\n 'class': 'mat-nested-tree-node',\n },\n inputs: ['disabled', 'tabIndex'],\n providers: [\n {provide: CdkNestedTreeNode, useExisting: MatNestedTreeNode},\n {provide: CdkTreeNode, useExisting: MatNestedTreeNode}\n ]\n})\nexport class MatNestedTreeNode<T> extends _MatNestedTreeNodeMixinBase<T>\n implements AfterContentInit, CanDisable, HasTabIndex, OnDestroy {\n\n @Input('matNestedTreeNode') node: T;\n\n @ContentChildren(MatTreeNodeOutlet) nodeOutlet: QueryList<MatTreeNodeOutlet>;\n\n constructor(protected _elementRef: ElementRef<HTMLElement>,\n protected _tree: CdkTree<T>,\n protected _differs: IterableDiffers,\n @Attribute('tabindex') tabIndex: string) {\n super(_elementRef, _tree, _differs);\n\n this.tabIndex = Number(tabIndex) || 0;\n }\n\n // This is a workaround for https://github.com/angular/angular/issues/23091\n // In aot mode, the lifecycle hooks from parent class are not called.\n // TODO(tinayuangao): Remove when the angular issue #23091 is fixed\n ngAfterContentInit() {\n super.ngAfterContentInit();\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\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 */\nimport {CdkTreeNodePadding} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodePadding = CdkTreeNodePadding;\n\n/**\n * Wrapper for the CdkTree padding with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodePadding]',\n providers: [{provide: CdkTreeNodePadding, useExisting: MatTreeNodePadding}]\n})\nexport class MatTreeNodePadding<T> extends _CdkTreeNodePadding<T> {\n\n /** The level of depth of the tree node. The padding will be `level * indent` pixels. */\n @Input('matTreeNodePadding') level: number;\n\n /** The indent for each level. Default number 40px from material design menu sub-menu spec. */\n @Input('matTreeNodePaddingIndent') indent: number;\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\nimport {CdkTree} from '@angular/cdk/tree';\nimport {ChangeDetectionStrategy, Component, ViewChild, ViewEncapsulation} from '@angular/core';\nimport {MatTreeNodeOutlet} from './outlet';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTree = CdkTree;\n\n/**\n * Wrapper for the CdkTable with Material design styles.\n */\n@Component({\n moduleId: module.id,\n selector: 'mat-tree',\n exportAs: 'matTree',\n template: `<ng-container matTreeNodeOutlet></ng-container>`,\n host: {\n 'class': 'mat-tree',\n 'role': 'tree',\n },\n styleUrls: ['tree.css'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{provide: CdkTree, useExisting: MatTree}]\n})\nexport class MatTree<T> extends _CdkTree<T> {\n // Outlets within the tree's template where the dataNodes will be inserted.\n @ViewChild(MatTreeNodeOutlet) _nodeOutlet: MatTreeNodeOutlet;\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\nimport {CdkTreeNodeToggle} from '@angular/cdk/tree';\nimport {Directive, Input} from '@angular/core';\n\n// TODO(devversion): workaround for https://github.com/angular/material2/issues/12760\nexport const _CdkTreeNodeToggle = CdkTreeNodeToggle;\n\n/**\n * Wrapper for the CdkTree's toggle with Material design styles.\n */\n@Directive({\n selector: '[matTreeNodeToggle]',\n host: {\n '(click)': '_toggle($event)',\n },\n providers: [{provide: CdkTreeNodeToggle, useExisting: MatTreeNodeToggle}]\n})\nexport class MatTreeNodeToggle<T> extends _CdkTreeNodeToggle<T> {\n @Input('matTreeNodeToggleRecursive') recursive: boolean = false;\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\nimport {NgModule} from '@angular/core';\n\nimport {CdkTreeModule} from '@angular/cdk/tree';\nimport {CommonModule} from '@angular/common';\nimport {MatCommonModule} from '@angular/material/core';\nimport {MatNestedTreeNode, MatTreeNodeDef, MatTreeNode} from './node';\nimport {MatTree} from './tree';\nimport {MatTreeNodeToggle} from './toggle';\nimport {MatTreeNodeOutlet} from './outlet';\nimport {MatTreeNodePadding} from './padding';\n\nconst MAT_TREE_DIRECTIVES = [\n MatNestedTreeNode,\n MatTreeNodeDef,\n MatTreeNodePadding,\n MatTreeNodeToggle,\n MatTree,\n MatTreeNode,\n MatTreeNodeOutlet\n];\n\n@NgModule({\n imports: [CdkTreeModule, CommonModule, MatCommonModule],\n exports: MAT_TREE_DIRECTIVES,\n declarations: MAT_TREE_DIRECTIVES,\n})\nexport class MatTreeModule {}\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\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {FlatTreeControl, TreeControl} from '@angular/cdk/tree';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map, take} from 'rxjs/operators';\n\n/**\n * Tree flattener to convert a normal type of node to node with children & level information.\n * Transform nested nodes of type `T` to flattened nodes of type `F`.\n *\n * For example, the input data of type `T` is nested, and contains its children data:\n * SomeNode: {\n * key: 'Fruits',\n * children: [\n * NodeOne: {\n * key: 'Apple',\n * },\n * NodeTwo: {\n * key: 'Pear',\n * }\n * ]\n * }\n * After flattener flatten the tree, the structure will become\n * SomeNode: {\n * key: 'Fruits',\n * expandable: true,\n * level: 1\n * },\n * NodeOne: {\n * key: 'Apple',\n * expandable: false,\n * level: 2\n * },\n * NodeTwo: {\n * key: 'Pear',\n * expandable: false,\n * level: 2\n * }\n * and the output flattened type is `F` with additional information.\n */\nexport class MatTreeFlattener<T, F> {\n\n constructor(public transformFunction: (node: T, level: number) => F,\n public getLevel: (node: F) => number,\n public isExpandable: (node: F) => boolean,\n public getChildren: (node: T) => Observable<T[]> | T[]) {}\n\n _flattenNode(node: T, level: number,\n resultNodes: F[], parentMap: boolean[]): F[] {\n const flatNode = this.transformFunction(node, level);\n resultNodes.push(flatNode);\n\n if (this.isExpandable(flatNode)) {\n const childrenNodes = this.getChildren(node);\n if (Array.isArray(childrenNodes)) {\n this._flattenChildren(childrenNodes, level, resultNodes, parentMap);\n } else {\n childrenNodes.pipe(take(1)).subscribe(children => {\n this._flattenChildren(children, level, resultNodes, parentMap);\n });\n }\n }\n return resultNodes;\n }\n\n _flattenChildren(children: T[], level: number,\n resultNodes: F[], parentMap: boolean[]): void {\n children.forEach((child, index) => {\n let childParentMap: boolean[] = parentMap.slice();\n childParentMap.push(index != children.length - 1);\n this._flattenNode(child, level + 1, resultNodes, childParentMap);\n });\n }\n\n /**\n * Flatten a list of node type T to flattened version of node F.\n * Please note that type T may be nested, and the length of `structuredData` may be different\n * from that of returned list `F[]`.\n */\n flattenNodes(structuredData: T[]): F[] {\n let resultNodes: F[] = [];\n structuredData.forEach(node => this._flattenNode(node, 0, resultNodes, []));\n return resultNodes;\n }\n\n /**\n * Expand flattened node with current expansion status.\n * The returned list may have different length.\n */\n expandFlattenedNodes(nodes: F[], treeControl: TreeControl<F>): F[] {\n let results: F[] = [];\n let currentExpand: boolean[] = [];\n currentExpand[0] = true;\n\n nodes.forEach(node => {\n let expand = true;\n for (let i = 0; i <= this.getLevel(node); i++) {\n expand = expand && currentExpand[i];\n }\n if (expand) {\n results.push(node);\n }\n if (this.isExpandable(node)) {\n currentExpand[this.getLevel(node) + 1] = treeControl.isExpanded(node);\n }\n });\n return results;\n }\n}\n\n\n/**\n * Data source for flat tree.\n * The data source need to handle expansion/collapsion of the tree node and change the data feed\n * to `MatTree`.\n * The nested tree nodes of type `T` are flattened through `MatTreeFlattener`, and converted\n * to type `F` for `MatTree` to consume.\n */\nexport class MatTreeFlatDataSource<T, F> extends DataSource<F> {\n _flattenedData = new BehaviorSubject<F[]>([]);\n\n _expandedData = new BehaviorSubject<F[]>([]);\n\n _data: BehaviorSubject<T[]>;\n get data() { return this._data.value; }\n set data(value: T[]) {\n this._data.next(value);\n this._flattenedData.next(this.treeFlattener.flattenNodes(this.data));\n this.treeControl.dataNodes = this._flattenedData.value;\n }\n\n constructor(private treeControl: FlatTreeControl<F>,\n private treeFlattener: MatTreeFlattener<T, F>,\n initialData: T[] = []) {\n super();\n this._data = new BehaviorSubject<T[]>(initialData);\n }\n\n connect(collectionViewer: CollectionViewer): Observable<F[]> {\n const changes = [\n collectionViewer.viewChange,\n this.treeControl.expansionModel.onChange!,\n this._flattenedData\n ];\n return merge(...changes).pipe(map(() => {\n this._expandedData.next(\n this.treeFlattener.expandFlattenedNodes(this._flattenedData.value, this.treeControl));\n return this._expandedData.value;\n }));\n }\n\n disconnect() {\n // no op\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\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {BehaviorSubject, merge, Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n\n/**\n * Data source for nested tree.\n *\n * The data source for nested tree doesn't have to consider node flattener, or the way to expand\n * or collapse. The expansion/collapsion will be handled by TreeControl and each non-leaf node.\n */\nexport class MatTreeNestedDataSource<T> extends DataSource<T> {\n _data = new BehaviorSubject<T[]>([]);\n\n /**\n * Data for the nested tree\n */\n get data() { return this._data.value; }\n set data(value: T[]) { this._data.next(value); }\n\n connect(collectionViewer: CollectionViewer): Observable<T[]> {\n return merge(...[collectionViewer.viewChange, this._data])\n .pipe(map(() => {\n return this.data;\n }));\n }\n\n disconnect() {\n // no op\n }\n}\n\n"],"names":["__extends","d","b","__","this","constructor","extendStatics","prototype","Object","create","setPrototypeOf","__proto__","Array","p","hasOwnProperty","MatTreeNodeOutlet","viewContainer","type","Directive","args","selector","ViewContainerRef","_CdkTreeNodeDef","CdkTreeNodeDef","_MatTreeNodeMixinBase","mixinTabIndex","mixinDisabled","CdkTreeNode","_MatNestedTreeNodeMixinBase","CdkNestedTreeNode","MatTreeNode","_elementRef","_tree","tabIndex","_this","_super","call","role","Number","tslib_1.__extends","exportAs","inputs","host","[attr.aria-expanded]","[attr.aria-level]","[attr.role]","class","providers","provide","useExisting","ElementRef","CdkTree","undefined","decorators","Attribute","Input","MatTreeNodeDef","data","MatNestedTreeNode","_differs","ngAfterContentInit","ngOnDestroy","IterableDiffers","node","nodeOutlet","ContentChildren","_CdkTreeNodePadding","CdkTreeNodePadding","MatTreeNodePadding","level","indent","_CdkTree","MatTree","Component","template","styles","encapsulation","ViewEncapsulation","None","changeDetection","ChangeDetectionStrategy","OnPush","_CdkTreeNodeToggle","CdkTreeNodeToggle","recursive","MatTreeNodeToggle","(click)","MAT_TREE_DIRECTIVES","NgModule","imports","CdkTreeModule","CommonModule","MatCommonModule","exports","declarations","MatTreeModule","MatTreeFlattener","transformFunction","getLevel","isExpandable","getChildren","_flattenNode","resultNodes","parentMap","flatNode","push","childrenNodes","isArray","_flattenChildren","pipe","take","subscribe","children","forEach","child","index","childParentMap","slice","length","flattenNodes","structuredData","expandFlattenedNodes","nodes","treeControl","results","currentExpand","expand","i","isExpanded","MatTreeFlatDataSource","treeFlattener","initialData","_flattenedData","BehaviorSubject","_expandedData","_data","defineProperty","value","next","dataNodes","connect","collectionViewer","changes","viewChange","expansionModel","merge","apply","map","disconnect","DataSource","MatTreeNestedDataSource"],"mappings":"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"}