@@ -74,7 +74,50 @@ export class MultiSelectSearchFilter {
7474 styles : [ `
7575 a { outline: none !important; }
7676 ` ] ,
77- templateUrl : './multiselect-dropdown.html'
77+ template : `
78+ <div class="dropdown">
79+ <button type="button" class="dropdown-toggle" [ngClass]="settings.buttonClasses"
80+ (click)="toggleDropdown()">{{ title }} <span class="caret"></span></button>
81+ <ul *ngIf="isVisible" class="dropdown-menu" [class.pull-right]="settings.pullRight" [class.dropdown-menu-right]="settings.pullRight"
82+ [style.max-height]="settings.maxHeight" style="display: block; height: auto; overflow-y: auto;">
83+ <li class="dropdown-item" *ngIf="settings.enableSearch">
84+ <div class="input-group input-group-sm">
85+ <span class="input-group-addon" id="sizing-addon3"><i class="fa fa-search"></i></span>
86+ <input type="text" class="form-control" placeholder="{{ texts.searchPlaceholder }}"
87+ aria-describedby="sizing-addon3" [(ngModel)]="searchFilterText">
88+ <span class="input-group-btn" *ngIf="searchFilterText.length > 0">
89+ <button class="btn btn-default" type="button" (click)="clearSearch()"><i class="fa fa-times"></i></button>
90+ </span>
91+ </div>
92+ </li>
93+ <li class="dropdown-divider divider" *ngIf="settings.enableSearch"></li>
94+ <li class="dropdown-item" *ngIf="settings.showCheckAll">
95+ <a href="javascript:;" role="menuitem" tabindex="-1" (click)="checkAll()">
96+ <span style="width: 16px;" class="glyphicon glyphicon-ok"></span>
97+ {{ texts.checkAll }}
98+ </a>
99+ </li>
100+ <li class="dropdown-item" *ngIf="settings.showUncheckAll">
101+ <a href="javascript:;" role="menuitem" tabindex="-1" (click)="uncheckAll()">
102+ <span style="width: 16px;" class="glyphicon glyphicon-remove"></span>
103+ {{ texts.uncheckAll }}
104+ </a>
105+ </li>
106+ <li *ngIf="settings.showCheckAll || settings.showUncheckAll" class="dropdown-divider divider"></li>
107+ <li class="dropdown-item" style="cursor: pointer;" *ngFor="let option of options | searchFilter:searchFilterText" (click)="setSelected($event, option)">
108+ <a href="javascript:;" role="menuitem" tabindex="-1">
109+ <input *ngIf="settings.checkedStyle === 'checkboxes'" type="checkbox" [checked]="isSelected(option)" />
110+ <span *ngIf="settings.checkedStyle === 'glyphicon'" style="width: 16px;"
111+ class="glyphicon" [class.glyphicon-ok]="isSelected(option)"></span>
112+ <span *ngIf="settings.checkedStyle === 'fontawsome'" style="width: 16px;display: inline-block;">
113+ <i *ngIf="isSelected(option)" class="fa fa-check" aria-hidden="true"></i>
114+ </span>
115+ {{ option.name }}
116+ </a>
117+ </li>
118+ </ul>
119+ </div>
120+ `
78121} )
79122export class MultiselectDropdown implements OnInit , DoCheck , ControlValueAccessor {
80123
0 commit comments