UNPKG

ngx-magicsearch

Version:

Magic Search/Faceted Search Library for Angular 2.

1 lines 9.94 kB
{"__symbolic":"module","version":4,"metadata":{"NgxMagicSearchModule":{"__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":9,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":10,"character":4}],"providers":[{"__symbolic":"reference","name":"ɵa"}],"declarations":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}],"exports":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}]}]}],"members":{}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1}}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":7,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":7,"character":12}]}]],"parameters":[{"__symbolic":"reference","name":"Object"}]}],"invokeElementMethod":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"ngx-magic-search","template":"<div class=\"magic-search\">\n <div class=\"search-bar\">\n <i class=\"fa fa-filter go\"></i>\n <div class=\"search-main-area\" (click)=\"enableTextEntry()\">\n <span class=\"item-list\" *ngIf=\"currentSearch\">\n <span *ngFor=\"let facet of currentSearch; let i = index;\" class=\"ngx-label radius secondary item\">\n <span>{{ facet.label[0] }}:<b>{{ facet.label[1] }}</b></span>\n <a class=\"remove\" (click)=\"removeFacet(i)\" title=\"{{ strings.remove }}\"><i class=\"fa fa-times\"></i></a>\n </span>\n </span>\n <span class=\"search-selected ngx-label\" *ngIf=\"facetSelected\">\n {{ facetSelected.label[0] }}:\n </span>\n <!-- For bootstrap, the dropdown attribute is moved from input up to div. -->\n <div [ngClass]=\"{'search-entry': true, 'dropdown': true, 'active': isMenuOpen}\">\n <input class=\"search-input\" type=\"text\" placeholder=\"{{ strings.prompt }}\" autocomplete=\"off\" (keyup)=\"handleKeyUp($event)\" (keydown)=\"handleKeyDown($event)\" (keypress)=\"handleKeyPress($event)\" [(ngModel)]=\"searchInput\" ngxMagicSearch=\"setFocusedEventEmitter\"\n />\n <div class=\"dropdown-content\" *ngIf=\"filteredObj.length > 0\">\n <div class=\"arrow-up\"></div>\n <ul class=\"ngx-dropdown-menu\">\n <ng-template [ngIf]=\"!facetSelected\">\n <li *ngFor=\"let facet of filteredObj; let i = index;\">\n <a (click)=\"facetClicked(i, facet.name)\" *ngIf=\"!isMatchLabel(facet.label)\">{{ facet.label }}</a>\n <a (click)=\"facetClicked(i, facet.name)\" *ngIf=\"isMatchLabel(facet.label)\">\n {{ facet.label[0] }}<span class=\"match\">{{ facet.label[1] }}</span>{{ facet.label[2] }}\n </a>\n </li>\n </ng-template>\n <ng-template [ngIf]=\"facetSelected\">\n <li *ngFor=\"let option of filteredOptions; let i = index;\">\n <a (click)=\"optionClicked(i, option.key)\" *ngIf=\"!isMatchLabel(option.label)\">\n {{ option.label }}\n </a>\n <a (click)=\"optionClicked(i, option.key)\" *ngIf=\"isMatchLabel(option.label)\">\n {{ option.label[0] }}<span class=\"match\">{{ option.label[1] }}</span>{{ option.label[2] }}\n </a>\n </li>\n </ng-template>\n </ul>\n </div>\n </div>\n </div>\n <a (click)=\"clearSearch()\" *ngIf=\"currentSearch.length > 0\" title=\"{{ strings.cancel }}\">\n <i class=\"fa fa-times cancel\"></i>\n </a>\n </div>\n</div>","styles":[".dropdown{position:relative;display:inline-block}.dropdown-content{display:none;position:absolute;min-width:160px;z-index:1;margin-top:4px}.dropdown.active .dropdown-content{display:block}.ngx-dropdown-menu{z-index:1000;min-width:160px;padding:5px 0;margin:0;font-size:14px;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border-radius:3px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.ngx-dropdown-menu li:hover{cursor:pointer;background-color:#eaeaea}.arrow-up{width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #fff;margin-left:5px}.ngx-dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.ngx-label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}@-moz-document url-prefix(){.item-list .item,.search-selected{top:-.4rem}}.search-bar{font-size:14px;position:relative;border:1px solid #ccc;background-color:#fff;height:auto}.search-bar i.fa-filter{color:#6a737b;position:absolute;top:.75rem;left:.65rem;font-size:18px}.search-bar .search-main-area{position:relative;margin-left:2.75rem;margin-right:2.75rem;cursor:text;text-align:left}.search-bar .item-list{position:relative;margin-top:9px;float:left}.search-bar .item-list .item{color:#333;background-color:#e6e7e8;margin-right:.5rem;display:inline-block;padding:6px;font-size:.8rem}.search-bar .item-list .item a{color:#fff}.search-bar .item-list .item a.remove:hover{cursor:pointer}.search-bar .search-selected{position:relative;padding-left:0;padding-right:0;background-color:#fff;color:#444}.search-bar .search-entry{width:18.5rem}.search-bar .search-input{width:100%;border:0;-webkit-box-shadow:none;box-shadow:none;margin:6px 0;background-color:#fff;color:#444;height:28px}.search-bar .search-input:focus{-webkit-box-shadow:none;box-shadow:none;background-color:#fff}.search-bar .match{font-weight:700}.search-bar i.cancel{color:#6a737b;position:absolute;top:.75rem;right:.65rem;font-size:18px}.search-bar i.cancel:hover{color:#8b0000;cursor:pointer}"]}]}],"members":{"strings":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":56,"character":3},"arguments":["strings"]}]}],"facets_param":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":63,"character":3},"arguments":["facets_param"]}]}],"textSearchEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":66,"character":3}}]}],"searchUpdatedEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"KeyValueDiffers","line":88,"character":31}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnChanges":[{"__symbolic":"method"}],"ngDoCheck":[{"__symbolic":"method"}],"initSearch":[{"__symbolic":"method"}],"initFacets":[{"__symbolic":"method"}],"addFacets":[{"__symbolic":"method"}],"copyFacets":[{"__symbolic":"method"}],"deleteFacetSelection":[{"__symbolic":"method"}],"deleteFacetEntirely":[{"__symbolic":"method"}],"filterFacets":[{"__symbolic":"method"}],"isMatchLabel":[{"__symbolic":"method"}],"resetState":[{"__symbolic":"method"}],"showMenu":[{"__symbolic":"method"}],"hideMenu":[{"__symbolic":"method"}],"updateUrl":[{"__symbolic":"method"}],"buildTermsArray":[{"__symbolic":"method"}],"getIndexBy":[{"__symbolic":"method"}],"handleKeyDown":[{"__symbolic":"method"}],"handleKeyUp":[{"__symbolic":"method"}],"handleKeyPress":[{"__symbolic":"method"}],"enableTextEntry":[{"__symbolic":"method"}],"facetClicked":[{"__symbolic":"method"}],"optionClicked":[{"__symbolic":"method"}],"addFilterManually":[{"__symbolic":"method"}],"removeFilterManually":[{"__symbolic":"method"}],"emitQuery":[{"__symbolic":"method"}],"removeFacet":[{"__symbolic":"method"}],"clearSearch":[{"__symbolic":"method"}],"compareEvent":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":754,"character":3},"arguments":["document:click",["$event"]]}]}],"trackEvent":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":773,"character":3},"arguments":["click",["$event"]]}]}]}},"ɵc":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":3,"character":1},"arguments":[{"selector":"[ngxMagicSearch]"}]}],"members":{"focusEvent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":8,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":10,"character":26},{"__symbolic":"reference","name":"ɵa"}]}],"ngOnChanges":[{"__symbolic":"method"}]}}},"origins":{"NgxMagicSearchModule":"./app/modules/ngx-magic-search/ngx-magic-search.module","ɵa":"./app/modules/renderer.service","ɵb":"./app/modules/ngx-magic-search/ngx-magic-search.component","ɵc":"./app/modules/ngx-magic-search.directive"},"importAs":"ngx-magicsearch"}