@angular/cdk 10.1.1 → 10.2.0

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 (223) hide show
  1. package/a11y/index.metadata.json +1 -1
  2. package/a11y/key-manager/list-key-manager.d.ts +4 -3
  3. package/bundles/cdk-a11y.umd.js +440 -384
  4. package/bundles/cdk-a11y.umd.js.map +1 -1
  5. package/bundles/cdk-a11y.umd.min.js +34 -10
  6. package/bundles/cdk-a11y.umd.min.js.map +1 -1
  7. package/bundles/cdk-accordion.umd.js +40 -40
  8. package/bundles/cdk-accordion.umd.js.map +1 -1
  9. package/bundles/cdk-accordion.umd.min.js +10 -2
  10. package/bundles/cdk-accordion.umd.min.js.map +1 -1
  11. package/bundles/cdk-bidi.umd.js +25 -25
  12. package/bundles/cdk-bidi.umd.js.map +1 -1
  13. package/bundles/cdk-bidi.umd.min.js +5 -4
  14. package/bundles/cdk-bidi.umd.min.js.map +1 -1
  15. package/bundles/cdk-clipboard.umd.js +37 -36
  16. package/bundles/cdk-clipboard.umd.js.map +1 -1
  17. package/bundles/cdk-clipboard.umd.min.js +10 -2
  18. package/bundles/cdk-clipboard.umd.min.js.map +1 -1
  19. package/bundles/cdk-coercion.umd.js.map +1 -1
  20. package/bundles/cdk-collections.umd.js +498 -238
  21. package/bundles/cdk-collections.umd.js.map +1 -1
  22. package/bundles/cdk-collections.umd.min.js +6 -4
  23. package/bundles/cdk-collections.umd.min.js.map +1 -1
  24. package/bundles/cdk-drag-drop.umd.js +508 -448
  25. package/bundles/cdk-drag-drop.umd.js.map +1 -1
  26. package/bundles/cdk-drag-drop.umd.min.js +64 -8
  27. package/bundles/cdk-drag-drop.umd.min.js.map +1 -1
  28. package/bundles/cdk-keycodes.umd.js.map +1 -1
  29. package/bundles/cdk-layout.umd.js +30 -26
  30. package/bundles/cdk-layout.umd.js.map +1 -1
  31. package/bundles/cdk-layout.umd.min.js +7 -6
  32. package/bundles/cdk-layout.umd.min.js.map +1 -1
  33. package/bundles/cdk-observers.umd.js +34 -34
  34. package/bundles/cdk-observers.umd.js.map +1 -1
  35. package/bundles/cdk-observers.umd.min.js +2 -2
  36. package/bundles/cdk-observers.umd.min.js.map +1 -1
  37. package/bundles/cdk-overlay.umd.js +492 -435
  38. package/bundles/cdk-overlay.umd.js.map +1 -1
  39. package/bundles/cdk-overlay.umd.min.js +51 -11
  40. package/bundles/cdk-overlay.umd.min.js.map +1 -1
  41. package/bundles/cdk-platform.umd.js +38 -11
  42. package/bundles/cdk-platform.umd.js.map +1 -1
  43. package/bundles/cdk-platform.umd.min.js +5 -12
  44. package/bundles/cdk-platform.umd.min.js.map +1 -1
  45. package/bundles/cdk-portal.umd.js +385 -322
  46. package/bundles/cdk-portal.umd.js.map +1 -1
  47. package/bundles/cdk-portal.umd.min.js +3 -12
  48. package/bundles/cdk-portal.umd.min.js.map +1 -1
  49. package/bundles/cdk-scrolling.umd.js +503 -490
  50. package/bundles/cdk-scrolling.umd.js.map +1 -1
  51. package/bundles/cdk-scrolling.umd.min.js +20 -34
  52. package/bundles/cdk-scrolling.umd.min.js.map +1 -1
  53. package/bundles/cdk-stepper.umd.js +135 -136
  54. package/bundles/cdk-stepper.umd.js.map +1 -1
  55. package/bundles/cdk-stepper.umd.min.js +11 -2
  56. package/bundles/cdk-stepper.umd.min.js.map +1 -1
  57. package/bundles/cdk-table.umd.js +923 -653
  58. package/bundles/cdk-table.umd.js.map +1 -1
  59. package/bundles/cdk-table.umd.min.js +7 -22
  60. package/bundles/cdk-table.umd.min.js.map +1 -1
  61. package/bundles/cdk-testing-protractor.umd.js +310 -245
  62. package/bundles/cdk-testing-protractor.umd.js.map +1 -1
  63. package/bundles/cdk-testing-protractor.umd.min.js +2 -9
  64. package/bundles/cdk-testing-protractor.umd.min.js.map +1 -1
  65. package/bundles/cdk-testing-testbed.umd.js +341 -292
  66. package/bundles/cdk-testing-testbed.umd.js.map +1 -1
  67. package/bundles/cdk-testing-testbed.umd.min.js +6 -29
  68. package/bundles/cdk-testing-testbed.umd.min.js.map +1 -1
  69. package/bundles/cdk-testing.umd.js +342 -270
  70. package/bundles/cdk-testing.umd.js.map +1 -1
  71. package/bundles/cdk-testing.umd.min.js +3 -17
  72. package/bundles/cdk-testing.umd.min.js.map +1 -1
  73. package/bundles/cdk-text-field.umd.js +53 -53
  74. package/bundles/cdk-text-field.umd.js.map +1 -1
  75. package/bundles/cdk-text-field.umd.min.js +10 -2
  76. package/bundles/cdk-text-field.umd.min.js.map +1 -1
  77. package/bundles/cdk-tree.umd.js +481 -417
  78. package/bundles/cdk-tree.umd.js.map +1 -1
  79. package/bundles/cdk-tree.umd.min.js +28 -3
  80. package/bundles/cdk-tree.umd.min.js.map +1 -1
  81. package/bundles/cdk.umd.js +1 -1
  82. package/bundles/cdk.umd.js.map +1 -1
  83. package/bundles/cdk.umd.min.js +1 -1
  84. package/bundles/cdk.umd.min.js.map +1 -1
  85. package/collections/dispose-view-repeater-strategy.d.ts +22 -0
  86. package/collections/index.metadata.json +1 -1
  87. package/collections/public-api.d.ts +3 -0
  88. package/collections/recycle-view-repeater-strategy.d.ts +56 -0
  89. package/collections/view-repeater.d.ts +94 -0
  90. package/drag-drop/index.d.ts +1 -2
  91. package/drag-drop/index.metadata.json +1 -1
  92. package/drag-drop/public-api.d.ts +2 -1
  93. package/esm2015/a11y/aria-describer/aria-describer.js +3 -3
  94. package/esm2015/a11y/focus-monitor/focus-monitor.js +3 -3
  95. package/esm2015/a11y/focus-trap/focus-trap.js +5 -4
  96. package/esm2015/a11y/key-manager/list-key-manager.js +8 -6
  97. package/esm2015/clipboard/pending-copy.js +7 -6
  98. package/esm2015/collections/collection-viewer.js +1 -0
  99. package/esm2015/collections/dispose-view-repeater-strategy.js +48 -0
  100. package/esm2015/collections/public-api.js +4 -1
  101. package/esm2015/collections/recycle-view-repeater-strategy.js +128 -0
  102. package/esm2015/collections/selection-model.js +2 -2
  103. package/esm2015/collections/tree-adapter.js +1 -0
  104. package/esm2015/collections/view-repeater.js +16 -0
  105. package/esm2015/drag-drop/clone-node.js +9 -1
  106. package/esm2015/drag-drop/directives/drag-handle.js +1 -3
  107. package/esm2015/drag-drop/directives/drag.js +7 -5
  108. package/esm2015/drag-drop/directives/drop-list.js +3 -3
  109. package/esm2015/drag-drop/drag-events.js +1 -0
  110. package/esm2015/drag-drop/drag-ref.js +2 -2
  111. package/esm2015/drag-drop/index.js +1 -3
  112. package/esm2015/drag-drop/public-api.js +3 -2
  113. package/esm2015/layout/breakpoints-observer.js +9 -9
  114. package/esm2015/overlay/dispatchers/overlay-outside-click-dispatcher.js +11 -9
  115. package/esm2015/overlay/overlay-config.js +1 -5
  116. package/esm2015/overlay/overlay-directives.js +18 -2
  117. package/esm2015/overlay/overlay-ref.js +6 -8
  118. package/esm2015/overlay/overlay-reference.js +1 -0
  119. package/esm2015/overlay/overlay.js +4 -4
  120. package/esm2015/overlay/position/connected-position-strategy.js +2 -9
  121. package/esm2015/overlay/position/flexible-connected-position-strategy.js +19 -16
  122. package/esm2015/overlay/position/position-strategy.js +1 -0
  123. package/esm2015/overlay/scroll/close-scroll-strategy.js +2 -2
  124. package/esm2015/overlay/scroll/reposition-scroll-strategy.js +2 -2
  125. package/esm2015/platform/features/scrolling.js +29 -2
  126. package/esm2015/portal/dom-portal-outlet.js +7 -4
  127. package/esm2015/portal/portal-directives.js +3 -3
  128. package/esm2015/portal/portal-injector.js +3 -1
  129. package/esm2015/portal/portal.js +25 -19
  130. package/esm2015/scrolling/fixed-size-virtual-scroll.js +2 -2
  131. package/esm2015/scrolling/scrolling-module.js +4 -1
  132. package/esm2015/scrolling/virtual-for-of.js +67 -92
  133. package/esm2015/scrolling/virtual-scroll-repeater.js +1 -0
  134. package/esm2015/scrolling/virtual-scroll-viewport.js +5 -5
  135. package/esm2015/stepper/stepper.js +19 -17
  136. package/esm2015/table/cell.js +34 -14
  137. package/esm2015/table/coalesced-style-scheduler.js +87 -0
  138. package/esm2015/table/public-api.js +2 -1
  139. package/esm2015/table/sticky-styler.js +79 -45
  140. package/esm2015/table/table-module.js +4 -2
  141. package/esm2015/table/table.js +70 -44
  142. package/esm2015/table/text-column.js +9 -5
  143. package/esm2015/testing/element-dimensions.js +1 -0
  144. package/esm2015/testing/protractor/protractor-element.js +6 -3
  145. package/esm2015/testing/public-api.js +2 -1
  146. package/esm2015/testing/test-element.js +1 -1
  147. package/esm2015/testing/testbed/task-state-zone-interceptor.js +2 -2
  148. package/esm2015/testing/testbed/unit-test-element.js +26 -21
  149. package/esm2015/testing/text-filtering.js +23 -0
  150. package/esm2015/text-field/autofill.js +3 -3
  151. package/esm2015/tree/control/tree-control.js +1 -0
  152. package/esm2015/tree/nested-node.js +2 -2
  153. package/esm2015/tree/padding.js +34 -20
  154. package/esm2015/tree/tree.js +14 -27
  155. package/esm2015/version.js +1 -1
  156. package/fesm2015/a11y.js +15 -12
  157. package/fesm2015/a11y.js.map +1 -1
  158. package/fesm2015/cdk.js +1 -1
  159. package/fesm2015/cdk.js.map +1 -1
  160. package/fesm2015/clipboard.js +6 -5
  161. package/fesm2015/clipboard.js.map +1 -1
  162. package/fesm2015/collections.js +194 -3
  163. package/fesm2015/collections.js.map +1 -1
  164. package/fesm2015/drag-drop.js +32 -23
  165. package/fesm2015/drag-drop.js.map +1 -1
  166. package/fesm2015/layout.js +8 -8
  167. package/fesm2015/layout.js.map +1 -1
  168. package/fesm2015/overlay.js +55 -48
  169. package/fesm2015/overlay.js.map +1 -1
  170. package/fesm2015/platform.js +28 -1
  171. package/fesm2015/platform.js.map +1 -1
  172. package/fesm2015/portal.js +34 -23
  173. package/fesm2015/portal.js.map +1 -1
  174. package/fesm2015/scrolling.js +72 -95
  175. package/fesm2015/scrolling.js.map +1 -1
  176. package/fesm2015/stepper.js +19 -17
  177. package/fesm2015/stepper.js.map +1 -1
  178. package/fesm2015/table.js +274 -105
  179. package/fesm2015/table.js.map +1 -1
  180. package/fesm2015/testing/protractor.js +5 -2
  181. package/fesm2015/testing/protractor.js.map +1 -1
  182. package/fesm2015/testing/testbed.js +26 -21
  183. package/fesm2015/testing/testbed.js.map +1 -1
  184. package/fesm2015/testing.js +24 -1
  185. package/fesm2015/testing.js.map +1 -1
  186. package/fesm2015/text-field.js +2 -2
  187. package/fesm2015/text-field.js.map +1 -1
  188. package/fesm2015/tree.js +46 -45
  189. package/fesm2015/tree.js.map +1 -1
  190. package/layout/breakpoints-observer.d.ts +3 -3
  191. package/overlay/index.metadata.json +1 -1
  192. package/overlay/overlay-config.d.ts +0 -4
  193. package/overlay/overlay-directives.d.ts +1 -0
  194. package/overlay/position/connected-position-strategy.d.ts +1 -3
  195. package/package.json +1 -1
  196. package/platform/index.metadata.json +1 -1
  197. package/portal/index.metadata.json +1 -1
  198. package/portal/portal-injector.d.ts +2 -0
  199. package/schematics/index.js +1 -1
  200. package/schematics/ng-add/index.js +1 -1
  201. package/schematics/ng-update/data/index.js +1 -1
  202. package/schematics/ng-update/public-api.js +1 -1
  203. package/schematics/update-tool/public-api.js +1 -1
  204. package/schematics/utils/index.js +1 -1
  205. package/scrolling/index.metadata.json +1 -1
  206. package/scrolling/scrolling-module.d.ts +3 -0
  207. package/scrolling/virtual-for-of.d.ts +11 -19
  208. package/stepper/index.metadata.json +1 -1
  209. package/stepper/stepper.d.ts +7 -10
  210. package/table/cell.d.ts +21 -1
  211. package/table/coalesced-style-scheduler.d.ts +41 -0
  212. package/table/index.metadata.json +1 -1
  213. package/table/public-api.d.ts +1 -0
  214. package/table/sticky-styler.d.ts +7 -1
  215. package/table/table.d.ts +14 -8
  216. package/testing/protractor/protractor-element.d.ts +2 -2
  217. package/testing/public-api.d.ts +1 -0
  218. package/testing/test-element.d.ts +9 -2
  219. package/testing/testbed/unit-test-element.d.ts +9 -2
  220. package/testing/text-filtering.d.ts +13 -0
  221. package/tree/index.metadata.json +1 -1
  222. package/tree/padding.d.ts +14 -0
  223. package/tree/tree.d.ts +2 -4
@@ -4,232 +4,305 @@
4
4
  (global = global || self, factory((global.ng = global.ng || {}, global.ng.cdk = global.ng.cdk || {}, global.ng.cdk.tree = {}), global.ng.cdk.collections, global.rxjs, global.rxjs.operators, global.ng.core, global.ng.cdk.bidi, global.ng.cdk.coercion, global.ng.cdk.a11y));
5
5
  }(this, (function (exports, collections, rxjs, operators, core, bidi, coercion, a11y) { 'use strict';
6
6
 
7
- /*! *****************************************************************************
8
- Copyright (c) Microsoft Corporation.
9
-
10
- Permission to use, copy, modify, and/or distribute this software for any
11
- purpose with or without fee is hereby granted.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19
- PERFORMANCE OF THIS SOFTWARE.
20
- ***************************************************************************** */
21
- /* global Reflect, Promise */
22
-
23
- var extendStatics = function(d, b) {
24
- extendStatics = Object.setPrototypeOf ||
25
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
26
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
27
- return extendStatics(d, b);
28
- };
29
-
30
- function __extends(d, b) {
31
- extendStatics(d, b);
32
- function __() { this.constructor = d; }
33
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
34
- }
35
-
36
- var __assign = function() {
37
- __assign = Object.assign || function __assign(t) {
38
- for (var s, i = 1, n = arguments.length; i < n; i++) {
39
- s = arguments[i];
40
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
41
- }
42
- return t;
43
- };
44
- return __assign.apply(this, arguments);
45
- };
46
-
47
- function __rest(s, e) {
48
- var t = {};
49
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
50
- t[p] = s[p];
51
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
52
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
53
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
54
- t[p[i]] = s[p[i]];
55
- }
56
- return t;
57
- }
58
-
59
- function __decorate(decorators, target, key, desc) {
60
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
61
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
62
- 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;
63
- return c > 3 && r && Object.defineProperty(target, key, r), r;
64
- }
65
-
66
- function __param(paramIndex, decorator) {
67
- return function (target, key) { decorator(target, key, paramIndex); }
68
- }
69
-
70
- function __metadata(metadataKey, metadataValue) {
71
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
72
- }
73
-
74
- function __awaiter(thisArg, _arguments, P, generator) {
75
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
76
- return new (P || (P = Promise))(function (resolve, reject) {
77
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
78
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
79
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
80
- step((generator = generator.apply(thisArg, _arguments || [])).next());
81
- });
82
- }
83
-
84
- function __generator(thisArg, body) {
85
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
86
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
87
- function verb(n) { return function (v) { return step([n, v]); }; }
88
- function step(op) {
89
- if (f) throw new TypeError("Generator is already executing.");
90
- while (_) try {
91
- 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;
92
- if (y = 0, t) op = [op[0] & 2, t.value];
93
- switch (op[0]) {
94
- case 0: case 1: t = op; break;
95
- case 4: _.label++; return { value: op[1], done: false };
96
- case 5: _.label++; y = op[1]; op = [0]; continue;
97
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
98
- default:
99
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
100
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
101
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
102
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
103
- if (t[2]) _.ops.pop();
104
- _.trys.pop(); continue;
105
- }
106
- op = body.call(thisArg, _);
107
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
108
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
109
- }
110
- }
111
-
112
- var __createBinding = Object.create ? (function(o, m, k, k2) {
113
- if (k2 === undefined) k2 = k;
114
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
115
- }) : (function(o, m, k, k2) {
116
- if (k2 === undefined) k2 = k;
117
- o[k2] = m[k];
118
- });
119
-
120
- function __exportStar(m, exports) {
121
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
122
- }
123
-
124
- function __values(o) {
125
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
126
- if (m) return m.call(o);
127
- if (o && typeof o.length === "number") return {
128
- next: function () {
129
- if (o && i >= o.length) o = void 0;
130
- return { value: o && o[i++], done: !o };
131
- }
132
- };
133
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
134
- }
135
-
136
- function __read(o, n) {
137
- var m = typeof Symbol === "function" && o[Symbol.iterator];
138
- if (!m) return o;
139
- var i = m.call(o), r, ar = [], e;
140
- try {
141
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
142
- }
143
- catch (error) { e = { error: error }; }
144
- finally {
145
- try {
146
- if (r && !r.done && (m = i["return"])) m.call(i);
147
- }
148
- finally { if (e) throw e.error; }
149
- }
150
- return ar;
151
- }
152
-
153
- function __spread() {
154
- for (var ar = [], i = 0; i < arguments.length; i++)
155
- ar = ar.concat(__read(arguments[i]));
156
- return ar;
157
- }
158
-
159
- function __spreadArrays() {
160
- for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
161
- for (var r = Array(s), k = 0, i = 0; i < il; i++)
162
- for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
163
- r[k] = a[j];
164
- return r;
165
- };
166
-
167
- function __await(v) {
168
- return this instanceof __await ? (this.v = v, this) : new __await(v);
169
- }
170
-
171
- function __asyncGenerator(thisArg, _arguments, generator) {
172
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
173
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
174
- return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
175
- 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); }); }; }
176
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
177
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
178
- function fulfill(value) { resume("next", value); }
179
- function reject(value) { resume("throw", value); }
180
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
181
- }
182
-
183
- function __asyncDelegator(o) {
184
- var i, p;
185
- return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
186
- 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; }
187
- }
188
-
189
- function __asyncValues(o) {
190
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
191
- var m = o[Symbol.asyncIterator], i;
192
- 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);
193
- 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); }); }; }
194
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
195
- }
196
-
197
- function __makeTemplateObject(cooked, raw) {
198
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
199
- return cooked;
200
- };
201
-
202
- var __setModuleDefault = Object.create ? (function(o, v) {
203
- Object.defineProperty(o, "default", { enumerable: true, value: v });
204
- }) : function(o, v) {
205
- o["default"] = v;
206
- };
207
-
208
- function __importStar(mod) {
209
- if (mod && mod.__esModule) return mod;
210
- var result = {};
211
- if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
212
- __setModuleDefault(result, mod);
213
- return result;
214
- }
215
-
216
- function __importDefault(mod) {
217
- return (mod && mod.__esModule) ? mod : { default: mod };
218
- }
219
-
220
- function __classPrivateFieldGet(receiver, privateMap) {
221
- if (!privateMap.has(receiver)) {
222
- throw new TypeError("attempted to get private field on non-instance");
223
- }
224
- return privateMap.get(receiver);
225
- }
226
-
227
- function __classPrivateFieldSet(receiver, privateMap, value) {
228
- if (!privateMap.has(receiver)) {
229
- throw new TypeError("attempted to set private field on non-instance");
230
- }
231
- privateMap.set(receiver, value);
232
- return value;
7
+ /*! *****************************************************************************
8
+ Copyright (c) Microsoft Corporation.
9
+
10
+ Permission to use, copy, modify, and/or distribute this software for any
11
+ purpose with or without fee is hereby granted.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19
+ PERFORMANCE OF THIS SOFTWARE.
20
+ ***************************************************************************** */
21
+ /* global Reflect, Promise */
22
+ var extendStatics = function (d, b) {
23
+ extendStatics = Object.setPrototypeOf ||
24
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
25
+ function (d, b) { for (var p in b)
26
+ if (b.hasOwnProperty(p))
27
+ d[p] = b[p]; };
28
+ return extendStatics(d, b);
29
+ };
30
+ function __extends(d, b) {
31
+ extendStatics(d, b);
32
+ function __() { this.constructor = d; }
33
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
34
+ }
35
+ var __assign = function () {
36
+ __assign = Object.assign || function __assign(t) {
37
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
38
+ s = arguments[i];
39
+ for (var p in s)
40
+ if (Object.prototype.hasOwnProperty.call(s, p))
41
+ t[p] = s[p];
42
+ }
43
+ return t;
44
+ };
45
+ return __assign.apply(this, arguments);
46
+ };
47
+ function __rest(s, e) {
48
+ var t = {};
49
+ for (var p in s)
50
+ if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
51
+ t[p] = s[p];
52
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
53
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
54
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
55
+ t[p[i]] = s[p[i]];
56
+ }
57
+ return t;
58
+ }
59
+ function __decorate(decorators, target, key, desc) {
60
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
61
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
62
+ r = Reflect.decorate(decorators, target, key, desc);
63
+ else
64
+ for (var i = decorators.length - 1; i >= 0; i--)
65
+ if (d = decorators[i])
66
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
67
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
68
+ }
69
+ function __param(paramIndex, decorator) {
70
+ return function (target, key) { decorator(target, key, paramIndex); };
71
+ }
72
+ function __metadata(metadataKey, metadataValue) {
73
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
74
+ return Reflect.metadata(metadataKey, metadataValue);
75
+ }
76
+ function __awaiter(thisArg, _arguments, P, generator) {
77
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
78
+ return new (P || (P = Promise))(function (resolve, reject) {
79
+ function fulfilled(value) { try {
80
+ step(generator.next(value));
81
+ }
82
+ catch (e) {
83
+ reject(e);
84
+ } }
85
+ function rejected(value) { try {
86
+ step(generator["throw"](value));
87
+ }
88
+ catch (e) {
89
+ reject(e);
90
+ } }
91
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
92
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
93
+ });
94
+ }
95
+ function __generator(thisArg, body) {
96
+ var _ = { label: 0, sent: function () { if (t[0] & 1)
97
+ throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
98
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
99
+ function verb(n) { return function (v) { return step([n, v]); }; }
100
+ function step(op) {
101
+ if (f)
102
+ throw new TypeError("Generator is already executing.");
103
+ while (_)
104
+ try {
105
+ 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)
106
+ return t;
107
+ if (y = 0, t)
108
+ op = [op[0] & 2, t.value];
109
+ switch (op[0]) {
110
+ case 0:
111
+ case 1:
112
+ t = op;
113
+ break;
114
+ case 4:
115
+ _.label++;
116
+ return { value: op[1], done: false };
117
+ case 5:
118
+ _.label++;
119
+ y = op[1];
120
+ op = [0];
121
+ continue;
122
+ case 7:
123
+ op = _.ops.pop();
124
+ _.trys.pop();
125
+ continue;
126
+ default:
127
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
128
+ _ = 0;
129
+ continue;
130
+ }
131
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
132
+ _.label = op[1];
133
+ break;
134
+ }
135
+ if (op[0] === 6 && _.label < t[1]) {
136
+ _.label = t[1];
137
+ t = op;
138
+ break;
139
+ }
140
+ if (t && _.label < t[2]) {
141
+ _.label = t[2];
142
+ _.ops.push(op);
143
+ break;
144
+ }
145
+ if (t[2])
146
+ _.ops.pop();
147
+ _.trys.pop();
148
+ continue;
149
+ }
150
+ op = body.call(thisArg, _);
151
+ }
152
+ catch (e) {
153
+ op = [6, e];
154
+ y = 0;
155
+ }
156
+ finally {
157
+ f = t = 0;
158
+ }
159
+ if (op[0] & 5)
160
+ throw op[1];
161
+ return { value: op[0] ? op[1] : void 0, done: true };
162
+ }
163
+ }
164
+ var __createBinding = Object.create ? (function (o, m, k, k2) {
165
+ if (k2 === undefined)
166
+ k2 = k;
167
+ Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
168
+ }) : (function (o, m, k, k2) {
169
+ if (k2 === undefined)
170
+ k2 = k;
171
+ o[k2] = m[k];
172
+ });
173
+ function __exportStar(m, exports) {
174
+ for (var p in m)
175
+ if (p !== "default" && !exports.hasOwnProperty(p))
176
+ __createBinding(exports, m, p);
177
+ }
178
+ function __values(o) {
179
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
180
+ if (m)
181
+ return m.call(o);
182
+ if (o && typeof o.length === "number")
183
+ return {
184
+ next: function () {
185
+ if (o && i >= o.length)
186
+ o = void 0;
187
+ return { value: o && o[i++], done: !o };
188
+ }
189
+ };
190
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
191
+ }
192
+ function __read(o, n) {
193
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
194
+ if (!m)
195
+ return o;
196
+ var i = m.call(o), r, ar = [], e;
197
+ try {
198
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
199
+ ar.push(r.value);
200
+ }
201
+ catch (error) {
202
+ e = { error: error };
203
+ }
204
+ finally {
205
+ try {
206
+ if (r && !r.done && (m = i["return"]))
207
+ m.call(i);
208
+ }
209
+ finally {
210
+ if (e)
211
+ throw e.error;
212
+ }
213
+ }
214
+ return ar;
215
+ }
216
+ function __spread() {
217
+ for (var ar = [], i = 0; i < arguments.length; i++)
218
+ ar = ar.concat(__read(arguments[i]));
219
+ return ar;
220
+ }
221
+ function __spreadArrays() {
222
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++)
223
+ s += arguments[i].length;
224
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
225
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
226
+ r[k] = a[j];
227
+ return r;
228
+ }
229
+ ;
230
+ function __await(v) {
231
+ return this instanceof __await ? (this.v = v, this) : new __await(v);
232
+ }
233
+ function __asyncGenerator(thisArg, _arguments, generator) {
234
+ if (!Symbol.asyncIterator)
235
+ throw new TypeError("Symbol.asyncIterator is not defined.");
236
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
237
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
238
+ function verb(n) { if (g[n])
239
+ i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
240
+ function resume(n, v) { try {
241
+ step(g[n](v));
242
+ }
243
+ catch (e) {
244
+ settle(q[0][3], e);
245
+ } }
246
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
247
+ function fulfill(value) { resume("next", value); }
248
+ function reject(value) { resume("throw", value); }
249
+ function settle(f, v) { if (f(v), q.shift(), q.length)
250
+ resume(q[0][0], q[0][1]); }
251
+ }
252
+ function __asyncDelegator(o) {
253
+ var i, p;
254
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
255
+ 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; }
256
+ }
257
+ function __asyncValues(o) {
258
+ if (!Symbol.asyncIterator)
259
+ throw new TypeError("Symbol.asyncIterator is not defined.");
260
+ var m = o[Symbol.asyncIterator], i;
261
+ 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);
262
+ 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); }); }; }
263
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
264
+ }
265
+ function __makeTemplateObject(cooked, raw) {
266
+ if (Object.defineProperty) {
267
+ Object.defineProperty(cooked, "raw", { value: raw });
268
+ }
269
+ else {
270
+ cooked.raw = raw;
271
+ }
272
+ return cooked;
273
+ }
274
+ ;
275
+ var __setModuleDefault = Object.create ? (function (o, v) {
276
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
277
+ }) : function (o, v) {
278
+ o["default"] = v;
279
+ };
280
+ function __importStar(mod) {
281
+ if (mod && mod.__esModule)
282
+ return mod;
283
+ var result = {};
284
+ if (mod != null)
285
+ for (var k in mod)
286
+ if (Object.hasOwnProperty.call(mod, k))
287
+ __createBinding(result, mod, k);
288
+ __setModuleDefault(result, mod);
289
+ return result;
290
+ }
291
+ function __importDefault(mod) {
292
+ return (mod && mod.__esModule) ? mod : { default: mod };
293
+ }
294
+ function __classPrivateFieldGet(receiver, privateMap) {
295
+ if (!privateMap.has(receiver)) {
296
+ throw new TypeError("attempted to get private field on non-instance");
297
+ }
298
+ return privateMap.get(receiver);
299
+ }
300
+ function __classPrivateFieldSet(receiver, privateMap, value) {
301
+ if (!privateMap.has(receiver)) {
302
+ throw new TypeError("attempted to set private field on non-instance");
303
+ }
304
+ privateMap.set(receiver, value);
305
+ return value;
233
306
  }
234
307
 
235
308
  /** Base tree control. It has basic toggle/expand/collapse operations on a single data node. */
@@ -286,13 +359,6 @@
286
359
  return BaseTreeControl;
287
360
  }());
288
361
 
289
- /**
290
- * @license
291
- * Copyright Google LLC All Rights Reserved.
292
- *
293
- * Use of this source code is governed by an MIT-style license that can be
294
- * found in the LICENSE file at https://angular.io/license
295
- */
296
362
  /** Flat tree control. Able to expand/collapse a subtree recursively for flattened tree. */
297
363
  var FlatTreeControl = /** @class */ (function (_super) {
298
364
  __extends(FlatTreeControl, _super);
@@ -364,9 +430,7 @@
364
430
  var _a;
365
431
  var _this = this;
366
432
  this.expansionModel.clear();
367
- var allNodes = this.dataNodes.reduce(function (accumulator, dataNode) {
368
- return __spread(accumulator, _this.getDescendants(dataNode), [dataNode]);
369
- }, []);
433
+ var allNodes = this.dataNodes.reduce(function (accumulator, dataNode) { return __spread(accumulator, _this.getDescendants(dataNode), [dataNode]); }, []);
370
434
  (_a = this.expansionModel).select.apply(_a, __spread(allNodes.map(function (node) { return _this._trackByValue(node); })));
371
435
  };
372
436
  /** Gets a list of descendant dataNodes of a subtree rooted at given data node recursively. */
@@ -431,17 +495,17 @@
431
495
  this.viewContainer = viewContainer;
432
496
  this._node = _node;
433
497
  }
434
- CdkTreeNodeOutlet.decorators = [
435
- { type: core.Directive, args: [{
436
- selector: '[cdkTreeNodeOutlet]'
437
- },] }
438
- ];
439
- CdkTreeNodeOutlet.ctorParameters = function () { return [
440
- { type: core.ViewContainerRef },
441
- { type: undefined, decorators: [{ type: core.Inject, args: [CDK_TREE_NODE_OUTLET_NODE,] }, { type: core.Optional }] }
442
- ]; };
443
498
  return CdkTreeNodeOutlet;
444
499
  }());
500
+ CdkTreeNodeOutlet.decorators = [
501
+ { type: core.Directive, args: [{
502
+ selector: '[cdkTreeNodeOutlet]'
503
+ },] }
504
+ ];
505
+ CdkTreeNodeOutlet.ctorParameters = function () { return [
506
+ { type: core.ViewContainerRef },
507
+ { type: undefined, decorators: [{ type: core.Inject, args: [CDK_TREE_NODE_OUTLET_NODE,] }, { type: core.Optional }] }
508
+ ]; };
445
509
 
446
510
  /**
447
511
  * @license
@@ -466,19 +530,19 @@
466
530
  function CdkTreeNodeDef(template) {
467
531
  this.template = template;
468
532
  }
469
- CdkTreeNodeDef.decorators = [
470
- { type: core.Directive, args: [{
471
- selector: '[cdkTreeNodeDef]',
472
- inputs: [
473
- 'when: cdkTreeNodeDefWhen'
474
- ],
475
- },] }
476
- ];
477
- CdkTreeNodeDef.ctorParameters = function () { return [
478
- { type: core.TemplateRef }
479
- ]; };
480
533
  return CdkTreeNodeDef;
481
534
  }());
535
+ CdkTreeNodeDef.decorators = [
536
+ { type: core.Directive, args: [{
537
+ selector: '[cdkTreeNodeDef]',
538
+ inputs: [
539
+ 'when: cdkTreeNodeDefWhen'
540
+ ],
541
+ },] }
542
+ ];
543
+ CdkTreeNodeDef.ctorParameters = function () { return [
544
+ { type: core.TemplateRef }
545
+ ]; };
482
546
 
483
547
  /**
484
548
  * @license
@@ -560,7 +624,7 @@
560
624
  });
561
625
  CdkTree.prototype.ngOnInit = function () {
562
626
  this._dataDiffer = this._differs.find([]).create(this.trackBy);
563
- if (!this.treeControl) {
627
+ if (!this.treeControl && (typeof ngDevMode === 'undefined' || ngDevMode)) {
564
628
  throw getTreeControlMissingError();
565
629
  }
566
630
  };
@@ -579,7 +643,7 @@
579
643
  };
580
644
  CdkTree.prototype.ngAfterContentChecked = function () {
581
645
  var defaultNodeDefs = this._nodeDefs.filter(function (def) { return !def.when; });
582
- if (defaultNodeDefs.length > 1) {
646
+ if (defaultNodeDefs.length > 1 && (typeof ngDevMode === 'undefined' || ngDevMode)) {
583
647
  throw getTreeMultipleDefaultNodeDefsError();
584
648
  }
585
649
  this._defaultNodeDef = defaultNodeDefs[0];
@@ -628,7 +692,7 @@
628
692
  this._dataSubscription = dataStream.pipe(operators.takeUntil(this._onDestroy))
629
693
  .subscribe(function (data) { return _this.renderNodeChanges(data); });
630
694
  }
631
- else {
695
+ else if (typeof ngDevMode === 'undefined' || ngDevMode) {
632
696
  throw getTreeNoValidDataSourceError();
633
697
  }
634
698
  };
@@ -667,7 +731,7 @@
667
731
  return this._nodeDefs.first;
668
732
  }
669
733
  var nodeDef = this._nodeDefs.find(function (def) { return def.when && def.when(i, data); }) || this._defaultNodeDef;
670
- if (!nodeDef) {
734
+ if (!nodeDef && (typeof ngDevMode === 'undefined' || ngDevMode)) {
671
735
  throw getTreeMissingMatchingNodeDefError();
672
736
  }
673
737
  return nodeDef;
@@ -702,40 +766,40 @@
702
766
  CdkTreeNode.mostRecentTreeNode.data = nodeData;
703
767
  }
704
768
  };
705
- CdkTree.decorators = [
706
- { type: core.Component, args: [{
707
- selector: 'cdk-tree',
708
- exportAs: 'cdkTree',
709
- template: "<ng-container cdkTreeNodeOutlet></ng-container>",
710
- host: {
711
- 'class': 'cdk-tree',
712
- 'role': 'tree',
713
- },
714
- encapsulation: core.ViewEncapsulation.None,
715
- // The "OnPush" status for the `CdkTree` component is effectively a noop, so we are removing it.
716
- // The view for `CdkTree` consists entirely of templates declared in other views. As they are
717
- // declared elsewhere, they are checked when their declaration points are checked.
718
- // tslint:disable-next-line:validate-decorators
719
- changeDetection: core.ChangeDetectionStrategy.Default
720
- },] }
721
- ];
722
- CdkTree.ctorParameters = function () { return [
723
- { type: core.IterableDiffers },
724
- { type: core.ChangeDetectorRef }
725
- ]; };
726
- CdkTree.propDecorators = {
727
- dataSource: [{ type: core.Input }],
728
- treeControl: [{ type: core.Input }],
729
- trackBy: [{ type: core.Input }],
730
- _nodeOutlet: [{ type: core.ViewChild, args: [CdkTreeNodeOutlet, { static: true },] }],
731
- _nodeDefs: [{ type: core.ContentChildren, args: [CdkTreeNodeDef, {
732
- // We need to use `descendants: true`, because Ivy will no longer match
733
- // indirect descendants if it's left as false.
734
- descendants: true
735
- },] }]
736
- };
737
769
  return CdkTree;
738
770
  }());
771
+ CdkTree.decorators = [
772
+ { type: core.Component, args: [{
773
+ selector: 'cdk-tree',
774
+ exportAs: 'cdkTree',
775
+ template: "<ng-container cdkTreeNodeOutlet></ng-container>",
776
+ host: {
777
+ 'class': 'cdk-tree',
778
+ 'role': 'tree',
779
+ },
780
+ encapsulation: core.ViewEncapsulation.None,
781
+ // The "OnPush" status for the `CdkTree` component is effectively a noop, so we are removing it.
782
+ // The view for `CdkTree` consists entirely of templates declared in other views. As they are
783
+ // declared elsewhere, they are checked when their declaration points are checked.
784
+ // tslint:disable-next-line:validate-decorators
785
+ changeDetection: core.ChangeDetectionStrategy.Default
786
+ },] }
787
+ ];
788
+ CdkTree.ctorParameters = function () { return [
789
+ { type: core.IterableDiffers },
790
+ { type: core.ChangeDetectorRef }
791
+ ]; };
792
+ CdkTree.propDecorators = {
793
+ dataSource: [{ type: core.Input }],
794
+ treeControl: [{ type: core.Input }],
795
+ trackBy: [{ type: core.Input }],
796
+ _nodeOutlet: [{ type: core.ViewChild, args: [CdkTreeNodeOutlet, { static: true },] }],
797
+ _nodeDefs: [{ type: core.ContentChildren, args: [CdkTreeNodeDef, {
798
+ // We need to use `descendants: true`, because Ivy will no longer match
799
+ // indirect descendants if it's left as false.
800
+ descendants: true
801
+ },] }]
802
+ };
739
803
  /**
740
804
  * Tree node for CdkTree. It contains the data in the tree node.
741
805
  */
@@ -748,9 +812,9 @@
748
812
  /** Emits when the node's data has changed. */
749
813
  this._dataChanges = new rxjs.Subject();
750
814
  /**
751
- * The role of the node should be 'group' if it's an internal node,
752
- * and 'treeitem' if it's a leaf node.
815
+ * The role of the node should always be 'treeitem'.
753
816
  */
817
+ // TODO: mark as deprecated
754
818
  this.role = 'treeitem';
755
819
  CdkTreeNode.mostRecentTreeNode = this;
756
820
  }
@@ -795,54 +859,40 @@
795
859
  CdkTreeNode.prototype.focus = function () {
796
860
  this._elementRef.nativeElement.focus();
797
861
  };
862
+ // TODO: role should eventually just be set in the component host
798
863
  CdkTreeNode.prototype._setRoleFromData = function () {
799
- var _this = this;
800
- if (this._tree.treeControl.isExpandable) {
801
- this.role = this._tree.treeControl.isExpandable(this._data) ? 'group' : 'treeitem';
802
- }
803
- else {
804
- if (!this._tree.treeControl.getChildren) {
805
- throw getTreeControlFunctionsMissingError();
806
- }
807
- var childrenNodes = this._tree.treeControl.getChildren(this._data);
808
- if (Array.isArray(childrenNodes)) {
809
- this._setRoleFromChildren(childrenNodes);
810
- }
811
- else if (rxjs.isObservable(childrenNodes)) {
812
- childrenNodes.pipe(operators.takeUntil(this._destroyed))
813
- .subscribe(function (children) { return _this._setRoleFromChildren(children); });
814
- }
864
+ if (!this._tree.treeControl.isExpandable && !this._tree.treeControl.getChildren &&
865
+ (typeof ngDevMode === 'undefined' || ngDevMode)) {
866
+ throw getTreeControlFunctionsMissingError();
815
867
  }
816
- };
817
- CdkTreeNode.prototype._setRoleFromChildren = function (children) {
818
- this.role = children && children.length ? 'group' : 'treeitem';
819
- };
820
- /**
821
- * The most recently created `CdkTreeNode`. We save it in static variable so we can retrieve it
822
- * in `CdkTree` and set the data to it.
823
- */
824
- CdkTreeNode.mostRecentTreeNode = null;
825
- CdkTreeNode.decorators = [
826
- { type: core.Directive, args: [{
827
- selector: 'cdk-tree-node',
828
- exportAs: 'cdkTreeNode',
829
- host: {
830
- '[attr.aria-expanded]': 'isExpanded',
831
- '[attr.aria-level]': 'role === "treeitem" ? level : null',
832
- '[attr.role]': 'role',
833
- 'class': 'cdk-tree-node',
834
- },
835
- },] }
836
- ];
837
- CdkTreeNode.ctorParameters = function () { return [
838
- { type: core.ElementRef },
839
- { type: CdkTree }
840
- ]; };
841
- CdkTreeNode.propDecorators = {
842
- role: [{ type: core.Input }]
868
+ this.role = 'treeitem';
843
869
  };
844
870
  return CdkTreeNode;
845
871
  }());
872
+ /**
873
+ * The most recently created `CdkTreeNode`. We save it in static variable so we can retrieve it
874
+ * in `CdkTree` and set the data to it.
875
+ */
876
+ CdkTreeNode.mostRecentTreeNode = null;
877
+ CdkTreeNode.decorators = [
878
+ { type: core.Directive, args: [{
879
+ selector: 'cdk-tree-node',
880
+ exportAs: 'cdkTreeNode',
881
+ host: {
882
+ '[attr.aria-expanded]': 'isExpanded',
883
+ '[attr.aria-level]': 'level + 1',
884
+ '[attr.role]': 'role',
885
+ 'class': 'cdk-tree-node',
886
+ },
887
+ },] }
888
+ ];
889
+ CdkTreeNode.ctorParameters = function () { return [
890
+ { type: core.ElementRef },
891
+ { type: CdkTree }
892
+ ]; };
893
+ CdkTreeNode.propDecorators = {
894
+ role: [{ type: core.Input }]
895
+ };
846
896
 
847
897
  /**
848
898
  * Nested node is a child of `<cdk-tree>`. It works with nested tree.
@@ -862,7 +912,7 @@
862
912
  CdkNestedTreeNode.prototype.ngAfterContentInit = function () {
863
913
  var _this = this;
864
914
  this._dataDiffer = this._differs.find([]).create(this._tree.trackBy);
865
- if (!this._tree.treeControl.getChildren) {
915
+ if (!this._tree.treeControl.getChildren && (typeof ngDevMode === 'undefined' || ngDevMode)) {
866
916
  throw getTreeControlFunctionsMissingError();
867
917
  }
868
918
  var childrenNodes = this._tree.treeControl.getChildren(this.data);
@@ -911,35 +961,35 @@
911
961
  // that we don't pick up the outlet of a child node by accident.
912
962
  return outlets && outlets.find(function (outlet) { return !outlet._node || outlet._node === _this; });
913
963
  };
914
- CdkNestedTreeNode.decorators = [
915
- { type: core.Directive, args: [{
916
- selector: 'cdk-nested-tree-node',
917
- exportAs: 'cdkNestedTreeNode',
918
- host: {
919
- '[attr.aria-expanded]': 'isExpanded',
920
- '[attr.role]': 'role',
921
- 'class': 'cdk-tree-node cdk-nested-tree-node',
922
- },
923
- providers: [
924
- { provide: CdkTreeNode, useExisting: CdkNestedTreeNode },
925
- { provide: CDK_TREE_NODE_OUTLET_NODE, useExisting: CdkNestedTreeNode }
926
- ]
927
- },] }
928
- ];
929
- CdkNestedTreeNode.ctorParameters = function () { return [
930
- { type: core.ElementRef },
931
- { type: CdkTree },
932
- { type: core.IterableDiffers }
933
- ]; };
934
- CdkNestedTreeNode.propDecorators = {
935
- nodeOutlet: [{ type: core.ContentChildren, args: [CdkTreeNodeOutlet, {
936
- // We need to use `descendants: true`, because Ivy will no longer match
937
- // indirect descendants if it's left as false.
938
- descendants: true
939
- },] }]
940
- };
941
964
  return CdkNestedTreeNode;
942
965
  }(CdkTreeNode));
966
+ CdkNestedTreeNode.decorators = [
967
+ { type: core.Directive, args: [{
968
+ selector: 'cdk-nested-tree-node',
969
+ exportAs: 'cdkNestedTreeNode',
970
+ host: {
971
+ '[attr.aria-expanded]': 'isExpanded',
972
+ '[attr.role]': 'role',
973
+ 'class': 'cdk-tree-node cdk-nested-tree-node',
974
+ },
975
+ providers: [
976
+ { provide: CdkTreeNode, useExisting: CdkNestedTreeNode },
977
+ { provide: CDK_TREE_NODE_OUTLET_NODE, useExisting: CdkNestedTreeNode }
978
+ ]
979
+ },] }
980
+ ];
981
+ CdkNestedTreeNode.ctorParameters = function () { return [
982
+ { type: core.ElementRef },
983
+ { type: CdkTree },
984
+ { type: core.IterableDiffers }
985
+ ]; };
986
+ CdkNestedTreeNode.propDecorators = {
987
+ nodeOutlet: [{ type: core.ContentChildren, args: [CdkTreeNodeOutlet, {
988
+ // We need to use `descendants: true`, because Ivy will no longer match
989
+ // indirect descendants if it's left as false.
990
+ descendants: true
991
+ },] }]
992
+ };
943
993
 
944
994
  /**
945
995
  * @license
@@ -983,13 +1033,7 @@
983
1033
  Object.defineProperty(CdkTreeNodePadding.prototype, "level", {
984
1034
  /** The level of depth of the tree node. The padding will be `level * indent` pixels. */
985
1035
  get: function () { return this._level; },
986
- set: function (value) {
987
- // Set to null as the fallback value so that _setPadding can fall back to the node level if the
988
- // consumer set the directive as `cdkTreeNodePadding=""`. We still want to take this value if
989
- // they set 0 explicitly.
990
- this._level = coercion.coerceNumberProperty(value, null);
991
- this._setPadding();
992
- },
1036
+ set: function (value) { this._setLevelInput(value); },
993
1037
  enumerable: false,
994
1038
  configurable: true
995
1039
  });
@@ -999,18 +1043,7 @@
999
1043
  * Default number 40px from material design menu sub-menu spec.
1000
1044
  */
1001
1045
  get: function () { return this._indent; },
1002
- set: function (indent) {
1003
- var value = indent;
1004
- var units = 'px';
1005
- if (typeof indent === 'string') {
1006
- var parts = indent.split(cssUnitPattern);
1007
- value = parts[0];
1008
- units = parts[1] || units;
1009
- }
1010
- this.indentUnits = units;
1011
- this._indent = coercion.coerceNumberProperty(value);
1012
- this._setPadding();
1013
- },
1046
+ set: function (indent) { this._setIndentInput(indent); },
1014
1047
  enumerable: false,
1015
1048
  configurable: true
1016
1049
  });
@@ -1038,24 +1071,55 @@
1038
1071
  this._currentPadding = padding;
1039
1072
  }
1040
1073
  };
1041
- CdkTreeNodePadding.decorators = [
1042
- { type: core.Directive, args: [{
1043
- selector: '[cdkTreeNodePadding]',
1044
- },] }
1045
- ];
1046
- CdkTreeNodePadding.ctorParameters = function () { return [
1047
- { type: CdkTreeNode },
1048
- { type: CdkTree },
1049
- { type: core.Renderer2 },
1050
- { type: core.ElementRef },
1051
- { type: bidi.Directionality, decorators: [{ type: core.Optional }] }
1052
- ]; };
1053
- CdkTreeNodePadding.propDecorators = {
1054
- level: [{ type: core.Input, args: ['cdkTreeNodePadding',] }],
1055
- indent: [{ type: core.Input, args: ['cdkTreeNodePaddingIndent',] }]
1074
+ /**
1075
+ * This has been extracted to a util because of TS 4 and VE.
1076
+ * View Engine doesn't support property rename inheritance.
1077
+ * TS 4.0 doesn't allow properties to override accessors or vice-versa.
1078
+ * @docs-private
1079
+ */
1080
+ CdkTreeNodePadding.prototype._setLevelInput = function (value) {
1081
+ // Set to null as the fallback value so that _setPadding can fall back to the node level if the
1082
+ // consumer set the directive as `cdkTreeNodePadding=""`. We still want to take this value if
1083
+ // they set 0 explicitly.
1084
+ this._level = coercion.coerceNumberProperty(value, null);
1085
+ this._setPadding();
1086
+ };
1087
+ /**
1088
+ * This has been extracted to a util because of TS 4 and VE.
1089
+ * View Engine doesn't support property rename inheritance.
1090
+ * TS 4.0 doesn't allow properties to override accessors or vice-versa.
1091
+ * @docs-private
1092
+ */
1093
+ CdkTreeNodePadding.prototype._setIndentInput = function (indent) {
1094
+ var value = indent;
1095
+ var units = 'px';
1096
+ if (typeof indent === 'string') {
1097
+ var parts = indent.split(cssUnitPattern);
1098
+ value = parts[0];
1099
+ units = parts[1] || units;
1100
+ }
1101
+ this.indentUnits = units;
1102
+ this._indent = coercion.coerceNumberProperty(value);
1103
+ this._setPadding();
1056
1104
  };
1057
1105
  return CdkTreeNodePadding;
1058
1106
  }());
1107
+ CdkTreeNodePadding.decorators = [
1108
+ { type: core.Directive, args: [{
1109
+ selector: '[cdkTreeNodePadding]',
1110
+ },] }
1111
+ ];
1112
+ CdkTreeNodePadding.ctorParameters = function () { return [
1113
+ { type: CdkTreeNode },
1114
+ { type: CdkTree },
1115
+ { type: core.Renderer2 },
1116
+ { type: core.ElementRef },
1117
+ { type: bidi.Directionality, decorators: [{ type: core.Optional }] }
1118
+ ]; };
1119
+ CdkTreeNodePadding.propDecorators = {
1120
+ level: [{ type: core.Input, args: ['cdkTreeNodePadding',] }],
1121
+ indent: [{ type: core.Input, args: ['cdkTreeNodePaddingIndent',] }]
1122
+ };
1059
1123
 
1060
1124
  /**
1061
1125
  * @license
@@ -1091,19 +1155,19 @@
1091
1155
  : this._tree.treeControl.toggle(this._treeNode.data);
1092
1156
  event.stopPropagation();
1093
1157
  };
1094
- CdkTreeNodeToggle.decorators = [
1095
- { type: core.Directive, args: [{ selector: '[cdkTreeNodeToggle]' },] }
1096
- ];
1097
- CdkTreeNodeToggle.ctorParameters = function () { return [
1098
- { type: CdkTree },
1099
- { type: CdkTreeNode }
1100
- ]; };
1101
- CdkTreeNodeToggle.propDecorators = {
1102
- recursive: [{ type: core.Input, args: ['cdkTreeNodeToggleRecursive',] }],
1103
- _toggle: [{ type: core.HostListener, args: ['click', ['$event'],] }]
1104
- };
1105
1158
  return CdkTreeNodeToggle;
1106
1159
  }());
1160
+ CdkTreeNodeToggle.decorators = [
1161
+ { type: core.Directive, args: [{ selector: '[cdkTreeNodeToggle]' },] }
1162
+ ];
1163
+ CdkTreeNodeToggle.ctorParameters = function () { return [
1164
+ { type: CdkTree },
1165
+ { type: CdkTreeNode }
1166
+ ]; };
1167
+ CdkTreeNodeToggle.propDecorators = {
1168
+ recursive: [{ type: core.Input, args: ['cdkTreeNodeToggleRecursive',] }],
1169
+ _toggle: [{ type: core.HostListener, args: ['click', ['$event'],] }]
1170
+ };
1107
1171
 
1108
1172
  /**
1109
1173
  * @license
@@ -1124,15 +1188,15 @@
1124
1188
  var CdkTreeModule = /** @class */ (function () {
1125
1189
  function CdkTreeModule() {
1126
1190
  }
1127
- CdkTreeModule.decorators = [
1128
- { type: core.NgModule, args: [{
1129
- exports: EXPORTED_DECLARATIONS,
1130
- declarations: EXPORTED_DECLARATIONS,
1131
- providers: [a11y.FocusMonitor, CdkTreeNodeDef]
1132
- },] }
1133
- ];
1134
1191
  return CdkTreeModule;
1135
1192
  }());
1193
+ CdkTreeModule.decorators = [
1194
+ { type: core.NgModule, args: [{
1195
+ exports: EXPORTED_DECLARATIONS,
1196
+ declarations: EXPORTED_DECLARATIONS,
1197
+ providers: [a11y.FocusMonitor, CdkTreeNodeDef]
1198
+ },] }
1199
+ ];
1136
1200
 
1137
1201
  /**
1138
1202
  * @license