@angular/cdk 2.0.0-beta.10 → 2.0.0-beta.11
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.
- package/a11y/package.json +2 -2
- package/a11y/typings/aria-describer.d.ts +51 -0
- package/a11y/typings/aria-reference.d.ts +15 -0
- package/a11y/typings/focus-monitor.d.ts +106 -0
- package/a11y/typings/index.metadata.json +1 -1
- package/a11y/typings/public_api.d.ts +5 -3
- package/bidi/package.json +2 -2
- package/bundles/cdk-a11y.umd.js +639 -25
- package/bundles/cdk-a11y.umd.js.map +1 -1
- package/bundles/cdk-a11y.umd.min.js +9 -0
- package/bundles/cdk-a11y.umd.min.js.map +1 -0
- package/bundles/cdk-bidi.umd.min.js +9 -0
- package/bundles/cdk-bidi.umd.min.js.map +1 -0
- package/bundles/cdk-coercion.umd.min.js +9 -0
- package/bundles/cdk-coercion.umd.min.js.map +1 -0
- package/bundles/cdk-collections.umd.min.js +9 -0
- package/bundles/cdk-collections.umd.min.js.map +1 -0
- package/bundles/cdk-keycodes.umd.min.js +9 -0
- package/bundles/cdk-keycodes.umd.min.js.map +1 -0
- package/bundles/cdk-observers.umd.min.js +9 -0
- package/bundles/cdk-observers.umd.min.js.map +1 -0
- package/bundles/cdk-overlay.umd.js +49 -75
- package/bundles/cdk-overlay.umd.js.map +1 -1
- package/bundles/cdk-overlay.umd.min.js +9 -0
- package/bundles/cdk-overlay.umd.min.js.map +1 -0
- package/bundles/cdk-platform.umd.min.js +9 -0
- package/bundles/cdk-platform.umd.min.js.map +1 -0
- package/bundles/cdk-portal.umd.min.js +9 -0
- package/bundles/cdk-portal.umd.min.js.map +1 -0
- package/bundles/cdk-rxjs.umd.js.map +1 -1
- package/bundles/cdk-rxjs.umd.min.js +9 -0
- package/bundles/cdk-rxjs.umd.min.js.map +1 -0
- package/bundles/cdk-scrolling.umd.min.js +9 -0
- package/bundles/cdk-scrolling.umd.min.js.map +1 -0
- package/bundles/cdk-stepper.umd.js +460 -0
- package/bundles/cdk-stepper.umd.js.map +1 -0
- package/bundles/cdk-stepper.umd.min.js +9 -0
- package/bundles/cdk-stepper.umd.min.js.map +1 -0
- package/bundles/cdk-table.umd.js +8 -8
- package/bundles/cdk-table.umd.js.map +1 -1
- package/bundles/cdk-table.umd.min.js +9 -0
- package/bundles/cdk-table.umd.min.js.map +1 -0
- package/bundles/cdk.umd.js +1 -1
- package/bundles/cdk.umd.js.map +1 -1
- package/bundles/cdk.umd.min.js +9 -0
- package/bundles/cdk.umd.min.js.map +1 -0
- package/coercion/package.json +2 -2
- package/collections/package.json +2 -2
- package/collections/typings/selection.d.ts +3 -3
- package/{@angular/cdk → esm2015}/a11y.js +617 -17
- package/esm2015/a11y.js.map +1 -0
- package/{@angular/cdk → esm2015}/bidi.js +0 -0
- package/{@angular/cdk → esm2015}/bidi.js.map +0 -0
- package/{@angular → esm2015}/cdk.js +1 -1
- package/{@angular → esm2015}/cdk.js.map +1 -1
- package/{@angular/cdk → esm2015}/coercion.js +0 -0
- package/{@angular/cdk → esm2015}/coercion.js.map +0 -0
- package/{@angular/cdk → esm2015}/collections.js +0 -0
- package/{@angular/cdk → esm2015}/collections.js.map +0 -0
- package/{@angular/cdk → esm2015}/keycodes.js +0 -0
- package/{@angular/cdk → esm2015}/keycodes.js.map +0 -0
- package/{@angular/cdk → esm2015}/observers.js +0 -0
- package/{@angular/cdk → esm2015}/observers.js.map +0 -0
- package/{@angular/cdk → esm2015}/overlay.js +44 -66
- package/esm2015/overlay.js.map +1 -0
- package/{@angular/cdk → esm2015}/platform.js +0 -0
- package/{@angular/cdk → esm2015}/platform.js.map +0 -0
- package/{@angular/cdk → esm2015}/portal.js +0 -0
- package/{@angular/cdk → esm2015}/portal.js.map +0 -0
- package/{@angular/cdk → esm2015}/rxjs.js +0 -0
- package/esm2015/rxjs.js.map +1 -0
- package/{@angular/cdk → esm2015}/scrolling.js +0 -0
- package/{@angular/cdk → esm2015}/scrolling.js.map +0 -0
- package/esm2015/stepper.js +418 -0
- package/esm2015/stepper.js.map +1 -0
- package/{@angular/cdk → esm2015}/table.js +8 -8
- package/esm2015/table.js.map +1 -0
- package/{@angular/cdk → esm5}/a11y.es5.js +622 -17
- package/esm5/a11y.es5.js.map +1 -0
- package/{@angular/cdk → esm5}/bidi.es5.js +0 -0
- package/{@angular/cdk → esm5}/bidi.es5.js.map +0 -0
- package/{@angular → esm5}/cdk.es5.js +1 -1
- package/{@angular → esm5}/cdk.es5.js.map +1 -1
- package/{@angular/cdk → esm5}/coercion.es5.js +0 -0
- package/{@angular/cdk → esm5}/coercion.es5.js.map +0 -0
- package/{@angular/cdk → esm5}/collections.es5.js +0 -0
- package/{@angular/cdk → esm5}/collections.es5.js.map +0 -0
- package/{@angular/cdk → esm5}/keycodes.es5.js +0 -0
- package/{@angular/cdk → esm5}/keycodes.es5.js.map +0 -0
- package/{@angular/cdk → esm5}/observers.es5.js +0 -0
- package/{@angular/cdk → esm5}/observers.es5.js.map +0 -0
- package/{@angular/cdk → esm5}/overlay.es5.js +46 -71
- package/esm5/overlay.es5.js.map +1 -0
- package/{@angular/cdk → esm5}/platform.es5.js +0 -0
- package/{@angular/cdk → esm5}/platform.es5.js.map +0 -0
- package/{@angular/cdk → esm5}/portal.es5.js +0 -0
- package/{@angular/cdk → esm5}/portal.es5.js.map +0 -0
- package/{@angular/cdk → esm5}/rxjs.es5.js +0 -0
- package/esm5/rxjs.es5.js.map +1 -0
- package/{@angular/cdk → esm5}/scrolling.es5.js +0 -0
- package/{@angular/cdk → esm5}/scrolling.es5.js.map +0 -0
- package/esm5/stepper.es5.js +451 -0
- package/esm5/stepper.es5.js.map +1 -0
- package/{@angular/cdk → esm5}/table.es5.js +8 -8
- package/esm5/table.es5.js.map +1 -0
- package/keycodes/package.json +2 -2
- package/observers/package.json +2 -2
- package/overlay/package.json +2 -2
- package/overlay/typings/index.metadata.json +1 -1
- package/overlay/typings/{overlay-state.d.ts → overlay-config.d.ts} +5 -7
- package/overlay/typings/overlay-container.d.ts +1 -6
- package/overlay/typings/overlay-ref.d.ts +3 -3
- package/overlay/typings/overlay.d.ts +2 -2
- package/overlay/typings/position/connected-position-strategy.d.ts +1 -3
- package/overlay/typings/public_api.d.ts +1 -1
- package/overlay/typings/scroll/reposition-scroll-strategy.d.ts +1 -1
- package/package.json +5 -5
- package/platform/package.json +2 -2
- package/portal/package.json +2 -2
- package/portal/typings/portal-injector.d.ts +19 -0
- package/rxjs/package.json +2 -2
- package/rxjs/typings/rx-chain.d.ts +1 -1
- package/rxjs/typings/rx-operators.d.ts +1 -1
- package/scrolling/package.json +2 -2
- package/stepper/index.d.ts +8 -0
- package/stepper/index.metadata.json +11 -0
- package/stepper/package.json +7 -0
- package/stepper/typings/index.d.ts +4 -0
- package/stepper/typings/index.metadata.json +1 -0
- package/stepper/typings/public_api.d.ts +5 -0
- package/stepper/typings/step-label.d.ts +12 -0
- package/stepper/typings/stepper-button.d.ts +11 -0
- package/stepper/typings/stepper.d.ts +93 -0
- package/stepper.d.ts +8 -0
- package/stepper.metadata.json +11 -0
- package/table/package.json +2 -2
- package/table/typings/index.metadata.json +1 -1
- package/typings/a11y/aria-describer.d.ts +51 -0
- package/typings/a11y/aria-reference.d.ts +15 -0
- package/typings/a11y/focus-monitor.d.ts +106 -0
- package/typings/a11y/index.metadata.json +1 -1
- package/typings/a11y/public_api.d.ts +5 -3
- package/typings/collections/selection.d.ts +3 -3
- package/typings/index.metadata.json +1 -1
- package/typings/overlay/index.metadata.json +1 -1
- package/typings/overlay/{overlay-state.d.ts → overlay-config.d.ts} +5 -7
- package/typings/overlay/overlay-container.d.ts +1 -6
- package/typings/overlay/overlay-ref.d.ts +3 -3
- package/typings/overlay/overlay.d.ts +2 -2
- package/typings/overlay/position/connected-position-strategy.d.ts +1 -3
- package/typings/overlay/public_api.d.ts +1 -1
- package/typings/overlay/scroll/reposition-scroll-strategy.d.ts +1 -1
- package/typings/portal/portal-injector.d.ts +19 -0
- package/typings/rxjs/rx-chain.d.ts +1 -1
- package/typings/rxjs/rx-operators.d.ts +1 -1
- package/typings/stepper/index.d.ts +4 -0
- package/typings/stepper/index.metadata.json +1 -0
- package/typings/stepper/public_api.d.ts +5 -0
- package/typings/stepper/step-label.d.ts +12 -0
- package/typings/stepper/stepper-button.d.ts +11 -0
- package/typings/stepper/stepper.d.ts +93 -0
- package/typings/table/index.metadata.json +1 -1
- package/@angular/cdk/a11y.es5.js.map +0 -1
- package/@angular/cdk/a11y.js.map +0 -1
- package/@angular/cdk/overlay.es5.js.map +0 -1
- package/@angular/cdk/overlay.js.map +0 -1
- package/@angular/cdk/rxjs.es5.js.map +0 -1
- package/@angular/cdk/rxjs.js.map +0 -1
- package/@angular/cdk/table.es5.js.map +0 -1
- package/@angular/cdk/table.js.map +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google Inc. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/cdk/keycodes"),require("@angular/cdk/coercion"),require("@angular/cdk/bidi"),require("@angular/common")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/cdk/keycodes","@angular/cdk/coercion","@angular/cdk/bidi","@angular/common"],t):t((e.ng=e.ng||{},e.ng.cdk=e.ng.cdk||{},e.ng.cdk.stepper=e.ng.cdk.stepper||{}),e.ng.core,e.ng.cdk.keycodes,e.ng.cdk.coercion,e.ng.cdk.bidi,e.ng.common)}(this,function(e,t,n,r,o,i){"use strict";var s=function(){function e(e){this.template=e}return e}();s.decorators=[{type:t.Directive,args:[{selector:"[cdkStepLabel]"}]}],s.ctorParameters=function(){return[{type:t.TemplateRef}]};var c=0,p=function(){function e(){}return e}(),u=function(){function e(e){this._stepper=e,this.interacted=!1,this._editable=!0,this._optional=!1,this._customCompleted=null}return Object.defineProperty(e.prototype,"editable",{get:function(){return this._editable},set:function(e){this._editable=r.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"optional",{get:function(){return this._optional},set:function(e){this._optional=r.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"completed",{get:function(){return null==this._customCompleted?this._defaultCompleted:this._customCompleted},set:function(e){this._customCompleted=r.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"_defaultCompleted",{get:function(){return this.stepControl?this.stepControl.valid&&this.interacted:this.interacted},enumerable:!0,configurable:!0}),e.prototype.select=function(){this._stepper.selected=this},e}();u.decorators=[{type:t.Component,args:[{selector:"cdk-step",template:"<ng-template><ng-content></ng-content></ng-template>",encapsulation:t.ViewEncapsulation.None,preserveWhitespaces:!1}]}],u.ctorParameters=function(){return[{type:a,decorators:[{type:t.Inject,args:[t.forwardRef(function(){return a})]}]}]},u.propDecorators={stepLabel:[{type:t.ContentChild,args:[s]}],content:[{type:t.ViewChild,args:[t.TemplateRef]}],stepControl:[{type:t.Input}],label:[{type:t.Input}],editable:[{type:t.Input}],optional:[{type:t.Input}],completed:[{type:t.Input}]};var a=function(){function e(e){this._dir=e,this._linear=!1,this._selectedIndex=0,this.selectionChange=new t.EventEmitter,this._focusIndex=0,this._groupId=c++}return Object.defineProperty(e.prototype,"linear",{get:function(){return this._linear},set:function(e){this._linear=r.coerceBooleanProperty(e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selectedIndex",{get:function(){return this._selectedIndex},set:function(e){this._anyControlsInvalid(e)||e<this._selectedIndex&&!this._steps.toArray()[e].editable?this._stepHeader.toArray()[e].nativeElement.blur():this._selectedIndex!=e&&(this._emitStepperSelectionEvent(e),this._focusIndex=this._selectedIndex)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"selected",{get:function(){return this._steps[this.selectedIndex]},set:function(e){this.selectedIndex=this._steps.toArray().indexOf(e)},enumerable:!0,configurable:!0}),e.prototype.next=function(){this.selectedIndex=Math.min(this._selectedIndex+1,this._steps.length-1)},e.prototype.previous=function(){this.selectedIndex=Math.max(this._selectedIndex-1,0)},e.prototype._getStepLabelId=function(e){return"mat-step-label-"+this._groupId+"-"+e},e.prototype._getStepContentId=function(e){return"mat-step-content-"+this._groupId+"-"+e},e.prototype._getAnimationDirection=function(e){var t=e-this._selectedIndex;return t<0?"rtl"===this._layoutDirection()?"next":"previous":t>0?"rtl"===this._layoutDirection()?"previous":"next":"current"},e.prototype._getIndicatorType=function(e){var t=this._steps.toArray()[e];return t.completed&&this._selectedIndex!=e?t.editable?"edit":"done":"number"},e.prototype._emitStepperSelectionEvent=function(e){var t=this._steps.toArray();this.selectionChange.emit({selectedIndex:e,previouslySelectedIndex:this._selectedIndex,selectedStep:t[e],previouslySelectedStep:t[this._selectedIndex]}),this._selectedIndex=e},e.prototype._onKeydown=function(e){switch(e.keyCode){case n.RIGHT_ARROW:"rtl"===this._layoutDirection()?this._focusPreviousStep():this._focusNextStep();break;case n.LEFT_ARROW:"rtl"===this._layoutDirection()?this._focusNextStep():this._focusPreviousStep();break;case n.SPACE:case n.ENTER:this.selectedIndex=this._focusIndex;break;default:return}e.preventDefault()},e.prototype._focusNextStep=function(){this._focusStep((this._focusIndex+1)%this._steps.length)},e.prototype._focusPreviousStep=function(){this._focusStep((this._focusIndex+this._steps.length-1)%this._steps.length)},e.prototype._focusStep=function(e){this._focusIndex=e,this._stepHeader.toArray()[this._focusIndex].nativeElement.focus()},e.prototype._anyControlsInvalid=function(e){return this._steps.toArray()[this._selectedIndex].interacted=!0,!!(this._linear&&e>=0)&&this._steps.toArray().slice(0,e).some(function(e){return e.stepControl.invalid})},e.prototype._layoutDirection=function(){return this._dir&&"rtl"===this._dir.value?"rtl":"ltr"},e}();a.decorators=[{type:t.Directive,args:[{selector:"[cdkStepper]"}]}],a.ctorParameters=function(){return[{type:o.Directionality,decorators:[{type:t.Optional}]}]},a.propDecorators={_steps:[{type:t.ContentChildren,args:[u]}],linear:[{type:t.Input}],selectedIndex:[{type:t.Input}],selected:[{type:t.Input}],selectionChange:[{type:t.Output}]};var l=function(){function e(e){this._stepper=e}return e}();l.decorators=[{type:t.Directive,args:[{selector:"button[cdkStepperNext]",host:{"(click)":"_stepper.next()"}}]}],l.ctorParameters=function(){return[{type:a}]};var d=function(){function e(e){this._stepper=e}return e}();d.decorators=[{type:t.Directive,args:[{selector:"button[cdkStepperPrevious]",host:{"(click)":"_stepper.previous()"}}]}],d.ctorParameters=function(){return[{type:a}]};var h=function(){function e(){}return e}();h.decorators=[{type:t.NgModule,args:[{imports:[o.BidiModule,i.CommonModule],exports:[u,a,s,l,d],declarations:[u,a,s,l,d]}]}],h.ctorParameters=function(){return[]},e.CdkStepperModule=h,e.StepperSelectionEvent=p,e.CdkStep=u,e.CdkStepper=a,e.CdkStepLabel=s,e.CdkStepperNext=l,e.CdkStepperPrevious=d,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
9
|
+
//# sourceMappingURL=cdk-stepper.umd.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cdk-stepper.umd.min.js","sources":["../../src/cdk/stepper/step-label.ts","../../src/cdk/stepper/stepper.ts","../../src/cdk/stepper/stepper-button.ts","../../src/cdk/stepper/public_api.ts","../../src/cdk/stepper/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {Directive, TemplateRef} from '@angular/core';\nexport class CdkStepLabel {\n/**\n * @param {?} template\n */\nconstructor(public template: TemplateRef<any>) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[cdkStepLabel]',\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n];\n}\n\nfunction CdkStepLabel_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkStepLabel.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkStepLabel.ctorParameters;\n/** @type {?} */\nCdkStepLabel.prototype.template;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {\n ContentChildren,\n EventEmitter,\n Input,\n Output,\n QueryList,\n Directive,\n // This import is only used to define a generic type. The current TypeScript version incorrectly\n // considers such imports as unused (https://github.com/Microsoft/TypeScript/issues/14953)\n // tslint:disable-next-line:no-unused-variable\n ElementRef,\n Component,\n ContentChild,\n ViewChild,\n TemplateRef,\n ViewEncapsulation,\n Optional,\n Inject,\n forwardRef\n} from '@angular/core';\nimport {LEFT_ARROW, RIGHT_ARROW, ENTER, SPACE} from '@angular/cdk/keycodes';\nimport {CdkStepLabel} from './step-label';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {AbstractControl} from '@angular/forms';\nimport {Direction, Directionality} from '@angular/cdk/bidi';\n/**\n * Used to generate unique ID for each stepper component.\n */\nlet nextId = 0;\n\n/**\n * Position state of the content of each step in stepper that is used for transitioning\n * the content into correct position upon step selection change.\n */\nexport type StepContentPositionState = 'previous' | 'current' | 'next';\n/**\n * Change event emitted on selection changes.\n */\nexport class StepperSelectionEvent {\n/**\n * Index of the step now selected.\n */\nselectedIndex: number;\n/**\n * Index of the step previously selected.\n */\npreviouslySelectedIndex: number;\n/**\n * The step instance now selected.\n */\nselectedStep: CdkStep;\n/**\n * The step instance previously selected.\n */\npreviouslySelectedStep: CdkStep;\n}\n\nfunction StepperSelectionEvent_tsickle_Closure_declarations() {\n/**\n * Index of the step now selected.\n * @type {?}\n */\nStepperSelectionEvent.prototype.selectedIndex;\n/**\n * Index of the step previously selected.\n * @type {?}\n */\nStepperSelectionEvent.prototype.previouslySelectedIndex;\n/**\n * The step instance now selected.\n * @type {?}\n */\nStepperSelectionEvent.prototype.selectedStep;\n/**\n * The step instance previously selected.\n * @type {?}\n */\nStepperSelectionEvent.prototype.previouslySelectedStep;\n}\n\nexport class CdkStep {\n/**\n * Template for step label if it exists.\n */\nstepLabel: CdkStepLabel;\n/**\n * Template for step content.\n */\ncontent: TemplateRef<any>;\n/**\n * The top level abstract control of the step.\n */\nstepControl: AbstractControl;\n/**\n * Whether user has seen the expanded step content or not .\n */\ninteracted = false;\n/**\n * Label of the step.\n */\nlabel: string;\n/**\n * @return {?}\n */\nget editable() { return this._editable; }\n/**\n * @param {?} value\n * @return {?}\n */\nset editable(value: any) {\n this._editable = coerceBooleanProperty(value);\n }\nprivate _editable = true;\n/**\n * Whether the completion of step is optional or not.\n * @return {?}\n */\nget optional() { return this._optional; }\n/**\n * @param {?} value\n * @return {?}\n */\nset optional(value: any) {\n this._optional = coerceBooleanProperty(value);\n }\nprivate _optional = false;\n/**\n * Return whether step is completed or not.\n * @return {?}\n */\nget completed() {\n return this._customCompleted == null ? this._defaultCompleted : this._customCompleted;\n }\n/**\n * @param {?} value\n * @return {?}\n */\nset completed(value: any) {\n this._customCompleted = coerceBooleanProperty(value);\n }\nprivate _customCompleted: boolean | null = null;\n/**\n * @return {?}\n */\nprivate get _defaultCompleted() {\n return this.stepControl ? this.stepControl.valid && this.interacted : this.interacted;\n }\n/**\n * @param {?} _stepper\n */\nconstructor(\nprivate _stepper: CdkStepper) { }\n/**\n * Selects this step component.\n * @return {?}\n */\nselect(): void {\n this._stepper.selected = this;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n moduleId: module.id,\n selector: 'cdk-step',\n templateUrl: 'step.html',\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkStepper, decorators: [{ type: Inject, args: [forwardRef(() => CdkStepper), ] }, ]},\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'stepLabel': [{ type: ContentChild, args: [CdkStepLabel, ] },],\n'content': [{ type: ViewChild, args: [TemplateRef, ] },],\n'stepControl': [{ type: Input },],\n'label': [{ type: Input },],\n'editable': [{ type: Input },],\n'optional': [{ type: Input },],\n'completed': [{ type: Input },],\n};\n}\n\nfunction CdkStep_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkStep.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkStep.ctorParameters;\n/** @type {?} */\nCdkStep.propDecorators;\n/**\n * Template for step label if it exists.\n * @type {?}\n */\nCdkStep.prototype.stepLabel;\n/**\n * Template for step content.\n * @type {?}\n */\nCdkStep.prototype.content;\n/**\n * The top level abstract control of the step.\n * @type {?}\n */\nCdkStep.prototype.stepControl;\n/**\n * Whether user has seen the expanded step content or not .\n * @type {?}\n */\nCdkStep.prototype.interacted;\n/**\n * Label of the step.\n * @type {?}\n */\nCdkStep.prototype.label;\n/** @type {?} */\nCdkStep.prototype._editable;\n/** @type {?} */\nCdkStep.prototype._optional;\n/** @type {?} */\nCdkStep.prototype._customCompleted;\n/** @type {?} */\nCdkStep.prototype._stepper;\n}\n\nexport class CdkStepper {\n/**\n * The list of step components that the stepper is holding.\n */\n_steps: QueryList<CdkStep>;\n/**\n * The list of step headers of the steps in the stepper.\n */\n_stepHeader: QueryList<ElementRef>;\n/**\n * Whether the validity of previous steps should be checked or not.\n * @return {?}\n */\nget linear() { return this._linear; }\n/**\n * @param {?} value\n * @return {?}\n */\nset linear(value: any) { this._linear = coerceBooleanProperty(value); }\nprivate _linear = false;\n/**\n * The index of the selected step.\n * @return {?}\n */\nget selectedIndex() { return this._selectedIndex; }\n/**\n * @param {?} index\n * @return {?}\n */\nset selectedIndex(index: number) {\n if (this._anyControlsInvalid(index)\n || index < this._selectedIndex && !this._steps.toArray()[index].editable) {\n // remove focus from clicked step header if the step is not able to be selected\n this._stepHeader.toArray()[index].nativeElement.blur();\n } else if (this._selectedIndex != index) {\n this._emitStepperSelectionEvent(index);\n this._focusIndex = this._selectedIndex;\n }\n }\nprivate _selectedIndex: number = 0;\n/**\n * The step that is selected.\n * @return {?}\n */\nget selected() { return this._steps[this.selectedIndex]; }\n/**\n * @param {?} step\n * @return {?}\n */\nset selected(step: CdkStep) {\n this.selectedIndex = this._steps.toArray().indexOf(step);\n }\n/**\n * Event emitted when the selected step has changed.\n */\nselectionChange = new EventEmitter<StepperSelectionEvent>();\n/**\n * The index of the step that the focus can be set.\n */\n_focusIndex: number = 0;\n/**\n * Used to track unique ID for each stepper component.\n */\n_groupId: number;\n/**\n * @param {?} _dir\n */\nconstructor(\nprivate _dir: Directionality) {\n this._groupId = nextId++;\n }\n/**\n * Selects and focuses the next step in list.\n * @return {?}\n */\nnext(): void {\n this.selectedIndex = Math.min(this._selectedIndex + 1, this._steps.length - 1);\n }\n/**\n * Selects and focuses the previous step in list.\n * @return {?}\n */\nprevious(): void {\n this.selectedIndex = Math.max(this._selectedIndex - 1, 0);\n }\n/**\n * Returns a unique id for each step label element.\n * @param {?} i\n * @return {?}\n */\n_getStepLabelId(i: number): string {\n return `mat-step-label-${this._groupId}-${i}`;\n }\n/**\n * Returns unique id for each step content element.\n * @param {?} i\n * @return {?}\n */\n_getStepContentId(i: number): string {\n return `mat-step-content-${this._groupId}-${i}`;\n }\n/**\n * Returns position state of the step with the given index.\n * @param {?} index\n * @return {?}\n */\n_getAnimationDirection(index: number): StepContentPositionState {\n const /** @type {?} */ position = index - this._selectedIndex;\n if (position < 0) {\n return this._layoutDirection() === 'rtl' ? 'next' : 'previous';\n } else if (position > 0) {\n return this._layoutDirection() === 'rtl' ? 'previous' : 'next';\n }\n return 'current';\n }\n/**\n * Returns the type of icon to be displayed.\n * @param {?} index\n * @return {?}\n */\n_getIndicatorType(index: number): 'number' | 'edit' | 'done' {\n const /** @type {?} */ step = this._steps.toArray()[index];\n if (!step.completed || this._selectedIndex == index) {\n return 'number';\n } else {\n return step.editable ? 'edit' : 'done';\n }\n }\n/**\n * @param {?} newIndex\n * @return {?}\n */\nprivate _emitStepperSelectionEvent(newIndex: number): void {\n const /** @type {?} */ stepsArray = this._steps.toArray();\n this.selectionChange.emit({\n selectedIndex: newIndex,\n previouslySelectedIndex: this._selectedIndex,\n selectedStep: stepsArray[newIndex],\n previouslySelectedStep: stepsArray[this._selectedIndex],\n });\n this._selectedIndex = newIndex;\n }\n/**\n * @param {?} event\n * @return {?}\n */\n_onKeydown(event: KeyboardEvent) {\n switch (event.keyCode) {\n case RIGHT_ARROW:\n if (this._layoutDirection() === 'rtl') {\n this._focusPreviousStep();\n } else {\n this._focusNextStep();\n }\n break;\n case LEFT_ARROW:\n if (this._layoutDirection() === 'rtl') {\n this._focusNextStep();\n } else {\n this._focusPreviousStep();\n }\n break;\n case SPACE:\n case ENTER:\n this.selectedIndex = this._focusIndex;\n break;\n default:\n // Return to avoid calling preventDefault on keys that are not explicitly handled.\n return;\n }\n event.preventDefault();\n }\n/**\n * @return {?}\n */\nprivate _focusNextStep() {\n this._focusStep((this._focusIndex + 1) % this._steps.length);\n }\n/**\n * @return {?}\n */\nprivate _focusPreviousStep() {\n this._focusStep((this._focusIndex + this._steps.length - 1) % this._steps.length);\n }\n/**\n * @param {?} index\n * @return {?}\n */\nprivate _focusStep(index: number) {\n this._focusIndex = index;\n this._stepHeader.toArray()[this._focusIndex].nativeElement.focus();\n }\n/**\n * @param {?} index\n * @return {?}\n */\nprivate _anyControlsInvalid(index: number): boolean {\n this._steps.toArray()[this._selectedIndex].interacted = true;\n if (this._linear && index >= 0) {\n return this._steps.toArray().slice(0, index).some(step => step.stepControl.invalid);\n }\n return false;\n }\n/**\n * @return {?}\n */\nprivate _layoutDirection(): Direction {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[cdkStepper]',\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: Directionality, decorators: [{ type: Optional }, ]},\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'_steps': [{ type: ContentChildren, args: [CdkStep, ] },],\n'linear': [{ type: Input },],\n'selectedIndex': [{ type: Input },],\n'selected': [{ type: Input },],\n'selectionChange': [{ type: Output },],\n};\n}\n\nfunction CdkStepper_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkStepper.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkStepper.ctorParameters;\n/** @type {?} */\nCdkStepper.propDecorators;\n/**\n * The list of step components that the stepper is holding.\n * @type {?}\n */\nCdkStepper.prototype._steps;\n/**\n * The list of step headers of the steps in the stepper.\n * @type {?}\n */\nCdkStepper.prototype._stepHeader;\n/** @type {?} */\nCdkStepper.prototype._linear;\n/** @type {?} */\nCdkStepper.prototype._selectedIndex;\n/**\n * Event emitted when the selected step has changed.\n * @type {?}\n */\nCdkStepper.prototype.selectionChange;\n/**\n * The index of the step that the focus can be set.\n * @type {?}\n */\nCdkStepper.prototype._focusIndex;\n/**\n * Used to track unique ID for each stepper component.\n * @type {?}\n */\nCdkStepper.prototype._groupId;\n/** @type {?} */\nCdkStepper.prototype._dir;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {Directive} from '@angular/core';\nimport {CdkStepper} from './stepper';\n/**\n * Button that moves to the next step in a stepper workflow.\n */\nexport class CdkStepperNext {\n/**\n * @param {?} _stepper\n */\nconstructor(public _stepper: CdkStepper) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'button[cdkStepperNext]',\n host: {'(click)': '_stepper.next()'}\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkStepper, },\n];\n}\n\nfunction CdkStepperNext_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkStepperNext.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkStepperNext.ctorParameters;\n/** @type {?} */\nCdkStepperNext.prototype._stepper;\n}\n\n/**\n * Button that moves to the previous step in a stepper workflow.\n */\nexport class CdkStepperPrevious {\n/**\n * @param {?} _stepper\n */\nconstructor(public _stepper: CdkStepper) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'button[cdkStepperPrevious]',\n host: {'(click)': '_stepper.previous()'}\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkStepper, },\n];\n}\n\nfunction CdkStepperPrevious_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkStepperPrevious.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkStepperPrevious.ctorParameters;\n/** @type {?} */\nCdkStepperPrevious.prototype._stepper;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {NgModule} from '@angular/core';\nimport {CdkStepper, CdkStep} from './stepper';\nimport {CommonModule} from '@angular/common';\nimport {CdkStepLabel} from './step-label';\nimport {CdkStepperNext, CdkStepperPrevious} from './stepper-button';\nimport {BidiModule} from '@angular/cdk/bidi';\nexport class CdkStepperModule {static decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [BidiModule, CommonModule],\n exports: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious],\n declarations: [CdkStep, CdkStepper, CdkStepLabel, CdkStepperNext, CdkStepperPrevious]\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkStepperModule_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkStepperModule.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkStepperModule.ctorParameters;\n}\n\n\nexport {StepContentPositionState,StepperSelectionEvent,CdkStep,CdkStepper} from './stepper';\nexport {CdkStepLabel} from './step-label';\nexport {CdkStepperNext,CdkStepperPrevious} from './stepper-button';\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport {CdkStepperModule,StepContentPositionState,StepperSelectionEvent,CdkStep,CdkStepper,CdkStepLabel,CdkStepperNext,CdkStepperPrevious} from './public_api';\n"],"names":["this","template","CdkStepLabel","decorators","type","Directive","args","selector","ctorParameters","TemplateRef","StepperSelectionEvent","interacted","_editable","_optional","configurable","get","set","value","coerceBooleanProperty","enumerable","Object","defineProperty","CdkStep","prototype","stepControl","valid","select","_stepper","selected","Component","encapsulation","ViewEncapsulation","None","optional","Input","completed","_linear","_stepHeader","toArray","index","nativeElement","blur","_steps","selectedIndex","Math","min","_selectedIndex","length","CdkStepper","previous","max","_groupId","i","_getStepContentId","_getAnimationDirection","position","_layoutDirection","_getIndicatorType","step","editable","_emitStepperSelectionEvent","newIndex","stepsArray","selectionChange","emit","previouslySelectedIndex","selectedStep","event","keyCode","RIGHT_ARROW","_focusNextStep","_focusPreviousStep","preventDefault","_focusStep","_focusIndex","focus","_anyControlsInvalid","_dir","Directionality","Optional","linear","CdkStepperNext"],"mappings":"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"}
|
package/bundles/cdk-table.umd.js
CHANGED
|
@@ -62,8 +62,8 @@ var BaseRowDef = (function () {
|
|
|
62
62
|
*/
|
|
63
63
|
BaseRowDef.prototype.ngOnChanges = function (changes) {
|
|
64
64
|
// Create a new columns differ if one does not yet exist. Initialize it based on initial value
|
|
65
|
-
// of the columns property.
|
|
66
|
-
var /** @type {?} */ columns = changes['columns'].currentValue;
|
|
65
|
+
// of the columns property or an empty array if none is provided.
|
|
66
|
+
var /** @type {?} */ columns = changes['columns'].currentValue || [];
|
|
67
67
|
if (!this._columnsDiffer && columns) {
|
|
68
68
|
this._columnsDiffer = this._differs.find(columns).create();
|
|
69
69
|
this._columnsDiffer.diff(columns);
|
|
@@ -167,8 +167,7 @@ var CdkHeaderRow = (function () {
|
|
|
167
167
|
return CdkHeaderRow;
|
|
168
168
|
}());
|
|
169
169
|
CdkHeaderRow.decorators = [
|
|
170
|
-
{ type: _angular_core.Component, args: [{
|
|
171
|
-
selector: 'cdk-header-row',
|
|
170
|
+
{ type: _angular_core.Component, args: [{ selector: 'cdk-header-row',
|
|
172
171
|
template: CDK_ROW_TEMPLATE,
|
|
173
172
|
host: {
|
|
174
173
|
'class': 'cdk-header-row',
|
|
@@ -176,6 +175,7 @@ CdkHeaderRow.decorators = [
|
|
|
176
175
|
},
|
|
177
176
|
changeDetection: _angular_core.ChangeDetectionStrategy.OnPush,
|
|
178
177
|
encapsulation: _angular_core.ViewEncapsulation.None,
|
|
178
|
+
preserveWhitespaces: false,
|
|
179
179
|
},] },
|
|
180
180
|
];
|
|
181
181
|
/**
|
|
@@ -191,8 +191,7 @@ var CdkRow = (function () {
|
|
|
191
191
|
return CdkRow;
|
|
192
192
|
}());
|
|
193
193
|
CdkRow.decorators = [
|
|
194
|
-
{ type: _angular_core.Component, args: [{
|
|
195
|
-
selector: 'cdk-row',
|
|
194
|
+
{ type: _angular_core.Component, args: [{ selector: 'cdk-row',
|
|
196
195
|
template: CDK_ROW_TEMPLATE,
|
|
197
196
|
host: {
|
|
198
197
|
'class': 'cdk-row',
|
|
@@ -200,6 +199,7 @@ CdkRow.decorators = [
|
|
|
200
199
|
},
|
|
201
200
|
changeDetection: _angular_core.ChangeDetectionStrategy.OnPush,
|
|
202
201
|
encapsulation: _angular_core.ViewEncapsulation.None,
|
|
202
|
+
preserveWhitespaces: false,
|
|
203
203
|
},] },
|
|
204
204
|
];
|
|
205
205
|
/**
|
|
@@ -730,13 +730,13 @@ var CdkTable = (function () {
|
|
|
730
730
|
return CdkTable;
|
|
731
731
|
}());
|
|
732
732
|
CdkTable.decorators = [
|
|
733
|
-
{ type: _angular_core.Component, args: [{
|
|
734
|
-
selector: 'cdk-table',
|
|
733
|
+
{ type: _angular_core.Component, args: [{ selector: 'cdk-table',
|
|
735
734
|
template: CDK_TABLE_TEMPLATE,
|
|
736
735
|
host: {
|
|
737
736
|
'class': 'cdk-table',
|
|
738
737
|
},
|
|
739
738
|
encapsulation: _angular_core.ViewEncapsulation.None,
|
|
739
|
+
preserveWhitespaces: false,
|
|
740
740
|
changeDetection: _angular_core.ChangeDetectionStrategy.OnPush,
|
|
741
741
|
},] },
|
|
742
742
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cdk-table.umd.js","sources":["../../src/cdk/table/index.ts","../../src/cdk/table/public_api.ts","../../src/cdk/table/table.ts","../../src/cdk/table/table-errors.ts","../../src/cdk/table/cell.ts","../../src/cdk/table/row.ts","../../node_modules/tslib/tslib.es6.js"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport {DataSource,CdkTableModule,RowPlaceholder,HeaderRowPlaceholder,CDK_TABLE_TEMPLATE,CdkTable,CdkCellDef,CdkHeaderCellDef,CdkColumnDef,CdkHeaderCell,CdkCell,CDK_ROW_TEMPLATE,BaseRowDef,CdkHeaderRowDef,CdkRowDef,CdkCellOutletRowContext,CdkCellOutlet,CdkHeaderRow,CdkRow} from './public_api';\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {HeaderRowPlaceholder, RowPlaceholder, CdkTable} from './table';\nimport {CdkCellOutlet, CdkHeaderRow, CdkHeaderRowDef, CdkRow, CdkRowDef} from './row';\nimport {CdkColumnDef, CdkHeaderCellDef, CdkHeaderCell, CdkCell, CdkCellDef} from './cell';\n\nexport {RowPlaceholder,HeaderRowPlaceholder,CDK_TABLE_TEMPLATE,CdkTable} from './table';\nexport {CdkCellDef,CdkHeaderCellDef,CdkColumnDef,CdkHeaderCell,CdkCell} from './cell';\nexport {CDK_ROW_TEMPLATE,BaseRowDef,CdkHeaderRowDef,CdkRowDef,CdkCellOutletRowContext,CdkCellOutlet,CdkHeaderRow,CdkRow} from './row';\n\n/** Re-export DataSource for a more intuitive experience for users of just the table. */\nexport {DataSource} from '@angular/cdk/collections';\n\nconst /** @type {?} */ EXPORTED_DECLARATIONS = [\n CdkTable,\n CdkRowDef,\n CdkCellDef,\n CdkCellOutlet,\n CdkHeaderCellDef,\n CdkColumnDef,\n CdkCell,\n CdkRow,\n CdkHeaderCell,\n CdkHeaderRow,\n CdkHeaderRowDef,\n RowPlaceholder,\n HeaderRowPlaceholder,\n];\nexport class CdkTableModule { static decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n exports: [EXPORTED_DECLARATIONS],\n declarations: [EXPORTED_DECLARATIONS]\n\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkTableModule_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkTableModule.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkTableModule.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Input,\n isDevMode,\n IterableChangeRecord,\n IterableDiffer,\n IterableDiffers,\n NgIterable,\n QueryList,\n Renderer2,\n TrackByFunction,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {CdkCellOutlet, CdkCellOutletRowContext, CdkHeaderRowDef, CdkRowDef} from './row';\nimport {takeUntil} from 'rxjs/operator/takeUntil';\nimport {BehaviorSubject} from 'rxjs/BehaviorSubject';\nimport {Subscription} from 'rxjs/Subscription';\nimport {Subject} from 'rxjs/Subject';\nimport {CdkCellDef, CdkColumnDef, CdkHeaderCellDef} from './cell';\nimport {getTableDuplicateColumnNameError, getTableUnknownColumnError} from './table-errors';\n/**\n * Provides a handle for the table to grab the view container's ng-container to insert data rows.\n * \\@docs-private\n */\nexport class RowPlaceholder {\n/**\n * @param {?} viewContainer\n */\nconstructor(public viewContainer: ViewContainerRef) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[rowPlaceholder]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction RowPlaceholder_tsickle_Closure_declarations() {\n/** @type {?} */\nRowPlaceholder.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nRowPlaceholder.ctorParameters;\n/** @type {?} */\nRowPlaceholder.prototype.viewContainer;\n}\n\n/**\n * Provides a handle for the table to grab the view container's ng-container to insert the header.\n * \\@docs-private\n */\nexport class HeaderRowPlaceholder {\n/**\n * @param {?} viewContainer\n */\nconstructor(public viewContainer: ViewContainerRef) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[headerRowPlaceholder]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction HeaderRowPlaceholder_tsickle_Closure_declarations() {\n/** @type {?} */\nHeaderRowPlaceholder.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nHeaderRowPlaceholder.ctorParameters;\n/** @type {?} */\nHeaderRowPlaceholder.prototype.viewContainer;\n}\n\n/**\n * The table template that can be used by the md-table. Should not be used outside of the\n * material library.\n */\nexport const CDK_TABLE_TEMPLATE = `\n <ng-container headerRowPlaceholder></ng-container>\n <ng-container rowPlaceholder></ng-container>`;\n/**\n * A data table that connects with a data source to retrieve data of type `T` and renders\n * a header row and data rows. Updates the rows when new data is provided by the data source.\n */\nexport class CdkTable<T> implements CollectionViewer {\n/**\n * Subject that emits when the component has been destroyed.\n */\nprivate _onDestroy = new Subject<void>();\n/**\n * Latest data provided by the data source through the connect interface.\n */\nprivate _data: NgIterable<T> = [];\n/**\n * Subscription that listens for the data provided by the data source.\n */\nprivate _renderChangeSubscription: Subscription | null;\n/**\n * Map of all the user's defined columns (header and data cell template) identified by name.\n */\nprivate _columnDefinitionsByName = new Map<string, CdkColumnDef>();\n/**\n * Differ used to find the changes in the data provided by the data source.\n */\nprivate _dataDiffer: IterableDiffer<T>;\n/**\n * Tracking function that will be used to check the differences in data changes. Used similarly\n * to `ngFor` `trackBy` function. Optimize row operations by identifying a row based on its data\n * relative to the function to know if a row should be added/removed/moved.\n * Accepts a function that takes two parameters, `index` and `item`.\n * @param {?} fn\n * @return {?}\n */\nset trackBy(fn: TrackByFunction<T>) {\n if (isDevMode() &&\n fn != null && typeof fn !== 'function' && /** @type {?} */((\n <any>console)) && /** @type {?} */(( <any>console.warn))) {\n console.warn(`trackBy must be a function, but received ${JSON.stringify(fn)}.`);\n }\n this._trackByFn = fn;\n }\n/**\n * @return {?}\n */\nget trackBy(): TrackByFunction<T> { return this._trackByFn; }\nprivate _trackByFn: TrackByFunction<T>;\n/**\n * Provides a stream containing the latest data array to render. Influenced by the table's\n * stream of view window (what rows are currently on screen).\n * @return {?}\n */\nget dataSource(): DataSource<T> { return this._dataSource; }\n/**\n * @param {?} dataSource\n * @return {?}\n */\nset dataSource(dataSource: DataSource<T>) {\n if (this._dataSource !== dataSource) {\n this._switchDataSource(dataSource);\n }\n }\nprivate _dataSource: DataSource<T>;\n/**\n * Stream containing the latest information on what rows are being displayed on screen.\n * Can be used by the data source to as a heuristic of what data should be provided.\n */\nviewChange =\n new BehaviorSubject<{start: number, end: number}>({start: 0, end: Number.MAX_VALUE});\n\n // Placeholders within the table's template where the header and data rows will be inserted.\n _rowPlaceholder: RowPlaceholder;\n _headerRowPlaceholder: HeaderRowPlaceholder;\n/**\n * The column definitions provided by the user that contain what the header and cells should\n * render for each column.\n */\n_columnDefinitions: QueryList<CdkColumnDef>;\n/**\n * Template used as the header container.\n */\n_headerDefinition: CdkHeaderRowDef;\n/**\n * Set of templates that used as the data row containers.\n */\n_rowDefinitions: QueryList<CdkRowDef>;\n/**\n * @param {?} _differs\n * @param {?} _changeDetectorRef\n * @param {?} elementRef\n * @param {?} renderer\n * @param {?} role\n */\nconstructor(private readonly _differs: IterableDiffers,\nprivate readonly _changeDetectorRef: ChangeDetectorRef,\n elementRef: ElementRef,\n renderer: Renderer2,\n role: string) {\n if (!role) {\n renderer.setAttribute(elementRef.nativeElement, 'role', 'grid');\n }\n }\n/**\n * @return {?}\n */\nngOnInit() {\n // TODO(andrewseguin): Setup a listener for scrolling, emit the calculated view to viewChange\n this._dataDiffer = this._differs.find([]).create(this._trackByFn);\n }\n/**\n * @return {?}\n */\nngAfterContentInit() {\n this._cacheColumnDefinitionsByName();\n this._columnDefinitions.changes.subscribe(() => this._cacheColumnDefinitionsByName());\n this._renderHeaderRow();\n }\n/**\n * @return {?}\n */\nngAfterContentChecked() {\n this._renderUpdatedColumns();\n if (this.dataSource && !this._renderChangeSubscription) {\n this._observeRenderChanges();\n }\n }\n/**\n * @return {?}\n */\nngOnDestroy() {\n this._rowPlaceholder.viewContainer.clear();\n this._headerRowPlaceholder.viewContainer.clear();\n this._onDestroy.next();\n this._onDestroy.complete();\n\n if (this.dataSource) {\n this.dataSource.disconnect(this);\n }\n }\n/**\n * Update the map containing the content's column definitions.\n * @return {?}\n */\nprivate _cacheColumnDefinitionsByName() {\n this._columnDefinitionsByName.clear();\n this._columnDefinitions.forEach(columnDef => {\n if (this._columnDefinitionsByName.has(columnDef.name)) {\n throw getTableDuplicateColumnNameError(columnDef.name);\n }\n this._columnDefinitionsByName.set(columnDef.name, columnDef);\n });\n }\n/**\n * Check if the header or rows have changed what columns they want to display. If there is a diff,\n * then re-render that section.\n * @return {?}\n */\nprivate _renderUpdatedColumns() {\n // Re-render the rows when the row definition columns change.\n this._rowDefinitions.forEach(rowDefinition => {\n if (!!rowDefinition.getColumnsDiff()) {\n // Reset the data to an empty array so that renderRowChanges will re-render all new rows.\n this._dataDiffer.diff([]);\n\n this._rowPlaceholder.viewContainer.clear();\n this._renderRowChanges();\n }\n });\n\n // Re-render the header row if there is a difference in its columns.\n if (this._headerDefinition.getColumnsDiff()) {\n this._headerRowPlaceholder.viewContainer.clear();\n this._renderHeaderRow();\n }\n }\n/**\n * Switch to the provided data source by resetting the data and unsubscribing from the current\n * render change subscription if one exists. If the data source is null, interpret this by\n * clearing the row placeholder. Otherwise start listening for new data.\n * @param {?} dataSource\n * @return {?}\n */\nprivate _switchDataSource(dataSource: DataSource<T>) {\n this._data = [];\n\n if (this.dataSource) {\n this.dataSource.disconnect(this);\n }\n\n // Stop listening for data from the previous data source.\n if (this._renderChangeSubscription) {\n this._renderChangeSubscription.unsubscribe();\n this._renderChangeSubscription = null;\n }\n\n // Remove the table's rows if there is now no data source\n if (!dataSource) {\n this._rowPlaceholder.viewContainer.clear();\n }\n\n this._dataSource = dataSource;\n }\n/**\n * Set up a subscription for the data provided by the data source.\n * @return {?}\n */\nprivate _observeRenderChanges() {\n this._renderChangeSubscription = takeUntil.call(this.dataSource.connect(this), this._onDestroy)\n .subscribe(data => {\n this._data = data;\n this._renderRowChanges();\n });\n }\n/**\n * Create the embedded view for the header template and place it in the header row view container.\n * @return {?}\n */\nprivate _renderHeaderRow() {\n const /** @type {?} */ cells = this._getHeaderCellTemplatesForRow(this._headerDefinition);\n if (!cells.length) { return; }\n\n // TODO(andrewseguin): add some code to enforce that exactly\n // one CdkCellOutlet was instantiated as a result\n // of `createEmbeddedView`.\n this._headerRowPlaceholder.viewContainer\n .createEmbeddedView(this._headerDefinition.template, {cells});\n\n cells.forEach(cell => {\n CdkCellOutlet.mostRecentCellOutlet._viewContainer.createEmbeddedView(cell.template, {});\n });\n\n this._changeDetectorRef.markForCheck();\n }\n/**\n * Check for changes made in the data and render each change (row added/removed/moved).\n * @return {?}\n */\nprivate _renderRowChanges() {\n const /** @type {?} */ changes = this._dataDiffer.diff(this._data);\n if (!changes) { return; }\n\n const /** @type {?} */ viewContainer = this._rowPlaceholder.viewContainer;\n changes.forEachOperation(\n (item: IterableChangeRecord<any>, adjustedPreviousIndex: number, currentIndex: number) => {\n if (item.previousIndex == null) {\n this._insertRow(this._data[currentIndex], currentIndex);\n } else if (currentIndex == null) {\n viewContainer.remove(adjustedPreviousIndex);\n } else {\n const /** @type {?} */ view = viewContainer.get(adjustedPreviousIndex);\n viewContainer.move( /** @type {?} */((view)), currentIndex);\n }\n });\n\n this._updateRowContext();\n }\n/**\n * Create the embedded view for the data row template and place it in the correct index location\n * within the data row view container.\n * @param {?} rowData\n * @param {?} index\n * @return {?}\n */\nprivate _insertRow(rowData: T, index: number) {\n // TODO(andrewseguin): Add when predicates to the row definitions\n // to find the right template to used based on\n // the data rather than choosing the first row definition.\n const /** @type {?} */ row = this._rowDefinitions.first;\n\n // Row context that will be provided to both the created embedded row view and its cells.\n const /** @type {?} */ context: CdkCellOutletRowContext<T> = {$implicit: rowData};\n\n // TODO(andrewseguin): add some code to enforce that exactly one\n // CdkCellOutlet was instantiated as a result of `createEmbeddedView`.\n this._rowPlaceholder.viewContainer.createEmbeddedView(row.template, context, index);\n\n // Insert empty cells if there is no data to improve rendering time.\n const /** @type {?} */ cells = rowData ? this._getCellTemplatesForRow(row) : [];\n\n cells.forEach(cell => {\n CdkCellOutlet.mostRecentCellOutlet._viewContainer.createEmbeddedView(cell.template, context);\n });\n\n this._changeDetectorRef.markForCheck();\n }\n/**\n * Updates the context for each row to reflect any data changes that may have caused\n * rows to be added, removed, or moved. The view container contains the same context\n * that was provided to each of its cells.\n * @return {?}\n */\nprivate _updateRowContext() {\n const /** @type {?} */ viewContainer = this._rowPlaceholder.viewContainer;\n for (let /** @type {?} */ index = 0, /** @type {?} */ count = viewContainer.length; index < count; index++) {\n const /** @type {?} */ viewRef = /** @type {?} */(( viewContainer.get(index) as EmbeddedViewRef<CdkCellOutletRowContext<T>>));\n viewRef.context.index = index;\n viewRef.context.count = count;\n viewRef.context.first = index === 0;\n viewRef.context.last = index === count - 1;\n viewRef.context.even = index % 2 === 0;\n viewRef.context.odd = !viewRef.context.even;\n }\n }\n/**\n * Returns the cell template definitions to insert into the header\n * as defined by its list of columns to display.\n * @param {?} headerDef\n * @return {?}\n */\nprivate _getHeaderCellTemplatesForRow(headerDef: CdkHeaderRowDef): CdkHeaderCellDef[] {\n if (!headerDef.columns) { return []; }\n return headerDef.columns.map(columnId => {\n const /** @type {?} */ column = this._columnDefinitionsByName.get(columnId);\n\n if (!column) {\n throw getTableUnknownColumnError(columnId);\n }\n\n return column.headerCell;\n });\n }\n/**\n * Returns the cell template definitions to insert in the provided row\n * as defined by its list of columns to display.\n * @param {?} rowDef\n * @return {?}\n */\nprivate _getCellTemplatesForRow(rowDef: CdkRowDef): CdkCellDef[] {\n if (!rowDef.columns) { return []; }\n return rowDef.columns.map(columnId => {\n const /** @type {?} */ column = this._columnDefinitionsByName.get(columnId);\n\n if (!column) {\n throw getTableUnknownColumnError(columnId);\n }\n\n return column.cell;\n });\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'cdk-table',\n template: CDK_TABLE_TEMPLATE,\n host: {\n 'class': 'cdk-table',\n },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: IterableDiffers, },\n{type: ChangeDetectorRef, },\n{type: ElementRef, },\n{type: Renderer2, },\n{type: undefined, decorators: [{ type: Attribute, args: ['role', ] }, ]},\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'trackBy': [{ type: Input },],\n'dataSource': [{ type: Input },],\n'_rowPlaceholder': [{ type: ViewChild, args: [RowPlaceholder, ] },],\n'_headerRowPlaceholder': [{ type: ViewChild, args: [HeaderRowPlaceholder, ] },],\n'_columnDefinitions': [{ type: ContentChildren, args: [CdkColumnDef, ] },],\n'_headerDefinition': [{ type: ContentChild, args: [CdkHeaderRowDef, ] },],\n'_rowDefinitions': [{ type: ContentChildren, args: [CdkRowDef, ] },],\n};\n}\n\nfunction CdkTable_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkTable.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkTable.ctorParameters;\n/** @type {?} */\nCdkTable.propDecorators;\n/**\n * Subject that emits when the component has been destroyed.\n * @type {?}\n */\nCdkTable.prototype._onDestroy;\n/**\n * Latest data provided by the data source through the connect interface.\n * @type {?}\n */\nCdkTable.prototype._data;\n/**\n * Subscription that listens for the data provided by the data source.\n * @type {?}\n */\nCdkTable.prototype._renderChangeSubscription;\n/**\n * Map of all the user's defined columns (header and data cell template) identified by name.\n * @type {?}\n */\nCdkTable.prototype._columnDefinitionsByName;\n/**\n * Differ used to find the changes in the data provided by the data source.\n * @type {?}\n */\nCdkTable.prototype._dataDiffer;\n/** @type {?} */\nCdkTable.prototype._trackByFn;\n/** @type {?} */\nCdkTable.prototype._dataSource;\n/**\n * Stream containing the latest information on what rows are being displayed on screen.\n * Can be used by the data source to as a heuristic of what data should be provided.\n * @type {?}\n */\nCdkTable.prototype.viewChange;\n/** @type {?} */\nCdkTable.prototype._rowPlaceholder;\n/** @type {?} */\nCdkTable.prototype._headerRowPlaceholder;\n/**\n * The column definitions provided by the user that contain what the header and cells should\n * render for each column.\n * @type {?}\n */\nCdkTable.prototype._columnDefinitions;\n/**\n * Template used as the header container.\n * @type {?}\n */\nCdkTable.prototype._headerDefinition;\n/**\n * Set of templates that used as the data row containers.\n * @type {?}\n */\nCdkTable.prototype._rowDefinitions;\n/** @type {?} */\nCdkTable.prototype._differs;\n/** @type {?} */\nCdkTable.prototype._changeDetectorRef;\n}\n\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","\n/**\n * Returns an error to be thrown when attempting to find an unexisting column.\n * \\@docs-private\n * @param {?} id Id whose lookup failed.\n * @return {?}\n */\nexport function getTableUnknownColumnError(id: string) {\n return Error(`cdk-table: Could not find column with id \"${id}\".`);\n}\n/**\n * Returns an error to be thrown when two column definitions have the same name.\n * \\@docs-private\n * @param {?} name\n * @return {?}\n */\nexport function getTableDuplicateColumnNameError(name: string) {\n return Error(`cdk-table: Duplicate column definition name provided: \"${name}\".`);\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {ContentChild, Directive, ElementRef, Input, Renderer2, TemplateRef} from '@angular/core';\n/**\n * Cell definition for a CDK table.\n * Captures the template of a column's data row cell as well as cell-specific properties.\n */\nexport class CdkCellDef {\n/**\n * @param {?} template\n */\nconstructor(public template: TemplateRef<any>) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkCellDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n];\n}\n\nfunction CdkCellDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkCellDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCellDef.ctorParameters;\n/** @type {?} */\nCdkCellDef.prototype.template;\n}\n\n/**\n * Header cell definition for a CDK table.\n * Captures the template of a column's header cell and as well as cell-specific properties.\n */\nexport class CdkHeaderCellDef {\n/**\n * @param {?} template\n */\nconstructor(public template: TemplateRef<any>) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkHeaderCellDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n];\n}\n\nfunction CdkHeaderCellDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderCellDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderCellDef.ctorParameters;\n/** @type {?} */\nCdkHeaderCellDef.prototype.template;\n}\n\n/**\n * Column definition for the CDK table.\n * Defines a set of cells available for a table column.\n */\nexport class CdkColumnDef {\n/**\n * Unique name for this column.\n * @return {?}\n */\nget name(): string { return this._name; }\n/**\n * @param {?} name\n * @return {?}\n */\nset name(name: string) {\n this._name = name;\n this.cssClassFriendlyName = name.replace(/[^a-z0-9_-]/ig, '-');\n }\n _name: string;\n/**\n * \\@docs-private\n */\ncell: CdkCellDef;\n/**\n * \\@docs-private\n */\nheaderCell: CdkHeaderCellDef;\n/**\n * Transformed version of the column name that can be used as part of a CSS classname. Excludes\n * all non-alphanumeric characters and the special characters '-' and '_'. Any characters that\n * do not match are replaced by the '-' character.\n */\ncssClassFriendlyName: string;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkColumnDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'name': [{ type: Input, args: ['cdkColumnDef', ] },],\n'cell': [{ type: ContentChild, args: [CdkCellDef, ] },],\n'headerCell': [{ type: ContentChild, args: [CdkHeaderCellDef, ] },],\n};\n}\n\nfunction CdkColumnDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkColumnDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkColumnDef.ctorParameters;\n/** @type {?} */\nCdkColumnDef.propDecorators;\n/** @type {?} */\nCdkColumnDef.prototype._name;\n/**\n * \\@docs-private\n * @type {?}\n */\nCdkColumnDef.prototype.cell;\n/**\n * \\@docs-private\n * @type {?}\n */\nCdkColumnDef.prototype.headerCell;\n/**\n * Transformed version of the column name that can be used as part of a CSS classname. Excludes\n * all non-alphanumeric characters and the special characters '-' and '_'. Any characters that\n * do not match are replaced by the '-' character.\n * @type {?}\n */\nCdkColumnDef.prototype.cssClassFriendlyName;\n}\n\n/**\n * Header cell template container that adds the right classes and role.\n */\nexport class CdkHeaderCell {\n/**\n * @param {?} columnDef\n * @param {?} elementRef\n * @param {?} renderer\n */\nconstructor(columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2) {\n renderer.addClass(elementRef.nativeElement, `cdk-column-${columnDef.cssClassFriendlyName}`);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'cdk-header-cell',\n host: {\n 'class': 'cdk-header-cell',\n 'role': 'columnheader',\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkColumnDef, },\n{type: ElementRef, },\n{type: Renderer2, },\n];\n}\n\nfunction CdkHeaderCell_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderCell.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderCell.ctorParameters;\n}\n\n/**\n * Cell template container that adds the right classes and role.\n */\nexport class CdkCell {\n/**\n * @param {?} columnDef\n * @param {?} elementRef\n * @param {?} renderer\n */\nconstructor(columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2) {\n renderer.addClass(elementRef.nativeElement, `cdk-column-${columnDef.cssClassFriendlyName}`);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'cdk-cell',\n host: {\n 'class': 'cdk-cell',\n 'role': 'gridcell',\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkColumnDef, },\n{type: ElementRef, },\n{type: Renderer2, },\n];\n}\n\nfunction CdkCell_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkCell.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCell.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {\n ChangeDetectionStrategy,\n Component,\n Directive,\n IterableChanges,\n IterableDiffer,\n IterableDiffers,\n SimpleChanges,\n TemplateRef,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {CdkCellDef} from './cell';\n/**\n * The row template that can be used by the md-table. Should not be used outside of the\n * material library.\n */\nexport const CDK_ROW_TEMPLATE = `<ng-container cdkCellOutlet></ng-container>`;\n/**\n * Base class for the CdkHeaderRowDef and CdkRowDef that handles checking their columns inputs\n * for changes and notifying the table.\n * @abstract\n */\nexport abstract class BaseRowDef {\n/**\n * The columns to be displayed on this row.\n */\ncolumns: string[];\n/**\n * Differ used to check if any changes were made to the columns.\n */\nprotected _columnsDiffer: IterableDiffer<any>;\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(public template: TemplateRef<any>,\n protected _differs: IterableDiffers) { }\n/**\n * @param {?} changes\n * @return {?}\n */\nngOnChanges(changes: SimpleChanges): void {\n // Create a new columns differ if one does not yet exist. Initialize it based on initial value\n // of the columns property.\n const /** @type {?} */ columns = changes['columns'].currentValue;\n if (!this._columnsDiffer && columns) {\n this._columnsDiffer = this._differs.find(columns).create();\n this._columnsDiffer.diff(columns);\n }\n }\n/**\n * Returns the difference between the current columns and the columns from the last diff, or null\n * if there is no difference.\n * @return {?}\n */\ngetColumnsDiff(): IterableChanges<any> | null {\n return this._columnsDiffer.diff(this.columns);\n }\n}\n\nfunction BaseRowDef_tsickle_Closure_declarations() {\n/**\n * The columns to be displayed on this row.\n * @type {?}\n */\nBaseRowDef.prototype.columns;\n/**\n * Differ used to check if any changes were made to the columns.\n * @type {?}\n */\nBaseRowDef.prototype._columnsDiffer;\n/** @type {?} */\nBaseRowDef.prototype.template;\n/** @type {?} */\nBaseRowDef.prototype._differs;\n}\n\n/**\n * Header row definition for the CDK table.\n * Captures the header row's template and other header properties such as the columns to display.\n */\nexport class CdkHeaderRowDef extends BaseRowDef {\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(template: TemplateRef<any>, _differs: IterableDiffers) {\n super(template, _differs);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[cdkHeaderRowDef]',\n inputs: ['columns: cdkHeaderRowDef'],\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: IterableDiffers, },\n];\n}\n\nfunction CdkHeaderRowDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderRowDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderRowDef.ctorParameters;\n}\n\n/**\n * Data row definition for the CDK table.\n * Captures the header row's template and other row properties such as the columns to display.\n */\nexport class CdkRowDef extends BaseRowDef {\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(template: TemplateRef<any>, _differs: IterableDiffers) {\n super(template, _differs);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[cdkRowDef]',\n inputs: ['columns: cdkRowDefColumns'],\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: IterableDiffers, },\n];\n}\n\nfunction CdkRowDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkRowDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkRowDef.ctorParameters;\n}\n\n\n/** Context provided to the row cells */\nexport interface CdkCellOutletRowContext<T> {\n /** Data for the row that this cell is located within. */\n $implicit: T;\n\n /** Index location of the row that this cell is located within. */\n index?: number;\n\n /** Length of the number of total rows. */\n count?: number;\n\n /** True if this cell is contained in the first row. */\n first?: boolean;\n\n /** True if this cell is contained in the last row. */\n last?: boolean;\n\n /** True if this cell is contained in a row with an even-numbered index. */\n even?: boolean;\n\n /** True if this cell is contained in a row with an odd-numbered index. */\n odd?: boolean;\n}\n/**\n * Outlet for rendering cells inside of a row or header row.\n * \\@docs-private\n */\nexport class CdkCellOutlet {\n/**\n * The ordered list of cells to render within this outlet's view container\n */\ncells: CdkCellDef[];\n/**\n * The data context to be provided to each cell\n */\ncontext: any;\n/**\n * Static property containing the latest constructed instance of this class.\n * Used by the CDK table when each CdkHeaderRow and CdkRow component is created using\n * createEmbeddedView. After one of these components are created, this property will provide\n * a handle to provide that component's cells and context. After init, the CdkCellOutlet will\n * construct the cells with the provided context.\n */\nstatic mostRecentCellOutlet: CdkCellOutlet;\n/**\n * @param {?} _viewContainer\n */\nconstructor(public _viewContainer: ViewContainerRef) {\n CdkCellOutlet.mostRecentCellOutlet = this;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkCellOutlet]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction CdkCellOutlet_tsickle_Closure_declarations() {\n/**\n * Static property containing the latest constructed instance of this class.\n * Used by the CDK table when each CdkHeaderRow and CdkRow component is created using\n * createEmbeddedView. After one of these components are created, this property will provide\n * a handle to provide that component's cells and context. After init, the CdkCellOutlet will\n * construct the cells with the provided context.\n * @type {?}\n */\nCdkCellOutlet.mostRecentCellOutlet;\n/** @type {?} */\nCdkCellOutlet.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCellOutlet.ctorParameters;\n/**\n * The ordered list of cells to render within this outlet's view container\n * @type {?}\n */\nCdkCellOutlet.prototype.cells;\n/**\n * The data context to be provided to each cell\n * @type {?}\n */\nCdkCellOutlet.prototype.context;\n/** @type {?} */\nCdkCellOutlet.prototype._viewContainer;\n}\n\n/**\n * Header template container that contains the cell outlet. Adds the right class and role.\n */\nexport class CdkHeaderRow { static decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'cdk-header-row',\n template: CDK_ROW_TEMPLATE,\n host: {\n 'class': 'cdk-header-row',\n 'role': 'row',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkHeaderRow_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderRow.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderRow.ctorParameters;\n}\n\n/**\n * Data row template container that contains the cell outlet. Adds the right class and role.\n */\nexport class CdkRow { static decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n selector: 'cdk-row',\n template: CDK_ROW_TEMPLATE,\n host: {\n 'class': 'cdk-row',\n 'role': 'row',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkRow_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkRow.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkRow.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\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 = 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\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 = 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\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 = y[op[0] & 2 ? \"return\" : op[0] ? \"throw\" : \"next\"]) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [0, 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) { if (o[n]) i[n] = function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; }; }\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];\r\n return m ? m.call(o) : typeof __values === \"function\" ? __values(o) : o[Symbol.iterator]();\r\n}"],"names":["ContentChildren","ViewChild","Input","Renderer2","ElementRef","ChangeDetectorRef","IterableDiffers","ChangeDetectionStrategy","ViewEncapsulation","Component","takeUntil","ViewContainerRef","Directive","ContentChild","TemplateRef"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cdk-table.umd.js","sources":["../../src/cdk/table/index.ts","../../src/cdk/table/public_api.ts","../../src/cdk/table/table.ts","../../src/cdk/table/table-errors.ts","../../src/cdk/table/cell.ts","../../src/cdk/table/row.ts","../../node_modules/tslib/tslib.es6.js"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport {DataSource,CdkTableModule,RowPlaceholder,HeaderRowPlaceholder,CDK_TABLE_TEMPLATE,CdkTable,CdkCellDef,CdkHeaderCellDef,CdkColumnDef,CdkHeaderCell,CdkCell,CDK_ROW_TEMPLATE,BaseRowDef,CdkHeaderRowDef,CdkRowDef,CdkCellOutletRowContext,CdkCellOutlet,CdkHeaderRow,CdkRow} from './public_api';\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {HeaderRowPlaceholder, RowPlaceholder, CdkTable} from './table';\nimport {CdkCellOutlet, CdkHeaderRow, CdkHeaderRowDef, CdkRow, CdkRowDef} from './row';\nimport {CdkColumnDef, CdkHeaderCellDef, CdkHeaderCell, CdkCell, CdkCellDef} from './cell';\n\nexport {RowPlaceholder,HeaderRowPlaceholder,CDK_TABLE_TEMPLATE,CdkTable} from './table';\nexport {CdkCellDef,CdkHeaderCellDef,CdkColumnDef,CdkHeaderCell,CdkCell} from './cell';\nexport {CDK_ROW_TEMPLATE,BaseRowDef,CdkHeaderRowDef,CdkRowDef,CdkCellOutletRowContext,CdkCellOutlet,CdkHeaderRow,CdkRow} from './row';\n\n/** Re-export DataSource for a more intuitive experience for users of just the table. */\nexport {DataSource} from '@angular/cdk/collections';\n\nconst /** @type {?} */ EXPORTED_DECLARATIONS = [\n CdkTable,\n CdkRowDef,\n CdkCellDef,\n CdkCellOutlet,\n CdkHeaderCellDef,\n CdkColumnDef,\n CdkCell,\n CdkRow,\n CdkHeaderCell,\n CdkHeaderRow,\n CdkHeaderRowDef,\n RowPlaceholder,\n HeaderRowPlaceholder,\n];\nexport class CdkTableModule { static decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n exports: [EXPORTED_DECLARATIONS],\n declarations: [EXPORTED_DECLARATIONS]\n\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkTableModule_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkTableModule.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkTableModule.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Input,\n isDevMode,\n IterableChangeRecord,\n IterableDiffer,\n IterableDiffers,\n NgIterable,\n QueryList,\n Renderer2,\n TrackByFunction,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {CdkCellOutlet, CdkCellOutletRowContext, CdkHeaderRowDef, CdkRowDef} from './row';\nimport {takeUntil} from 'rxjs/operator/takeUntil';\nimport {BehaviorSubject} from 'rxjs/BehaviorSubject';\nimport {Subscription} from 'rxjs/Subscription';\nimport {Subject} from 'rxjs/Subject';\nimport {CdkCellDef, CdkColumnDef, CdkHeaderCellDef} from './cell';\nimport {getTableDuplicateColumnNameError, getTableUnknownColumnError} from './table-errors';\n/**\n * Provides a handle for the table to grab the view container's ng-container to insert data rows.\n * \\@docs-private\n */\nexport class RowPlaceholder {\n/**\n * @param {?} viewContainer\n */\nconstructor(public viewContainer: ViewContainerRef) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[rowPlaceholder]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction RowPlaceholder_tsickle_Closure_declarations() {\n/** @type {?} */\nRowPlaceholder.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nRowPlaceholder.ctorParameters;\n/** @type {?} */\nRowPlaceholder.prototype.viewContainer;\n}\n\n/**\n * Provides a handle for the table to grab the view container's ng-container to insert the header.\n * \\@docs-private\n */\nexport class HeaderRowPlaceholder {\n/**\n * @param {?} viewContainer\n */\nconstructor(public viewContainer: ViewContainerRef) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[headerRowPlaceholder]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction HeaderRowPlaceholder_tsickle_Closure_declarations() {\n/** @type {?} */\nHeaderRowPlaceholder.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nHeaderRowPlaceholder.ctorParameters;\n/** @type {?} */\nHeaderRowPlaceholder.prototype.viewContainer;\n}\n\n/**\n * The table template that can be used by the md-table. Should not be used outside of the\n * material library.\n */\nexport const CDK_TABLE_TEMPLATE = `\n <ng-container headerRowPlaceholder></ng-container>\n <ng-container rowPlaceholder></ng-container>`;\n/**\n * A data table that connects with a data source to retrieve data of type `T` and renders\n * a header row and data rows. Updates the rows when new data is provided by the data source.\n */\nexport class CdkTable<T> implements CollectionViewer {\n/**\n * Subject that emits when the component has been destroyed.\n */\nprivate _onDestroy = new Subject<void>();\n/**\n * Latest data provided by the data source through the connect interface.\n */\nprivate _data: NgIterable<T> = [];\n/**\n * Subscription that listens for the data provided by the data source.\n */\nprivate _renderChangeSubscription: Subscription | null;\n/**\n * Map of all the user's defined columns (header and data cell template) identified by name.\n */\nprivate _columnDefinitionsByName = new Map<string, CdkColumnDef>();\n/**\n * Differ used to find the changes in the data provided by the data source.\n */\nprivate _dataDiffer: IterableDiffer<T>;\n/**\n * Tracking function that will be used to check the differences in data changes. Used similarly\n * to `ngFor` `trackBy` function. Optimize row operations by identifying a row based on its data\n * relative to the function to know if a row should be added/removed/moved.\n * Accepts a function that takes two parameters, `index` and `item`.\n * @param {?} fn\n * @return {?}\n */\nset trackBy(fn: TrackByFunction<T>) {\n if (isDevMode() &&\n fn != null && typeof fn !== 'function' && /** @type {?} */((\n <any>console)) && /** @type {?} */(( <any>console.warn))) {\n console.warn(`trackBy must be a function, but received ${JSON.stringify(fn)}.`);\n }\n this._trackByFn = fn;\n }\n/**\n * @return {?}\n */\nget trackBy(): TrackByFunction<T> { return this._trackByFn; }\nprivate _trackByFn: TrackByFunction<T>;\n/**\n * Provides a stream containing the latest data array to render. Influenced by the table's\n * stream of view window (what rows are currently on screen).\n * @return {?}\n */\nget dataSource(): DataSource<T> { return this._dataSource; }\n/**\n * @param {?} dataSource\n * @return {?}\n */\nset dataSource(dataSource: DataSource<T>) {\n if (this._dataSource !== dataSource) {\n this._switchDataSource(dataSource);\n }\n }\nprivate _dataSource: DataSource<T>;\n/**\n * Stream containing the latest information on what rows are being displayed on screen.\n * Can be used by the data source to as a heuristic of what data should be provided.\n */\nviewChange =\n new BehaviorSubject<{start: number, end: number}>({start: 0, end: Number.MAX_VALUE});\n\n // Placeholders within the table's template where the header and data rows will be inserted.\n _rowPlaceholder: RowPlaceholder;\n _headerRowPlaceholder: HeaderRowPlaceholder;\n/**\n * The column definitions provided by the user that contain what the header and cells should\n * render for each column.\n */\n_columnDefinitions: QueryList<CdkColumnDef>;\n/**\n * Template used as the header container.\n */\n_headerDefinition: CdkHeaderRowDef;\n/**\n * Set of templates that used as the data row containers.\n */\n_rowDefinitions: QueryList<CdkRowDef>;\n/**\n * @param {?} _differs\n * @param {?} _changeDetectorRef\n * @param {?} elementRef\n * @param {?} renderer\n * @param {?} role\n */\nconstructor(private readonly _differs: IterableDiffers,\nprivate readonly _changeDetectorRef: ChangeDetectorRef,\n elementRef: ElementRef,\n renderer: Renderer2,\n role: string) {\n if (!role) {\n renderer.setAttribute(elementRef.nativeElement, 'role', 'grid');\n }\n }\n/**\n * @return {?}\n */\nngOnInit() {\n // TODO(andrewseguin): Setup a listener for scrolling, emit the calculated view to viewChange\n this._dataDiffer = this._differs.find([]).create(this._trackByFn);\n }\n/**\n * @return {?}\n */\nngAfterContentInit() {\n this._cacheColumnDefinitionsByName();\n this._columnDefinitions.changes.subscribe(() => this._cacheColumnDefinitionsByName());\n this._renderHeaderRow();\n }\n/**\n * @return {?}\n */\nngAfterContentChecked() {\n this._renderUpdatedColumns();\n if (this.dataSource && !this._renderChangeSubscription) {\n this._observeRenderChanges();\n }\n }\n/**\n * @return {?}\n */\nngOnDestroy() {\n this._rowPlaceholder.viewContainer.clear();\n this._headerRowPlaceholder.viewContainer.clear();\n this._onDestroy.next();\n this._onDestroy.complete();\n\n if (this.dataSource) {\n this.dataSource.disconnect(this);\n }\n }\n/**\n * Update the map containing the content's column definitions.\n * @return {?}\n */\nprivate _cacheColumnDefinitionsByName() {\n this._columnDefinitionsByName.clear();\n this._columnDefinitions.forEach(columnDef => {\n if (this._columnDefinitionsByName.has(columnDef.name)) {\n throw getTableDuplicateColumnNameError(columnDef.name);\n }\n this._columnDefinitionsByName.set(columnDef.name, columnDef);\n });\n }\n/**\n * Check if the header or rows have changed what columns they want to display. If there is a diff,\n * then re-render that section.\n * @return {?}\n */\nprivate _renderUpdatedColumns() {\n // Re-render the rows when the row definition columns change.\n this._rowDefinitions.forEach(rowDefinition => {\n if (!!rowDefinition.getColumnsDiff()) {\n // Reset the data to an empty array so that renderRowChanges will re-render all new rows.\n this._dataDiffer.diff([]);\n\n this._rowPlaceholder.viewContainer.clear();\n this._renderRowChanges();\n }\n });\n\n // Re-render the header row if there is a difference in its columns.\n if (this._headerDefinition.getColumnsDiff()) {\n this._headerRowPlaceholder.viewContainer.clear();\n this._renderHeaderRow();\n }\n }\n/**\n * Switch to the provided data source by resetting the data and unsubscribing from the current\n * render change subscription if one exists. If the data source is null, interpret this by\n * clearing the row placeholder. Otherwise start listening for new data.\n * @param {?} dataSource\n * @return {?}\n */\nprivate _switchDataSource(dataSource: DataSource<T>) {\n this._data = [];\n\n if (this.dataSource) {\n this.dataSource.disconnect(this);\n }\n\n // Stop listening for data from the previous data source.\n if (this._renderChangeSubscription) {\n this._renderChangeSubscription.unsubscribe();\n this._renderChangeSubscription = null;\n }\n\n // Remove the table's rows if there is now no data source\n if (!dataSource) {\n this._rowPlaceholder.viewContainer.clear();\n }\n\n this._dataSource = dataSource;\n }\n/**\n * Set up a subscription for the data provided by the data source.\n * @return {?}\n */\nprivate _observeRenderChanges() {\n this._renderChangeSubscription = takeUntil.call(this.dataSource.connect(this), this._onDestroy)\n .subscribe(data => {\n this._data = data;\n this._renderRowChanges();\n });\n }\n/**\n * Create the embedded view for the header template and place it in the header row view container.\n * @return {?}\n */\nprivate _renderHeaderRow() {\n const /** @type {?} */ cells = this._getHeaderCellTemplatesForRow(this._headerDefinition);\n if (!cells.length) { return; }\n\n // TODO(andrewseguin): add some code to enforce that exactly\n // one CdkCellOutlet was instantiated as a result\n // of `createEmbeddedView`.\n this._headerRowPlaceholder.viewContainer\n .createEmbeddedView(this._headerDefinition.template, {cells});\n\n cells.forEach(cell => {\n CdkCellOutlet.mostRecentCellOutlet._viewContainer.createEmbeddedView(cell.template, {});\n });\n\n this._changeDetectorRef.markForCheck();\n }\n/**\n * Check for changes made in the data and render each change (row added/removed/moved).\n * @return {?}\n */\nprivate _renderRowChanges() {\n const /** @type {?} */ changes = this._dataDiffer.diff(this._data);\n if (!changes) { return; }\n\n const /** @type {?} */ viewContainer = this._rowPlaceholder.viewContainer;\n changes.forEachOperation(\n (item: IterableChangeRecord<any>, adjustedPreviousIndex: number, currentIndex: number) => {\n if (item.previousIndex == null) {\n this._insertRow(this._data[currentIndex], currentIndex);\n } else if (currentIndex == null) {\n viewContainer.remove(adjustedPreviousIndex);\n } else {\n const /** @type {?} */ view = viewContainer.get(adjustedPreviousIndex);\n viewContainer.move( /** @type {?} */((view)), currentIndex);\n }\n });\n\n this._updateRowContext();\n }\n/**\n * Create the embedded view for the data row template and place it in the correct index location\n * within the data row view container.\n * @param {?} rowData\n * @param {?} index\n * @return {?}\n */\nprivate _insertRow(rowData: T, index: number) {\n // TODO(andrewseguin): Add when predicates to the row definitions\n // to find the right template to used based on\n // the data rather than choosing the first row definition.\n const /** @type {?} */ row = this._rowDefinitions.first;\n\n // Row context that will be provided to both the created embedded row view and its cells.\n const /** @type {?} */ context: CdkCellOutletRowContext<T> = {$implicit: rowData};\n\n // TODO(andrewseguin): add some code to enforce that exactly one\n // CdkCellOutlet was instantiated as a result of `createEmbeddedView`.\n this._rowPlaceholder.viewContainer.createEmbeddedView(row.template, context, index);\n\n // Insert empty cells if there is no data to improve rendering time.\n const /** @type {?} */ cells = rowData ? this._getCellTemplatesForRow(row) : [];\n\n cells.forEach(cell => {\n CdkCellOutlet.mostRecentCellOutlet._viewContainer.createEmbeddedView(cell.template, context);\n });\n\n this._changeDetectorRef.markForCheck();\n }\n/**\n * Updates the context for each row to reflect any data changes that may have caused\n * rows to be added, removed, or moved. The view container contains the same context\n * that was provided to each of its cells.\n * @return {?}\n */\nprivate _updateRowContext() {\n const /** @type {?} */ viewContainer = this._rowPlaceholder.viewContainer;\n for (let /** @type {?} */ index = 0, /** @type {?} */ count = viewContainer.length; index < count; index++) {\n const /** @type {?} */ viewRef = /** @type {?} */(( viewContainer.get(index) as EmbeddedViewRef<CdkCellOutletRowContext<T>>));\n viewRef.context.index = index;\n viewRef.context.count = count;\n viewRef.context.first = index === 0;\n viewRef.context.last = index === count - 1;\n viewRef.context.even = index % 2 === 0;\n viewRef.context.odd = !viewRef.context.even;\n }\n }\n/**\n * Returns the cell template definitions to insert into the header\n * as defined by its list of columns to display.\n * @param {?} headerDef\n * @return {?}\n */\nprivate _getHeaderCellTemplatesForRow(headerDef: CdkHeaderRowDef): CdkHeaderCellDef[] {\n if (!headerDef.columns) { return []; }\n return headerDef.columns.map(columnId => {\n const /** @type {?} */ column = this._columnDefinitionsByName.get(columnId);\n\n if (!column) {\n throw getTableUnknownColumnError(columnId);\n }\n\n return column.headerCell;\n });\n }\n/**\n * Returns the cell template definitions to insert in the provided row\n * as defined by its list of columns to display.\n * @param {?} rowDef\n * @return {?}\n */\nprivate _getCellTemplatesForRow(rowDef: CdkRowDef): CdkCellDef[] {\n if (!rowDef.columns) { return []; }\n return rowDef.columns.map(columnId => {\n const /** @type {?} */ column = this._columnDefinitionsByName.get(columnId);\n\n if (!column) {\n throw getTableUnknownColumnError(columnId);\n }\n\n return column.cell;\n });\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n moduleId: module.id,\n selector: 'cdk-table',\n template: CDK_TABLE_TEMPLATE,\n host: {\n 'class': 'cdk-table',\n },\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: IterableDiffers, },\n{type: ChangeDetectorRef, },\n{type: ElementRef, },\n{type: Renderer2, },\n{type: undefined, decorators: [{ type: Attribute, args: ['role', ] }, ]},\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'trackBy': [{ type: Input },],\n'dataSource': [{ type: Input },],\n'_rowPlaceholder': [{ type: ViewChild, args: [RowPlaceholder, ] },],\n'_headerRowPlaceholder': [{ type: ViewChild, args: [HeaderRowPlaceholder, ] },],\n'_columnDefinitions': [{ type: ContentChildren, args: [CdkColumnDef, ] },],\n'_headerDefinition': [{ type: ContentChild, args: [CdkHeaderRowDef, ] },],\n'_rowDefinitions': [{ type: ContentChildren, args: [CdkRowDef, ] },],\n};\n}\n\nfunction CdkTable_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkTable.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkTable.ctorParameters;\n/** @type {?} */\nCdkTable.propDecorators;\n/**\n * Subject that emits when the component has been destroyed.\n * @type {?}\n */\nCdkTable.prototype._onDestroy;\n/**\n * Latest data provided by the data source through the connect interface.\n * @type {?}\n */\nCdkTable.prototype._data;\n/**\n * Subscription that listens for the data provided by the data source.\n * @type {?}\n */\nCdkTable.prototype._renderChangeSubscription;\n/**\n * Map of all the user's defined columns (header and data cell template) identified by name.\n * @type {?}\n */\nCdkTable.prototype._columnDefinitionsByName;\n/**\n * Differ used to find the changes in the data provided by the data source.\n * @type {?}\n */\nCdkTable.prototype._dataDiffer;\n/** @type {?} */\nCdkTable.prototype._trackByFn;\n/** @type {?} */\nCdkTable.prototype._dataSource;\n/**\n * Stream containing the latest information on what rows are being displayed on screen.\n * Can be used by the data source to as a heuristic of what data should be provided.\n * @type {?}\n */\nCdkTable.prototype.viewChange;\n/** @type {?} */\nCdkTable.prototype._rowPlaceholder;\n/** @type {?} */\nCdkTable.prototype._headerRowPlaceholder;\n/**\n * The column definitions provided by the user that contain what the header and cells should\n * render for each column.\n * @type {?}\n */\nCdkTable.prototype._columnDefinitions;\n/**\n * Template used as the header container.\n * @type {?}\n */\nCdkTable.prototype._headerDefinition;\n/**\n * Set of templates that used as the data row containers.\n * @type {?}\n */\nCdkTable.prototype._rowDefinitions;\n/** @type {?} */\nCdkTable.prototype._differs;\n/** @type {?} */\nCdkTable.prototype._changeDetectorRef;\n}\n\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","\n/**\n * Returns an error to be thrown when attempting to find an unexisting column.\n * \\@docs-private\n * @param {?} id Id whose lookup failed.\n * @return {?}\n */\nexport function getTableUnknownColumnError(id: string) {\n return Error(`cdk-table: Could not find column with id \"${id}\".`);\n}\n/**\n * Returns an error to be thrown when two column definitions have the same name.\n * \\@docs-private\n * @param {?} name\n * @return {?}\n */\nexport function getTableDuplicateColumnNameError(name: string) {\n return Error(`cdk-table: Duplicate column definition name provided: \"${name}\".`);\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {ContentChild, Directive, ElementRef, Input, Renderer2, TemplateRef} from '@angular/core';\n/**\n * Cell definition for a CDK table.\n * Captures the template of a column's data row cell as well as cell-specific properties.\n */\nexport class CdkCellDef {\n/**\n * @param {?} template\n */\nconstructor(public template: TemplateRef<any>) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkCellDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n];\n}\n\nfunction CdkCellDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkCellDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCellDef.ctorParameters;\n/** @type {?} */\nCdkCellDef.prototype.template;\n}\n\n/**\n * Header cell definition for a CDK table.\n * Captures the template of a column's header cell and as well as cell-specific properties.\n */\nexport class CdkHeaderCellDef {\n/**\n * @param {?} template\n */\nconstructor(public template: TemplateRef<any>) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkHeaderCellDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n];\n}\n\nfunction CdkHeaderCellDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderCellDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderCellDef.ctorParameters;\n/** @type {?} */\nCdkHeaderCellDef.prototype.template;\n}\n\n/**\n * Column definition for the CDK table.\n * Defines a set of cells available for a table column.\n */\nexport class CdkColumnDef {\n/**\n * Unique name for this column.\n * @return {?}\n */\nget name(): string { return this._name; }\n/**\n * @param {?} name\n * @return {?}\n */\nset name(name: string) {\n this._name = name;\n this.cssClassFriendlyName = name.replace(/[^a-z0-9_-]/ig, '-');\n }\n _name: string;\n/**\n * \\@docs-private\n */\ncell: CdkCellDef;\n/**\n * \\@docs-private\n */\nheaderCell: CdkHeaderCellDef;\n/**\n * Transformed version of the column name that can be used as part of a CSS classname. Excludes\n * all non-alphanumeric characters and the special characters '-' and '_'. Any characters that\n * do not match are replaced by the '-' character.\n */\ncssClassFriendlyName: string;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkColumnDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'name': [{ type: Input, args: ['cdkColumnDef', ] },],\n'cell': [{ type: ContentChild, args: [CdkCellDef, ] },],\n'headerCell': [{ type: ContentChild, args: [CdkHeaderCellDef, ] },],\n};\n}\n\nfunction CdkColumnDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkColumnDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkColumnDef.ctorParameters;\n/** @type {?} */\nCdkColumnDef.propDecorators;\n/** @type {?} */\nCdkColumnDef.prototype._name;\n/**\n * \\@docs-private\n * @type {?}\n */\nCdkColumnDef.prototype.cell;\n/**\n * \\@docs-private\n * @type {?}\n */\nCdkColumnDef.prototype.headerCell;\n/**\n * Transformed version of the column name that can be used as part of a CSS classname. Excludes\n * all non-alphanumeric characters and the special characters '-' and '_'. Any characters that\n * do not match are replaced by the '-' character.\n * @type {?}\n */\nCdkColumnDef.prototype.cssClassFriendlyName;\n}\n\n/**\n * Header cell template container that adds the right classes and role.\n */\nexport class CdkHeaderCell {\n/**\n * @param {?} columnDef\n * @param {?} elementRef\n * @param {?} renderer\n */\nconstructor(columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2) {\n renderer.addClass(elementRef.nativeElement, `cdk-column-${columnDef.cssClassFriendlyName}`);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'cdk-header-cell',\n host: {\n 'class': 'cdk-header-cell',\n 'role': 'columnheader',\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkColumnDef, },\n{type: ElementRef, },\n{type: Renderer2, },\n];\n}\n\nfunction CdkHeaderCell_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderCell.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderCell.ctorParameters;\n}\n\n/**\n * Cell template container that adds the right classes and role.\n */\nexport class CdkCell {\n/**\n * @param {?} columnDef\n * @param {?} elementRef\n * @param {?} renderer\n */\nconstructor(columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2) {\n renderer.addClass(elementRef.nativeElement, `cdk-column-${columnDef.cssClassFriendlyName}`);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'cdk-cell',\n host: {\n 'class': 'cdk-cell',\n 'role': 'gridcell',\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkColumnDef, },\n{type: ElementRef, },\n{type: Renderer2, },\n];\n}\n\nfunction CdkCell_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkCell.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCell.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {\n ChangeDetectionStrategy,\n Component,\n Directive,\n IterableChanges,\n IterableDiffer,\n IterableDiffers,\n SimpleChanges,\n TemplateRef,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {CdkCellDef} from './cell';\n/**\n * The row template that can be used by the md-table. Should not be used outside of the\n * material library.\n */\nexport const CDK_ROW_TEMPLATE = `<ng-container cdkCellOutlet></ng-container>`;\n/**\n * Base class for the CdkHeaderRowDef and CdkRowDef that handles checking their columns inputs\n * for changes and notifying the table.\n * @abstract\n */\nexport abstract class BaseRowDef {\n/**\n * The columns to be displayed on this row.\n */\ncolumns: string[];\n/**\n * Differ used to check if any changes were made to the columns.\n */\nprotected _columnsDiffer: IterableDiffer<any>;\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(public template: TemplateRef<any>,\n protected _differs: IterableDiffers) { }\n/**\n * @param {?} changes\n * @return {?}\n */\nngOnChanges(changes: SimpleChanges): void {\n // Create a new columns differ if one does not yet exist. Initialize it based on initial value\n // of the columns property or an empty array if none is provided.\n const /** @type {?} */ columns = changes['columns'].currentValue || [];\n if (!this._columnsDiffer && columns) {\n this._columnsDiffer = this._differs.find(columns).create();\n this._columnsDiffer.diff(columns);\n }\n }\n/**\n * Returns the difference between the current columns and the columns from the last diff, or null\n * if there is no difference.\n * @return {?}\n */\ngetColumnsDiff(): IterableChanges<any> | null {\n return this._columnsDiffer.diff(this.columns);\n }\n}\n\nfunction BaseRowDef_tsickle_Closure_declarations() {\n/**\n * The columns to be displayed on this row.\n * @type {?}\n */\nBaseRowDef.prototype.columns;\n/**\n * Differ used to check if any changes were made to the columns.\n * @type {?}\n */\nBaseRowDef.prototype._columnsDiffer;\n/** @type {?} */\nBaseRowDef.prototype.template;\n/** @type {?} */\nBaseRowDef.prototype._differs;\n}\n\n/**\n * Header row definition for the CDK table.\n * Captures the header row's template and other header properties such as the columns to display.\n */\nexport class CdkHeaderRowDef extends BaseRowDef {\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(template: TemplateRef<any>, _differs: IterableDiffers) {\n super(template, _differs);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[cdkHeaderRowDef]',\n inputs: ['columns: cdkHeaderRowDef'],\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: IterableDiffers, },\n];\n}\n\nfunction CdkHeaderRowDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderRowDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderRowDef.ctorParameters;\n}\n\n/**\n * Data row definition for the CDK table.\n * Captures the header row's template and other row properties such as the columns to display.\n */\nexport class CdkRowDef extends BaseRowDef {\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(template: TemplateRef<any>, _differs: IterableDiffers) {\n super(template, _differs);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[cdkRowDef]',\n inputs: ['columns: cdkRowDefColumns'],\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: IterableDiffers, },\n];\n}\n\nfunction CdkRowDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkRowDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkRowDef.ctorParameters;\n}\n\n\n/** Context provided to the row cells */\nexport interface CdkCellOutletRowContext<T> {\n /** Data for the row that this cell is located within. */\n $implicit: T;\n\n /** Index location of the row that this cell is located within. */\n index?: number;\n\n /** Length of the number of total rows. */\n count?: number;\n\n /** True if this cell is contained in the first row. */\n first?: boolean;\n\n /** True if this cell is contained in the last row. */\n last?: boolean;\n\n /** True if this cell is contained in a row with an even-numbered index. */\n even?: boolean;\n\n /** True if this cell is contained in a row with an odd-numbered index. */\n odd?: boolean;\n}\n/**\n * Outlet for rendering cells inside of a row or header row.\n * \\@docs-private\n */\nexport class CdkCellOutlet {\n/**\n * The ordered list of cells to render within this outlet's view container\n */\ncells: CdkCellDef[];\n/**\n * The data context to be provided to each cell\n */\ncontext: any;\n/**\n * Static property containing the latest constructed instance of this class.\n * Used by the CDK table when each CdkHeaderRow and CdkRow component is created using\n * createEmbeddedView. After one of these components are created, this property will provide\n * a handle to provide that component's cells and context. After init, the CdkCellOutlet will\n * construct the cells with the provided context.\n */\nstatic mostRecentCellOutlet: CdkCellOutlet;\n/**\n * @param {?} _viewContainer\n */\nconstructor(public _viewContainer: ViewContainerRef) {\n CdkCellOutlet.mostRecentCellOutlet = this;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkCellOutlet]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction CdkCellOutlet_tsickle_Closure_declarations() {\n/**\n * Static property containing the latest constructed instance of this class.\n * Used by the CDK table when each CdkHeaderRow and CdkRow component is created using\n * createEmbeddedView. After one of these components are created, this property will provide\n * a handle to provide that component's cells and context. After init, the CdkCellOutlet will\n * construct the cells with the provided context.\n * @type {?}\n */\nCdkCellOutlet.mostRecentCellOutlet;\n/** @type {?} */\nCdkCellOutlet.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCellOutlet.ctorParameters;\n/**\n * The ordered list of cells to render within this outlet's view container\n * @type {?}\n */\nCdkCellOutlet.prototype.cells;\n/**\n * The data context to be provided to each cell\n * @type {?}\n */\nCdkCellOutlet.prototype.context;\n/** @type {?} */\nCdkCellOutlet.prototype._viewContainer;\n}\n\n/**\n * Header template container that contains the cell outlet. Adds the right class and role.\n */\nexport class CdkHeaderRow { static decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n moduleId: module.id,\n selector: 'cdk-header-row',\n template: CDK_ROW_TEMPLATE,\n host: {\n 'class': 'cdk-header-row',\n 'role': 'row',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkHeaderRow_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderRow.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderRow.ctorParameters;\n}\n\n/**\n * Data row template container that contains the cell outlet. Adds the right class and role.\n */\nexport class CdkRow { static decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n moduleId: module.id,\n selector: 'cdk-row',\n template: CDK_ROW_TEMPLATE,\n host: {\n 'class': 'cdk-row',\n 'role': 'row',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkRow_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkRow.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkRow.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\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 = 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\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 = 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\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 = y[op[0] & 2 ? \"return\" : op[0] ? \"throw\" : \"next\"]) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [0, 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) { if (o[n]) i[n] = function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; }; }\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];\r\n return m ? m.call(o) : typeof __values === \"function\" ? __values(o) : o[Symbol.iterator]();\r\n}"],"names":["ContentChildren","ViewChild","Input","Renderer2","ElementRef","ChangeDetectorRef","IterableDiffers","ChangeDetectionStrategy","ViewEncapsulation","Component","takeUntil","ViewContainerRef","Directive","ContentChild","TemplateRef"],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google Inc. All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.io/license
|
|
7
|
+
*/
|
|
8
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common"),require("@angular/core"),require("rxjs/operator/takeUntil"),require("rxjs/BehaviorSubject"),require("rxjs/Subject"),require("@angular/cdk/collections")):"function"==typeof define&&define.amd?define(["exports","@angular/common","@angular/core","rxjs/operator/takeUntil","rxjs/BehaviorSubject","rxjs/Subject","@angular/cdk/collections"],t):t((e.ng=e.ng||{},e.ng.cdk=e.ng.cdk||{},e.ng.cdk.table=e.ng.cdk.table||{}),e.ng.common,e.ng.core,e.Rx.Observable.prototype,e.Rx,e.Rx,e.ng.cdk.collections)}(this,function(e,t,r,n,o,i,a){"use strict";function c(e,t){function r(){this.constructor=e}u(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function s(e){return Error('cdk-table: Could not find column with id "'+e+'".')}function l(e){return Error('cdk-table: Duplicate column definition name provided: "'+e+'".')}var u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])},d="<ng-container cdkCellOutlet></ng-container>",f=function(){function e(e,t){this.template=e,this._differs=t}return e.prototype.ngOnChanges=function(e){var t=e.columns.currentValue||[];!this._columnsDiffer&&t&&(this._columnsDiffer=this._differs.find(t).create(),this._columnsDiffer.diff(t))},e.prototype.getColumnsDiff=function(){return this._columnsDiffer.diff(this.columns)},e}(),h=function(e){function t(t,r){return e.call(this,t,r)||this}return c(t,e),t}(f);h.decorators=[{type:r.Directive,args:[{selector:"[cdkHeaderRowDef]",inputs:["columns: cdkHeaderRowDef"]}]}],h.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.IterableDiffers}]};var p=function(e){function t(t,r){return e.call(this,t,r)||this}return c(t,e),t}(f);p.decorators=[{type:r.Directive,args:[{selector:"[cdkRowDef]",inputs:["columns: cdkRowDefColumns"]}]}],p.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.IterableDiffers}]};var m=function(){function e(t){this._viewContainer=t,e.mostRecentCellOutlet=this}return e}();m.decorators=[{type:r.Directive,args:[{selector:"[cdkCellOutlet]"}]}],m.ctorParameters=function(){return[{type:r.ViewContainerRef}]};var y=function(){function e(){}return e}();y.decorators=[{type:r.Component,args:[{selector:"cdk-header-row",template:d,host:{class:"cdk-header-row",role:"row"},changeDetection:r.ChangeDetectionStrategy.OnPush,encapsulation:r.ViewEncapsulation.None,preserveWhitespaces:!1}]}],y.ctorParameters=function(){return[]};var C=function(){function e(){}return e}();C.decorators=[{type:r.Component,args:[{selector:"cdk-row",template:d,host:{class:"cdk-row",role:"row"},changeDetection:r.ChangeDetectionStrategy.OnPush,encapsulation:r.ViewEncapsulation.None,preserveWhitespaces:!1}]}],C.ctorParameters=function(){return[]};var _=function(){function e(e){this.template=e}return e}();_.decorators=[{type:r.Directive,args:[{selector:"[cdkCellDef]"}]}],_.ctorParameters=function(){return[{type:r.TemplateRef}]};var g=function(){function e(e){this.template=e}return e}();g.decorators=[{type:r.Directive,args:[{selector:"[cdkHeaderCellDef]"}]}],g.ctorParameters=function(){return[{type:r.TemplateRef}]};var w=function(){function e(){}return Object.defineProperty(e.prototype,"name",{get:function(){return this._name},set:function(e){this._name=e,this.cssClassFriendlyName=e.replace(/[^a-z0-9_-]/gi,"-")},enumerable:!0,configurable:!0}),e}();w.decorators=[{type:r.Directive,args:[{selector:"[cdkColumnDef]"}]}],w.ctorParameters=function(){return[]},w.propDecorators={name:[{type:r.Input,args:["cdkColumnDef"]}],cell:[{type:r.ContentChild,args:[_]}],headerCell:[{type:r.ContentChild,args:[g]}]};var D=function(){function e(e,t,r){r.addClass(t.nativeElement,"cdk-column-"+e.cssClassFriendlyName)}return e}();D.decorators=[{type:r.Directive,args:[{selector:"cdk-header-cell",host:{class:"cdk-header-cell",role:"columnheader"}}]}],D.ctorParameters=function(){return[{type:w},{type:r.ElementRef},{type:r.Renderer2}]};var v=function(){function e(e,t,r){r.addClass(t.nativeElement,"cdk-column-"+e.cssClassFriendlyName)}return e}();v.decorators=[{type:r.Directive,args:[{selector:"cdk-cell",host:{class:"cdk-cell",role:"gridcell"}}]}],v.ctorParameters=function(){return[{type:w},{type:r.ElementRef},{type:r.Renderer2}]};var k=function(){function e(e){this.viewContainer=e}return e}();k.decorators=[{type:r.Directive,args:[{selector:"[rowPlaceholder]"}]}],k.ctorParameters=function(){return[{type:r.ViewContainerRef}]};var R=function(){function e(e){this.viewContainer=e}return e}();R.decorators=[{type:r.Directive,args:[{selector:"[headerRowPlaceholder]"}]}],R.ctorParameters=function(){return[{type:r.ViewContainerRef}]};var b="\n <ng-container headerRowPlaceholder></ng-container>\n <ng-container rowPlaceholder></ng-container>",P=function(){function e(e,t,r,n,a){this._differs=e,this._changeDetectorRef=t,this._onDestroy=new i.Subject,this._data=[],this._columnDefinitionsByName=new Map,this.viewChange=new o.BehaviorSubject({start:0,end:Number.MAX_VALUE}),a||n.setAttribute(r.nativeElement,"role","grid")}return Object.defineProperty(e.prototype,"trackBy",{get:function(){return this._trackByFn},set:function(e){r.isDevMode()&&null!=e&&"function"!=typeof e&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(e)+"."),this._trackByFn=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dataSource",{get:function(){return this._dataSource},set:function(e){this._dataSource!==e&&this._switchDataSource(e)},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this._dataDiffer=this._differs.find([]).create(this._trackByFn)},e.prototype.ngAfterContentInit=function(){var e=this;this._cacheColumnDefinitionsByName(),this._columnDefinitions.changes.subscribe(function(){return e._cacheColumnDefinitionsByName()}),this._renderHeaderRow()},e.prototype.ngAfterContentChecked=function(){this._renderUpdatedColumns(),this.dataSource&&!this._renderChangeSubscription&&this._observeRenderChanges()},e.prototype.ngOnDestroy=function(){this._rowPlaceholder.viewContainer.clear(),this._headerRowPlaceholder.viewContainer.clear(),this._onDestroy.next(),this._onDestroy.complete(),this.dataSource&&this.dataSource.disconnect(this)},e.prototype._cacheColumnDefinitionsByName=function(){var e=this;this._columnDefinitionsByName.clear(),this._columnDefinitions.forEach(function(t){if(e._columnDefinitionsByName.has(t.name))throw l(t.name);e._columnDefinitionsByName.set(t.name,t)})},e.prototype._renderUpdatedColumns=function(){var e=this;this._rowDefinitions.forEach(function(t){t.getColumnsDiff()&&(e._dataDiffer.diff([]),e._rowPlaceholder.viewContainer.clear(),e._renderRowChanges())}),this._headerDefinition.getColumnsDiff()&&(this._headerRowPlaceholder.viewContainer.clear(),this._renderHeaderRow())},e.prototype._switchDataSource=function(e){this._data=[],this.dataSource&&this.dataSource.disconnect(this),this._renderChangeSubscription&&(this._renderChangeSubscription.unsubscribe(),this._renderChangeSubscription=null),e||this._rowPlaceholder.viewContainer.clear(),this._dataSource=e},e.prototype._observeRenderChanges=function(){var e=this;this._renderChangeSubscription=n.takeUntil.call(this.dataSource.connect(this),this._onDestroy).subscribe(function(t){e._data=t,e._renderRowChanges()})},e.prototype._renderHeaderRow=function(){var e=this._getHeaderCellTemplatesForRow(this._headerDefinition);e.length&&(this._headerRowPlaceholder.viewContainer.createEmbeddedView(this._headerDefinition.template,{cells:e}),e.forEach(function(e){m.mostRecentCellOutlet._viewContainer.createEmbeddedView(e.template,{})}),this._changeDetectorRef.markForCheck())},e.prototype._renderRowChanges=function(){var e=this,t=this._dataDiffer.diff(this._data);if(t){var r=this._rowPlaceholder.viewContainer;t.forEachOperation(function(t,n,o){if(null==t.previousIndex)e._insertRow(e._data[o],o);else if(null==o)r.remove(n);else{var i=r.get(n);r.move(i,o)}}),this._updateRowContext()}},e.prototype._insertRow=function(e,t){var r=this._rowDefinitions.first,n={$implicit:e};this._rowPlaceholder.viewContainer.createEmbeddedView(r.template,n,t),(e?this._getCellTemplatesForRow(r):[]).forEach(function(e){m.mostRecentCellOutlet._viewContainer.createEmbeddedView(e.template,n)}),this._changeDetectorRef.markForCheck()},e.prototype._updateRowContext=function(){for(var e=this._rowPlaceholder.viewContainer,t=0,r=e.length;t<r;t++){var n=e.get(t);n.context.index=t,n.context.count=r,n.context.first=0===t,n.context.last=t===r-1,n.context.even=t%2==0,n.context.odd=!n.context.even}},e.prototype._getHeaderCellTemplatesForRow=function(e){var t=this;return e.columns?e.columns.map(function(e){var r=t._columnDefinitionsByName.get(e);if(!r)throw s(e);return r.headerCell}):[]},e.prototype._getCellTemplatesForRow=function(e){var t=this;return e.columns?e.columns.map(function(e){var r=t._columnDefinitionsByName.get(e);if(!r)throw s(e);return r.cell}):[]},e}();P.decorators=[{type:r.Component,args:[{selector:"cdk-table",template:b,host:{class:"cdk-table"},encapsulation:r.ViewEncapsulation.None,preserveWhitespaces:!1,changeDetection:r.ChangeDetectionStrategy.OnPush}]}],P.ctorParameters=function(){return[{type:r.IterableDiffers},{type:r.ChangeDetectorRef},{type:r.ElementRef},{type:r.Renderer2},{type:void 0,decorators:[{type:r.Attribute,args:["role"]}]}]},P.propDecorators={trackBy:[{type:r.Input}],dataSource:[{type:r.Input}],_rowPlaceholder:[{type:r.ViewChild,args:[k]}],_headerRowPlaceholder:[{type:r.ViewChild,args:[R]}],_columnDefinitions:[{type:r.ContentChildren,args:[w]}],_headerDefinition:[{type:r.ContentChild,args:[h]}],_rowDefinitions:[{type:r.ContentChildren,args:[p]}]};var S=[P,p,_,m,g,w,v,C,D,y,h,k,R],E=function(){function e(){}return e}();E.decorators=[{type:r.NgModule,args:[{imports:[t.CommonModule],exports:[S],declarations:[S]}]}],E.ctorParameters=function(){return[]},e.DataSource=a.DataSource,e.CdkTableModule=E,e.RowPlaceholder=k,e.HeaderRowPlaceholder=R,e.CDK_TABLE_TEMPLATE=b,e.CdkTable=P,e.CdkCellDef=_,e.CdkHeaderCellDef=g,e.CdkColumnDef=w,e.CdkHeaderCell=D,e.CdkCell=v,e.CDK_ROW_TEMPLATE=d,e.BaseRowDef=f,e.CdkHeaderRowDef=h,e.CdkRowDef=p,e.CdkCellOutlet=m,e.CdkHeaderRow=y,e.CdkRow=C,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
9
|
+
//# sourceMappingURL=cdk-table.umd.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cdk-table.umd.min.js","sources":["../../node_modules/tslib/tslib.es6.js","../../src/cdk/table/table.ts","../../src/cdk/table/row.ts","../../src/cdk/table/cell.ts","../../src/cdk/table/table-errors.ts","../../src/cdk/table/public_api.ts","../../src/cdk/table/index.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = 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\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 = 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\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 = y[op[0] & 2 ? \"return\" : op[0] ? \"throw\" : \"next\"]) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [0, 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) { if (o[n]) i[n] = function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; }; }\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];\r\n return m ? m.call(o) : typeof __values === \"function\" ? __values(o) : o[Symbol.iterator]();\r\n}","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n EmbeddedViewRef,\n Input,\n isDevMode,\n IterableChangeRecord,\n IterableDiffer,\n IterableDiffers,\n NgIterable,\n QueryList,\n Renderer2,\n TrackByFunction,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {CollectionViewer, DataSource} from '@angular/cdk/collections';\nimport {CdkCellOutlet, CdkCellOutletRowContext, CdkHeaderRowDef, CdkRowDef} from './row';\nimport {takeUntil} from 'rxjs/operator/takeUntil';\nimport {BehaviorSubject} from 'rxjs/BehaviorSubject';\nimport {Subscription} from 'rxjs/Subscription';\nimport {Subject} from 'rxjs/Subject';\nimport {CdkCellDef, CdkColumnDef, CdkHeaderCellDef} from './cell';\nimport {getTableDuplicateColumnNameError, getTableUnknownColumnError} from './table-errors';\n/**\n * Provides a handle for the table to grab the view container's ng-container to insert data rows.\n * \\@docs-private\n */\nexport class RowPlaceholder {\n/**\n * @param {?} viewContainer\n */\nconstructor(public viewContainer: ViewContainerRef) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[rowPlaceholder]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction RowPlaceholder_tsickle_Closure_declarations() {\n/** @type {?} */\nRowPlaceholder.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nRowPlaceholder.ctorParameters;\n/** @type {?} */\nRowPlaceholder.prototype.viewContainer;\n}\n\n/**\n * Provides a handle for the table to grab the view container's ng-container to insert the header.\n * \\@docs-private\n */\nexport class HeaderRowPlaceholder {\n/**\n * @param {?} viewContainer\n */\nconstructor(public viewContainer: ViewContainerRef) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[headerRowPlaceholder]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction HeaderRowPlaceholder_tsickle_Closure_declarations() {\n/** @type {?} */\nHeaderRowPlaceholder.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nHeaderRowPlaceholder.ctorParameters;\n/** @type {?} */\nHeaderRowPlaceholder.prototype.viewContainer;\n}\n\n/**\n * The table template that can be used by the md-table. Should not be used outside of the\n * material library.\n */\nexport const CDK_TABLE_TEMPLATE = `\n <ng-container headerRowPlaceholder></ng-container>\n <ng-container rowPlaceholder></ng-container>`;\n/**\n * A data table that connects with a data source to retrieve data of type `T` and renders\n * a header row and data rows. Updates the rows when new data is provided by the data source.\n */\nexport class CdkTable<T> implements CollectionViewer {\n/**\n * Subject that emits when the component has been destroyed.\n */\nprivate _onDestroy = new Subject<void>();\n/**\n * Latest data provided by the data source through the connect interface.\n */\nprivate _data: NgIterable<T> = [];\n/**\n * Subscription that listens for the data provided by the data source.\n */\nprivate _renderChangeSubscription: Subscription | null;\n/**\n * Map of all the user's defined columns (header and data cell template) identified by name.\n */\nprivate _columnDefinitionsByName = new Map<string, CdkColumnDef>();\n/**\n * Differ used to find the changes in the data provided by the data source.\n */\nprivate _dataDiffer: IterableDiffer<T>;\n/**\n * Tracking function that will be used to check the differences in data changes. Used similarly\n * to `ngFor` `trackBy` function. Optimize row operations by identifying a row based on its data\n * relative to the function to know if a row should be added/removed/moved.\n * Accepts a function that takes two parameters, `index` and `item`.\n * @param {?} fn\n * @return {?}\n */\nset trackBy(fn: TrackByFunction<T>) {\n if (isDevMode() &&\n fn != null && typeof fn !== 'function' && /** @type {?} */((\n <any>console)) && /** @type {?} */(( <any>console.warn))) {\n console.warn(`trackBy must be a function, but received ${JSON.stringify(fn)}.`);\n }\n this._trackByFn = fn;\n }\n/**\n * @return {?}\n */\nget trackBy(): TrackByFunction<T> { return this._trackByFn; }\nprivate _trackByFn: TrackByFunction<T>;\n/**\n * Provides a stream containing the latest data array to render. Influenced by the table's\n * stream of view window (what rows are currently on screen).\n * @return {?}\n */\nget dataSource(): DataSource<T> { return this._dataSource; }\n/**\n * @param {?} dataSource\n * @return {?}\n */\nset dataSource(dataSource: DataSource<T>) {\n if (this._dataSource !== dataSource) {\n this._switchDataSource(dataSource);\n }\n }\nprivate _dataSource: DataSource<T>;\n/**\n * Stream containing the latest information on what rows are being displayed on screen.\n * Can be used by the data source to as a heuristic of what data should be provided.\n */\nviewChange =\n new BehaviorSubject<{start: number, end: number}>({start: 0, end: Number.MAX_VALUE});\n\n // Placeholders within the table's template where the header and data rows will be inserted.\n _rowPlaceholder: RowPlaceholder;\n _headerRowPlaceholder: HeaderRowPlaceholder;\n/**\n * The column definitions provided by the user that contain what the header and cells should\n * render for each column.\n */\n_columnDefinitions: QueryList<CdkColumnDef>;\n/**\n * Template used as the header container.\n */\n_headerDefinition: CdkHeaderRowDef;\n/**\n * Set of templates that used as the data row containers.\n */\n_rowDefinitions: QueryList<CdkRowDef>;\n/**\n * @param {?} _differs\n * @param {?} _changeDetectorRef\n * @param {?} elementRef\n * @param {?} renderer\n * @param {?} role\n */\nconstructor(private readonly _differs: IterableDiffers,\nprivate readonly _changeDetectorRef: ChangeDetectorRef,\n elementRef: ElementRef,\n renderer: Renderer2,\n role: string) {\n if (!role) {\n renderer.setAttribute(elementRef.nativeElement, 'role', 'grid');\n }\n }\n/**\n * @return {?}\n */\nngOnInit() {\n // TODO(andrewseguin): Setup a listener for scrolling, emit the calculated view to viewChange\n this._dataDiffer = this._differs.find([]).create(this._trackByFn);\n }\n/**\n * @return {?}\n */\nngAfterContentInit() {\n this._cacheColumnDefinitionsByName();\n this._columnDefinitions.changes.subscribe(() => this._cacheColumnDefinitionsByName());\n this._renderHeaderRow();\n }\n/**\n * @return {?}\n */\nngAfterContentChecked() {\n this._renderUpdatedColumns();\n if (this.dataSource && !this._renderChangeSubscription) {\n this._observeRenderChanges();\n }\n }\n/**\n * @return {?}\n */\nngOnDestroy() {\n this._rowPlaceholder.viewContainer.clear();\n this._headerRowPlaceholder.viewContainer.clear();\n this._onDestroy.next();\n this._onDestroy.complete();\n\n if (this.dataSource) {\n this.dataSource.disconnect(this);\n }\n }\n/**\n * Update the map containing the content's column definitions.\n * @return {?}\n */\nprivate _cacheColumnDefinitionsByName() {\n this._columnDefinitionsByName.clear();\n this._columnDefinitions.forEach(columnDef => {\n if (this._columnDefinitionsByName.has(columnDef.name)) {\n throw getTableDuplicateColumnNameError(columnDef.name);\n }\n this._columnDefinitionsByName.set(columnDef.name, columnDef);\n });\n }\n/**\n * Check if the header or rows have changed what columns they want to display. If there is a diff,\n * then re-render that section.\n * @return {?}\n */\nprivate _renderUpdatedColumns() {\n // Re-render the rows when the row definition columns change.\n this._rowDefinitions.forEach(rowDefinition => {\n if (!!rowDefinition.getColumnsDiff()) {\n // Reset the data to an empty array so that renderRowChanges will re-render all new rows.\n this._dataDiffer.diff([]);\n\n this._rowPlaceholder.viewContainer.clear();\n this._renderRowChanges();\n }\n });\n\n // Re-render the header row if there is a difference in its columns.\n if (this._headerDefinition.getColumnsDiff()) {\n this._headerRowPlaceholder.viewContainer.clear();\n this._renderHeaderRow();\n }\n }\n/**\n * Switch to the provided data source by resetting the data and unsubscribing from the current\n * render change subscription if one exists. If the data source is null, interpret this by\n * clearing the row placeholder. Otherwise start listening for new data.\n * @param {?} dataSource\n * @return {?}\n */\nprivate _switchDataSource(dataSource: DataSource<T>) {\n this._data = [];\n\n if (this.dataSource) {\n this.dataSource.disconnect(this);\n }\n\n // Stop listening for data from the previous data source.\n if (this._renderChangeSubscription) {\n this._renderChangeSubscription.unsubscribe();\n this._renderChangeSubscription = null;\n }\n\n // Remove the table's rows if there is now no data source\n if (!dataSource) {\n this._rowPlaceholder.viewContainer.clear();\n }\n\n this._dataSource = dataSource;\n }\n/**\n * Set up a subscription for the data provided by the data source.\n * @return {?}\n */\nprivate _observeRenderChanges() {\n this._renderChangeSubscription = takeUntil.call(this.dataSource.connect(this), this._onDestroy)\n .subscribe(data => {\n this._data = data;\n this._renderRowChanges();\n });\n }\n/**\n * Create the embedded view for the header template and place it in the header row view container.\n * @return {?}\n */\nprivate _renderHeaderRow() {\n const /** @type {?} */ cells = this._getHeaderCellTemplatesForRow(this._headerDefinition);\n if (!cells.length) { return; }\n\n // TODO(andrewseguin): add some code to enforce that exactly\n // one CdkCellOutlet was instantiated as a result\n // of `createEmbeddedView`.\n this._headerRowPlaceholder.viewContainer\n .createEmbeddedView(this._headerDefinition.template, {cells});\n\n cells.forEach(cell => {\n CdkCellOutlet.mostRecentCellOutlet._viewContainer.createEmbeddedView(cell.template, {});\n });\n\n this._changeDetectorRef.markForCheck();\n }\n/**\n * Check for changes made in the data and render each change (row added/removed/moved).\n * @return {?}\n */\nprivate _renderRowChanges() {\n const /** @type {?} */ changes = this._dataDiffer.diff(this._data);\n if (!changes) { return; }\n\n const /** @type {?} */ viewContainer = this._rowPlaceholder.viewContainer;\n changes.forEachOperation(\n (item: IterableChangeRecord<any>, adjustedPreviousIndex: number, currentIndex: number) => {\n if (item.previousIndex == null) {\n this._insertRow(this._data[currentIndex], currentIndex);\n } else if (currentIndex == null) {\n viewContainer.remove(adjustedPreviousIndex);\n } else {\n const /** @type {?} */ view = viewContainer.get(adjustedPreviousIndex);\n viewContainer.move( /** @type {?} */((view)), currentIndex);\n }\n });\n\n this._updateRowContext();\n }\n/**\n * Create the embedded view for the data row template and place it in the correct index location\n * within the data row view container.\n * @param {?} rowData\n * @param {?} index\n * @return {?}\n */\nprivate _insertRow(rowData: T, index: number) {\n // TODO(andrewseguin): Add when predicates to the row definitions\n // to find the right template to used based on\n // the data rather than choosing the first row definition.\n const /** @type {?} */ row = this._rowDefinitions.first;\n\n // Row context that will be provided to both the created embedded row view and its cells.\n const /** @type {?} */ context: CdkCellOutletRowContext<T> = {$implicit: rowData};\n\n // TODO(andrewseguin): add some code to enforce that exactly one\n // CdkCellOutlet was instantiated as a result of `createEmbeddedView`.\n this._rowPlaceholder.viewContainer.createEmbeddedView(row.template, context, index);\n\n // Insert empty cells if there is no data to improve rendering time.\n const /** @type {?} */ cells = rowData ? this._getCellTemplatesForRow(row) : [];\n\n cells.forEach(cell => {\n CdkCellOutlet.mostRecentCellOutlet._viewContainer.createEmbeddedView(cell.template, context);\n });\n\n this._changeDetectorRef.markForCheck();\n }\n/**\n * Updates the context for each row to reflect any data changes that may have caused\n * rows to be added, removed, or moved. The view container contains the same context\n * that was provided to each of its cells.\n * @return {?}\n */\nprivate _updateRowContext() {\n const /** @type {?} */ viewContainer = this._rowPlaceholder.viewContainer;\n for (let /** @type {?} */ index = 0, /** @type {?} */ count = viewContainer.length; index < count; index++) {\n const /** @type {?} */ viewRef = /** @type {?} */(( viewContainer.get(index) as EmbeddedViewRef<CdkCellOutletRowContext<T>>));\n viewRef.context.index = index;\n viewRef.context.count = count;\n viewRef.context.first = index === 0;\n viewRef.context.last = index === count - 1;\n viewRef.context.even = index % 2 === 0;\n viewRef.context.odd = !viewRef.context.even;\n }\n }\n/**\n * Returns the cell template definitions to insert into the header\n * as defined by its list of columns to display.\n * @param {?} headerDef\n * @return {?}\n */\nprivate _getHeaderCellTemplatesForRow(headerDef: CdkHeaderRowDef): CdkHeaderCellDef[] {\n if (!headerDef.columns) { return []; }\n return headerDef.columns.map(columnId => {\n const /** @type {?} */ column = this._columnDefinitionsByName.get(columnId);\n\n if (!column) {\n throw getTableUnknownColumnError(columnId);\n }\n\n return column.headerCell;\n });\n }\n/**\n * Returns the cell template definitions to insert in the provided row\n * as defined by its list of columns to display.\n * @param {?} rowDef\n * @return {?}\n */\nprivate _getCellTemplatesForRow(rowDef: CdkRowDef): CdkCellDef[] {\n if (!rowDef.columns) { return []; }\n return rowDef.columns.map(columnId => {\n const /** @type {?} */ column = this._columnDefinitionsByName.get(columnId);\n\n if (!column) {\n throw getTableUnknownColumnError(columnId);\n }\n\n return column.cell;\n });\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n moduleId: module.id,\n selector: 'cdk-table',\n template: CDK_TABLE_TEMPLATE,\n host: {\n 'class': 'cdk-table',\n },\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n changeDetection: ChangeDetectionStrategy.OnPush,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: IterableDiffers, },\n{type: ChangeDetectorRef, },\n{type: ElementRef, },\n{type: Renderer2, },\n{type: undefined, decorators: [{ type: Attribute, args: ['role', ] }, ]},\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'trackBy': [{ type: Input },],\n'dataSource': [{ type: Input },],\n'_rowPlaceholder': [{ type: ViewChild, args: [RowPlaceholder, ] },],\n'_headerRowPlaceholder': [{ type: ViewChild, args: [HeaderRowPlaceholder, ] },],\n'_columnDefinitions': [{ type: ContentChildren, args: [CdkColumnDef, ] },],\n'_headerDefinition': [{ type: ContentChild, args: [CdkHeaderRowDef, ] },],\n'_rowDefinitions': [{ type: ContentChildren, args: [CdkRowDef, ] },],\n};\n}\n\nfunction CdkTable_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkTable.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkTable.ctorParameters;\n/** @type {?} */\nCdkTable.propDecorators;\n/**\n * Subject that emits when the component has been destroyed.\n * @type {?}\n */\nCdkTable.prototype._onDestroy;\n/**\n * Latest data provided by the data source through the connect interface.\n * @type {?}\n */\nCdkTable.prototype._data;\n/**\n * Subscription that listens for the data provided by the data source.\n * @type {?}\n */\nCdkTable.prototype._renderChangeSubscription;\n/**\n * Map of all the user's defined columns (header and data cell template) identified by name.\n * @type {?}\n */\nCdkTable.prototype._columnDefinitionsByName;\n/**\n * Differ used to find the changes in the data provided by the data source.\n * @type {?}\n */\nCdkTable.prototype._dataDiffer;\n/** @type {?} */\nCdkTable.prototype._trackByFn;\n/** @type {?} */\nCdkTable.prototype._dataSource;\n/**\n * Stream containing the latest information on what rows are being displayed on screen.\n * Can be used by the data source to as a heuristic of what data should be provided.\n * @type {?}\n */\nCdkTable.prototype.viewChange;\n/** @type {?} */\nCdkTable.prototype._rowPlaceholder;\n/** @type {?} */\nCdkTable.prototype._headerRowPlaceholder;\n/**\n * The column definitions provided by the user that contain what the header and cells should\n * render for each column.\n * @type {?}\n */\nCdkTable.prototype._columnDefinitions;\n/**\n * Template used as the header container.\n * @type {?}\n */\nCdkTable.prototype._headerDefinition;\n/**\n * Set of templates that used as the data row containers.\n * @type {?}\n */\nCdkTable.prototype._rowDefinitions;\n/** @type {?} */\nCdkTable.prototype._differs;\n/** @type {?} */\nCdkTable.prototype._changeDetectorRef;\n}\n\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {\n ChangeDetectionStrategy,\n Component,\n Directive,\n IterableChanges,\n IterableDiffer,\n IterableDiffers,\n SimpleChanges,\n TemplateRef,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {CdkCellDef} from './cell';\n/**\n * The row template that can be used by the md-table. Should not be used outside of the\n * material library.\n */\nexport const CDK_ROW_TEMPLATE = `<ng-container cdkCellOutlet></ng-container>`;\n/**\n * Base class for the CdkHeaderRowDef and CdkRowDef that handles checking their columns inputs\n * for changes and notifying the table.\n * @abstract\n */\nexport abstract class BaseRowDef {\n/**\n * The columns to be displayed on this row.\n */\ncolumns: string[];\n/**\n * Differ used to check if any changes were made to the columns.\n */\nprotected _columnsDiffer: IterableDiffer<any>;\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(public template: TemplateRef<any>,\n protected _differs: IterableDiffers) { }\n/**\n * @param {?} changes\n * @return {?}\n */\nngOnChanges(changes: SimpleChanges): void {\n // Create a new columns differ if one does not yet exist. Initialize it based on initial value\n // of the columns property or an empty array if none is provided.\n const /** @type {?} */ columns = changes['columns'].currentValue || [];\n if (!this._columnsDiffer && columns) {\n this._columnsDiffer = this._differs.find(columns).create();\n this._columnsDiffer.diff(columns);\n }\n }\n/**\n * Returns the difference between the current columns and the columns from the last diff, or null\n * if there is no difference.\n * @return {?}\n */\ngetColumnsDiff(): IterableChanges<any> | null {\n return this._columnsDiffer.diff(this.columns);\n }\n}\n\nfunction BaseRowDef_tsickle_Closure_declarations() {\n/**\n * The columns to be displayed on this row.\n * @type {?}\n */\nBaseRowDef.prototype.columns;\n/**\n * Differ used to check if any changes were made to the columns.\n * @type {?}\n */\nBaseRowDef.prototype._columnsDiffer;\n/** @type {?} */\nBaseRowDef.prototype.template;\n/** @type {?} */\nBaseRowDef.prototype._differs;\n}\n\n/**\n * Header row definition for the CDK table.\n * Captures the header row's template and other header properties such as the columns to display.\n */\nexport class CdkHeaderRowDef extends BaseRowDef {\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(template: TemplateRef<any>, _differs: IterableDiffers) {\n super(template, _differs);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[cdkHeaderRowDef]',\n inputs: ['columns: cdkHeaderRowDef'],\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: IterableDiffers, },\n];\n}\n\nfunction CdkHeaderRowDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderRowDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderRowDef.ctorParameters;\n}\n\n/**\n * Data row definition for the CDK table.\n * Captures the header row's template and other row properties such as the columns to display.\n */\nexport class CdkRowDef extends BaseRowDef {\n/**\n * @param {?} template\n * @param {?} _differs\n */\nconstructor(template: TemplateRef<any>, _differs: IterableDiffers) {\n super(template, _differs);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: '[cdkRowDef]',\n inputs: ['columns: cdkRowDefColumns'],\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n{type: IterableDiffers, },\n];\n}\n\nfunction CdkRowDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkRowDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkRowDef.ctorParameters;\n}\n\n\n/** Context provided to the row cells */\nexport interface CdkCellOutletRowContext<T> {\n /** Data for the row that this cell is located within. */\n $implicit: T;\n\n /** Index location of the row that this cell is located within. */\n index?: number;\n\n /** Length of the number of total rows. */\n count?: number;\n\n /** True if this cell is contained in the first row. */\n first?: boolean;\n\n /** True if this cell is contained in the last row. */\n last?: boolean;\n\n /** True if this cell is contained in a row with an even-numbered index. */\n even?: boolean;\n\n /** True if this cell is contained in a row with an odd-numbered index. */\n odd?: boolean;\n}\n/**\n * Outlet for rendering cells inside of a row or header row.\n * \\@docs-private\n */\nexport class CdkCellOutlet {\n/**\n * The ordered list of cells to render within this outlet's view container\n */\ncells: CdkCellDef[];\n/**\n * The data context to be provided to each cell\n */\ncontext: any;\n/**\n * Static property containing the latest constructed instance of this class.\n * Used by the CDK table when each CdkHeaderRow and CdkRow component is created using\n * createEmbeddedView. After one of these components are created, this property will provide\n * a handle to provide that component's cells and context. After init, the CdkCellOutlet will\n * construct the cells with the provided context.\n */\nstatic mostRecentCellOutlet: CdkCellOutlet;\n/**\n * @param {?} _viewContainer\n */\nconstructor(public _viewContainer: ViewContainerRef) {\n CdkCellOutlet.mostRecentCellOutlet = this;\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkCellOutlet]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: ViewContainerRef, },\n];\n}\n\nfunction CdkCellOutlet_tsickle_Closure_declarations() {\n/**\n * Static property containing the latest constructed instance of this class.\n * Used by the CDK table when each CdkHeaderRow and CdkRow component is created using\n * createEmbeddedView. After one of these components are created, this property will provide\n * a handle to provide that component's cells and context. After init, the CdkCellOutlet will\n * construct the cells with the provided context.\n * @type {?}\n */\nCdkCellOutlet.mostRecentCellOutlet;\n/** @type {?} */\nCdkCellOutlet.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCellOutlet.ctorParameters;\n/**\n * The ordered list of cells to render within this outlet's view container\n * @type {?}\n */\nCdkCellOutlet.prototype.cells;\n/**\n * The data context to be provided to each cell\n * @type {?}\n */\nCdkCellOutlet.prototype.context;\n/** @type {?} */\nCdkCellOutlet.prototype._viewContainer;\n}\n\n/**\n * Header template container that contains the cell outlet. Adds the right class and role.\n */\nexport class CdkHeaderRow { static decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n moduleId: module.id,\n selector: 'cdk-header-row',\n template: CDK_ROW_TEMPLATE,\n host: {\n 'class': 'cdk-header-row',\n 'role': 'row',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkHeaderRow_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderRow.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderRow.ctorParameters;\n}\n\n/**\n * Data row template container that contains the cell outlet. Adds the right class and role.\n */\nexport class CdkRow { static decorators: DecoratorInvocation[] = [\n{ type: Component, args: [{\n moduleId: module.id,\n selector: 'cdk-row',\n template: CDK_ROW_TEMPLATE,\n host: {\n 'class': 'cdk-row',\n 'role': 'row',\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n preserveWhitespaces: false,\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkRow_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkRow.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkRow.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {ContentChild, Directive, ElementRef, Input, Renderer2, TemplateRef} from '@angular/core';\n/**\n * Cell definition for a CDK table.\n * Captures the template of a column's data row cell as well as cell-specific properties.\n */\nexport class CdkCellDef {\n/**\n * @param {?} template\n */\nconstructor(public template: TemplateRef<any>) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkCellDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n];\n}\n\nfunction CdkCellDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkCellDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCellDef.ctorParameters;\n/** @type {?} */\nCdkCellDef.prototype.template;\n}\n\n/**\n * Header cell definition for a CDK table.\n * Captures the template of a column's header cell and as well as cell-specific properties.\n */\nexport class CdkHeaderCellDef {\n/**\n * @param {?} template\n */\nconstructor(public template: TemplateRef<any>) { }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkHeaderCellDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: TemplateRef, },\n];\n}\n\nfunction CdkHeaderCellDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderCellDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderCellDef.ctorParameters;\n/** @type {?} */\nCdkHeaderCellDef.prototype.template;\n}\n\n/**\n * Column definition for the CDK table.\n * Defines a set of cells available for a table column.\n */\nexport class CdkColumnDef {\n/**\n * Unique name for this column.\n * @return {?}\n */\nget name(): string { return this._name; }\n/**\n * @param {?} name\n * @return {?}\n */\nset name(name: string) {\n this._name = name;\n this.cssClassFriendlyName = name.replace(/[^a-z0-9_-]/ig, '-');\n }\n _name: string;\n/**\n * \\@docs-private\n */\ncell: CdkCellDef;\n/**\n * \\@docs-private\n */\nheaderCell: CdkHeaderCellDef;\n/**\n * Transformed version of the column name that can be used as part of a CSS classname. Excludes\n * all non-alphanumeric characters and the special characters '-' and '_'. Any characters that\n * do not match are replaced by the '-' character.\n */\ncssClassFriendlyName: string;\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{selector: '[cdkColumnDef]'}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\nstatic propDecorators: {[key: string]: DecoratorInvocation[]} = {\n'name': [{ type: Input, args: ['cdkColumnDef', ] },],\n'cell': [{ type: ContentChild, args: [CdkCellDef, ] },],\n'headerCell': [{ type: ContentChild, args: [CdkHeaderCellDef, ] },],\n};\n}\n\nfunction CdkColumnDef_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkColumnDef.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkColumnDef.ctorParameters;\n/** @type {?} */\nCdkColumnDef.propDecorators;\n/** @type {?} */\nCdkColumnDef.prototype._name;\n/**\n * \\@docs-private\n * @type {?}\n */\nCdkColumnDef.prototype.cell;\n/**\n * \\@docs-private\n * @type {?}\n */\nCdkColumnDef.prototype.headerCell;\n/**\n * Transformed version of the column name that can be used as part of a CSS classname. Excludes\n * all non-alphanumeric characters and the special characters '-' and '_'. Any characters that\n * do not match are replaced by the '-' character.\n * @type {?}\n */\nCdkColumnDef.prototype.cssClassFriendlyName;\n}\n\n/**\n * Header cell template container that adds the right classes and role.\n */\nexport class CdkHeaderCell {\n/**\n * @param {?} columnDef\n * @param {?} elementRef\n * @param {?} renderer\n */\nconstructor(columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2) {\n renderer.addClass(elementRef.nativeElement, `cdk-column-${columnDef.cssClassFriendlyName}`);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'cdk-header-cell',\n host: {\n 'class': 'cdk-header-cell',\n 'role': 'columnheader',\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkColumnDef, },\n{type: ElementRef, },\n{type: Renderer2, },\n];\n}\n\nfunction CdkHeaderCell_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkHeaderCell.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkHeaderCell.ctorParameters;\n}\n\n/**\n * Cell template container that adds the right classes and role.\n */\nexport class CdkCell {\n/**\n * @param {?} columnDef\n * @param {?} elementRef\n * @param {?} renderer\n */\nconstructor(columnDef: CdkColumnDef, elementRef: ElementRef, renderer: Renderer2) {\n renderer.addClass(elementRef.nativeElement, `cdk-column-${columnDef.cssClassFriendlyName}`);\n }\nstatic decorators: DecoratorInvocation[] = [\n{ type: Directive, args: [{\n selector: 'cdk-cell',\n host: {\n 'class': 'cdk-cell',\n 'role': 'gridcell',\n },\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n{type: CdkColumnDef, },\n{type: ElementRef, },\n{type: Renderer2, },\n];\n}\n\nfunction CdkCell_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkCell.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkCell.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","\n/**\n * Returns an error to be thrown when attempting to find an unexisting column.\n * \\@docs-private\n * @param {?} id Id whose lookup failed.\n * @return {?}\n */\nexport function getTableUnknownColumnError(id: string) {\n return Error(`cdk-table: Could not find column with id \"${id}\".`);\n}\n/**\n * Returns an error to be thrown when two column definitions have the same name.\n * \\@docs-private\n * @param {?} name\n * @return {?}\n */\nexport function getTableDuplicateColumnNameError(name: string) {\n return Error(`cdk-table: Duplicate column definition name provided: \"${name}\".`);\n}\n","/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\n\nimport {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {HeaderRowPlaceholder, RowPlaceholder, CdkTable} from './table';\nimport {CdkCellOutlet, CdkHeaderRow, CdkHeaderRowDef, CdkRow, CdkRowDef} from './row';\nimport {CdkColumnDef, CdkHeaderCellDef, CdkHeaderCell, CdkCell, CdkCellDef} from './cell';\n\nexport {RowPlaceholder,HeaderRowPlaceholder,CDK_TABLE_TEMPLATE,CdkTable} from './table';\nexport {CdkCellDef,CdkHeaderCellDef,CdkColumnDef,CdkHeaderCell,CdkCell} from './cell';\nexport {CDK_ROW_TEMPLATE,BaseRowDef,CdkHeaderRowDef,CdkRowDef,CdkCellOutletRowContext,CdkCellOutlet,CdkHeaderRow,CdkRow} from './row';\n\n/** Re-export DataSource for a more intuitive experience for users of just the table. */\nexport {DataSource} from '@angular/cdk/collections';\n\nconst /** @type {?} */ EXPORTED_DECLARATIONS = [\n CdkTable,\n CdkRowDef,\n CdkCellDef,\n CdkCellOutlet,\n CdkHeaderCellDef,\n CdkColumnDef,\n CdkCell,\n CdkRow,\n CdkHeaderCell,\n CdkHeaderRow,\n CdkHeaderRowDef,\n RowPlaceholder,\n HeaderRowPlaceholder,\n];\nexport class CdkTableModule { static decorators: DecoratorInvocation[] = [\n{ type: NgModule, args: [{\n imports: [CommonModule],\n exports: [EXPORTED_DECLARATIONS],\n declarations: [EXPORTED_DECLARATIONS]\n\n}, ] },\n];\n/**\n * @nocollapse\n */\nstatic ctorParameters: () => ({type: any, decorators?: DecoratorInvocation[]}|null)[] = () => [\n];\n}\n\nfunction CdkTableModule_tsickle_Closure_declarations() {\n/** @type {?} */\nCdkTableModule.decorators;\n/**\n * @nocollapse\n * @type {?}\n */\nCdkTableModule.ctorParameters;\n}\n\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport {DataSource,CdkTableModule,RowPlaceholder,HeaderRowPlaceholder,CDK_TABLE_TEMPLATE,CdkTable,CdkCellDef,CdkHeaderCellDef,CdkColumnDef,CdkHeaderCell,CdkCell,CDK_ROW_TEMPLATE,BaseRowDef,CdkHeaderRowDef,CdkRowDef,CdkCellOutletRowContext,CdkCellOutlet,CdkHeaderRow,CdkRow} from './public_api';\n"],"names":["__extends","d","b","__","this","constructor","extendStatics","prototype","Object","create","getTableUnknownColumnError","id","Error","name","setPrototypeOf","__proto__","Array","p","hasOwnProperty","CDK_ROW_TEMPLATE","BaseRowDef","template","_differs","ngOnChanges","changes","columns","currentValue","_columnsDiffer","find","diff","getColumnsDiff","CdkHeaderRowDef","decorators","type","Directive","args","selector","ctorParameters","TemplateRef","CdkRowDef","_super","call","CdkCellOutlet","_viewContainer","mostRecentCellOutlet","CdkHeaderRow","Component","changeDetection","ChangeDetectionStrategy","OnPush","CdkRow","host","role","preserveWhitespaces","CdkCellDef","CdkHeaderCellDef","CdkColumnDef","defineProperty","get","_name","set","enumerable","propDecorators","Input","cell","ContentChild","headerCell","CdkHeaderCell","columnDef","elementRef","renderer","addClass","nativeElement","cssClassFriendlyName","ElementRef","Renderer2","class","CdkCell","viewContainer","RowPlaceholder","ViewContainerRef","HeaderRowPlaceholder","CdkTable","_changeDetectorRef","_columnDefinitionsByName","Map","_trackByFn","fn","dataSource","_dataSource","_switchDataSource","ngOnInit","_dataDiffer","_cacheColumnDefinitionsByName","_columnDefinitions","subscribe","_this","_renderHeaderRow","ngAfterContentChecked","_renderUpdatedColumns","ngOnDestroy","_rowPlaceholder","clear","_onDestroy","next","complete","disconnect","rowDefinition","_renderRowChanges","_headerRowPlaceholder","_data","_renderChangeSubscription","_observeRenderChanges","takeUntil","connect","data","cells","_getHeaderCellTemplatesForRow","_headerDefinition","length","forEachOperation","item","adjustedPreviousIndex","currentIndex","previousIndex","_insertRow","_updateRowContext","rowData","index","createEmbeddedView","row","context","_getCellTemplatesForRow","forEach","markForCheck","viewRef","count","first","last","even","odd","headerDef","map","columnId","column","rowDef","CDK_TABLE_TEMPLATE","encapsulation","ViewEncapsulation","None","IterableDiffers","ChangeDetectorRef","trackBy","ViewChild","ContentChildren"],"mappings":"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"}
|
package/bundles/cdk.umd.js
CHANGED