UNPKG

@clr/angular

Version:

Angular components for Clarity

1 lines 24.6 kB
{"version":3,"file":"clr-angular-accordion.mjs","sources":["../../../projects/angular/accordion/accordion-description.ts","../../../projects/angular/accordion/accordion-panel.ts","../../../projects/angular/accordion/accordion-panel.html","../../../projects/angular/accordion/enums/accordion-strategy.enum.ts","../../../projects/angular/accordion/models/accordion.model.ts","../../../projects/angular/accordion/providers/accordion.service.ts","../../../projects/angular/accordion/accordion.ts","../../../projects/angular/accordion/accordion-title.ts","../../../projects/angular/accordion/accordion-content.ts","../../../projects/angular/accordion/chocolate/accordion-willy-wonka.ts","../../../projects/angular/accordion/chocolate/accordion-oompa-loompa.ts","../../../projects/angular/accordion/accordion.module.ts","../../../projects/angular/accordion/index.ts","../../../projects/angular/accordion/clr-angular-accordion.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-accordion-description',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-accordion-description]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrAccordionDescription {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n Output,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport {\n CollapsiblePanel,\n collapsiblePanelExpandAnimation,\n CollapsiblePanelModel,\n} from '@clr/angular/collapsible-panel';\nimport { HeadingLevel, IfExpandService } from '@clr/angular/utils';\n\nimport { ClrAccordionDescription } from './accordion-description';\n\n@Component({\n selector: 'clr-accordion-panel',\n templateUrl: './accordion-panel.html',\n host: { '[class.clr-accordion-panel]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: collapsiblePanelExpandAnimation,\n providers: [IfExpandService],\n standalone: false,\n})\nexport class ClrAccordionPanel extends CollapsiblePanel implements OnChanges {\n @Input('clrAccordionPanelDisabled') @HostBinding('class.clr-accordion-panel-disabled') disabled = false;\n @Input('clrAccordionPanelOpen') override panelOpen = false;\n @Output('clrAccordionPanelOpenChange') override panelOpenChange = new EventEmitter<boolean>();\n\n /**\n * Level of the accordion heading from 1 to 6.\n */\n @Input('clrAccordionPanelHeadingLevel') explicitHeadingLevel: HeadingLevel;\n\n @ContentChildren(ClrAccordionDescription) accordionDescription: QueryList<ClrAccordionDescription>;\n\n ngOnChanges(changes: SimpleChanges) {\n this.handlePanelInputChanges(changes);\n }\n\n getPanelStateClasses(panel: CollapsiblePanelModel) {\n return panel.open ? 'clr-accordion-panel-open' : 'clr-accordion-panel-closed';\n }\n\n getContentId(id: string) {\n return `clr-accordion-content-${id}`;\n }\n\n getHeaderId(id: string) {\n return `clr-accordion-header-${id}`;\n }\n}\n","<!--\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n ~ This software is released under MIT license.\n ~ The full license information can be found in LICENSE in the root directory of this project.\n -->\n@if (panel | async; as panel) {\n<div [ngClass]=\"getPanelStateClasses(panel)\">\n <div\n class=\"clr-accordion-header\"\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\n >\n <button\n type=\"button\"\n class=\"clr-accordion-header-button\"\n (click)=\"togglePanel()\"\n [id]=\"getHeaderId(panel.templateId)\"\n [disabled]=\"panel.disabled\"\n [attr.aria-controls]=\"!panel.disabled && panel.open ? getContentId(panel.templateId) : null\"\n [attr.aria-expanded]=\"panel.open\"\n [class.clr-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\n #headerButton\n >\n <span class=\"clr-accordion-status\">\n <cds-icon shape=\"angle\" direction=\"right\" class=\"clr-accordion-angle\"></cds-icon>\n </span>\n <ng-content select=\"clr-accordion-title\"></ng-content>\n <ng-content select=\"clr-accordion-description\"></ng-content>\n </button>\n </div>\n <div\n @skipInitialRender\n role=\"region\"\n class=\"clr-accordion-content-region\"\n [id]=\"getContentId(panel.templateId)\"\n [attr.aria-hidden]=\"!panel.open\"\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\n >\n @if (panel.open) {\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"clr-accordion-content\">\n <div class=\"clr-accordion-inner-content\">\n <ng-content></ng-content>\n </div>\n </div>\n }\n </div>\n</div>\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\n/**\n * Controls how many panels can be open simultaneously within an accordion.\n */\nexport enum AccordionStrategy {\n /** Only one panel can be open at a time. Opening a panel closes any previously open panel. */\n Single = 'single',\n /** Multiple panels can be open simultaneously. */\n Multi = 'multi',\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CollapsiblePanelGroupModel } from '@clr/angular/collapsible-panel';\n\nimport { AccordionStrategy } from '../enums/accordion-strategy.enum';\n\nexport class AccordionModel extends CollapsiblePanelGroupModel {\n private strategy = AccordionStrategy.Single;\n\n setStrategy(strategy: AccordionStrategy) {\n this.strategy = strategy;\n }\n\n override togglePanel(panelId: string, open?: boolean) {\n if (!this._panels[panelId]) {\n return;\n }\n\n const panelIsOpen = this._panels[panelId].open;\n const newOpenState = open !== undefined ? open : !panelIsOpen;\n if (newOpenState && this.strategy === AccordionStrategy.Single) {\n this.closeAllPanels();\n }\n\n this._panels[panelId].open = newOpenState;\n }\n\n private closeAllPanels() {\n this.panels.forEach(panel => (this._panels[panel.id].open = false));\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\nimport { CollapsiblePanelService } from '@clr/angular/collapsible-panel';\n\nimport { AccordionStrategy } from '../enums/accordion-strategy.enum';\nimport { AccordionModel } from '../models/accordion.model';\n\n@Injectable()\nexport class AccordionService extends CollapsiblePanelService {\n protected override panelGroup = new AccordionModel();\n\n setStrategy(strategy: AccordionStrategy) {\n this.panelGroup.setStrategy(strategy);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport { CollapsiblePanelService } from '@clr/angular/collapsible-panel';\nimport { Subscription } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { ClrAccordionPanel } from './accordion-panel';\nimport { AccordionStrategy } from './enums/accordion-strategy.enum';\nimport { AccordionService } from './providers/accordion.service';\n\n@Component({\n selector: 'clr-accordion',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-accordion]': 'true' },\n providers: [AccordionService, { provide: CollapsiblePanelService, useExisting: AccordionService }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrAccordion implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n @Input('clrAccordionMultiPanel') multiPanel: boolean | string = false;\n @ContentChildren(ClrAccordionPanel) panels: QueryList<ClrAccordionPanel>;\n private subscriptions: Subscription[] = [];\n\n constructor(private accordionService: AccordionService) {}\n\n ngOnInit() {\n this.setAccordionStrategy();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (\n changes.multiPanel &&\n !changes.multiPanel.firstChange &&\n changes.multiPanel.currentValue !== changes.multiPanel.previousValue\n ) {\n this.setAccordionStrategy();\n }\n }\n\n ngAfterViewInit() {\n this.subscriptions.push(this.listenForDOMChanges());\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(s => s.unsubscribe());\n }\n\n private setAccordionStrategy() {\n const strategy = this.multiPanel ? AccordionStrategy.Multi : AccordionStrategy.Single;\n this.accordionService.setStrategy(strategy);\n }\n\n private listenForDOMChanges() {\n return this.panels.changes\n .pipe(startWith(this.panels))\n .subscribe((panels: QueryList<ClrAccordionPanel>) =>\n this.accordionService.updatePanelOrder(panels.toArray().map(p => p.id))\n );\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-accordion-title',\n template: `<ng-content></ng-content>`,\n host: { '[class.clr-accordion-title]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrAccordionTitle {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'clr-accordion-content',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class ClrAccordionContent {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive } from '@angular/core';\nimport { WillyWonka } from '@clr/angular/utils';\n\n@Directive({\n selector: 'clr-accordion',\n standalone: false,\n})\nexport class AccordionWillyWonka extends WillyWonka {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectorRef, Directive, Optional } from '@angular/core';\nimport { IfExpandService, OompaLoompa } from '@clr/angular/utils';\n\nimport { AccordionWillyWonka } from './accordion-willy-wonka';\n\n@Directive({\n selector: 'clr-accordion-panel',\n standalone: false,\n})\nexport class AccordionOompaLoompa extends OompaLoompa {\n private expand: IfExpandService;\n\n constructor(cdr: ChangeDetectorRef, @Optional() willyWonka: AccordionWillyWonka, ifExpandService: IfExpandService) {\n if (!willyWonka) {\n throw new Error('clr-accordion-panel should only be used inside of clr-accordion');\n }\n super(cdr, willyWonka);\n this.expand = ifExpandService;\n }\n\n get flavor() {\n return this.expand.expanded;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { angleIcon, ClarityIcons, ClrIcon } from '@clr/angular/icon';\n\nimport { ClrAccordion } from './accordion';\nimport { ClrAccordionContent } from './accordion-content';\nimport { ClrAccordionDescription } from './accordion-description';\nimport { ClrAccordionPanel } from './accordion-panel';\nimport { ClrAccordionTitle } from './accordion-title';\nimport { AccordionOompaLoompa } from './chocolate/accordion-oompa-loompa';\nimport { AccordionWillyWonka } from './chocolate/accordion-willy-wonka';\n\nconst declarations = [\n ClrAccordion,\n ClrAccordionPanel,\n ClrAccordionTitle,\n ClrAccordionDescription,\n ClrAccordionContent,\n AccordionOompaLoompa,\n AccordionWillyWonka,\n];\n\n@NgModule({\n imports: [CommonModule, ClrIcon],\n declarations: [...declarations],\n exports: [...declarations],\n})\nexport class ClrAccordionModule {\n constructor() {\n ClarityIcons.addIcons(angleIcon);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './accordion';\nexport * from './accordion-panel';\nexport * from './accordion-title';\nexport * from './accordion-content';\nexport * from './accordion-description';\nexport * from './accordion.module';\nexport * from './enums/accordion-strategy.enum';\nexport * from './models/accordion.model';\nexport * from './providers/accordion.service';\nexport * from './chocolate/accordion-willy-wonka';\nexport * from './chocolate/accordion-oompa-loompa';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AccordionService","i1.AccordionWillyWonka","i2"],"mappings":"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"}