@skyux/popovers
Advanced tools
Comparing version 3.2.0-alpha.3 to 3.2.0
@@ -16,2 +16,2 @@ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@angular/core"),require("@skyux/core"),require("rxjs/Subject"),require("rxjs/add/operator/takeUntil"),require("@skyux/i18n"),require("rxjs/Observable"),require("rxjs/add/observable/fromEvent"),require("@angular/common"),require("@skyux/indicators"),require("rxjs/add/operator/take"),require("@angular/animations"),require("@angular/platform-browser/animations"),require("@skyux/i18n/modules/i18n/get-string-for-locale")):"function"==typeof define&&define.amd?define(["@angular/core","@skyux/core","rxjs/Subject","rxjs/add/operator/takeUntil","@skyux/i18n","rxjs/Observable","rxjs/add/observable/fromEvent","@angular/common","@skyux/indicators","rxjs/add/operator/take","@angular/animations","@angular/platform-browser/animations","@skyux/i18n/modules/i18n/get-string-for-locale"],t):"object"==typeof exports?exports["skyux-popovers"]=t(require("@angular/core"),require("@skyux/core"),require("rxjs/Subject"),require("rxjs/add/operator/takeUntil"),require("@skyux/i18n"),require("rxjs/Observable"),require("rxjs/add/observable/fromEvent"),require("@angular/common"),require("@skyux/indicators"),require("rxjs/add/operator/take"),require("@angular/animations"),require("@angular/platform-browser/animations"),require("@skyux/i18n/modules/i18n/get-string-for-locale")):e["skyux-popovers"]=t(e["@angular/core"],e["@skyux/core"],e["rxjs/Subject"],e["rxjs/add/operator/takeUntil"],e["@skyux/i18n"],e["rxjs/Observable"],e["rxjs/add/observable/fromEvent"],e["@angular/common"],e["@skyux/indicators"],e["rxjs/add/operator/take"],e["@angular/animations"],e["@angular/platform-browser/animations"],e["@skyux/i18n/modules/i18n/get-string-for-locale"])}(window,function(e,t,o,n,r,i,s,a,p,c,d,u,l){return function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)o.d(n,r,function(t){return e[t]}.bind(null,r));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=21)}([function(e,t,o){"use strict";o.r(t),o.d(t,"__extends",function(){return r}),o.d(t,"__assign",function(){return i}),o.d(t,"__rest",function(){return s}),o.d(t,"__decorate",function(){return a}),o.d(t,"__param",function(){return p}),o.d(t,"__metadata",function(){return c}),o.d(t,"__awaiter",function(){return d}),o.d(t,"__generator",function(){return u}),o.d(t,"__exportStar",function(){return l}),o.d(t,"__values",function(){return y}),o.d(t,"__read",function(){return f}),o.d(t,"__spread",function(){return v}),o.d(t,"__spreadArrays",function(){return m}),o.d(t,"__await",function(){return h}),o.d(t,"__asyncGenerator",function(){return g}),o.d(t,"__asyncDelegator",function(){return b}),o.d(t,"__asyncValues",function(){return k}),o.d(t,"__makeTemplateObject",function(){return _}),o.d(t,"__importStar",function(){return w}),o.d(t,"__importDefault",function(){return x}); | ||
***************************************************************************** */ | ||
var n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)t.hasOwnProperty(o)&&(e[o]=t[o])})(e,t)};function r(e,t){function o(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}var i=function(){return(i=Object.assign||function(e){for(var t,o=1,n=arguments.length;o<n;o++)for(var r in t=arguments[o])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function s(e,t){var o={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(o[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(o[n[r]]=e[n[r]])}return o}function a(e,t,o,n){var r,i=arguments.length,s=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,o,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(s=(i<3?r(s):i>3?r(t,o,s):r(t,o))||s);return i>3&&s&&Object.defineProperty(t,o,s),s}function p(e,t){return function(o,n){t(o,n,e)}}function c(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function d(e,t,o,n){return new(o||(o=Promise))(function(r,i){function s(e){try{p(n.next(e))}catch(e){i(e)}}function a(e){try{p(n.throw(e))}catch(e){i(e)}}function p(e){e.done?r(e.value):new o(function(t){t(e.value)}).then(s,a)}p((n=n.apply(e,t||[])).next())})}function u(e,t){var o,n,r,i,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(o)throw new TypeError("Generator is already executing.");for(;s;)try{if(o=1,n&&(r=2&i[0]?n.return:i[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,i[1])).done)return r;switch(n=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,n=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(r=(r=s.trys).length>0&&r[r.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){s.label=i[1];break}if(6===i[0]&&s.label<r[1]){s.label=r[1],r=i;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(i);break}r[2]&&s.ops.pop(),s.trys.pop();continue}i=t.call(e,s)}catch(e){i=[6,e],n=0}finally{o=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,a])}}}function l(e,t){for(var o in e)t.hasOwnProperty(o)||(t[o]=e[o])}function y(e){var t="function"==typeof Symbol&&e[Symbol.iterator],o=0;return t?t.call(e):{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}}}function f(e,t){var o="function"==typeof Symbol&&e[Symbol.iterator];if(!o)return e;var n,r,i=o.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return s}function v(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(f(arguments[t]));return e}function m(){for(var e=0,t=0,o=arguments.length;t<o;t++)e+=arguments[t].length;var n=Array(e),r=0;for(t=0;t<o;t++)for(var i=arguments[t],s=0,a=i.length;s<a;s++,r++)n[r]=i[s];return n}function h(e){return this instanceof h?(this.v=e,this):new h(e)}function g(e,t,o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,r=o.apply(e,t||[]),i=[];return n={},s("next"),s("throw"),s("return"),n[Symbol.asyncIterator]=function(){return this},n;function s(e){r[e]&&(n[e]=function(t){return new Promise(function(o,n){i.push([e,t,o,n])>1||a(e,t)})})}function a(e,t){try{(o=r[e](t)).value instanceof h?Promise.resolve(o.value.v).then(p,c):d(i[0][2],o)}catch(e){d(i[0][3],e)}var o}function p(e){a("next",e)}function c(e){a("throw",e)}function d(e,t){e(t),i.shift(),i.length&&a(i[0][0],i[0][1])}}function b(e){var t,o;return t={},n("next"),n("throw",function(e){throw e}),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,r){t[n]=e[n]?function(t){return(o=!o)?{value:h(e[n](t)),done:"return"===n}:r?r(t):t}:r}}function k(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,o=e[Symbol.asyncIterator];return o?o.call(e):(e=y(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(o){t[o]=e[o]&&function(t){return new Promise(function(n,r){(function(e,t,o,n){Promise.resolve(n).then(function(t){e({value:t,done:o})},t)})(n,r,(t=e[o](t)).done,t.value)})}}}function _(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function w(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)Object.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t.default=e,t}function x(e){return e&&e.__esModule?e:{default:e}}},function(t,o){t.exports=e},function(e,o){e.exports=t},function(e,t){e.exports=o},function(e,t){e.exports=n},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(2),s=o(9),a=o(3);o(4);var p=o(10),c=o(7),d=function(){function e(e,t){this.windowRef=e,this.resourcesService=t,this.alignment="left",this.dismissOnBlur=!0,this.messageStream=new a.Subject,this.disabled=!1,this.ngUnsubscribe=new a.Subject,this.isKeyboardActive=!1,this._isOpen=!1}return Object.defineProperty(e.prototype,"buttonStyle",{get:function(){return this._buttonStyle||"default"},set:function(e){this._buttonStyle=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"buttonType",{get:function(){return this._buttonType||"select"},set:function(e){this._buttonType=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"label",{get:function(){return"select"===this.buttonType||"tab"===this.buttonType?this._label:this._label||this.getString("skyux_dropdown_context_menu_default_label")},set:function(e){this._label=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"trigger",{get:function(){return this._trigger||"click"},set:function(e){this._trigger=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return this._isOpen},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.messageStream.takeUntil(this.ngUnsubscribe).subscribe(function(t){e.handleIncomingMessages(t)})},e.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},e.prototype.onKeyDown=function(e){var t=this,o=e.key.toLowerCase();if(this._isOpen)switch(o){case"enter":this.windowRef.getWindow().setTimeout(function(){t.sendMessage(c.SkyDropdownMessageType.FocusTriggerButton)});break;case"down":case"arrowdown":this.isKeyboardActive||(this.isKeyboardActive=!0,this.sendMessage(c.SkyDropdownMessageType.FocusFirstItem),e.preventDefault())}else switch(o){case"enter":this.isKeyboardActive=!0;break;case"down":case"arrowdown":this.isKeyboardActive=!0,this.sendMessage(c.SkyDropdownMessageType.Open),e.preventDefault()}},e.prototype.onPopoverOpened=function(){this._isOpen=!0,this.isKeyboardActive&&this.sendMessage(c.SkyDropdownMessageType.FocusFirstItem)},e.prototype.onPopoverClosed=function(){this._isOpen=!1,this.isKeyboardActive=!1},e.prototype.getPopoverTriggerType=function(){return"click"===this.trigger?"click":"mouseenter"},e.prototype.handleIncomingMessages=function(e){var t=this;if(!this.disabled)switch(e.type){case c.SkyDropdownMessageType.Open:this.positionPopover();break;case c.SkyDropdownMessageType.Close:this.popover.close();break;case c.SkyDropdownMessageType.Reposition:this._isOpen&&this.windowRef.getWindow().setTimeout(function(){t.popover.reposition()});break;case c.SkyDropdownMessageType.FocusTriggerButton:this.triggerButton.nativeElement.focus()}},e.prototype.sendMessage=function(e){this.messageStream.next({type:e})},e.prototype.positionPopover=function(){this.popover.positionNextTo(this.triggerButton,"below",this.alignment)},e.prototype.getString=function(e){return this.resourcesService.getStringForLocale({locale:"en-US"},e)},n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"alignment",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"buttonStyle",null),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"buttonType",null),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"label",null),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"dismissOnBlur",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"messageStream",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"title",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"disabled",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"trigger",null),n.__decorate([r.ViewChild("triggerButton"),n.__metadata("design:type",r.ElementRef)],e.prototype,"triggerButton",void 0),n.__decorate([r.ViewChild(p.SkyPopoverComponent),n.__metadata("design:type",p.SkyPopoverComponent)],e.prototype,"popover",void 0),n.__decorate([r.HostListener("keydown",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[KeyboardEvent]),n.__metadata("design:returntype",void 0)],e.prototype,"onKeyDown",null),e=n.__decorate([r.Component({selector:"sky-dropdown",template:'<div class="sky-dropdown">\n <button\n aria-haspopup="true"\n class="sky-btn sky-dropdown-button"\n type="button"\n [attr.aria-expanded]="isOpen"\n [attr.aria-controls]="menuId"\n [attr.aria-label]="label"\n [attr.title]="title"\n [disabled]="disabled"\n [ngClass]="[\n \'sky-dropdown-button-type-\' + buttonType,\n \'sky-btn-\' + buttonStyle\n ]"\n [skyPopover]="popover"\n [skyPopoverTrigger]="getPopoverTriggerType()"\n [skyPopoverAlignment]="alignment"\n skyPopoverPlacement="below"\n #triggerButton>\n\n <div [ngSwitch]="buttonType">\n <ng-template ngSwitchCase="context-menu">\n <sky-icon icon="ellipsis-h"></sky-icon>\n </ng-template>\n\n <ng-template ngSwitchDefault>\n <div\n class="sky-dropdown-button-container"\n *ngIf="buttonType === \'select\' || buttonType === \'tab\' || !buttonType">\n <div class="sky-dropdown-button-content-container">\n <ng-content\n select="sky-dropdown-button">\n </ng-content>\n </div>\n <div class="sky-dropdown-button-icon-container">\n <sky-icon\n icon="caret-down"\n class="sky-dropdown-caret"\n >\n </sky-icon>\n </div>\n </div>\n <div\n *ngIf="buttonType !== \'select\' && buttonType !== \'tab\' && buttonType">\n <sky-icon [icon]="buttonType" size="lg"></sky-icon>\n </div>\n </ng-template>\n </div>\n </button>\n <sky-popover\n placement="below"\n [alignment]="alignment"\n [dismissOnBlur]="dismissOnBlur"\n (popoverOpened)="onPopoverOpened()"\n (popoverClosed)="onPopoverClosed()"\n [@.disabled]="true"\n #popover>\n <ng-content\n select="sky-dropdown-menu">\n </ng-content>\n </sky-popover>\n</div>\n',styles:[".sky-dropdown ::ng-deep .sky-popover-container{padding:0;min-width:auto;max-width:none}.sky-dropdown ::ng-deep .sky-popover-container .sky-popover{border-radius:0 !important;border:0 !important}.sky-dropdown ::ng-deep .sky-popover-container .sky-popover-body{padding:0}.sky-dropdown ::ng-deep .sky-popover-container .sky-popover-arrow{display:none}.sky-dropdown-button-type-tab{background-color:transparent;border:none;border-radius:4px 4px 0 0;color:#686c73;cursor:pointer;display:inline-block;font-weight:600;line-height:1.8;padding:8px 16px;background-color:#0974a1;color:#fff;max-width:100%}.sky-dropdown-button-type-tab:hover:not(.sky-btn-tab-disabled){background-color:#eeeeef;color:#212327;text-decoration:none}.sky-dropdown-button-type-tab.sky-btn-tab-disabled{background-color:#cdcfd2;cursor:default;outline:none;text-decoration:none}.sky-dropdown-button-type-tab.sky-btn-tab-disabled:hover{color:#686c73;cursor:default;text-decoration:none}.sky-dropdown-button-type-tab:hover:not(.sky-btn-tab-disabled){background-color:#0974a1;color:#fff}.sky-dropdown-button-type-context-menu{border-radius:50%;padding-bottom:3px;padding-left:8px;padding-right:8px;padding-top:3px}.sky-dropdown-caret{margin-left:10px}.sky-dropdown-button-container{display:flex}.sky-dropdown-button-content-container{flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.sky-dropdown-button-icon-container{flex-grow:1}\n"],changeDetection:r.ChangeDetectionStrategy.OnPush}),n.__metadata("design:paramtypes",[i.SkyWindowRefService,s.SkyLibResourcesService])],e)}();t.SkyDropdownComponent=d},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(26),i=o(1),s=o(2),a=o(14);o(15);var p=o(3);o(4);var c=o(12),d=function(){function e(e,t,o,n){this.adapterService=e,this.changeDetector=t,this.elementRef=o,this.windowRef=n,this.dismissOnBlur=!0,this.popoverOpened=new i.EventEmitter,this.popoverClosed=new i.EventEmitter,this.isOpen=!1,this.isVisible=!1,this.isMouseEnter=!1,this.classNames=[],this.animationState="hidden",this.idled=new p.Subject,this.isMarkedForCloseOnMouseLeave=!1,this.scrollListeners=[]}return Object.defineProperty(e.prototype,"alignment",{get:function(){return this._alignment||"center"},set:function(e){this._alignment=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"placement",{get:function(){return this._placement||"above"},set:function(e){this._placement=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.preferredPlacement=this.placement,this.adapterService.hidePopover(this.popoverContainer)},e.prototype.ngOnDestroy=function(){this.removeListeners(),this.idled.complete()},e.prototype.positionNextTo=function(e,t,o){var n=this;e&&(this.close(),this.caller=e,this.placement=t,this.alignment=o,this.preferredPlacement=this.placement,this.changeDetector.markForCheck(),this.windowRef.getWindow().setTimeout(function(){n.adapterService.isPopoverLargerThanParent(n.popoverContainer)&&(n.placement="fullscreen"),n.isVisible=!0,n.positionPopover(),n.addListeners(),n.animationState="visible",n.changeDetector.markForCheck()}))},e.prototype.reposition=function(){this.placement=this.preferredPlacement,this.changeDetector.markForCheck(),this.adapterService.isPopoverLargerThanParent(this.popoverContainer)&&(this.placement="fullscreen"),this.positionPopover()},e.prototype.close=function(){this.animationState="hidden",this.removeListeners(),this.changeDetector.markForCheck()},e.prototype.onAnimationStart=function(e){"void"!==e.fromState&&"visible"===e.toState&&this.adapterService.showPopover(this.popoverContainer)},e.prototype.onAnimationDone=function(e){"void"!==e.fromState&&("hidden"===e.toState?(this.isOpen=!1,this.adapterService.hidePopover(this.popoverContainer),this.popoverClosed.emit(this)):(this.isOpen=!0,this.popoverOpened.emit(this)))},e.prototype.markForCloseOnMouseLeave=function(){this.isMarkedForCloseOnMouseLeave=!0},e.prototype.positionPopover=function(){if("fullscreen"!==this.placement){var e={popover:this.popoverContainer,popoverArrow:this.popoverArrow,caller:this.caller},t=this.adapterService.getPopoverPosition(e,this.preferredPlacement,this.alignment);this.placement=t.placement,this.alignment=t.alignment,this.popoverTop=t.top,this.popoverLeft=t.left,this.arrowTop=t.arrowTop,this.arrowLeft=t.arrowLeft}this.changeDetector.markForCheck()},e.prototype.addListeners=function(){var e=this,t=this.windowRef.getWindow(),o=this.elementRef.nativeElement;a.Observable.fromEvent(t,"resize").takeUntil(this.idled).subscribe(function(){e.reposition()}),a.Observable.fromEvent(t.document,"focusin").takeUntil(this.idled).subscribe(function(t){var n=o.contains(t.target),r=e.caller&&e.caller.nativeElement===t.target;n||r||!e.dismissOnBlur||e.close()}),a.Observable.fromEvent(t.document,"click").takeUntil(this.idled).subscribe(function(t){!e.isMouseEnter&&e.dismissOnBlur&&e.close()}),a.Observable.fromEvent(o,"mouseenter").takeUntil(this.idled).subscribe(function(){e.isMouseEnter=!0}),a.Observable.fromEvent(o,"mouseleave").takeUntil(this.idled).subscribe(function(){e.isMouseEnter=!1,e.isMarkedForCloseOnMouseLeave&&(e.close(),e.isMarkedForCloseOnMouseLeave=!1)}),a.Observable.fromEvent(o,"keyup").takeUntil(this.idled).subscribe(function(t){"escape"===t.key.toLowerCase()&&(t.stopPropagation(),t.preventDefault(),e.close(),e.caller&&e.caller.nativeElement.focus())}),this.scrollListeners=this.adapterService.getParentScrollListeners(this.popoverContainer,function(t){e.reposition(),e.isVisible=t,e.changeDetector.markForCheck()})},e.prototype.removeListeners=function(){this.idled.next(!0),this.scrollListeners&&(this.scrollListeners.forEach(function(e){e()}),this.scrollListeners=[])},n.__decorate([i.Input(),n.__metadata("design:type",Object)],e.prototype,"dismissOnBlur",void 0),n.__decorate([i.Input(),n.__metadata("design:type",String)],e.prototype,"popoverTitle",void 0),n.__decorate([i.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"alignment",null),n.__decorate([i.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"placement",null),n.__decorate([i.Output(),n.__metadata("design:type",Object)],e.prototype,"popoverOpened",void 0),n.__decorate([i.Output(),n.__metadata("design:type",Object)],e.prototype,"popoverClosed",void 0),n.__decorate([i.ViewChild("popoverContainer"),n.__metadata("design:type",i.ElementRef)],e.prototype,"popoverContainer",void 0),n.__decorate([i.ViewChild("popoverArrow"),n.__metadata("design:type",i.ElementRef)],e.prototype,"popoverArrow",void 0),e=n.__decorate([i.Component({selector:"sky-popover",template:'<div\n class="sky-popover-container"\n tabindex="-1"\n [ngClass]="[\n \'sky-popover-alignment-\' + alignment,\n \'sky-popover-placement-\' + placement\n ]"\n (@popoverState.start)="onAnimationStart($event)"\n (@popoverState.done)="onAnimationDone($event)"\n [@popoverState]="animationState"\n [style.top.px]="popoverTop"\n [style.left.px]="popoverLeft"\n [style.visibility]="(isVisible) ? \'visible\': \'hidden\'"\n #popoverContainer>\n <div class="sky-popover sky-shadow sky-rounded-corners">\n <header class="sky-popover-header sky-padding-even-default" *ngIf="popoverTitle || placement === \'fullscreen\'">\n <h1 class="sky-popover-title sky-emphasized" *ngIf="popoverTitle">\n {{ popoverTitle }}\n </h1>\n <button *ngIf="placement === \'fullscreen\'"\n type="button"\n class="sky-btn sky-popover-fullscreen-close"\n [attr.aria-label]="\'skyux_popover_close\' | skyLibResources"\n (click)="close()"\n >\n <sky-icon icon="close"></sky-icon>\n </button>\n </header>\n <div class="sky-popover-body sky-padding-even-default">\n <ng-content></ng-content>\n </div>\n <div\n class="sky-popover-arrow"\n [style.top.px]="arrowTop"\n [style.left.px]="arrowLeft"\n aria-hidden="true"\n #popoverArrow></div>\n </div>\n</div>\n',styles:[".sky-popover-container{position:fixed;z-index:1001;min-width:276px;max-width:276px}.sky-popover-container.sky-popover-hidden{visibility:hidden;opacity:0;top:-9999px !important;left:-9999px !important}.sky-popover-container:focus{outline:none}@media (max-width: 276px){.sky-popover-container{max-width:100%;min-width:auto}}.sky-popover{background-color:#fff}.sky-popover-header{padding-bottom:0}.sky-popover-header+.sky-popover-body{padding-top:2px}.sky-popover-title{margin:0}.sky-popover-arrow{width:0;height:0;position:absolute;border:10px solid transparent}.sky-popover-placement-fullscreen{background-color:rgba(0,0,0,0.2);padding:10px !important;top:0 !important;left:0 !important;right:0;bottom:0;width:100% !important;max-width:none;max-height:100%;height:auto !important}.sky-popover-placement-fullscreen>.sky-popover{border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2;overflow:auto;max-height:100%;display:flex;flex-direction:column}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-header{padding-left:15px;padding-top:9px;padding-bottom:9px;padding-right:3px;display:flex;flex-shrink:0;justify-content:flex-end;align-items:baseline;border-bottom:1px solid #e2e3e4}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-body{position:relative}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-title{flex-grow:1}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-fullscreen-close{border:none;color:#cdcfd2;cursor:pointer;font-size:20px;flex-grow:0}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-fullscreen-close:hover{color:#979ba2;transition:color 150ms}.sky-popover-placement-above{padding-bottom:10px}.sky-popover-placement-above .sky-popover{border-bottom:10px solid #00b4f1}.sky-popover-placement-above .sky-popover-arrow{border-bottom:0;border-top-color:#00b4f1;bottom:0;left:50%;margin-left:-10px}.sky-popover-placement-below{padding-top:10px}.sky-popover-placement-below .sky-popover{border-top:10px solid #00b4f1}.sky-popover-placement-below .sky-popover-arrow{border-top:0;border-bottom-color:#00b4f1;top:0;left:50%;margin-left:-10px}.sky-popover-placement-right{padding-left:10px}.sky-popover-placement-right .sky-popover{border-left:10px solid #00b4f1}.sky-popover-placement-right .sky-popover-arrow{border-left:0;border-right-color:#00b4f1;left:0;top:50%;margin-top:-10px}.sky-popover-placement-left{padding-right:10px}.sky-popover-placement-left .sky-popover{border-right:10px solid #00b4f1}.sky-popover-placement-left .sky-popover-arrow{border-right:0;border-left-color:#00b4f1;right:0;top:50%;margin-top:-10px}.sky-popover-placement-above.sky-popover-alignment-left .sky-popover-arrow,.sky-popover-placement-below.sky-popover-alignment-left .sky-popover-arrow{left:40px;right:auto}.sky-popover-placement-above.sky-popover-alignment-right .sky-popover-arrow,.sky-popover-placement-below.sky-popover-alignment-right .sky-popover-arrow{left:auto;right:40px}\n"],providers:[c.SkyPopoverAdapterService],animations:[r.trigger("popoverState",[r.state("visible",r.style({opacity:1,visibility:"visible"})),r.state("hidden",r.style({opacity:0})),r.transition("hidden => visible",r.animate("150ms")),r.transition("visible => hidden",r.animate("150ms"))])],changeDetection:i.ChangeDetectionStrategy.OnPush}),n.__metadata("design:paramtypes",[c.SkyPopoverAdapterService,i.ChangeDetectorRef,i.ElementRef,s.SkyWindowRefService])],e)}();t.SkyPopoverComponent=d},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o(0).__exportStar(o(31),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=function(){function e(e,t){this.elementRef=e,this.changeDetector=t,this.ariaRole="menuitem",this.isActive=!1,this.isDisabled=!1}return e.prototype.ngAfterViewInit=function(){this.buttonElement=this.elementRef.nativeElement.querySelector("button"),this.isDisabled=!this.isFocusable(),this.changeDetector.detectChanges()},e.prototype.focusElement=function(e){this.isActive=!0,e&&this.buttonElement.focus(),this.changeDetector.detectChanges()},e.prototype.isFocusable=function(){return this.buttonElement&&null===this.buttonElement.getAttribute("disabled")},e.prototype.resetState=function(){this.isActive=!1,this.changeDetector.markForCheck()},n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"ariaRole",void 0),e=n.__decorate([r.Component({selector:"sky-dropdown-item",template:'<div\n class="sky-dropdown-item"\n [attr.role]="ariaRole"\n [ngClass]="{\n \'sky-dropdown-item-active\': isActive,\n \'sky-dropdown-item-disabled\': isDisabled\n }">\n <ng-content>\n </ng-content>\n</div>\n',styles:[".sky-dropdown-item{background-color:transparent;border:none;display:block;margin:4px;min-width:160px;text-align:left;transition:background-color 150ms}.sky-dropdown-item.sky-dropdown-item-active,.sky-dropdown-item:hover{background-color:#eeeeef}.sky-dropdown-item.sky-dropdown-item-disabled{cursor:default}.sky-dropdown-item.sky-dropdown-item-disabled:hover{background-color:transparent}.sky-dropdown-item ::ng-deep>button{background-color:transparent;border:none;color:#212327;cursor:pointer;display:block;padding:3px 20px;text-align:left;width:100%}.sky-dropdown-item ::ng-deep>button[disabled]{color:#686c73}.sky-dropdown-item ::ng-deep>button[disabled]:hover{cursor:default}\n"],changeDetection:r.ChangeDetectionStrategy.OnPush}),n.__metadata("design:paramtypes",[r.ElementRef,r.ChangeDetectorRef])],e)}();t.SkyDropdownItemComponent=i},function(e,t){e.exports=r},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(24);t.SkyPopoverMessageType=r.SkyPopoverMessageType,n.__exportStar(o(12),t),n.__exportStar(o(13),t),n.__exportStar(o(6),t),n.__exportStar(o(16),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e[e.Open=0]="Open",e[e.Close=1]="Close",e[e.Reposition=2]="Reposition"}(t.SkyPopoverMessageType||(t.SkyPopoverMessageType={}))},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(2),s=function(){function e(e,t){this.renderer=e,this.windowRef=t}return e.prototype.getPopoverPosition=function(e,t,o){var n,r=0;do{(n=this.getPopoverCoordinates(e,t,o)).isOutsideViewport&&(t=r%2==0?this.getInversePlacement(t):this.getNextPlacement(t)),r++}while(n.isOutsideViewport&&r<4);4===r&&n.isOutsideViewport&&(t="fullscreen");var i=this.getArrowCoordinates(e,n,t);return this.verifyCoordinatesNearCaller(e,{top:n.top,left:n.left,arrowTop:i.top,arrowLeft:i.left,placement:t,alignment:o})},e.prototype.hidePopover=function(e){this.renderer.addClass(e.nativeElement,"sky-popover-hidden")},e.prototype.showPopover=function(e){this.renderer.removeClass(e.nativeElement,"sky-popover-hidden")},e.prototype.isPopoverLargerThanParent=function(e){var t=this.windowRef.getWindow(),o=e.nativeElement.getBoundingClientRect();return o.height>=t.innerHeight||o.width>=t.innerWidth},e.prototype.getParentScrollListeners=function(e,t){var o=this,n=this.windowRef.getWindow().document.body;return this.getScrollableParentElements(e).map(function(r){var i=r===n?"window":r;return o.renderer.listen(i,"scroll",function(){var n="window"===i||o.isVisibleWithinScrollable(i,e.nativeElement);t(n)})})},e.prototype.getPopoverCoordinates=function(e,t,o){var n,r,i=this.windowRef.getWindow(),s=e.popover.nativeElement.getBoundingClientRect(),a=e.caller.nativeElement.getBoundingClientRect(),p=a.width/2,c=i.innerWidth,d=i.innerHeight,u=0,l=0,y=0,f=0,v=!1;switch(t){case"above":y=n=a.top-s.height;break;case"below":f=d-((n=a.bottom)+s.height);break;case"right":l=c-((r=a.right)+s.width);break;case"left":u=r=a.left-s.width}if("right"!==t&&"left"!==t||(y=n=a.top-s.height/2+a.height/2,f=d-(n+s.height)),"above"===t||"below"===t){switch(o){default:case"center":r=a.left-s.width/2+p;break;case"left":r=a.left;break;case"right":r=a.left-s.width+a.width}u=r,l=c-(r+s.width)}return u<0&&("left"===t&&(v=!0),r=0),l<0&&("right"===t&&(v=!0),r+=l),y<0&&("above"===t&&(v=!0),n-=y),f<0&&("below"===t&&(v=!0),n+=f),{top:n,left:r,isOutsideViewport:v}},e.prototype.getArrowCoordinates=function(e,t,o){var n,r,i=e.caller.nativeElement.getBoundingClientRect(),s=e.popover.nativeElement.getBoundingClientRect(),a=e.popoverArrow.nativeElement.getBoundingClientRect(),p=i.width/2,c=i.height/2;return"left"!==o&&"right"!==o||((n=i.top-t.top+c)<c&&(n=c),n>s.height-c&&(n=s.height-c)),"above"!==o&&"below"!==o||((r=i.left-t.left+p)<a.width&&(r=a.width),r>s.width-a.width&&(r=s.width-a.width)),{top:n,left:r}},e.prototype.verifyCoordinatesNearCaller=function(e,t){var o=this.windowRef.getWindow(),n=e.caller.nativeElement.getBoundingClientRect(),r=e.popover.nativeElement.getBoundingClientRect();return"left"!==t.placement&&"right"!==t.placement||(n.top<0&&(t.top=n.top),n.bottom>o.innerHeight&&(t.top=n.bottom-r.height)),"above"!==t.placement&&"below"!==t.placement||(t.left+40>n.right&&(t.left=n.right-40),t.left+r.width-40<n.left&&(t.left=n.left-r.width+40)),t},e.prototype.getNextPlacement=function(e){var t=["above","right","below","left"],o=t.indexOf(e)+1;return o===t.length&&(o=0),t[o]},e.prototype.getInversePlacement=function(e){return{above:"below",below:"above",right:"left",left:"right"}[e]},e.prototype.getScrollableParentElements=function(e){for(var t=this.windowRef.getWindow(),o=t.document.body,n=[o],r=e.nativeElement.parentNode;void 0!==r&&r!==o&&r instanceof HTMLElement;){var i=t.getComputedStyle(r,void 0).overflowY.toLowerCase();"auto"!==i&&"hidden"!==i&&"scroll"!==i||n.push(r),r=r.parentNode}return n},e.prototype.isVisibleWithinScrollable=function(e,t){var o=e.getBoundingClientRect(),n=t.getBoundingClientRect(),r=0===n.top?100:n.top/o.top*100,i=0===o.bottom?100:o.bottom/n.bottom*100;return r>95&&i>95},e=n.__decorate([r.Injectable(),n.__metadata("design:paramtypes",[r.Renderer2,i.SkyWindowRefService])],e)}();t.SkyPopoverAdapterService=s},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(14);o(15);var s=o(3);o(4),o(25);var a=o(2),p=o(6),c=o(11),d=function(){function e(e,t){this.elementRef=e,this.windowRef=t,this.skyPopoverTrigger="click",this.skyPopoverMessageStream=new s.Subject,this.idled=new s.Subject}return e.prototype.ngOnChanges=function(e){e.skyPopover&&(this.removeEventListeners(),void 0!==e.skyPopover.currentValue&&this.addEventListeners())},e.prototype.ngOnDestroy=function(){this.removeEventListeners(),this.idled.complete()},e.prototype.togglePopover=function(){this.isPopoverOpen()?this.sendMessage(c.SkyPopoverMessageType.Close):this.sendMessage(c.SkyPopoverMessageType.Open)},e.prototype.positionPopover=function(){this.skyPopover.positionNextTo(this.elementRef,this.skyPopoverPlacement,this.skyPopoverAlignment)},e.prototype.closePopover=function(){this.skyPopover.close()},e.prototype.closePopoverOrMarkForClose=function(){this.skyPopover.isMouseEnter?this.skyPopover.markForCloseOnMouseLeave():this.sendMessage(c.SkyPopoverMessageType.Close)},e.prototype.isPopoverOpen=function(){return this.skyPopover&&this.skyPopover.isOpen},e.prototype.addEventListeners=function(){var e=this,t=this.elementRef.nativeElement;this.skyPopoverMessageStream.takeUntil(this.idled).subscribe(function(t){e.handleIncomingMessages(t)}),i.Observable.fromEvent(t,"keyup").takeUntil(this.idled).subscribe(function(t){"escape"===t.key.toLowerCase()&&e.isPopoverOpen()&&(t.stopPropagation(),t.preventDefault(),e.sendMessage(c.SkyPopoverMessageType.Close),e.elementRef.nativeElement.focus())}),i.Observable.fromEvent(t,"click").takeUntil(this.idled).subscribe(function(t){e.togglePopover()}),i.Observable.fromEvent(t,"mouseenter").takeUntil(this.idled).subscribe(function(t){e.skyPopover.isMouseEnter=!0,"mouseenter"===e.skyPopoverTrigger&&(t.preventDefault(),e.sendMessage(c.SkyPopoverMessageType.Open))}),i.Observable.fromEvent(t,"mouseleave").takeUntil(this.idled).subscribe(function(t){e.skyPopover.isMouseEnter=!1,"mouseenter"===e.skyPopoverTrigger&&(t.preventDefault(),e.isPopoverOpen()?e.windowRef.getWindow().setTimeout(function(){e.closePopoverOrMarkForClose()}):e.skyPopover.popoverOpened.take(1).subscribe(function(){e.closePopoverOrMarkForClose()}))})},e.prototype.removeEventListeners=function(){this.idled.next(!0),this.idled.unsubscribe(),this.idled=new s.Subject},e.prototype.handleIncomingMessages=function(e){switch(e.type){case c.SkyPopoverMessageType.Open:this.positionPopover();break;case c.SkyPopoverMessageType.Close:this.closePopover();break;case c.SkyPopoverMessageType.Reposition:this.isPopoverOpen()&&this.positionPopover()}},e.prototype.sendMessage=function(e){this.skyPopoverMessageStream.next({type:e})},n.__decorate([r.Input(),n.__metadata("design:type",p.SkyPopoverComponent)],e.prototype,"skyPopover",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"skyPopoverAlignment",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"skyPopoverPlacement",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"skyPopoverTrigger",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"skyPopoverMessageStream",void 0),e=n.__decorate([r.Directive({selector:"[skyPopover]"}),n.__metadata("design:paramtypes",[r.ElementRef,a.SkyWindowRefService])],e)}();t.SkyPopoverDirective=d},function(e,t){e.exports=i},function(e,t){e.exports=s},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(17),i=o(1),s=o(27),a=o(2),p=o(18),c=o(28),d=o(6),u=o(13),l=function(){function e(){}return e=n.__decorate([i.NgModule({declarations:[d.SkyPopoverComponent,u.SkyPopoverDirective],imports:[s.BrowserAnimationsModule,r.CommonModule,p.SkyIconModule,c.SkyPopoversResourcesModule],exports:[d.SkyPopoverComponent,u.SkyPopoverDirective],providers:[a.SkyWindowRefService]})],e)}();t.SkyPopoverModule=l},function(e,t){e.exports=a},function(e,t){e.exports=p},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(9),s=o(29),a=function(){function e(){}return e=n.__decorate([r.NgModule({providers:[{provide:i.SKY_LIB_RESOURCES_PROVIDERS,useClass:s.SkyPopoversResourcesProvider,multi:!0}],exports:[i.SkyI18nModule]})],e)}();t.SkyPopoversResourcesModule=a},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(3);o(4);var s=o(5),a=o(8),p=o(7),c=0,d=function(){function e(e,t){this.changeDetector=e,this.dropdownComponent=t,this.dropdownMenuId="sky-dropdown-menu-"+ ++c,this.ariaRole="menu",this.useNativeFocus=!0,this.menuChanges=new r.EventEmitter,this.ngUnsubscribe=new i.Subject,this._menuIndex=0}return Object.defineProperty(e.prototype,"menuIndex",{get:function(){return this._menuIndex},set:function(e){e<0&&(e=this.menuItems.length-1),e>=this.menuItems.length&&(e=0),this._menuIndex=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasFocusableItems",{get:function(){return void 0!==this.menuItems.find(function(e){return e.isFocusable()})},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){var e=this;this.dropdownComponent&&(this.dropdownComponent.menuId=this.dropdownMenuId,this.dropdownComponent.messageStream.takeUntil(this.ngUnsubscribe).subscribe(function(t){switch(t.type){case p.SkyDropdownMessageType.Open:case p.SkyDropdownMessageType.Close:e.reset();break;case p.SkyDropdownMessageType.FocusFirstItem:e.focusFirstItem();break;case p.SkyDropdownMessageType.FocusNextItem:e.focusNextItem();break;case p.SkyDropdownMessageType.FocusPreviousItem:e.focusPreviousItem()}}),this.menuChanges.takeUntil(this.ngUnsubscribe).subscribe(function(t){t.selectedItem&&e.dropdownComponent.messageStream.next({type:p.SkyDropdownMessageType.Close}),t.items&&e.dropdownComponent.messageStream.next({type:p.SkyDropdownMessageType.Reposition})})),this.menuItems.changes.takeUntil(this.ngUnsubscribe).subscribe(function(t){e.reset(),e.menuChanges.emit({items:t.toArray()})})},e.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},e.prototype.onClick=function(e){var t=this,o=this.menuItems.find(function(o,n){var r=o.elementRef.nativeElement.contains(e.target);return r&&(t.menuIndex=n,t.menuChanges.next({activeIndex:t.menuIndex})),r});o&&this.menuChanges.next({selectedItem:o})},e.prototype.onKeyDown=function(e){var t=e.key.toLowerCase();"arrowdown"!==t&&"down"!==t||(this.focusNextItem(),e.preventDefault()),"arrowup"!==t&&"up"!==t||(this.focusPreviousItem(),e.preventDefault())},e.prototype.focusFirstItem=function(){if(this.hasFocusableItems){this.menuIndex=0;var e=this.getItemByIndex(this.menuIndex);e&&e.isFocusable()?this.focusItem(e):this.focusNextItem()}},e.prototype.focusPreviousItem=function(){if(this.hasFocusableItems){this.menuIndex--;var e=this.getItemByIndex(this.menuIndex);e&&e.isFocusable()?this.focusItem(e):this.focusPreviousItem()}},e.prototype.focusNextItem=function(){if(this.hasFocusableItems){this.menuIndex++;var e=this.getItemByIndex(this.menuIndex);e&&e.isFocusable()?this.focusItem(e):this.focusNextItem()}},e.prototype.reset=function(){this._menuIndex=-1,this.resetItemsActiveState(),this.changeDetector.markForCheck()},e.prototype.resetItemsActiveState=function(){this.menuItems.forEach(function(e){e.resetState()})},e.prototype.focusItem=function(e){this.resetItemsActiveState(),e.focusElement(this.useNativeFocus),this.menuChanges.emit({activeIndex:this.menuIndex})},e.prototype.getItemByIndex=function(e){return this.menuItems.find(function(t,o){return o===e})},n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"ariaRole",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"ariaLabelledBy",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"useNativeFocus",void 0),n.__decorate([r.Output(),n.__metadata("design:type",Object)],e.prototype,"menuChanges",void 0),n.__decorate([r.ContentChildren(a.SkyDropdownItemComponent),n.__metadata("design:type",r.QueryList)],e.prototype,"menuItems",void 0),n.__decorate([r.HostListener("click",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[MouseEvent]),n.__metadata("design:returntype",void 0)],e.prototype,"onClick",null),n.__decorate([r.HostListener("keydown",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[KeyboardEvent]),n.__metadata("design:returntype",void 0)],e.prototype,"onKeyDown",null),e=n.__decorate([r.Component({selector:"sky-dropdown-menu",template:'<div\n class="sky-dropdown-menu"\n [attr.role]="ariaRole"\n [attr.aria-labelledby]="ariaLabelledBy"\n [id]="dropdownMenuId">\n <ng-content>\n </ng-content>\n</div>\n',styles:[".sky-dropdown-menu{display:flex;flex-direction:column}.sky-dropdown-menu ::ng-deep button{overflow:hidden;text-overflow:ellipsis}\n"],changeDetection:r.ChangeDetectionStrategy.OnPush}),n.__param(1,r.Optional()),n.__metadata("design:paramtypes",[r.ChangeDetectorRef,s.SkyDropdownComponent])],e)}();t.SkyDropdownMenuComponent=d},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o(0).__exportStar(o(22),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0);n.__exportStar(o(23),t),n.__exportStar(o(10),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0);n.__exportStar(o(5),t),n.__exportStar(o(8),t),n.__exportStar(o(20),t),n.__exportStar(o(32),t),n.__exportStar(o(7),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o(0).__exportStar(o(11),t)},function(e,t){e.exports=c},function(e,t){e.exports=d},function(e,t){e.exports=u},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o(0).__exportStar(o(19),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(30),s=function(){function e(){this.resources={"EN-US":{skyux_dropdown_context_menu_default_label:"Context menu",skyux_popover_close:"Close popover"}}}return e.prototype.getString=function(e,t){return i.getStringForLocale(this.resources,e.locale,t)},e=n.__decorate([r.Injectable()],e)}();t.SkyPopoversResourcesProvider=s},function(e,t){e.exports=l},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e[e.Open=0]="Open",e[e.Close=1]="Close",e[e.FocusTriggerButton=2]="FocusTriggerButton",e[e.FocusNextItem=3]="FocusNextItem",e[e.FocusPreviousItem=4]="FocusPreviousItem",e[e.Reposition=5]="Reposition",e[e.FocusFirstItem=6]="FocusFirstItem"}(t.SkyDropdownMessageType||(t.SkyDropdownMessageType={}))},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(17),i=o(1),s=o(2),a=o(18),p=o(16),c=o(19),d=o(33),u=o(8),l=o(20),y=o(5),f=function(){function e(){}return e=n.__decorate([i.NgModule({declarations:[d.SkyDropdownButtonComponent,y.SkyDropdownComponent,u.SkyDropdownItemComponent,l.SkyDropdownMenuComponent],imports:[r.CommonModule,a.SkyIconModule,p.SkyPopoverModule,c.SkyPopoversResourcesModule],exports:[d.SkyDropdownButtonComponent,y.SkyDropdownComponent,u.SkyDropdownItemComponent,l.SkyDropdownMenuComponent],providers:[s.SkyWindowRefService]})],e)}();t.SkyDropdownModule=f},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=function(){function e(){}return e=n.__decorate([r.Component({selector:"sky-dropdown-button",template:"<ng-content></ng-content>\n"})],e)}();t.SkyDropdownButtonComponent=i}])}); | ||
var n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)t.hasOwnProperty(o)&&(e[o]=t[o])})(e,t)};function r(e,t){function o(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}var i=function(){return(i=Object.assign||function(e){for(var t,o=1,n=arguments.length;o<n;o++)for(var r in t=arguments[o])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function s(e,t){var o={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(o[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(n=Object.getOwnPropertySymbols(e);r<n.length;r++)t.indexOf(n[r])<0&&Object.prototype.propertyIsEnumerable.call(e,n[r])&&(o[n[r]]=e[n[r]])}return o}function a(e,t,o,n){var r,i=arguments.length,s=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,o,n);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(s=(i<3?r(s):i>3?r(t,o,s):r(t,o))||s);return i>3&&s&&Object.defineProperty(t,o,s),s}function p(e,t){return function(o,n){t(o,n,e)}}function c(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function d(e,t,o,n){return new(o||(o=Promise))(function(r,i){function s(e){try{p(n.next(e))}catch(e){i(e)}}function a(e){try{p(n.throw(e))}catch(e){i(e)}}function p(e){e.done?r(e.value):new o(function(t){t(e.value)}).then(s,a)}p((n=n.apply(e,t||[])).next())})}function u(e,t){var o,n,r,i,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){return function(i){if(o)throw new TypeError("Generator is already executing.");for(;s;)try{if(o=1,n&&(r=2&i[0]?n.return:i[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,i[1])).done)return r;switch(n=0,r&&(i=[2&i[0],r.value]),i[0]){case 0:case 1:r=i;break;case 4:return s.label++,{value:i[1],done:!1};case 5:s.label++,n=i[1],i=[0];continue;case 7:i=s.ops.pop(),s.trys.pop();continue;default:if(!(r=(r=s.trys).length>0&&r[r.length-1])&&(6===i[0]||2===i[0])){s=0;continue}if(3===i[0]&&(!r||i[1]>r[0]&&i[1]<r[3])){s.label=i[1];break}if(6===i[0]&&s.label<r[1]){s.label=r[1],r=i;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(i);break}r[2]&&s.ops.pop(),s.trys.pop();continue}i=t.call(e,s)}catch(e){i=[6,e],n=0}finally{o=r=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,a])}}}function l(e,t){for(var o in e)t.hasOwnProperty(o)||(t[o]=e[o])}function y(e){var t="function"==typeof Symbol&&e[Symbol.iterator],o=0;return t?t.call(e):{next:function(){return e&&o>=e.length&&(e=void 0),{value:e&&e[o++],done:!e}}}}function f(e,t){var o="function"==typeof Symbol&&e[Symbol.iterator];if(!o)return e;var n,r,i=o.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(o=i.return)&&o.call(i)}finally{if(r)throw r.error}}return s}function v(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(f(arguments[t]));return e}function m(){for(var e=0,t=0,o=arguments.length;t<o;t++)e+=arguments[t].length;var n=Array(e),r=0;for(t=0;t<o;t++)for(var i=arguments[t],s=0,a=i.length;s<a;s++,r++)n[r]=i[s];return n}function h(e){return this instanceof h?(this.v=e,this):new h(e)}function g(e,t,o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,r=o.apply(e,t||[]),i=[];return n={},s("next"),s("throw"),s("return"),n[Symbol.asyncIterator]=function(){return this},n;function s(e){r[e]&&(n[e]=function(t){return new Promise(function(o,n){i.push([e,t,o,n])>1||a(e,t)})})}function a(e,t){try{(o=r[e](t)).value instanceof h?Promise.resolve(o.value.v).then(p,c):d(i[0][2],o)}catch(e){d(i[0][3],e)}var o}function p(e){a("next",e)}function c(e){a("throw",e)}function d(e,t){e(t),i.shift(),i.length&&a(i[0][0],i[0][1])}}function b(e){var t,o;return t={},n("next"),n("throw",function(e){throw e}),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,r){t[n]=e[n]?function(t){return(o=!o)?{value:h(e[n](t)),done:"return"===n}:r?r(t):t}:r}}function k(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,o=e[Symbol.asyncIterator];return o?o.call(e):(e=y(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(o){t[o]=e[o]&&function(t){return new Promise(function(n,r){(function(e,t,o,n){Promise.resolve(n).then(function(t){e({value:t,done:o})},t)})(n,r,(t=e[o](t)).done,t.value)})}}}function _(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function w(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o in e)Object.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t.default=e,t}function x(e){return e&&e.__esModule?e:{default:e}}},function(t,o){t.exports=e},function(e,o){e.exports=t},function(e,t){e.exports=o},function(e,t){e.exports=n},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(2),s=o(9),a=o(3);o(4);var p=o(10),c=o(7),d=function(){function e(e,t){this.windowRef=e,this.resourcesService=t,this.alignment="left",this.dismissOnBlur=!0,this.messageStream=new a.Subject,this.disabled=!1,this.ngUnsubscribe=new a.Subject,this.isKeyboardActive=!1,this._isOpen=!1}return Object.defineProperty(e.prototype,"buttonStyle",{get:function(){return this._buttonStyle||"default"},set:function(e){this._buttonStyle=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"buttonType",{get:function(){return this._buttonType||"select"},set:function(e){this._buttonType=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"label",{get:function(){return"select"===this.buttonType||"tab"===this.buttonType?this._label:this._label||this.getString("skyux_dropdown_context_menu_default_label")},set:function(e){this._label=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"trigger",{get:function(){return this._trigger||"click"},set:function(e){this._trigger=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"isOpen",{get:function(){return this._isOpen},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;this.messageStream.takeUntil(this.ngUnsubscribe).subscribe(function(t){e.handleIncomingMessages(t)})},e.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},e.prototype.onKeyDown=function(e){var t=this,o=e.key.toLowerCase();if(this._isOpen)switch(o){case"enter":this.windowRef.getWindow().setTimeout(function(){t.sendMessage(c.SkyDropdownMessageType.FocusTriggerButton)});break;case"down":case"arrowdown":this.isKeyboardActive||(this.isKeyboardActive=!0,this.sendMessage(c.SkyDropdownMessageType.FocusFirstItem),e.preventDefault())}else switch(o){case"enter":this.isKeyboardActive=!0;break;case"down":case"arrowdown":this.isKeyboardActive=!0,this.sendMessage(c.SkyDropdownMessageType.Open),e.preventDefault()}},e.prototype.onPopoverOpened=function(){this._isOpen=!0,this.isKeyboardActive&&this.sendMessage(c.SkyDropdownMessageType.FocusFirstItem)},e.prototype.onPopoverClosed=function(){this._isOpen=!1,this.isKeyboardActive=!1},e.prototype.getPopoverTriggerType=function(){return"click"===this.trigger?"click":"mouseenter"},e.prototype.handleIncomingMessages=function(e){var t=this;if(!this.disabled)switch(e.type){case c.SkyDropdownMessageType.Open:this.positionPopover();break;case c.SkyDropdownMessageType.Close:this.popover.close();break;case c.SkyDropdownMessageType.Reposition:this._isOpen&&this.windowRef.getWindow().setTimeout(function(){t.popover.reposition()});break;case c.SkyDropdownMessageType.FocusTriggerButton:this.triggerButton.nativeElement.focus()}},e.prototype.sendMessage=function(e){this.messageStream.next({type:e})},e.prototype.positionPopover=function(){this.popover.positionNextTo(this.triggerButton,"below",this.alignment)},e.prototype.getString=function(e){return this.resourcesService.getStringForLocale({locale:"en-US"},e)},n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"alignment",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"buttonStyle",null),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"buttonType",null),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"label",null),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"dismissOnBlur",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"messageStream",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"title",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"disabled",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"trigger",null),n.__decorate([r.ViewChild("triggerButton"),n.__metadata("design:type",r.ElementRef)],e.prototype,"triggerButton",void 0),n.__decorate([r.ViewChild(p.SkyPopoverComponent),n.__metadata("design:type",p.SkyPopoverComponent)],e.prototype,"popover",void 0),n.__decorate([r.HostListener("keydown",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[KeyboardEvent]),n.__metadata("design:returntype",void 0)],e.prototype,"onKeyDown",null),e=n.__decorate([r.Component({selector:"sky-dropdown",template:'<div class="sky-dropdown">\n <button\n aria-haspopup="true"\n class="sky-btn sky-dropdown-button"\n type="button"\n [attr.aria-expanded]="isOpen"\n [attr.aria-controls]="menuId"\n [attr.aria-label]="label"\n [attr.title]="title"\n [disabled]="disabled"\n [ngClass]="[\n \'sky-dropdown-button-type-\' + buttonType,\n \'sky-btn-\' + buttonStyle\n ]"\n [skyPopover]="popover"\n [skyPopoverTrigger]="getPopoverTriggerType()"\n [skyPopoverAlignment]="alignment"\n skyPopoverPlacement="below"\n #triggerButton>\n\n <div [ngSwitch]="buttonType">\n <ng-template ngSwitchCase="context-menu">\n <sky-icon icon="ellipsis-h"></sky-icon>\n </ng-template>\n\n <ng-template ngSwitchDefault>\n <div\n class="sky-dropdown-button-container"\n *ngIf="buttonType === \'select\' || buttonType === \'tab\' || !buttonType">\n <div class="sky-dropdown-button-content-container">\n <ng-content\n select="sky-dropdown-button">\n </ng-content>\n </div>\n <div class="sky-dropdown-button-icon-container">\n <sky-icon\n icon="caret-down"\n class="sky-dropdown-caret"\n >\n </sky-icon>\n </div>\n </div>\n <div\n *ngIf="buttonType !== \'select\' && buttonType !== \'tab\' && buttonType">\n <sky-icon [icon]="buttonType" size="lg"></sky-icon>\n </div>\n </ng-template>\n </div>\n </button>\n <sky-popover\n placement="below"\n [alignment]="alignment"\n [dismissOnBlur]="dismissOnBlur"\n (popoverOpened)="onPopoverOpened()"\n (popoverClosed)="onPopoverClosed()"\n [@.disabled]="true"\n #popover>\n <ng-content\n select="sky-dropdown-menu">\n </ng-content>\n </sky-popover>\n</div>\n',styles:[".sky-dropdown ::ng-deep .sky-popover-container{padding:0;min-width:auto;max-width:none}.sky-dropdown ::ng-deep .sky-popover-container .sky-popover{border-radius:0 !important;border:0 !important}.sky-dropdown ::ng-deep .sky-popover-container .sky-popover-body{padding:0}.sky-dropdown ::ng-deep .sky-popover-container .sky-popover-arrow{display:none}.sky-dropdown-button-type-tab{background-color:transparent;border:none;border-radius:4px 4px 0 0;color:#686c73;cursor:pointer;display:inline-block;font-weight:600;line-height:1.8;padding:8px 16px;background-color:#0974a1;color:#fff;max-width:100%}.sky-dropdown-button-type-tab:hover:not(.sky-btn-tab-disabled){background-color:#eeeeef;color:#212327;text-decoration:none}.sky-dropdown-button-type-tab.sky-btn-tab-disabled{background-color:#cdcfd2;cursor:default;outline:none;text-decoration:none}.sky-dropdown-button-type-tab.sky-btn-tab-disabled:hover{color:#686c73;cursor:default;text-decoration:none}.sky-dropdown-button-type-tab:hover:not(.sky-btn-tab-disabled){background-color:#0974a1;color:#fff}.sky-dropdown-button-type-context-menu{border-radius:50%;padding-bottom:3px;padding-left:8px;padding-right:8px;padding-top:3px}.sky-dropdown-caret{margin-left:10px}.sky-dropdown-button-container{display:flex}.sky-dropdown-button-content-container{flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.sky-dropdown-button-icon-container{flex-grow:1}\n"],changeDetection:r.ChangeDetectionStrategy.OnPush}),n.__metadata("design:paramtypes",[i.SkyWindowRefService,s.SkyLibResourcesService])],e)}();t.SkyDropdownComponent=d},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(26),i=o(1),s=o(2),a=o(14);o(15);var p=o(3);o(4);var c=o(12),d=function(){function e(e,t,o,n){this.adapterService=e,this.changeDetector=t,this.elementRef=o,this.windowRef=n,this.dismissOnBlur=!0,this.popoverOpened=new i.EventEmitter,this.popoverClosed=new i.EventEmitter,this.isOpen=!1,this.isVisible=!1,this.isMouseEnter=!1,this.classNames=[],this.animationState="hidden",this.idled=new p.Subject,this.isMarkedForCloseOnMouseLeave=!1,this.scrollListeners=[]}return Object.defineProperty(e.prototype,"alignment",{get:function(){return this._alignment||"center"},set:function(e){this._alignment=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"placement",{get:function(){return this._placement||"above"},set:function(e){this._placement=e},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this.preferredPlacement=this.placement,this.adapterService.hidePopover(this.popoverContainer)},e.prototype.ngOnDestroy=function(){this.removeListeners(),this.idled.complete()},e.prototype.positionNextTo=function(e,t,o){var n=this;e&&(this.close(),this.caller=e,this.placement=t,this.alignment=o,this.preferredPlacement=this.placement,this.changeDetector.markForCheck(),this.windowRef.getWindow().setTimeout(function(){n.adapterService.isPopoverLargerThanParent(n.popoverContainer)&&(n.placement="fullscreen"),n.isVisible=!0,n.positionPopover(),n.addListeners(),n.animationState="visible",n.changeDetector.markForCheck()}))},e.prototype.reposition=function(){this.placement=this.preferredPlacement,this.changeDetector.markForCheck(),this.adapterService.isPopoverLargerThanParent(this.popoverContainer)&&(this.placement="fullscreen"),this.positionPopover()},e.prototype.close=function(){this.animationState="hidden",this.removeListeners(),this.changeDetector.markForCheck()},e.prototype.onAnimationStart=function(e){"void"!==e.fromState&&"visible"===e.toState&&this.adapterService.showPopover(this.popoverContainer)},e.prototype.onAnimationDone=function(e){"void"!==e.fromState&&("hidden"===e.toState?(this.isOpen=!1,this.adapterService.hidePopover(this.popoverContainer),this.popoverClosed.emit(this)):(this.isOpen=!0,this.popoverOpened.emit(this)))},e.prototype.markForCloseOnMouseLeave=function(){this.isMarkedForCloseOnMouseLeave=!0},e.prototype.positionPopover=function(){if("fullscreen"!==this.placement){var e={popover:this.popoverContainer,popoverArrow:this.popoverArrow,caller:this.caller},t=this.adapterService.getPopoverPosition(e,this.preferredPlacement,this.alignment);this.placement=t.placement,this.alignment=t.alignment,this.popoverTop=t.top,this.popoverLeft=t.left,this.arrowTop=t.arrowTop,this.arrowLeft=t.arrowLeft}this.changeDetector.markForCheck()},e.prototype.addListeners=function(){var e=this,t=this.windowRef.getWindow(),o=this.elementRef.nativeElement;a.Observable.fromEvent(t,"resize").takeUntil(this.idled).subscribe(function(){e.reposition()}),a.Observable.fromEvent(t.document,"focusin").takeUntil(this.idled).subscribe(function(t){var n=o.contains(t.target),r=e.caller&&e.caller.nativeElement===t.target;n||r||!e.dismissOnBlur||e.close()}),a.Observable.fromEvent(t.document,"click").takeUntil(this.idled).subscribe(function(t){!e.isMouseEnter&&e.dismissOnBlur&&e.close()}),a.Observable.fromEvent(o,"mouseenter").takeUntil(this.idled).subscribe(function(){e.isMouseEnter=!0}),a.Observable.fromEvent(o,"mouseleave").takeUntil(this.idled).subscribe(function(){e.isMouseEnter=!1,e.isMarkedForCloseOnMouseLeave&&(e.close(),e.isMarkedForCloseOnMouseLeave=!1)}),a.Observable.fromEvent(o,"keyup").takeUntil(this.idled).subscribe(function(t){"escape"===t.key.toLowerCase()&&(t.stopPropagation(),t.preventDefault(),e.close(),e.caller&&e.caller.nativeElement.focus())}),this.scrollListeners=this.adapterService.getParentScrollListeners(this.popoverContainer,function(t){e.reposition(),e.isVisible=t,e.changeDetector.markForCheck()})},e.prototype.removeListeners=function(){this.idled.next(!0),this.scrollListeners&&(this.scrollListeners.forEach(function(e){e()}),this.scrollListeners=[])},n.__decorate([i.Input(),n.__metadata("design:type",Object)],e.prototype,"dismissOnBlur",void 0),n.__decorate([i.Input(),n.__metadata("design:type",String)],e.prototype,"popoverTitle",void 0),n.__decorate([i.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"alignment",null),n.__decorate([i.Input(),n.__metadata("design:type",String),n.__metadata("design:paramtypes",[String])],e.prototype,"placement",null),n.__decorate([i.Output(),n.__metadata("design:type",Object)],e.prototype,"popoverOpened",void 0),n.__decorate([i.Output(),n.__metadata("design:type",Object)],e.prototype,"popoverClosed",void 0),n.__decorate([i.ViewChild("popoverContainer"),n.__metadata("design:type",i.ElementRef)],e.prototype,"popoverContainer",void 0),n.__decorate([i.ViewChild("popoverArrow"),n.__metadata("design:type",i.ElementRef)],e.prototype,"popoverArrow",void 0),e=n.__decorate([i.Component({selector:"sky-popover",template:'<div\n class="sky-popover-container"\n tabindex="-1"\n [ngClass]="[\n \'sky-popover-alignment-\' + alignment,\n \'sky-popover-placement-\' + placement\n ]"\n (@popoverState.start)="onAnimationStart($event)"\n (@popoverState.done)="onAnimationDone($event)"\n [@popoverState]="animationState"\n [style.top.px]="popoverTop"\n [style.left.px]="popoverLeft"\n [style.visibility]="(isVisible) ? \'visible\': \'hidden\'"\n #popoverContainer>\n <div class="sky-popover sky-shadow sky-rounded-corners">\n <header class="sky-popover-header sky-padding-even-default" *ngIf="popoverTitle || placement === \'fullscreen\'">\n <h1 class="sky-popover-title sky-emphasized" *ngIf="popoverTitle">\n {{ popoverTitle }}\n </h1>\n <button *ngIf="placement === \'fullscreen\'"\n type="button"\n class="sky-btn sky-popover-fullscreen-close"\n [attr.aria-label]="\'skyux_popover_close\' | skyLibResources"\n (click)="close()"\n >\n <sky-icon icon="close"></sky-icon>\n </button>\n </header>\n <div class="sky-popover-body sky-padding-even-default">\n <ng-content></ng-content>\n </div>\n <div\n class="sky-popover-arrow"\n [style.top.px]="arrowTop"\n [style.left.px]="arrowLeft"\n aria-hidden="true"\n #popoverArrow></div>\n </div>\n</div>\n',styles:[".sky-popover-container{position:fixed;z-index:1001;min-width:276px;max-width:276px}.sky-popover-container.sky-popover-hidden{visibility:hidden;opacity:0;top:-9999px !important;left:-9999px !important}.sky-popover-container:focus{outline:none}@media (max-width: 276px){.sky-popover-container{max-width:100%;min-width:auto}}.sky-popover{background-color:#fff}.sky-popover-header{padding-bottom:0}.sky-popover-header+.sky-popover-body{padding-top:2px}.sky-popover-title{margin:0}.sky-popover-arrow{width:0;height:0;position:absolute;border:10px solid transparent}.sky-popover-placement-fullscreen{background-color:rgba(0,0,0,0.2);padding:10px !important;top:0 !important;left:0 !important;right:0;bottom:0;width:100% !important;max-width:none;max-height:100%;height:auto !important}.sky-popover-placement-fullscreen>.sky-popover{border-top:1px solid #cdcfd2;border-bottom:1px solid #cdcfd2;border-left:1px solid #cdcfd2;border-right:1px solid #cdcfd2;overflow:auto;max-height:100%;display:flex;flex-direction:column}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-header{padding-left:15px;padding-top:9px;padding-bottom:9px;padding-right:3px;display:flex;flex-shrink:0;justify-content:flex-end;align-items:baseline;border-bottom:1px solid #e2e3e4}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-body{position:relative}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-title{flex-grow:1}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-fullscreen-close{border:none;color:#cdcfd2;cursor:pointer;font-size:20px;flex-grow:0}.sky-popover-placement-fullscreen>.sky-popover .sky-popover-fullscreen-close:hover{color:#979ba2;transition:color 150ms}.sky-popover-placement-above{padding-bottom:10px}.sky-popover-placement-above .sky-popover{border-bottom:10px solid #00b4f1}.sky-popover-placement-above .sky-popover-arrow{border-bottom:0;border-top-color:#00b4f1;bottom:0;left:50%;margin-left:-10px}.sky-popover-placement-below{padding-top:10px}.sky-popover-placement-below .sky-popover{border-top:10px solid #00b4f1}.sky-popover-placement-below .sky-popover-arrow{border-top:0;border-bottom-color:#00b4f1;top:0;left:50%;margin-left:-10px}.sky-popover-placement-right{padding-left:10px}.sky-popover-placement-right .sky-popover{border-left:10px solid #00b4f1}.sky-popover-placement-right .sky-popover-arrow{border-left:0;border-right-color:#00b4f1;left:0;top:50%;margin-top:-10px}.sky-popover-placement-left{padding-right:10px}.sky-popover-placement-left .sky-popover{border-right:10px solid #00b4f1}.sky-popover-placement-left .sky-popover-arrow{border-right:0;border-left-color:#00b4f1;right:0;top:50%;margin-top:-10px}.sky-popover-placement-above.sky-popover-alignment-left .sky-popover-arrow,.sky-popover-placement-below.sky-popover-alignment-left .sky-popover-arrow{left:40px;right:auto}.sky-popover-placement-above.sky-popover-alignment-right .sky-popover-arrow,.sky-popover-placement-below.sky-popover-alignment-right .sky-popover-arrow{left:auto;right:40px}\n"],providers:[c.SkyPopoverAdapterService],animations:[r.trigger("popoverState",[r.state("visible",r.style({opacity:1,visibility:"visible"})),r.state("hidden",r.style({opacity:0})),r.transition("hidden => visible",r.animate("150ms")),r.transition("visible => hidden",r.animate("150ms"))])],changeDetection:i.ChangeDetectionStrategy.OnPush}),n.__metadata("design:paramtypes",[c.SkyPopoverAdapterService,i.ChangeDetectorRef,i.ElementRef,s.SkyWindowRefService])],e)}();t.SkyPopoverComponent=d},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o(0).__exportStar(o(31),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=function(){function e(e,t,o){this.elementRef=e,this.changeDetector=t,this.renderer=o,this.ariaRole="menuitem",this.isActive=!1,this.isDisabled=!1}return Object.defineProperty(e.prototype,"buttonElement",{get:function(){return this.elementRef.nativeElement.querySelector("button,a")},enumerable:!0,configurable:!0}),e.prototype.ngAfterViewInit=function(){this.isDisabled=!this.isFocusable();var e=this.buttonElement;e&&this.renderer.setAttribute(e,"tabIndex","0"),this.changeDetector.detectChanges()},e.prototype.focusElement=function(e){this.isActive=!0,e&&this.buttonElement.focus(),this.changeDetector.detectChanges()},e.prototype.isFocusable=function(){return this.buttonElement&&null===this.buttonElement.getAttribute("disabled")},e.prototype.resetState=function(){this.isActive=!1,this.changeDetector.markForCheck()},n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"ariaRole",void 0),e=n.__decorate([r.Component({selector:"sky-dropdown-item",template:'<div\n class="sky-dropdown-item"\n [attr.role]="ariaRole"\n [ngClass]="{\n \'sky-dropdown-item-active\': isActive,\n \'sky-dropdown-item-disabled\': isDisabled\n }">\n <ng-content>\n </ng-content>\n</div>\n',styles:[".sky-dropdown-item{background-color:transparent;border:none;display:block;margin:4px;min-width:160px;text-align:left;transition:background-color 150ms}.sky-dropdown-item.sky-dropdown-item-active,.sky-dropdown-item:hover{background-color:#eeeeef}.sky-dropdown-item.sky-dropdown-item-disabled{cursor:default}.sky-dropdown-item.sky-dropdown-item-disabled:hover{background-color:transparent}.sky-dropdown-item ::ng-deep>a,.sky-dropdown-item ::ng-deep>button{background-color:transparent;border:none;color:#212327;cursor:pointer;display:block;padding:3px 20px;text-align:left;width:100%}.sky-dropdown-item ::ng-deep>a:hover,.sky-dropdown-item ::ng-deep>button:hover{text-decoration:none}.sky-dropdown-item ::ng-deep>a[disabled],.sky-dropdown-item ::ng-deep>button[disabled]{color:#686c73}.sky-dropdown-item ::ng-deep>a[disabled]:hover,.sky-dropdown-item ::ng-deep>button[disabled]:hover{cursor:default}\n"],changeDetection:r.ChangeDetectionStrategy.OnPush}),n.__metadata("design:paramtypes",[r.ElementRef,r.ChangeDetectorRef,r.Renderer2])],e)}();t.SkyDropdownItemComponent=i},function(e,t){e.exports=r},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(24);t.SkyPopoverMessageType=r.SkyPopoverMessageType,n.__exportStar(o(12),t),n.__exportStar(o(13),t),n.__exportStar(o(6),t),n.__exportStar(o(16),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e[e.Open=0]="Open",e[e.Close=1]="Close",e[e.Reposition=2]="Reposition"}(t.SkyPopoverMessageType||(t.SkyPopoverMessageType={}))},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(2),s=function(){function e(e,t){this.renderer=e,this.windowRef=t}return e.prototype.getPopoverPosition=function(e,t,o){var n,r=0;do{(n=this.getPopoverCoordinates(e,t,o)).isOutsideViewport&&(t=r%2==0?this.getInversePlacement(t):this.getNextPlacement(t)),r++}while(n.isOutsideViewport&&r<4);4===r&&n.isOutsideViewport&&(t="fullscreen");var i=this.getArrowCoordinates(e,n,t);return this.verifyCoordinatesNearCaller(e,{top:n.top,left:n.left,arrowTop:i.top,arrowLeft:i.left,placement:t,alignment:o})},e.prototype.hidePopover=function(e){this.renderer.addClass(e.nativeElement,"sky-popover-hidden")},e.prototype.showPopover=function(e){this.renderer.removeClass(e.nativeElement,"sky-popover-hidden")},e.prototype.isPopoverLargerThanParent=function(e){var t=this.windowRef.getWindow(),o=e.nativeElement.getBoundingClientRect();return o.height>=t.innerHeight||o.width>=t.innerWidth},e.prototype.getParentScrollListeners=function(e,t){var o=this,n=this.windowRef.getWindow().document.body;return this.getScrollableParentElements(e).map(function(r){var i=r===n?"window":r;return o.renderer.listen(i,"scroll",function(){var n="window"===i||o.isVisibleWithinScrollable(i,e.nativeElement);t(n)})})},e.prototype.getPopoverCoordinates=function(e,t,o){var n,r,i=this.windowRef.getWindow(),s=e.popover.nativeElement.getBoundingClientRect(),a=e.caller.nativeElement.getBoundingClientRect(),p=a.width/2,c=i.innerWidth,d=i.innerHeight,u=0,l=0,y=0,f=0,v=!1;switch(t){case"above":y=n=a.top-s.height;break;case"below":f=d-((n=a.bottom)+s.height);break;case"right":l=c-((r=a.right)+s.width);break;case"left":u=r=a.left-s.width}if("right"!==t&&"left"!==t||(y=n=a.top-s.height/2+a.height/2,f=d-(n+s.height)),"above"===t||"below"===t){switch(o){default:case"center":r=a.left-s.width/2+p;break;case"left":r=a.left;break;case"right":r=a.left-s.width+a.width}u=r,l=c-(r+s.width)}return u<0&&("left"===t&&(v=!0),r=0),l<0&&("right"===t&&(v=!0),r+=l),y<0&&("above"===t&&(v=!0),n-=y),f<0&&("below"===t&&(v=!0),n+=f),{top:n,left:r,isOutsideViewport:v}},e.prototype.getArrowCoordinates=function(e,t,o){var n,r,i=e.caller.nativeElement.getBoundingClientRect(),s=e.popover.nativeElement.getBoundingClientRect(),a=e.popoverArrow.nativeElement.getBoundingClientRect(),p=i.width/2,c=i.height/2;return"left"!==o&&"right"!==o||((n=i.top-t.top+c)<c&&(n=c),n>s.height-c&&(n=s.height-c)),"above"!==o&&"below"!==o||((r=i.left-t.left+p)<a.width&&(r=a.width),r>s.width-a.width&&(r=s.width-a.width)),{top:n,left:r}},e.prototype.verifyCoordinatesNearCaller=function(e,t){var o=this.windowRef.getWindow(),n=e.caller.nativeElement.getBoundingClientRect(),r=e.popover.nativeElement.getBoundingClientRect();return"left"!==t.placement&&"right"!==t.placement||(n.top<0&&(t.top=n.top),n.bottom>o.innerHeight&&(t.top=n.bottom-r.height)),"above"!==t.placement&&"below"!==t.placement||(t.left+40>n.right&&(t.left=n.right-40),t.left+r.width-40<n.left&&(t.left=n.left-r.width+40)),t},e.prototype.getNextPlacement=function(e){var t=["above","right","below","left"],o=t.indexOf(e)+1;return o===t.length&&(o=0),t[o]},e.prototype.getInversePlacement=function(e){return{above:"below",below:"above",right:"left",left:"right"}[e]},e.prototype.getScrollableParentElements=function(e){for(var t=this.windowRef.getWindow(),o=t.document.body,n=[o],r=e.nativeElement.parentNode;void 0!==r&&r!==o&&r instanceof HTMLElement;){var i=t.getComputedStyle(r,void 0).overflowY.toLowerCase();"auto"!==i&&"hidden"!==i&&"scroll"!==i||n.push(r),r=r.parentNode}return n},e.prototype.isVisibleWithinScrollable=function(e,t){var o=e.getBoundingClientRect(),n=t.getBoundingClientRect(),r=0===n.top?100:n.top/o.top*100,i=0===o.bottom?100:o.bottom/n.bottom*100;return r>95&&i>95},e=n.__decorate([r.Injectable(),n.__metadata("design:paramtypes",[r.Renderer2,i.SkyWindowRefService])],e)}();t.SkyPopoverAdapterService=s},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(14);o(15);var s=o(3);o(4),o(25);var a=o(2),p=o(6),c=o(11),d=function(){function e(e,t){this.elementRef=e,this.windowRef=t,this.skyPopoverTrigger="click",this.skyPopoverMessageStream=new s.Subject,this.idled=new s.Subject}return e.prototype.ngOnChanges=function(e){e.skyPopover&&(this.removeEventListeners(),void 0!==e.skyPopover.currentValue&&this.addEventListeners())},e.prototype.ngOnDestroy=function(){this.removeEventListeners(),this.idled.complete()},e.prototype.togglePopover=function(){this.isPopoverOpen()?this.sendMessage(c.SkyPopoverMessageType.Close):this.sendMessage(c.SkyPopoverMessageType.Open)},e.prototype.positionPopover=function(){this.skyPopover.positionNextTo(this.elementRef,this.skyPopoverPlacement,this.skyPopoverAlignment)},e.prototype.closePopover=function(){this.skyPopover.close()},e.prototype.closePopoverOrMarkForClose=function(){this.skyPopover.isMouseEnter?this.skyPopover.markForCloseOnMouseLeave():this.sendMessage(c.SkyPopoverMessageType.Close)},e.prototype.isPopoverOpen=function(){return this.skyPopover&&this.skyPopover.isOpen},e.prototype.addEventListeners=function(){var e=this,t=this.elementRef.nativeElement;this.skyPopoverMessageStream.takeUntil(this.idled).subscribe(function(t){e.handleIncomingMessages(t)}),i.Observable.fromEvent(t,"keyup").takeUntil(this.idled).subscribe(function(t){"escape"===t.key.toLowerCase()&&e.isPopoverOpen()&&(t.stopPropagation(),t.preventDefault(),e.sendMessage(c.SkyPopoverMessageType.Close),e.elementRef.nativeElement.focus())}),i.Observable.fromEvent(t,"click").takeUntil(this.idled).subscribe(function(t){e.togglePopover()}),i.Observable.fromEvent(t,"mouseenter").takeUntil(this.idled).subscribe(function(t){e.skyPopover.isMouseEnter=!0,"mouseenter"===e.skyPopoverTrigger&&(t.preventDefault(),e.sendMessage(c.SkyPopoverMessageType.Open))}),i.Observable.fromEvent(t,"mouseleave").takeUntil(this.idled).subscribe(function(t){e.skyPopover.isMouseEnter=!1,"mouseenter"===e.skyPopoverTrigger&&(t.preventDefault(),e.isPopoverOpen()?e.windowRef.getWindow().setTimeout(function(){e.closePopoverOrMarkForClose()}):e.skyPopover.popoverOpened.take(1).subscribe(function(){e.closePopoverOrMarkForClose()}))})},e.prototype.removeEventListeners=function(){this.idled.next(!0),this.idled.unsubscribe(),this.idled=new s.Subject},e.prototype.handleIncomingMessages=function(e){switch(e.type){case c.SkyPopoverMessageType.Open:this.positionPopover();break;case c.SkyPopoverMessageType.Close:this.closePopover();break;case c.SkyPopoverMessageType.Reposition:this.isPopoverOpen()&&this.positionPopover()}},e.prototype.sendMessage=function(e){this.skyPopoverMessageStream.next({type:e})},n.__decorate([r.Input(),n.__metadata("design:type",p.SkyPopoverComponent)],e.prototype,"skyPopover",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"skyPopoverAlignment",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"skyPopoverPlacement",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"skyPopoverTrigger",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"skyPopoverMessageStream",void 0),e=n.__decorate([r.Directive({selector:"[skyPopover]"}),n.__metadata("design:paramtypes",[r.ElementRef,a.SkyWindowRefService])],e)}();t.SkyPopoverDirective=d},function(e,t){e.exports=i},function(e,t){e.exports=s},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(17),i=o(1),s=o(27),a=o(2),p=o(18),c=o(28),d=o(6),u=o(13),l=function(){function e(){}return e=n.__decorate([i.NgModule({declarations:[d.SkyPopoverComponent,u.SkyPopoverDirective],imports:[s.BrowserAnimationsModule,r.CommonModule,p.SkyIconModule,c.SkyPopoversResourcesModule],exports:[d.SkyPopoverComponent,u.SkyPopoverDirective],providers:[a.SkyWindowRefService]})],e)}();t.SkyPopoverModule=l},function(e,t){e.exports=a},function(e,t){e.exports=p},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(9),s=o(29),a=function(){function e(){}return e=n.__decorate([r.NgModule({providers:[{provide:i.SKY_LIB_RESOURCES_PROVIDERS,useClass:s.SkyPopoversResourcesProvider,multi:!0}],exports:[i.SkyI18nModule]})],e)}();t.SkyPopoversResourcesModule=a},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(3);o(4);var s=o(5),a=o(8),p=o(7),c=0,d=function(){function e(e,t){this.changeDetector=e,this.dropdownComponent=t,this.dropdownMenuId="sky-dropdown-menu-"+ ++c,this.ariaRole="menu",this.useNativeFocus=!0,this.menuChanges=new r.EventEmitter,this.ngUnsubscribe=new i.Subject,this._menuIndex=0}return Object.defineProperty(e.prototype,"menuIndex",{get:function(){return this._menuIndex},set:function(e){e<0&&(e=this.menuItems.length-1),e>=this.menuItems.length&&(e=0),this._menuIndex=e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hasFocusableItems",{get:function(){return void 0!==this.menuItems.find(function(e){return e.isFocusable()})},enumerable:!0,configurable:!0}),e.prototype.ngAfterContentInit=function(){var e=this;this.dropdownComponent&&(this.dropdownComponent.menuId=this.dropdownMenuId,this.dropdownComponent.messageStream.takeUntil(this.ngUnsubscribe).subscribe(function(t){switch(t.type){case p.SkyDropdownMessageType.Open:case p.SkyDropdownMessageType.Close:e.reset();break;case p.SkyDropdownMessageType.FocusFirstItem:e.focusFirstItem();break;case p.SkyDropdownMessageType.FocusNextItem:e.focusNextItem();break;case p.SkyDropdownMessageType.FocusPreviousItem:e.focusPreviousItem()}}),this.menuChanges.takeUntil(this.ngUnsubscribe).subscribe(function(t){t.selectedItem&&e.dropdownComponent.messageStream.next({type:p.SkyDropdownMessageType.Close}),t.items&&e.dropdownComponent.messageStream.next({type:p.SkyDropdownMessageType.Reposition})})),this.menuItems.changes.takeUntil(this.ngUnsubscribe).subscribe(function(t){e.reset(),e.menuChanges.emit({items:t.toArray()})})},e.prototype.ngOnDestroy=function(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()},e.prototype.onClick=function(e){var t=this,o=this.menuItems.find(function(o,n){var r=o.elementRef.nativeElement.contains(e.target);return r&&(t.menuIndex=n,t.menuChanges.next({activeIndex:t.menuIndex})),r});o&&this.menuChanges.next({selectedItem:o})},e.prototype.onKeyDown=function(e){var t=e.key.toLowerCase();"arrowdown"!==t&&"down"!==t||(this.focusNextItem(),e.preventDefault()),"arrowup"!==t&&"up"!==t||(this.focusPreviousItem(),e.preventDefault())},e.prototype.focusFirstItem=function(){if(this.hasFocusableItems){this.menuIndex=0;var e=this.getItemByIndex(this.menuIndex);e&&e.isFocusable()?this.focusItem(e):this.focusNextItem()}},e.prototype.focusPreviousItem=function(){if(this.hasFocusableItems){this.menuIndex--;var e=this.getItemByIndex(this.menuIndex);e&&e.isFocusable()?this.focusItem(e):this.focusPreviousItem()}},e.prototype.focusNextItem=function(){if(this.hasFocusableItems){this.menuIndex++;var e=this.getItemByIndex(this.menuIndex);e&&e.isFocusable()?this.focusItem(e):this.focusNextItem()}},e.prototype.reset=function(){this._menuIndex=-1,this.resetItemsActiveState(),this.changeDetector.markForCheck()},e.prototype.resetItemsActiveState=function(){this.menuItems.forEach(function(e){e.resetState()})},e.prototype.focusItem=function(e){this.resetItemsActiveState(),e.focusElement(this.useNativeFocus),this.menuChanges.emit({activeIndex:this.menuIndex})},e.prototype.getItemByIndex=function(e){return this.menuItems.find(function(t,o){return o===e})},n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"ariaRole",void 0),n.__decorate([r.Input(),n.__metadata("design:type",String)],e.prototype,"ariaLabelledBy",void 0),n.__decorate([r.Input(),n.__metadata("design:type",Object)],e.prototype,"useNativeFocus",void 0),n.__decorate([r.Output(),n.__metadata("design:type",Object)],e.prototype,"menuChanges",void 0),n.__decorate([r.ContentChildren(a.SkyDropdownItemComponent),n.__metadata("design:type",r.QueryList)],e.prototype,"menuItems",void 0),n.__decorate([r.HostListener("click",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[MouseEvent]),n.__metadata("design:returntype",void 0)],e.prototype,"onClick",null),n.__decorate([r.HostListener("keydown",["$event"]),n.__metadata("design:type",Function),n.__metadata("design:paramtypes",[KeyboardEvent]),n.__metadata("design:returntype",void 0)],e.prototype,"onKeyDown",null),e=n.__decorate([r.Component({selector:"sky-dropdown-menu",template:'<div\n class="sky-dropdown-menu"\n [attr.role]="ariaRole"\n [attr.aria-labelledby]="ariaLabelledBy"\n [id]="dropdownMenuId">\n <ng-content>\n </ng-content>\n</div>\n',styles:[".sky-dropdown-menu{display:flex;flex-direction:column}.sky-dropdown-menu ::ng-deep button{overflow:hidden;text-overflow:ellipsis}\n"],changeDetection:r.ChangeDetectionStrategy.OnPush}),n.__param(1,r.Optional()),n.__metadata("design:paramtypes",[r.ChangeDetectorRef,s.SkyDropdownComponent])],e)}();t.SkyDropdownMenuComponent=d},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o(0).__exportStar(o(22),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0);n.__exportStar(o(23),t),n.__exportStar(o(10),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0);n.__exportStar(o(5),t),n.__exportStar(o(8),t),n.__exportStar(o(20),t),n.__exportStar(o(32),t),n.__exportStar(o(7),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o(0).__exportStar(o(11),t)},function(e,t){e.exports=c},function(e,t){e.exports=d},function(e,t){e.exports=u},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),o(0).__exportStar(o(19),t)},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=o(30),s=function(){function e(){this.resources={"EN-US":{skyux_dropdown_context_menu_default_label:"Context menu",skyux_popover_close:"Close popover"}}}return e.prototype.getString=function(e,t){return i.getStringForLocale(this.resources,e.locale,t)},e=n.__decorate([r.Injectable()],e)}();t.SkyPopoversResourcesProvider=s},function(e,t){e.exports=l},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e[e.Open=0]="Open",e[e.Close=1]="Close",e[e.FocusTriggerButton=2]="FocusTriggerButton",e[e.FocusNextItem=3]="FocusNextItem",e[e.FocusPreviousItem=4]="FocusPreviousItem",e[e.Reposition=5]="Reposition",e[e.FocusFirstItem=6]="FocusFirstItem"}(t.SkyDropdownMessageType||(t.SkyDropdownMessageType={}))},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(17),i=o(1),s=o(2),a=o(18),p=o(16),c=o(19),d=o(33),u=o(8),l=o(20),y=o(5),f=function(){function e(){}return e=n.__decorate([i.NgModule({declarations:[d.SkyDropdownButtonComponent,y.SkyDropdownComponent,u.SkyDropdownItemComponent,l.SkyDropdownMenuComponent],imports:[r.CommonModule,a.SkyIconModule,p.SkyPopoverModule,c.SkyPopoversResourcesModule],exports:[d.SkyDropdownButtonComponent,y.SkyDropdownComponent,u.SkyDropdownItemComponent,l.SkyDropdownMenuComponent],providers:[s.SkyWindowRefService]})],e)}();t.SkyDropdownModule=f},function(e,t,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=o(0),r=o(1),i=function(){function e(){}return e=n.__decorate([r.Component({selector:"sky-dropdown-button",template:"<ng-content></ng-content>\n"})],e)}();t.SkyDropdownButtonComponent=i}])}); |
@@ -1,17 +0,9 @@ | ||
# 3.2.0-alpha.3 (2019-06-21) | ||
# 3.2.0 (2019-08-14) | ||
- Built library against the `fix-umd-modules` branch in Builder to confirm new AoT implementation for UMD bundles. | ||
- Added support for anchor elements in the dropdown menu component. [#28](https://github.com/blackbaud/skyux-popovers/pull/28) | ||
# 3.2.0-alpha.2 (2019-06-20) | ||
# 3.1.1 (2019-06-21) | ||
- Built library against `@skyux-sdk/builder@3.6.7` to verify existing implementation of AoT does not work. | ||
- Updated development dependencies to support `@skyux-sdk/builder@3.7.0`, which addresses problems with the UMD library bundle. [#17](https://github.com/blackbaud/skyux-popovers/pull/17) | ||
# 3.2.0-alpha.1 (2019-06-20) | ||
- Fixed `SkyDropdownModule` to properly import `SkyPopoversResourcesModule`. | ||
# 3.2.0-alpha.0 (2019-06-20) | ||
- Built library against the `fix-umd-modules` branch in Builder to try out a new AoT implementation. | ||
# 3.1.0 (2019-06-20) | ||
@@ -18,0 +10,0 @@ |
@@ -1,10 +0,11 @@ | ||
import { AfterViewInit, ChangeDetectorRef, ElementRef } from '@angular/core'; | ||
import { AfterViewInit, ChangeDetectorRef, ElementRef, Renderer2 } from '@angular/core'; | ||
export declare class SkyDropdownItemComponent implements AfterViewInit { | ||
elementRef: ElementRef; | ||
private changeDetector; | ||
private renderer; | ||
ariaRole: string; | ||
readonly buttonElement: HTMLButtonElement; | ||
isActive: boolean; | ||
isDisabled: boolean; | ||
buttonElement: HTMLButtonElement; | ||
constructor(elementRef: ElementRef, changeDetector: ChangeDetectorRef); | ||
constructor(elementRef: ElementRef, changeDetector: ChangeDetectorRef, renderer: Renderer2); | ||
ngAfterViewInit(): void; | ||
@@ -11,0 +12,0 @@ focusElement(enableNativeFocus: boolean): void; |
@@ -5,7 +5,8 @@ /** | ||
*/ | ||
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input } from '@angular/core'; | ||
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Input, Renderer2 } from '@angular/core'; | ||
var SkyDropdownItemComponent = /** @class */ (function () { | ||
function SkyDropdownItemComponent(elementRef, changeDetector) { | ||
function SkyDropdownItemComponent(elementRef, changeDetector, renderer) { | ||
this.elementRef = elementRef; | ||
this.changeDetector = changeDetector; | ||
this.renderer = renderer; | ||
this.ariaRole = 'menuitem'; | ||
@@ -15,2 +16,12 @@ this.isActive = false; | ||
} | ||
Object.defineProperty(SkyDropdownItemComponent.prototype, "buttonElement", { | ||
get: /** | ||
* @return {?} | ||
*/ | ||
function () { | ||
return this.elementRef.nativeElement.querySelector('button,a'); | ||
}, | ||
enumerable: true, | ||
configurable: true | ||
}); | ||
/** | ||
@@ -23,4 +34,10 @@ * @return {?} | ||
function () { | ||
this.buttonElement = this.elementRef.nativeElement.querySelector('button'); | ||
this.isDisabled = !this.isFocusable(); | ||
// Make sure anchor elements are tab-able. | ||
/** @type {?} */ | ||
var buttonElement = this.buttonElement; | ||
/* istanbul ignore else */ | ||
if (buttonElement) { | ||
this.renderer.setAttribute(buttonElement, 'tabIndex', '0'); | ||
} | ||
this.changeDetector.detectChanges(); | ||
@@ -72,3 +89,3 @@ }; | ||
changeDetection: ChangeDetectionStrategy.OnPush, | ||
styles: [".sky-dropdown-item{background-color:transparent;border:none;display:block;margin:4px;min-width:160px;text-align:left;transition:background-color 150ms}.sky-dropdown-item.sky-dropdown-item-active,.sky-dropdown-item:hover{background-color:#eeeeef}.sky-dropdown-item.sky-dropdown-item-disabled{cursor:default}.sky-dropdown-item.sky-dropdown-item-disabled:hover{background-color:transparent}.sky-dropdown-item ::ng-deep>button{background-color:transparent;border:none;color:#212327;cursor:pointer;display:block;padding:3px 20px;text-align:left;width:100%}.sky-dropdown-item ::ng-deep>button[disabled]{color:#686c73}.sky-dropdown-item ::ng-deep>button[disabled]:hover{cursor:default}\n"] | ||
styles: [".sky-dropdown-item{background-color:transparent;border:none;display:block;margin:4px;min-width:160px;text-align:left;transition:background-color 150ms}.sky-dropdown-item.sky-dropdown-item-active,.sky-dropdown-item:hover{background-color:#eeeeef}.sky-dropdown-item.sky-dropdown-item-disabled{cursor:default}.sky-dropdown-item.sky-dropdown-item-disabled:hover{background-color:transparent}.sky-dropdown-item ::ng-deep>a,.sky-dropdown-item ::ng-deep>button{background-color:transparent;border:none;color:#212327;cursor:pointer;display:block;padding:3px 20px;text-align:left;width:100%}.sky-dropdown-item ::ng-deep>a:hover,.sky-dropdown-item ::ng-deep>button:hover{text-decoration:none}.sky-dropdown-item ::ng-deep>a[disabled],.sky-dropdown-item ::ng-deep>button[disabled]{color:#686c73}.sky-dropdown-item ::ng-deep>a[disabled]:hover,.sky-dropdown-item ::ng-deep>button[disabled]:hover{cursor:default}\n"] | ||
}] } | ||
@@ -79,3 +96,4 @@ ]; | ||
{ type: ElementRef }, | ||
{ type: ChangeDetectorRef } | ||
{ type: ChangeDetectorRef }, | ||
{ type: Renderer2 } | ||
]; }; | ||
@@ -96,4 +114,2 @@ SkyDropdownItemComponent.propDecorators = { | ||
/** @type {?} */ | ||
SkyDropdownItemComponent.prototype.buttonElement; | ||
/** @type {?} */ | ||
SkyDropdownItemComponent.prototype.elementRef; | ||
@@ -105,3 +121,8 @@ /** | ||
SkyDropdownItemComponent.prototype.changeDetector; | ||
/** | ||
* @type {?} | ||
* @private | ||
*/ | ||
SkyDropdownItemComponent.prototype.renderer; | ||
} | ||
//# sourceMappingURL=dropdown-item.component.js.map |
@@ -1,1 +0,1 @@ | ||
[{"__symbolic":"module","version":4,"metadata":{"SkyDropdownItemComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"sky-dropdown-item","template":"<div\n class=\"sky-dropdown-item\"\n [attr.role]=\"ariaRole\"\n [ngClass]=\"{\n 'sky-dropdown-item-active': isActive,\n 'sky-dropdown-item-disabled': isDisabled\n }\">\n <ng-content>\n </ng-content>\n</div>\n","styles":[".sky-dropdown-item{background-color:transparent;border:none;display:block;margin:4px;min-width:160px;text-align:left;transition:background-color 150ms}.sky-dropdown-item.sky-dropdown-item-active,.sky-dropdown-item:hover{background-color:#eeeeef}.sky-dropdown-item.sky-dropdown-item-disabled{cursor:default}.sky-dropdown-item.sky-dropdown-item-disabled:hover{background-color:transparent}.sky-dropdown-item ::ng-deep>button{background-color:transparent;border:none;color:#212327;cursor:pointer;display:block;padding:3px 20px;text-align:left;width:100%}.sky-dropdown-item ::ng-deep>button[disabled]{color:#686c73}.sky-dropdown-item ::ng-deep>button[disabled]:hover{cursor:default}\n"],"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":24,"character":19},"member":"OnPush"}}]}],"members":{"ariaRole":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":35,"character":23},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":36,"character":28}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"focusElement":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"resetState":[{"__symbolic":"method"}]}}}}] | ||
[{"__symbolic":"module","version":4,"metadata":{"SkyDropdownItemComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"sky-dropdown-item","template":"<div\n class=\"sky-dropdown-item\"\n [attr.role]=\"ariaRole\"\n [ngClass]=\"{\n 'sky-dropdown-item-active': isActive,\n 'sky-dropdown-item-disabled': isDisabled\n }\">\n <ng-content>\n </ng-content>\n</div>\n","styles":[".sky-dropdown-item{background-color:transparent;border:none;display:block;margin:4px;min-width:160px;text-align:left;transition:background-color 150ms}.sky-dropdown-item.sky-dropdown-item-active,.sky-dropdown-item:hover{background-color:#eeeeef}.sky-dropdown-item.sky-dropdown-item-disabled{cursor:default}.sky-dropdown-item.sky-dropdown-item-disabled:hover{background-color:transparent}.sky-dropdown-item ::ng-deep>a,.sky-dropdown-item ::ng-deep>button{background-color:transparent;border:none;color:#212327;cursor:pointer;display:block;padding:3px 20px;text-align:left;width:100%}.sky-dropdown-item ::ng-deep>a:hover,.sky-dropdown-item ::ng-deep>button:hover{text-decoration:none}.sky-dropdown-item ::ng-deep>a[disabled],.sky-dropdown-item ::ng-deep>button[disabled]{color:#686c73}.sky-dropdown-item ::ng-deep>a[disabled]:hover,.sky-dropdown-item ::ng-deep>button[disabled]:hover{cursor:default}\n"],"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":25,"character":19},"member":"OnPush"}}]}],"members":{"ariaRole":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":39,"character":23},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":40,"character":28},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":41,"character":22}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"focusElement":[{"__symbolic":"method"}],"isFocusable":[{"__symbolic":"method"}],"resetState":[{"__symbolic":"method"}]}}}}] |
{ | ||
"name": "@skyux/popovers", | ||
"version": "3.2.0-alpha.3", | ||
"version": "3.2.0", | ||
"description": "SKY UX Popovers", | ||
@@ -46,19 +46,18 @@ "main": "bundles/bundle.umd.js", | ||
"@angular/router": "7.2.15", | ||
"@blackbaud/auth-client": "2.15.1", | ||
"@pact-foundation/pact": "8.2.6", | ||
"@pact-foundation/pact-web": "7.4.0", | ||
"@skyux-sdk/builder": "blackbaud/skyux-sdk-builder#fix-umd-modules", | ||
"@blackbaud/auth-client": "2.17.2", | ||
"@pact-foundation/pact": "9.1.0", | ||
"@pact-foundation/pact-web": "9.1.0", | ||
"@skyux-sdk/builder": "3.8.1", | ||
"@skyux-sdk/builder-plugin-skyux": "1.0.0", | ||
"@skyux-sdk/e2e": "3.1.2", | ||
"@skyux-sdk/pact": "3.2.1", | ||
"@skyux-sdk/pact": "3.3.0", | ||
"@skyux-sdk/testing": "3.1.0", | ||
"@skyux/assets": "3.0.0", | ||
"@skyux/config": "3.5.0", | ||
"@skyux/core": "3.6.0", | ||
"@skyux/http": "3.4.1", | ||
"@skyux/i18n": "3.6.1", | ||
"@skyux/indicators": "3.0.3", | ||
"@skyux/modals": "3.0.4", | ||
"@skyux/assets": "3.1.0", | ||
"@skyux/config": "3.5.1", | ||
"@skyux/core": "3.6.1", | ||
"@skyux/http": "3.6.0", | ||
"@skyux/i18n": "3.7.1", | ||
"@skyux/indicators": "3.1.0", | ||
"@skyux/modals": "3.0.7", | ||
"@skyux/omnibar-interop": "3.1.0", | ||
"@skyux/popovers": "3.0.0", | ||
"@skyux/router": "3.1.1", | ||
@@ -65,0 +64,0 @@ "@skyux/theme": "3.7.0", |
Sorry, the diff of this file is not supported yet
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
276772
36
2867
1