New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@madbrothers/ngx-mad-autocomplete

Package Overview
Dependencies
Maintainers
2
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@madbrothers/ngx-mad-autocomplete - npm Package Compare versions

Comparing version 1.0.6 to 1.0.7

168

bundles/madbrothers-ngx-mad-autocomplete.umd.js
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/forms')) :
typeof define === 'function' && define.amd ? define(['exports', '@angular/core', '@angular/common', '@angular/forms'], factory) :
(factory((global.madbrothers = global.madbrothers || {}, global.madbrothers['ngx-mad-autocomplete'] = {}),global.ng.core,global.ng.common,global.ng.forms));
}(this, (function (exports,core,common,forms) { 'use strict';
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/forms'), require('@madbrothers/ngx-mad-scrollbar')) :
typeof define === 'function' && define.amd ? define('@madbrothers/ngx-mad-autocomplete', ['exports', '@angular/core', '@angular/common', '@angular/forms', '@madbrothers/ngx-mad-scrollbar'], factory) :
(factory((global.madbrothers = global.madbrothers || {}, global.madbrothers['ngx-mad-autocomplete'] = {}),global.ng.core,global.ng.common,global.ng.forms,global.ngxMadScrollbar));
}(this, (function (exports,core,common,forms,ngxMadScrollbar) { 'use strict';

@@ -19,2 +19,12 @@ /*! *****************************************************************************

***************************************************************************** */
/* global Reflect, Promise */
function __values(o) {

@@ -98,126 +108,2 @@ var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0;

};
var Column = /** @class */ (function () {
function Column() {
this.filterType = 'text';
this.exportable = true;
this.resizable = true;
this.sortFunction = new core.EventEmitter();
}
Column.prototype.ngAfterContentInit = function () {
var _this = this;
this.templates.forEach(function (item) {
switch (item.getType()) {
case 'header':
_this.headerTemplate = item.template;
break;
case 'body':
_this.bodyTemplate = item.template;
break;
case 'footer':
_this.footerTemplate = item.template;
break;
case 'filter':
_this.filterTemplate = item.template;
break;
case 'editor':
_this.editorTemplate = item.template;
break;
default:
_this.bodyTemplate = item.template;
break;
}
});
};
return Column;
}());
Column.decorators = [
{ type: core.Component, args: [{
selector: 'p-column',
template: ''
},] },
];
Column.ctorParameters = function () { return []; };
Column.propDecorators = {
"field": [{ type: core.Input },],
"colId": [{ type: core.Input },],
"sortField": [{ type: core.Input },],
"filterField": [{ type: core.Input },],
"header": [{ type: core.Input },],
"footer": [{ type: core.Input },],
"sortable": [{ type: core.Input },],
"editable": [{ type: core.Input },],
"filter": [{ type: core.Input },],
"filterMatchMode": [{ type: core.Input },],
"filterType": [{ type: core.Input },],
"excludeGlobalFilter": [{ type: core.Input },],
"rowspan": [{ type: core.Input },],
"colspan": [{ type: core.Input },],
"scope": [{ type: core.Input },],
"style": [{ type: core.Input },],
"styleClass": [{ type: core.Input },],
"exportable": [{ type: core.Input },],
"headerStyle": [{ type: core.Input },],
"headerStyleClass": [{ type: core.Input },],
"bodyStyle": [{ type: core.Input },],
"bodyStyleClass": [{ type: core.Input },],
"footerStyle": [{ type: core.Input },],
"footerStyleClass": [{ type: core.Input },],
"hidden": [{ type: core.Input },],
"expander": [{ type: core.Input },],
"selectionMode": [{ type: core.Input },],
"filterPlaceholder": [{ type: core.Input },],
"filterMaxlength": [{ type: core.Input },],
"frozen": [{ type: core.Input },],
"resizable": [{ type: core.Input },],
"sortFunction": [{ type: core.Output },],
"templates": [{ type: core.ContentChildren, args: [PrimeTemplate,] },],
"template": [{ type: core.ContentChild, args: [core.TemplateRef,] },],
};
var Row = /** @class */ (function () {
function Row() {
}
return Row;
}());
Row.decorators = [
{ type: core.Component, args: [{
selector: 'p-row',
template: ""
},] },
];
Row.ctorParameters = function () { return []; };
Row.propDecorators = {
"columns": [{ type: core.ContentChildren, args: [Column,] },],
};
var HeaderColumnGroup = /** @class */ (function () {
function HeaderColumnGroup() {
}
return HeaderColumnGroup;
}());
HeaderColumnGroup.decorators = [
{ type: core.Component, args: [{
selector: 'p-headerColumnGroup',
template: ""
},] },
];
HeaderColumnGroup.ctorParameters = function () { return []; };
HeaderColumnGroup.propDecorators = {
"frozen": [{ type: core.Input },],
"rows": [{ type: core.ContentChildren, args: [Row,] },],
};
var FooterColumnGroup = /** @class */ (function () {
function FooterColumnGroup() {
}
return FooterColumnGroup;
}());
FooterColumnGroup.decorators = [
{ type: core.Component, args: [{
selector: 'p-footerColumnGroup',
template: ""
},] },
];
FooterColumnGroup.ctorParameters = function () { return []; };
FooterColumnGroup.propDecorators = {
"frozen": [{ type: core.Input },],
"rows": [{ type: core.ContentChildren, args: [Row,] },],
};
var SharedModule = /** @class */ (function () {

@@ -231,4 +117,4 @@ function SharedModule() {

imports: [common.CommonModule],
exports: [Header, Footer, Column, PrimeTemplate, Row, HeaderColumnGroup, FooterColumnGroup],
declarations: [Header, Footer, Column, PrimeTemplate, Row, HeaderColumnGroup, FooterColumnGroup]
exports: [Header, Footer, PrimeTemplate],
declarations: [Header, Footer, PrimeTemplate]
},] },

@@ -838,2 +724,3 @@ ];

this.delay = 300;
this.customScrollBar = false;
this.appendTo = 'body';

@@ -1235,3 +1122,3 @@ this.autoHighlight = true;

}
else {
else if (!this.selectItem) {
this.createNew.emit(event.target.value.trim());

@@ -1329,3 +1216,3 @@ }

selector: 'mad-autocomplete',
template: "<span [ngClass]=\"{'autocomplete':!multiple,'autocomplete--dd':dropdown,'autocomplete-multiple':multiple}\"\n\t\t\t[ngStyle]=\"style\"\n\t\t\t[class]=\"styleClass\"\n>\n\t<span *ngIf=\"!multiple\" class=\"form-control autocomplete__pseudo\">\n\t\t{{ highlightOptionValue }}\n\t</span>\n\t<input\n\t\t#in\n\t\t*ngIf=\"!multiple\"\n\t\t[attr.type]=\"type\"\n\t\t[attr.id]=\"inputId\"\n\t\t[ngStyle]=\"inputStyle\"\n\t\t[class]=\"inputStyleClass\"\n\t\tautocomplete=\"off\"\n\t\t[attr.required]=\"required\"\n\t\t[ngClass]=\"{'form-control autocomplete__input': true, 'autocomplete__input--active': panelVisible}\"\n\t\t[value]=\"inputFieldValue\"\n\t\t(click)=\"onInputClick($event)\"\n\t\t(input)=\"onInput($event)\"\n\t\t(keydown)=\"onKeydown($event)\"\n\t\t(keyup)=\"onKeyup($event)\"\n\t\t(focus)=\"onInputFocus($event)\"\n\t\t(blur)=\"onInputBlur($event)\"\n\t\t(change)=\"onInputChange($event)\"\n\t\t[attr.placeholder]=\"placeholder\"\n\t\t[attr.size]=\"size\" [attr.maxlength]=\"maxlength\"\n\t\t[attr.tabindex]=\"tabindex\"\n\t\t[readonly]=\"readonly\"\n\t\t[disabled]=\"disabled\"\n\t/>\n <div\n\t\t#multiContainer\n\t\t*ngIf=\"multiple\"\n\t\tclass=\"autocomplete-multiple__container\"\n\t\t[ngClass]=\"{'ui-state-disabled':disabled,'ui-state-focus':focus}\"\n\t\t(click)=\"multiIn.focus()\">\n\t\t\t<div\n\t\t\t\t#token\n\t\t\t\t*ngFor=\"let val of value\"\n\t\t\t\tclass=\"autocomplete-multiple__token autocomplete-multiple__token--added\"\n\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"autocomplete-multiple__token-icon icon-x\"\n\t\t\t\t\t\t(click)=\"removeItem(token)\"\n\t\t\t\t\t\t*ngIf=\"!disabled\"\n\t\t\t\t\t></span>\n\t\t\t\t\t<span *ngIf=\"!selectedItemTemplate\" class=\"form-control-plaintext\">{{field ? objectUtils.resolveFieldData(val, field): val}}</span>\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"selectedItemTemplate; context: {$implicit: val}\"></ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"autocomplete-multiple__token\">\n\t\t\t\t<span class=\"form-control-plaintext autocomplete-multiple__pseudo\">\n\t\t\t\t\t{{ highlightOptionValue || multipleValue || placeholder}}\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\t#multiIn\n\t\t\t\t\t[attr.type]=\"type\"\n\t\t\t\t\t[attr.id]=\"inputId\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[attr.placeholder]=\"placeholder\"\n\t\t\t\t\t[attr.tabindex]=\"tabindex\"\n\t\t\t\t\t(input)=\"onInput($event)\"\n\t\t\t\t\t(click)=\"onInputClick($event)\"\n\t\t\t\t\t(keydown)=\"onKeydown($event)\"\n\t\t\t\t\t(keyup)=\"onKeyup($event)\"\n\t\t\t\t\t(focus)=\"onInputFocus($event)\"\n\t\t\t\t\t(blur)=\"onInputBlur($event)\"\n\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\t[ngStyle]=\"inputStyle\"\n\t\t\t\t\t[class]=\"inputStyleClass\"\n\t\t\t\t\t[ngClass]=\"'form-control-plaintext autocomplete-multiple__input'\"\n\t\t\t\t/>\n\t\t\t\t<i *ngIf=\"loading\" class=\"autocomplete__loader icon-loader\"></i>\n\t\t\t\t<button\n\t\t\t\t\t#ddBtn\n\t\t\t\t\t*ngIf=\"dropdown\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"autocomplete-multiple__button\"\n\t\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t\t\t\t}\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t(click)=\"handleDropdownClick($event)\">\n\t\t\t\t</button>\n\t\t\t</div>\n\t</div>\n <i *ngIf=\"loading && !multiple\" class=\"autocomplete__loader icon-loader\"></i>\n <button\n\t\t#ddBtn\n\t\t*ngIf=\"dropdown && !multiple\"\n\t\ttype=\"button\"\n\t\tclass=\"autocomplete__button\"\n\t\t[ngClass]=\"{\n\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t}\"\n\t\t[disabled]=\"disabled\"\n\t\t(click)=\"handleDropdownClick($event)\">\n\t</button>\n\t<div\n\t\t#panel\n\t\tclass=\"autocomplete__panel\"\n\t\t[style.display]=\"panelVisible ? 'block' : 'none'\"\n\t\t[style.width]=\"appendTo ? 'auto' : '100%'\"\n\t\t[style.max-height]=\"scrollHeight\"\n\t>\n\t\t<div\n\t\t\tclass=\"autocomplete__panel-list\"\n\t\t\t*ngIf=\"panelVisible\"\n\t\t>\n\t\t\t\t<div\n\t\t\t\t\t*ngFor=\"let option of suggestions; let idx = index\"\n\t\t\t\t\t[ngClass]=\"{'form-control-plaintext autocomplete__panel-item':true,'bg-primary text-white':(highlightOption==option)}\"\n\t\t\t\t\t(mouseenter)=\"highlightOption=option\"\n\t\t\t\t\t(mouseleave)=\"highlightOption=null\"\n\t\t\t\t\t(click)=\"selectItem(option)\"\n\t\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!itemTemplate\"\n\t\t\t\t\t>{{field ? objectUtils.resolveFieldData(option, field) : option}}\n\t\t\t\t\t</span>\n\t\t\t\t\t<ng-container\n\t\t\t\t\t\t*ngTemplateOutlet=\"itemTemplate; context: {$implicit: option, index: idx}\">\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"noResults && emptyMessage\" class=\"autocomplete__panel-item\">{{emptyMessage}}</div>\n\t\t</div>\n\t</div>\n</span>\n",
template: "<div [ngClass]=\"{'autocomplete':!multiple,'autocomplete--dd':dropdown,'autocomplete-multiple':multiple}\"\n\t\t\t[ngStyle]=\"style\"\n\t\t\t[class]=\"styleClass\"\n>\n\t<span *ngIf=\"!multiple\" class=\"form-control autocomplete__pseudo\">\n\t\t{{ highlightOptionValue }}\n\t</span>\n\n\n\t<input\n\t\t#in\n\t\t*ngIf=\"!multiple\"\n\t\t[attr.type]=\"type\"\n\t\t[attr.id]=\"inputId\"\n\t\t[ngStyle]=\"inputStyle\"\n\t\t[class]=\"inputStyleClass\"\n\t\tautocomplete=\"off\"\n\t\t[attr.required]=\"required\"\n\t\t[ngClass]=\"{'form-control autocomplete__input': true, 'autocomplete__input--active': panelVisible}\"\n\t\t[value]=\"inputFieldValue\"\n\t\t(click)=\"onInputClick($event)\"\n\t\t(input)=\"onInput($event)\"\n\t\t(keydown)=\"onKeydown($event)\"\n\t\t(keyup)=\"onKeyup($event)\"\n\t\t(focus)=\"onInputFocus($event)\"\n\t\t(blur)=\"onInputBlur($event)\"\n\t\t(change)=\"onInputChange($event)\"\n\t\t[attr.placeholder]=\"placeholder\"\n\t\t[attr.size]=\"size\" [attr.maxlength]=\"maxlength\"\n\t\t[attr.tabindex]=\"tabindex\"\n\t\t[readonly]=\"readonly\"\n\t\t[disabled]=\"disabled\"\n\t/>\n\n\n\n <div\n\t\t#multiContainer\n\t\t*ngIf=\"multiple\"\n\t\tclass=\"autocomplete-multiple__container\"\n\t\t[ngClass]=\"{'ui-state-disabled':disabled,'ui-state-focus':focus}\"\n\t\t(click)=\"multiIn.focus()\">\n\t\t\t<div\n\t\t\t\t#token\n\t\t\t\t*ngFor=\"let val of value\"\n\t\t\t\tclass=\"autocomplete-multiple__token autocomplete-multiple__token--added\"\n\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"autocomplete-multiple__token-icon icon-x\"\n\t\t\t\t\t\t(click)=\"removeItem(token)\"\n\t\t\t\t\t\t*ngIf=\"!disabled\"\n\t\t\t\t\t></span>\n\t\t\t\t\t<span *ngIf=\"!selectedItemTemplate\" class=\"form-control-plaintext\">{{field ? objectUtils.resolveFieldData(val, field): val}}</span>\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"selectedItemTemplate; context: {$implicit: val}\"></ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"autocomplete-multiple__token\">\n\t\t\t\t<span class=\"form-control-plaintext autocomplete-multiple__pseudo\">\n\t\t\t\t\t{{ highlightOptionValue || multipleValue || placeholder}}\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\t#multiIn\n\t\t\t\t\t[attr.type]=\"type\"\n\t\t\t\t\t[attr.id]=\"inputId\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[attr.placeholder]=\"placeholder\"\n\t\t\t\t\t[attr.tabindex]=\"tabindex\"\n\t\t\t\t\t(input)=\"onInput($event)\"\n\t\t\t\t\t(click)=\"onInputClick($event)\"\n\t\t\t\t\t(keydown)=\"onKeydown($event)\"\n\t\t\t\t\t(keyup)=\"onKeyup($event)\"\n\t\t\t\t\t(focus)=\"onInputFocus($event)\"\n\t\t\t\t\t(blur)=\"onInputBlur($event)\"\n\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\t[ngStyle]=\"inputStyle\"\n\t\t\t\t\t[class]=\"inputStyleClass\"\n\t\t\t\t\t[ngClass]=\"'form-control-plaintext autocomplete-multiple__input'\"\n\t\t\t\t/>\n\n\t\t\t\t<i *ngIf=\"loading\" class=\"autocomplete__loader icon-loader\"></i>\n\n\t\t\t\t<button\n\t\t\t\t\t#ddBtn\n\t\t\t\t\t*ngIf=\"dropdown\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"autocomplete-multiple__button\"\n\t\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t\t\t\t}\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t(click)=\"handleDropdownClick($event)\">\n\t\t\t\t</button>\n\t\t\t</div>\n\t</div>\n\n <i *ngIf=\"loading && !multiple\" class=\"autocomplete__loader icon-loader\"></i>\n\n <button\n\t\t#ddBtn\n\t\t*ngIf=\"dropdown && !multiple\"\n\t\ttype=\"button\"\n\t\tclass=\"autocomplete__button\"\n\t\t[ngClass]=\"{\n\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t}\"\n\t\t[disabled]=\"disabled\"\n\t\t(click)=\"handleDropdownClick($event)\">\n\t</button>\n\n\t<div\n\t\t#panel\n\t\tclass=\"autocomplete__panel\"\n\t\t[style.display]=\"panelVisible ? 'block' : 'none'\"\n\t\t[style.width]=\"appendTo ? 'auto' : '100%'\"\n\t\t[style.max-height]=\"scrollHeight\"\n\t>\n\t\t<mad-scrollbar [style]=\"{width: '100%'}\" [customScrollBar]=\"customScrollBar\">\n\t\t\t<div\n\t\t\t\tclass=\"autocomplete__panel-list\"\n\t\t\t\t*ngIf=\"panelVisible\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\t*ngFor=\"let option of suggestions; let idx = index\"\n\t\t\t\t\t[ngClass]=\"{'form-control-plaintext autocomplete__panel-item':true,'bg-primary text-white':(highlightOption==option)}\"\n\t\t\t\t\t(mouseenter)=\"highlightOption=option\"\n\t\t\t\t\t(mouseleave)=\"highlightOption=null\"\n\t\t\t\t\t(click)=\"selectItem(option)\"\n\t\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!itemTemplate\"\n\t\t\t\t\t>{{field ? objectUtils.resolveFieldData(option, field) : option}}\n\t\t\t\t\t</span>\n\t\t\t\t\t<ng-container\n\t\t\t\t\t\t*ngTemplateOutlet=\"itemTemplate; context: {$implicit: option, index: idx}\">\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"noResults && emptyMessage\" class=\"autocomplete__panel-item\">{{emptyMessage}}</div>\n\t\t\t</div>\n\t\t</mad-scrollbar>\n\t</div>\n</div>\n",
styles: [".autocomplete,.autocomplete-multiple{width:auto;zoom:1;cursor:pointer;-webkit-box-shadow:none;box-shadow:none;position:relative;display:block}.autocomplete__host--filled,.autocomplete__host--focus{border:10px solid red!important}.autocomplete-multiple__button,.autocomplete__button{height:100%;margin-right:0;position:absolute;top:0;right:0;bottom:0;font-size:1.5rem;padding:0;width:2rem;background:0 0;border:none;cursor:pointer;z-index:100}.autocomplete-multiple__button:focus,.autocomplete__button:focus{outline:0}.autocomplete-multiple__input,.autocomplete-multiple__pseudo,.autocomplete__input,.autocomplete__pseudo{position:relative;text-overflow:ellipsis;z-index:50;background:0 0}.autocomplete__input--active{border-radius:.25rem .25rem 0 0}.autocomplete__pseudo{position:absolute;bottom:0;top:0;left:0;right:0;opacity:.35;z-index:1}.autocomplete--dd .autocomplete-multiple__input,.autocomplete--dd .autocomplete-multiple__pseudo,.autocomplete--dd .autocomplete__input,.autocomplete--dd .autocomplete__pseudo{padding-right:1.5em}.autocomplete__panel{-webkit-box-shadow:inset 0 -1px 1px rgba(0,0,0,.4);box-shadow:inset 0 -1px 1px rgba(0,0,0,.4)}.autocomplete__panel-item{padding-left:.75rem;padding-right:.75rem}.autocomplete__loader{position:absolute;top:0;bottom:0;right:auto;left:101%;font-size:1.5rem;width:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.autocomplete__loader:before{-webkit-animation:1s infinite process;animation:1s infinite process}@-webkit-keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}@keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}.autocomplete--dd .autocomplete__loader{right:0;left:auto}.autocomplete-multiple{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.autocomplete-multiple__container{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.autocomplete-multiple__pseudo{white-space:nowrap;opacity:.35;z-index:5}.autocomplete-multiple__input{outline:0;position:absolute;top:0;bottom:0;left:0;right:0;z-index:10}.autocomplete-multiple__input:focus{outline:0}.autocomplete-multiple__token{border:0;outline:0;background-color:transparent;margin:0;padding:0 .5rem 0 0;-webkit-box-shadow:none;box-shadow:none;border-radius:0;position:relative}.autocomplete-multiple__token--added{padding:0 1.2rem 0 0;margin-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-multiple__token-icon{position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:1.2rem;font-size:.75rem;opacity:.5}.autocomplete-multiple__token-icon:hover{opacity:1}.autocomplete__panel{position:absolute;overflow:auto;background:#fff}"],

@@ -1350,2 +1237,3 @@ host: {

"delay": [{ type: core.Input },],
"customScrollBar": [{ type: core.Input },],
"style": [{ type: core.Input },],

@@ -1399,3 +1287,3 @@ "styleClass": [{ type: core.Input },],

{ type: core.NgModule, args: [{
imports: [common.CommonModule, SharedModule],
imports: [common.CommonModule, SharedModule, ngxMadScrollbar.MadScrollbarModule],
exports: [MadAutoComplete, SharedModule],

@@ -1408,14 +1296,10 @@ declarations: [MadAutoComplete]

exports.MadAutoCompleteModule = MadAutoCompleteModule;
exports.ɵd = Column;
exports.ɵb = Footer;
exports.ɵg = FooterColumnGroup;
exports.ɵa = Header;
exports.ɵf = HeaderColumnGroup;
exports.ɵc = PrimeTemplate;
exports.ɵe = Row;
exports.ɵh = SharedModule;
exports.ɵk = DomHandler;
exports.ɵi = AUTOCOMPLETE_VALUE_ACCESSOR;
exports.ɵj = MadAutoComplete;
exports.ɵl = ObjectUtils;
exports.ɵd = SharedModule;
exports.ɵg = DomHandler;
exports.ɵe = AUTOCOMPLETE_VALUE_ACCESSOR;
exports.ɵf = MadAutoComplete;
exports.ɵh = ObjectUtils;

@@ -1422,0 +1306,0 @@ Object.defineProperty(exports, '__esModule', { value: true });

2

bundles/madbrothers-ngx-mad-autocomplete.umd.min.js

@@ -1,2 +0,2 @@

!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms")):"function"==typeof define&&define.amd?define(["exports","@angular/core","@angular/common","@angular/forms"],e):e((t.madbrothers=t.madbrothers||{},t.madbrothers["ngx-mad-autocomplete"]={}),t.ng.core,t.ng.common,t.ng.forms)}(this,function(t,r,e,n){"use strict";function g(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function i(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var i,o,l=n.call(t),r=[];try{for(;(void 0===e||0<e--)&&!(i=l.next()).done;)r.push(i.value)}catch(s){o={error:s}}finally{try{i&&!i.done&&(n=l["return"])&&n.call(l)}finally{if(o)throw o.error}}return r}function l(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(i(arguments[e]));return t}var o=function(){};o.decorators=[{type:r.Component,args:[{selector:"p-header",template:"<ng-content></ng-content>"}]}],o.ctorParameters=function(){return[]};var s=function(){};s.decorators=[{type:r.Component,args:[{selector:"p-footer",template:"<ng-content></ng-content>"}]}],s.ctorParameters=function(){return[]};var a=function(){function t(t){this.template=t}return t.prototype.getType=function(){return this.name},t}();a.decorators=[{type:r.Directive,args:[{selector:"[pTemplate]",host:{}}]}],a.ctorParameters=function(){return[{type:r.TemplateRef}]},a.propDecorators={type:[{type:r.Input}],name:[{type:r.Input,args:["pTemplate"]}]};var p=function(){function t(){this.filterType="text",this.exportable=!0,this.resizable=!0,this.sortFunction=new r.EventEmitter}return t.prototype.ngAfterContentInit=function(){var e=this;this.templates.forEach(function(t){switch(t.getType()){case"header":e.headerTemplate=t.template;break;case"body":e.bodyTemplate=t.template;break;case"footer":e.footerTemplate=t.template;break;case"filter":e.filterTemplate=t.template;break;case"editor":e.editorTemplate=t.template;break;default:e.bodyTemplate=t.template}})},t}();p.decorators=[{type:r.Component,args:[{selector:"p-column",template:""}]}],p.ctorParameters=function(){return[]},p.propDecorators={field:[{type:r.Input}],colId:[{type:r.Input}],sortField:[{type:r.Input}],filterField:[{type:r.Input}],header:[{type:r.Input}],footer:[{type:r.Input}],sortable:[{type:r.Input}],editable:[{type:r.Input}],filter:[{type:r.Input}],filterMatchMode:[{type:r.Input}],filterType:[{type:r.Input}],excludeGlobalFilter:[{type:r.Input}],rowspan:[{type:r.Input}],colspan:[{type:r.Input}],scope:[{type:r.Input}],style:[{type:r.Input}],styleClass:[{type:r.Input}],exportable:[{type:r.Input}],headerStyle:[{type:r.Input}],headerStyleClass:[{type:r.Input}],bodyStyle:[{type:r.Input}],bodyStyleClass:[{type:r.Input}],footerStyle:[{type:r.Input}],footerStyleClass:[{type:r.Input}],hidden:[{type:r.Input}],expander:[{type:r.Input}],selectionMode:[{type:r.Input}],filterPlaceholder:[{type:r.Input}],filterMaxlength:[{type:r.Input}],frozen:[{type:r.Input}],resizable:[{type:r.Input}],sortFunction:[{type:r.Output}],templates:[{type:r.ContentChildren,args:[a]}],template:[{type:r.ContentChild,args:[r.TemplateRef]}]};var u=function(){};u.decorators=[{type:r.Component,args:[{selector:"p-row",template:""}]}],u.ctorParameters=function(){return[]},u.propDecorators={columns:[{type:r.ContentChildren,args:[p]}]};var c=function(){};c.decorators=[{type:r.Component,args:[{selector:"p-headerColumnGroup",template:""}]}],c.ctorParameters=function(){return[]},c.propDecorators={frozen:[{type:r.Input}],rows:[{type:r.ContentChildren,args:[u]}]};var d=function(){};d.decorators=[{type:r.Component,args:[{selector:"p-footerColumnGroup",template:""}]}],d.ctorParameters=function(){return[]},d.propDecorators={frozen:[{type:r.Input}],rows:[{type:r.ContentChildren,args:[u]}]};var h=function(){};h.decorators=[{type:r.NgModule,args:[{imports:[e.CommonModule],exports:[o,s,p,a,u,c,d],declarations:[o,s,p,a,u,c,d]}]}],h.ctorParameters=function(){return[]};var m=function(){function t(){this.calculatedScrollbarWidth=null}return t.prototype.addClass=function(t,e){t.classList?t.classList.add(e):t.className+=" "+e},t.prototype.addMultipleClasses=function(t,e){if(t.classList)for(var n=e.split(" "),i=0;i<n.length;i++)t.classList.add(n[i]);else for(n=e.split(" "),i=0;i<n.length;i++)t.className+=" "+n[i]},t.prototype.removeClass=function(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\b)"+e.split(" ").join("|")+"(\\b|$)","gi")," ")},t.prototype.hasClass=function(t,e){return t.classList?t.classList.contains(e):new RegExp("(^| )"+e+"( |$)","gi").test(t.className)},t.prototype.siblings=function(e){return Array.prototype.filter.call(e.parentNode.children,function(t){return t!==e})},t.prototype.find=function(t,e){return t.querySelectorAll(e)},t.prototype.findSingle=function(t,e){return t.querySelector(e)},t.prototype.index=function(t){for(var e=t.parentNode.childNodes,n=0,i=0;i<e.length;i++){if(e[i]==t)return n;1==e[i].nodeType&&n++}return-1},t.prototype.indexWithinGroup=function(t,e){for(var n=t.parentNode.childNodes,i=0,o=0;o<n.length;o++){if(n[o]==t)return i;n[o].attributes&&n[o].attributes[e]&&1==n[o].nodeType&&i++}return-1},t.prototype.relativePosition=function(t,e){var n,i,o=t.offsetParent?{width:t.offsetWidth,height:t.offsetHeight}:this.getHiddenElementDimensions(t),l=e.offsetHeight,r=e.offsetWidth,s=e.getBoundingClientRect(),a=(this.getWindowScrollTop(),this.getViewport());s.top+l+o.height>a.height?(n=-1*o.height,s.top+n<0&&(n=0)):n=l,i=s.left+o.width>a.width?r-o.width:0,t.style.top=n+"px",t.style.left=i+"px"},t.prototype.absolutePosition=function(t,e){var n,i,o=t.offsetParent?{width:t.offsetWidth,height:t.offsetHeight}:this.getHiddenElementDimensions(t),l=o.height,r=o.width,s=e.offsetHeight,a=e.offsetWidth,p=e.getBoundingClientRect(),u=this.getWindowScrollTop(),c=this.getWindowScrollLeft(),d=this.getViewport();p.top+s+l>d.height?(n=p.top+u-l)<0&&(n=0+u):n=s+p.top+u,i=p.left+a+r>d.width?p.left+c+a-r:p.left+c,t.style.top=n+"px",t.style.left=i+"px"},t.prototype.getHiddenElementOuterHeight=function(t){t.style.visibility="hidden",t.style.display="block";var e=t.offsetHeight;return t.style.display="none",t.style.visibility="visible",e},t.prototype.getHiddenElementOuterWidth=function(t){t.style.visibility="hidden",t.style.display="block";var e=t.offsetWidth;return t.style.display="none",t.style.visibility="visible",e},t.prototype.getHiddenElementDimensions=function(t){var e={};return t.style.visibility="hidden",t.style.display="block",e.width=t.offsetWidth,e.height=t.offsetHeight,t.style.display="none",t.style.visibility="visible",e},t.prototype.scrollInView=function(t,e){var n=getComputedStyle(t).getPropertyValue("borderTopWidth"),i=n?parseFloat(n):0,o=getComputedStyle(t).getPropertyValue("paddingTop"),l=o?parseFloat(o):0,r=t.getBoundingClientRect(),s=e.getBoundingClientRect().top+document.body.scrollTop-(r.top+document.body.scrollTop)-i-l,a=t.scrollTop,p=t.clientHeight,u=this.getOuterHeight(e);s<0?t.scrollTop=a+s:p<s+u&&(t.scrollTop=a+s-p+u)},t.prototype.fadeIn=function(t,e){t.style.opacity=0;var n=+new Date,i=0,o=function(){i=+t.style.opacity.replace(",",".")+((new Date).getTime()-n)/e,t.style.opacity=i,n=+new Date,+i<1&&(window.requestAnimationFrame&&requestAnimationFrame(o)||setTimeout(o,16))};o()},t.prototype.fadeOut=function(t,e){var n=1,i=50/e,o=setInterval(function(){(n-=i)<=0&&(n=0,clearInterval(o)),t.style.opacity=n},50)},t.prototype.getWindowScrollTop=function(){var t=document.documentElement;return(window.pageYOffset||t.scrollTop)-(t.clientTop||0)},t.prototype.getWindowScrollLeft=function(){var t=document.documentElement;return(window.pageXOffset||t.scrollLeft)-(t.clientLeft||0)},t.prototype.matches=function(t,e){var n=Element.prototype;return(n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector||function(t){return-1!==[].indexOf.call(document.querySelectorAll(t),this)}).call(t,e)},t.prototype.getOuterWidth=function(t,e){var n=t.offsetWidth;if(e){var i=getComputedStyle(t);n+=parseFloat(i.marginLeft)+parseFloat(i.marginRight)}return n},t.prototype.getHorizontalPadding=function(t){var e=getComputedStyle(t);return parseFloat(e.paddingLeft)+parseFloat(e.paddingRight)},t.prototype.getHorizontalMargin=function(t){var e=getComputedStyle(t);return parseFloat(e.marginLeft)+parseFloat(e.marginRight)},t.prototype.innerWidth=function(t){var e=t.offsetWidth,n=getComputedStyle(t);return e+=parseFloat(n.paddingLeft)+parseFloat(n.paddingRight)},t.prototype.width=function(t){var e=t.offsetWidth,n=getComputedStyle(t);return e-=parseFloat(n.paddingLeft)+parseFloat(n.paddingRight)},t.prototype.getInnerHeight=function(t){var e=t.offsetHeight,n=getComputedStyle(t);return e+=parseFloat(n.paddingTop)+parseFloat(n.paddingBottom)},t.prototype.getOuterHeight=function(t,e){var n=t.offsetHeight;if(e){var i=getComputedStyle(t);n+=parseFloat(i.marginTop)+parseFloat(i.marginBottom)}return n},t.prototype.getHeight=function(t){var e=t.offsetHeight,n=getComputedStyle(t);return e-=parseFloat(n.paddingTop)+parseFloat(n.paddingBottom)+parseFloat(n.borderTopWidth)+parseFloat(n.borderBottomWidth)},t.prototype.getWidth=function(t){var e=t.offsetWidth,n=getComputedStyle(t);return e-=parseFloat(n.paddingLeft)+parseFloat(n.paddingRight)+parseFloat(n.borderLeftWidth)+parseFloat(n.borderRightWidth)},t.prototype.getViewport=function(){var t=window,e=document,n=e.documentElement,i=e.getElementsByTagName("body")[0];return{width:t.innerWidth||n.clientWidth||i.clientWidth,height:t.innerHeight||n.clientHeight||i.clientHeight}},t.prototype.getOffset=function(t){var e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},t.prototype.getUserAgent=function(){return navigator.userAgent},t.prototype.isIE=function(){var t=window.navigator.userAgent;if(0<t.indexOf("MSIE "))return!0;if(0<t.indexOf("Trident/")){t.indexOf("rv:");return!0}return 0<t.indexOf("Edge/")},t.prototype.appendChild=function(t,e){if(this.isElement(e))e.appendChild(t);else{if(!e.el||!e.el.nativeElement)throw"Cannot append "+e+" to "+t;e.el.nativeElement.appendChild(t)}},t.prototype.removeChild=function(t,e){if(this.isElement(e))e.removeChild(t);else{if(!e.el||!e.el.nativeElement)throw"Cannot remove "+t+" from "+e;e.el.nativeElement.removeChild(t)}},t.prototype.isElement=function(t){return"object"==typeof HTMLElement?t instanceof HTMLElement:t&&"object"==typeof t&&null!==t&&1===t.nodeType&&"string"==typeof t.nodeName},t.prototype.calculateScrollbarWidth=function(){if(null!==this.calculatedScrollbarWidth)return this.calculatedScrollbarWidth;var t=document.createElement("div");t.className="ui-scrollbar-measure",document.body.appendChild(t);var e=t.offsetWidth-t.clientWidth;return document.body.removeChild(t),this.calculatedScrollbarWidth=e},t.prototype.invokeElementMethod=function(t,e,n){t[e].apply(t,n)},t.prototype.clearSelection=function(){if(window.getSelection)window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&0<window.getSelection().rangeCount&&0<window.getSelection().getRangeAt(0).getClientRects().length&&window.getSelection().removeAllRanges();else if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(t){}},t.prototype.getBrowser=function(){if(!this.browser){var t=this.resolveUserAgent();this.browser={},t.browser&&(this.browser[t.browser]=!0,this.browser.version=t.version),this.browser.chrome?this.browser.webkit=!0:this.browser.webkit&&(this.browser.safari=!0)}return this.browser},t.prototype.resolveUserAgent=function(){var t=navigator.userAgent.toLowerCase(),e=/(chrome)[ \/]([\w.]+)/.exec(t)||/(webkit)[ \/]([\w.]+)/.exec(t)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(t)||/(msie) ([\w.]+)/.exec(t)||t.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(t)||[];return{browser:e[1]||"",version:e[2]||"0"}},t}();m.zindex=1e3,m.decorators=[{type:r.Injectable}],m.ctorParameters=function(){return[]};var f=function(){function t(){}return t.prototype.equals=function(t,e,n){return n?this.resolveFieldData(t,n)===this.resolveFieldData(e,n):this.equalsByValue(t,e)},t.prototype.equalsByValue=function(t,e,n){if(null==t&&null==e)return!0;if(null==t||null==e)return!1;if(t==e)return!0;if("object"==typeof t&&"object"==typeof e){if(n){if(-1!==n.indexOf(t))return!1}else n=[];for(var i in n.push(t),t){if(t.hasOwnProperty(i)!==e.hasOwnProperty(i))return!1;switch(typeof t[i]){case"object":if(!this.equalsByValue(t[i],e[i],n))return!1;break;case"function":if("undefined"==typeof e[i]||"compare"!=i&&t[i].toString()!=e[i].toString())return!1;break;default:if(t[i]!=e[i])return!1}}for(var i in e)if("undefined"==typeof t[i])return!1;return delete t._$visited,!0}return!1},t.prototype.resolveFieldData=function(t,e){if("string"==typeof t)return t;if(t&&e){if(-1==e.indexOf("."))return t[e];for(var n=e.split("."),i=t,o=0,l=n.length;o<l;++o){if(null==i)return null;i=i[n[o]]}return i}return null},t.prototype.filter=function(t,e,n){var i,o,l,r,s=[];if(t)try{for(var a=g(t),p=a.next();!p.done;p=a.next()){var u=p.value;try{for(var c=g(e),d=c.next();!d.done;d=c.next()){var h=d.value;if(-1<String(this.resolveFieldData(u,h)).toLowerCase().indexOf(n.toLowerCase())){s.push(u);break}}}catch(m){l={error:m}}finally{try{d&&!d.done&&(r=c["return"])&&r.call(c)}finally{if(l)throw l.error}}}}catch(f){i={error:f}}finally{try{p&&!p.done&&(o=a["return"])&&o.call(a)}finally{if(i)throw i.error}}return s},t.prototype.reorderArray=function(t,e,n){var i;if(t&&e!==n){if(n>=t.length)for(i=n-t.length;1+i--;)t.push(undefined);t.splice(n,0,t.splice(e,1)[0])}},t.prototype.generateSelectItems=function(t,e){var n,i,o;if(t&&t.length){n=[];try{for(var l=g(t),r=l.next();!r.done;r=l.next()){var s=r.value;n.push({label:this.resolveFieldData(s,e),value:s})}}catch(a){i={error:a}}finally{try{r&&!r.done&&(o=l["return"])&&o.call(l)}finally{if(i)throw i.error}}}return n},t.prototype.insertIntoOrderedArray=function(t,e,n,i){if(0<n.length){for(var o=!1,l=0;l<n.length;l++){if(e<this.findIndexInList(n[l],i)){n.splice(l,0,t),o=!0;break}}o||n.push(t)}else n.push(t)},t.prototype.findIndexInList=function(t,e){var n=-1;if(e)for(var i=0;i<e.length;i++)if(e[i]==t){n=i;break}return n},t}();f.decorators=[{type:r.Injectable}],f.ctorParameters=function(){return[]};var y={provide:n.NG_VALUE_ACCESSOR,useExisting:r.forwardRef(function(){return v}),multi:!0},v=function(){function t(t,e,n,i,o,l){this.el=t,this.domHandler=e,this.renderer=n,this.objectUtils=i,this.cd=o,this.differs=l,this.minLength=0,this.delay=300,this.appendTo="body",this.autoHighlight=!0,this.forceSelection=!0,this.type="text",this.completeMethod=new r.EventEmitter,this.createNew=new r.EventEmitter,this.onSelect=new r.EventEmitter,this.onUnselect=new r.EventEmitter,this.onFocus=new r.EventEmitter,this.onBlur=new r.EventEmitter,this.onDropdownClick=new r.EventEmitter,this.onClear=new r.EventEmitter,this.onKeyUp=new r.EventEmitter,this.scrollHeight="200px",this.dropdownMode="blank",this.immutable=!0,this.onModelChange=function(){},this.onModelTouched=function(){},this.panelVisible=!1,this.focus=!1,this.inputFieldValue=null,this.differ=l.find([]).create(null)}return Object.defineProperty(t.prototype,"suggestions",{get:function(){return this._suggestions},set:function(t){t instanceof Array&&(this._suggestions=t,this.immutable&&this.handleSuggestionsChange())},enumerable:!0,configurable:!0}),t.prototype.ngDoCheck=function(){this.immutable||this.differ.diff(this.suggestions)&&this.handleSuggestionsChange()},t.prototype.handleSuggestionsChange=function(){this.panelEL&&this.panelEL.nativeElement&&this.loading&&(this.highlightOption=null,this._suggestions&&this._suggestions.length?(this.noResults=!1,this.show(),this.suggestionsUpdated=!0,this.autoHighlight&&(this.highlightOption=this._suggestions[0])):(this.noResults=!0,this.emptyMessage?this.show():this.hide(),this.suggestionsUpdated=!0)),this.loading=!1},t.prototype.ngAfterContentInit=function(){var e=this;this.templates.forEach(function(t){switch(t.getType()){case"item":e.itemTemplate=t.template;break;case"selectedItem":e.selectedItemTemplate=t.template;break;default:e.itemTemplate=t.template}})},t.prototype.ngAfterViewInit=function(){this.appendTo&&("body"===this.appendTo?document.body.appendChild(this.panelEL.nativeElement):this.domHandler.appendChild(this.panelEL.nativeElement,this.appendTo))},t.prototype.ngAfterViewChecked=function(){var e=this;this.suggestionsUpdated&&this.panelEL.nativeElement&&this.panelEL.nativeElement.offsetParent&&(setTimeout(function(){return e.align()},1),this.suggestionsUpdated=!1),this.highlightOptionChanged&&(setTimeout(function(){var t=e.domHandler.findSingle(e.panelEL.nativeElement,".autocomplete__panel-item.bg-primary");t&&e.domHandler.scrollInView(e.panelEL.nativeElement,t)},1),this.highlightOptionChanged=!1)},t.prototype.writeValue=function(t){if(this.multiple&&!(t instanceof Array))throw new Error("Value must be Array");this.value=t,this.filled=this.value&&""!=this.value,this.updateInputField()},t.prototype.registerOnChange=function(t){this.onModelChange=t},t.prototype.registerOnTouched=function(t){this.onModelTouched=t},t.prototype.setDisabledState=function(t){this.disabled=t},t.prototype.onInput=function(t){var e=this;if(this.inputKeyDown){this.timeout&&clearTimeout(this.timeout);var n=t.target.value;this.multiple||this.forceSelection||this.onModelChange(n),0===n.length&&(this.hide(),this.onClear.emit(t)),n.length>=this.minLength?this.timeout=setTimeout(function(){e.search(t,n)},this.delay):(this.suggestions=null,this.hide()),this.updateFilledState(),this.inputKeyDown=!1}},t.prototype.onInputClick=function(t){this.documentClickListener&&(this.inputClick=!0)},t.prototype.search=function(t,e){e!==undefined&&null!==e&&(this.loading=!0,this.completeMethod.emit({originalEvent:t,query:e}))},Object.defineProperty(t.prototype,"multipleValue",{get:function(){if(this.multiInputEL&&this.multiInputEL.nativeElement)return this.multiInputEL.nativeElement.value},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"currentValue",{get:function(){return this.multiInputEL?this.multiInputEL.nativeElement.value:this.inputEL?this.inputEL.nativeElement.value:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"highlightOptionValue",{get:function(){if(this.highlightOption&&this.currentValue){var t=this.field?this.objectUtils.resolveFieldData(this.highlightOption,this.field)||"":this.highlightOption;return"string"==typeof t&&0===t.toLowerCase().indexOf(this.currentValue.toLowerCase())?t:""}return null},enumerable:!0,configurable:!0}),t.prototype.selectItem=function(t,e){void 0===e&&(e=!0),this.multiple?(this.multiInputEL.nativeElement.value="",this.value=this.value||[],this.isSelected(t)||(this.value=l(this.value,[t]),this.onModelChange(this.value))):(this.inputEL.nativeElement.value=this.field?this.objectUtils.resolveFieldData(t,this.field)||"":t,this.value=t,this.onModelChange(this.value)),this.onSelect.emit(t),this.updateFilledState(),this.suggestions=null,e&&this.focusInput()},t.prototype.show=function(){if(this.multiInputEL||this.inputEL){var t=this.multiple?document.activeElement==this.multiInputEL.nativeElement:document.activeElement==this.inputEL.nativeElement;!this.panelVisible&&t&&(this.panelVisible=!0,this.appendTo&&(this.panelEL.nativeElement.style.minWidth=this.domHandler.getWidth(this.el.nativeElement.children[0])+"px"),this.panelEL.nativeElement.style.zIndex=++m.zindex,this.domHandler.fadeIn(this.panelEL.nativeElement,200),this.bindDocumentClickListener())}},t.prototype.align=function(){this.appendTo?this.domHandler.absolutePosition(this.panelEL.nativeElement,this.multiple?this.multiContainerEL.nativeElement:this.inputEL.nativeElement):this.domHandler.relativePosition(this.panelEL.nativeElement,this.multiple?this.multiContainerEL.nativeElement:this.inputEL.nativeElement)},t.prototype.hide=function(){this.panelVisible=!1,this.unbindDocumentClickListener()},t.prototype.handleDropdownClick=function(t){if(this.focusInput(),!this.panelVisible){var e=this.multiple?this.multiInputEL.nativeElement.value:this.inputEL.nativeElement.value;"blank"===this.dropdownMode?this.search(t,""):"current"===this.dropdownMode&&this.search(t,e),this.onDropdownClick.emit({originalEvent:t,query:e})}},t.prototype.focusInput=function(){this.multiple?this.multiInputEL.nativeElement.focus():this.inputEL.nativeElement.focus()},t.prototype.removeItem=function(t){var n=this.domHandler.index(t),e=this.value[n];this.value=this.value.filter(function(t,e){return e!=n}),this.onModelChange(this.value),this.updateFilledState(),this.onUnselect.emit(e)},t.prototype.onKeydown=function(t){if(this.panelVisible){var e=this.findOptionIndex(this.highlightOption);switch(t.which){case 40:if(-1!=e){var n=e+1;n!=this.suggestions.length&&(this.highlightOption=this.suggestions[n],this.highlightOptionChanged=!0)}else this.highlightOption=this.suggestions[0];t.preventDefault();break;case 38:if(0<e){var i=e-1;this.highlightOption=this.suggestions[i],this.highlightOptionChanged=!0}t.preventDefault();break;case 13:this.highlightOption&&(this.selectItem(this.highlightOption),this.hide()),t.preventDefault();break;case 27:this.hide(),t.preventDefault();break;case 9:this.highlightOption&&this.selectItem(this.highlightOption),this.hide()}}else 40===t.which&&this.suggestions&&this.search(t,t.target.value);if(this.multiple)switch(t.which){case 8:if(this.value&&this.value.length&&!this.multiInputEL.nativeElement.value){this.value=l(this.value);var o=this.value.pop();this.onUnselect.emit(o),this.onModelChange(this.value)}}this.inputKeyDown=!0},t.prototype.onKeyup=function(t){this.onKeyUp.emit(t)},t.prototype.onInputFocus=function(t){this.focus=!0,this.onFocus.emit(t)},t.prototype.onInputBlur=function(t){this.focus=!1,this.onModelTouched(),this.onBlur.emit(t)},t.prototype.onInputChange=function(t){var e,n,i=!1,o=t.target.value.trim();if(this.suggestions)try{for(var l=g(this.suggestions),r=l.next();!r.done;r=l.next()){var s=r.value,a=this.field?this.objectUtils.resolveFieldData(s,this.field):s;if("string"==typeof a&&o===a.trim()){i=!0,this.selectItem(s,!1);break}}}catch(p){e={error:p}}finally{try{r&&!r.done&&(n=l["return"])&&n.call(l)}finally{if(e)throw e.error}}i||(this.forceSelection&&this.suggestions?this.multiple?this.multiInputEL.nativeElement.value="":(this.value=this.field?this.objectUtils.resolveFieldData(this.suggestions[0],this.field):this.suggestions[0],this.inputEL.nativeElement.value=this.field?this.objectUtils.resolveFieldData(this.suggestions[0],this.field):this.suggestions[0]):this.createNew.emit(t.target.value.trim()),this.onModelChange(this.value))},t.prototype.isSelected=function(t){var e=!1;if(this.value&&this.value.length)for(var n=0;n<this.value.length;n++)if(this.objectUtils.equals(this.value[n],t,this.dataKey)){e=!0;break}return e},t.prototype.findOptionIndex=function(t){var e=-1;if(this.suggestions)for(var n=0;n<this.suggestions.length;n++)if(this.objectUtils.equals(t,this.suggestions[n])){e=n;break}return e},t.prototype.updateFilledState=function(){this.multiple?this.filled=this.value&&this.value.length||this.multiInputEL&&this.multiInputEL.nativeElement&&""!=this.multiInputEL.nativeElement.value:this.filled=this.inputFieldValue&&""!=this.inputFieldValue||this.inputEL&&this.inputEL.nativeElement&&""!=this.inputEL.nativeElement.value},t.prototype.updateInputField=function(){var t=this.value?this.field?this.objectUtils.resolveFieldData(this.value,this.field)||"":this.value:"";this.inputFieldValue=t,this.inputEL&&this.inputEL.nativeElement&&(this.inputEL.nativeElement.value=t),this.updateFilledState()},t.prototype.bindDocumentClickListener=function(){var e=this;this.documentClickListener||(this.documentClickListener=this.renderer.listen("document","click",function(t){3!==t.which&&(e.inputClick||e.isDropdownClick(t)||e.hide(),e.inputClick=!1,e.cd.markForCheck())}))},t.prototype.isDropdownClick=function(t){if(this.dropdown){var e=t.target;return e===this.dropdownButton.nativeElement||e.parentNode===this.dropdownButton.nativeElement}return!1},t.prototype.unbindDocumentClickListener=function(){this.documentClickListener&&(this.documentClickListener(),this.documentClickListener=null)},t.prototype.ngOnDestroy=function(){this.unbindDocumentClickListener(),this.appendTo&&this.el.nativeElement.appendChild(this.panelEL.nativeElement)},t.prototype.ngOnChanges=function(t){},t}();v.decorators=[{type:r.Component,args:[{selector:"mad-autocomplete",template:'<span [ngClass]="{\'autocomplete\':!multiple,\'autocomplete--dd\':dropdown,\'autocomplete-multiple\':multiple}"\n\t\t\t[ngStyle]="style"\n\t\t\t[class]="styleClass"\n>\n\t<span *ngIf="!multiple" class="form-control autocomplete__pseudo">\n\t\t{{ highlightOptionValue }}\n\t</span>\n\t<input\n\t\t#in\n\t\t*ngIf="!multiple"\n\t\t[attr.type]="type"\n\t\t[attr.id]="inputId"\n\t\t[ngStyle]="inputStyle"\n\t\t[class]="inputStyleClass"\n\t\tautocomplete="off"\n\t\t[attr.required]="required"\n\t\t[ngClass]="{\'form-control autocomplete__input\': true, \'autocomplete__input--active\': panelVisible}"\n\t\t[value]="inputFieldValue"\n\t\t(click)="onInputClick($event)"\n\t\t(input)="onInput($event)"\n\t\t(keydown)="onKeydown($event)"\n\t\t(keyup)="onKeyup($event)"\n\t\t(focus)="onInputFocus($event)"\n\t\t(blur)="onInputBlur($event)"\n\t\t(change)="onInputChange($event)"\n\t\t[attr.placeholder]="placeholder"\n\t\t[attr.size]="size" [attr.maxlength]="maxlength"\n\t\t[attr.tabindex]="tabindex"\n\t\t[readonly]="readonly"\n\t\t[disabled]="disabled"\n\t/>\n <div\n\t\t#multiContainer\n\t\t*ngIf="multiple"\n\t\tclass="autocomplete-multiple__container"\n\t\t[ngClass]="{\'ui-state-disabled\':disabled,\'ui-state-focus\':focus}"\n\t\t(click)="multiIn.focus()">\n\t\t\t<div\n\t\t\t\t#token\n\t\t\t\t*ngFor="let val of value"\n\t\t\t\tclass="autocomplete-multiple__token autocomplete-multiple__token--added"\n\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass="autocomplete-multiple__token-icon icon-x"\n\t\t\t\t\t\t(click)="removeItem(token)"\n\t\t\t\t\t\t*ngIf="!disabled"\n\t\t\t\t\t></span>\n\t\t\t\t\t<span *ngIf="!selectedItemTemplate" class="form-control-plaintext">{{field ? objectUtils.resolveFieldData(val, field): val}}</span>\n\t\t\t\t\t<ng-container *ngTemplateOutlet="selectedItemTemplate; context: {$implicit: val}"></ng-container>\n\t\t\t</div>\n\t\t\t<div class="autocomplete-multiple__token">\n\t\t\t\t<span class="form-control-plaintext autocomplete-multiple__pseudo">\n\t\t\t\t\t{{ highlightOptionValue || multipleValue || placeholder}}\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\t#multiIn\n\t\t\t\t\t[attr.type]="type"\n\t\t\t\t\t[attr.id]="inputId"\n\t\t\t\t\t[disabled]="disabled"\n\t\t\t\t\t[attr.placeholder]="placeholder"\n\t\t\t\t\t[attr.tabindex]="tabindex"\n\t\t\t\t\t(input)="onInput($event)"\n\t\t\t\t\t(click)="onInputClick($event)"\n\t\t\t\t\t(keydown)="onKeydown($event)"\n\t\t\t\t\t(keyup)="onKeyup($event)"\n\t\t\t\t\t(focus)="onInputFocus($event)"\n\t\t\t\t\t(blur)="onInputBlur($event)"\n\t\t\t\t\tautocomplete="off"\n\t\t\t\t\t[ngStyle]="inputStyle"\n\t\t\t\t\t[class]="inputStyleClass"\n\t\t\t\t\t[ngClass]="\'form-control-plaintext autocomplete-multiple__input\'"\n\t\t\t\t/>\n\t\t\t\t<i *ngIf="loading" class="autocomplete__loader icon-loader"></i>\n\t\t\t\t<button\n\t\t\t\t\t#ddBtn\n\t\t\t\t\t*ngIf="dropdown"\n\t\t\t\t\ttype="button"\n\t\t\t\t\tclass="autocomplete-multiple__button"\n\t\t\t\t\t[ngClass]="{\n\t\t\t\t\t\t\'icon-chevron-down\':!panelVisible && !loading,\n\t\t\t\t\t\t\'icon-chevron-up\':panelVisible && !loading\n\t\t\t\t\t}"\n\t\t\t\t\t[disabled]="disabled"\n\t\t\t\t\t(click)="handleDropdownClick($event)">\n\t\t\t\t</button>\n\t\t\t</div>\n\t</div>\n <i *ngIf="loading && !multiple" class="autocomplete__loader icon-loader"></i>\n <button\n\t\t#ddBtn\n\t\t*ngIf="dropdown && !multiple"\n\t\ttype="button"\n\t\tclass="autocomplete__button"\n\t\t[ngClass]="{\n\t\t\t\'icon-chevron-down\':!panelVisible && !loading,\n\t\t\t\'icon-chevron-up\':panelVisible && !loading\n\t\t}"\n\t\t[disabled]="disabled"\n\t\t(click)="handleDropdownClick($event)">\n\t</button>\n\t<div\n\t\t#panel\n\t\tclass="autocomplete__panel"\n\t\t[style.display]="panelVisible ? \'block\' : \'none\'"\n\t\t[style.width]="appendTo ? \'auto\' : \'100%\'"\n\t\t[style.max-height]="scrollHeight"\n\t>\n\t\t<div\n\t\t\tclass="autocomplete__panel-list"\n\t\t\t*ngIf="panelVisible"\n\t\t>\n\t\t\t\t<div\n\t\t\t\t\t*ngFor="let option of suggestions; let idx = index"\n\t\t\t\t\t[ngClass]="{\'form-control-plaintext autocomplete__panel-item\':true,\'bg-primary text-white\':(highlightOption==option)}"\n\t\t\t\t\t(mouseenter)="highlightOption=option"\n\t\t\t\t\t(mouseleave)="highlightOption=null"\n\t\t\t\t\t(click)="selectItem(option)"\n\t\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf="!itemTemplate"\n\t\t\t\t\t>{{field ? objectUtils.resolveFieldData(option, field) : option}}\n\t\t\t\t\t</span>\n\t\t\t\t\t<ng-container\n\t\t\t\t\t\t*ngTemplateOutlet="itemTemplate; context: {$implicit: option, index: idx}">\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf="noResults && emptyMessage" class="autocomplete__panel-item">{{emptyMessage}}</div>\n\t\t</div>\n\t</div>\n</span>\n',styles:[".autocomplete,.autocomplete-multiple{width:auto;zoom:1;cursor:pointer;-webkit-box-shadow:none;box-shadow:none;position:relative;display:block}.autocomplete__host--filled,.autocomplete__host--focus{border:10px solid red!important}.autocomplete-multiple__button,.autocomplete__button{height:100%;margin-right:0;position:absolute;top:0;right:0;bottom:0;font-size:1.5rem;padding:0;width:2rem;background:0 0;border:none;cursor:pointer;z-index:100}.autocomplete-multiple__button:focus,.autocomplete__button:focus{outline:0}.autocomplete-multiple__input,.autocomplete-multiple__pseudo,.autocomplete__input,.autocomplete__pseudo{position:relative;text-overflow:ellipsis;z-index:50;background:0 0}.autocomplete__input--active{border-radius:.25rem .25rem 0 0}.autocomplete__pseudo{position:absolute;bottom:0;top:0;left:0;right:0;opacity:.35;z-index:1}.autocomplete--dd .autocomplete-multiple__input,.autocomplete--dd .autocomplete-multiple__pseudo,.autocomplete--dd .autocomplete__input,.autocomplete--dd .autocomplete__pseudo{padding-right:1.5em}.autocomplete__panel{-webkit-box-shadow:inset 0 -1px 1px rgba(0,0,0,.4);box-shadow:inset 0 -1px 1px rgba(0,0,0,.4)}.autocomplete__panel-item{padding-left:.75rem;padding-right:.75rem}.autocomplete__loader{position:absolute;top:0;bottom:0;right:auto;left:101%;font-size:1.5rem;width:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.autocomplete__loader:before{-webkit-animation:1s infinite process;animation:1s infinite process}@-webkit-keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}@keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}.autocomplete--dd .autocomplete__loader{right:0;left:auto}.autocomplete-multiple{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.autocomplete-multiple__container{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.autocomplete-multiple__pseudo{white-space:nowrap;opacity:.35;z-index:5}.autocomplete-multiple__input{outline:0;position:absolute;top:0;bottom:0;left:0;right:0;z-index:10}.autocomplete-multiple__input:focus{outline:0}.autocomplete-multiple__token{border:0;outline:0;background-color:transparent;margin:0;padding:0 .5rem 0 0;-webkit-box-shadow:none;box-shadow:none;border-radius:0;position:relative}.autocomplete-multiple__token--added{padding:0 1.2rem 0 0;margin-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-multiple__token-icon{position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:1.2rem;font-size:.75rem;opacity:.5}.autocomplete-multiple__token-icon:hover{opacity:1}.autocomplete__panel{position:absolute;overflow:auto;background:#fff}"],host:{"[class.autocomplete__host--filled]":"filled","[class.autocomplete__host--focus]":"focus"},providers:[m,f,y]}]}],v.ctorParameters=function(){return[{type:r.ElementRef},{type:m},{type:r.Renderer2},{type:f},{type:r.ChangeDetectorRef},{type:r.IterableDiffers}]},v.propDecorators={minLength:[{type:r.Input}],delay:[{type:r.Input}],style:[{type:r.Input}],styleClass:[{type:r.Input}],inputStyle:[{type:r.Input}],inputId:[{type:r.Input}],inputStyleClass:[{type:r.Input}],placeholder:[{type:r.Input}],readonly:[{type:r.Input}],disabled:[{type:r.Input}],maxlength:[{type:r.Input}],required:[{type:r.Input}],size:[{type:r.Input}],appendTo:[{type:r.Input}],autoHighlight:[{type:r.Input}],forceSelection:[{type:r.Input}],type:[{type:r.Input}],completeMethod:[{type:r.Output}],createNew:[{type:r.Output}],onSelect:[{type:r.Output}],onUnselect:[{type:r.Output}],onFocus:[{type:r.Output}],onBlur:[{type:r.Output}],onDropdownClick:[{type:r.Output}],onClear:[{type:r.Output}],onKeyUp:[{type:r.Output}],field:[{type:r.Input}],scrollHeight:[{type:r.Input}],dropdown:[{type:r.Input}],dropdownMode:[{type:r.Input}],multiple:[{type:r.Input}],tabindex:[{type:r.Input}],dataKey:[{type:r.Input}],emptyMessage:[{type:r.Input}],immutable:[{type:r.Input}],inputEL:[{type:r.ViewChild,args:["in"]}],multiInputEL:[{type:r.ViewChild,args:["multiIn"]}],panelEL:[{type:r.ViewChild,args:["panel"]}],multiContainerEL:[{type:r.ViewChild,args:["multiContainer"]}],dropdownButton:[{type:r.ViewChild,args:["ddBtn"]}],templates:[{type:r.ContentChildren,args:[a]}],suggestions:[{type:r.Input}]};var b=function(){};b.decorators=[{type:r.NgModule,args:[{imports:[e.CommonModule,h],exports:[v,h],declarations:[v]}]}],b.ctorParameters=function(){return[]},t.MadAutoCompleteModule=b,t.ɵd=p,t.ɵb=s,t.ɵg=d,t.ɵa=o,t.ɵf=c,t.ɵc=a,t.ɵe=u,t.ɵh=h,t.ɵk=m,t.ɵi=y,t.ɵj=v,t.ɵl=f,Object.defineProperty(t,"__esModule",{value:!0})});
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@madbrothers/ngx-mad-scrollbar")):"function"==typeof define&&define.amd?define("@madbrothers/ngx-mad-autocomplete",["exports","@angular/core","@angular/common","@angular/forms","@madbrothers/ngx-mad-scrollbar"],e):e((t.madbrothers=t.madbrothers||{},t.madbrothers["ngx-mad-autocomplete"]={}),t.ng.core,t.ng.common,t.ng.forms,t.ngxMadScrollbar)}(this,function(t,r,e,n,i){"use strict";function g(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function o(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var i,o,l=n.call(t),r=[];try{for(;(void 0===e||0<e--)&&!(i=l.next()).done;)r.push(i.value)}catch(s){o={error:s}}finally{try{i&&!i.done&&(n=l["return"])&&n.call(l)}finally{if(o)throw o.error}}return r}function l(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(o(arguments[e]));return t}var s=function(){};s.decorators=[{type:r.Component,args:[{selector:"p-header",template:"<ng-content></ng-content>"}]}],s.ctorParameters=function(){return[]};var a=function(){};a.decorators=[{type:r.Component,args:[{selector:"p-footer",template:"<ng-content></ng-content>"}]}],a.ctorParameters=function(){return[]};var p=function(){function t(t){this.template=t}return t.prototype.getType=function(){return this.name},t}();p.decorators=[{type:r.Directive,args:[{selector:"[pTemplate]",host:{}}]}],p.ctorParameters=function(){return[{type:r.TemplateRef}]},p.propDecorators={type:[{type:r.Input}],name:[{type:r.Input,args:["pTemplate"]}]};var u=function(){};u.decorators=[{type:r.NgModule,args:[{imports:[e.CommonModule],exports:[s,a,p],declarations:[s,a,p]}]}],u.ctorParameters=function(){return[]};var c=function(){function t(){this.calculatedScrollbarWidth=null}return t.prototype.addClass=function(t,e){t.classList?t.classList.add(e):t.className+=" "+e},t.prototype.addMultipleClasses=function(t,e){if(t.classList)for(var n=e.split(" "),i=0;i<n.length;i++)t.classList.add(n[i]);else for(n=e.split(" "),i=0;i<n.length;i++)t.className+=" "+n[i]},t.prototype.removeClass=function(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\b)"+e.split(" ").join("|")+"(\\b|$)","gi")," ")},t.prototype.hasClass=function(t,e){return t.classList?t.classList.contains(e):new RegExp("(^| )"+e+"( |$)","gi").test(t.className)},t.prototype.siblings=function(e){return Array.prototype.filter.call(e.parentNode.children,function(t){return t!==e})},t.prototype.find=function(t,e){return t.querySelectorAll(e)},t.prototype.findSingle=function(t,e){return t.querySelector(e)},t.prototype.index=function(t){for(var e=t.parentNode.childNodes,n=0,i=0;i<e.length;i++){if(e[i]==t)return n;1==e[i].nodeType&&n++}return-1},t.prototype.indexWithinGroup=function(t,e){for(var n=t.parentNode.childNodes,i=0,o=0;o<n.length;o++){if(n[o]==t)return i;n[o].attributes&&n[o].attributes[e]&&1==n[o].nodeType&&i++}return-1},t.prototype.relativePosition=function(t,e){var n,i,o=t.offsetParent?{width:t.offsetWidth,height:t.offsetHeight}:this.getHiddenElementDimensions(t),l=e.offsetHeight,r=e.offsetWidth,s=e.getBoundingClientRect(),a=(this.getWindowScrollTop(),this.getViewport());s.top+l+o.height>a.height?(n=-1*o.height,s.top+n<0&&(n=0)):n=l,i=s.left+o.width>a.width?r-o.width:0,t.style.top=n+"px",t.style.left=i+"px"},t.prototype.absolutePosition=function(t,e){var n,i,o=t.offsetParent?{width:t.offsetWidth,height:t.offsetHeight}:this.getHiddenElementDimensions(t),l=o.height,r=o.width,s=e.offsetHeight,a=e.offsetWidth,p=e.getBoundingClientRect(),u=this.getWindowScrollTop(),c=this.getWindowScrollLeft(),d=this.getViewport();p.top+s+l>d.height?(n=p.top+u-l)<0&&(n=0+u):n=s+p.top+u,i=p.left+a+r>d.width?p.left+c+a-r:p.left+c,t.style.top=n+"px",t.style.left=i+"px"},t.prototype.getHiddenElementOuterHeight=function(t){t.style.visibility="hidden",t.style.display="block";var e=t.offsetHeight;return t.style.display="none",t.style.visibility="visible",e},t.prototype.getHiddenElementOuterWidth=function(t){t.style.visibility="hidden",t.style.display="block";var e=t.offsetWidth;return t.style.display="none",t.style.visibility="visible",e},t.prototype.getHiddenElementDimensions=function(t){var e={};return t.style.visibility="hidden",t.style.display="block",e.width=t.offsetWidth,e.height=t.offsetHeight,t.style.display="none",t.style.visibility="visible",e},t.prototype.scrollInView=function(t,e){var n=getComputedStyle(t).getPropertyValue("borderTopWidth"),i=n?parseFloat(n):0,o=getComputedStyle(t).getPropertyValue("paddingTop"),l=o?parseFloat(o):0,r=t.getBoundingClientRect(),s=e.getBoundingClientRect().top+document.body.scrollTop-(r.top+document.body.scrollTop)-i-l,a=t.scrollTop,p=t.clientHeight,u=this.getOuterHeight(e);s<0?t.scrollTop=a+s:p<s+u&&(t.scrollTop=a+s-p+u)},t.prototype.fadeIn=function(t,e){t.style.opacity=0;var n=+new Date,i=0,o=function(){i=+t.style.opacity.replace(",",".")+((new Date).getTime()-n)/e,t.style.opacity=i,n=+new Date,+i<1&&(window.requestAnimationFrame&&requestAnimationFrame(o)||setTimeout(o,16))};o()},t.prototype.fadeOut=function(t,e){var n=1,i=50/e,o=setInterval(function(){(n-=i)<=0&&(n=0,clearInterval(o)),t.style.opacity=n},50)},t.prototype.getWindowScrollTop=function(){var t=document.documentElement;return(window.pageYOffset||t.scrollTop)-(t.clientTop||0)},t.prototype.getWindowScrollLeft=function(){var t=document.documentElement;return(window.pageXOffset||t.scrollLeft)-(t.clientLeft||0)},t.prototype.matches=function(t,e){var n=Element.prototype;return(n.matches||n.webkitMatchesSelector||n.mozMatchesSelector||n.msMatchesSelector||function(t){return-1!==[].indexOf.call(document.querySelectorAll(t),this)}).call(t,e)},t.prototype.getOuterWidth=function(t,e){var n=t.offsetWidth;if(e){var i=getComputedStyle(t);n+=parseFloat(i.marginLeft)+parseFloat(i.marginRight)}return n},t.prototype.getHorizontalPadding=function(t){var e=getComputedStyle(t);return parseFloat(e.paddingLeft)+parseFloat(e.paddingRight)},t.prototype.getHorizontalMargin=function(t){var e=getComputedStyle(t);return parseFloat(e.marginLeft)+parseFloat(e.marginRight)},t.prototype.innerWidth=function(t){var e=t.offsetWidth,n=getComputedStyle(t);return e+=parseFloat(n.paddingLeft)+parseFloat(n.paddingRight)},t.prototype.width=function(t){var e=t.offsetWidth,n=getComputedStyle(t);return e-=parseFloat(n.paddingLeft)+parseFloat(n.paddingRight)},t.prototype.getInnerHeight=function(t){var e=t.offsetHeight,n=getComputedStyle(t);return e+=parseFloat(n.paddingTop)+parseFloat(n.paddingBottom)},t.prototype.getOuterHeight=function(t,e){var n=t.offsetHeight;if(e){var i=getComputedStyle(t);n+=parseFloat(i.marginTop)+parseFloat(i.marginBottom)}return n},t.prototype.getHeight=function(t){var e=t.offsetHeight,n=getComputedStyle(t);return e-=parseFloat(n.paddingTop)+parseFloat(n.paddingBottom)+parseFloat(n.borderTopWidth)+parseFloat(n.borderBottomWidth)},t.prototype.getWidth=function(t){var e=t.offsetWidth,n=getComputedStyle(t);return e-=parseFloat(n.paddingLeft)+parseFloat(n.paddingRight)+parseFloat(n.borderLeftWidth)+parseFloat(n.borderRightWidth)},t.prototype.getViewport=function(){var t=window,e=document,n=e.documentElement,i=e.getElementsByTagName("body")[0];return{width:t.innerWidth||n.clientWidth||i.clientWidth,height:t.innerHeight||n.clientHeight||i.clientHeight}},t.prototype.getOffset=function(t){var e=t.getBoundingClientRect();return{top:e.top+document.body.scrollTop,left:e.left+document.body.scrollLeft}},t.prototype.getUserAgent=function(){return navigator.userAgent},t.prototype.isIE=function(){var t=window.navigator.userAgent;if(0<t.indexOf("MSIE "))return!0;if(0<t.indexOf("Trident/")){t.indexOf("rv:");return!0}return 0<t.indexOf("Edge/")},t.prototype.appendChild=function(t,e){if(this.isElement(e))e.appendChild(t);else{if(!e.el||!e.el.nativeElement)throw"Cannot append "+e+" to "+t;e.el.nativeElement.appendChild(t)}},t.prototype.removeChild=function(t,e){if(this.isElement(e))e.removeChild(t);else{if(!e.el||!e.el.nativeElement)throw"Cannot remove "+t+" from "+e;e.el.nativeElement.removeChild(t)}},t.prototype.isElement=function(t){return"object"==typeof HTMLElement?t instanceof HTMLElement:t&&"object"==typeof t&&null!==t&&1===t.nodeType&&"string"==typeof t.nodeName},t.prototype.calculateScrollbarWidth=function(){if(null!==this.calculatedScrollbarWidth)return this.calculatedScrollbarWidth;var t=document.createElement("div");t.className="ui-scrollbar-measure",document.body.appendChild(t);var e=t.offsetWidth-t.clientWidth;return document.body.removeChild(t),this.calculatedScrollbarWidth=e},t.prototype.invokeElementMethod=function(t,e,n){t[e].apply(t,n)},t.prototype.clearSelection=function(){if(window.getSelection)window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&0<window.getSelection().rangeCount&&0<window.getSelection().getRangeAt(0).getClientRects().length&&window.getSelection().removeAllRanges();else if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(t){}},t.prototype.getBrowser=function(){if(!this.browser){var t=this.resolveUserAgent();this.browser={},t.browser&&(this.browser[t.browser]=!0,this.browser.version=t.version),this.browser.chrome?this.browser.webkit=!0:this.browser.webkit&&(this.browser.safari=!0)}return this.browser},t.prototype.resolveUserAgent=function(){var t=navigator.userAgent.toLowerCase(),e=/(chrome)[ \/]([\w.]+)/.exec(t)||/(webkit)[ \/]([\w.]+)/.exec(t)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(t)||/(msie) ([\w.]+)/.exec(t)||t.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(t)||[];return{browser:e[1]||"",version:e[2]||"0"}},t}();c.zindex=1e3,c.decorators=[{type:r.Injectable}],c.ctorParameters=function(){return[]};var d=function(){function t(){}return t.prototype.equals=function(t,e,n){return n?this.resolveFieldData(t,n)===this.resolveFieldData(e,n):this.equalsByValue(t,e)},t.prototype.equalsByValue=function(t,e,n){if(null==t&&null==e)return!0;if(null==t||null==e)return!1;if(t==e)return!0;if("object"==typeof t&&"object"==typeof e){if(n){if(-1!==n.indexOf(t))return!1}else n=[];for(var i in n.push(t),t){if(t.hasOwnProperty(i)!==e.hasOwnProperty(i))return!1;switch(typeof t[i]){case"object":if(!this.equalsByValue(t[i],e[i],n))return!1;break;case"function":if("undefined"==typeof e[i]||"compare"!=i&&t[i].toString()!=e[i].toString())return!1;break;default:if(t[i]!=e[i])return!1}}for(var i in e)if("undefined"==typeof t[i])return!1;return delete t._$visited,!0}return!1},t.prototype.resolveFieldData=function(t,e){if("string"==typeof t)return t;if(t&&e){if(-1==e.indexOf("."))return t[e];for(var n=e.split("."),i=t,o=0,l=n.length;o<l;++o){if(null==i)return null;i=i[n[o]]}return i}return null},t.prototype.filter=function(t,e,n){var i,o,l,r,s=[];if(t)try{for(var a=g(t),p=a.next();!p.done;p=a.next()){var u=p.value;try{for(var c=g(e),d=c.next();!d.done;d=c.next()){var h=d.value;if(-1<String(this.resolveFieldData(u,h)).toLowerCase().indexOf(n.toLowerCase())){s.push(u);break}}}catch(m){l={error:m}}finally{try{d&&!d.done&&(r=c["return"])&&r.call(c)}finally{if(l)throw l.error}}}}catch(f){i={error:f}}finally{try{p&&!p.done&&(o=a["return"])&&o.call(a)}finally{if(i)throw i.error}}return s},t.prototype.reorderArray=function(t,e,n){var i;if(t&&e!==n){if(n>=t.length)for(i=n-t.length;1+i--;)t.push(undefined);t.splice(n,0,t.splice(e,1)[0])}},t.prototype.generateSelectItems=function(t,e){var n,i,o;if(t&&t.length){n=[];try{for(var l=g(t),r=l.next();!r.done;r=l.next()){var s=r.value;n.push({label:this.resolveFieldData(s,e),value:s})}}catch(a){i={error:a}}finally{try{r&&!r.done&&(o=l["return"])&&o.call(l)}finally{if(i)throw i.error}}}return n},t.prototype.insertIntoOrderedArray=function(t,e,n,i){if(0<n.length){for(var o=!1,l=0;l<n.length;l++){if(e<this.findIndexInList(n[l],i)){n.splice(l,0,t),o=!0;break}}o||n.push(t)}else n.push(t)},t.prototype.findIndexInList=function(t,e){var n=-1;if(e)for(var i=0;i<e.length;i++)if(e[i]==t){n=i;break}return n},t}();d.decorators=[{type:r.Injectable}],d.ctorParameters=function(){return[]};var h={provide:n.NG_VALUE_ACCESSOR,useExisting:r.forwardRef(function(){return m}),multi:!0},m=function(){function t(t,e,n,i,o,l){this.el=t,this.domHandler=e,this.renderer=n,this.objectUtils=i,this.cd=o,this.differs=l,this.minLength=0,this.delay=300,this.customScrollBar=!1,this.appendTo="body",this.autoHighlight=!0,this.forceSelection=!0,this.type="text",this.completeMethod=new r.EventEmitter,this.createNew=new r.EventEmitter,this.onSelect=new r.EventEmitter,this.onUnselect=new r.EventEmitter,this.onFocus=new r.EventEmitter,this.onBlur=new r.EventEmitter,this.onDropdownClick=new r.EventEmitter,this.onClear=new r.EventEmitter,this.onKeyUp=new r.EventEmitter,this.scrollHeight="200px",this.dropdownMode="blank",this.immutable=!0,this.onModelChange=function(){},this.onModelTouched=function(){},this.panelVisible=!1,this.focus=!1,this.inputFieldValue=null,this.differ=l.find([]).create(null)}return Object.defineProperty(t.prototype,"suggestions",{get:function(){return this._suggestions},set:function(t){t instanceof Array&&(this._suggestions=t,this.immutable&&this.handleSuggestionsChange())},enumerable:!0,configurable:!0}),t.prototype.ngDoCheck=function(){this.immutable||this.differ.diff(this.suggestions)&&this.handleSuggestionsChange()},t.prototype.handleSuggestionsChange=function(){this.panelEL&&this.panelEL.nativeElement&&this.loading&&(this.highlightOption=null,this._suggestions&&this._suggestions.length?(this.noResults=!1,this.show(),this.suggestionsUpdated=!0,this.autoHighlight&&(this.highlightOption=this._suggestions[0])):(this.noResults=!0,this.emptyMessage?this.show():this.hide(),this.suggestionsUpdated=!0)),this.loading=!1},t.prototype.ngAfterContentInit=function(){var e=this;this.templates.forEach(function(t){switch(t.getType()){case"item":e.itemTemplate=t.template;break;case"selectedItem":e.selectedItemTemplate=t.template;break;default:e.itemTemplate=t.template}})},t.prototype.ngAfterViewInit=function(){this.appendTo&&("body"===this.appendTo?document.body.appendChild(this.panelEL.nativeElement):this.domHandler.appendChild(this.panelEL.nativeElement,this.appendTo))},t.prototype.ngAfterViewChecked=function(){var e=this;this.suggestionsUpdated&&this.panelEL.nativeElement&&this.panelEL.nativeElement.offsetParent&&(setTimeout(function(){return e.align()},1),this.suggestionsUpdated=!1),this.highlightOptionChanged&&(setTimeout(function(){var t=e.domHandler.findSingle(e.panelEL.nativeElement,".autocomplete__panel-item.bg-primary");t&&e.domHandler.scrollInView(e.panelEL.nativeElement,t)},1),this.highlightOptionChanged=!1)},t.prototype.writeValue=function(t){if(this.multiple&&!(t instanceof Array))throw new Error("Value must be Array");this.value=t,this.filled=this.value&&""!=this.value,this.updateInputField()},t.prototype.registerOnChange=function(t){this.onModelChange=t},t.prototype.registerOnTouched=function(t){this.onModelTouched=t},t.prototype.setDisabledState=function(t){this.disabled=t},t.prototype.onInput=function(t){var e=this;if(this.inputKeyDown){this.timeout&&clearTimeout(this.timeout);var n=t.target.value;this.multiple||this.forceSelection||this.onModelChange(n),0===n.length&&(this.hide(),this.onClear.emit(t)),n.length>=this.minLength?this.timeout=setTimeout(function(){e.search(t,n)},this.delay):(this.suggestions=null,this.hide()),this.updateFilledState(),this.inputKeyDown=!1}},t.prototype.onInputClick=function(t){this.documentClickListener&&(this.inputClick=!0)},t.prototype.search=function(t,e){e!==undefined&&null!==e&&(this.loading=!0,this.completeMethod.emit({originalEvent:t,query:e}))},Object.defineProperty(t.prototype,"multipleValue",{get:function(){if(this.multiInputEL&&this.multiInputEL.nativeElement)return this.multiInputEL.nativeElement.value},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"currentValue",{get:function(){return this.multiInputEL?this.multiInputEL.nativeElement.value:this.inputEL?this.inputEL.nativeElement.value:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"highlightOptionValue",{get:function(){if(this.highlightOption&&this.currentValue){var t=this.field?this.objectUtils.resolveFieldData(this.highlightOption,this.field)||"":this.highlightOption;return"string"==typeof t&&0===t.toLowerCase().indexOf(this.currentValue.toLowerCase())?t:""}return null},enumerable:!0,configurable:!0}),t.prototype.selectItem=function(t,e){void 0===e&&(e=!0),this.multiple?(this.multiInputEL.nativeElement.value="",this.value=this.value||[],this.isSelected(t)||(this.value=l(this.value,[t]),this.onModelChange(this.value))):(this.inputEL.nativeElement.value=this.field?this.objectUtils.resolveFieldData(t,this.field)||"":t,this.value=t,this.onModelChange(this.value)),this.onSelect.emit(t),this.updateFilledState(),this.suggestions=null,e&&this.focusInput()},t.prototype.show=function(){if(this.multiInputEL||this.inputEL){var t=this.multiple?document.activeElement==this.multiInputEL.nativeElement:document.activeElement==this.inputEL.nativeElement;!this.panelVisible&&t&&(this.panelVisible=!0,this.appendTo&&(this.panelEL.nativeElement.style.minWidth=this.domHandler.getWidth(this.el.nativeElement.children[0])+"px"),this.panelEL.nativeElement.style.zIndex=++c.zindex,this.domHandler.fadeIn(this.panelEL.nativeElement,200),this.bindDocumentClickListener())}},t.prototype.align=function(){this.appendTo?this.domHandler.absolutePosition(this.panelEL.nativeElement,this.multiple?this.multiContainerEL.nativeElement:this.inputEL.nativeElement):this.domHandler.relativePosition(this.panelEL.nativeElement,this.multiple?this.multiContainerEL.nativeElement:this.inputEL.nativeElement)},t.prototype.hide=function(){this.panelVisible=!1,this.unbindDocumentClickListener()},t.prototype.handleDropdownClick=function(t){if(this.focusInput(),!this.panelVisible){var e=this.multiple?this.multiInputEL.nativeElement.value:this.inputEL.nativeElement.value;"blank"===this.dropdownMode?this.search(t,""):"current"===this.dropdownMode&&this.search(t,e),this.onDropdownClick.emit({originalEvent:t,query:e})}},t.prototype.focusInput=function(){this.multiple?this.multiInputEL.nativeElement.focus():this.inputEL.nativeElement.focus()},t.prototype.removeItem=function(t){var n=this.domHandler.index(t),e=this.value[n];this.value=this.value.filter(function(t,e){return e!=n}),this.onModelChange(this.value),this.updateFilledState(),this.onUnselect.emit(e)},t.prototype.onKeydown=function(t){if(this.panelVisible){var e=this.findOptionIndex(this.highlightOption);switch(t.which){case 40:if(-1!=e){var n=e+1;n!=this.suggestions.length&&(this.highlightOption=this.suggestions[n],this.highlightOptionChanged=!0)}else this.highlightOption=this.suggestions[0];t.preventDefault();break;case 38:if(0<e){var i=e-1;this.highlightOption=this.suggestions[i],this.highlightOptionChanged=!0}t.preventDefault();break;case 13:this.highlightOption&&(this.selectItem(this.highlightOption),this.hide()),t.preventDefault();break;case 27:this.hide(),t.preventDefault();break;case 9:this.highlightOption&&this.selectItem(this.highlightOption),this.hide()}}else 40===t.which&&this.suggestions&&this.search(t,t.target.value);if(this.multiple)switch(t.which){case 8:if(this.value&&this.value.length&&!this.multiInputEL.nativeElement.value){this.value=l(this.value);var o=this.value.pop();this.onUnselect.emit(o),this.onModelChange(this.value)}}this.inputKeyDown=!0},t.prototype.onKeyup=function(t){this.onKeyUp.emit(t)},t.prototype.onInputFocus=function(t){this.focus=!0,this.onFocus.emit(t)},t.prototype.onInputBlur=function(t){this.focus=!1,this.onModelTouched(),this.onBlur.emit(t)},t.prototype.onInputChange=function(t){var e,n,i=!1,o=t.target.value.trim();if(this.suggestions)try{for(var l=g(this.suggestions),r=l.next();!r.done;r=l.next()){var s=r.value,a=this.field?this.objectUtils.resolveFieldData(s,this.field):s;if("string"==typeof a&&o===a.trim()){i=!0,this.selectItem(s,!1);break}}}catch(p){e={error:p}}finally{try{r&&!r.done&&(n=l["return"])&&n.call(l)}finally{if(e)throw e.error}}i||(this.forceSelection&&this.suggestions?this.multiple?this.multiInputEL.nativeElement.value="":(this.value=this.field?this.objectUtils.resolveFieldData(this.suggestions[0],this.field):this.suggestions[0],this.inputEL.nativeElement.value=this.field?this.objectUtils.resolveFieldData(this.suggestions[0],this.field):this.suggestions[0]):this.selectItem||this.createNew.emit(t.target.value.trim()),this.onModelChange(this.value))},t.prototype.isSelected=function(t){var e=!1;if(this.value&&this.value.length)for(var n=0;n<this.value.length;n++)if(this.objectUtils.equals(this.value[n],t,this.dataKey)){e=!0;break}return e},t.prototype.findOptionIndex=function(t){var e=-1;if(this.suggestions)for(var n=0;n<this.suggestions.length;n++)if(this.objectUtils.equals(t,this.suggestions[n])){e=n;break}return e},t.prototype.updateFilledState=function(){this.multiple?this.filled=this.value&&this.value.length||this.multiInputEL&&this.multiInputEL.nativeElement&&""!=this.multiInputEL.nativeElement.value:this.filled=this.inputFieldValue&&""!=this.inputFieldValue||this.inputEL&&this.inputEL.nativeElement&&""!=this.inputEL.nativeElement.value},t.prototype.updateInputField=function(){var t=this.value?this.field?this.objectUtils.resolveFieldData(this.value,this.field)||"":this.value:"";this.inputFieldValue=t,this.inputEL&&this.inputEL.nativeElement&&(this.inputEL.nativeElement.value=t),this.updateFilledState()},t.prototype.bindDocumentClickListener=function(){var e=this;this.documentClickListener||(this.documentClickListener=this.renderer.listen("document","click",function(t){3!==t.which&&(e.inputClick||e.isDropdownClick(t)||e.hide(),e.inputClick=!1,e.cd.markForCheck())}))},t.prototype.isDropdownClick=function(t){if(this.dropdown){var e=t.target;return e===this.dropdownButton.nativeElement||e.parentNode===this.dropdownButton.nativeElement}return!1},t.prototype.unbindDocumentClickListener=function(){this.documentClickListener&&(this.documentClickListener(),this.documentClickListener=null)},t.prototype.ngOnDestroy=function(){this.unbindDocumentClickListener(),this.appendTo&&this.el.nativeElement.appendChild(this.panelEL.nativeElement)},t.prototype.ngOnChanges=function(t){},t}();m.decorators=[{type:r.Component,args:[{selector:"mad-autocomplete",template:'<div [ngClass]="{\'autocomplete\':!multiple,\'autocomplete--dd\':dropdown,\'autocomplete-multiple\':multiple}"\n\t\t\t[ngStyle]="style"\n\t\t\t[class]="styleClass"\n>\n\t<span *ngIf="!multiple" class="form-control autocomplete__pseudo">\n\t\t{{ highlightOptionValue }}\n\t</span>\n\n\n\t<input\n\t\t#in\n\t\t*ngIf="!multiple"\n\t\t[attr.type]="type"\n\t\t[attr.id]="inputId"\n\t\t[ngStyle]="inputStyle"\n\t\t[class]="inputStyleClass"\n\t\tautocomplete="off"\n\t\t[attr.required]="required"\n\t\t[ngClass]="{\'form-control autocomplete__input\': true, \'autocomplete__input--active\': panelVisible}"\n\t\t[value]="inputFieldValue"\n\t\t(click)="onInputClick($event)"\n\t\t(input)="onInput($event)"\n\t\t(keydown)="onKeydown($event)"\n\t\t(keyup)="onKeyup($event)"\n\t\t(focus)="onInputFocus($event)"\n\t\t(blur)="onInputBlur($event)"\n\t\t(change)="onInputChange($event)"\n\t\t[attr.placeholder]="placeholder"\n\t\t[attr.size]="size" [attr.maxlength]="maxlength"\n\t\t[attr.tabindex]="tabindex"\n\t\t[readonly]="readonly"\n\t\t[disabled]="disabled"\n\t/>\n\n\n\n <div\n\t\t#multiContainer\n\t\t*ngIf="multiple"\n\t\tclass="autocomplete-multiple__container"\n\t\t[ngClass]="{\'ui-state-disabled\':disabled,\'ui-state-focus\':focus}"\n\t\t(click)="multiIn.focus()">\n\t\t\t<div\n\t\t\t\t#token\n\t\t\t\t*ngFor="let val of value"\n\t\t\t\tclass="autocomplete-multiple__token autocomplete-multiple__token--added"\n\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass="autocomplete-multiple__token-icon icon-x"\n\t\t\t\t\t\t(click)="removeItem(token)"\n\t\t\t\t\t\t*ngIf="!disabled"\n\t\t\t\t\t></span>\n\t\t\t\t\t<span *ngIf="!selectedItemTemplate" class="form-control-plaintext">{{field ? objectUtils.resolveFieldData(val, field): val}}</span>\n\t\t\t\t\t<ng-container *ngTemplateOutlet="selectedItemTemplate; context: {$implicit: val}"></ng-container>\n\t\t\t</div>\n\t\t\t<div class="autocomplete-multiple__token">\n\t\t\t\t<span class="form-control-plaintext autocomplete-multiple__pseudo">\n\t\t\t\t\t{{ highlightOptionValue || multipleValue || placeholder}}\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\t#multiIn\n\t\t\t\t\t[attr.type]="type"\n\t\t\t\t\t[attr.id]="inputId"\n\t\t\t\t\t[disabled]="disabled"\n\t\t\t\t\t[attr.placeholder]="placeholder"\n\t\t\t\t\t[attr.tabindex]="tabindex"\n\t\t\t\t\t(input)="onInput($event)"\n\t\t\t\t\t(click)="onInputClick($event)"\n\t\t\t\t\t(keydown)="onKeydown($event)"\n\t\t\t\t\t(keyup)="onKeyup($event)"\n\t\t\t\t\t(focus)="onInputFocus($event)"\n\t\t\t\t\t(blur)="onInputBlur($event)"\n\t\t\t\t\tautocomplete="off"\n\t\t\t\t\t[ngStyle]="inputStyle"\n\t\t\t\t\t[class]="inputStyleClass"\n\t\t\t\t\t[ngClass]="\'form-control-plaintext autocomplete-multiple__input\'"\n\t\t\t\t/>\n\n\t\t\t\t<i *ngIf="loading" class="autocomplete__loader icon-loader"></i>\n\n\t\t\t\t<button\n\t\t\t\t\t#ddBtn\n\t\t\t\t\t*ngIf="dropdown"\n\t\t\t\t\ttype="button"\n\t\t\t\t\tclass="autocomplete-multiple__button"\n\t\t\t\t\t[ngClass]="{\n\t\t\t\t\t\t\'icon-chevron-down\':!panelVisible && !loading,\n\t\t\t\t\t\t\'icon-chevron-up\':panelVisible && !loading\n\t\t\t\t\t}"\n\t\t\t\t\t[disabled]="disabled"\n\t\t\t\t\t(click)="handleDropdownClick($event)">\n\t\t\t\t</button>\n\t\t\t</div>\n\t</div>\n\n <i *ngIf="loading && !multiple" class="autocomplete__loader icon-loader"></i>\n\n <button\n\t\t#ddBtn\n\t\t*ngIf="dropdown && !multiple"\n\t\ttype="button"\n\t\tclass="autocomplete__button"\n\t\t[ngClass]="{\n\t\t\t\'icon-chevron-down\':!panelVisible && !loading,\n\t\t\t\'icon-chevron-up\':panelVisible && !loading\n\t\t}"\n\t\t[disabled]="disabled"\n\t\t(click)="handleDropdownClick($event)">\n\t</button>\n\n\t<div\n\t\t#panel\n\t\tclass="autocomplete__panel"\n\t\t[style.display]="panelVisible ? \'block\' : \'none\'"\n\t\t[style.width]="appendTo ? \'auto\' : \'100%\'"\n\t\t[style.max-height]="scrollHeight"\n\t>\n\t\t<mad-scrollbar [style]="{width: \'100%\'}" [customScrollBar]="customScrollBar">\n\t\t\t<div\n\t\t\t\tclass="autocomplete__panel-list"\n\t\t\t\t*ngIf="panelVisible"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\t*ngFor="let option of suggestions; let idx = index"\n\t\t\t\t\t[ngClass]="{\'form-control-plaintext autocomplete__panel-item\':true,\'bg-primary text-white\':(highlightOption==option)}"\n\t\t\t\t\t(mouseenter)="highlightOption=option"\n\t\t\t\t\t(mouseleave)="highlightOption=null"\n\t\t\t\t\t(click)="selectItem(option)"\n\t\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf="!itemTemplate"\n\t\t\t\t\t>{{field ? objectUtils.resolveFieldData(option, field) : option}}\n\t\t\t\t\t</span>\n\t\t\t\t\t<ng-container\n\t\t\t\t\t\t*ngTemplateOutlet="itemTemplate; context: {$implicit: option, index: idx}">\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf="noResults && emptyMessage" class="autocomplete__panel-item">{{emptyMessage}}</div>\n\t\t\t</div>\n\t\t</mad-scrollbar>\n\t</div>\n</div>\n',styles:[".autocomplete,.autocomplete-multiple{width:auto;zoom:1;cursor:pointer;-webkit-box-shadow:none;box-shadow:none;position:relative;display:block}.autocomplete__host--filled,.autocomplete__host--focus{border:10px solid red!important}.autocomplete-multiple__button,.autocomplete__button{height:100%;margin-right:0;position:absolute;top:0;right:0;bottom:0;font-size:1.5rem;padding:0;width:2rem;background:0 0;border:none;cursor:pointer;z-index:100}.autocomplete-multiple__button:focus,.autocomplete__button:focus{outline:0}.autocomplete-multiple__input,.autocomplete-multiple__pseudo,.autocomplete__input,.autocomplete__pseudo{position:relative;text-overflow:ellipsis;z-index:50;background:0 0}.autocomplete__input--active{border-radius:.25rem .25rem 0 0}.autocomplete__pseudo{position:absolute;bottom:0;top:0;left:0;right:0;opacity:.35;z-index:1}.autocomplete--dd .autocomplete-multiple__input,.autocomplete--dd .autocomplete-multiple__pseudo,.autocomplete--dd .autocomplete__input,.autocomplete--dd .autocomplete__pseudo{padding-right:1.5em}.autocomplete__panel{-webkit-box-shadow:inset 0 -1px 1px rgba(0,0,0,.4);box-shadow:inset 0 -1px 1px rgba(0,0,0,.4)}.autocomplete__panel-item{padding-left:.75rem;padding-right:.75rem}.autocomplete__loader{position:absolute;top:0;bottom:0;right:auto;left:101%;font-size:1.5rem;width:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.autocomplete__loader:before{-webkit-animation:1s infinite process;animation:1s infinite process}@-webkit-keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}@keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}.autocomplete--dd .autocomplete__loader{right:0;left:auto}.autocomplete-multiple{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.autocomplete-multiple__container{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.autocomplete-multiple__pseudo{white-space:nowrap;opacity:.35;z-index:5}.autocomplete-multiple__input{outline:0;position:absolute;top:0;bottom:0;left:0;right:0;z-index:10}.autocomplete-multiple__input:focus{outline:0}.autocomplete-multiple__token{border:0;outline:0;background-color:transparent;margin:0;padding:0 .5rem 0 0;-webkit-box-shadow:none;box-shadow:none;border-radius:0;position:relative}.autocomplete-multiple__token--added{padding:0 1.2rem 0 0;margin-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-multiple__token-icon{position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:1.2rem;font-size:.75rem;opacity:.5}.autocomplete-multiple__token-icon:hover{opacity:1}.autocomplete__panel{position:absolute;overflow:auto;background:#fff}"],host:{"[class.autocomplete__host--filled]":"filled","[class.autocomplete__host--focus]":"focus"},providers:[c,d,h]}]}],m.ctorParameters=function(){return[{type:r.ElementRef},{type:c},{type:r.Renderer2},{type:d},{type:r.ChangeDetectorRef},{type:r.IterableDiffers}]},m.propDecorators={minLength:[{type:r.Input}],delay:[{type:r.Input}],customScrollBar:[{type:r.Input}],style:[{type:r.Input}],styleClass:[{type:r.Input}],inputStyle:[{type:r.Input}],inputId:[{type:r.Input}],inputStyleClass:[{type:r.Input}],placeholder:[{type:r.Input}],readonly:[{type:r.Input}],disabled:[{type:r.Input}],maxlength:[{type:r.Input}],required:[{type:r.Input}],size:[{type:r.Input}],appendTo:[{type:r.Input}],autoHighlight:[{type:r.Input}],forceSelection:[{type:r.Input}],type:[{type:r.Input}],completeMethod:[{type:r.Output}],createNew:[{type:r.Output}],onSelect:[{type:r.Output}],onUnselect:[{type:r.Output}],onFocus:[{type:r.Output}],onBlur:[{type:r.Output}],onDropdownClick:[{type:r.Output}],onClear:[{type:r.Output}],onKeyUp:[{type:r.Output}],field:[{type:r.Input}],scrollHeight:[{type:r.Input}],dropdown:[{type:r.Input}],dropdownMode:[{type:r.Input}],multiple:[{type:r.Input}],tabindex:[{type:r.Input}],dataKey:[{type:r.Input}],emptyMessage:[{type:r.Input}],immutable:[{type:r.Input}],inputEL:[{type:r.ViewChild,args:["in"]}],multiInputEL:[{type:r.ViewChild,args:["multiIn"]}],panelEL:[{type:r.ViewChild,args:["panel"]}],multiContainerEL:[{type:r.ViewChild,args:["multiContainer"]}],dropdownButton:[{type:r.ViewChild,args:["ddBtn"]}],templates:[{type:r.ContentChildren,args:[p]}],suggestions:[{type:r.Input}]};var f=function(){};f.decorators=[{type:r.NgModule,args:[{imports:[e.CommonModule,u,i.MadScrollbarModule],exports:[m,u],declarations:[m]}]}],f.ctorParameters=function(){return[]},t.MadAutoCompleteModule=f,t.ɵb=a,t.ɵa=s,t.ɵc=p,t.ɵd=u,t.ɵg=c,t.ɵe=h,t.ɵf=m,t.ɵh=d,Object.defineProperty(t,"__esModule",{value:!0})});
//# sourceMappingURL=madbrothers-ngx-mad-autocomplete.umd.min.js.map

@@ -1,4 +0,5 @@

import { NgModule, EventEmitter, Directive, Input, Output, ContentChildren, ContentChild, TemplateRef, Component, Injectable, ViewChild, ElementRef, Renderer2, forwardRef, ChangeDetectorRef, IterableDiffers } from '@angular/core';
import { NgModule, Directive, Input, TemplateRef, Component, Injectable, ViewChild, ElementRef, Output, EventEmitter, ContentChildren, Renderer2, forwardRef, ChangeDetectorRef, IterableDiffers } from '@angular/core';
import { CommonModule } from '@angular/common';
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { MadScrollbarModule } from '@madbrothers/ngx-mad-scrollbar';

@@ -57,122 +58,2 @@ /**

};
class Column {
constructor() {
this.filterType = 'text';
this.exportable = true;
this.resizable = true;
this.sortFunction = new EventEmitter();
}
/**
* @return {?}
*/
ngAfterContentInit() {
this.templates.forEach(item => {
switch (item.getType()) {
case 'header':
this.headerTemplate = item.template;
break;
case 'body':
this.bodyTemplate = item.template;
break;
case 'footer':
this.footerTemplate = item.template;
break;
case 'filter':
this.filterTemplate = item.template;
break;
case 'editor':
this.editorTemplate = item.template;
break;
default:
this.bodyTemplate = item.template;
break;
}
});
}
}
Column.decorators = [
{ type: Component, args: [{
selector: 'p-column',
template: ''
},] },
];
/** @nocollapse */
Column.ctorParameters = () => [];
Column.propDecorators = {
"field": [{ type: Input },],
"colId": [{ type: Input },],
"sortField": [{ type: Input },],
"filterField": [{ type: Input },],
"header": [{ type: Input },],
"footer": [{ type: Input },],
"sortable": [{ type: Input },],
"editable": [{ type: Input },],
"filter": [{ type: Input },],
"filterMatchMode": [{ type: Input },],
"filterType": [{ type: Input },],
"excludeGlobalFilter": [{ type: Input },],
"rowspan": [{ type: Input },],
"colspan": [{ type: Input },],
"scope": [{ type: Input },],
"style": [{ type: Input },],
"styleClass": [{ type: Input },],
"exportable": [{ type: Input },],
"headerStyle": [{ type: Input },],
"headerStyleClass": [{ type: Input },],
"bodyStyle": [{ type: Input },],
"bodyStyleClass": [{ type: Input },],
"footerStyle": [{ type: Input },],
"footerStyleClass": [{ type: Input },],
"hidden": [{ type: Input },],
"expander": [{ type: Input },],
"selectionMode": [{ type: Input },],
"filterPlaceholder": [{ type: Input },],
"filterMaxlength": [{ type: Input },],
"frozen": [{ type: Input },],
"resizable": [{ type: Input },],
"sortFunction": [{ type: Output },],
"templates": [{ type: ContentChildren, args: [PrimeTemplate,] },],
"template": [{ type: ContentChild, args: [TemplateRef,] },],
};
class Row {
}
Row.decorators = [
{ type: Component, args: [{
selector: 'p-row',
template: ``
},] },
];
/** @nocollapse */
Row.ctorParameters = () => [];
Row.propDecorators = {
"columns": [{ type: ContentChildren, args: [Column,] },],
};
class HeaderColumnGroup {
}
HeaderColumnGroup.decorators = [
{ type: Component, args: [{
selector: 'p-headerColumnGroup',
template: ``
},] },
];
/** @nocollapse */
HeaderColumnGroup.ctorParameters = () => [];
HeaderColumnGroup.propDecorators = {
"frozen": [{ type: Input },],
"rows": [{ type: ContentChildren, args: [Row,] },],
};
class FooterColumnGroup {
}
FooterColumnGroup.decorators = [
{ type: Component, args: [{
selector: 'p-footerColumnGroup',
template: ``
},] },
];
/** @nocollapse */
FooterColumnGroup.ctorParameters = () => [];
FooterColumnGroup.propDecorators = {
"frozen": [{ type: Input },],
"rows": [{ type: ContentChildren, args: [Row,] },],
};
class SharedModule {

@@ -183,4 +64,4 @@ }

imports: [CommonModule],
exports: [Header, Footer, Column, PrimeTemplate, Row, HeaderColumnGroup, FooterColumnGroup],
declarations: [Header, Footer, Column, PrimeTemplate, Row, HeaderColumnGroup, FooterColumnGroup]
exports: [Header, Footer, PrimeTemplate],
declarations: [Header, Footer, PrimeTemplate]
},] },

@@ -990,3 +871,3 @@ ];

*/
const /** @type {?} */ AUTOCOMPLETE_VALUE_ACCESSOR = {
const AUTOCOMPLETE_VALUE_ACCESSOR = {
provide: NG_VALUE_ACCESSOR,

@@ -1014,2 +895,3 @@ useExisting: forwardRef(() => MadAutoComplete),

this.delay = 300;
this.customScrollBar = false;
this.appendTo = 'body';

@@ -1494,3 +1376,3 @@ this.autoHighlight = true;

}
else {
else if (!this.selectItem) {
this.createNew.emit(event.target.value.trim());

@@ -1616,3 +1498,3 @@ }

selector: 'mad-autocomplete',
template: `<span [ngClass]="{'autocomplete':!multiple,'autocomplete--dd':dropdown,'autocomplete-multiple':multiple}"
template: `<div [ngClass]="{'autocomplete':!multiple,'autocomplete--dd':dropdown,'autocomplete-multiple':multiple}"
[ngStyle]="style"

@@ -1624,2 +1506,4 @@ [class]="styleClass"

</span>
<input

@@ -1649,2 +1533,5 @@ #in

/>
<div

@@ -1691,3 +1578,5 @@ #multiContainer

/>
<i *ngIf="loading" class="autocomplete__loader icon-loader"></i>
<button

@@ -1707,3 +1596,5 @@ #ddBtn

</div>
<i *ngIf="loading && !multiple" class="autocomplete__loader icon-loader"></i>
<button

@@ -1721,2 +1612,3 @@ #ddBtn

</button>
<div

@@ -1729,6 +1621,7 @@ #panel

>
<div
class="autocomplete__panel-list"
*ngIf="panelVisible"
>
<mad-scrollbar [style]="{width: '100%'}" [customScrollBar]="customScrollBar">
<div
class="autocomplete__panel-list"
*ngIf="panelVisible"
>
<div

@@ -1750,5 +1643,6 @@ *ngFor="let option of suggestions; let idx = index"

<div *ngIf="noResults && emptyMessage" class="autocomplete__panel-item">{{emptyMessage}}</div>
</div>
</div>
</mad-scrollbar>
</div>
</span>
</div>
`,

@@ -1775,2 +1669,3 @@ styles: [`.autocomplete,.autocomplete-multiple{width:auto;zoom:1;cursor:pointer;-webkit-box-shadow:none;box-shadow:none;position:relative;display:block}.autocomplete__host--filled,.autocomplete__host--focus{border:10px solid red!important}.autocomplete-multiple__button,.autocomplete__button{height:100%;margin-right:0;position:absolute;top:0;right:0;bottom:0;font-size:1.5rem;padding:0;width:2rem;background:0 0;border:none;cursor:pointer;z-index:100}.autocomplete-multiple__button:focus,.autocomplete__button:focus{outline:0}.autocomplete-multiple__input,.autocomplete-multiple__pseudo,.autocomplete__input,.autocomplete__pseudo{position:relative;text-overflow:ellipsis;z-index:50;background:0 0}.autocomplete__input--active{border-radius:.25rem .25rem 0 0}.autocomplete__pseudo{position:absolute;bottom:0;top:0;left:0;right:0;opacity:.35;z-index:1}.autocomplete--dd .autocomplete-multiple__input,.autocomplete--dd .autocomplete-multiple__pseudo,.autocomplete--dd .autocomplete__input,.autocomplete--dd .autocomplete__pseudo{padding-right:1.5em}.autocomplete__panel{-webkit-box-shadow:inset 0 -1px 1px rgba(0,0,0,.4);box-shadow:inset 0 -1px 1px rgba(0,0,0,.4)}.autocomplete__panel-item{padding-left:.75rem;padding-right:.75rem}.autocomplete__loader{position:absolute;top:0;bottom:0;right:auto;left:101%;font-size:1.5rem;width:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.autocomplete__loader:before{-webkit-animation:1s infinite process;animation:1s infinite process}@-webkit-keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}@keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}.autocomplete--dd .autocomplete__loader{right:0;left:auto}.autocomplete-multiple{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.autocomplete-multiple__container{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.autocomplete-multiple__pseudo{white-space:nowrap;opacity:.35;z-index:5}.autocomplete-multiple__input{outline:0;position:absolute;top:0;bottom:0;left:0;right:0;z-index:10}.autocomplete-multiple__input:focus{outline:0}.autocomplete-multiple__token{border:0;outline:0;background-color:transparent;margin:0;padding:0 .5rem 0 0;-webkit-box-shadow:none;box-shadow:none;border-radius:0;position:relative}.autocomplete-multiple__token--added{padding:0 1.2rem 0 0;margin-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-multiple__token-icon{position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:1.2rem;font-size:.75rem;opacity:.5}.autocomplete-multiple__token-icon:hover{opacity:1}.autocomplete__panel{position:absolute;overflow:auto;background:#fff}`],

"delay": [{ type: Input },],
"customScrollBar": [{ type: Input },],
"style": [{ type: Input },],

@@ -1826,3 +1721,3 @@ "styleClass": [{ type: Input },],

{ type: NgModule, args: [{
imports: [CommonModule, SharedModule],
imports: [CommonModule, SharedModule, MadScrollbarModule],
exports: [MadAutoComplete, SharedModule],

@@ -1844,4 +1739,7 @@ declarations: [MadAutoComplete]

*/
/**
* Generated bundle index. Do not edit.
*/
export { MadAutoCompleteModule, Column as ɵd, Footer as ɵb, FooterColumnGroup as ɵg, Header as ɵa, HeaderColumnGroup as ɵf, PrimeTemplate as ɵc, Row as ɵe, SharedModule as ɵh, DomHandler as ɵk, AUTOCOMPLETE_VALUE_ACCESSOR as ɵi, MadAutoComplete as ɵj, ObjectUtils as ɵl };
export { MadAutoCompleteModule, Footer as ɵb, Header as ɵa, PrimeTemplate as ɵc, SharedModule as ɵd, DomHandler as ɵg, AUTOCOMPLETE_VALUE_ACCESSOR as ɵe, MadAutoComplete as ɵf, ObjectUtils as ɵh };
//# sourceMappingURL=madbrothers-ngx-mad-autocomplete.js.map
import { __values, __spread } from 'tslib';
import { NgModule, EventEmitter, Directive, Input, Output, ContentChildren, ContentChild, TemplateRef, Component, Injectable, ViewChild, ElementRef, Renderer2, forwardRef, ChangeDetectorRef, IterableDiffers } from '@angular/core';
import { NgModule, Directive, Input, TemplateRef, Component, Injectable, ViewChild, ElementRef, Output, EventEmitter, ContentChildren, Renderer2, forwardRef, ChangeDetectorRef, IterableDiffers } from '@angular/core';
import { CommonModule } from '@angular/common';
import { NG_VALUE_ACCESSOR } from '@angular/forms';
import { MadScrollbarModule } from '@madbrothers/ngx-mad-scrollbar';

@@ -52,126 +53,2 @@ var Header = /** @class */ (function () {

};
var Column = /** @class */ (function () {
function Column() {
this.filterType = 'text';
this.exportable = true;
this.resizable = true;
this.sortFunction = new EventEmitter();
}
Column.prototype.ngAfterContentInit = function () {
var _this = this;
this.templates.forEach(function (item) {
switch (item.getType()) {
case 'header':
_this.headerTemplate = item.template;
break;
case 'body':
_this.bodyTemplate = item.template;
break;
case 'footer':
_this.footerTemplate = item.template;
break;
case 'filter':
_this.filterTemplate = item.template;
break;
case 'editor':
_this.editorTemplate = item.template;
break;
default:
_this.bodyTemplate = item.template;
break;
}
});
};
return Column;
}());
Column.decorators = [
{ type: Component, args: [{
selector: 'p-column',
template: ''
},] },
];
Column.ctorParameters = function () { return []; };
Column.propDecorators = {
"field": [{ type: Input },],
"colId": [{ type: Input },],
"sortField": [{ type: Input },],
"filterField": [{ type: Input },],
"header": [{ type: Input },],
"footer": [{ type: Input },],
"sortable": [{ type: Input },],
"editable": [{ type: Input },],
"filter": [{ type: Input },],
"filterMatchMode": [{ type: Input },],
"filterType": [{ type: Input },],
"excludeGlobalFilter": [{ type: Input },],
"rowspan": [{ type: Input },],
"colspan": [{ type: Input },],
"scope": [{ type: Input },],
"style": [{ type: Input },],
"styleClass": [{ type: Input },],
"exportable": [{ type: Input },],
"headerStyle": [{ type: Input },],
"headerStyleClass": [{ type: Input },],
"bodyStyle": [{ type: Input },],
"bodyStyleClass": [{ type: Input },],
"footerStyle": [{ type: Input },],
"footerStyleClass": [{ type: Input },],
"hidden": [{ type: Input },],
"expander": [{ type: Input },],
"selectionMode": [{ type: Input },],
"filterPlaceholder": [{ type: Input },],
"filterMaxlength": [{ type: Input },],
"frozen": [{ type: Input },],
"resizable": [{ type: Input },],
"sortFunction": [{ type: Output },],
"templates": [{ type: ContentChildren, args: [PrimeTemplate,] },],
"template": [{ type: ContentChild, args: [TemplateRef,] },],
};
var Row = /** @class */ (function () {
function Row() {
}
return Row;
}());
Row.decorators = [
{ type: Component, args: [{
selector: 'p-row',
template: ""
},] },
];
Row.ctorParameters = function () { return []; };
Row.propDecorators = {
"columns": [{ type: ContentChildren, args: [Column,] },],
};
var HeaderColumnGroup = /** @class */ (function () {
function HeaderColumnGroup() {
}
return HeaderColumnGroup;
}());
HeaderColumnGroup.decorators = [
{ type: Component, args: [{
selector: 'p-headerColumnGroup',
template: ""
},] },
];
HeaderColumnGroup.ctorParameters = function () { return []; };
HeaderColumnGroup.propDecorators = {
"frozen": [{ type: Input },],
"rows": [{ type: ContentChildren, args: [Row,] },],
};
var FooterColumnGroup = /** @class */ (function () {
function FooterColumnGroup() {
}
return FooterColumnGroup;
}());
FooterColumnGroup.decorators = [
{ type: Component, args: [{
selector: 'p-footerColumnGroup',
template: ""
},] },
];
FooterColumnGroup.ctorParameters = function () { return []; };
FooterColumnGroup.propDecorators = {
"frozen": [{ type: Input },],
"rows": [{ type: ContentChildren, args: [Row,] },],
};
var SharedModule = /** @class */ (function () {

@@ -185,4 +62,4 @@ function SharedModule() {

imports: [CommonModule],
exports: [Header, Footer, Column, PrimeTemplate, Row, HeaderColumnGroup, FooterColumnGroup],
declarations: [Header, Footer, Column, PrimeTemplate, Row, HeaderColumnGroup, FooterColumnGroup]
exports: [Header, Footer, PrimeTemplate],
declarations: [Header, Footer, PrimeTemplate]
},] },

@@ -792,2 +669,3 @@ ];

this.delay = 300;
this.customScrollBar = false;
this.appendTo = 'body';

@@ -1189,3 +1067,3 @@ this.autoHighlight = true;

}
else {
else if (!this.selectItem) {
this.createNew.emit(event.target.value.trim());

@@ -1283,3 +1161,3 @@ }

selector: 'mad-autocomplete',
template: "<span [ngClass]=\"{'autocomplete':!multiple,'autocomplete--dd':dropdown,'autocomplete-multiple':multiple}\"\n\t\t\t[ngStyle]=\"style\"\n\t\t\t[class]=\"styleClass\"\n>\n\t<span *ngIf=\"!multiple\" class=\"form-control autocomplete__pseudo\">\n\t\t{{ highlightOptionValue }}\n\t</span>\n\t<input\n\t\t#in\n\t\t*ngIf=\"!multiple\"\n\t\t[attr.type]=\"type\"\n\t\t[attr.id]=\"inputId\"\n\t\t[ngStyle]=\"inputStyle\"\n\t\t[class]=\"inputStyleClass\"\n\t\tautocomplete=\"off\"\n\t\t[attr.required]=\"required\"\n\t\t[ngClass]=\"{'form-control autocomplete__input': true, 'autocomplete__input--active': panelVisible}\"\n\t\t[value]=\"inputFieldValue\"\n\t\t(click)=\"onInputClick($event)\"\n\t\t(input)=\"onInput($event)\"\n\t\t(keydown)=\"onKeydown($event)\"\n\t\t(keyup)=\"onKeyup($event)\"\n\t\t(focus)=\"onInputFocus($event)\"\n\t\t(blur)=\"onInputBlur($event)\"\n\t\t(change)=\"onInputChange($event)\"\n\t\t[attr.placeholder]=\"placeholder\"\n\t\t[attr.size]=\"size\" [attr.maxlength]=\"maxlength\"\n\t\t[attr.tabindex]=\"tabindex\"\n\t\t[readonly]=\"readonly\"\n\t\t[disabled]=\"disabled\"\n\t/>\n <div\n\t\t#multiContainer\n\t\t*ngIf=\"multiple\"\n\t\tclass=\"autocomplete-multiple__container\"\n\t\t[ngClass]=\"{'ui-state-disabled':disabled,'ui-state-focus':focus}\"\n\t\t(click)=\"multiIn.focus()\">\n\t\t\t<div\n\t\t\t\t#token\n\t\t\t\t*ngFor=\"let val of value\"\n\t\t\t\tclass=\"autocomplete-multiple__token autocomplete-multiple__token--added\"\n\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"autocomplete-multiple__token-icon icon-x\"\n\t\t\t\t\t\t(click)=\"removeItem(token)\"\n\t\t\t\t\t\t*ngIf=\"!disabled\"\n\t\t\t\t\t></span>\n\t\t\t\t\t<span *ngIf=\"!selectedItemTemplate\" class=\"form-control-plaintext\">{{field ? objectUtils.resolveFieldData(val, field): val}}</span>\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"selectedItemTemplate; context: {$implicit: val}\"></ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"autocomplete-multiple__token\">\n\t\t\t\t<span class=\"form-control-plaintext autocomplete-multiple__pseudo\">\n\t\t\t\t\t{{ highlightOptionValue || multipleValue || placeholder}}\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\t#multiIn\n\t\t\t\t\t[attr.type]=\"type\"\n\t\t\t\t\t[attr.id]=\"inputId\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[attr.placeholder]=\"placeholder\"\n\t\t\t\t\t[attr.tabindex]=\"tabindex\"\n\t\t\t\t\t(input)=\"onInput($event)\"\n\t\t\t\t\t(click)=\"onInputClick($event)\"\n\t\t\t\t\t(keydown)=\"onKeydown($event)\"\n\t\t\t\t\t(keyup)=\"onKeyup($event)\"\n\t\t\t\t\t(focus)=\"onInputFocus($event)\"\n\t\t\t\t\t(blur)=\"onInputBlur($event)\"\n\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\t[ngStyle]=\"inputStyle\"\n\t\t\t\t\t[class]=\"inputStyleClass\"\n\t\t\t\t\t[ngClass]=\"'form-control-plaintext autocomplete-multiple__input'\"\n\t\t\t\t/>\n\t\t\t\t<i *ngIf=\"loading\" class=\"autocomplete__loader icon-loader\"></i>\n\t\t\t\t<button\n\t\t\t\t\t#ddBtn\n\t\t\t\t\t*ngIf=\"dropdown\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"autocomplete-multiple__button\"\n\t\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t\t\t\t}\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t(click)=\"handleDropdownClick($event)\">\n\t\t\t\t</button>\n\t\t\t</div>\n\t</div>\n <i *ngIf=\"loading && !multiple\" class=\"autocomplete__loader icon-loader\"></i>\n <button\n\t\t#ddBtn\n\t\t*ngIf=\"dropdown && !multiple\"\n\t\ttype=\"button\"\n\t\tclass=\"autocomplete__button\"\n\t\t[ngClass]=\"{\n\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t}\"\n\t\t[disabled]=\"disabled\"\n\t\t(click)=\"handleDropdownClick($event)\">\n\t</button>\n\t<div\n\t\t#panel\n\t\tclass=\"autocomplete__panel\"\n\t\t[style.display]=\"panelVisible ? 'block' : 'none'\"\n\t\t[style.width]=\"appendTo ? 'auto' : '100%'\"\n\t\t[style.max-height]=\"scrollHeight\"\n\t>\n\t\t<div\n\t\t\tclass=\"autocomplete__panel-list\"\n\t\t\t*ngIf=\"panelVisible\"\n\t\t>\n\t\t\t\t<div\n\t\t\t\t\t*ngFor=\"let option of suggestions; let idx = index\"\n\t\t\t\t\t[ngClass]=\"{'form-control-plaintext autocomplete__panel-item':true,'bg-primary text-white':(highlightOption==option)}\"\n\t\t\t\t\t(mouseenter)=\"highlightOption=option\"\n\t\t\t\t\t(mouseleave)=\"highlightOption=null\"\n\t\t\t\t\t(click)=\"selectItem(option)\"\n\t\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!itemTemplate\"\n\t\t\t\t\t>{{field ? objectUtils.resolveFieldData(option, field) : option}}\n\t\t\t\t\t</span>\n\t\t\t\t\t<ng-container\n\t\t\t\t\t\t*ngTemplateOutlet=\"itemTemplate; context: {$implicit: option, index: idx}\">\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"noResults && emptyMessage\" class=\"autocomplete__panel-item\">{{emptyMessage}}</div>\n\t\t</div>\n\t</div>\n</span>\n",
template: "<div [ngClass]=\"{'autocomplete':!multiple,'autocomplete--dd':dropdown,'autocomplete-multiple':multiple}\"\n\t\t\t[ngStyle]=\"style\"\n\t\t\t[class]=\"styleClass\"\n>\n\t<span *ngIf=\"!multiple\" class=\"form-control autocomplete__pseudo\">\n\t\t{{ highlightOptionValue }}\n\t</span>\n\n\n\t<input\n\t\t#in\n\t\t*ngIf=\"!multiple\"\n\t\t[attr.type]=\"type\"\n\t\t[attr.id]=\"inputId\"\n\t\t[ngStyle]=\"inputStyle\"\n\t\t[class]=\"inputStyleClass\"\n\t\tautocomplete=\"off\"\n\t\t[attr.required]=\"required\"\n\t\t[ngClass]=\"{'form-control autocomplete__input': true, 'autocomplete__input--active': panelVisible}\"\n\t\t[value]=\"inputFieldValue\"\n\t\t(click)=\"onInputClick($event)\"\n\t\t(input)=\"onInput($event)\"\n\t\t(keydown)=\"onKeydown($event)\"\n\t\t(keyup)=\"onKeyup($event)\"\n\t\t(focus)=\"onInputFocus($event)\"\n\t\t(blur)=\"onInputBlur($event)\"\n\t\t(change)=\"onInputChange($event)\"\n\t\t[attr.placeholder]=\"placeholder\"\n\t\t[attr.size]=\"size\" [attr.maxlength]=\"maxlength\"\n\t\t[attr.tabindex]=\"tabindex\"\n\t\t[readonly]=\"readonly\"\n\t\t[disabled]=\"disabled\"\n\t/>\n\n\n\n <div\n\t\t#multiContainer\n\t\t*ngIf=\"multiple\"\n\t\tclass=\"autocomplete-multiple__container\"\n\t\t[ngClass]=\"{'ui-state-disabled':disabled,'ui-state-focus':focus}\"\n\t\t(click)=\"multiIn.focus()\">\n\t\t\t<div\n\t\t\t\t#token\n\t\t\t\t*ngFor=\"let val of value\"\n\t\t\t\tclass=\"autocomplete-multiple__token autocomplete-multiple__token--added\"\n\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"autocomplete-multiple__token-icon icon-x\"\n\t\t\t\t\t\t(click)=\"removeItem(token)\"\n\t\t\t\t\t\t*ngIf=\"!disabled\"\n\t\t\t\t\t></span>\n\t\t\t\t\t<span *ngIf=\"!selectedItemTemplate\" class=\"form-control-plaintext\">{{field ? objectUtils.resolveFieldData(val, field): val}}</span>\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"selectedItemTemplate; context: {$implicit: val}\"></ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"autocomplete-multiple__token\">\n\t\t\t\t<span class=\"form-control-plaintext autocomplete-multiple__pseudo\">\n\t\t\t\t\t{{ highlightOptionValue || multipleValue || placeholder}}\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\t#multiIn\n\t\t\t\t\t[attr.type]=\"type\"\n\t\t\t\t\t[attr.id]=\"inputId\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[attr.placeholder]=\"placeholder\"\n\t\t\t\t\t[attr.tabindex]=\"tabindex\"\n\t\t\t\t\t(input)=\"onInput($event)\"\n\t\t\t\t\t(click)=\"onInputClick($event)\"\n\t\t\t\t\t(keydown)=\"onKeydown($event)\"\n\t\t\t\t\t(keyup)=\"onKeyup($event)\"\n\t\t\t\t\t(focus)=\"onInputFocus($event)\"\n\t\t\t\t\t(blur)=\"onInputBlur($event)\"\n\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\t[ngStyle]=\"inputStyle\"\n\t\t\t\t\t[class]=\"inputStyleClass\"\n\t\t\t\t\t[ngClass]=\"'form-control-plaintext autocomplete-multiple__input'\"\n\t\t\t\t/>\n\n\t\t\t\t<i *ngIf=\"loading\" class=\"autocomplete__loader icon-loader\"></i>\n\n\t\t\t\t<button\n\t\t\t\t\t#ddBtn\n\t\t\t\t\t*ngIf=\"dropdown\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"autocomplete-multiple__button\"\n\t\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t\t\t\t}\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t(click)=\"handleDropdownClick($event)\">\n\t\t\t\t</button>\n\t\t\t</div>\n\t</div>\n\n <i *ngIf=\"loading && !multiple\" class=\"autocomplete__loader icon-loader\"></i>\n\n <button\n\t\t#ddBtn\n\t\t*ngIf=\"dropdown && !multiple\"\n\t\ttype=\"button\"\n\t\tclass=\"autocomplete__button\"\n\t\t[ngClass]=\"{\n\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t}\"\n\t\t[disabled]=\"disabled\"\n\t\t(click)=\"handleDropdownClick($event)\">\n\t</button>\n\n\t<div\n\t\t#panel\n\t\tclass=\"autocomplete__panel\"\n\t\t[style.display]=\"panelVisible ? 'block' : 'none'\"\n\t\t[style.width]=\"appendTo ? 'auto' : '100%'\"\n\t\t[style.max-height]=\"scrollHeight\"\n\t>\n\t\t<mad-scrollbar [style]=\"{width: '100%'}\" [customScrollBar]=\"customScrollBar\">\n\t\t\t<div\n\t\t\t\tclass=\"autocomplete__panel-list\"\n\t\t\t\t*ngIf=\"panelVisible\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\t*ngFor=\"let option of suggestions; let idx = index\"\n\t\t\t\t\t[ngClass]=\"{'form-control-plaintext autocomplete__panel-item':true,'bg-primary text-white':(highlightOption==option)}\"\n\t\t\t\t\t(mouseenter)=\"highlightOption=option\"\n\t\t\t\t\t(mouseleave)=\"highlightOption=null\"\n\t\t\t\t\t(click)=\"selectItem(option)\"\n\t\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!itemTemplate\"\n\t\t\t\t\t>{{field ? objectUtils.resolveFieldData(option, field) : option}}\n\t\t\t\t\t</span>\n\t\t\t\t\t<ng-container\n\t\t\t\t\t\t*ngTemplateOutlet=\"itemTemplate; context: {$implicit: option, index: idx}\">\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"noResults && emptyMessage\" class=\"autocomplete__panel-item\">{{emptyMessage}}</div>\n\t\t\t</div>\n\t\t</mad-scrollbar>\n\t</div>\n</div>\n",
styles: [".autocomplete,.autocomplete-multiple{width:auto;zoom:1;cursor:pointer;-webkit-box-shadow:none;box-shadow:none;position:relative;display:block}.autocomplete__host--filled,.autocomplete__host--focus{border:10px solid red!important}.autocomplete-multiple__button,.autocomplete__button{height:100%;margin-right:0;position:absolute;top:0;right:0;bottom:0;font-size:1.5rem;padding:0;width:2rem;background:0 0;border:none;cursor:pointer;z-index:100}.autocomplete-multiple__button:focus,.autocomplete__button:focus{outline:0}.autocomplete-multiple__input,.autocomplete-multiple__pseudo,.autocomplete__input,.autocomplete__pseudo{position:relative;text-overflow:ellipsis;z-index:50;background:0 0}.autocomplete__input--active{border-radius:.25rem .25rem 0 0}.autocomplete__pseudo{position:absolute;bottom:0;top:0;left:0;right:0;opacity:.35;z-index:1}.autocomplete--dd .autocomplete-multiple__input,.autocomplete--dd .autocomplete-multiple__pseudo,.autocomplete--dd .autocomplete__input,.autocomplete--dd .autocomplete__pseudo{padding-right:1.5em}.autocomplete__panel{-webkit-box-shadow:inset 0 -1px 1px rgba(0,0,0,.4);box-shadow:inset 0 -1px 1px rgba(0,0,0,.4)}.autocomplete__panel-item{padding-left:.75rem;padding-right:.75rem}.autocomplete__loader{position:absolute;top:0;bottom:0;right:auto;left:101%;font-size:1.5rem;width:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.autocomplete__loader:before{-webkit-animation:1s infinite process;animation:1s infinite process}@-webkit-keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}@keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}.autocomplete--dd .autocomplete__loader{right:0;left:auto}.autocomplete-multiple{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.autocomplete-multiple__container{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.autocomplete-multiple__pseudo{white-space:nowrap;opacity:.35;z-index:5}.autocomplete-multiple__input{outline:0;position:absolute;top:0;bottom:0;left:0;right:0;z-index:10}.autocomplete-multiple__input:focus{outline:0}.autocomplete-multiple__token{border:0;outline:0;background-color:transparent;margin:0;padding:0 .5rem 0 0;-webkit-box-shadow:none;box-shadow:none;border-radius:0;position:relative}.autocomplete-multiple__token--added{padding:0 1.2rem 0 0;margin-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-multiple__token-icon{position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:1.2rem;font-size:.75rem;opacity:.5}.autocomplete-multiple__token-icon:hover{opacity:1}.autocomplete__panel{position:absolute;overflow:auto;background:#fff}"],

@@ -1304,2 +1182,3 @@ host: {

"delay": [{ type: Input },],
"customScrollBar": [{ type: Input },],
"style": [{ type: Input },],

@@ -1353,3 +1232,3 @@ "styleClass": [{ type: Input },],

{ type: NgModule, args: [{
imports: [CommonModule, SharedModule],
imports: [CommonModule, SharedModule, MadScrollbarModule],
exports: [MadAutoComplete, SharedModule],

@@ -1361,3 +1240,3 @@ declarations: [MadAutoComplete]

export { MadAutoCompleteModule, Column as ɵd, Footer as ɵb, FooterColumnGroup as ɵg, Header as ɵa, HeaderColumnGroup as ɵf, PrimeTemplate as ɵc, Row as ɵe, SharedModule as ɵh, DomHandler as ɵk, AUTOCOMPLETE_VALUE_ACCESSOR as ɵi, MadAutoComplete as ɵj, ObjectUtils as ɵl };
export { MadAutoCompleteModule, Footer as ɵb, Header as ɵa, PrimeTemplate as ɵc, SharedModule as ɵd, DomHandler as ɵg, AUTOCOMPLETE_VALUE_ACCESSOR as ɵe, MadAutoComplete as ɵf, ObjectUtils as ɵh };
//# sourceMappingURL=madbrothers-ngx-mad-autocomplete.js.map

@@ -5,5 +5,5 @@ /**

export * from './index';
export { Column as ɵd, Footer as ɵb, FooterColumnGroup as ɵg, Header as ɵa, HeaderColumnGroup as ɵf, PrimeTemplate as ɵc, Row as ɵe, SharedModule as ɵh } from './src/common/shared';
export { DomHandler as ɵk } from './src/dom/domhandler';
export { AUTOCOMPLETE_VALUE_ACCESSOR as ɵi, MadAutoComplete as ɵj } from './src/ngx-mad-autocomplete.component';
export { ObjectUtils as ɵl } from './src/utils/objectutils';
export { Footer as ɵb, Header as ɵa, PrimeTemplate as ɵc, SharedModule as ɵd } from './src/common/shared';
export { DomHandler as ɵg } from './src/dom/domhandler';
export { AUTOCOMPLETE_VALUE_ACCESSOR as ɵe, MadAutoComplete as ɵf } from './src/ngx-mad-autocomplete.component';
export { ObjectUtils as ɵh } from './src/utils/objectutils';

@@ -1,1 +0,1 @@

{"__symbolic":"module","version":4,"metadata":{"MadAutoCompleteModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":8,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":9,"character":12},{"__symbolic":"reference","name":"ɵh"}],"exports":[{"__symbolic":"reference","name":"ɵj"},{"__symbolic":"reference","name":"ɵh"}],"declarations":[{"__symbolic":"reference","name":"ɵj"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":21,"character":1},"arguments":[{"selector":"p-header","template":"<ng-content></ng-content>"}]}],"members":{}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":27,"character":1},"arguments":[{"selector":"p-footer","template":"<ng-content></ng-content>"}]}],"members":{}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":33,"character":1},"arguments":[{"selector":"[pTemplate]","host":{}}]}],"members":{"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":38,"character":3}}]}],"name":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":3},"arguments":["pTemplate"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}],"getType":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":50,"character":1},"arguments":[{"selector":"p-column","template":""}]}],"members":{"field":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":55,"character":3}}]}],"colId":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":56,"character":3}}]}],"sortField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":57,"character":3}}]}],"filterField":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":58,"character":3}}]}],"header":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":59,"character":3}}]}],"footer":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":60,"character":3}}]}],"sortable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":61,"character":3}}]}],"editable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":62,"character":3}}]}],"filter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":63,"character":3}}]}],"filterMatchMode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":64,"character":3}}]}],"filterType":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":65,"character":3}}]}],"excludeGlobalFilter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":66,"character":3}}]}],"rowspan":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":67,"character":3}}]}],"colspan":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":68,"character":3}}]}],"scope":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":69,"character":3}}]}],"style":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3}}]}],"styleClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":71,"character":3}}]}],"exportable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":72,"character":3}}]}],"headerStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":73,"character":3}}]}],"headerStyleClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":74,"character":3}}]}],"bodyStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":75,"character":3}}]}],"bodyStyleClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":76,"character":3}}]}],"footerStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":77,"character":3}}]}],"footerStyleClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":78,"character":3}}]}],"hidden":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":79,"character":3}}]}],"expander":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":80,"character":3}}]}],"selectionMode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":81,"character":3}}]}],"filterPlaceholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":82,"character":3}}]}],"filterMaxlength":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":83,"character":3}}]}],"frozen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":84,"character":3}}]}],"resizable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":85,"character":3}}]}],"sortFunction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":86,"character":3}}]}],"templates":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":87,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵc"}]}]}],"template":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":88,"character":3},"arguments":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}],"ngAfterContentInit":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":128,"character":1},"arguments":[{"selector":"p-row","template":""}]}],"members":{"columns":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":133,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵd"}]}]}]}},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":137,"character":1},"arguments":[{"selector":"p-headerColumnGroup","template":""}]}],"members":{"frozen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":142,"character":3}}]}],"rows":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":144,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}]}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":148,"character":1},"arguments":[{"selector":"p-footerColumnGroup","template":""}]}],"members":{"frozen":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":153,"character":3}}]}],"rows":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":155,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵe"}]}]}]}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":158,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":159,"character":12}],"exports":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵg"}],"declarations":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵg"}]}]}],"members":{}},"ɵi":{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":25,"character":11},"useExisting":{"__symbolic":"reference","name":"ɵj"},"multi":true},"ɵj":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":30,"character":1},"arguments":[{"selector":"mad-autocomplete","template":"<span [ngClass]=\"{'autocomplete':!multiple,'autocomplete--dd':dropdown,'autocomplete-multiple':multiple}\"\n\t\t\t[ngStyle]=\"style\"\n\t\t\t[class]=\"styleClass\"\n>\n\t<span *ngIf=\"!multiple\" class=\"form-control autocomplete__pseudo\">\n\t\t{{ highlightOptionValue }}\n\t</span>\n\n\n\t<input\n\t\t#in\n\t\t*ngIf=\"!multiple\"\n\t\t[attr.type]=\"type\"\n\t\t[attr.id]=\"inputId\"\n\t\t[ngStyle]=\"inputStyle\"\n\t\t[class]=\"inputStyleClass\"\n\t\tautocomplete=\"off\"\n\t\t[attr.required]=\"required\"\n\t\t[ngClass]=\"{'form-control autocomplete__input': true, 'autocomplete__input--active': panelVisible}\"\n\t\t[value]=\"inputFieldValue\"\n\t\t(click)=\"onInputClick($event)\"\n\t\t(input)=\"onInput($event)\"\n\t\t(keydown)=\"onKeydown($event)\"\n\t\t(keyup)=\"onKeyup($event)\"\n\t\t(focus)=\"onInputFocus($event)\"\n\t\t(blur)=\"onInputBlur($event)\"\n\t\t(change)=\"onInputChange($event)\"\n\t\t[attr.placeholder]=\"placeholder\"\n\t\t[attr.size]=\"size\" [attr.maxlength]=\"maxlength\"\n\t\t[attr.tabindex]=\"tabindex\"\n\t\t[readonly]=\"readonly\"\n\t\t[disabled]=\"disabled\"\n\t/>\n\n\n\n <div\n\t\t#multiContainer\n\t\t*ngIf=\"multiple\"\n\t\tclass=\"autocomplete-multiple__container\"\n\t\t[ngClass]=\"{'ui-state-disabled':disabled,'ui-state-focus':focus}\"\n\t\t(click)=\"multiIn.focus()\">\n\t\t\t<div\n\t\t\t\t#token\n\t\t\t\t*ngFor=\"let val of value\"\n\t\t\t\tclass=\"autocomplete-multiple__token autocomplete-multiple__token--added\"\n\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"autocomplete-multiple__token-icon icon-x\"\n\t\t\t\t\t\t(click)=\"removeItem(token)\"\n\t\t\t\t\t\t*ngIf=\"!disabled\"\n\t\t\t\t\t></span>\n\t\t\t\t\t<span *ngIf=\"!selectedItemTemplate\" class=\"form-control-plaintext\">{{field ? objectUtils.resolveFieldData(val, field): val}}</span>\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"selectedItemTemplate; context: {$implicit: val}\"></ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"autocomplete-multiple__token\">\n\t\t\t\t<span class=\"form-control-plaintext autocomplete-multiple__pseudo\">\n\t\t\t\t\t{{ highlightOptionValue || multipleValue || placeholder}}\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\t#multiIn\n\t\t\t\t\t[attr.type]=\"type\"\n\t\t\t\t\t[attr.id]=\"inputId\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[attr.placeholder]=\"placeholder\"\n\t\t\t\t\t[attr.tabindex]=\"tabindex\"\n\t\t\t\t\t(input)=\"onInput($event)\"\n\t\t\t\t\t(click)=\"onInputClick($event)\"\n\t\t\t\t\t(keydown)=\"onKeydown($event)\"\n\t\t\t\t\t(keyup)=\"onKeyup($event)\"\n\t\t\t\t\t(focus)=\"onInputFocus($event)\"\n\t\t\t\t\t(blur)=\"onInputBlur($event)\"\n\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\t[ngStyle]=\"inputStyle\"\n\t\t\t\t\t[class]=\"inputStyleClass\"\n\t\t\t\t\t[ngClass]=\"'form-control-plaintext autocomplete-multiple__input'\"\n\t\t\t\t/>\n\n\t\t\t\t<i *ngIf=\"loading\" class=\"autocomplete__loader icon-loader\"></i>\n\n\t\t\t\t<button\n\t\t\t\t\t#ddBtn\n\t\t\t\t\t*ngIf=\"dropdown\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"autocomplete-multiple__button\"\n\t\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t\t\t\t}\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t(click)=\"handleDropdownClick($event)\">\n\t\t\t\t</button>\n\t\t\t</div>\n\t</div>\n\n <i *ngIf=\"loading && !multiple\" class=\"autocomplete__loader icon-loader\"></i>\n\n <button\n\t\t#ddBtn\n\t\t*ngIf=\"dropdown && !multiple\"\n\t\ttype=\"button\"\n\t\tclass=\"autocomplete__button\"\n\t\t[ngClass]=\"{\n\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t}\"\n\t\t[disabled]=\"disabled\"\n\t\t(click)=\"handleDropdownClick($event)\">\n\t</button>\n\n\n\n\t<div\n\t\t#panel\n\t\tclass=\"autocomplete__panel\"\n\t\t[style.display]=\"panelVisible ? 'block' : 'none'\"\n\t\t[style.width]=\"appendTo ? 'auto' : '100%'\"\n\t\t[style.max-height]=\"scrollHeight\"\n\t>\n\t\t<div\n\t\t\tclass=\"autocomplete__panel-list\"\n\t\t\t*ngIf=\"panelVisible\"\n\t\t>\n\t\t\t\t<div\n\t\t\t\t\t*ngFor=\"let option of suggestions; let idx = index\"\n\t\t\t\t\t[ngClass]=\"{'form-control-plaintext autocomplete__panel-item':true,'bg-primary text-white':(highlightOption==option)}\"\n\t\t\t\t\t(mouseenter)=\"highlightOption=option\"\n\t\t\t\t\t(mouseleave)=\"highlightOption=null\"\n\t\t\t\t\t(click)=\"selectItem(option)\"\n\t\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!itemTemplate\"\n\t\t\t\t\t>{{field ? objectUtils.resolveFieldData(option, field) : option}}\n\t\t\t\t\t</span>\n\t\t\t\t\t<ng-container\n\t\t\t\t\t\t*ngTemplateOutlet=\"itemTemplate; context: {$implicit: option, index: idx}\">\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"noResults && emptyMessage\" class=\"autocomplete__panel-item\">{{emptyMessage}}</div>\n\t\t</div>\n\t</div>\n</span>\n","styles":[".autocomplete,.autocomplete-multiple{width:auto;zoom:1;cursor:pointer;-webkit-box-shadow:none;box-shadow:none;position:relative;display:block}.autocomplete__host--filled,.autocomplete__host--focus{border:10px solid red!important}.autocomplete-multiple__button,.autocomplete__button{height:100%;margin-right:0;position:absolute;top:0;right:0;bottom:0;font-size:1.5rem;padding:0;width:2rem;background:0 0;border:none;cursor:pointer;z-index:100}.autocomplete-multiple__button:focus,.autocomplete__button:focus{outline:0}.autocomplete-multiple__input,.autocomplete-multiple__pseudo,.autocomplete__input,.autocomplete__pseudo{position:relative;text-overflow:ellipsis;z-index:50;background:0 0}.autocomplete__input--active{border-radius:.25rem .25rem 0 0}.autocomplete__pseudo{position:absolute;bottom:0;top:0;left:0;right:0;opacity:.35;z-index:1}.autocomplete--dd .autocomplete-multiple__input,.autocomplete--dd .autocomplete-multiple__pseudo,.autocomplete--dd .autocomplete__input,.autocomplete--dd .autocomplete__pseudo{padding-right:1.5em}.autocomplete__panel{-webkit-box-shadow:inset 0 -1px 1px rgba(0,0,0,.4);box-shadow:inset 0 -1px 1px rgba(0,0,0,.4)}.autocomplete__panel-item{padding-left:.75rem;padding-right:.75rem}.autocomplete__loader{position:absolute;top:0;bottom:0;right:auto;left:101%;font-size:1.5rem;width:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.autocomplete__loader:before{-webkit-animation:1s infinite process;animation:1s infinite process}@-webkit-keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}@keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}.autocomplete--dd .autocomplete__loader{right:0;left:auto}.autocomplete-multiple{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.autocomplete-multiple__container{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.autocomplete-multiple__pseudo{white-space:nowrap;opacity:.35;z-index:5}.autocomplete-multiple__input{outline:0;position:absolute;top:0;bottom:0;left:0;right:0;z-index:10}.autocomplete-multiple__input:focus{outline:0}.autocomplete-multiple__token{border:0;outline:0;background-color:transparent;margin:0;padding:0 .5rem 0 0;-webkit-box-shadow:none;box-shadow:none;border-radius:0;position:relative}.autocomplete-multiple__token--added{padding:0 1.2rem 0 0;margin-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-multiple__token-icon{position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:1.2rem;font-size:.75rem;opacity:.5}.autocomplete-multiple__token-icon:hover{opacity:1}.autocomplete__panel{position:absolute;overflow:auto;background:#fff}"],"host":{"[class.autocomplete__host--filled]":"filled","[class.autocomplete__host--focus]":"focus"},"providers":[{"__symbolic":"reference","name":"ɵk"},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","name":"ɵi"}]}]}],"members":{"minLength":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":183,"character":3}}]}],"delay":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":185,"character":3}}]}],"style":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":187,"character":3}}]}],"styleClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":189,"character":3}}]}],"inputStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":191,"character":3}}]}],"inputId":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":193,"character":3}}]}],"inputStyleClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":195,"character":3}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":197,"character":3}}]}],"readonly":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":199,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":201,"character":3}}]}],"maxlength":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":203,"character":3}}]}],"required":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":205,"character":3}}]}],"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":207,"character":3}}]}],"appendTo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":209,"character":3}}]}],"autoHighlight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":211,"character":3}}]}],"forceSelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":213,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":215,"character":3}}]}],"completeMethod":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":217,"character":3}}]}],"createNew":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":219,"character":3}}]}],"onSelect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":221,"character":3}}]}],"onUnselect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":223,"character":3}}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":225,"character":3}}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":227,"character":3}}]}],"onDropdownClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":229,"character":3}}]}],"onClear":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":231,"character":3}}]}],"onKeyUp":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":233,"character":3}}]}],"field":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":235,"character":3}}]}],"scrollHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":237,"character":3}}]}],"dropdown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":239,"character":3}}]}],"dropdownMode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":241,"character":3}}]}],"multiple":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":243,"character":3}}]}],"tabindex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":245,"character":3}}]}],"dataKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":247,"character":3}}]}],"emptyMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":249,"character":3}}]}],"immutable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":251,"character":3}}]}],"inputEL":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":253,"character":3},"arguments":["in"]}]}],"multiInputEL":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":255,"character":3},"arguments":["multiIn"]}]}],"panelEL":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":257,"character":3},"arguments":["panel"]}]}],"multiContainerEL":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":259,"character":3},"arguments":["multiContainer"]}]}],"dropdownButton":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":261,"character":3},"arguments":["ddBtn"]}]}],"templates":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":263,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵc"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":306,"character":15},{"__symbolic":"reference","name":"ɵk"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":308,"character":21},{"__symbolic":"reference","name":"ɵl"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":310,"character":15},{"__symbolic":"reference","module":"@angular/core","name":"IterableDiffers","line":311,"character":20}]}],"suggestions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":316,"character":3}}]}],"ngDoCheck":[{"__symbolic":"method"}],"handleSuggestionsChange":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngAfterViewChecked":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"onInput":[{"__symbolic":"method"}],"onInputClick":[{"__symbolic":"method"}],"search":[{"__symbolic":"method"}],"selectItem":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"align":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"handleDropdownClick":[{"__symbolic":"method"}],"focusInput":[{"__symbolic":"method"}],"removeItem":[{"__symbolic":"method"}],"onKeydown":[{"__symbolic":"method"}],"onKeyup":[{"__symbolic":"method"}],"onInputFocus":[{"__symbolic":"method"}],"onInputBlur":[{"__symbolic":"method"}],"onInputChange":[{"__symbolic":"method"}],"isSelected":[{"__symbolic":"method"}],"findOptionIndex":[{"__symbolic":"method"}],"updateFilledState":[{"__symbolic":"method"}],"updateInputField":[{"__symbolic":"method"}],"bindDocumentClickListener":[{"__symbolic":"method"}],"isDropdownClick":[{"__symbolic":"method"}],"unbindDocumentClickListener":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵk":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1}}],"members":{"addClass":[{"__symbolic":"method"}],"addMultipleClasses":[{"__symbolic":"method"}],"removeClass":[{"__symbolic":"method"}],"hasClass":[{"__symbolic":"method"}],"siblings":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"findSingle":[{"__symbolic":"method"}],"index":[{"__symbolic":"method"}],"indexWithinGroup":[{"__symbolic":"method"}],"relativePosition":[{"__symbolic":"method"}],"absolutePosition":[{"__symbolic":"method"}],"getHiddenElementOuterHeight":[{"__symbolic":"method"}],"getHiddenElementOuterWidth":[{"__symbolic":"method"}],"getHiddenElementDimensions":[{"__symbolic":"method"}],"scrollInView":[{"__symbolic":"method"}],"fadeIn":[{"__symbolic":"method"}],"fadeOut":[{"__symbolic":"method"}],"getWindowScrollTop":[{"__symbolic":"method"}],"getWindowScrollLeft":[{"__symbolic":"method"}],"matches":[{"__symbolic":"method"}],"getOuterWidth":[{"__symbolic":"method"}],"getHorizontalPadding":[{"__symbolic":"method"}],"getHorizontalMargin":[{"__symbolic":"method"}],"innerWidth":[{"__symbolic":"method"}],"width":[{"__symbolic":"method"}],"getInnerHeight":[{"__symbolic":"method"}],"getOuterHeight":[{"__symbolic":"method"}],"getHeight":[{"__symbolic":"method"}],"getWidth":[{"__symbolic":"method"}],"getViewport":[{"__symbolic":"method"}],"getOffset":[{"__symbolic":"method"}],"getUserAgent":[{"__symbolic":"method"}],"isIE":[{"__symbolic":"method"}],"appendChild":[{"__symbolic":"method"}],"removeChild":[{"__symbolic":"method"}],"isElement":[{"__symbolic":"method"}],"calculateScrollbarWidth":[{"__symbolic":"method"}],"invokeElementMethod":[{"__symbolic":"method"}],"clearSelection":[{"__symbolic":"method"}],"getBrowser":[{"__symbolic":"method"}],"resolveUserAgent":[{"__symbolic":"method"}]},"statics":{"zindex":1000}},"ɵl":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1}}],"members":{"equals":[{"__symbolic":"method"}],"equalsByValue":[{"__symbolic":"method"}],"resolveFieldData":[{"__symbolic":"method"}],"filter":[{"__symbolic":"method"}],"reorderArray":[{"__symbolic":"method"}],"generateSelectItems":[{"__symbolic":"method"}],"insertIntoOrderedArray":[{"__symbolic":"method"}],"findIndexInList":[{"__symbolic":"method"}]}}},"origins":{"MadAutoCompleteModule":"./src/ngx-mad-autocomplete.module","ɵa":"./src/common/shared","ɵb":"./src/common/shared","ɵc":"./src/common/shared","ɵd":"./src/common/shared","ɵe":"./src/common/shared","ɵf":"./src/common/shared","ɵg":"./src/common/shared","ɵh":"./src/common/shared","ɵi":"./src/ngx-mad-autocomplete.component","ɵj":"./src/ngx-mad-autocomplete.component","ɵk":"./src/dom/domhandler","ɵl":"./src/utils/objectutils"},"importAs":"@madbrothers/ngx-mad-autocomplete"}
{"__symbolic":"module","version":4,"metadata":{"MadAutoCompleteModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":8,"character":12},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","module":"@madbrothers/ngx-mad-scrollbar","name":"MadScrollbarModule","line":8,"character":40}],"exports":[{"__symbolic":"reference","name":"ɵf"},{"__symbolic":"reference","name":"ɵd"}],"declarations":[{"__symbolic":"reference","name":"ɵf"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"p-header","template":"<ng-content></ng-content>"}]}],"members":{}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":10,"character":1},"arguments":[{"selector":"p-footer","template":"<ng-content></ng-content>"}]}],"members":{}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":16,"character":1},"arguments":[{"selector":"[pTemplate]","host":{}}]}],"members":{"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":21,"character":3}}]}],"name":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":23,"character":3},"arguments":["pTemplate"]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}],"getType":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":32,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":33,"character":12}],"exports":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}],"declarations":[{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}]}]}],"members":{}},"ɵe":{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":25,"character":11},"useExisting":{"__symbolic":"reference","name":"ɵf"},"multi":true},"ɵf":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":30,"character":1},"arguments":[{"selector":"mad-autocomplete","template":"<div [ngClass]=\"{'autocomplete':!multiple,'autocomplete--dd':dropdown,'autocomplete-multiple':multiple}\"\n\t\t\t[ngStyle]=\"style\"\n\t\t\t[class]=\"styleClass\"\n>\n\t<span *ngIf=\"!multiple\" class=\"form-control autocomplete__pseudo\">\n\t\t{{ highlightOptionValue }}\n\t</span>\n\n\n\t<input\n\t\t#in\n\t\t*ngIf=\"!multiple\"\n\t\t[attr.type]=\"type\"\n\t\t[attr.id]=\"inputId\"\n\t\t[ngStyle]=\"inputStyle\"\n\t\t[class]=\"inputStyleClass\"\n\t\tautocomplete=\"off\"\n\t\t[attr.required]=\"required\"\n\t\t[ngClass]=\"{'form-control autocomplete__input': true, 'autocomplete__input--active': panelVisible}\"\n\t\t[value]=\"inputFieldValue\"\n\t\t(click)=\"onInputClick($event)\"\n\t\t(input)=\"onInput($event)\"\n\t\t(keydown)=\"onKeydown($event)\"\n\t\t(keyup)=\"onKeyup($event)\"\n\t\t(focus)=\"onInputFocus($event)\"\n\t\t(blur)=\"onInputBlur($event)\"\n\t\t(change)=\"onInputChange($event)\"\n\t\t[attr.placeholder]=\"placeholder\"\n\t\t[attr.size]=\"size\" [attr.maxlength]=\"maxlength\"\n\t\t[attr.tabindex]=\"tabindex\"\n\t\t[readonly]=\"readonly\"\n\t\t[disabled]=\"disabled\"\n\t/>\n\n\n\n <div\n\t\t#multiContainer\n\t\t*ngIf=\"multiple\"\n\t\tclass=\"autocomplete-multiple__container\"\n\t\t[ngClass]=\"{'ui-state-disabled':disabled,'ui-state-focus':focus}\"\n\t\t(click)=\"multiIn.focus()\">\n\t\t\t<div\n\t\t\t\t#token\n\t\t\t\t*ngFor=\"let val of value\"\n\t\t\t\tclass=\"autocomplete-multiple__token autocomplete-multiple__token--added\"\n\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\tclass=\"autocomplete-multiple__token-icon icon-x\"\n\t\t\t\t\t\t(click)=\"removeItem(token)\"\n\t\t\t\t\t\t*ngIf=\"!disabled\"\n\t\t\t\t\t></span>\n\t\t\t\t\t<span *ngIf=\"!selectedItemTemplate\" class=\"form-control-plaintext\">{{field ? objectUtils.resolveFieldData(val, field): val}}</span>\n\t\t\t\t\t<ng-container *ngTemplateOutlet=\"selectedItemTemplate; context: {$implicit: val}\"></ng-container>\n\t\t\t</div>\n\t\t\t<div class=\"autocomplete-multiple__token\">\n\t\t\t\t<span class=\"form-control-plaintext autocomplete-multiple__pseudo\">\n\t\t\t\t\t{{ highlightOptionValue || multipleValue || placeholder}}\n\t\t\t\t</span>\n\t\t\t\t<input\n\t\t\t\t\t#multiIn\n\t\t\t\t\t[attr.type]=\"type\"\n\t\t\t\t\t[attr.id]=\"inputId\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t[attr.placeholder]=\"placeholder\"\n\t\t\t\t\t[attr.tabindex]=\"tabindex\"\n\t\t\t\t\t(input)=\"onInput($event)\"\n\t\t\t\t\t(click)=\"onInputClick($event)\"\n\t\t\t\t\t(keydown)=\"onKeydown($event)\"\n\t\t\t\t\t(keyup)=\"onKeyup($event)\"\n\t\t\t\t\t(focus)=\"onInputFocus($event)\"\n\t\t\t\t\t(blur)=\"onInputBlur($event)\"\n\t\t\t\t\tautocomplete=\"off\"\n\t\t\t\t\t[ngStyle]=\"inputStyle\"\n\t\t\t\t\t[class]=\"inputStyleClass\"\n\t\t\t\t\t[ngClass]=\"'form-control-plaintext autocomplete-multiple__input'\"\n\t\t\t\t/>\n\n\t\t\t\t<i *ngIf=\"loading\" class=\"autocomplete__loader icon-loader\"></i>\n\n\t\t\t\t<button\n\t\t\t\t\t#ddBtn\n\t\t\t\t\t*ngIf=\"dropdown\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tclass=\"autocomplete-multiple__button\"\n\t\t\t\t\t[ngClass]=\"{\n\t\t\t\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t\t\t\t}\"\n\t\t\t\t\t[disabled]=\"disabled\"\n\t\t\t\t\t(click)=\"handleDropdownClick($event)\">\n\t\t\t\t</button>\n\t\t\t</div>\n\t</div>\n\n <i *ngIf=\"loading && !multiple\" class=\"autocomplete__loader icon-loader\"></i>\n\n <button\n\t\t#ddBtn\n\t\t*ngIf=\"dropdown && !multiple\"\n\t\ttype=\"button\"\n\t\tclass=\"autocomplete__button\"\n\t\t[ngClass]=\"{\n\t\t\t'icon-chevron-down':!panelVisible && !loading,\n\t\t\t'icon-chevron-up':panelVisible && !loading\n\t\t}\"\n\t\t[disabled]=\"disabled\"\n\t\t(click)=\"handleDropdownClick($event)\">\n\t</button>\n\n\t<div\n\t\t#panel\n\t\tclass=\"autocomplete__panel\"\n\t\t[style.display]=\"panelVisible ? 'block' : 'none'\"\n\t\t[style.width]=\"appendTo ? 'auto' : '100%'\"\n\t\t[style.max-height]=\"scrollHeight\"\n\t>\n\t\t<mad-scrollbar [style]=\"{width: '100%'}\" [customScrollBar]=\"customScrollBar\">\n\t\t\t<div\n\t\t\t\tclass=\"autocomplete__panel-list\"\n\t\t\t\t*ngIf=\"panelVisible\"\n\t\t\t>\n\t\t\t\t<div\n\t\t\t\t\t*ngFor=\"let option of suggestions; let idx = index\"\n\t\t\t\t\t[ngClass]=\"{'form-control-plaintext autocomplete__panel-item':true,'bg-primary text-white':(highlightOption==option)}\"\n\t\t\t\t\t(mouseenter)=\"highlightOption=option\"\n\t\t\t\t\t(mouseleave)=\"highlightOption=null\"\n\t\t\t\t\t(click)=\"selectItem(option)\"\n\t\t\t\t>\n\t\t\t\t\t<span\n\t\t\t\t\t\t*ngIf=\"!itemTemplate\"\n\t\t\t\t\t>{{field ? objectUtils.resolveFieldData(option, field) : option}}\n\t\t\t\t\t</span>\n\t\t\t\t\t<ng-container\n\t\t\t\t\t\t*ngTemplateOutlet=\"itemTemplate; context: {$implicit: option, index: idx}\">\n\t\t\t\t\t</ng-container>\n\t\t\t\t</div>\n\t\t\t\t<div *ngIf=\"noResults && emptyMessage\" class=\"autocomplete__panel-item\">{{emptyMessage}}</div>\n\t\t\t</div>\n\t\t</mad-scrollbar>\n\t</div>\n</div>\n","styles":[".autocomplete,.autocomplete-multiple{width:auto;zoom:1;cursor:pointer;-webkit-box-shadow:none;box-shadow:none;position:relative;display:block}.autocomplete__host--filled,.autocomplete__host--focus{border:10px solid red!important}.autocomplete-multiple__button,.autocomplete__button{height:100%;margin-right:0;position:absolute;top:0;right:0;bottom:0;font-size:1.5rem;padding:0;width:2rem;background:0 0;border:none;cursor:pointer;z-index:100}.autocomplete-multiple__button:focus,.autocomplete__button:focus{outline:0}.autocomplete-multiple__input,.autocomplete-multiple__pseudo,.autocomplete__input,.autocomplete__pseudo{position:relative;text-overflow:ellipsis;z-index:50;background:0 0}.autocomplete__input--active{border-radius:.25rem .25rem 0 0}.autocomplete__pseudo{position:absolute;bottom:0;top:0;left:0;right:0;opacity:.35;z-index:1}.autocomplete--dd .autocomplete-multiple__input,.autocomplete--dd .autocomplete-multiple__pseudo,.autocomplete--dd .autocomplete__input,.autocomplete--dd .autocomplete__pseudo{padding-right:1.5em}.autocomplete__panel{-webkit-box-shadow:inset 0 -1px 1px rgba(0,0,0,.4);box-shadow:inset 0 -1px 1px rgba(0,0,0,.4)}.autocomplete__panel-item{padding-left:.75rem;padding-right:.75rem}.autocomplete__loader{position:absolute;top:0;bottom:0;right:auto;left:101%;font-size:1.5rem;width:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.autocomplete__loader:before{-webkit-animation:1s infinite process;animation:1s infinite process}@-webkit-keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}@keyframes process{0%{-webkit-transform:rotate(0) scale(1);transform:rotate(0) scale(1)}50%{opacity:1;-webkit-transform:rotate(90deg) scale(.8);transform:rotate(90deg) scale(.8)}75%{opacity:.55}80%{opacity:1}100%{-webkit-transform:rotate(180deg) scale(1);transform:rotate(180deg) scale(1)}}.autocomplete--dd .autocomplete__loader{right:0;left:auto}.autocomplete-multiple{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.autocomplete-multiple__container{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap}.autocomplete-multiple__pseudo{white-space:nowrap;opacity:.35;z-index:5}.autocomplete-multiple__input{outline:0;position:absolute;top:0;bottom:0;left:0;right:0;z-index:10}.autocomplete-multiple__input:focus{outline:0}.autocomplete-multiple__token{border:0;outline:0;background-color:transparent;margin:0;padding:0 .5rem 0 0;-webkit-box-shadow:none;box-shadow:none;border-radius:0;position:relative}.autocomplete-multiple__token--added{padding:0 1.2rem 0 0;margin-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-multiple__token-icon{position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:1.2rem;font-size:.75rem;opacity:.5}.autocomplete-multiple__token-icon:hover{opacity:1}.autocomplete__panel{position:absolute;overflow:auto;background:#fff}"],"host":{"[class.autocomplete__host--filled]":"filled","[class.autocomplete__host--focus]":"focus"},"providers":[{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","name":"ɵe"}]}]}],"members":{"minLength":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":183,"character":3}}]}],"delay":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":185,"character":3}}]}],"customScrollBar":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":187,"character":3}}]}],"style":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":189,"character":3}}]}],"styleClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":191,"character":3}}]}],"inputStyle":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":193,"character":3}}]}],"inputId":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":195,"character":3}}]}],"inputStyleClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":197,"character":3}}]}],"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":199,"character":3}}]}],"readonly":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":201,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":203,"character":3}}]}],"maxlength":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":205,"character":3}}]}],"required":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":207,"character":3}}]}],"size":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":209,"character":3}}]}],"appendTo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":211,"character":3}}]}],"autoHighlight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":213,"character":3}}]}],"forceSelection":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":215,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":217,"character":3}}]}],"completeMethod":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":219,"character":3}}]}],"createNew":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":221,"character":3}}]}],"onSelect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":223,"character":3}}]}],"onUnselect":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":225,"character":3}}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":227,"character":3}}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":229,"character":3}}]}],"onDropdownClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":231,"character":3}}]}],"onClear":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":233,"character":3}}]}],"onKeyUp":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":235,"character":3}}]}],"field":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":237,"character":3}}]}],"scrollHeight":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":239,"character":3}}]}],"dropdown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":241,"character":3}}]}],"dropdownMode":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":243,"character":3}}]}],"multiple":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":245,"character":3}}]}],"tabindex":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":247,"character":3}}]}],"dataKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":249,"character":3}}]}],"emptyMessage":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":251,"character":3}}]}],"immutable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":253,"character":3}}]}],"inputEL":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":255,"character":3},"arguments":["in"]}]}],"multiInputEL":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":257,"character":3},"arguments":["multiIn"]}]}],"panelEL":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":259,"character":3},"arguments":["panel"]}]}],"multiContainerEL":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":261,"character":3},"arguments":["multiContainer"]}]}],"dropdownButton":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":263,"character":3},"arguments":["ddBtn"]}]}],"templates":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":265,"character":3},"arguments":[{"__symbolic":"reference","name":"ɵc"}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":308,"character":15},{"__symbolic":"reference","name":"ɵg"},{"__symbolic":"reference","module":"@angular/core","name":"Renderer2","line":310,"character":21},{"__symbolic":"reference","name":"ɵh"},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":312,"character":15},{"__symbolic":"reference","module":"@angular/core","name":"IterableDiffers","line":313,"character":20}]}],"suggestions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":318,"character":3}}]}],"ngDoCheck":[{"__symbolic":"method"}],"handleSuggestionsChange":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngAfterViewChecked":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"onInput":[{"__symbolic":"method"}],"onInputClick":[{"__symbolic":"method"}],"search":[{"__symbolic":"method"}],"selectItem":[{"__symbolic":"method"}],"show":[{"__symbolic":"method"}],"align":[{"__symbolic":"method"}],"hide":[{"__symbolic":"method"}],"handleDropdownClick":[{"__symbolic":"method"}],"focusInput":[{"__symbolic":"method"}],"removeItem":[{"__symbolic":"method"}],"onKeydown":[{"__symbolic":"method"}],"onKeyup":[{"__symbolic":"method"}],"onInputFocus":[{"__symbolic":"method"}],"onInputBlur":[{"__symbolic":"method"}],"onInputChange":[{"__symbolic":"method"}],"isSelected":[{"__symbolic":"method"}],"findOptionIndex":[{"__symbolic":"method"}],"updateFilledState":[{"__symbolic":"method"}],"updateInputField":[{"__symbolic":"method"}],"bindDocumentClickListener":[{"__symbolic":"method"}],"isDropdownClick":[{"__symbolic":"method"}],"unbindDocumentClickListener":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}]}},"ɵg":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":2,"character":1}}],"members":{"addClass":[{"__symbolic":"method"}],"addMultipleClasses":[{"__symbolic":"method"}],"removeClass":[{"__symbolic":"method"}],"hasClass":[{"__symbolic":"method"}],"siblings":[{"__symbolic":"method"}],"find":[{"__symbolic":"method"}],"findSingle":[{"__symbolic":"method"}],"index":[{"__symbolic":"method"}],"indexWithinGroup":[{"__symbolic":"method"}],"relativePosition":[{"__symbolic":"method"}],"absolutePosition":[{"__symbolic":"method"}],"getHiddenElementOuterHeight":[{"__symbolic":"method"}],"getHiddenElementOuterWidth":[{"__symbolic":"method"}],"getHiddenElementDimensions":[{"__symbolic":"method"}],"scrollInView":[{"__symbolic":"method"}],"fadeIn":[{"__symbolic":"method"}],"fadeOut":[{"__symbolic":"method"}],"getWindowScrollTop":[{"__symbolic":"method"}],"getWindowScrollLeft":[{"__symbolic":"method"}],"matches":[{"__symbolic":"method"}],"getOuterWidth":[{"__symbolic":"method"}],"getHorizontalPadding":[{"__symbolic":"method"}],"getHorizontalMargin":[{"__symbolic":"method"}],"innerWidth":[{"__symbolic":"method"}],"width":[{"__symbolic":"method"}],"getInnerHeight":[{"__symbolic":"method"}],"getOuterHeight":[{"__symbolic":"method"}],"getHeight":[{"__symbolic":"method"}],"getWidth":[{"__symbolic":"method"}],"getViewport":[{"__symbolic":"method"}],"getOffset":[{"__symbolic":"method"}],"getUserAgent":[{"__symbolic":"method"}],"isIE":[{"__symbolic":"method"}],"appendChild":[{"__symbolic":"method"}],"removeChild":[{"__symbolic":"method"}],"isElement":[{"__symbolic":"method"}],"calculateScrollbarWidth":[{"__symbolic":"method"}],"invokeElementMethod":[{"__symbolic":"method"}],"clearSelection":[{"__symbolic":"method"}],"getBrowser":[{"__symbolic":"method"}],"resolveUserAgent":[{"__symbolic":"method"}]},"statics":{"zindex":1000}},"ɵh":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1}}],"members":{"equals":[{"__symbolic":"method"}],"equalsByValue":[{"__symbolic":"method"}],"resolveFieldData":[{"__symbolic":"method"}],"filter":[{"__symbolic":"method"}],"reorderArray":[{"__symbolic":"method"}],"generateSelectItems":[{"__symbolic":"method"}],"insertIntoOrderedArray":[{"__symbolic":"method"}],"findIndexInList":[{"__symbolic":"method"}]}}},"origins":{"MadAutoCompleteModule":"./src/ngx-mad-autocomplete.module","ɵa":"./src/common/shared","ɵb":"./src/common/shared","ɵc":"./src/common/shared","ɵd":"./src/common/shared","ɵe":"./src/ngx-mad-autocomplete.component","ɵf":"./src/ngx-mad-autocomplete.component","ɵg":"./src/dom/domhandler","ɵh":"./src/utils/objectutils"},"importAs":"@madbrothers/ngx-mad-autocomplete"}
{
"$schema": "../../node_modules/ng-packagr/package.schema.json",
"name": "@madbrothers/ngx-mad-autocomplete",
"version": "1.0.6",
"version": "1.0.7",
"main": "bundles/madbrothers-ngx-mad-autocomplete.umd.js",
"scripts": {},
"author": "MadBrothers",

@@ -8,0 +7,0 @@ "license": "ISC",

@@ -1,2 +0,2 @@

import { EventEmitter, TemplateRef, AfterContentInit, QueryList } from '@angular/core';
import { TemplateRef } from '@angular/core';
export declare class Header {

@@ -13,56 +13,3 @@ }

}
export declare class Column implements AfterContentInit {
field: string;
colId: string;
sortField: string;
filterField: string;
header: string;
footer: string;
sortable: any;
editable: boolean;
filter: boolean;
filterMatchMode: string;
filterType: string;
excludeGlobalFilter: boolean;
rowspan: number;
colspan: number;
scope: string;
style: any;
styleClass: string;
exportable: boolean;
headerStyle: any;
headerStyleClass: string;
bodyStyle: any;
bodyStyleClass: string;
footerStyle: any;
footerStyleClass: string;
hidden: boolean;
expander: boolean;
selectionMode: string;
filterPlaceholder: string;
filterMaxlength: number;
frozen: boolean;
resizable: boolean;
sortFunction: EventEmitter<any>;
templates: QueryList<any>;
template: TemplateRef<any>;
headerTemplate: TemplateRef<any>;
bodyTemplate: TemplateRef<any>;
footerTemplate: TemplateRef<any>;
filterTemplate: TemplateRef<any>;
editorTemplate: TemplateRef<any>;
ngAfterContentInit(): void;
}
export declare class Row {
columns: QueryList<Column>;
}
export declare class HeaderColumnGroup {
frozen: boolean;
rows: QueryList<any>;
}
export declare class FooterColumnGroup {
frozen: boolean;
rows: QueryList<any>;
}
export declare class SharedModule {
}

@@ -15,2 +15,3 @@ import { ElementRef, AfterViewInit, DoCheck, AfterViewChecked, EventEmitter, QueryList, TemplateRef, Renderer2, ChangeDetectorRef, IterableDiffers, OnChanges } from '@angular/core';

delay: number;
customScrollBar: boolean;
style: any;

@@ -17,0 +18,0 @@ styleClass: string;

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc