@angular/material
Version:
Angular Material
9 lines • 50.4 kB
JavaScript
/**
* @license
* Copyright Google Inc. All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file at https://angular.io/license
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/cdk/bidi"),require("@angular/cdk/coercion"),require("rxjs/Subject"),require("@angular/platform-browser"),require("@angular/common"),require("@angular/cdk/platform"),require("@angular/cdk/keycodes"),require("@angular/cdk/a11y"),require("@angular/cdk/overlay"),require("@angular/cdk/portal"),require("@angular/cdk/rxjs"),require("@angular/forms"),require("@angular/animations"),require("rxjs/observable/fromEvent"),require("rxjs/observable/merge"),require("rxjs/observable/of")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/cdk/bidi","@angular/cdk/coercion","rxjs/Subject","@angular/platform-browser","@angular/common","@angular/cdk/platform","@angular/cdk/keycodes","@angular/cdk/a11y","@angular/cdk/overlay","@angular/cdk/portal","@angular/cdk/rxjs","@angular/forms","@angular/animations","rxjs/observable/fromEvent","rxjs/observable/merge","rxjs/observable/of"],e):e((t.ng=t.ng||{},t.ng.material=t.ng.material||{},t.ng.material.autocomplete=t.ng.material.autocomplete||{}),t.ng.core,t.ng.cdk.bidi,t.ng.cdk.coercion,t.Rx,t.ng.platformBrowser,t.ng.common,t.ng.cdk.platform,t.ng.cdk.keycodes,t.ng.cdk.a11y,t.ng.cdk.overlay,t.ng.cdk.portal,t.ng.cdk.rxjs,t.ng.forms,t.ng.animations,t.Rx.Observable,t.Rx.Observable,t.Rx.Observable)}(this,function(t,e,n,o,r,i,a,s,l,c,p,d,u,h,m,f,g,y){"use strict";function _(t,e){function n(){this.constructor=t}R(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}function b(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(null==t)throw TypeError("Cannot convert undefined or null to object");for(var o=0,r=e;o<r.length;o++){var i=r[o];if(null!=i)for(var a in i)i.hasOwnProperty(a)&&(t[a]=i[a])}return t}function v(t,e){for(var n=Array(t),o=0;o<t;o++)n[o]=e(o);return n}function C(t){window.getComputedStyle(t).getPropertyValue("opacity")}function w(t,e,n){var o=Math.max(Math.abs(t-n.left),Math.abs(t-n.right)),r=Math.max(Math.abs(e-n.top),Math.abs(e-n.bottom));return Math.sqrt(o*o+r*r)}function D(){return Error("Placeholder attribute and child element were both specified.")}function k(t){return Error("A hint was already declared for 'align=\""+t+"\"'.")}function O(){return Error("mat-form-field must contain a MatFormFieldControl. Did you forget to add matInput to the native input or textarea element?")}function x(t){return function(){return t.scrollStrategies.reposition()}}function P(){return Error("Attempting to open an undefined instance of `mat-autocomplete`. Make sure that the id passed to the `matAutocomplete` is correct and that you're attempting to open it after the ngAfterContentInit hook.")}var R=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])},E=(new e.InjectionToken("md-compatibility-mode"),function(){function t(){}return t.decorators=[{type:e.Directive,args:[{selector:"\n [mat-button],\n [mat-fab],\n [mat-icon-button],\n [mat-mini-fab],\n [mat-raised-button],\n [matCardSubtitle],\n [matCardTitle],\n [matCellDef],\n [matColumnDef],\n [matDialogActions],\n [matDialogClose],\n [matDialogContent],\n [matDialogTitle],\n [matHeaderCellDef],\n [matHeaderRowDef],\n [matLine],\n [matRowDef],\n [matStepLabel],\n [matStepperNext],\n [matStepperPrevious],\n [matTabLabel],\n [matTabLink],\n [matTabNav],\n [matTooltip],\n [matInput],\n [matPrefix],\n [matSuffix],\n mat-autocomplete,\n mat-button-toggle,\n mat-button-toggle,\n mat-button-toggle-group,\n mat-card,\n mat-card-actions,\n mat-card-content,\n mat-card-footer,\n mat-card-header,\n mat-card-subtitle,\n mat-card-title,\n mat-card-title-group,\n mat-cell,\n mat-checkbox,\n mat-chip,\n mat-dialog-actions,\n mat-dialog-container,\n mat-dialog-content,\n mat-divider,\n mat-error,\n mat-grid-list,\n mat-grid-tile,\n mat-grid-tile-footer,\n mat-grid-tile-header,\n mat-header-cell,\n mat-header-row,\n mat-hint,\n mat-horizontal-stepper,\n mat-icon,\n mat-input-container,\n mat-form-field,\n mat-list,\n mat-list-item,\n mat-menu,\n mat-nav-list,\n mat-option,\n mat-placeholder,\n mat-progress-bar,\n mat-pseudo-checkbox,\n mat-radio-button,\n mat-radio-group,\n mat-row,\n mat-select,\n mat-sidenav,\n mat-sidenav-container,\n mat-slider,\n mat-spinner,\n mat-step,\n mat-tab,\n mat-table,\n mat-tab-group,\n mat-toolbar,\n mat-vertical-stepper"}]}],t.ctorParameters=function(){return[]},t}()),I=function(){function t(){}return t.decorators=[{type:e.Directive,args:[{selector:"\n [md-button],\n [md-fab],\n [md-icon-button],\n [md-mini-fab],\n [md-raised-button],\n [mdCardSubtitle],\n [mdCardTitle],\n [mdCellDef],\n [mdColumnDef],\n [mdDialogActions],\n [mdDialogClose],\n [mdDialogContent],\n [mdDialogTitle],\n [mdHeaderCellDef],\n [mdHeaderRowDef],\n [mdLine],\n [mdRowDef],\n [mdStepLabel],\n [mdStepperNext],\n [mdStepperPrevious],\n [mdTabLabel],\n [mdTabLink],\n [mdTabNav],\n [mdTooltip],\n [mdInput],\n [mdPrefix],\n [mdSuffix],\n md-autocomplete,\n md-button-toggle,\n md-button-toggle,\n md-button-toggle-group,\n md-card,\n md-card-actions,\n md-card-content,\n md-card-footer,\n md-card-header,\n md-card-subtitle,\n md-card-title,\n md-card-title-group,\n md-cell,\n md-checkbox,\n md-chip,\n md-dialog-actions,\n md-dialog-container,\n md-dialog-content,\n md-divider,\n md-error,\n md-grid-list,\n md-grid-tile,\n md-grid-tile-footer,\n md-grid-tile-header,\n md-header-cell,\n md-header-row,\n md-hint,\n md-horizontal-stepper,\n md-icon,\n md-input-container,\n md-form-field,\n md-list,\n md-list-item,\n md-menu,\n md-nav-list,\n md-option,\n md-placeholder,\n md-progress-bar,\n md-pseudo-checkbox,\n md-radio-button,\n md-radio-group,\n md-row,\n md-select,\n md-sidenav,\n md-sidenav-container,\n md-slider,\n md-spinner,\n md-step,\n md-tab,\n md-table,\n md-tab-group,\n md-toolbar,\n md-vertical-stepper"}]}],t.ctorParameters=function(){return[]},t}(),S=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{declarations:[E,I],exports:[E,I]}]}],t.ctorParameters=function(){return[]},t}(),T=new e.InjectionToken("mat-sanity-checks"),A=function(){function t(t){this._hasDoneGlobalChecks=!1,this._document="object"==typeof document&&document?document:null,t&&!this._hasDoneGlobalChecks&&e.isDevMode()&&(this._checkDoctype(),this._checkTheme(),this._hasDoneGlobalChecks=!0)}return t.prototype._checkDoctype=function(){this._document&&!this._document.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")},t.prototype._checkTheme=function(){if(this._document&&"function"==typeof getComputedStyle){var t=this._document.createElement("div");t.classList.add("mat-theme-loaded-marker"),this._document.body.appendChild(t);var e=getComputedStyle(t);e&&"none"!==e.display&&console.warn("Could not find Angular Material core theme. Most Material components may not work as expected. For more info refer to the theming guide: https://material.angular.io/guide/theming"),this._document.body.removeChild(t)}},t.decorators=[{type:e.NgModule,args:[{imports:[S,n.BidiModule],exports:[S,n.BidiModule],providers:[{provide:T,useValue:!0}]}]}],t.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Optional},{type:e.Inject,args:[T]}]}]},t}(),M=new e.InjectionToken("MAT_DATE_LOCALE"),F=function(){function t(){this._localeChanges=new r.Subject}return Object.defineProperty(t.prototype,"localeChanges",{get:function(){return this._localeChanges},enumerable:!0,configurable:!0}),t.prototype.getYear=function(t){},t.prototype.getMonth=function(t){},t.prototype.getDate=function(t){},t.prototype.getDayOfWeek=function(t){},t.prototype.getMonthNames=function(t){},t.prototype.getDateNames=function(){},t.prototype.getDayOfWeekNames=function(t){},t.prototype.getYearName=function(t){},t.prototype.getFirstDayOfWeek=function(){},t.prototype.getNumDaysInMonth=function(t){},t.prototype.clone=function(t){},t.prototype.createDate=function(t,e,n){},t.prototype.today=function(){},t.prototype.parse=function(t,e){},t.prototype.format=function(t,e){},t.prototype.addCalendarYears=function(t,e){},t.prototype.addCalendarMonths=function(t,e){},t.prototype.addCalendarDays=function(t,e){},t.prototype.toIso8601=function(t){},t.prototype.fromIso8601=function(t){},t.prototype.isDateInstance=function(t){},t.prototype.isValid=function(t){},t.prototype.setLocale=function(t){this.locale=t,this._localeChanges.next()},t.prototype.compareDate=function(t,e){return this.getYear(t)-this.getYear(e)||this.getMonth(t)-this.getMonth(e)||this.getDate(t)-this.getDate(e)},t.prototype.sameDate=function(t,e){return t&&e?!this.compareDate(t,e):t==e},t.prototype.clampDate=function(t,e,n){return e&&this.compareDate(t,e)<0?e:n&&this.compareDate(t,n)>0?n:t},t}(),L="undefined"!=typeof Intl,j={long:["January","February","March","April","May","June","July","August","September","October","November","December"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],narrow:["J","F","M","A","M","J","J","A","S","O","N","D"]},N=v(31,function(t){return String(t+1)}),V={long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],narrow:["S","M","T","W","T","F","S"]},W=/^\d{4}-\d{2}-\d{2}(?:T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|(?:(?:\+|-)\d{2}:\d{2}))?)?$/,H=(function(t){function n(e){var n=t.call(this)||this;return n.useUtcForDisplay=!0,t.prototype.setLocale.call(n,e),n}_(n,t),n.prototype.getYear=function(t){return t.getFullYear()},n.prototype.getMonth=function(t){return t.getMonth()},n.prototype.getDate=function(t){return t.getDate()},n.prototype.getDayOfWeek=function(t){return t.getDay()},n.prototype.getMonthNames=function(t){var e=this;if(L){var n=new Intl.DateTimeFormat(this.locale,{month:t});return v(12,function(t){return e._stripDirectionalityCharacters(n.format(new Date(2017,t,1)))})}return j[t]},n.prototype.getDateNames=function(){var t=this;if(L){var e=new Intl.DateTimeFormat(this.locale,{day:"numeric"});return v(31,function(n){return t._stripDirectionalityCharacters(e.format(new Date(2017,0,n+1)))})}return N},n.prototype.getDayOfWeekNames=function(t){var e=this;if(L){var n=new Intl.DateTimeFormat(this.locale,{weekday:t});return v(7,function(t){return e._stripDirectionalityCharacters(n.format(new Date(2017,0,t+1)))})}return V[t]},n.prototype.getYearName=function(t){if(L){var e=new Intl.DateTimeFormat(this.locale,{year:"numeric"});return this._stripDirectionalityCharacters(e.format(t))}return String(this.getYear(t))},n.prototype.getFirstDayOfWeek=function(){return 0},n.prototype.getNumDaysInMonth=function(t){return this.getDate(this._createDateWithOverflow(this.getYear(t),this.getMonth(t)+1,0))},n.prototype.clone=function(t){return this.createDate(this.getYear(t),this.getMonth(t),this.getDate(t))},n.prototype.createDate=function(t,e,n){if(e<0||e>11)throw Error('Invalid month index "'+e+'". Month index has to be between 0 and 11.');if(n<1)throw Error('Invalid date "'+n+'". Date has to be greater than 0.');var o=this._createDateWithOverflow(t,e,n);if(o.getMonth()!=e)throw Error('Invalid date "'+n+'" for month with index "'+e+'".');return o},n.prototype.today=function(){return new Date},n.prototype.parse=function(t){return"number"==typeof t?new Date(t):t?new Date(Date.parse(t)):null},n.prototype.format=function(t,e){if(!this.isValid(t))throw Error("NativeDateAdapter: Cannot format invalid date.");if(L){this.useUtcForDisplay&&(t=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds())),e=b({},e,{timeZone:"utc"}));var n=new Intl.DateTimeFormat(this.locale,e);return this._stripDirectionalityCharacters(n.format(t))}return this._stripDirectionalityCharacters(t.toDateString())},n.prototype.addCalendarYears=function(t,e){return this.addCalendarMonths(t,12*e)},n.prototype.addCalendarMonths=function(t,e){var n=this._createDateWithOverflow(this.getYear(t),this.getMonth(t)+e,this.getDate(t));return this.getMonth(n)!=((this.getMonth(t)+e)%12+12)%12&&(n=this._createDateWithOverflow(this.getYear(n),this.getMonth(n),0)),n},n.prototype.addCalendarDays=function(t,e){return this._createDateWithOverflow(this.getYear(t),this.getMonth(t),this.getDate(t)+e)},n.prototype.toIso8601=function(t){return[t.getUTCFullYear(),this._2digit(t.getUTCMonth()+1),this._2digit(t.getUTCDate())].join("-")},n.prototype.fromIso8601=function(t){if(W.test(t)){var e=new Date(t);if(this.isValid(e))return e}return null},n.prototype.isDateInstance=function(t){return t instanceof Date},n.prototype.isValid=function(t){return!isNaN(t.getTime())},n.prototype._createDateWithOverflow=function(t,e,n){var o=new Date(t,e,n);return t>=0&&t<100&&o.setFullYear(this.getYear(o)-1900),o},n.prototype._2digit=function(t){return("00"+t).slice(-2)},n.prototype._stripDirectionalityCharacters=function(t){return t.replace(/[\u200e\u200f]/g,"")},n.decorators=[{type:e.Injectable}],n.ctorParameters=function(){return[{type:void 0,decorators:[{type:e.Optional},{type:e.Inject,args:[M]}]}]}}(F),new e.InjectionToken("mat-date-formats"),function(t){function n(){var n=t.call(this)||this;return n._hammer="undefined"!=typeof window?window.Hammer:null,n.events=n._hammer?["longpress","slide","slidestart","slideend","slideright","slideleft"]:[],!n._hammer&&e.isDevMode()&&console.warn("Could not find HammerJS. Certain Angular Material components may not work correctly."),n}_(n,t),n.prototype.buildHammer=function(t){var e=new this._hammer(t),n=new this._hammer.Pan,o=new this._hammer.Swipe,r=new this._hammer.Press,i=this._createRecognizer(n,{event:"slide",threshold:0},o),a=this._createRecognizer(r,{event:"longpress",time:500});return n.recognizeWith(o),e.add([o,r,n,i,a]),e},n.prototype._createRecognizer=function(t,e){for(var n=[],o=2;o<arguments.length;o++)n[o-2]=arguments[o];var r=new t.constructor(e);return n.push(t),n.forEach(function(t){return r.recognizeWith(t)}),r},n.decorators=[{type:e.Injectable}],n.ctorParameters=function(){return[]}}(i.HammerGestureConfig),{});H.FADING_IN=0,H.VISIBLE=1,H.FADING_OUT=2,H.HIDDEN=3,H[H.FADING_IN]="FADING_IN",H[H.VISIBLE]="VISIBLE",H[H.FADING_OUT]="FADING_OUT",H[H.HIDDEN]="HIDDEN";var Y=function(){function t(t,e,n){this._renderer=t,this.element=e,this.config=n,this.state=H.HIDDEN}return t.prototype.fadeOut=function(){this._renderer.fadeOutRipple(this)},t}(),z=function(){function t(t,e,n){this._ngZone=e,this._isPointerDown=!1,this._triggerEvents=new Map,this._activeRipples=new Set,this.rippleConfig={},this.rippleDisabled=!1,n.isBrowser&&(this._containerElement=t.nativeElement,this._triggerEvents.set("mousedown",this.onMousedown.bind(this)),this._triggerEvents.set("touchstart",this.onTouchstart.bind(this)),this._triggerEvents.set("mouseup",this.onPointerUp.bind(this)),this._triggerEvents.set("touchend",this.onPointerUp.bind(this)),this._triggerEvents.set("mouseleave",this.onPointerLeave.bind(this)),this.setTriggerElement(this._containerElement))}return t.prototype.fadeInRipple=function(t,e,n){var o=this;void 0===n&&(n={});var r=this._containerElement.getBoundingClientRect();n.centered&&(t=r.left+r.width/2,e=r.top+r.height/2);var i=n.radius||w(t,e,r),a=1/(n.speedFactor||1)*450,s=t-r.left,l=e-r.top,c=document.createElement("div");c.classList.add("mat-ripple-element"),c.style.left=s-i+"px",c.style.top=l-i+"px",c.style.height=2*i+"px",c.style.width=2*i+"px",c.style.backgroundColor=n.color||null,c.style.transitionDuration=a+"ms",this._containerElement.appendChild(c),C(c),c.style.transform="scale(1)";var p=new Y(this,c,n);return p.state=H.FADING_IN,this._activeRipples.add(p),this.runTimeoutOutsideZone(function(){p.state=H.VISIBLE,n.persistent||o._isPointerDown||p.fadeOut()},a),p},t.prototype.fadeOutRipple=function(t){if(this._activeRipples.delete(t)){var e=t.element;e.style.transitionDuration="400ms",e.style.opacity="0",t.state=H.FADING_OUT,this.runTimeoutOutsideZone(function(){t.state=H.HIDDEN,e.parentNode.removeChild(e)},400)}},t.prototype.fadeOutAll=function(){this._activeRipples.forEach(function(t){return t.fadeOut()})},t.prototype.setTriggerElement=function(t){var e=this;this._triggerElement&&this._triggerEvents.forEach(function(t,n){e._triggerElement.removeEventListener(n,t)}),t&&this._ngZone.runOutsideAngular(function(){e._triggerEvents.forEach(function(e,n){return t.addEventListener(n,e)})}),this._triggerElement=t},t.prototype.onMousedown=function(t){this.rippleDisabled||(this._isPointerDown=!0,this.fadeInRipple(t.clientX,t.clientY,this.rippleConfig))},t.prototype.onPointerUp=function(){this._isPointerDown=!1,this._activeRipples.forEach(function(t){t.config.persistent||t.state!==H.VISIBLE||t.fadeOut()})},t.prototype.onPointerLeave=function(){this._isPointerDown&&this.onPointerUp()},t.prototype.onTouchstart=function(t){if(!this.rippleDisabled){var e=t.touches[0],n=e.clientX,o=e.clientY;this._isPointerDown=!0,this.fadeInRipple(n,o,this.rippleConfig)}},t.prototype.runTimeoutOutsideZone=function(t,e){void 0===e&&(e=0),this._ngZone.runOutsideAngular(function(){return setTimeout(t,e)})},t}(),q=new e.InjectionToken("mat-ripple-global-options"),U=function(){function t(t,e,n,o){this.radius=0,this.speedFactor=1,this._rippleRenderer=new z(t,e,n),this._globalOptions=o||{},this._updateRippleRenderer()}return t.prototype.ngOnChanges=function(t){(t.trigger||t._matRippleTrigger)&&this.trigger&&this._rippleRenderer.setTriggerElement(this.trigger),this._updateRippleRenderer()},t.prototype.ngOnDestroy=function(){this._rippleRenderer.setTriggerElement(null)},t.prototype.launch=function(t,e,n){return void 0===n&&(n=this.rippleConfig),this._rippleRenderer.fadeInRipple(t,e,n)},t.prototype.fadeOutAll=function(){this._rippleRenderer.fadeOutAll()},Object.defineProperty(t.prototype,"rippleConfig",{get:function(){return{centered:this.centered,speedFactor:this.speedFactor*(this._globalOptions.baseSpeedFactor||1),radius:this.radius,color:this.color}},enumerable:!0,configurable:!0}),t.prototype._updateRippleRenderer=function(){this._rippleRenderer.rippleDisabled=this._globalOptions.disabled||this.disabled,this._rippleRenderer.rippleConfig=this.rippleConfig},t.decorators=[{type:e.Directive,args:[{selector:"[mat-ripple], [matRipple]",exportAs:"matRipple",host:{class:"mat-ripple","[class.mat-ripple-unbounded]":"unbounded"}}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:e.NgZone},{type:s.Platform},{type:void 0,decorators:[{type:e.Optional},{type:e.Inject,args:[q]}]}]},t.propDecorators={trigger:[{type:e.Input,args:["matRippleTrigger"]}],centered:[{type:e.Input,args:["matRippleCentered"]}],disabled:[{type:e.Input,args:["matRippleDisabled"]}],radius:[{type:e.Input,args:["matRippleRadius"]}],speedFactor:[{type:e.Input,args:["matRippleSpeedFactor"]}],color:[{type:e.Input,args:["matRippleColor"]}],unbounded:[{type:e.Input,args:["matRippleUnbounded"]}]},t}(),B=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{imports:[A,s.PlatformModule],exports:[U,A],declarations:[U]}]}],t.ctorParameters=function(){return[]},t}(),G=function(){function t(){this.state="unchecked",this.disabled=!1}return t.decorators=[{type:e.Component,args:[{encapsulation:e.ViewEncapsulation.None,preserveWhitespaces:!1,changeDetection:e.ChangeDetectionStrategy.OnPush,selector:"mat-pseudo-checkbox",styles:[".mat-pseudo-checkbox{width:20px;height:20px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0,0,.2,.1),background-color 90ms cubic-bezier(0,0,.2,.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:'';border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0,0,.2,.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:9px;left:2px;width:16px;opacity:1}.mat-pseudo-checkbox-checked::after{top:5px;left:3px;width:12px;height:5px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1}"],template:"",host:{class:"mat-pseudo-checkbox","[class.mat-pseudo-checkbox-indeterminate]":'state === "indeterminate"',"[class.mat-pseudo-checkbox-checked]":'state === "checked"',"[class.mat-pseudo-checkbox-disabled]":"disabled"}}]}],t.ctorParameters=function(){return[]},t.propDecorators={state:[{type:e.Input}],disabled:[{type:e.Input}]},t}(),J=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{exports:[G],declarations:[G]}]}],t.ctorParameters=function(){return[]},t}(),Z=function(){function t(){}return t}(),X=function(t){return function(t){function e(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];var o=t.apply(this,e)||this;return o._disabled=!1,o}return _(e,t),Object.defineProperty(e.prototype,"disabled",{get:function(){return this._disabled},set:function(t){this._disabled=o.coerceBooleanProperty(t)},enumerable:!0,configurable:!0}),e}(t)}(Z),K=0,$=function(t){function n(){var e=null!==t&&t.apply(this,arguments)||this;return e._labelId="mat-optgroup-label-"+K++,e}return _(n,t),n.decorators=[{type:e.Component,args:[{selector:"mat-optgroup",exportAs:"matOptgroup",template:'<label class="mat-optgroup-label" [id]="_labelId">{{ label }}</label><ng-content select="mat-option"></ng-content>',encapsulation:e.ViewEncapsulation.None,preserveWhitespaces:!1,changeDetection:e.ChangeDetectionStrategy.OnPush,inputs:["disabled"],host:{class:"mat-optgroup",role:"group","[class.mat-optgroup-disabled]":"disabled","[attr.aria-disabled]":"disabled.toString()","[attr.aria-labelledby]":"_labelId"}}]}],n.ctorParameters=function(){return[]},n.propDecorators={label:[{type:e.Input}]},n}(X),Q=0,tt=function(){function t(t,e){void 0===e&&(e=!1),this.source=t,this.isUserInput=e}return t}(),et=function(){function t(t,n,o){this._element=t,this._changeDetectorRef=n,this.group=o,this._selected=!1,this._active=!1,this._multiple=!1,this._disableRipple=!1,this._disabled=!1,this._id="mat-option-"+Q++,this.onSelectionChange=new e.EventEmitter}return Object.defineProperty(t.prototype,"multiple",{get:function(){return this._multiple},set:function(t){t!==this._multiple&&(this._multiple=t,this._changeDetectorRef.markForCheck())},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"selected",{get:function(){return this._selected},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return this.group&&this.group.disabled||this._disabled},set:function(t){this._disabled=o.coerceBooleanProperty(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disableRipple",{get:function(){return this._disableRipple},set:function(t){this._disableRipple=t,this._changeDetectorRef.markForCheck()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._active},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"viewValue",{get:function(){return(this._getHostElement().textContent||"").trim()},enumerable:!0,configurable:!0}),t.prototype.select=function(){this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent()},t.prototype.deselect=function(){this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent()},t.prototype.focus=function(){var t=this._getHostElement();"function"==typeof t.focus&&t.focus()},t.prototype.setActiveStyles=function(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())},t.prototype.setInactiveStyles=function(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())},t.prototype.getLabel=function(){return this.viewValue},t.prototype._handleKeydown=function(t){t.keyCode!==l.ENTER&&t.keyCode!==l.SPACE||(this._selectViaInteraction(),t.preventDefault())},t.prototype._selectViaInteraction=function(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))},t.prototype._getTabIndex=function(){return this.disabled?"-1":"0"},t.prototype._getHostElement=function(){return this._element.nativeElement},t.prototype._emitSelectionChangeEvent=function(t){void 0===t&&(t=!1),this.onSelectionChange.emit(new tt(this,t))},t.countGroupLabelsBeforeOption=function(t,e,n){if(n.length){for(var o=e.toArray(),r=n.toArray(),i=0,a=0;a<t+1;a++)o[a].group&&o[a].group===r[i]&&i++;return i}return 0},t.decorators=[{type:e.Component,args:[{selector:"mat-option",exportAs:"matOption",host:{role:"option","[attr.tabindex]":"_getTabIndex()","[class.mat-selected]":"selected","[class.mat-option-multiple]":"multiple","[class.mat-active]":"active","[id]":"id","[attr.aria-selected]":"selected.toString()","[attr.aria-disabled]":"disabled.toString()","[class.mat-option-disabled]":"disabled","(click)":"_selectViaInteraction()","(keydown)":"_handleKeydown($event)",class:"mat-option"},template:'<span *ngIf="multiple"><mat-pseudo-checkbox class="mat-option-pseudo-checkbox" [state]="selected ? \'checked\' : \'\'" [disabled]="disabled"></mat-pseudo-checkbox></span><span class="mat-option-text"><ng-content></ng-content></span><div class="mat-option-ripple" mat-ripple [matRippleTrigger]="_getHostElement()" [matRippleDisabled]="disabled || disableRipple"></div>',encapsulation:e.ViewEncapsulation.None,preserveWhitespaces:!1,changeDetection:e.ChangeDetectionStrategy.OnPush}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:e.ChangeDetectorRef},{type:$,decorators:[{type:e.Optional}]}]},t.propDecorators={value:[{type:e.Input}],disabled:[{type:e.Input}],onSelectionChange:[{type:e.Output}]},t}(),nt=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{imports:[B,a.CommonModule,J],exports:[et,$],declarations:[et,$]}]}],t.ctorParameters=function(){return[]},t}(),ot=new e.InjectionToken("mat-placeholder-global-options"),rt=0,it=function(){function t(){this.id="mat-error-"+rt++}return t.decorators=[{type:e.Directive,args:[{selector:"mat-error",host:{class:"mat-error",role:"alert","[attr.id]":"id"}}]}],t.ctorParameters=function(){return[]},t.propDecorators={id:[{type:e.Input}]},t}(),at=function(){function t(){}return t.prototype.setDescribedByIds=function(t){},t.prototype.onContainerClick=function(t){},t}(),st=0,lt=function(){function t(){this.align="start",this.id="mat-hint-"+st++}return t.decorators=[{type:e.Directive,args:[{selector:"mat-hint",host:{class:"mat-hint","[class.mat-right]":'align == "end"',"[attr.id]":"id","[attr.align]":"null"}}]}],t.ctorParameters=function(){return[]},t.propDecorators={align:[{type:e.Input}],id:[{type:e.Input}]},t}(),ct=function(){function t(){}return t.decorators=[{type:e.Directive,args:[{selector:"mat-placeholder"}]}],t.ctorParameters=function(){return[]},t}(),pt=function(){function t(){}return t.decorators=[{type:e.Directive,args:[{selector:"[matPrefix]"}]}],t.ctorParameters=function(){return[]},t}(),dt=function(){function t(){}return t.decorators=[{type:e.Directive,args:[{selector:"[matSuffix]"}]}],t.ctorParameters=function(){return[]},t}(),ut=0,ht=function(){function t(t,e,n,o){this._elementRef=t,this._renderer=e,this._changeDetectorRef=n,this.color="primary",this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+ut++,this._placeholderOptions=o||{},this.floatPlaceholder=this._placeholderOptions.float||"auto"}return Object.defineProperty(t.prototype,"dividerColor",{get:function(){return this.color},set:function(t){this.color=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hideRequiredMarker",{get:function(){return this._hideRequiredMarker},set:function(t){this._hideRequiredMarker=o.coerceBooleanProperty(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"_shouldAlwaysFloat",{get:function(){return"always"===this._floatPlaceholder&&!this._showAlwaysAnimate},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"_canPlaceholderFloat",{get:function(){return"never"!==this._floatPlaceholder},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hintLabel",{get:function(){return this._hintLabel},set:function(t){this._hintLabel=t,this._processHints()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"floatPlaceholder",{get:function(){return this._floatPlaceholder},set:function(t){t!==this._floatPlaceholder&&(this._floatPlaceholder=t||this._placeholderOptions.float||"auto",this._changeDetectorRef.markForCheck())},enumerable:!0,configurable:!0}),t.prototype.ngAfterContentInit=function(){var t=this;this._validateControlChild(),this._control.controlType&&this._renderer.addClass(this._elementRef.nativeElement,"mat-form-field-type-"+this._control.controlType),u.startWith.call(this._control.stateChanges,null).subscribe(function(){t._validatePlaceholders(),t._syncDescribedByIds(),t._changeDetectorRef.markForCheck()});var e=this._control.ngControl;e&&e.valueChanges&&e.valueChanges.subscribe(function(){t._changeDetectorRef.markForCheck()}),u.startWith.call(this._hintChildren.changes,null).subscribe(function(){t._processHints(),t._changeDetectorRef.markForCheck()}),u.startWith.call(this._errorChildren.changes,null).subscribe(function(){t._syncDescribedByIds(),t._changeDetectorRef.markForCheck()})},t.prototype.ngAfterContentChecked=function(){this._validateControlChild()},t.prototype.ngAfterViewInit=function(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()},t.prototype._shouldForward=function(t){var e=this._control?this._control.ngControl:null;return e&&e[t]},t.prototype._hasPlaceholder=function(){return!(!this._control.placeholder&&!this._placeholderChild)},t.prototype._getDisplayedMessages=function(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"},t.prototype._animateAndLockPlaceholder=function(){var t=this;this._placeholder&&this._canPlaceholderFloat&&(this._showAlwaysAnimate=!0,this._floatPlaceholder="always",u.first.call(f.fromEvent(this._placeholder.nativeElement,"transitionend")).subscribe(function(){t._showAlwaysAnimate=!1}),this._changeDetectorRef.markForCheck())},t.prototype._validatePlaceholders=function(){if(this._control.placeholder&&this._placeholderChild)throw D()},t.prototype._processHints=function(){this._validateHints(),this._syncDescribedByIds()},t.prototype._validateHints=function(){var t=this;if(this._hintChildren){var e,n;this._hintChildren.forEach(function(o){if("start"==o.align){if(e||t.hintLabel)throw k("start");e=o}else if("end"==o.align){if(n)throw k("end");n=o}})}},t.prototype._syncDescribedByIds=function(){if(this._control){var t=[];if("hint"===this._getDisplayedMessages()){var e=this._hintChildren?this._hintChildren.find(function(t){return"start"===t.align}):null,n=this._hintChildren?this._hintChildren.find(function(t){return"end"===t.align}):null;e?t.push(e.id):this._hintLabel&&t.push(this._hintLabelId),n&&t.push(n.id)}else this._errorChildren&&(t=this._errorChildren.map(function(t){return t.id}));this._control.setDescribedByIds(t)}},t.prototype._validateControlChild=function(){if(!this._control)throw O()},t.decorators=[{type:e.Component,args:[{selector:"mat-input-container, mat-form-field",exportAs:"matFormField",
template:'<div class="mat-input-wrapper mat-form-field-wrapper"><div class="mat-input-flex mat-form-field-flex" #connectionContainer (click)="_control.onContainerClick && _control.onContainerClick($event)"><div class="mat-input-prefix mat-form-field-prefix" *ngIf="_prefixChildren.length"><ng-content select="[matPrefix]"></ng-content></div><div class="mat-input-infix mat-form-field-infix"><ng-content></ng-content><span class="mat-input-placeholder-wrapper mat-form-field-placeholder-wrapper"><label class="mat-input-placeholder mat-form-field-placeholder" [attr.for]="_control.id" [attr.aria-owns]="_control.id" [class.mat-empty]="_control.empty && !_shouldAlwaysFloat" [class.mat-form-field-empty]="_control.empty && !_shouldAlwaysFloat" [class.mat-accent]="color == \'accent\'" [class.mat-warn]="color == \'warn\'" #placeholder *ngIf="_hasPlaceholder()"><ng-content select="mat-placeholder"></ng-content>{{_control.placeholder}} <span class="mat-placeholder-required mat-form-field-required-marker" aria-hidden="true" *ngIf="!hideRequiredMarker && _control.required">*</span></label></span></div><div class="mat-input-suffix mat-form-field-suffix" *ngIf="_suffixChildren.length"><ng-content select="[matSuffix]"></ng-content></div></div><div class="mat-input-underline mat-form-field-underline" #underline [class.mat-disabled]="_control.disabled"><span class="mat-input-ripple mat-form-field-ripple" [class.mat-accent]="color == \'accent\'" [class.mat-warn]="color == \'warn\'"></span></div><div class="mat-input-subscript-wrapper mat-form-field-subscript-wrapper" [ngSwitch]="_getDisplayedMessages()"><div *ngSwitchCase="\'error\'" [@transitionMessages]="_subscriptAnimationState"><ng-content select="mat-error"></ng-content></div><div class="mat-input-hint-wrapper mat-form-field-hint-wrapper" *ngSwitchCase="\'hint\'" [@transitionMessages]="_subscriptAnimationState"><div *ngIf="hintLabel" [id]="_hintLabelId" class="mat-hint">{{hintLabel}}</div><ng-content select="mat-hint:not([align=\'end\'])"></ng-content><div class="mat-input-hint-spacer mat-form-field-hint-spacer"></div><ng-content select="mat-hint[align=\'end\']"></ng-content></div></div></div>',styles:[".mat-form-field{display:inline-block;position:relative;text-align:left}[dir=rtl] .mat-form-field{text-align:right}.mat-form-field-wrapper{position:relative}.mat-form-field-flex{display:inline-flex;align-items:baseline;width:100%}.mat-form-field-prefix,.mat-form-field-suffix{white-space:nowrap;flex:none}.mat-form-field-prefix .mat-icon,.mat-form-field-suffix .mat-icon{width:1em}.mat-form-field-prefix .mat-icon-button,.mat-form-field-suffix .mat-icon-button{font:inherit;vertical-align:baseline}.mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-suffix .mat-icon-button .mat-icon{font-size:inherit}.mat-form-field-infix{display:block;position:relative;flex:auto;min-width:0}.mat-form-field-placeholder-wrapper{position:absolute;left:0;box-sizing:content-box;width:100%;height:100%;overflow:hidden;pointer-events:none}.mat-form-field-placeholder{position:absolute;left:0;font:inherit;pointer-events:none;width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transform:perspective(100px);-ms-transform:none;transform-origin:0 0;transition:transform .4s cubic-bezier(.25,.8,.25,1),color .4s cubic-bezier(.25,.8,.25,1),width .4s cubic-bezier(.25,.8,.25,1);display:none}[dir=rtl] .mat-form-field-placeholder{transform-origin:100% 0;left:auto;right:0}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-placeholder,.mat-form-field-empty.mat-form-field-placeholder{display:block}.mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-placeholder-wrapper .mat-form-field-placeholder{display:none}.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-placeholder-wrapper .mat-form-field-placeholder{display:block;transition:none}.mat-form-field-placeholder:not(.mat-form-field-empty){transition:none}.mat-form-field-underline{position:absolute;height:1px;width:100%}.mat-form-field-underline.mat-disabled{background-position:0;background-color:transparent}.mat-form-field-underline .mat-form-field-ripple{position:absolute;height:1px;top:0;left:0;width:100%;transform-origin:50%;transform:scaleX(.5);visibility:hidden;transition:background-color .3s cubic-bezier(.55,0,.55,.2)}.mat-focused .mat-form-field-underline .mat-form-field-ripple{height:2px}.mat-focused .mat-form-field-underline .mat-form-field-ripple,.mat-form-field-invalid .mat-form-field-underline .mat-form-field-ripple{visibility:visible;transform:scaleX(1);transition:transform 150ms linear,background-color .3s cubic-bezier(.55,0,.55,.2)}.mat-form-field-subscript-wrapper{position:absolute;width:100%;overflow:hidden}.mat-form-field-placeholder-wrapper .mat-icon,.mat-form-field-subscript-wrapper .mat-icon{width:1em;height:1em;font-size:inherit;vertical-align:baseline}.mat-form-field-hint-wrapper{display:flex}.mat-form-field-hint-spacer{flex:1 0 1em}.mat-error{display:block} .mat-input-element{font:inherit;background:0 0;color:currentColor;border:none;outline:0;padding:0;margin:0;width:100%;max-width:100%;vertical-align:bottom}.mat-input-element:-moz-ui-invalid{box-shadow:none}.mat-input-element::placeholder{color:transparent!important}.mat-input-element::-moz-placeholder{color:transparent!important}.mat-input-element::-webkit-input-placeholder{color:transparent!important}.mat-input-element:-ms-input-placeholder{color:transparent!important}textarea.mat-input-element{resize:vertical;overflow:auto}"],animations:[m.trigger("transitionMessages",[m.state("enter",m.style({opacity:1,transform:"translateY(0%)"})),m.transition("void => enter",[m.style({opacity:0,transform:"translateY(-100%)"}),m.animate("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])],host:{class:"mat-input-container mat-form-field","[class.mat-input-invalid]":"_control.errorState","[class.mat-form-field-invalid]":"_control.errorState","[class.mat-form-field-can-float]":"_canPlaceholderFloat","[class.mat-form-field-should-float]":"_control.shouldPlaceholderFloat || _shouldAlwaysFloat","[class.mat-focused]":"_control.focused","[class.mat-primary]":'color == "primary"',"[class.mat-accent]":'color == "accent"',"[class.mat-warn]":'color == "warn"',"[class.ng-untouched]":'_shouldForward("untouched")',"[class.ng-touched]":'_shouldForward("touched")',"[class.ng-pristine]":'_shouldForward("pristine")',"[class.ng-dirty]":'_shouldForward("dirty")',"[class.ng-valid]":'_shouldForward("valid")',"[class.ng-invalid]":'_shouldForward("invalid")',"[class.ng-pending]":'_shouldForward("pending")'},encapsulation:e.ViewEncapsulation.None,preserveWhitespaces:!1,changeDetection:e.ChangeDetectionStrategy.OnPush}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:e.Renderer2},{type:e.ChangeDetectorRef},{type:void 0,decorators:[{type:e.Optional},{type:e.Inject,args:[ot]}]}]},t.propDecorators={color:[{type:e.Input}],dividerColor:[{type:e.Input}],hideRequiredMarker:[{type:e.Input}],hintLabel:[{type:e.Input}],floatPlaceholder:[{type:e.Input}],underlineRef:[{type:e.ViewChild,args:["underline"]}],_connectionContainerRef:[{type:e.ViewChild,args:["connectionContainer"]}],_placeholder:[{type:e.ViewChild,args:["placeholder"]}],_control:[{type:e.ContentChild,args:[at]}],_placeholderChild:[{type:e.ContentChild,args:[ct]}],_errorChildren:[{type:e.ContentChildren,args:[it]}],_hintChildren:[{type:e.ContentChildren,args:[lt]}],_prefixChildren:[{type:e.ContentChildren,args:[pt]}],_suffixChildren:[{type:e.ContentChildren,args:[dt]}]},t}(),mt=0,ft=function(){function t(t,e){this.source=t,this.option=e}return t}(),gt=function(){function t(t,n){this._changeDetectorRef=t,this._elementRef=n,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new e.EventEmitter,this._classList={},this.id="mat-autocomplete-"+mt++}return Object.defineProperty(t.prototype,"isOpen",{get:function(){return this._isOpen&&this.showPanel},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"classList",{set:function(t){var e=this;t&&t.length&&(t.split(" ").forEach(function(t){return e._classList[t.trim()]=!0}),this._elementRef.nativeElement.className="")},enumerable:!0,configurable:!0}),t.prototype.ngAfterContentInit=function(){this._keyManager=new c.ActiveDescendantKeyManager(this.options).withWrap(),this._setVisibility()},t.prototype._setScrollTop=function(t){this.panel&&(this.panel.nativeElement.scrollTop=t)},t.prototype._getScrollTop=function(){return this.panel?this.panel.nativeElement.scrollTop:0},t.prototype._setVisibility=function(){this.showPanel=!!this.options.length,this._classList["mat-autocomplete-visible"]=this.showPanel,this._classList["mat-autocomplete-hidden"]=!this.showPanel,this._changeDetectorRef.markForCheck()},t.prototype._emitSelectEvent=function(t){var e=new ft(this,t);this.optionSelected.emit(e)},t.decorators=[{type:e.Component,args:[{selector:"mat-autocomplete",template:'<ng-template><div class="mat-autocomplete-panel" role="listbox" [id]="id" [ngClass]="_classList" #panel><ng-content></ng-content></div></ng-template>',styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative}.mat-autocomplete-panel:not([class*=mat-elevation-z]){box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}"],encapsulation:e.ViewEncapsulation.None,preserveWhitespaces:!1,changeDetection:e.ChangeDetectionStrategy.OnPush,exportAs:"matAutocomplete",host:{class:"mat-autocomplete"}}]}],t.ctorParameters=function(){return[{type:e.ChangeDetectorRef},{type:e.ElementRef}]},t.propDecorators={template:[{type:e.ViewChild,args:[e.TemplateRef]}],panel:[{type:e.ViewChild,args:["panel"]}],options:[{type:e.ContentChildren,args:[et,{descendants:!0}]}],optionGroups:[{type:e.ContentChildren,args:[$]}],displayWith:[{type:e.Input}],optionSelected:[{type:e.Output}],classList:[{type:e.Input,args:["class"]}]},t}(),yt=new e.InjectionToken("mat-autocomplete-scroll-strategy"),_t={provide:yt,deps:[p.Overlay],useFactory:x},bt={provide:h.NG_VALUE_ACCESSOR,useExisting:e.forwardRef(function(){return vt}),multi:!0},vt=function(){function t(t,e,n,o,i,a,s,l,c){this._element=t,this._overlay=e,this._viewContainerRef=n,this._zone=o,this._changeDetectorRef=i,this._scrollStrategy=a,this._dir=s,this._formField=l,this._document=c,this._panelOpen=!1,this._manuallyFloatingPlaceholder=!1,this._escapeEventStream=new r.Subject,this._onChange=function(){},this._onTouched=function(){}}return t.prototype.ngOnDestroy=function(){this._destroyPanel(),this._escapeEventStream.complete()},Object.defineProperty(t.prototype,"panelOpen",{get:function(){return this._panelOpen&&this.autocomplete.showPanel},enumerable:!0,configurable:!0}),t.prototype.openPanel=function(){this._attachOverlay(),this._floatPlaceholder()},t.prototype.closePanel=function(){this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._resetPlaceholder(),this._panelOpen&&(this.autocomplete._isOpen=this._panelOpen=!1,this._changeDetectorRef.detectChanges())},Object.defineProperty(t.prototype,"panelClosingActions",{get:function(){return g.merge(this.optionSelections,this.autocomplete._keyManager.tabOut,this._escapeEventStream,this._outsideClickStream)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"optionSelections",{get:function(){return g.merge.apply(void 0,this.autocomplete.options.map(function(t){return t.onSelectionChange}))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"activeOption",{get:function(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"_outsideClickStream",{get:function(){var t=this;return this._document?u.RxChain.from(g.merge(f.fromEvent(this._document,"click"),f.fromEvent(this._document,"touchend"))).call(u.filter,function(e){var n=e.target,o=t._formField?t._formField._elementRef.nativeElement:null;return t._panelOpen&&n!==t._element.nativeElement&&(!o||!o.contains(n))&&!!t._overlayRef&&!t._overlayRef.overlayElement.contains(n)}).result():y.of(null)},enumerable:!0,configurable:!0}),t.prototype.writeValue=function(t){var e=this;Promise.resolve(null).then(function(){return e._setTriggerValue(t)})},t.prototype.registerOnChange=function(t){this._onChange=t},t.prototype.registerOnTouched=function(t){this._onTouched=t},t.prototype._handleKeydown=function(t){var e=t.keyCode;if(e===l.ESCAPE&&this.panelOpen)this._resetActiveItem(),this._escapeEventStream.next(),t.stopPropagation();else if(this.activeOption&&e===l.ENTER&&this.panelOpen)this.activeOption._selectViaInteraction(),this._resetActiveItem(),t.preventDefault();else{var n=this.autocomplete._keyManager.activeItem,o=e===l.UP_ARROW||e===l.DOWN_ARROW;this.panelOpen||e===l.TAB?this.autocomplete._keyManager.onKeydown(t):o&&this.openPanel(),(o||this.autocomplete._keyManager.activeItem!==n)&&this._scrollToOption()}},t.prototype._handleInput=function(t){document.activeElement===t.target&&(this._onChange(t.target.value),this.openPanel())},t.prototype._handleFocus=function(){this._element.nativeElement.readOnly||(this._attachOverlay(),this._floatPlaceholder(!0))},t.prototype._floatPlaceholder=function(t){void 0===t&&(t=!1),this._formField&&"auto"===this._formField.floatPlaceholder&&(t?this._formField._animateAndLockPlaceholder():this._formField.floatPlaceholder="always",this._manuallyFloatingPlaceholder=!0)},t.prototype._resetPlaceholder=function(){this._manuallyFloatingPlaceholder&&(this._formField.floatPlaceholder="auto",this._manuallyFloatingPlaceholder=!1)},t.prototype._scrollToOption=function(){var t=this.autocomplete._keyManager.activeItemIndex||0,e=et.countGroupLabelsBeforeOption(t,this.autocomplete.options,this.autocomplete.optionGroups),n=48*(t+e),o=this.autocomplete._getScrollTop();if(n<o)this.autocomplete._setScrollTop(n);else if(n+48>o+256){var r=n-256+48;this.autocomplete._setScrollTop(Math.max(0,r))}},t.prototype._subscribeToClosingActions=function(){var t=this,e=u.first.call(this._zone.onStable.asObservable()),n=u.RxChain.from(this.autocomplete.options.changes).call(u.doOperator,function(){return t._positionStrategy.recalculateLastPosition()}).call(u.delay,0).result();return u.RxChain.from(g.merge(e,n)).call(u.switchMap,function(){return t._resetActiveItem(),t.autocomplete._setVisibility(),t.panelClosingActions}).call(u.first).subscribe(function(e){return t._setValueAndClose(e)})},t.prototype._destroyPanel=function(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)},t.prototype._setTriggerValue=function(t){var e=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(t):t,n=null!=e?e:"";this._formField?this._formField._control.value=n:this._element.nativeElement.value=n},t.prototype._setValueAndClose=function(t){t&&t.source&&(this._clearPreviousSelectedOption(t.source),this._setTriggerValue(t.source.value),this._onChange(t.source.value),this._element.nativeElement.focus(),this.autocomplete._emitSelectEvent(t.source)),this.closePanel()},t.prototype._clearPreviousSelectedOption=function(t){this.autocomplete.options.forEach(function(e){e!=t&&e.selected&&e.deselect()})},t.prototype._attachOverlay=function(){if(!this.autocomplete)throw P();this._overlayRef?(this._overlayRef.getConfig().width=this._getHostWidth(),this._overlayRef.updateSize()):(this._portal=new d.TemplatePortal(this.autocomplete.template,this._viewContainerRef),this._overlayRef=this._overlay.create(this._getOverlayConfig())),this._overlayRef&&!this._overlayRef.hasAttached()&&(this._overlayRef.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions()),this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._panelOpen=!0},t.prototype._getOverlayConfig=function(){return new p.OverlayConfig({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getHostWidth(),direction:this._dir?this._dir.value:"ltr"})},t.prototype._getOverlayPosition=function(){return this._positionStrategy=this._overlay.position().connectedTo(this._getConnectedElement(),{originX:"start",originY:"bottom"},{overlayX:"start",overlayY:"top"}).withFallbackPosition({originX:"start",originY:"top"},{overlayX:"start",overlayY:"bottom"}),this._positionStrategy},t.prototype._getConnectedElement=function(){return this._formField?this._formField._connectionContainerRef:this._element},t.prototype._getHostWidth=function(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width},t.prototype._resetActiveItem=function(){this.autocomplete._keyManager.setActiveItem(-1)},t.decorators=[{type:e.Directive,args:[{selector:"input[matAutocomplete], textarea[matAutocomplete]",host:{role:"combobox",autocomplete:"off","aria-autocomplete":"list","[attr.aria-activedescendant]":"activeOption?.id","[attr.aria-expanded]":"panelOpen.toString()","[attr.aria-owns]":"autocomplete?.id","(focusin)":"_handleFocus()","(blur)":"_onTouched()","(input)":"_handleInput($event)","(keydown)":"_handleKeydown($event)"},providers:[bt]}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:p.Overlay},{type:e.ViewContainerRef},{type:e.NgZone},{type:e.ChangeDetectorRef},{type:void 0,decorators:[{type:e.Inject,args:[yt]}]},{type:n.Directionality,decorators:[{type:e.Optional}]},{type:ht,decorators:[{type:e.Optional},{type:e.Host}]},{type:void 0,decorators:[{type:e.Optional},{type:e.Inject,args:[i.DOCUMENT]}]}]},t.propDecorators={autocomplete:[{type:e.Input,args:["matAutocomplete"]}]},t}(),Ct=function(){function t(){}return t.decorators=[{type:e.NgModule,args:[{imports:[nt,p.OverlayModule,A,a.CommonModule],exports:[gt,nt,vt,A],declarations:[gt,vt],providers:[_t]}]}],t.ctorParameters=function(){return[]},t}();t.MatAutocompleteSelectedEvent=ft,t.MatAutocomplete=gt,t.MatAutocompleteModule=Ct,t.AUTOCOMPLETE_