@terrencecastro/ngx-taskboard
Version:
Yet another angular taskboard
72 lines • 7.27 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/filter-search-bar/filter-search-bar.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, EventEmitter, Input } from '@angular/core';
import { Subject } from 'rxjs';
import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
import { TaskboardService } from '../taskboard.service';
export class FilterSearchBarComponent {
/**
* @param {?} taskboardService
*/
constructor(taskboardService) {
this.taskboardService = taskboardService;
this.filterChanged = new Subject();
this.filterOnProperties = [];
this.filterOnPropertiesChanged = new EventEmitter();
this.placeholder = 'Search for Items';
this.filterChanged.pipe(debounceTime(300), distinctUntilChanged())
.subscribe((/**
* @param {?} filter
* @return {?}
*/
(filter) => {
this.filter = filter;
this.taskboardService.filterChanged$.emit(filter);
}));
}
/**
* @return {?}
*/
ngOnInit() {
}
/**
* @param {?} text
* @return {?}
*/
changed(text) {
this.filterChanged.next(text);
}
}
FilterSearchBarComponent.decorators = [
{ type: Component, args: [{
// tslint:disable-next-line: component-selector
selector: 'ngx-taskboard-filter-search-bar',
template: "<div class=\"card-header\">\r\n <div class=\"input-group\">\r\n <div class=\"input-group-prepend\">\r\n <span class=\"input-group-text bg-white\" id=\"basic-addon1\">\r\n <fa-icon [icon]=\"['fas','search']\"></fa-icon>\r\n </span>\r\n </div>\r\n <input type=\"text\" *ngIf=\"taskboardService.objectProperties.length > 0\" class=\"form-control border-left-0 pl-0\"\r\n placeholder=\"{{placeholder}}\" [ngModel]='filter' (ngModelChange)=\"changed($event)\" />\r\n\r\n <!-- <div class=\"input-group-append\">\r\n <div class=\"btn-group\" dropdown>\r\n <button id=\"button-basic\" dropdownToggle type=\"button\" class=\"btn btn-primary dropdown-toggle\"\r\n aria-controls=\"dropdown-basic\">\r\n Button dropdown <span class=\"caret\"></span>\r\n </button>\r\n <ul id=\"dropdown-basic\" *dropdownMenu class=\"dropdown-menu\"\r\n role=\"menu\" aria-labelledby=\"button-basic\">\r\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Action</a></li>\r\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Another action</a></li>\r\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Something else here</a></li>\r\n <li class=\"divider dropdown-divider\"></li>\r\n <li role=\"menuitem\"><a class=\"dropdown-item\" href=\"#\">Separated link</a>\r\n </li>\r\n </ul>\r\n </div>\r\n </div> -->\r\n </div>\r\n</div>",
styles: [""]
}] }
];
/** @nocollapse */
FilterSearchBarComponent.ctorParameters = () => [
{ type: TaskboardService }
];
FilterSearchBarComponent.propDecorators = {
placeholder: [{ type: Input }]
};
if (false) {
/** @type {?} */
FilterSearchBarComponent.prototype.filter;
/** @type {?} */
FilterSearchBarComponent.prototype.filterChanged;
/** @type {?} */
FilterSearchBarComponent.prototype.filterOnProperties;
/** @type {?} */
FilterSearchBarComponent.prototype.filterOnPropertiesChanged;
/** @type {?} */
FilterSearchBarComponent.prototype.placeholder;
/** @type {?} */
FilterSearchBarComponent.prototype.taskboardService;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXNlYXJjaC1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L3BwL0NQSF9UcmFpbmluZy9Qcm9qZWN0cy9uZ3gtdGFza2JvYXJkL3Byb2plY3RzL25neC10YXNrYm9hcmQtbGliL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9maWx0ZXItc2VhcmNoLWJhci9maWx0ZXItc2VhcmNoLWJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFReEQsTUFBTSxPQUFPLHdCQUF3Qjs7OztJQVNwQyxZQUFtQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQU45QyxrQkFBYSxHQUFvQixJQUFJLE9BQU8sRUFBVSxDQUFDO1FBQ3ZELHVCQUFrQixHQUFhLEVBQUUsQ0FBQztRQUNsQyw4QkFBeUIsR0FBMkIsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUV4RSxnQkFBVyxHQUFHLGtCQUFrQixDQUFDO1FBR2hELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUN0QixZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLG9CQUFvQixFQUFFLENBQUM7YUFDdEIsU0FBUzs7OztRQUFDLENBQUMsTUFBYyxFQUFFLEVBQUU7WUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFDckIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbkQsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRU0sUUFBUTtJQUNmLENBQUM7Ozs7O0lBRU0sT0FBTyxDQUFDLElBQUk7UUFDbEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7O1lBOUJELFNBQVMsU0FBQzs7Z0JBRVYsUUFBUSxFQUFFLGlDQUFpQztnQkFDM0MsK2hEQUFpRDs7YUFFakQ7Ozs7WUFQUSxnQkFBZ0I7OzswQkFldkIsS0FBSzs7OztJQUxOLDBDQUFzQjs7SUFDdEIsaURBQThEOztJQUM5RCxzREFBeUM7O0lBQ3pDLDZEQUF3Rjs7SUFFeEYsK0NBQWlEOztJQUVyQyxvREFBeUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFRhc2tib2FyZFNlcnZpY2UgfSBmcm9tICcuLi90YXNrYm9hcmQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IGNvbXBvbmVudC1zZWxlY3RvclxyXG5cdHNlbGVjdG9yOiAnbmd4LXRhc2tib2FyZC1maWx0ZXItc2VhcmNoLWJhcicsXHJcblx0dGVtcGxhdGVVcmw6ICcuL2ZpbHRlci1zZWFyY2gtYmFyLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9maWx0ZXItc2VhcmNoLWJhci5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWx0ZXJTZWFyY2hCYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuXHRwdWJsaWMgZmlsdGVyOiBzdHJpbmc7XHJcblx0cHVibGljIGZpbHRlckNoYW5nZWQ6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKTtcclxuXHRwdWJsaWMgZmlsdGVyT25Qcm9wZXJ0aWVzOiBzdHJpbmdbXSA9IFtdO1xyXG5cdHB1YmxpYyBmaWx0ZXJPblByb3BlcnRpZXNDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8c3RyaW5nW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmdbXT4oKTtcclxuXHJcblx0QElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJ1NlYXJjaCBmb3IgSXRlbXMnO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihwdWJsaWMgdGFza2JvYXJkU2VydmljZTogVGFza2JvYXJkU2VydmljZSkge1xyXG5cdFx0dGhpcy5maWx0ZXJDaGFuZ2VkLnBpcGUoXHJcblx0XHRcdGRlYm91bmNlVGltZSgzMDApLFxyXG5cdFx0XHRkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxyXG5cdFx0XHQuc3Vic2NyaWJlKChmaWx0ZXI6IHN0cmluZykgPT4ge1xyXG5cdFx0XHRcdHRoaXMuZmlsdGVyID0gZmlsdGVyO1xyXG5cdFx0XHRcdHRoaXMudGFza2JvYXJkU2VydmljZS5maWx0ZXJDaGFuZ2VkJC5lbWl0KGZpbHRlcik7XHJcblx0XHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHVibGljIG5nT25Jbml0KCkge1xyXG5cdH1cclxuXHJcblx0cHVibGljIGNoYW5nZWQodGV4dCkge1xyXG5cdFx0dGhpcy5maWx0ZXJDaGFuZ2VkLm5leHQodGV4dCk7XHJcblx0fVxyXG59XHJcbiJdfQ==