ngx-select-dropdown
Version:
A angular(4+) select dropdown for single select or multiselct module.
36 lines • 4.03 kB
JavaScript
import { EventEmitter, Injectable } from "@angular/core";
import * as i0 from "@angular/core";
export class SelectDropDownService {
constructor() {
this.openDropdownInstance = new EventEmitter();
this.closeDropdownInstance = new EventEmitter();
this.openInstances = [];
// constructor
}
isOpen(instanceId) {
return this.openInstances.indexOf(instanceId) > -1;
}
/**
* @summary: Open a specific dropdown instance based on the instance ID.
* @param instanceId: Instance id of the dropdown that must be opened.
*/
openDropdown(instanceId) {
this.openDropdownInstance.emit(instanceId);
}
/**
* @summary: Close a specific dropdown instance based on the instance ID.
* @param instanceId: Instance id of the dropdown that must be closed.
*/
closeDropdown(instanceId) {
this.closeDropdownInstance.emit(instanceId);
}
}
/** @nocollapse */ SelectDropDownService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: SelectDropDownService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
/** @nocollapse */ SelectDropDownService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: SelectDropDownService, providedIn: "root" });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.5", ngImport: i0, type: SelectDropDownService, decorators: [{
type: Injectable,
args: [{
providedIn: "root",
}]
}], ctorParameters: function () { return []; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXNlbGVjdC1kcm9wZG93bi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNlbGVjdC1kcm9wZG93bi9zcmMvbGliL25neC1zZWxlY3QtZHJvcGRvd24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLekQsTUFBTSxPQUFPLHFCQUFxQjtJQUloQztRQUhBLHlCQUFvQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFDbEQsMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUNuRCxrQkFBYSxHQUFhLEVBQUUsQ0FBQztRQUUzQixjQUFjO0lBQ2hCLENBQUM7SUFDTSxNQUFNLENBQUMsVUFBVTtRQUN0QixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFDRDs7O09BR0c7SUFDSCxZQUFZLENBQUMsVUFBa0I7UUFDN0IsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsYUFBYSxDQUFDLFVBQWtCO1FBQzlCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDOUMsQ0FBQzs7cUlBdkJVLHFCQUFxQjt5SUFBckIscUJBQXFCLGNBRnBCLE1BQU07MkZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogXCJyb290XCIsXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdERyb3BEb3duU2VydmljZSB7XG4gIG9wZW5Ecm9wZG93bkluc3RhbmNlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIGNsb3NlRHJvcGRvd25JbnN0YW5jZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuICBvcGVuSW5zdGFuY2VzOiBzdHJpbmdbXSA9IFtdO1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBjb25zdHJ1Y3RvclxuICB9XG4gIHB1YmxpYyBpc09wZW4oaW5zdGFuY2VJZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLm9wZW5JbnN0YW5jZXMuaW5kZXhPZihpbnN0YW5jZUlkKSA+IC0xO1xuICB9XG4gIC8qKlxuICAgKiBAc3VtbWFyeTogT3BlbiBhIHNwZWNpZmljIGRyb3Bkb3duIGluc3RhbmNlIGJhc2VkIG9uIHRoZSBpbnN0YW5jZSBJRC5cbiAgICogQHBhcmFtIGluc3RhbmNlSWQ6IEluc3RhbmNlIGlkIG9mIHRoZSBkcm9wZG93biB0aGF0IG11c3QgYmUgb3BlbmVkLlxuICAgKi9cbiAgb3BlbkRyb3Bkb3duKGluc3RhbmNlSWQ6IHN0cmluZykge1xuICAgIHRoaXMub3BlbkRyb3Bkb3duSW5zdGFuY2UuZW1pdChpbnN0YW5jZUlkKTtcbiAgfVxuICAvKipcbiAgICogQHN1bW1hcnk6IENsb3NlIGEgc3BlY2lmaWMgZHJvcGRvd24gaW5zdGFuY2UgYmFzZWQgb24gdGhlIGluc3RhbmNlIElELlxuICAgKiBAcGFyYW0gaW5zdGFuY2VJZDogSW5zdGFuY2UgaWQgb2YgdGhlIGRyb3Bkb3duIHRoYXQgbXVzdCBiZSBjbG9zZWQuXG4gICAqL1xuICBjbG9zZURyb3Bkb3duKGluc3RhbmNlSWQ6IHN0cmluZykge1xuICAgIHRoaXMuY2xvc2VEcm9wZG93bkluc3RhbmNlLmVtaXQoaW5zdGFuY2VJZCk7XG4gIH1cbn1cbiJdfQ==