@angular/cdk 8.0.0-beta.2 → 8.0.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 (219) hide show
  1. package/README.md +2 -2
  2. package/_overlay.scss +4 -4
  3. package/bundles/cdk-a11y.umd.js +227 -79
  4. package/bundles/cdk-a11y.umd.js.map +1 -1
  5. package/bundles/cdk-a11y.umd.min.js +1 -1
  6. package/bundles/cdk-a11y.umd.min.js.map +1 -1
  7. package/bundles/cdk-accordion.umd.js +20 -8
  8. package/bundles/cdk-accordion.umd.js.map +1 -1
  9. package/bundles/cdk-accordion.umd.min.js.map +1 -1
  10. package/bundles/cdk-bidi.umd.js +5 -5
  11. package/bundles/cdk-bidi.umd.min.js +1 -1
  12. package/bundles/cdk-bidi.umd.min.js.map +1 -1
  13. package/bundles/cdk-coercion.umd.js +5 -5
  14. package/bundles/cdk-collections.umd.js +38 -15
  15. package/bundles/cdk-collections.umd.js.map +1 -1
  16. package/bundles/cdk-collections.umd.min.js +1 -1
  17. package/bundles/cdk-collections.umd.min.js.map +1 -1
  18. package/bundles/cdk-drag-drop.umd.js +571 -180
  19. package/bundles/cdk-drag-drop.umd.js.map +1 -1
  20. package/bundles/cdk-drag-drop.umd.min.js +2 -2
  21. package/bundles/cdk-drag-drop.umd.min.js.map +1 -1
  22. package/bundles/cdk-keycodes.umd.js +7 -3
  23. package/bundles/cdk-keycodes.umd.js.map +1 -1
  24. package/bundles/cdk-keycodes.umd.min.js.map +1 -1
  25. package/bundles/cdk-layout.umd.js +83 -30
  26. package/bundles/cdk-layout.umd.js.map +1 -1
  27. package/bundles/cdk-layout.umd.min.js +1 -1
  28. package/bundles/cdk-layout.umd.min.js.map +1 -1
  29. package/bundles/cdk-observers.umd.js +30 -11
  30. package/bundles/cdk-observers.umd.js.map +1 -1
  31. package/bundles/cdk-observers.umd.min.js +1 -1
  32. package/bundles/cdk-observers.umd.min.js.map +1 -1
  33. package/bundles/cdk-overlay.umd.js +229 -108
  34. package/bundles/cdk-overlay.umd.js.map +1 -1
  35. package/bundles/cdk-overlay.umd.min.js +2 -2
  36. package/bundles/cdk-overlay.umd.min.js.map +1 -1
  37. package/bundles/cdk-platform.umd.js +17 -10
  38. package/bundles/cdk-platform.umd.js.map +1 -1
  39. package/bundles/cdk-platform.umd.min.js +1 -1
  40. package/bundles/cdk-platform.umd.min.js.map +1 -1
  41. package/bundles/cdk-portal.umd.js +32 -13
  42. package/bundles/cdk-portal.umd.js.map +1 -1
  43. package/bundles/cdk-portal.umd.min.js.map +1 -1
  44. package/bundles/cdk-scrolling.umd.js +184 -62
  45. package/bundles/cdk-scrolling.umd.js.map +1 -1
  46. package/bundles/cdk-scrolling.umd.min.js +1 -1
  47. package/bundles/cdk-scrolling.umd.min.js.map +1 -1
  48. package/bundles/cdk-stepper.umd.js +30 -12
  49. package/bundles/cdk-stepper.umd.js.map +1 -1
  50. package/bundles/cdk-stepper.umd.min.js.map +1 -1
  51. package/bundles/cdk-table.umd.js +384 -74
  52. package/bundles/cdk-table.umd.js.map +1 -1
  53. package/bundles/cdk-table.umd.min.js +1 -1
  54. package/bundles/cdk-table.umd.min.js.map +1 -1
  55. package/bundles/cdk-text-field.umd.js +61 -21
  56. package/bundles/cdk-text-field.umd.js.map +1 -1
  57. package/bundles/cdk-text-field.umd.min.js +1 -1
  58. package/bundles/cdk-text-field.umd.min.js.map +1 -1
  59. package/bundles/cdk-tree.umd.js +85 -29
  60. package/bundles/cdk-tree.umd.js.map +1 -1
  61. package/bundles/cdk-tree.umd.min.js.map +1 -1
  62. package/bundles/cdk.umd.js +2 -2
  63. package/bundles/cdk.umd.js.map +1 -1
  64. package/bundles/cdk.umd.min.js +1 -1
  65. package/bundles/cdk.umd.min.js.map +1 -1
  66. package/drag-drop/typings/directives/drag.d.ts +11 -2
  67. package/drag-drop/typings/drag-events.d.ts +17 -0
  68. package/drag-drop/typings/drag-ref.d.ts +9 -5
  69. package/drag-drop/typings/drop-list-ref.d.ts +9 -3
  70. package/drag-drop/typings/index.metadata.json +1 -1
  71. package/esm2015/a11y.js +229 -81
  72. package/esm2015/a11y.js.map +1 -1
  73. package/esm2015/accordion.js +22 -10
  74. package/esm2015/accordion.js.map +1 -1
  75. package/esm2015/bidi.js +8 -8
  76. package/esm2015/cdk.js +4 -4
  77. package/esm2015/cdk.js.map +1 -1
  78. package/esm2015/coercion.js +7 -7
  79. package/esm2015/collections.js +41 -18
  80. package/esm2015/collections.js.map +1 -1
  81. package/esm2015/drag-drop.js +540 -181
  82. package/esm2015/drag-drop.js.map +1 -1
  83. package/esm2015/keycodes.js +9 -5
  84. package/esm2015/keycodes.js.map +1 -1
  85. package/esm2015/layout.js +89 -36
  86. package/esm2015/layout.js.map +1 -1
  87. package/esm2015/observers.js +33 -14
  88. package/esm2015/observers.js.map +1 -1
  89. package/esm2015/overlay.js +232 -110
  90. package/esm2015/overlay.js.map +1 -1
  91. package/esm2015/platform.js +20 -13
  92. package/esm2015/platform.js.map +1 -1
  93. package/esm2015/portal.js +34 -15
  94. package/esm2015/portal.js.map +1 -1
  95. package/esm2015/scrolling.js +180 -58
  96. package/esm2015/scrolling.js.map +1 -1
  97. package/esm2015/stepper.js +32 -14
  98. package/esm2015/stepper.js.map +1 -1
  99. package/esm2015/table.js +369 -69
  100. package/esm2015/table.js.map +1 -1
  101. package/esm2015/text-field.js +64 -24
  102. package/esm2015/text-field.js.map +1 -1
  103. package/esm2015/tree.js +86 -30
  104. package/esm2015/tree.js.map +1 -1
  105. package/esm5/a11y.es5.js +230 -82
  106. package/esm5/a11y.es5.js.map +1 -1
  107. package/esm5/accordion.es5.js +22 -10
  108. package/esm5/accordion.es5.js.map +1 -1
  109. package/esm5/bidi.es5.js +8 -8
  110. package/esm5/cdk.es5.js +4 -4
  111. package/esm5/cdk.es5.js.map +1 -1
  112. package/esm5/coercion.es5.js +7 -7
  113. package/esm5/collections.es5.js +42 -19
  114. package/esm5/collections.es5.js.map +1 -1
  115. package/esm5/drag-drop.es5.js +574 -183
  116. package/esm5/drag-drop.es5.js.map +1 -1
  117. package/esm5/keycodes.es5.js +9 -5
  118. package/esm5/keycodes.es5.js.map +1 -1
  119. package/esm5/layout.es5.js +86 -33
  120. package/esm5/layout.es5.js.map +1 -1
  121. package/esm5/observers.es5.js +33 -14
  122. package/esm5/observers.es5.js.map +1 -1
  123. package/esm5/overlay.es5.js +232 -111
  124. package/esm5/overlay.es5.js.map +1 -1
  125. package/esm5/platform.es5.js +20 -13
  126. package/esm5/platform.es5.js.map +1 -1
  127. package/esm5/portal.es5.js +34 -15
  128. package/esm5/portal.es5.js.map +1 -1
  129. package/esm5/scrolling.es5.js +187 -65
  130. package/esm5/scrolling.es5.js.map +1 -1
  131. package/esm5/stepper.es5.js +32 -14
  132. package/esm5/stepper.es5.js.map +1 -1
  133. package/esm5/table.es5.js +386 -72
  134. package/esm5/table.es5.js.map +1 -1
  135. package/esm5/text-field.es5.js +64 -24
  136. package/esm5/text-field.es5.js.map +1 -1
  137. package/esm5/tree.es5.js +87 -31
  138. package/esm5/tree.es5.js.map +1 -1
  139. package/layout/typings/breakpoints-observer.d.ts +3 -3
  140. package/layout/typings/index.metadata.json +1 -1
  141. package/layout/typings/media-matcher.d.ts +2 -2
  142. package/overlay/typings/index.metadata.json +1 -1
  143. package/overlay/typings/position/flexible-connected-position-strategy.d.ts +1 -3
  144. package/package.json +8 -8
  145. package/portal/typings/portal.d.ts +2 -2
  146. package/schematics/ng-update/data/attribute-selectors.js +1 -1
  147. package/schematics/ng-update/data/attribute-selectors.js.map +1 -1
  148. package/schematics/ng-update/data/class-names.js +3 -3
  149. package/schematics/ng-update/data/class-names.js.map +1 -1
  150. package/schematics/ng-update/data/constructor-checks.js +1 -1
  151. package/schematics/ng-update/data/constructor-checks.js.map +1 -1
  152. package/schematics/ng-update/data/input-names.js +1 -1
  153. package/schematics/ng-update/data/input-names.js.map +1 -1
  154. package/schematics/ng-update/data/method-call-checks.js +1 -1
  155. package/schematics/ng-update/data/method-call-checks.js.map +1 -1
  156. package/schematics/ng-update/data/property-names.js +4 -4
  157. package/schematics/ng-update/data/property-names.js.map +1 -1
  158. package/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.js +1 -1
  159. package/schematics/ng-update/upgrade-rules/signature-check/constructorSignatureCheckRule.js.map +1 -1
  160. package/schematics/tsconfig.tsbuildinfo +5811 -0
  161. package/schematics/utils/ast.d.ts +1 -1
  162. package/schematics/utils/build-component.js +1 -1
  163. package/schematics/utils/build-component.js.map +1 -1
  164. package/schematics/utils/get-project.d.ts +1 -1
  165. package/schematics/utils/project-main-file.d.ts +1 -1
  166. package/schematics/utils/project-style-file.d.ts +1 -1
  167. package/schematics/utils/project-targets.d.ts +1 -1
  168. package/schematics/utils/schematic-options.d.ts +1 -1
  169. package/table/typings/cell.d.ts +3 -2
  170. package/table/typings/index.metadata.json +1 -1
  171. package/table/typings/public-api.d.ts +1 -0
  172. package/table/typings/row.d.ts +5 -4
  173. package/table/typings/sticky-styler.d.ts +5 -5
  174. package/table/typings/table-errors.d.ts +10 -0
  175. package/table/typings/text-column.d.ts +80 -0
  176. package/typings/drag-drop/directives/drag.d.ts +11 -2
  177. package/typings/drag-drop/drag-events.d.ts +17 -0
  178. package/typings/drag-drop/drag-ref.d.ts +9 -5
  179. package/typings/drag-drop/drop-list-ref.d.ts +9 -3
  180. package/typings/drag-drop/index.metadata.json +1 -1
  181. package/typings/esm5/drag-drop/directives/drag.d.ts +11 -2
  182. package/typings/esm5/drag-drop/drag-events.d.ts +17 -0
  183. package/typings/esm5/drag-drop/drag-ref.d.ts +9 -5
  184. package/typings/esm5/drag-drop/drop-list-ref.d.ts +9 -3
  185. package/typings/esm5/drag-drop/index.metadata.json +1 -1
  186. package/typings/esm5/index.metadata.json +1 -1
  187. package/typings/esm5/layout/breakpoints-observer.d.ts +3 -3
  188. package/typings/esm5/layout/index.metadata.json +1 -1
  189. package/typings/esm5/layout/media-matcher.d.ts +2 -2
  190. package/typings/esm5/overlay/index.metadata.json +1 -1
  191. package/typings/esm5/overlay/position/flexible-connected-position-strategy.d.ts +1 -3
  192. package/typings/esm5/portal/portal.d.ts +2 -2
  193. package/typings/esm5/table/cell.d.ts +3 -2
  194. package/typings/esm5/table/index.metadata.json +1 -1
  195. package/typings/esm5/table/public-api.d.ts +1 -0
  196. package/typings/esm5/table/row.d.ts +5 -4
  197. package/typings/esm5/table/sticky-styler.d.ts +5 -5
  198. package/typings/esm5/table/table-errors.d.ts +10 -0
  199. package/typings/esm5/table/text-column.d.ts +80 -0
  200. package/typings/index.metadata.json +1 -1
  201. package/typings/layout/breakpoints-observer.d.ts +3 -3
  202. package/typings/layout/index.metadata.json +1 -1
  203. package/typings/layout/media-matcher.d.ts +2 -2
  204. package/typings/overlay/index.metadata.json +1 -1
  205. package/typings/overlay/position/flexible-connected-position-strategy.d.ts +1 -3
  206. package/typings/portal/portal.d.ts +2 -2
  207. package/typings/schematics/utils/ast.d.ts +1 -1
  208. package/typings/schematics/utils/get-project.d.ts +1 -1
  209. package/typings/schematics/utils/project-main-file.d.ts +1 -1
  210. package/typings/schematics/utils/project-style-file.d.ts +1 -1
  211. package/typings/schematics/utils/project-targets.d.ts +1 -1
  212. package/typings/schematics/utils/schematic-options.d.ts +1 -1
  213. package/typings/table/cell.d.ts +3 -2
  214. package/typings/table/index.metadata.json +1 -1
  215. package/typings/table/public-api.d.ts +1 -0
  216. package/typings/table/row.d.ts +5 -4
  217. package/typings/table/sticky-styler.d.ts +5 -5
  218. package/typings/table/table-errors.d.ts +10 -0
  219. package/typings/table/text-column.d.ts +80 -0
@@ -13,7 +13,7 @@
13
13
 
14
14
  /**
15
15
  * @fileoverview added by tsickle
16
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
17
17
  */
18
18
  /**
19
19
  * Used to generate unique ID for each accordion.
@@ -127,7 +127,7 @@ var CdkAccordion = /** @class */ (function () {
127
127
 
128
128
  /**
129
129
  * @fileoverview added by tsickle
130
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
130
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
131
131
  */
132
132
  /**
133
133
  * Used to generate unique ID for each accordion item.
@@ -176,14 +176,22 @@ var CdkAccordionItem = /** @class */ (function () {
176
176
  /**
177
177
  * Unregister function for _expansionDispatcher.
178
178
  */
179
- this._removeUniqueSelectionListener = function () { };
179
+ this._removeUniqueSelectionListener = (/**
180
+ * @return {?}
181
+ */
182
+ function () { });
180
183
  this._removeUniqueSelectionListener =
181
- _expansionDispatcher.listen(function (id, accordionId) {
184
+ _expansionDispatcher.listen((/**
185
+ * @param {?} id
186
+ * @param {?} accordionId
187
+ * @return {?}
188
+ */
189
+ function (id, accordionId) {
182
190
  if (_this.accordion && !_this.accordion.multi &&
183
191
  _this.accordion.id === accordionId && _this.id !== id) {
184
192
  _this.expanded = false;
185
193
  }
186
- });
194
+ }));
187
195
  // When an accordion item is hosted in an accordion, subscribe to open/close events.
188
196
  if (this.accordion) {
189
197
  this._openCloseAllSubscription = this._subscribeToOpenCloseAllActions();
@@ -311,12 +319,16 @@ var CdkAccordionItem = /** @class */ (function () {
311
319
  */
312
320
  function () {
313
321
  var _this = this;
314
- return this.accordion._openCloseAllActions.subscribe(function (expanded) {
322
+ return this.accordion._openCloseAllActions.subscribe((/**
323
+ * @param {?} expanded
324
+ * @return {?}
325
+ */
326
+ function (expanded) {
315
327
  // Only change expanded state if item is enabled
316
328
  if (!_this.disabled) {
317
329
  _this.expanded = expanded;
318
330
  }
319
- });
331
+ }));
320
332
  };
321
333
  CdkAccordionItem.decorators = [
322
334
  { type: core.Directive, args: [{
@@ -348,7 +360,7 @@ var CdkAccordionItem = /** @class */ (function () {
348
360
 
349
361
  /**
350
362
  * @fileoverview added by tsickle
351
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
363
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
352
364
  */
353
365
  var CdkAccordionModule = /** @class */ (function () {
354
366
  function CdkAccordionModule() {
@@ -1 +1 @@
1
- {"version":3,"file":"cdk-accordion.umd.js","sources":["../../src/cdk/accordion/accordion-module.ts","../../src/cdk/accordion/accordion-item.ts","../../src/cdk/accordion/accordion.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {CdkAccordion} from './accordion';\nimport {CdkAccordionItem} from './accordion-item';\n\n\n@NgModule({\n exports: [CdkAccordion, CdkAccordionItem],\n declarations: [CdkAccordion, CdkAccordionItem],\n})\nexport class CdkAccordionModule {}\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 Output,\n Directive,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n ChangeDetectorRef,\n SkipSelf,\n} from '@angular/core';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {CdkAccordion} from './accordion';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Subscription} from 'rxjs';\n\n/** Used to generate unique ID for each accordion item. */\nlet nextId = 0;\n\n/**\n * An basic directive expected to be extended and decorated as a component. Sets up all\n * events and attributes needed to be managed by a CdkAccordion parent.\n */\n@Directive({\n selector: 'cdk-accordion-item, [cdkAccordionItem]',\n exportAs: 'cdkAccordionItem',\n providers: [\n // Provide CdkAccordion as undefined to prevent nested accordion items from registering\n // to the same accordion.\n {provide: CdkAccordion, useValue: undefined},\n ],\n})\nexport class CdkAccordionItem implements OnDestroy {\n /** Subscription to openAll/closeAll events. */\n private _openCloseAllSubscription = Subscription.EMPTY;\n /** Event emitted every time the AccordionItem is closed. */\n @Output() closed: EventEmitter<void> = new EventEmitter<void>();\n /** Event emitted every time the AccordionItem is opened. */\n @Output() opened: EventEmitter<void> = new EventEmitter<void>();\n /** Event emitted when the AccordionItem is destroyed. */\n @Output() destroyed: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Emits whenever the expanded state of the accordion changes.\n * Primarily used to facilitate two-way binding.\n * @docs-private\n */\n @Output() expandedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** The unique AccordionItem id. */\n readonly id: string = `cdk-accordion-child-${nextId++}`;\n\n /** Whether the AccordionItem is expanded. */\n @Input()\n get expanded(): any { return this._expanded; }\n set expanded(expanded: any) {\n expanded = coerceBooleanProperty(expanded);\n\n // Only emit events and update the internal value if the value changes.\n if (this._expanded !== expanded) {\n this._expanded = expanded;\n this.expandedChange.emit(expanded);\n\n if (expanded) {\n this.opened.emit();\n /**\n * In the unique selection dispatcher, the id parameter is the id of the CdkAccordionItem,\n * the name value is the id of the accordion.\n */\n const accordionId = this.accordion ? this.accordion.id : this.id;\n this._expansionDispatcher.notify(this.id, accordionId);\n } else {\n this.closed.emit();\n }\n\n // Ensures that the animation will run when the value is set outside of an `@Input`.\n // This includes cases like the open, close and toggle methods.\n this._changeDetectorRef.markForCheck();\n }\n }\n private _expanded = false;\n\n /** Whether the AccordionItem is disabled. */\n @Input()\n get disabled() { return this._disabled; }\n set disabled(disabled: any) { this._disabled = coerceBooleanProperty(disabled); }\n private _disabled: boolean = false;\n\n /** Unregister function for _expansionDispatcher. */\n private _removeUniqueSelectionListener: () => void = () => {};\n\n constructor(@Optional() @SkipSelf() public accordion: CdkAccordion,\n private _changeDetectorRef: ChangeDetectorRef,\n protected _expansionDispatcher: UniqueSelectionDispatcher) {\n this._removeUniqueSelectionListener =\n _expansionDispatcher.listen((id: string, accordionId: string) => {\n if (this.accordion && !this.accordion.multi &&\n this.accordion.id === accordionId && this.id !== id) {\n this.expanded = false;\n }\n });\n\n // When an accordion item is hosted in an accordion, subscribe to open/close events.\n if (this.accordion) {\n this._openCloseAllSubscription = this._subscribeToOpenCloseAllActions();\n }\n }\n\n /** Emits an event for the accordion item being destroyed. */\n ngOnDestroy() {\n this.opened.complete();\n this.closed.complete();\n this.destroyed.emit();\n this.destroyed.complete();\n this._removeUniqueSelectionListener();\n this._openCloseAllSubscription.unsubscribe();\n }\n\n /** Toggles the expanded state of the accordion item. */\n toggle(): void {\n if (!this.disabled) {\n this.expanded = !this.expanded;\n }\n }\n\n /** Sets the expanded state of the accordion item to false. */\n close(): void {\n if (!this.disabled) {\n this.expanded = false;\n }\n }\n\n /** Sets the expanded state of the accordion item to true. */\n open(): void {\n if (!this.disabled) {\n this.expanded = true;\n }\n }\n\n private _subscribeToOpenCloseAllActions(): Subscription {\n return this.accordion._openCloseAllActions.subscribe(expanded => {\n // Only change expanded state if item is enabled\n if (!this.disabled) {\n this.expanded = expanded;\n }\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 {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Directive, Input, OnChanges, OnDestroy, SimpleChanges} from '@angular/core';\nimport {Subject} from 'rxjs';\n\n/** Used to generate unique ID for each accordion. */\nlet nextId = 0;\n\n/**\n * Directive whose purpose is to manage the expanded state of CdkAccordionItem children.\n */\n@Directive({\n selector: 'cdk-accordion, [cdkAccordion]',\n exportAs: 'cdkAccordion',\n})\nexport class CdkAccordion implements OnDestroy, OnChanges {\n /** Emits when the state of the accordion changes */\n readonly _stateChanges = new Subject<SimpleChanges>();\n\n /** Stream that emits true/false when openAll/closeAll is triggered. */\n readonly _openCloseAllActions: Subject<boolean> = new Subject<boolean>();\n\n /** A readonly id value to use for unique selection coordination. */\n readonly id = `cdk-accordion-${nextId++}`;\n\n /** Whether the accordion should allow multiple expanded accordion items simultaneously. */\n @Input()\n get multi(): boolean { return this._multi; }\n set multi(multi: boolean) { this._multi = coerceBooleanProperty(multi); }\n private _multi: boolean = false;\n\n /** Opens all enabled accordion items in an accordion where multi is enabled. */\n openAll(): void {\n this._openCloseAll(true);\n }\n\n /** Closes all enabled accordion items in an accordion where multi is enabled. */\n closeAll(): void {\n this._openCloseAll(false);\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._stateChanges.next(changes);\n }\n\n ngOnDestroy() {\n this._stateChanges.complete();\n }\n\n private _openCloseAll(expanded: boolean): void {\n if (this.multi) {\n this._openCloseAllActions.next(expanded);\n }\n }\n}\n"],"names":["NgModule","Input","Output","UniqueSelectionDispatcher","ChangeDetectorRef","Optional","SkipSelf","Directive","coerceBooleanProperty","nextId","EventEmitter","Subscription","Subject"],"mappings":"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"}
1
+ {"version":3,"file":"cdk-accordion.umd.js","sources":["../../src/cdk/accordion/accordion-module.ts","../../src/cdk/accordion/accordion-item.ts","../../src/cdk/accordion/accordion.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {CdkAccordion} from './accordion';\nimport {CdkAccordionItem} from './accordion-item';\n\n\n@NgModule({\n exports: [CdkAccordion, CdkAccordionItem],\n declarations: [CdkAccordion, CdkAccordionItem],\n})\nexport class CdkAccordionModule {}\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 Output,\n Directive,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n ChangeDetectorRef,\n SkipSelf,\n} from '@angular/core';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {CdkAccordion} from './accordion';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Subscription} from 'rxjs';\n\n/** Used to generate unique ID for each accordion item. */\nlet nextId = 0;\n\n/**\n * An basic directive expected to be extended and decorated as a component. Sets up all\n * events and attributes needed to be managed by a CdkAccordion parent.\n */\n@Directive({\n selector: 'cdk-accordion-item, [cdkAccordionItem]',\n exportAs: 'cdkAccordionItem',\n providers: [\n // Provide CdkAccordion as undefined to prevent nested accordion items from registering\n // to the same accordion.\n {provide: CdkAccordion, useValue: undefined},\n ],\n})\nexport class CdkAccordionItem implements OnDestroy {\n /** Subscription to openAll/closeAll events. */\n private _openCloseAllSubscription = Subscription.EMPTY;\n /** Event emitted every time the AccordionItem is closed. */\n @Output() closed: EventEmitter<void> = new EventEmitter<void>();\n /** Event emitted every time the AccordionItem is opened. */\n @Output() opened: EventEmitter<void> = new EventEmitter<void>();\n /** Event emitted when the AccordionItem is destroyed. */\n @Output() destroyed: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Emits whenever the expanded state of the accordion changes.\n * Primarily used to facilitate two-way binding.\n * @docs-private\n */\n @Output() expandedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** The unique AccordionItem id. */\n readonly id: string = `cdk-accordion-child-${nextId++}`;\n\n /** Whether the AccordionItem is expanded. */\n @Input()\n get expanded(): any { return this._expanded; }\n set expanded(expanded: any) {\n expanded = coerceBooleanProperty(expanded);\n\n // Only emit events and update the internal value if the value changes.\n if (this._expanded !== expanded) {\n this._expanded = expanded;\n this.expandedChange.emit(expanded);\n\n if (expanded) {\n this.opened.emit();\n /**\n * In the unique selection dispatcher, the id parameter is the id of the CdkAccordionItem,\n * the name value is the id of the accordion.\n */\n const accordionId = this.accordion ? this.accordion.id : this.id;\n this._expansionDispatcher.notify(this.id, accordionId);\n } else {\n this.closed.emit();\n }\n\n // Ensures that the animation will run when the value is set outside of an `@Input`.\n // This includes cases like the open, close and toggle methods.\n this._changeDetectorRef.markForCheck();\n }\n }\n private _expanded = false;\n\n /** Whether the AccordionItem is disabled. */\n @Input()\n get disabled() { return this._disabled; }\n set disabled(disabled: any) { this._disabled = coerceBooleanProperty(disabled); }\n private _disabled: boolean = false;\n\n /** Unregister function for _expansionDispatcher. */\n private _removeUniqueSelectionListener: () => void = () => {};\n\n constructor(@Optional() @SkipSelf() public accordion: CdkAccordion,\n private _changeDetectorRef: ChangeDetectorRef,\n protected _expansionDispatcher: UniqueSelectionDispatcher) {\n this._removeUniqueSelectionListener =\n _expansionDispatcher.listen((id: string, accordionId: string) => {\n if (this.accordion && !this.accordion.multi &&\n this.accordion.id === accordionId && this.id !== id) {\n this.expanded = false;\n }\n });\n\n // When an accordion item is hosted in an accordion, subscribe to open/close events.\n if (this.accordion) {\n this._openCloseAllSubscription = this._subscribeToOpenCloseAllActions();\n }\n }\n\n /** Emits an event for the accordion item being destroyed. */\n ngOnDestroy() {\n this.opened.complete();\n this.closed.complete();\n this.destroyed.emit();\n this.destroyed.complete();\n this._removeUniqueSelectionListener();\n this._openCloseAllSubscription.unsubscribe();\n }\n\n /** Toggles the expanded state of the accordion item. */\n toggle(): void {\n if (!this.disabled) {\n this.expanded = !this.expanded;\n }\n }\n\n /** Sets the expanded state of the accordion item to false. */\n close(): void {\n if (!this.disabled) {\n this.expanded = false;\n }\n }\n\n /** Sets the expanded state of the accordion item to true. */\n open(): void {\n if (!this.disabled) {\n this.expanded = true;\n }\n }\n\n private _subscribeToOpenCloseAllActions(): Subscription {\n return this.accordion._openCloseAllActions.subscribe(expanded => {\n // Only change expanded state if item is enabled\n if (!this.disabled) {\n this.expanded = expanded;\n }\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 {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Directive, Input, OnChanges, OnDestroy, SimpleChanges} from '@angular/core';\nimport {Subject} from 'rxjs';\n\n/** Used to generate unique ID for each accordion. */\nlet nextId = 0;\n\n/**\n * Directive whose purpose is to manage the expanded state of CdkAccordionItem children.\n */\n@Directive({\n selector: 'cdk-accordion, [cdkAccordion]',\n exportAs: 'cdkAccordion',\n})\nexport class CdkAccordion implements OnDestroy, OnChanges {\n /** Emits when the state of the accordion changes */\n readonly _stateChanges = new Subject<SimpleChanges>();\n\n /** Stream that emits true/false when openAll/closeAll is triggered. */\n readonly _openCloseAllActions: Subject<boolean> = new Subject<boolean>();\n\n /** A readonly id value to use for unique selection coordination. */\n readonly id = `cdk-accordion-${nextId++}`;\n\n /** Whether the accordion should allow multiple expanded accordion items simultaneously. */\n @Input()\n get multi(): boolean { return this._multi; }\n set multi(multi: boolean) { this._multi = coerceBooleanProperty(multi); }\n private _multi: boolean = false;\n\n /** Opens all enabled accordion items in an accordion where multi is enabled. */\n openAll(): void {\n this._openCloseAll(true);\n }\n\n /** Closes all enabled accordion items in an accordion where multi is enabled. */\n closeAll(): void {\n this._openCloseAll(false);\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._stateChanges.next(changes);\n }\n\n ngOnDestroy() {\n this._stateChanges.complete();\n }\n\n private _openCloseAll(expanded: boolean): void {\n if (this.multi) {\n this._openCloseAllActions.next(expanded);\n }\n }\n}\n"],"names":["NgModule","Input","Output","UniqueSelectionDispatcher","ChangeDetectorRef","Optional","SkipSelf","Directive","coerceBooleanProperty","nextId","EventEmitter","Subscription","Subject"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cdk-accordion.umd.min.js","sources":["../../src/cdk/accordion/accordion.ts","../../src/cdk/accordion/accordion-item.ts","../../src/cdk/accordion/accordion-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Directive, Input, OnChanges, OnDestroy, SimpleChanges} from '@angular/core';\nimport {Subject} from 'rxjs';\n\n/** Used to generate unique ID for each accordion. */\nlet nextId = 0;\n\n/**\n * Directive whose purpose is to manage the expanded state of CdkAccordionItem children.\n */\n@Directive({\n selector: 'cdk-accordion, [cdkAccordion]',\n exportAs: 'cdkAccordion',\n})\nexport class CdkAccordion implements OnDestroy, OnChanges {\n /** Emits when the state of the accordion changes */\n readonly _stateChanges = new Subject<SimpleChanges>();\n\n /** Stream that emits true/false when openAll/closeAll is triggered. */\n readonly _openCloseAllActions: Subject<boolean> = new Subject<boolean>();\n\n /** A readonly id value to use for unique selection coordination. */\n readonly id = `cdk-accordion-${nextId++}`;\n\n /** Whether the accordion should allow multiple expanded accordion items simultaneously. */\n @Input()\n get multi(): boolean { return this._multi; }\n set multi(multi: boolean) { this._multi = coerceBooleanProperty(multi); }\n private _multi: boolean = false;\n\n /** Opens all enabled accordion items in an accordion where multi is enabled. */\n openAll(): void {\n this._openCloseAll(true);\n }\n\n /** Closes all enabled accordion items in an accordion where multi is enabled. */\n closeAll(): void {\n this._openCloseAll(false);\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._stateChanges.next(changes);\n }\n\n ngOnDestroy() {\n this._stateChanges.complete();\n }\n\n private _openCloseAll(expanded: boolean): void {\n if (this.multi) {\n this._openCloseAllActions.next(expanded);\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 {\n Output,\n Directive,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n ChangeDetectorRef,\n SkipSelf,\n} from '@angular/core';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {CdkAccordion} from './accordion';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Subscription} from 'rxjs';\n\n/** Used to generate unique ID for each accordion item. */\nlet nextId = 0;\n\n/**\n * An basic directive expected to be extended and decorated as a component. Sets up all\n * events and attributes needed to be managed by a CdkAccordion parent.\n */\n@Directive({\n selector: 'cdk-accordion-item, [cdkAccordionItem]',\n exportAs: 'cdkAccordionItem',\n providers: [\n // Provide CdkAccordion as undefined to prevent nested accordion items from registering\n // to the same accordion.\n {provide: CdkAccordion, useValue: undefined},\n ],\n})\nexport class CdkAccordionItem implements OnDestroy {\n /** Subscription to openAll/closeAll events. */\n private _openCloseAllSubscription = Subscription.EMPTY;\n /** Event emitted every time the AccordionItem is closed. */\n @Output() closed: EventEmitter<void> = new EventEmitter<void>();\n /** Event emitted every time the AccordionItem is opened. */\n @Output() opened: EventEmitter<void> = new EventEmitter<void>();\n /** Event emitted when the AccordionItem is destroyed. */\n @Output() destroyed: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Emits whenever the expanded state of the accordion changes.\n * Primarily used to facilitate two-way binding.\n * @docs-private\n */\n @Output() expandedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** The unique AccordionItem id. */\n readonly id: string = `cdk-accordion-child-${nextId++}`;\n\n /** Whether the AccordionItem is expanded. */\n @Input()\n get expanded(): any { return this._expanded; }\n set expanded(expanded: any) {\n expanded = coerceBooleanProperty(expanded);\n\n // Only emit events and update the internal value if the value changes.\n if (this._expanded !== expanded) {\n this._expanded = expanded;\n this.expandedChange.emit(expanded);\n\n if (expanded) {\n this.opened.emit();\n /**\n * In the unique selection dispatcher, the id parameter is the id of the CdkAccordionItem,\n * the name value is the id of the accordion.\n */\n const accordionId = this.accordion ? this.accordion.id : this.id;\n this._expansionDispatcher.notify(this.id, accordionId);\n } else {\n this.closed.emit();\n }\n\n // Ensures that the animation will run when the value is set outside of an `@Input`.\n // This includes cases like the open, close and toggle methods.\n this._changeDetectorRef.markForCheck();\n }\n }\n private _expanded = false;\n\n /** Whether the AccordionItem is disabled. */\n @Input()\n get disabled() { return this._disabled; }\n set disabled(disabled: any) { this._disabled = coerceBooleanProperty(disabled); }\n private _disabled: boolean = false;\n\n /** Unregister function for _expansionDispatcher. */\n private _removeUniqueSelectionListener: () => void = () => {};\n\n constructor(@Optional() @SkipSelf() public accordion: CdkAccordion,\n private _changeDetectorRef: ChangeDetectorRef,\n protected _expansionDispatcher: UniqueSelectionDispatcher) {\n this._removeUniqueSelectionListener =\n _expansionDispatcher.listen((id: string, accordionId: string) => {\n if (this.accordion && !this.accordion.multi &&\n this.accordion.id === accordionId && this.id !== id) {\n this.expanded = false;\n }\n });\n\n // When an accordion item is hosted in an accordion, subscribe to open/close events.\n if (this.accordion) {\n this._openCloseAllSubscription = this._subscribeToOpenCloseAllActions();\n }\n }\n\n /** Emits an event for the accordion item being destroyed. */\n ngOnDestroy() {\n this.opened.complete();\n this.closed.complete();\n this.destroyed.emit();\n this.destroyed.complete();\n this._removeUniqueSelectionListener();\n this._openCloseAllSubscription.unsubscribe();\n }\n\n /** Toggles the expanded state of the accordion item. */\n toggle(): void {\n if (!this.disabled) {\n this.expanded = !this.expanded;\n }\n }\n\n /** Sets the expanded state of the accordion item to false. */\n close(): void {\n if (!this.disabled) {\n this.expanded = false;\n }\n }\n\n /** Sets the expanded state of the accordion item to true. */\n open(): void {\n if (!this.disabled) {\n this.expanded = true;\n }\n }\n\n private _subscribeToOpenCloseAllActions(): Subscription {\n return this.accordion._openCloseAllActions.subscribe(expanded => {\n // Only change expanded state if item is enabled\n if (!this.disabled) {\n this.expanded = expanded;\n }\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 {NgModule} from '@angular/core';\nimport {CdkAccordion} from './accordion';\nimport {CdkAccordionItem} from './accordion-item';\n\n\n@NgModule({\n exports: [CdkAccordion, CdkAccordionItem],\n declarations: [CdkAccordion, CdkAccordionItem],\n})\nexport class CdkAccordionModule {}\n"],"names":["nextId","CdkAccordion","this","_stateChanges","Subject","_openCloseAllActions","id","_multi","Object","defineProperty","prototype","multi","coerceBooleanProperty","openAll","_openCloseAll","closeAll","ngOnChanges","changes","next","ngOnDestroy","complete","expanded","type","Directive","args","selector","exportAs","Input","CdkAccordionItem","accordion","_changeDetectorRef","_expansionDispatcher","_this","_openCloseAllSubscription","Subscription","EMPTY","closed","EventEmitter","opened","destroyed","expandedChange","_expanded","_disabled","_removeUniqueSelectionListener","listen","accordionId","_subscribeToOpenCloseAllActions","emit","notify","markForCheck","disabled","unsubscribe","toggle","close","open","subscribe","providers","provide","useValue","undefined","decorators","Optional","SkipSelf","ChangeDetectorRef","UniqueSelectionDispatcher","Output","CdkAccordionModule","NgModule","exports","declarations"],"mappings":"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"}
1
+ {"version":3,"file":"cdk-accordion.umd.min.js","sources":["../../src/cdk/accordion/accordion.ts","../../src/cdk/accordion/accordion-item.ts","../../src/cdk/accordion/accordion-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Directive, Input, OnChanges, OnDestroy, SimpleChanges} from '@angular/core';\nimport {Subject} from 'rxjs';\n\n/** Used to generate unique ID for each accordion. */\nlet nextId = 0;\n\n/**\n * Directive whose purpose is to manage the expanded state of CdkAccordionItem children.\n */\n@Directive({\n selector: 'cdk-accordion, [cdkAccordion]',\n exportAs: 'cdkAccordion',\n})\nexport class CdkAccordion implements OnDestroy, OnChanges {\n /** Emits when the state of the accordion changes */\n readonly _stateChanges = new Subject<SimpleChanges>();\n\n /** Stream that emits true/false when openAll/closeAll is triggered. */\n readonly _openCloseAllActions: Subject<boolean> = new Subject<boolean>();\n\n /** A readonly id value to use for unique selection coordination. */\n readonly id = `cdk-accordion-${nextId++}`;\n\n /** Whether the accordion should allow multiple expanded accordion items simultaneously. */\n @Input()\n get multi(): boolean { return this._multi; }\n set multi(multi: boolean) { this._multi = coerceBooleanProperty(multi); }\n private _multi: boolean = false;\n\n /** Opens all enabled accordion items in an accordion where multi is enabled. */\n openAll(): void {\n this._openCloseAll(true);\n }\n\n /** Closes all enabled accordion items in an accordion where multi is enabled. */\n closeAll(): void {\n this._openCloseAll(false);\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._stateChanges.next(changes);\n }\n\n ngOnDestroy() {\n this._stateChanges.complete();\n }\n\n private _openCloseAll(expanded: boolean): void {\n if (this.multi) {\n this._openCloseAllActions.next(expanded);\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 {\n Output,\n Directive,\n EventEmitter,\n Input,\n OnDestroy,\n Optional,\n ChangeDetectorRef,\n SkipSelf,\n} from '@angular/core';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {CdkAccordion} from './accordion';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {Subscription} from 'rxjs';\n\n/** Used to generate unique ID for each accordion item. */\nlet nextId = 0;\n\n/**\n * An basic directive expected to be extended and decorated as a component. Sets up all\n * events and attributes needed to be managed by a CdkAccordion parent.\n */\n@Directive({\n selector: 'cdk-accordion-item, [cdkAccordionItem]',\n exportAs: 'cdkAccordionItem',\n providers: [\n // Provide CdkAccordion as undefined to prevent nested accordion items from registering\n // to the same accordion.\n {provide: CdkAccordion, useValue: undefined},\n ],\n})\nexport class CdkAccordionItem implements OnDestroy {\n /** Subscription to openAll/closeAll events. */\n private _openCloseAllSubscription = Subscription.EMPTY;\n /** Event emitted every time the AccordionItem is closed. */\n @Output() closed: EventEmitter<void> = new EventEmitter<void>();\n /** Event emitted every time the AccordionItem is opened. */\n @Output() opened: EventEmitter<void> = new EventEmitter<void>();\n /** Event emitted when the AccordionItem is destroyed. */\n @Output() destroyed: EventEmitter<void> = new EventEmitter<void>();\n\n /**\n * Emits whenever the expanded state of the accordion changes.\n * Primarily used to facilitate two-way binding.\n * @docs-private\n */\n @Output() expandedChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** The unique AccordionItem id. */\n readonly id: string = `cdk-accordion-child-${nextId++}`;\n\n /** Whether the AccordionItem is expanded. */\n @Input()\n get expanded(): any { return this._expanded; }\n set expanded(expanded: any) {\n expanded = coerceBooleanProperty(expanded);\n\n // Only emit events and update the internal value if the value changes.\n if (this._expanded !== expanded) {\n this._expanded = expanded;\n this.expandedChange.emit(expanded);\n\n if (expanded) {\n this.opened.emit();\n /**\n * In the unique selection dispatcher, the id parameter is the id of the CdkAccordionItem,\n * the name value is the id of the accordion.\n */\n const accordionId = this.accordion ? this.accordion.id : this.id;\n this._expansionDispatcher.notify(this.id, accordionId);\n } else {\n this.closed.emit();\n }\n\n // Ensures that the animation will run when the value is set outside of an `@Input`.\n // This includes cases like the open, close and toggle methods.\n this._changeDetectorRef.markForCheck();\n }\n }\n private _expanded = false;\n\n /** Whether the AccordionItem is disabled. */\n @Input()\n get disabled() { return this._disabled; }\n set disabled(disabled: any) { this._disabled = coerceBooleanProperty(disabled); }\n private _disabled: boolean = false;\n\n /** Unregister function for _expansionDispatcher. */\n private _removeUniqueSelectionListener: () => void = () => {};\n\n constructor(@Optional() @SkipSelf() public accordion: CdkAccordion,\n private _changeDetectorRef: ChangeDetectorRef,\n protected _expansionDispatcher: UniqueSelectionDispatcher) {\n this._removeUniqueSelectionListener =\n _expansionDispatcher.listen((id: string, accordionId: string) => {\n if (this.accordion && !this.accordion.multi &&\n this.accordion.id === accordionId && this.id !== id) {\n this.expanded = false;\n }\n });\n\n // When an accordion item is hosted in an accordion, subscribe to open/close events.\n if (this.accordion) {\n this._openCloseAllSubscription = this._subscribeToOpenCloseAllActions();\n }\n }\n\n /** Emits an event for the accordion item being destroyed. */\n ngOnDestroy() {\n this.opened.complete();\n this.closed.complete();\n this.destroyed.emit();\n this.destroyed.complete();\n this._removeUniqueSelectionListener();\n this._openCloseAllSubscription.unsubscribe();\n }\n\n /** Toggles the expanded state of the accordion item. */\n toggle(): void {\n if (!this.disabled) {\n this.expanded = !this.expanded;\n }\n }\n\n /** Sets the expanded state of the accordion item to false. */\n close(): void {\n if (!this.disabled) {\n this.expanded = false;\n }\n }\n\n /** Sets the expanded state of the accordion item to true. */\n open(): void {\n if (!this.disabled) {\n this.expanded = true;\n }\n }\n\n private _subscribeToOpenCloseAllActions(): Subscription {\n return this.accordion._openCloseAllActions.subscribe(expanded => {\n // Only change expanded state if item is enabled\n if (!this.disabled) {\n this.expanded = expanded;\n }\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 {NgModule} from '@angular/core';\nimport {CdkAccordion} from './accordion';\nimport {CdkAccordionItem} from './accordion-item';\n\n\n@NgModule({\n exports: [CdkAccordion, CdkAccordionItem],\n declarations: [CdkAccordion, CdkAccordionItem],\n})\nexport class CdkAccordionModule {}\n"],"names":["nextId","CdkAccordion","this","_stateChanges","Subject","_openCloseAllActions","id","_multi","Object","defineProperty","prototype","multi","coerceBooleanProperty","openAll","_openCloseAll","closeAll","ngOnChanges","changes","next","ngOnDestroy","complete","expanded","type","Directive","args","selector","exportAs","Input","CdkAccordionItem","accordion","_changeDetectorRef","_expansionDispatcher","_this","_openCloseAllSubscription","Subscription","EMPTY","closed","EventEmitter","opened","destroyed","expandedChange","_expanded","_disabled","_removeUniqueSelectionListener","listen","accordionId","_subscribeToOpenCloseAllActions","emit","notify","markForCheck","disabled","unsubscribe","toggle","close","open","subscribe","providers","provide","useValue","undefined","decorators","Optional","SkipSelf","ChangeDetectorRef","UniqueSelectionDispatcher","Output","CdkAccordionModule","NgModule","exports","declarations"],"mappings":"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"}
@@ -13,7 +13,7 @@
13
13
 
14
14
  /**
15
15
  * @fileoverview added by tsickle
16
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
17
17
  */
18
18
  /**
19
19
  * Injection token used to inject the document into Directionality.
@@ -45,7 +45,7 @@ function DIR_DOCUMENT_FACTORY() {
45
45
 
46
46
  /**
47
47
  * @fileoverview added by tsickle
48
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
48
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
49
49
  */
50
50
  /**
51
51
  * The directionality (LTR / RTL) context for the application (or a subtree of it).
@@ -91,13 +91,13 @@ var Directionality = /** @class */ (function () {
91
91
  Directionality.ctorParameters = function () { return [
92
92
  { type: undefined, decorators: [{ type: core.Optional }, { type: core.Inject, args: [DIR_DOCUMENT,] }] }
93
93
  ]; };
94
- /** @nocollapse */ Directionality.ngInjectableDef = core.defineInjectable({ factory: function Directionality_Factory() { return new Directionality(core.inject(DIR_DOCUMENT, 8)); }, token: Directionality, providedIn: "root" });
94
+ /** @nocollapse */ Directionality.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function Directionality_Factory() { return new Directionality(core.ɵɵinject(DIR_DOCUMENT, 8)); }, token: Directionality, providedIn: "root" });
95
95
  return Directionality;
96
96
  }());
97
97
 
98
98
  /**
99
99
  * @fileoverview added by tsickle
100
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
100
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
101
101
  */
102
102
  /**
103
103
  * Directive to listen for changes of direction of part of the DOM.
@@ -193,7 +193,7 @@ var Dir = /** @class */ (function () {
193
193
 
194
194
  /**
195
195
  * @fileoverview added by tsickle
196
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
196
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
197
197
  */
198
198
  var BidiModule = /** @class */ (function () {
199
199
  function BidiModule() {
@@ -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/common"),require("@angular/core")):"function"==typeof define&&define.amd?define("@angular/cdk/bidi",["exports","@angular/common","@angular/core"],t):t((e.ng=e.ng||{},e.ng.cdk=e.ng.cdk||{},e.ng.cdk.bidi={}),e.ng.common,e.ng.core)}(this,function(e,t,r){"use strict";function n(){return r.inject(t.DOCUMENT)}var i=new r.InjectionToken("cdk-dir-doc",{providedIn:"root",factory:n}),o=function(){function e(e){if(this.value="ltr",this.change=new r.EventEmitter,e){var t=e.body?e.body.dir:null,n=e.documentElement?e.documentElement.dir:null,i=t||n;this.value="ltr"===i||"rtl"===i?i:"ltr"}}return e.prototype.ngOnDestroy=function(){this.change.complete()},e.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[i]}]}]},e.ngInjectableDef=r.defineInjectable({factory:function(){return new e(r.inject(i,8))},token:e,providedIn:"root"}),e}(),c=function(){function e(){this._dir="ltr",this._isInitialized=!1,this.change=new r.EventEmitter}return Object.defineProperty(e.prototype,"dir",{get:function(){return this._dir},set:function(e){var t=this._dir,r=e?e.toLowerCase():e;this._rawDir=e,this._dir="ltr"===r||"rtl"===r?r:"ltr",t!==this._dir&&this._isInitialized&&this.change.emit(this._dir)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"value",{get:function(){return this.dir},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){this._isInitialized=!0},e.prototype.ngOnDestroy=function(){this.change.complete()},e.decorators=[{type:r.Directive,args:[{selector:"[dir]",providers:[{provide:o,useExisting:e}],host:{"[attr.dir]":"_rawDir"},exportAs:"dir"}]}],e.propDecorators={change:[{type:r.Output,args:["dirChange"]}],dir:[{type:r.Input}]},e}(),d=function(){function e(){}return e.decorators=[{type:r.NgModule,args:[{exports:[c],declarations:[c]}]}],e}();e.Directionality=o,e.DIR_DOCUMENT=i,e.Dir=c,e.BidiModule=d,e.ɵa=n,Object.defineProperty(e,"__esModule",{value:!0})});
8
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common"),require("@angular/core")):"function"==typeof define&&define.amd?define("@angular/cdk/bidi",["exports","@angular/common","@angular/core"],t):t((e.ng=e.ng||{},e.ng.cdk=e.ng.cdk||{},e.ng.cdk.bidi={}),e.ng.common,e.ng.core)}(this,function(e,t,r){"use strict";function n(){return r.inject(t.DOCUMENT)}var i=new r.InjectionToken("cdk-dir-doc",{providedIn:"root",factory:n}),o=function(){function e(e){if(this.value="ltr",this.change=new r.EventEmitter,e){var t=e.body?e.body.dir:null,n=e.documentElement?e.documentElement.dir:null,i=t||n;this.value="ltr"===i||"rtl"===i?i:"ltr"}}return e.prototype.ngOnDestroy=function(){this.change.complete()},e.decorators=[{type:r.Injectable,args:[{providedIn:"root"}]}],e.ctorParameters=function(){return[{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[i]}]}]},e.ngInjectableDef=r.ɵɵdefineInjectable({factory:function(){return new e(r.ɵɵinject(i,8))},token:e,providedIn:"root"}),e}(),c=function(){function e(){this._dir="ltr",this._isInitialized=!1,this.change=new r.EventEmitter}return Object.defineProperty(e.prototype,"dir",{get:function(){return this._dir},set:function(e){var t=this._dir,r=e?e.toLowerCase():e;this._rawDir=e,this._dir="ltr"===r||"rtl"===r?r:"ltr",t!==this._dir&&this._isInitialized&&this.change.emit(this._dir)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"value",{get:function(){return this.dir},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){this._isInitialized=!0},e.prototype.ngOnDestroy=function(){this.change.complete()},e.decorators=[{type:r.Directive,args:[{selector:"[dir]",providers:[{provide:o,useExisting:e}],host:{"[attr.dir]":"_rawDir"},exportAs:"dir"}]}],e.propDecorators={change:[{type:r.Output,args:["dirChange"]}],dir:[{type:r.Input}]},e}(),d=function(){function e(){}return e.decorators=[{type:r.NgModule,args:[{exports:[c],declarations:[c]}]}],e}();e.Directionality=o,e.DIR_DOCUMENT=i,e.Dir=c,e.BidiModule=d,e.ɵa=n,Object.defineProperty(e,"__esModule",{value:!0})});
9
9
  //# sourceMappingURL=cdk-bidi.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cdk-bidi.umd.min.js","sources":["../../src/cdk/bidi/dir-document-token.ts","../../src/cdk/bidi/directionality.ts","../../src/cdk/bidi/dir.ts","../../src/cdk/bidi/bidi-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\n\n\n/**\n * Injection token used to inject the document into Directionality.\n * This is used so that the value can be faked in tests.\n *\n * We can't use the real document in tests because changing the real `dir` causes geometry-based\n * tests in Safari to fail.\n *\n * We also can't re-provide the DOCUMENT token from platform-brower because the unit tests\n * themselves use things like `querySelector` in test code.\n *\n * This token is defined in a separate file from Directionality as a workaround for\n * https://github.com/angular/angular/issues/22559\n *\n * @docs-private\n */\nexport const DIR_DOCUMENT = new InjectionToken<Document>('cdk-dir-doc', {\n providedIn: 'root',\n factory: DIR_DOCUMENT_FACTORY,\n});\n\n/** @docs-private */\nexport function DIR_DOCUMENT_FACTORY(): Document {\n return inject(DOCUMENT);\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 {EventEmitter, Inject, Injectable, Optional, OnDestroy} from '@angular/core';\nimport {DIR_DOCUMENT} from './dir-document-token';\n\n\nexport type Direction = 'ltr' | 'rtl';\n\n\n/**\n * The directionality (LTR / RTL) context for the application (or a subtree of it).\n * Exposes the current direction and a stream of direction changes.\n */\n@Injectable({providedIn: 'root'})\nexport class Directionality implements OnDestroy {\n /** The current 'ltr' or 'rtl' value. */\n readonly value: Direction = 'ltr';\n\n /** Stream that emits whenever the 'ltr' / 'rtl' state changes. */\n readonly change = new EventEmitter<Direction>();\n\n constructor(@Optional() @Inject(DIR_DOCUMENT) _document?: any) {\n if (_document) {\n // TODO: handle 'auto' value -\n // We still need to account for dir=\"auto\".\n // It looks like HTMLElemenet.dir is also \"auto\" when that's set to the attribute,\n // but getComputedStyle return either \"ltr\" or \"rtl\". avoiding getComputedStyle for now\n const bodyDir = _document.body ? _document.body.dir : null;\n const htmlDir = _document.documentElement ? _document.documentElement.dir : null;\n const value = bodyDir || htmlDir;\n this.value = (value === 'ltr' || value === 'rtl') ? value : 'ltr';\n }\n }\n\n ngOnDestroy() {\n this.change.complete();\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 Directive,\n Output,\n Input,\n EventEmitter,\n AfterContentInit,\n OnDestroy,\n} from '@angular/core';\n\nimport {Direction, Directionality} from './directionality';\n\n/**\n * Directive to listen for changes of direction of part of the DOM.\n *\n * Provides itself as Directionality such that descendant directives only need to ever inject\n * Directionality to get the closest direction.\n */\n@Directive({\n selector: '[dir]',\n providers: [{provide: Directionality, useExisting: Dir}],\n host: {'[attr.dir]': '_rawDir'},\n exportAs: 'dir',\n})\nexport class Dir implements Directionality, AfterContentInit, OnDestroy {\n /** Normalized direction that accounts for invalid/unsupported values. */\n private _dir: Direction = 'ltr';\n\n /** Whether the `value` has been set to its initial value. */\n private _isInitialized: boolean = false;\n\n /** Direction as passed in by the consumer. */\n _rawDir: string;\n\n /** Event emitted when the direction changes. */\n @Output('dirChange') change = new EventEmitter<Direction>();\n\n /** @docs-private */\n @Input()\n get dir(): Direction { return this._dir; }\n set dir(value: Direction) {\n const old = this._dir;\n const normalizedValue = value ? value.toLowerCase() : value;\n\n this._rawDir = value;\n this._dir = (normalizedValue === 'ltr' || normalizedValue === 'rtl') ? normalizedValue : 'ltr';\n\n if (old !== this._dir && this._isInitialized) {\n this.change.emit(this._dir);\n }\n }\n\n /** Current layout direction of the element. */\n get value(): Direction { return this.dir; }\n\n /** Initialize once default value has been set. */\n ngAfterContentInit() {\n this._isInitialized = true;\n }\n\n ngOnDestroy() {\n this.change.complete();\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 {NgModule} from '@angular/core';\nimport {Dir} from './dir';\n\n\n@NgModule({\n exports: [Dir],\n declarations: [Dir],\n})\nexport class BidiModule { }\n"],"names":["DIR_DOCUMENT_FACTORY","inject","DOCUMENT","DIR_DOCUMENT","InjectionToken","providedIn","factory","Directionality","_document","this","value","change","EventEmitter","bodyDir","body","dir","htmlDir","documentElement","prototype","ngOnDestroy","complete","type","Injectable","args","undefined","decorators","Optional","Inject","Dir","_dir","_isInitialized","Object","defineProperty","old","normalizedValue","toLowerCase","_rawDir","emit","ngAfterContentInit","Directive","selector","providers","provide","useExisting","host","[attr.dir]","exportAs","Output","Input","BidiModule","NgModule","exports","declarations"],"mappings":";;;;;;;uWAiCA,SAAgBA,KACd,MAAOC,GAAAA,OAAOC,EAAAA,UAPhB,GAAaC,GAAe,GAAIC,GAAAA,eAAyB,eACvDC,WAAY,OACZC,QAASN,ICVXO,EAAA,WAQE,QAAFA,GAAgDC,GAC5C,GANOC,KAAXC,MAA8B,MAGnBD,KAAXE,OAAoB,GAAIC,GAAAA,aAGhBJ,EAAW,CAKnB,GAAYK,GAAUL,EAAUM,KAAON,EAAUM,KAAKC,IAAM,KAChDC,EAAUR,EAAUS,gBAAkBT,EAAUS,gBAAgBF,IAAM,KACtEL,EAAQG,GAAWG,CACzBP,MAAKC,MAAmB,QAAVA,GAA6B,QAAVA,EAAmBA,EAAQ,OApClE,MAwCEH,GAAFW,UAAAC,YAAE,WACEV,KAAKE,OAAOS,2BAtBhBC,KAACC,EAAAA,WAADC,OAAalB,WAAY,+CAQzBgB,SAAAG,GAAAC,aAAAJ,KAAeK,EAAAA,WAAfL,KAA2BM,EAAAA,OAA3BJ,MAAkCpB,0HA3BlCI,KCyBAqB,EAAA,WAAA,QAAAA,KAQUnB,KAAVoB,KAA4B,MAGlBpB,KAAVqB,gBAAoC,EAMbrB,KAAvBE,OAAgC,GAAIC,GAAAA,aA4BpC,MAzBEmB,QAAFC,eACMJ,EADNV,UAAA,WAAE,WACuB,MAAOT,MAAKoB,UACnC,SAAQnB,GACV,GAAUuB,GAAMxB,KAAKoB,KACXK,EAAkBxB,EAAQA,EAAMyB,cAAgBzB,CAEtDD,MAAK2B,QAAU1B,EACfD,KAAKoB,KAA4B,QAApBK,GAAiD,QAApBA,EAA6BA,EAAkB,MAErFD,IAAQxB,KAAKoB,MAAQpB,KAAKqB,gBAC5BrB,KAAKE,OAAO0B,KAAK5B,KAAKoB,uCAK1BE,OAAFC,eAAMJ,EAANV,UAAA,aAAE,WAAyB,MAAOT,MAAKM,qCAGrCa,EAAFV,UAAAoB,mBAAE,WACE7B,KAAKqB,gBAAiB,GAGxBF,EAAFV,UAAAC,YAAE,WACEV,KAAKE,OAAOS,2BA3ChBC,KAACkB,EAAAA,UAADhB,OACEiB,SAAU,QACVC,YAAaC,QAASnC,EAAgBoC,YAAaf,IACnDgB,MAAOC,aAAc,WACrBC,SAAU,4BAaZnC,SAAAU,KAAG0B,EAAAA,OAAHxB,MAAU,eAGVR,MAAAM,KAAG2B,EAAAA,SAyBHpB,KC1DAqB,EAAA,WAAA,QAAAA,MAI0B,sBAJ1B5B,KAAC6B,EAAAA,SAAD3B,OACE4B,SAAUvB,GACVwB,cAAexB,OAEjBqB"}
1
+ {"version":3,"file":"cdk-bidi.umd.min.js","sources":["../../src/cdk/bidi/dir-document-token.ts","../../src/cdk/bidi/directionality.ts","../../src/cdk/bidi/dir.ts","../../src/cdk/bidi/bidi-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nimport {DOCUMENT} from '@angular/common';\nimport {inject, InjectionToken} from '@angular/core';\n\n\n/**\n * Injection token used to inject the document into Directionality.\n * This is used so that the value can be faked in tests.\n *\n * We can't use the real document in tests because changing the real `dir` causes geometry-based\n * tests in Safari to fail.\n *\n * We also can't re-provide the DOCUMENT token from platform-brower because the unit tests\n * themselves use things like `querySelector` in test code.\n *\n * This token is defined in a separate file from Directionality as a workaround for\n * https://github.com/angular/angular/issues/22559\n *\n * @docs-private\n */\nexport const DIR_DOCUMENT = new InjectionToken<Document>('cdk-dir-doc', {\n providedIn: 'root',\n factory: DIR_DOCUMENT_FACTORY,\n});\n\n/** @docs-private */\nexport function DIR_DOCUMENT_FACTORY(): Document {\n return inject(DOCUMENT);\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 {EventEmitter, Inject, Injectable, Optional, OnDestroy} from '@angular/core';\nimport {DIR_DOCUMENT} from './dir-document-token';\n\n\nexport type Direction = 'ltr' | 'rtl';\n\n\n/**\n * The directionality (LTR / RTL) context for the application (or a subtree of it).\n * Exposes the current direction and a stream of direction changes.\n */\n@Injectable({providedIn: 'root'})\nexport class Directionality implements OnDestroy {\n /** The current 'ltr' or 'rtl' value. */\n readonly value: Direction = 'ltr';\n\n /** Stream that emits whenever the 'ltr' / 'rtl' state changes. */\n readonly change = new EventEmitter<Direction>();\n\n constructor(@Optional() @Inject(DIR_DOCUMENT) _document?: any) {\n if (_document) {\n // TODO: handle 'auto' value -\n // We still need to account for dir=\"auto\".\n // It looks like HTMLElemenet.dir is also \"auto\" when that's set to the attribute,\n // but getComputedStyle return either \"ltr\" or \"rtl\". avoiding getComputedStyle for now\n const bodyDir = _document.body ? _document.body.dir : null;\n const htmlDir = _document.documentElement ? _document.documentElement.dir : null;\n const value = bodyDir || htmlDir;\n this.value = (value === 'ltr' || value === 'rtl') ? value : 'ltr';\n }\n }\n\n ngOnDestroy() {\n this.change.complete();\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 Directive,\n Output,\n Input,\n EventEmitter,\n AfterContentInit,\n OnDestroy,\n} from '@angular/core';\n\nimport {Direction, Directionality} from './directionality';\n\n/**\n * Directive to listen for changes of direction of part of the DOM.\n *\n * Provides itself as Directionality such that descendant directives only need to ever inject\n * Directionality to get the closest direction.\n */\n@Directive({\n selector: '[dir]',\n providers: [{provide: Directionality, useExisting: Dir}],\n host: {'[attr.dir]': '_rawDir'},\n exportAs: 'dir',\n})\nexport class Dir implements Directionality, AfterContentInit, OnDestroy {\n /** Normalized direction that accounts for invalid/unsupported values. */\n private _dir: Direction = 'ltr';\n\n /** Whether the `value` has been set to its initial value. */\n private _isInitialized: boolean = false;\n\n /** Direction as passed in by the consumer. */\n _rawDir: string;\n\n /** Event emitted when the direction changes. */\n @Output('dirChange') change = new EventEmitter<Direction>();\n\n /** @docs-private */\n @Input()\n get dir(): Direction { return this._dir; }\n set dir(value: Direction) {\n const old = this._dir;\n const normalizedValue = value ? value.toLowerCase() : value;\n\n this._rawDir = value;\n this._dir = (normalizedValue === 'ltr' || normalizedValue === 'rtl') ? normalizedValue : 'ltr';\n\n if (old !== this._dir && this._isInitialized) {\n this.change.emit(this._dir);\n }\n }\n\n /** Current layout direction of the element. */\n get value(): Direction { return this.dir; }\n\n /** Initialize once default value has been set. */\n ngAfterContentInit() {\n this._isInitialized = true;\n }\n\n ngOnDestroy() {\n this.change.complete();\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 {NgModule} from '@angular/core';\nimport {Dir} from './dir';\n\n\n@NgModule({\n exports: [Dir],\n declarations: [Dir],\n})\nexport class BidiModule { }\n"],"names":["DIR_DOCUMENT_FACTORY","inject","DOCUMENT","DIR_DOCUMENT","InjectionToken","providedIn","factory","Directionality","_document","this","value","change","EventEmitter","bodyDir","body","dir","htmlDir","documentElement","prototype","ngOnDestroy","complete","type","Injectable","args","undefined","decorators","Optional","Inject","Dir","_dir","_isInitialized","Object","defineProperty","old","normalizedValue","toLowerCase","_rawDir","emit","ngAfterContentInit","Directive","selector","providers","provide","useExisting","host","[attr.dir]","exportAs","Output","Input","BidiModule","NgModule","exports","declarations"],"mappings":";;;;;;;uWAiCA,SAAgBA,KACd,MAAOC,GAAAA,OAAOC,EAAAA,UAPhB,GAAaC,GAAe,GAAIC,GAAAA,eAAyB,eACvDC,WAAY,OACZC,QAASN,ICVXO,EAAA,WAQE,QAAFA,GAAgDC,GAC5C,GANOC,KAAXC,MAA8B,MAGnBD,KAAXE,OAAoB,GAAIC,GAAAA,aAGhBJ,EAAW,CAKnB,GAAYK,GAAUL,EAAUM,KAAON,EAAUM,KAAKC,IAAM,KAChDC,EAAUR,EAAUS,gBAAkBT,EAAUS,gBAAgBF,IAAM,KACtEL,EAAQG,GAAWG,CACzBP,MAAKC,MAAmB,QAAVA,GAA6B,QAAVA,EAAmBA,EAAQ,OApClE,MAwCEH,GAAFW,UAAAC,YAAE,WACEV,KAAKE,OAAOS,2BAtBhBC,KAACC,EAAAA,WAADC,OAAalB,WAAY,+CAQzBgB,SAAAG,GAAAC,aAAAJ,KAAeK,EAAAA,WAAfL,KAA2BM,EAAAA,OAA3BJ,MAAkCpB,8HA3BlCI,KCyBAqB,EAAA,WAAA,QAAAA,KAQUnB,KAAVoB,KAA4B,MAGlBpB,KAAVqB,gBAAoC,EAMbrB,KAAvBE,OAAgC,GAAIC,GAAAA,aA4BpC,MAzBEmB,QAAFC,eACMJ,EADNV,UAAA,WAAE,WACuB,MAAOT,MAAKoB,UACnC,SAAQnB,GACV,GAAUuB,GAAMxB,KAAKoB,KACXK,EAAkBxB,EAAQA,EAAMyB,cAAgBzB,CAEtDD,MAAK2B,QAAU1B,EACfD,KAAKoB,KAA4B,QAApBK,GAAiD,QAApBA,EAA6BA,EAAkB,MAErFD,IAAQxB,KAAKoB,MAAQpB,KAAKqB,gBAC5BrB,KAAKE,OAAO0B,KAAK5B,KAAKoB,uCAK1BE,OAAFC,eAAMJ,EAANV,UAAA,aAAE,WAAyB,MAAOT,MAAKM,qCAGrCa,EAAFV,UAAAoB,mBAAE,WACE7B,KAAKqB,gBAAiB,GAGxBF,EAAFV,UAAAC,YAAE,WACEV,KAAKE,OAAOS,2BA3ChBC,KAACkB,EAAAA,UAADhB,OACEiB,SAAU,QACVC,YAAaC,QAASnC,EAAgBoC,YAAaf,IACnDgB,MAAOC,aAAc,WACrBC,SAAU,4BAaZnC,SAAAU,KAAG0B,EAAAA,OAAHxB,MAAU,eAGVR,MAAAM,KAAG2B,EAAAA,SAyBHpB,KC1DAqB,EAAA,WAAA,QAAAA,MAI0B,sBAJ1B5B,KAAC6B,EAAAA,SAAD3B,OACE4B,SAAUvB,GACVwB,cAAexB,OAEjBqB"}
@@ -13,7 +13,7 @@
13
13
 
14
14
  /**
15
15
  * @fileoverview added by tsickle
16
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
16
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
17
17
  */
18
18
 
19
19
  /**
@@ -27,7 +27,7 @@ function coerceBooleanProperty(value) {
27
27
 
28
28
  /**
29
29
  * @fileoverview added by tsickle
30
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
30
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
31
31
  */
32
32
 
33
33
  /**
@@ -54,7 +54,7 @@ function _isNumberValue(value) {
54
54
 
55
55
  /**
56
56
  * @fileoverview added by tsickle
57
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
57
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
58
58
  */
59
59
 
60
60
  /**
@@ -69,7 +69,7 @@ function coerceArray(value) {
69
69
 
70
70
  /**
71
71
  * @fileoverview added by tsickle
72
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
72
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
73
73
  */
74
74
 
75
75
  /**
@@ -86,7 +86,7 @@ function coerceCssPixelValue(value) {
86
86
 
87
87
  /**
88
88
  * @fileoverview added by tsickle
89
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
89
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
90
90
  */
91
91
  /**
92
92
  * Coerces an ElementRef or an Element into an element.
@@ -42,7 +42,7 @@ function __extends(d, b) {
42
42
 
43
43
  /**
44
44
  * @fileoverview added by tsickle
45
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
45
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
46
46
  */
47
47
 
48
48
  /**
@@ -72,7 +72,7 @@ function isDataSource(value) {
72
72
 
73
73
  /**
74
74
  * @fileoverview added by tsickle
75
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
75
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
76
76
  */
77
77
  /**
78
78
  * DataSource wrapper for a native array.
@@ -110,12 +110,12 @@ ArrayDataSource = /** @class */ (function (_super) {
110
110
 
111
111
  /**
112
112
  * @fileoverview added by tsickle
113
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
113
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
114
114
  */
115
115
 
116
116
  /**
117
117
  * @fileoverview added by tsickle
118
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
118
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
119
119
  */
120
120
  /**
121
121
  * Class to be used to power selecting one or more options from a list.
@@ -127,9 +127,9 @@ var /**
127
127
  */
128
128
  SelectionModel = /** @class */ (function () {
129
129
  function SelectionModel(_multiple, initiallySelectedValues, _emitChanges) {
130
+ var _this = this;
130
131
  if (_multiple === void 0) { _multiple = false; }
131
132
  if (_emitChanges === void 0) { _emitChanges = true; }
132
- var _this = this;
133
133
  this._multiple = _multiple;
134
134
  this._emitChanges = _emitChanges;
135
135
  /**
@@ -156,7 +156,11 @@ SelectionModel = /** @class */ (function () {
156
156
  this.onChange = this.changed;
157
157
  if (initiallySelectedValues && initiallySelectedValues.length) {
158
158
  if (_multiple) {
159
- initiallySelectedValues.forEach(function (value) { return _this._markSelected(value); });
159
+ initiallySelectedValues.forEach((/**
160
+ * @param {?} value
161
+ * @return {?}
162
+ */
163
+ function (value) { return _this._markSelected(value); }));
160
164
  }
161
165
  else {
162
166
  this._markSelected(initiallySelectedValues[0]);
@@ -200,7 +204,11 @@ SelectionModel = /** @class */ (function () {
200
204
  values[_i] = arguments[_i];
201
205
  }
202
206
  this._verifyValueAssignment(values);
203
- values.forEach(function (value) { return _this._markSelected(value); });
207
+ values.forEach((/**
208
+ * @param {?} value
209
+ * @return {?}
210
+ */
211
+ function (value) { return _this._markSelected(value); }));
204
212
  this._emitChangeEvent();
205
213
  };
206
214
  /**
@@ -223,7 +231,11 @@ SelectionModel = /** @class */ (function () {
223
231
  values[_i] = arguments[_i];
224
232
  }
225
233
  this._verifyValueAssignment(values);
226
- values.forEach(function (value) { return _this._unmarkSelected(value); });
234
+ values.forEach((/**
235
+ * @param {?} value
236
+ * @return {?}
237
+ */
238
+ function (value) { return _this._unmarkSelected(value); }));
227
239
  this._emitChangeEvent();
228
240
  };
229
241
  /**
@@ -416,7 +428,11 @@ SelectionModel = /** @class */ (function () {
416
428
  function () {
417
429
  var _this = this;
418
430
  if (!this.isEmpty()) {
419
- this._selection.forEach(function (value) { return _this._unmarkSelected(value); });
431
+ this._selection.forEach((/**
432
+ * @param {?} value
433
+ * @return {?}
434
+ */
435
+ function (value) { return _this._unmarkSelected(value); }));
420
436
  }
421
437
  };
422
438
  /**
@@ -456,7 +472,7 @@ function getMultipleValuesInSingleSelectionError() {
456
472
 
457
473
  /**
458
474
  * @fileoverview added by tsickle
459
- * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
475
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
460
476
  */
461
477
  /**
462
478
  * Class to coordinate unique selection based on name.
@@ -511,11 +527,18 @@ var UniqueSelectionDispatcher = /** @class */ (function () {
511
527
  function (listener) {
512
528
  var _this = this;
513
529
  this._listeners.push(listener);
514
- return function () {
515
- _this._listeners = _this._listeners.filter(function (registered) {
530
+ return (/**
531
+ * @return {?}
532
+ */
533
+ function () {
534
+ _this._listeners = _this._listeners.filter((/**
535
+ * @param {?} registered
536
+ * @return {?}
537
+ */
538
+ function (registered) {
516
539
  return listener !== registered;
517
- });
518
- };
540
+ }));
541
+ });
519
542
  };
520
543
  /**
521
544
  * @return {?}
@@ -529,7 +552,7 @@ var UniqueSelectionDispatcher = /** @class */ (function () {
529
552
  UniqueSelectionDispatcher.decorators = [
530
553
  { type: core.Injectable, args: [{ providedIn: 'root' },] },
531
554
  ];
532
- /** @nocollapse */ UniqueSelectionDispatcher.ngInjectableDef = core.defineInjectable({ factory: function UniqueSelectionDispatcher_Factory() { return new UniqueSelectionDispatcher(); }, token: UniqueSelectionDispatcher, providedIn: "root" });
555
+ /** @nocollapse */ UniqueSelectionDispatcher.ngInjectableDef = core.ɵɵdefineInjectable({ factory: function UniqueSelectionDispatcher_Factory() { return new UniqueSelectionDispatcher(); }, token: UniqueSelectionDispatcher, providedIn: "root" });
533
556
  return UniqueSelectionDispatcher;
534
557
  }());
535
558
 
@@ -1 +1 @@
1
- {"version":3,"file":"cdk-collections.umd.js","sources":["../../src/cdk/collections/unique-selection-dispatcher.ts","../../src/cdk/collections/selection.ts","../../src/cdk/collections/array-data-source.ts","../../src/cdk/collections/data-source.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 {Injectable, OnDestroy} from '@angular/core';\n\n\n// Users of the Dispatcher never need to see this type, but TypeScript requires it to be exported.\nexport type UniqueSelectionDispatcherListener = (id: string, name: string) => void;\n\n/**\n * Class to coordinate unique selection based on name.\n * Intended to be consumed as an Angular service.\n * This service is needed because native radio change events are only fired on the item currently\n * being selected, and we still need to uncheck the previous selection.\n *\n * This service does not *store* any IDs and names because they may change at any time, so it is\n * less error-prone if they are simply passed through when the events occur.\n */\n@Injectable({providedIn: 'root'})\nexport class UniqueSelectionDispatcher implements OnDestroy {\n private _listeners: UniqueSelectionDispatcherListener[] = [];\n\n /**\n * Notify other items that selection for the given name has been set.\n * @param id ID of the item.\n * @param name Name of the item.\n */\n notify(id: string, name: string) {\n for (let listener of this._listeners) {\n listener(id, name);\n }\n }\n\n /**\n * Listen for future changes to item selection.\n * @return Function used to deregister listener\n */\n listen(listener: UniqueSelectionDispatcherListener): () => void {\n this._listeners.push(listener);\n return () => {\n this._listeners = this._listeners.filter((registered: UniqueSelectionDispatcherListener) => {\n return listener !== registered;\n });\n };\n }\n\n ngOnDestroy() {\n this._listeners = [];\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 {Subject} from 'rxjs';\n\n/**\n * Class to be used to power selecting one or more options from a list.\n */\nexport class SelectionModel<T> {\n /** Currently-selected values. */\n private _selection = new Set<T>();\n\n /** Keeps track of the deselected options that haven't been emitted by the change event. */\n private _deselectedToEmit: T[] = [];\n\n /** Keeps track of the selected options that haven't been emitted by the change event. */\n private _selectedToEmit: T[] = [];\n\n /** Cache for the array value of the selected items. */\n private _selected: T[] | null;\n\n /** Selected values. */\n get selected(): T[] {\n if (!this._selected) {\n this._selected = Array.from(this._selection.values());\n }\n\n return this._selected;\n }\n\n /** Event emitted when the value has changed. */\n changed: Subject<SelectionChange<T>> = new Subject();\n\n /**\n * Event emitted when the value has changed.\n * @deprecated Use `changed` instead.\n * @breaking-change 8.0.0 To be changed to `changed`\n */\n onChange: Subject<SelectionChange<T>> = this.changed;\n\n constructor(\n private _multiple = false,\n initiallySelectedValues?: T[],\n private _emitChanges = true) {\n\n if (initiallySelectedValues && initiallySelectedValues.length) {\n if (_multiple) {\n initiallySelectedValues.forEach(value => this._markSelected(value));\n } else {\n this._markSelected(initiallySelectedValues[0]);\n }\n\n // Clear the array in order to avoid firing the change event for preselected values.\n this._selectedToEmit.length = 0;\n }\n }\n\n /**\n * Selects a value or an array of values.\n */\n select(...values: T[]): void {\n this._verifyValueAssignment(values);\n values.forEach(value => this._markSelected(value));\n this._emitChangeEvent();\n }\n\n /**\n * Deselects a value or an array of values.\n */\n deselect(...values: T[]): void {\n this._verifyValueAssignment(values);\n values.forEach(value => this._unmarkSelected(value));\n this._emitChangeEvent();\n }\n\n /**\n * Toggles a value between selected and deselected.\n */\n toggle(value: T): void {\n this.isSelected(value) ? this.deselect(value) : this.select(value);\n }\n\n /**\n * Clears all of the selected values.\n */\n clear(): void {\n this._unmarkAll();\n this._emitChangeEvent();\n }\n\n /**\n * Determines whether a value is selected.\n */\n isSelected(value: T): boolean {\n return this._selection.has(value);\n }\n\n /**\n * Determines whether the model does not have a value.\n */\n isEmpty(): boolean {\n return this._selection.size === 0;\n }\n\n /**\n * Determines whether the model has a value.\n */\n hasValue(): boolean {\n return !this.isEmpty();\n }\n\n /**\n * Sorts the selected values based on a predicate function.\n */\n sort(predicate?: (a: T, b: T) => number): void {\n if (this._multiple && this.selected) {\n this._selected!.sort(predicate);\n }\n }\n\n /**\n * Gets whether multiple values can be selected.\n */\n isMultipleSelection() {\n return this._multiple;\n }\n\n /** Emits a change event and clears the records of selected and deselected values. */\n private _emitChangeEvent() {\n // Clear the selected values so they can be re-cached.\n this._selected = null;\n\n if (this._selectedToEmit.length || this._deselectedToEmit.length) {\n this.changed.next({\n source: this,\n added: this._selectedToEmit,\n removed: this._deselectedToEmit\n });\n\n this._deselectedToEmit = [];\n this._selectedToEmit = [];\n }\n }\n\n /** Selects a value. */\n private _markSelected(value: T) {\n if (!this.isSelected(value)) {\n if (!this._multiple) {\n this._unmarkAll();\n }\n\n this._selection.add(value);\n\n if (this._emitChanges) {\n this._selectedToEmit.push(value);\n }\n }\n }\n\n /** Deselects a value. */\n private _unmarkSelected(value: T) {\n if (this.isSelected(value)) {\n this._selection.delete(value);\n\n if (this._emitChanges) {\n this._deselectedToEmit.push(value);\n }\n }\n }\n\n /** Clears out the selected values. */\n private _unmarkAll() {\n if (!this.isEmpty()) {\n this._selection.forEach(value => this._unmarkSelected(value));\n }\n }\n\n /**\n * Verifies the value assignment and throws an error if the specified value array is\n * including multiple values while the selection model is not supporting multiple values.\n */\n private _verifyValueAssignment(values: T[]) {\n if (values.length > 1 && !this._multiple) {\n throw getMultipleValuesInSingleSelectionError();\n }\n }\n}\n\n/**\n * Event emitted when the value of a MatSelectionModel has changed.\n * @docs-private\n */\nexport interface SelectionChange<T> {\n /** Model that dispatched the event. */\n source: SelectionModel<T>;\n /** Options that were added to the model. */\n added: T[];\n /** Options that were removed from the model. */\n removed: T[];\n}\n\n/**\n * Returns an error that reports that multiple values are passed into a selection model\n * with a single value.\n * @docs-private\n */\nexport function getMultipleValuesInSingleSelectionError() {\n return Error('Cannot pass multiple values into SelectionModel with single-value mode.');\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 {Observable, of as observableOf} from 'rxjs';\nimport {DataSource} from './data-source';\n\n\n/** DataSource wrapper for a native array. */\nexport class ArrayDataSource<T> extends DataSource<T> {\n constructor(private _data: T[] | ReadonlyArray<T> | Observable<T[] | ReadonlyArray<T>>) {\n super();\n }\n\n connect(): Observable<T[] | ReadonlyArray<T>> {\n return this._data instanceof Observable ? this._data : observableOf(this._data);\n }\n\n disconnect() {}\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 {Observable} from 'rxjs';\nimport {CollectionViewer} from './collection-viewer';\n\nexport abstract class DataSource<T> {\n /**\n * Connects a collection viewer (such as a data-table) to this data source. Note that\n * the stream provided will be accessed during change detection and should not directly change\n * values that are bound in template views.\n * @param collectionViewer The component that exposes a view over the data provided by this\n * data source.\n * @returns Observable that emits a new value when the data changes.\n */\n abstract connect(collectionViewer: CollectionViewer): Observable<T[] | ReadonlyArray<T>>;\n\n /**\n * Disconnects a collection viewer (such as a data-table) from this data source. Can be used\n * to perform any clean-up or tear-down operations when a view is being destroyed.\n *\n * @param collectionViewer The component that exposes a view over the data provided by this\n * data source.\n */\n abstract disconnect(collectionViewer: CollectionViewer): void;\n}\n\n/** Checks whether an object is a data source. */\nexport function isDataSource(value: any): value is DataSource<any> {\n // Check if the value is a DataSource by observing if it has a connect function. Cannot\n // be checked as an `instanceof DataSource` since people could create their own sources\n // that match the interface, but don't extend DataSource.\n return value && typeof value.connect === 'function';\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":["Injectable","Subject","Observable","observableOf","tslib_1.__extends"],"mappings":"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"}
1
+ {"version":3,"file":"cdk-collections.umd.js","sources":["../../src/cdk/collections/unique-selection-dispatcher.ts","../../src/cdk/collections/selection.ts","../../src/cdk/collections/array-data-source.ts","../../src/cdk/collections/data-source.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 {Injectable, OnDestroy} from '@angular/core';\n\n\n// Users of the Dispatcher never need to see this type, but TypeScript requires it to be exported.\nexport type UniqueSelectionDispatcherListener = (id: string, name: string) => void;\n\n/**\n * Class to coordinate unique selection based on name.\n * Intended to be consumed as an Angular service.\n * This service is needed because native radio change events are only fired on the item currently\n * being selected, and we still need to uncheck the previous selection.\n *\n * This service does not *store* any IDs and names because they may change at any time, so it is\n * less error-prone if they are simply passed through when the events occur.\n */\n@Injectable({providedIn: 'root'})\nexport class UniqueSelectionDispatcher implements OnDestroy {\n private _listeners: UniqueSelectionDispatcherListener[] = [];\n\n /**\n * Notify other items that selection for the given name has been set.\n * @param id ID of the item.\n * @param name Name of the item.\n */\n notify(id: string, name: string) {\n for (let listener of this._listeners) {\n listener(id, name);\n }\n }\n\n /**\n * Listen for future changes to item selection.\n * @return Function used to deregister listener\n */\n listen(listener: UniqueSelectionDispatcherListener): () => void {\n this._listeners.push(listener);\n return () => {\n this._listeners = this._listeners.filter((registered: UniqueSelectionDispatcherListener) => {\n return listener !== registered;\n });\n };\n }\n\n ngOnDestroy() {\n this._listeners = [];\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 {Subject} from 'rxjs';\n\n/**\n * Class to be used to power selecting one or more options from a list.\n */\nexport class SelectionModel<T> {\n /** Currently-selected values. */\n private _selection = new Set<T>();\n\n /** Keeps track of the deselected options that haven't been emitted by the change event. */\n private _deselectedToEmit: T[] = [];\n\n /** Keeps track of the selected options that haven't been emitted by the change event. */\n private _selectedToEmit: T[] = [];\n\n /** Cache for the array value of the selected items. */\n private _selected: T[] | null;\n\n /** Selected values. */\n get selected(): T[] {\n if (!this._selected) {\n this._selected = Array.from(this._selection.values());\n }\n\n return this._selected;\n }\n\n /** Event emitted when the value has changed. */\n changed: Subject<SelectionChange<T>> = new Subject();\n\n /**\n * Event emitted when the value has changed.\n * @deprecated Use `changed` instead.\n * @breaking-change 8.0.0 To be changed to `changed`\n */\n onChange: Subject<SelectionChange<T>> = this.changed;\n\n constructor(\n private _multiple = false,\n initiallySelectedValues?: T[],\n private _emitChanges = true) {\n\n if (initiallySelectedValues && initiallySelectedValues.length) {\n if (_multiple) {\n initiallySelectedValues.forEach(value => this._markSelected(value));\n } else {\n this._markSelected(initiallySelectedValues[0]);\n }\n\n // Clear the array in order to avoid firing the change event for preselected values.\n this._selectedToEmit.length = 0;\n }\n }\n\n /**\n * Selects a value or an array of values.\n */\n select(...values: T[]): void {\n this._verifyValueAssignment(values);\n values.forEach(value => this._markSelected(value));\n this._emitChangeEvent();\n }\n\n /**\n * Deselects a value or an array of values.\n */\n deselect(...values: T[]): void {\n this._verifyValueAssignment(values);\n values.forEach(value => this._unmarkSelected(value));\n this._emitChangeEvent();\n }\n\n /**\n * Toggles a value between selected and deselected.\n */\n toggle(value: T): void {\n this.isSelected(value) ? this.deselect(value) : this.select(value);\n }\n\n /**\n * Clears all of the selected values.\n */\n clear(): void {\n this._unmarkAll();\n this._emitChangeEvent();\n }\n\n /**\n * Determines whether a value is selected.\n */\n isSelected(value: T): boolean {\n return this._selection.has(value);\n }\n\n /**\n * Determines whether the model does not have a value.\n */\n isEmpty(): boolean {\n return this._selection.size === 0;\n }\n\n /**\n * Determines whether the model has a value.\n */\n hasValue(): boolean {\n return !this.isEmpty();\n }\n\n /**\n * Sorts the selected values based on a predicate function.\n */\n sort(predicate?: (a: T, b: T) => number): void {\n if (this._multiple && this.selected) {\n this._selected!.sort(predicate);\n }\n }\n\n /**\n * Gets whether multiple values can be selected.\n */\n isMultipleSelection() {\n return this._multiple;\n }\n\n /** Emits a change event and clears the records of selected and deselected values. */\n private _emitChangeEvent() {\n // Clear the selected values so they can be re-cached.\n this._selected = null;\n\n if (this._selectedToEmit.length || this._deselectedToEmit.length) {\n this.changed.next({\n source: this,\n added: this._selectedToEmit,\n removed: this._deselectedToEmit\n });\n\n this._deselectedToEmit = [];\n this._selectedToEmit = [];\n }\n }\n\n /** Selects a value. */\n private _markSelected(value: T) {\n if (!this.isSelected(value)) {\n if (!this._multiple) {\n this._unmarkAll();\n }\n\n this._selection.add(value);\n\n if (this._emitChanges) {\n this._selectedToEmit.push(value);\n }\n }\n }\n\n /** Deselects a value. */\n private _unmarkSelected(value: T) {\n if (this.isSelected(value)) {\n this._selection.delete(value);\n\n if (this._emitChanges) {\n this._deselectedToEmit.push(value);\n }\n }\n }\n\n /** Clears out the selected values. */\n private _unmarkAll() {\n if (!this.isEmpty()) {\n this._selection.forEach(value => this._unmarkSelected(value));\n }\n }\n\n /**\n * Verifies the value assignment and throws an error if the specified value array is\n * including multiple values while the selection model is not supporting multiple values.\n */\n private _verifyValueAssignment(values: T[]) {\n if (values.length > 1 && !this._multiple) {\n throw getMultipleValuesInSingleSelectionError();\n }\n }\n}\n\n/**\n * Event emitted when the value of a MatSelectionModel has changed.\n * @docs-private\n */\nexport interface SelectionChange<T> {\n /** Model that dispatched the event. */\n source: SelectionModel<T>;\n /** Options that were added to the model. */\n added: T[];\n /** Options that were removed from the model. */\n removed: T[];\n}\n\n/**\n * Returns an error that reports that multiple values are passed into a selection model\n * with a single value.\n * @docs-private\n */\nexport function getMultipleValuesInSingleSelectionError() {\n return Error('Cannot pass multiple values into SelectionModel with single-value mode.');\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 {Observable, of as observableOf} from 'rxjs';\nimport {DataSource} from './data-source';\n\n\n/** DataSource wrapper for a native array. */\nexport class ArrayDataSource<T> extends DataSource<T> {\n constructor(private _data: T[] | ReadonlyArray<T> | Observable<T[] | ReadonlyArray<T>>) {\n super();\n }\n\n connect(): Observable<T[] | ReadonlyArray<T>> {\n return this._data instanceof Observable ? this._data : observableOf(this._data);\n }\n\n disconnect() {}\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 {Observable} from 'rxjs';\nimport {CollectionViewer} from './collection-viewer';\n\nexport abstract class DataSource<T> {\n /**\n * Connects a collection viewer (such as a data-table) to this data source. Note that\n * the stream provided will be accessed during change detection and should not directly change\n * values that are bound in template views.\n * @param collectionViewer The component that exposes a view over the data provided by this\n * data source.\n * @returns Observable that emits a new value when the data changes.\n */\n abstract connect(collectionViewer: CollectionViewer): Observable<T[] | ReadonlyArray<T>>;\n\n /**\n * Disconnects a collection viewer (such as a data-table) from this data source. Can be used\n * to perform any clean-up or tear-down operations when a view is being destroyed.\n *\n * @param collectionViewer The component that exposes a view over the data provided by this\n * data source.\n */\n abstract disconnect(collectionViewer: CollectionViewer): void;\n}\n\n/** Checks whether an object is a data source. */\nexport function isDataSource(value: any): value is DataSource<any> {\n // Check if the value is a DataSource by observing if it has a connect function. Cannot\n // be checked as an `instanceof DataSource` since people could create their own sources\n // that match the interface, but don't extend DataSource.\n return value && typeof value.connect === 'function';\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":["Injectable","Subject","Observable","observableOf","tslib_1.__extends"],"mappings":"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"}