123456789101112131415161718192021222324252627282930313233 |
- import { Injectable } from '@angular/core';
- import * as i0 from "@angular/core";
- export class AccordionRegistryService {
- constructor() {
- this.accordions = new Map();
- }
- register(id, element) {
- this.accordions.set(id, element);
- }
- get(id) {
- return this.accordions.get(id);
- }
- unregister(id) {
- this.accordions.delete(id);
- }
- getItem(accordionId, itemId) {
- const accordionObject = this.accordions.get(accordionId);
- return accordionObject.accordionItems.find(item => item.id === itemId);
- }
- openItem(accordionId, itemId) {
- this.getItem(accordionId, itemId)?.isOpen.next(true);
- }
- closeItem(accordionId, itemId) {
- this.getItem(accordionId, itemId)?.isOpen.next(false);
- }
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AccordionRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AccordionRegistryService, providedIn: 'any' }); }
- }
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AccordionRegistryService, decorators: [{
- type: Injectable,
- args: [{ providedIn: 'any' }]
- }] });
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLXJlZ2lzdHJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jaXJjbGV0b25lL3NyYy9saWIvc2VydmljZXMvYWNjb3JkaW9uLXJlZ2lzdHJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLHdCQUF3QjtJQURyQztRQUVVLGVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBOEIsQ0FBQztLQTBCNUQ7SUF4QkMsUUFBUSxDQUFDLEVBQVUsRUFBRSxPQUEyQjtRQUM5QyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELEdBQUcsQ0FBQyxFQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsVUFBVSxDQUFDLEVBQVU7UUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU8sQ0FBQyxXQUFtQixFQUFFLE1BQWM7UUFDekMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUF1QixDQUFDO1FBQy9FLE9BQU8sZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLE1BQU0sQ0FBMkIsQ0FBQztJQUNuRyxDQUFDO0lBRUQsUUFBUSxDQUFDLFdBQW1CLEVBQUUsTUFBYztRQUMxQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxTQUFTLENBQUMsV0FBbUIsRUFBRSxNQUFjO1FBQzNDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEQsQ0FBQzs4R0ExQlUsd0JBQXdCO2tIQUF4Qix3QkFBd0IsY0FEWCxLQUFLOzsyRkFDbEIsd0JBQXdCO2tCQURwQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjY29yZGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjY29yZGlvbi9hY2NvcmRpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEFjY29yZGlvbkl0ZW1Db21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2F0b21zL2FjY29yZGlvbi1pdGVtL2FjY29yZGlvbi1pdGVtLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ2FueScgfSlcbmV4cG9ydCBjbGFzcyBBY2NvcmRpb25SZWdpc3RyeVNlcnZpY2Uge1xuICBwcml2YXRlIGFjY29yZGlvbnMgPSBuZXcgTWFwPHN0cmluZywgQWNjb3JkaW9uQ29tcG9uZW50PigpO1xuXG4gIHJlZ2lzdGVyKGlkOiBzdHJpbmcsIGVsZW1lbnQ6IEFjY29yZGlvbkNvbXBvbmVudCk6IHZvaWQge1xuICAgIHRoaXMuYWNjb3JkaW9ucy5zZXQoaWQsIGVsZW1lbnQpO1xuICB9XG5cbiAgZ2V0KGlkOiBzdHJpbmcpOiBBY2NvcmRpb25Db21wb25lbnQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmFjY29yZGlvbnMuZ2V0KGlkKTtcbiAgfVxuXG4gIHVucmVnaXN0ZXIoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuYWNjb3JkaW9ucy5kZWxldGUoaWQpO1xuICB9XG5cbiAgZ2V0SXRlbShhY2NvcmRpb25JZDogc3RyaW5nLCBpdGVtSWQ6IHN0cmluZyk6IEFjY29yZGlvbkl0ZW1Db21wb25lbnQge1xuICAgIGNvbnN0IGFjY29yZGlvbk9iamVjdCA9IHRoaXMuYWNjb3JkaW9ucy5nZXQoYWNjb3JkaW9uSWQpIGFzIEFjY29yZGlvbkNvbXBvbmVudDtcbiAgICByZXR1cm4gYWNjb3JkaW9uT2JqZWN0LmFjY29yZGlvbkl0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLmlkID09PSBpdGVtSWQpIGFzIEFjY29yZGlvbkl0ZW1Db21wb25lbnQ7XG4gIH1cblxuICBvcGVuSXRlbShhY2NvcmRpb25JZDogc3RyaW5nLCBpdGVtSWQ6IHN0cmluZykge1xuICAgIHRoaXMuZ2V0SXRlbShhY2NvcmRpb25JZCwgaXRlbUlkKT8uaXNPcGVuLm5leHQodHJ1ZSk7XG4gIH1cblxuICBjbG9zZUl0ZW0oYWNjb3JkaW9uSWQ6IHN0cmluZywgaXRlbUlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmdldEl0ZW0oYWNjb3JkaW9uSWQsIGl0ZW1JZCk/LmlzT3Blbi5uZXh0KGZhbHNlKTtcbiAgfVxufVxuIl19
|