UNPKG

@vicoders/angular

Version:

- [Vicoders Angular Common Module](#vicoders-angular-common-module) - [Install](#install) - [How to use](#how-to-use) - [Pipes](#pipes) - [hasItem](#hasitem) - [isArray](#isarray) - [length](#length) - [orderBy](#orderby)

90 lines 7.55 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Input } from '@angular/core'; import { Component } from '@angular/core'; import { Router, NavigationEnd, ActivatedRoute } from '@angular/router'; import * as _ from 'lodash'; export class SearchFormComponent { /** * @param {?} route * @param {?} activatedRoute */ constructor(route, activatedRoute) { this.route = route; this.activatedRoute = activatedRoute; this.keyword = ''; // @Output() searching: EventEmitter<string> = new EventEmitter<string>(); this.placeHolder = 'Search'; if (_.isUndefined(this.navigationSubscription)) { this.navigationSubscription = this.route.events.subscribe((e) => { if (e instanceof NavigationEnd) { if (!_.isUndefined(this.activatedRoute.snapshot.queryParams.search)) { this.keyword = this.activatedRoute.snapshot.queryParams.search; } else { this.keyword = ''; } } }); } } /** * @return {?} */ ngOnInit() { } /** * @return {?} */ ngOnDestroy() { this.navigationSubscription.unsubscribe(); } /** * @return {?} */ onSubmit() { /** @type {?} */ const url = window.location.pathname; /** @type {?} */ let queryParams = this.activatedRoute.snapshot.queryParams; queryParams = _.assign({}, queryParams, { search: this.keyword }); /** @type {?} */ const params = _.assign({}, this.activatedRoute.snapshot.params, { queryParams }); this.route.navigate([url], params); } } SearchFormComponent.decorators = [ { type: Component, args: [{ // tslint:disable-next-line:component-selector selector: 'search-form', template: "<form class=\"search-form search-form--inline\" (ngSubmit)=\"onSubmit()\">\n <div class=\"form-group search-form--inline__submit\">\n <input type=\"submit\" value=\"Search\" class=\"btn btn-success search-form--inline__btn-submit\">\n </div>\n <div class=\"form-group search-form--inline__search\">\n <input type=\"search\" name=\"keyword\" placeholder=\"{{ placeHolder }}\" class=\"form-control search-form--inline__input-field\" [(ngModel)]=\"keyword\">\n </div>\n</form>", styles: [""] }] } ]; SearchFormComponent.ctorParameters = () => [ { type: Router }, { type: ActivatedRoute } ]; SearchFormComponent.propDecorators = { placeHolder: [{ type: Input }] }; if (false) { /** @type {?} */ SearchFormComponent.prototype.navigationSubscription; /** @type {?} */ SearchFormComponent.prototype.keyword; /** @type {?} */ SearchFormComponent.prototype.placeHolder; /** * @type {?} * @private */ SearchFormComponent.prototype.route; /** * @type {?} * @private */ SearchFormComponent.prototype.activatedRoute; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHZpY29kZXJzL2FuZ3VsYXIvIiwic291cmNlcyI6WyJsaWIvZGlyZWN0aXZlcy9zZWFyY2gtZm9ybS9zZWFyY2gtZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBYSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEtBQUssQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQVE1QixNQUFNOzs7OztJQU9KLFlBQW9CLEtBQWEsRUFBVSxjQUE4QjtRQUFyRCxVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBTGxFLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFFcEIsMEVBQTBFO1FBQ2pFLGdCQUFXLEdBQVcsUUFBUSxDQUFDO1FBR3RDLElBQUksQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRTtZQUM5QyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUU7Z0JBQ25FLElBQUksQ0FBQyxZQUFZLGFBQWEsRUFBRTtvQkFDOUIsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxFQUFFO3dCQUNuRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7cUJBQ2hFO3lCQUFNO3dCQUNMLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO3FCQUNuQjtpQkFDRjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDOzs7O0lBRUQsUUFBUSxLQUFJLENBQUM7Ozs7SUFFYixXQUFXO1FBQ1QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVDLENBQUM7Ozs7SUFFRCxRQUFROztjQUNBLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVE7O1lBQ2hDLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxXQUFXO1FBQzFELFdBQVcsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7O2NBQzVELE1BQU0sR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUNqRixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7OztZQXZDRixTQUFTLFNBQUM7O2dCQUVULFFBQVEsRUFBRSxhQUFhO2dCQUN2QiwrZUFBMkM7O2FBRTVDOzs7WUFSUSxNQUFNO1lBQWlCLGNBQWM7OzswQkFjM0MsS0FBSzs7OztJQUpOLHFEQUE0Qjs7SUFDNUIsc0NBQW9COztJQUdwQiwwQ0FBd0M7Ozs7O0lBRTVCLG9DQUFxQjs7Ozs7SUFBRSw2Q0FBc0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPbkRlc3Ryb3ksIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyLCBOYXZpZ2F0aW9uRW5kLCBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgKiBhcyBfIGZyb20gJ2xvZGFzaCc7XG5cbkBDb21wb25lbnQoe1xuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnc2VhcmNoLWZvcm0nLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWFyY2gtZm9ybS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIG5hdmlnYXRpb25TdWJzY3JpcHRpb246IGFueTtcbiAgcHVibGljIGtleXdvcmQgPSAnJztcblxuICAvLyBAT3V0cHV0KCkgc2VhcmNoaW5nOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBASW5wdXQoKSBwbGFjZUhvbGRlcjogU3RyaW5nID0gJ1NlYXJjaCc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogUm91dGVyLCBwcml2YXRlIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkge1xuICAgIGlmIChfLmlzVW5kZWZpbmVkKHRoaXMubmF2aWdhdGlvblN1YnNjcmlwdGlvbikpIHtcbiAgICAgIHRoaXMubmF2aWdhdGlvblN1YnNjcmlwdGlvbiA9IHRoaXMucm91dGUuZXZlbnRzLnN1YnNjcmliZSgoZTogYW55KSA9PiB7XG4gICAgICAgIGlmIChlIGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICAgIGlmICghXy5pc1VuZGVmaW5lZCh0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zLnNlYXJjaCkpIHtcbiAgICAgICAgICAgIHRoaXMua2V5d29yZCA9IHRoaXMuYWN0aXZhdGVkUm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMuc2VhcmNoO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmtleXdvcmQgPSAnJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge31cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm5hdmlnYXRpb25TdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG9uU3VibWl0KCk6IHZvaWQge1xuICAgIGNvbnN0IHVybCA9IHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZTtcbiAgICBsZXQgcXVlcnlQYXJhbXMgPSB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zO1xuICAgIHF1ZXJ5UGFyYW1zID0gXy5hc3NpZ24oe30sIHF1ZXJ5UGFyYW1zLCB7IHNlYXJjaDogdGhpcy5rZXl3b3JkIH0pO1xuICAgIGNvbnN0IHBhcmFtcyA9IF8uYXNzaWduKHt9LCB0aGlzLmFjdGl2YXRlZFJvdXRlLnNuYXBzaG90LnBhcmFtcywgeyBxdWVyeVBhcmFtcyB9KTtcbiAgICB0aGlzLnJvdXRlLm5hdmlnYXRlKFt1cmxdLCBwYXJhbXMpO1xuICB9XG59XG4iXX0=