@hermes-ui/angular 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +52 -52
- package/button/_properties.buttons.scss +387 -387
- package/fesm2022/hermes-ui-angular-accordion.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-a11y.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-card-container.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-certificate-viewer.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-datagrid-filters.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-datagrid.mjs +28 -28
- package/fesm2022/hermes-ui-angular-addons-datagrid.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-dialog.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-menu.mjs +8 -8
- package/fesm2022/hermes-ui-angular-addons-menu.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-property-view.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-stepper.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-tabs.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-testing.mjs +78 -78
- package/fesm2022/hermes-ui-angular-addons-testing.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-var.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-wizard.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-addons-workflow.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-button.mjs +74 -74
- package/fesm2022/hermes-ui-angular-button.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-card.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-collapsible-panel.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-data-datagrid.mjs +926 -926
- package/fesm2022/hermes-ui-angular-data-datagrid.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-data-stack-view.mjs +114 -114
- package/fesm2022/hermes-ui-angular-data-stack-view.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-data-tree-view.mjs +12 -12
- package/fesm2022/hermes-ui-angular-data-tree-view.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-data.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-divider.mjs +2 -2
- package/fesm2022/hermes-ui-angular-divider.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-emphasis-alert.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-emphasis-badge.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-emphasis-label.mjs +16 -16
- package/fesm2022/hermes-ui-angular-emphasis-label.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-emphasis.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-checkbox.mjs +50 -50
- package/fesm2022/hermes-ui-angular-forms-checkbox.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-combobox.mjs +126 -126
- package/fesm2022/hermes-ui-angular-forms-combobox.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-common.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-datalist.mjs +46 -46
- package/fesm2022/hermes-ui-angular-forms-datalist.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-datepicker.mjs +374 -374
- package/fesm2022/hermes-ui-angular-forms-datepicker.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-file-input.mjs +190 -190
- package/fesm2022/hermes-ui-angular-forms-file-input.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-input.mjs +52 -52
- package/fesm2022/hermes-ui-angular-forms-input.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-native-select.mjs +38 -38
- package/fesm2022/hermes-ui-angular-forms-native-select.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-number-input.mjs +80 -80
- package/fesm2022/hermes-ui-angular-forms-number-input.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-password.mjs +58 -58
- package/fesm2022/hermes-ui-angular-forms-password.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-radio.mjs +50 -50
- package/fesm2022/hermes-ui-angular-forms-radio.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-range.mjs +44 -44
- package/fesm2022/hermes-ui-angular-forms-range.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-select.mjs +8 -8
- package/fesm2022/hermes-ui-angular-forms-select.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms-textarea.mjs +38 -38
- package/fesm2022/hermes-ui-angular-forms-textarea.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-forms.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-icon.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-layout-breadcrumbs.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-layout-main-container.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-layout-nav.mjs +46 -46
- package/fesm2022/hermes-ui-angular-layout-nav.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-layout-tabs.mjs +146 -146
- package/fesm2022/hermes-ui-angular-layout-tabs.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-layout.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-modal.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-pagination.mjs +8 -8
- package/fesm2022/hermes-ui-angular-pagination.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-popover-common.mjs +26 -3
- package/fesm2022/hermes-ui-angular-popover-common.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-popover-dropdown.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-popover-signpost.mjs +66 -66
- package/fesm2022/hermes-ui-angular-popover-signpost.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-popover-tooltip.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-popover.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-progress-progress-bars.mjs +10 -10
- package/fesm2022/hermes-ui-angular-progress-progress-bars.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-progress-spinner.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-stepper.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-timeline.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-toast.mjs +4 -4
- package/fesm2022/hermes-ui-angular-toast.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-utils-conditional.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-utils.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular-wizard.mjs +56 -56
- package/fesm2022/hermes-ui-angular-wizard.mjs.map +1 -1
- package/fesm2022/hermes-ui-angular.mjs.map +1 -1
- package/hermes-ui.scss +7 -7
- package/package.json +1 -1
- package/toast/README.md +65 -65
- package/toast/_properties.toast.scss +56 -56
- package/toast/_toast.clarity.scss +190 -190
- package/toast/_variables.toast.scss +33 -33
- package/types/hermes-ui-angular-data-datagrid.d.ts.map +1 -1
- package/types/hermes-ui-angular-popover-common.d.ts +4 -3
- package/types/hermes-ui-angular-popover-common.d.ts.map +1 -1
- package/types/hermes-ui-angular-wizard.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes-ui-angular-accordion.mjs","sources":["../../../accordion/accordion-description.ts","../../../accordion/accordion-panel.ts","../../../accordion/accordion-panel.html","../../../accordion/enums/accordion-strategy.enum.ts","../../../accordion/models/accordion.model.ts","../../../accordion/providers/accordion.service.ts","../../../accordion/accordion.ts","../../../accordion/accordion-title.ts","../../../accordion/accordion-content.ts","../../../accordion/chocolate/accordion-willy-wonka.ts","../../../accordion/chocolate/accordion-oompa-loompa.ts","../../../accordion/accordion.module.ts","../../../accordion/index.ts","../../../accordion/hermes-ui-angular-accordion.ts"],"sourcesContent":["/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-description',\r\n template: `<ng-content></ng-content>`,\r\n host: { '[class.hermes-accordion-description]': 'true' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionDescription {}\r\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 '@hermes-ui/angular/collapsible-panel';\nimport { HeadingLevel, IfExpandService } from '@hermes-ui/angular/utils';\n\nimport { HermesAccordionDescription } from './accordion-description';\n\n@Component({\n selector: 'hermes-accordion-panel',\n templateUrl: './accordion-panel.html',\n host: { '[class.hermes-accordion-panel]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: collapsiblePanelExpandAnimation,\n providers: [IfExpandService],\n standalone: false,\n})\nexport class HermesAccordionPanel extends CollapsiblePanel implements OnChanges {\n @Input('hermesAccordionPanelDisabled') @HostBinding('class.hermes-accordion-panel-disabled') disabled = false;\n @Input('hermesAccordionPanelOpen') override panelOpen = false;\n @Output('hermesAccordionPanelOpenChange') override panelOpenChange = new EventEmitter<boolean>();\n\n /**\n * Level of the accordion heading from 1 to 6.\n */\n @Input('hermesAccordionPanelHeadingLevel') explicitHeadingLevel: HeadingLevel;\n\n @ContentChildren(HermesAccordionDescription) accordionDescription: QueryList<HermesAccordionDescription>;\n\n ngOnChanges(changes: SimpleChanges) {\n this.handlePanelInputChanges(changes);\n }\n\n getPanelStateClasses(panel: CollapsiblePanelModel) {\n return panel.open ? 'hermes-accordion-panel-open' : 'hermes-accordion-panel-closed';\n }\n\n getContentId(id: string) {\n return `hermes-accordion-content-${id}`;\n }\n\n getHeaderId(id: string) {\n return `hermes-accordion-header-${id}`;\n }\n}\n","<!--\r\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n ~ This software is released under MIT license.\r\n ~ The full license information can be found in LICENSE in the root directory of this project.\r\n -->\r\n@if (panel | async; as panel) {\r\n<div [ngClass]=\"getPanelStateClasses(panel)\">\r\n <div\r\n class=\"hermes-accordion-header\"\r\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\r\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\r\n >\r\n <button\r\n type=\"button\"\r\n class=\"hermes-accordion-header-button\"\r\n (click)=\"togglePanel()\"\r\n [id]=\"getHeaderId(panel.templateId)\"\r\n [disabled]=\"panel.disabled\"\r\n [attr.aria-controls]=\"!panel.disabled && panel.open ? getContentId(panel.templateId) : null\"\r\n [attr.aria-expanded]=\"panel.open\"\r\n [class.hermes-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\r\n #headerButton\r\n >\r\n <span class=\"hermes-accordion-status\">\r\n <hermes-icon shape=\"angle\" direction=\"right\" class=\"hermes-accordion-angle\"></hermes-icon>\r\n </span>\r\n <ng-content select=\"hermes-accordion-title\"></ng-content>\r\n <ng-content select=\"hermes-accordion-description\"></ng-content>\r\n </button>\r\n </div>\r\n <div\r\n @skipInitialRender\r\n role=\"region\"\r\n class=\"hermes-accordion-content-region\"\r\n [id]=\"getContentId(panel.templateId)\"\r\n [attr.aria-hidden]=\"!panel.open\"\r\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\r\n >\r\n @if (panel.open) {\r\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"hermes-accordion-content\">\r\n <div class=\"hermes-accordion-inner-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\n/**\r\n * Controls how many panels can be open simultaneously within an accordion.\r\n */\r\nexport enum AccordionStrategy {\r\n /** Only one panel can be open at a time. Opening a panel closes any previously open panel. */\r\n Single = 'single',\r\n /** Multiple panels can be open simultaneously. */\r\n Multi = 'multi',\r\n}\r\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 '@hermes-ui/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 '@hermes-ui/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 '@hermes-ui/angular/collapsible-panel';\nimport { Subscription } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { HermesAccordionPanel } from './accordion-panel';\nimport { AccordionStrategy } from './enums/accordion-strategy.enum';\nimport { AccordionService } from './providers/accordion.service';\n\n@Component({\n selector: 'hermes-accordion',\n template: `<ng-content></ng-content>`,\n host: { '[class.hermes-accordion]': 'true' },\n providers: [AccordionService, { provide: CollapsiblePanelService, useExisting: AccordionService }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class HermesAccordion implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n @Input('hermesAccordionMultiPanel') multiPanel: boolean | string = false;\n @ContentChildren(HermesAccordionPanel) panels: QueryList<HermesAccordionPanel>;\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<HermesAccordionPanel>) =>\n this.accordionService.updatePanelOrder(panels.toArray().map(p => p.id))\n );\n }\n}\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-title',\r\n template: `<ng-content></ng-content>`,\r\n host: { '[class.hermes-accordion-title]': 'true' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionTitle {}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-content',\r\n template: `<ng-content></ng-content>`,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionContent {}\r\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 '@hermes-ui/angular/utils';\n\n@Directive({\n selector: 'hermes-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 '@hermes-ui/angular/utils';\n\nimport { AccordionWillyWonka } from './accordion-willy-wonka';\n\n@Directive({\n selector: 'hermes-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('hermes-accordion-panel should only be used inside of hermes-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, HermesIcon } from '@hermes-ui/angular/icon';\n\nimport { HermesAccordion } from './accordion';\nimport { HermesAccordionContent } from './accordion-content';\nimport { HermesAccordionDescription } from './accordion-description';\nimport { HermesAccordionPanel } from './accordion-panel';\nimport { HermesAccordionTitle } from './accordion-title';\nimport { AccordionOompaLoompa } from './chocolate/accordion-oompa-loompa';\nimport { AccordionWillyWonka } from './chocolate/accordion-willy-wonka';\n\nconst declarations = [\n HermesAccordion,\n HermesAccordionPanel,\n HermesAccordionTitle,\n HermesAccordionDescription,\n HermesAccordionContent,\n AccordionOompaLoompa,\n AccordionWillyWonka,\n];\n\n@NgModule({\n imports: [CommonModule, HermesIcon],\n declarations: [...declarations],\n exports: [...declarations],\n})\nexport class HermesAccordionModule {\n constructor() {\n ClarityIcons.addIcons(angleIcon);\n }\n}\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nexport * from './accordion';\r\nexport * from './accordion-panel';\r\nexport * from './accordion-title';\r\nexport * from './accordion-content';\r\nexport * from './accordion-description';\r\nexport * from './accordion.module';\r\nexport * from './enums/accordion-strategy.enum';\r\nexport * from './models/accordion.model';\r\nexport * from './providers/accordion.service';\r\nexport * from './chocolate/accordion-willy-wonka';\r\nexport * from './chocolate/accordion-oompa-loompa';\r\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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"}
|
|
1
|
+
{"version":3,"file":"hermes-ui-angular-accordion.mjs","sources":["../../../accordion/accordion-description.ts","../../../accordion/accordion-panel.ts","../../../accordion/accordion-panel.html","../../../accordion/enums/accordion-strategy.enum.ts","../../../accordion/models/accordion.model.ts","../../../accordion/providers/accordion.service.ts","../../../accordion/accordion.ts","../../../accordion/accordion-title.ts","../../../accordion/accordion-content.ts","../../../accordion/chocolate/accordion-willy-wonka.ts","../../../accordion/chocolate/accordion-oompa-loompa.ts","../../../accordion/accordion.module.ts","../../../accordion/index.ts","../../../accordion/hermes-ui-angular-accordion.ts"],"sourcesContent":["/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-description',\r\n template: `<ng-content></ng-content>`,\r\n host: { '[class.hermes-accordion-description]': 'true' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionDescription {}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport {\r\n ChangeDetectionStrategy,\r\n Component,\r\n ContentChildren,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n Output,\r\n QueryList,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport {\r\n CollapsiblePanel,\r\n collapsiblePanelExpandAnimation,\r\n CollapsiblePanelModel,\r\n} from '@hermes-ui/angular/collapsible-panel';\r\nimport { HeadingLevel, IfExpandService } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesAccordionDescription } from './accordion-description';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-panel',\r\n templateUrl: './accordion-panel.html',\r\n host: { '[class.hermes-accordion-panel]': 'true' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n animations: collapsiblePanelExpandAnimation,\r\n providers: [IfExpandService],\r\n standalone: false,\r\n})\r\nexport class HermesAccordionPanel extends CollapsiblePanel implements OnChanges {\r\n @Input('hermesAccordionPanelDisabled') @HostBinding('class.hermes-accordion-panel-disabled') disabled = false;\r\n @Input('hermesAccordionPanelOpen') override panelOpen = false;\r\n @Output('hermesAccordionPanelOpenChange') override panelOpenChange = new EventEmitter<boolean>();\r\n\r\n /**\r\n * Level of the accordion heading from 1 to 6.\r\n */\r\n @Input('hermesAccordionPanelHeadingLevel') explicitHeadingLevel: HeadingLevel;\r\n\r\n @ContentChildren(HermesAccordionDescription) accordionDescription: QueryList<HermesAccordionDescription>;\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n this.handlePanelInputChanges(changes);\r\n }\r\n\r\n getPanelStateClasses(panel: CollapsiblePanelModel) {\r\n return panel.open ? 'hermes-accordion-panel-open' : 'hermes-accordion-panel-closed';\r\n }\r\n\r\n getContentId(id: string) {\r\n return `hermes-accordion-content-${id}`;\r\n }\r\n\r\n getHeaderId(id: string) {\r\n return `hermes-accordion-header-${id}`;\r\n }\r\n}\r\n","<!--\r\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n ~ This software is released under MIT license.\r\n ~ The full license information can be found in LICENSE in the root directory of this project.\r\n -->\r\n@if (panel | async; as panel) {\r\n<div [ngClass]=\"getPanelStateClasses(panel)\">\r\n <div\r\n class=\"hermes-accordion-header\"\r\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\r\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\r\n >\r\n <button\r\n type=\"button\"\r\n class=\"hermes-accordion-header-button\"\r\n (click)=\"togglePanel()\"\r\n [id]=\"getHeaderId(panel.templateId)\"\r\n [disabled]=\"panel.disabled\"\r\n [attr.aria-controls]=\"!panel.disabled && panel.open ? getContentId(panel.templateId) : null\"\r\n [attr.aria-expanded]=\"panel.open\"\r\n [class.hermes-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\r\n #headerButton\r\n >\r\n <span class=\"hermes-accordion-status\">\r\n <hermes-icon shape=\"angle\" direction=\"right\" class=\"hermes-accordion-angle\"></hermes-icon>\r\n </span>\r\n <ng-content select=\"hermes-accordion-title\"></ng-content>\r\n <ng-content select=\"hermes-accordion-description\"></ng-content>\r\n </button>\r\n </div>\r\n <div\r\n @skipInitialRender\r\n role=\"region\"\r\n class=\"hermes-accordion-content-region\"\r\n [id]=\"getContentId(panel.templateId)\"\r\n [attr.aria-hidden]=\"!panel.open\"\r\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\r\n >\r\n @if (panel.open) {\r\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"hermes-accordion-content\">\r\n <div class=\"hermes-accordion-inner-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\n/**\r\n * Controls how many panels can be open simultaneously within an accordion.\r\n */\r\nexport enum AccordionStrategy {\r\n /** Only one panel can be open at a time. Opening a panel closes any previously open panel. */\r\n Single = 'single',\r\n /** Multiple panels can be open simultaneously. */\r\n Multi = 'multi',\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { CollapsiblePanelGroupModel } from '@hermes-ui/angular/collapsible-panel';\r\n\r\nimport { AccordionStrategy } from '../enums/accordion-strategy.enum';\r\n\r\nexport class AccordionModel extends CollapsiblePanelGroupModel {\r\n private strategy = AccordionStrategy.Single;\r\n\r\n setStrategy(strategy: AccordionStrategy) {\r\n this.strategy = strategy;\r\n }\r\n\r\n override togglePanel(panelId: string, open?: boolean) {\r\n if (!this._panels[panelId]) {\r\n return;\r\n }\r\n\r\n const panelIsOpen = this._panels[panelId].open;\r\n const newOpenState = open !== undefined ? open : !panelIsOpen;\r\n if (newOpenState && this.strategy === AccordionStrategy.Single) {\r\n this.closeAllPanels();\r\n }\r\n\r\n this._panels[panelId].open = newOpenState;\r\n }\r\n\r\n private closeAllPanels() {\r\n this.panels.forEach(panel => (this._panels[panel.id].open = false));\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { CollapsiblePanelService } from '@hermes-ui/angular/collapsible-panel';\r\n\r\nimport { AccordionStrategy } from '../enums/accordion-strategy.enum';\r\nimport { AccordionModel } from '../models/accordion.model';\r\n\r\n@Injectable()\r\nexport class AccordionService extends CollapsiblePanelService {\r\n protected override panelGroup = new AccordionModel();\r\n\r\n setStrategy(strategy: AccordionStrategy) {\r\n this.panelGroup.setStrategy(strategy);\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n Component,\r\n ContentChildren,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n QueryList,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { CollapsiblePanelService } from '@hermes-ui/angular/collapsible-panel';\r\nimport { Subscription } from 'rxjs';\r\nimport { startWith } from 'rxjs/operators';\r\n\r\nimport { HermesAccordionPanel } from './accordion-panel';\r\nimport { AccordionStrategy } from './enums/accordion-strategy.enum';\r\nimport { AccordionService } from './providers/accordion.service';\r\n\r\n@Component({\r\n selector: 'hermes-accordion',\r\n template: `<ng-content></ng-content>`,\r\n host: { '[class.hermes-accordion]': 'true' },\r\n providers: [AccordionService, { provide: CollapsiblePanelService, useExisting: AccordionService }],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordion implements OnInit, OnChanges, AfterViewInit, OnDestroy {\r\n @Input('hermesAccordionMultiPanel') multiPanel: boolean | string = false;\r\n @ContentChildren(HermesAccordionPanel) panels: QueryList<HermesAccordionPanel>;\r\n private subscriptions: Subscription[] = [];\r\n\r\n constructor(private accordionService: AccordionService) {}\r\n\r\n ngOnInit() {\r\n this.setAccordionStrategy();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges) {\r\n if (\r\n changes.multiPanel &&\r\n !changes.multiPanel.firstChange &&\r\n changes.multiPanel.currentValue !== changes.multiPanel.previousValue\r\n ) {\r\n this.setAccordionStrategy();\r\n }\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.subscriptions.push(this.listenForDOMChanges());\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(s => s.unsubscribe());\r\n }\r\n\r\n private setAccordionStrategy() {\r\n const strategy = this.multiPanel ? AccordionStrategy.Multi : AccordionStrategy.Single;\r\n this.accordionService.setStrategy(strategy);\r\n }\r\n\r\n private listenForDOMChanges() {\r\n return this.panels.changes\r\n .pipe(startWith(this.panels))\r\n .subscribe((panels: QueryList<HermesAccordionPanel>) =>\r\n this.accordionService.updatePanelOrder(panels.toArray().map(p => p.id))\r\n );\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-title',\r\n template: `<ng-content></ng-content>`,\r\n host: { '[class.hermes-accordion-title]': 'true' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionTitle {}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-content',\r\n template: `<ng-content></ng-content>`,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionContent {}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { Directive } from '@angular/core';\r\nimport { WillyWonka } from '@hermes-ui/angular/utils';\r\n\r\n@Directive({\r\n selector: 'hermes-accordion',\r\n standalone: false,\r\n})\r\nexport class AccordionWillyWonka extends WillyWonka {}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectorRef, Directive, Optional } from '@angular/core';\r\nimport { IfExpandService, OompaLoompa } from '@hermes-ui/angular/utils';\r\n\r\nimport { AccordionWillyWonka } from './accordion-willy-wonka';\r\n\r\n@Directive({\r\n selector: 'hermes-accordion-panel',\r\n standalone: false,\r\n})\r\nexport class AccordionOompaLoompa extends OompaLoompa {\r\n private expand: IfExpandService;\r\n\r\n constructor(cdr: ChangeDetectorRef, @Optional() willyWonka: AccordionWillyWonka, ifExpandService: IfExpandService) {\r\n if (!willyWonka) {\r\n throw new Error('hermes-accordion-panel should only be used inside of hermes-accordion');\r\n }\r\n super(cdr, willyWonka);\r\n this.expand = ifExpandService;\r\n }\r\n\r\n get flavor() {\r\n return this.expand.expanded;\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { angleIcon, ClarityIcons, HermesIcon } from '@hermes-ui/angular/icon';\r\n\r\nimport { HermesAccordion } from './accordion';\r\nimport { HermesAccordionContent } from './accordion-content';\r\nimport { HermesAccordionDescription } from './accordion-description';\r\nimport { HermesAccordionPanel } from './accordion-panel';\r\nimport { HermesAccordionTitle } from './accordion-title';\r\nimport { AccordionOompaLoompa } from './chocolate/accordion-oompa-loompa';\r\nimport { AccordionWillyWonka } from './chocolate/accordion-willy-wonka';\r\n\r\nconst declarations = [\r\n HermesAccordion,\r\n HermesAccordionPanel,\r\n HermesAccordionTitle,\r\n HermesAccordionDescription,\r\n HermesAccordionContent,\r\n AccordionOompaLoompa,\r\n AccordionWillyWonka,\r\n];\r\n\r\n@NgModule({\r\n imports: [CommonModule, HermesIcon],\r\n declarations: [...declarations],\r\n exports: [...declarations],\r\n})\r\nexport class HermesAccordionModule {\r\n constructor() {\r\n ClarityIcons.addIcons(angleIcon);\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nexport * from './accordion';\r\nexport * from './accordion-panel';\r\nexport * from './accordion-title';\r\nexport * from './accordion-content';\r\nexport * from './accordion-description';\r\nexport * from './accordion.module';\r\nexport * from './enums/accordion-strategy.enum';\r\nexport * from './models/accordion.model';\r\nexport * from './providers/accordion.service';\r\nexport * from './chocolate/accordion-willy-wonka';\r\nexport * from './chocolate/accordion-oompa-loompa';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AccordionService","i1.AccordionWillyWonka","i2"],"mappings":";;;;;;;;;;;AAAA;;;;;AAKG;MAWU,0BAA0B,CAAA;+GAA1B,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,0BAA0B,iKAL3B,CAAA,yBAAA,CAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAK1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAPtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,QAAQ,EAAE,CAAA,yBAAA,CAA2B;AACrC,oBAAA,IAAI,EAAE,EAAE,sCAAsC,EAAE,MAAM,EAAE;oBACxD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;ACfD;;;;;AAKG;AAgCG,MAAO,oBAAqB,SAAQ,gBAAgB,CAAA;AAT1D,IAAA,WAAA,GAAA;;QAU+F,IAAA,CAAA,QAAQ,GAAG,KAAK;QACjE,IAAA,CAAA,SAAS,GAAG,KAAK;AACV,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,YAAY,EAAW;AAwBjG,IAAA;AAfC,IAAA,WAAW,CAAC,OAAsB,EAAA;AAChC,QAAA,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC;IACvC;AAEA,IAAA,oBAAoB,CAAC,KAA4B,EAAA;QAC/C,OAAO,KAAK,CAAC,IAAI,GAAG,6BAA6B,GAAG,+BAA+B;IACrF;AAEA,IAAA,YAAY,CAAC,EAAU,EAAA;QACrB,OAAO,CAAA,yBAAA,EAA4B,EAAE,CAAA,CAAE;IACzC;AAEA,IAAA,WAAW,CAAC,EAAU,EAAA;QACpB,OAAO,CAAA,wBAAA,EAA2B,EAAE,CAAA,CAAE;IACxC;+GA1BW,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,8BAAA,EAAA,UAAA,CAAA,EAAA,SAAA,EAAA,CAAA,0BAAA,EAAA,WAAA,CAAA,EAAA,oBAAA,EAAA,CAAA,kCAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,gCAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,uCAAA,EAAA,eAAA,EAAA,EAAA,EAAA,SAAA,EAHpB,CAAC,eAAe,CAAC,+DAaX,0BAA0B,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC/C7C,y/DAiDA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,WAAA,EAAA,MAAA,EAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,UAAA,EDhBc,+BAA+B,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAIhC,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAThC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,QAE5B,EAAE,gCAAgC,EAAE,MAAM,EAAE,EAAA,eAAA,EACjC,uBAAuB,CAAC,MAAM,cACnC,+BAA+B,EAAA,SAAA,EAChC,CAAC,eAAe,CAAC,cAChB,KAAK,EAAA,QAAA,EAAA,y/DAAA,EAAA;;sBAGhB,KAAK;uBAAC,8BAA8B;;sBAAG,WAAW;uBAAC,uCAAuC;;sBAC1F,KAAK;uBAAC,0BAA0B;;sBAChC,MAAM;uBAAC,gCAAgC;;sBAKvC,KAAK;uBAAC,kCAAkC;;sBAExC,eAAe;uBAAC,0BAA0B;;;AE/C7C;;;;;AAKG;AAEH;;AAEG;IACS;AAAZ,CAAA,UAAY,iBAAiB,EAAA;;AAE3B,IAAA,iBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;;AAEjB,IAAA,iBAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AACjB,CAAC,EALW,iBAAiB,KAAjB,iBAAiB,GAAA,EAAA,CAAA,CAAA;;ACV7B;;;;;AAKG;AAMG,MAAO,cAAe,SAAQ,0BAA0B,CAAA;AAA9D,IAAA,WAAA,GAAA;;AACU,QAAA,IAAA,CAAA,QAAQ,GAAG,iBAAiB,CAAC,MAAM;IAuB7C;AArBE,IAAA,WAAW,CAAC,QAA2B,EAAA;AACrC,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;IAC1B;IAES,WAAW,CAAC,OAAe,EAAE,IAAc,EAAA;QAClD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC1B;QACF;QAEA,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI;AAC9C,QAAA,MAAM,YAAY,GAAG,IAAI,KAAK,SAAS,GAAG,IAAI,GAAG,CAAC,WAAW;QAC7D,IAAI,YAAY,IAAI,IAAI,CAAC,QAAQ,KAAK,iBAAiB,CAAC,MAAM,EAAE;YAC9D,IAAI,CAAC,cAAc,EAAE;QACvB;QAEA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,GAAG,YAAY;IAC3C;IAEQ,cAAc,GAAA;QACpB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IACrE;AACD;;ACnCD;;;;;AAKG;AASG,MAAO,gBAAiB,SAAQ,uBAAuB,CAAA;AAD7D,IAAA,WAAA,GAAA;;AAEqB,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,cAAc,EAAE;AAKrD,IAAA;AAHC,IAAA,WAAW,CAAC,QAA2B,EAAA;AACrC,QAAA,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC;IACvC;+GALW,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAhB,gBAAgB,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAD5B;;;ACbD;;;;;AAKG;MA8BU,eAAe,CAAA;AAK1B,IAAA,WAAA,CAAoB,gBAAkC,EAAA;QAAlC,IAAA,CAAA,gBAAgB,GAAhB,gBAAgB;QAJA,IAAA,CAAA,UAAU,GAAqB,KAAK;QAEhE,IAAA,CAAA,aAAa,GAAmB,EAAE;IAEe;IAEzD,QAAQ,GAAA;QACN,IAAI,CAAC,oBAAoB,EAAE;IAC7B;AAEA,IAAA,WAAW,CAAC,OAAsB,EAAA;QAChC,IACE,OAAO,CAAC,UAAU;AAClB,YAAA,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW;YAC/B,OAAO,CAAC,UAAU,CAAC,YAAY,KAAK,OAAO,CAAC,UAAU,CAAC,aAAa,EACpE;YACA,IAAI,CAAC,oBAAoB,EAAE;QAC7B;IACF;IAEA,eAAe,GAAA;QACb,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACrD;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAClD;IAEQ,oBAAoB,GAAA;AAC1B,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,GAAG,iBAAiB,CAAC,KAAK,GAAG,iBAAiB,CAAC,MAAM;AACrF,QAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,QAAQ,CAAC;IAC7C;IAEQ,mBAAmB,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC;AAChB,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC;AAC3B,aAAA,SAAS,CAAC,CAAC,MAAuC,KACjD,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CACxE;IACL;+GAxCW,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,iMAJf,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,SAAA,EAMjF,oBAAoB,kDAR3B,CAAA,yBAAA,CAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAM1B,eAAe,EAAA,UAAA,EAAA,CAAA;kBAR3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,QAAQ,EAAE,CAAA,yBAAA,CAA2B;AACrC,oBAAA,IAAI,EAAE,EAAE,0BAA0B,EAAE,MAAM,EAAE;AAC5C,oBAAA,SAAS,EAAE,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC;oBAClG,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;sBAEE,KAAK;uBAAC,2BAA2B;;sBACjC,eAAe;uBAAC,oBAAoB;;;ACrCvC;;;;;AAKG;MAWU,oBAAoB,CAAA;+GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,qJALrB,CAAA,yBAAA,CAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAK1B,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAPhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,QAAQ,EAAE,CAAA,yBAAA,CAA2B;AACrC,oBAAA,IAAI,EAAE,EAAE,gCAAgC,EAAE,MAAM,EAAE;oBAClD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;ACfD;;;;;AAKG;MAUU,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,qFAJvB,CAAA,yBAAA,CAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAI1B,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBANlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,QAAQ,EAAE,CAAA,yBAAA,CAA2B;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;ACdD;;;;;AAKG;AASG,MAAO,mBAAoB,SAAQ,UAAU,CAAA;+GAAtC,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAnB,mBAAmB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAJ/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;ACbD;;;;;AAKG;AAWG,MAAO,oBAAqB,SAAQ,WAAW,CAAA;AAGnD,IAAA,WAAA,CAAY,GAAsB,EAAc,UAA+B,EAAE,eAAgC,EAAA;QAC/G,IAAI,CAAC,UAAU,EAAE;AACf,YAAA,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC;QAC1F;AACA,QAAA,KAAK,CAAC,GAAG,EAAE,UAAU,CAAC;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,eAAe;IAC/B;AAEA,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ;IAC7B;+GAbW,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;0BAIsC;;;ACnBvC;;;;;AAKG;AAcH,MAAM,YAAY,GAAG;IACnB,eAAe;IACf,oBAAoB;IACpB,oBAAoB;IACpB,0BAA0B;IAC1B,sBAAsB;IACtB,oBAAoB;IACpB,mBAAmB;CACpB;MAOY,qBAAqB,CAAA;AAChC,IAAA,WAAA,GAAA;AACE,QAAA,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC;IAClC;+GAHW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,qBAAqB,iBAdhC,eAAe;YACf,oBAAoB;YACpB,oBAAoB;YACpB,0BAA0B;YAC1B,sBAAsB;YACtB,oBAAoB;AACpB,YAAA,mBAAmB,CAAA,EAAA,OAAA,EAAA,CAIT,YAAY,EAAE,UAAU,aAVlC,eAAe;YACf,oBAAoB;YACpB,oBAAoB;YACpB,0BAA0B;YAC1B,sBAAsB;YACtB,oBAAoB;YACpB,mBAAmB,CAAA,EAAA,CAAA,CAAA;gHAQR,qBAAqB,EAAA,OAAA,EAAA,CAJtB,YAAY,EAAE,UAAU,CAAA,EAAA,CAAA,CAAA;;4FAIvB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;AACnC,oBAAA,YAAY,EAAE,CAAC,GAAG,YAAY,CAAC;AAC/B,oBAAA,OAAO,EAAE,CAAC,GAAG,YAAY,CAAC;AAC3B,iBAAA;;;ACjCD;;;;;AAKG;;ACLH;;AAEG;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes-ui-angular-addons-a11y.mjs","sources":["../../../addons/a11y/a11y.constants.ts","../../../addons/a11y/hermes-stepper-panel/override-hermes-strings.directive.ts","../../../addons/a11y/resize/element-resize.service.ts","../../../addons/a11y/hermes-tabs/overflow-hermes-tabs.directive.ts","../../../addons/a11y/forms/required-field-legend.l10n.ts","../../../addons/a11y/forms/required-field-legend.component.ts","../../../addons/a11y/forms/required-field-legend.component.html","../../../addons/a11y/zoom/zoom-level.model.ts","../../../addons/a11y/zoom/zoom-level.service.ts","../../../addons/a11y/zoom/zoom-level-indicator.directive.ts","../../../addons/a11y/a11y.module.ts","../../../addons/a11y/index.ts","../../../addons/a11y/hermes-ui-angular-addons-a11y.ts"],"sourcesContent":["/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\n/**\r\n * Accessibility mode keys\r\n */\r\nexport const a11ykeys = {\r\n enter: 'Enter',\r\n arrowLeft: 'ArrowLeft',\r\n arrowRight: 'ArrowRight',\r\n};\r\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, Input, OnInit } from '@angular/core';\nimport { HermesStepperPanel } from '@hermes-ui/angular/stepper';\nimport { HermesCommonStrings, HermesCommonStringsService } from '@hermes-ui/angular/utils';\n\n/**\n * This directive overrides strings used in HermesStepperPanel. It creates a copy of the strings, returned by\n * HermesCommonStringsService and does not modify the original resources.\n *\n * This directive relies on the following Clarity internals:\n * <code>\n * export class HermesStepperPanel extends HermesAccordionPanel implements OnInit {\n * public constructor(\n * public commonStrings: HermesCommonStringsService,\n * ...\n * ) {}\n * ...\n * }\n * </code>\n *\n * common-strings.default.ts:\n * <code>\n * // Accordion/Stepper\n * stepComplete: 'Step {STEP} complete',\n * stepError: 'Error in step {STEP}',\n * </code>\n *\n * Usage:\n * <code>\n * <hermes-stepper-panel formGroupName=\"step0\" [appfxOverrideHermesStrings]=\"stepPanelOverriddenStrings\">\n * ...\n * </hermes-stepper-panel>\n *\n * const stepPanelOverriddenStrings: Partial<HermesCommonStrings> = {\n * success: \"The step is successfully completed\",\n * danger: \"The step is in serious danger\",\n * };\n * </code>\n */\n@Directive({\n selector: 'hermes-stepper-panel [appfxOverrideHermesStrings]',\n standalone: false,\n})\nexport class OverrideHermesStringsDirective implements OnInit {\n @Input() appfxOverrideHermesStrings: Partial<HermesCommonStrings> = {};\n\n constructor(\n private hermesPanel: HermesStepperPanel,\n private hermesCommonStringsService: HermesCommonStringsService\n ) {}\n\n ngOnInit(): void {\n const copiedStrings: HermesCommonStrings = Object.assign({}, this.hermesCommonStringsService.keys);\n\n // TODO syuleymanovg: Remove this workaround after upgrading to Clarity 18.\n //\n // Clarity versions 16.4.0 and 17.1.0 introduced new `stepComplete` and `stepError` strings\n // to address accessibility (a11y) issues. Unfortunately, this change is a breaking change for AppFx.\n // For more details, see the related pull request: https://github.com/vmware-clarity/ng-clarity/pull/1334\n // If these strings are present, it indicates that the Clarity version is 16.4.0/17.1.0 or newer,\n // and no further string overriding is necessary.\n if (copiedStrings['stepComplete'] && copiedStrings['stepError']) {\n return;\n }\n\n const keys = Object.assign(copiedStrings, this.appfxOverrideHermesStrings);\n this.hermesPanel.commonStrings = <HermesCommonStringsService>{\n keys: keys,\n };\n }\n}\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\n// TODO: tganchev: better solution needed.\r\n\r\ndeclare let ResizeObserver: any;\r\n\r\n/**\r\n * Abstracts the ResizeObserver to limit its API.\r\n */\r\n@Injectable({ providedIn: 'root' })\r\nexport class ElementResizeService {\r\n getResizeObservable(element: Element): Observable<void> {\r\n return new Observable<void>(subscriber => {\r\n const observer = new ResizeObserver(() => subscriber.next());\r\n observer.observe(element);\r\n return () => {\r\n observer.unobserve(element);\r\n };\r\n });\r\n }\r\n}\r\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 ChangeDetectorRef,\n Directive,\n ElementRef,\n OnDestroy,\n QueryList,\n Renderer2,\n} from '@angular/core';\nimport { HermesTab, HermesTabLink, HermesTabs } from '@hermes-ui/angular/layout/tabs';\nimport { merge, of, Subscription } from 'rxjs';\nimport { debounceTime, delay } from 'rxjs/operators';\n\nimport { ElementResizeService } from '../resize/element-resize.service';\n\nexport const resources = {\n layoutChangesDebounceDuration: 10,\n initialLoadDelay: 250,\n hermesTabLinkClasses: ['btn-link', 'nav-link'],\n appfxSecondaryTabButtonClass: 'appfx-tab-button',\n};\n\n/**\n * Automatically include the tab links in overflow if there is not enough width.\n *\n * This directive relies on the following Clarity internals:\n * 1. HermesTabLink:\n * <code>\n * @HostBinding('class.btn-link')\n * @HostBinding('class.nav-link')\n * get addLinkClasses() {...}\n * </code>\n *\n * 2. HermesTabs:\n * <code>\n * @ContentChildren(HermesTab) private tabs: QueryList<HermesTab>;\n *\n * private _tabOverflowEl: HTMLElement;\n * </code>\n */\n@Directive({\n selector: 'hermes-tabs [appfxOverflowTabs]',\n standalone: false,\n})\nexport class OverflowHermesTabsDirective implements AfterViewInit, OnDestroy {\n private readonly subscription: Subscription = new Subscription();\n private parentElement: HTMLElement;\n private tabOverflowEl: HTMLElement;\n\n constructor(\n private cdr: ChangeDetectorRef,\n private element: ElementRef,\n private renderer: Renderer2,\n private hermesTabsComponent: HermesTabs,\n private elementResizeService: ElementResizeService\n ) {}\n\n ngAfterViewInit() {\n this.setup();\n }\n\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n\n private setup() {\n this.patchOverflowContent();\n\n const tabs: QueryList<HermesTab> = this.hermesTabsComponent['tabs'];\n this.parentElement = this.renderer.parentNode(this.element.nativeElement) as HTMLElement;\n this.subscription.add(\n merge(\n tabs.changes,\n of(undefined).pipe(delay(resources.initialLoadDelay)),\n this.elementResizeService.getResizeObservable(this.parentElement)\n )\n .pipe(debounceTime(resources.layoutChangesDebounceDuration))\n .subscribe(() => this.updateOverflowMenu(this.parentElement))\n );\n }\n\n /**\n * When the More button (...) is clicked, HermesTabOverflowContent is displayed.\n * It is a dropdown with style 'bottom-right'. However when there is just one tab,\n * the overflow component overflows to the left of the viewport and is not visible.\n * This method overrides private field in HermesTabs - _tabOverflowEl - that is set when\n * the HermesTabOverflowContent is created. If all tabs are in overflow, then change the\n * style of <hermes-tab-overflow-content> element so that it takes the entire width\n * of the viewport.\n */\n private patchOverflowContent(): void {\n Object.defineProperty(this.hermesTabsComponent, '_tabOverflowEl', <PropertyDescriptor>{\n get: () => this.tabOverflowEl,\n set: (el: HTMLElement) => {\n this.tabOverflowEl = el;\n if (!this.tabOverflowEl) {\n return;\n }\n\n const tabLinks: HermesTabLink[] = this.hermesTabsComponent.tabLinkDirectives;\n const allTabsInOverflow = tabLinks.every((tabLink: HermesTabLink) => tabLink.inOverflow);\n if (allTabsInOverflow) {\n this.renderer.setStyle(this.tabOverflowEl, 'left', 0);\n this.renderer.setStyle(this.tabOverflowEl, 'position', 'fixed');\n this.renderer.setStyle(this.tabOverflowEl, 'top', 'auto');\n }\n },\n });\n }\n\n /**\n * Determine which tab links to be shelved into the overflow menu.\n */\n private updateOverflowMenu(container: HTMLElement): void {\n const tabLinks: HermesTabLink[] = this.hermesTabsComponent.tabLinkDirectives;\n this.showAllTabs(tabLinks);\n\n const hermesTabLinkMargin = this.calculateTabLinkMargin(tabLinks);\n this.updateTabsInOverflow(tabLinks, hermesTabLinkMargin, container);\n }\n\n private showAllTabs(tabLinks: HermesTabLink[]): void {\n let overflowStateChanged = false;\n // Move all tabs out of overflow, then update the underlying view to sync the shifted tabs.\n tabLinks.forEach((tabLink: HermesTabLink) => {\n if (tabLink.inOverflow) {\n overflowStateChanged = true;\n tabLink.inOverflow = false;\n // Hidden tabs are displayed, but their style is like regular button. They are\n // wider and this affect the overflow calculation. Temporary add link classes\n // for more precise width calculation.\n this.addTabLinkClasses(tabLink);\n }\n });\n\n // Trigger change detection only if the overflow of tabs was changed.\n if (overflowStateChanged) {\n this.cdr.detectChanges();\n }\n }\n\n private calculateTabLinkMargin(tabLinks: HermesTabLink[]): number {\n if (tabLinks.length < 2) {\n return 0;\n }\n\n const firstLinkEl: HTMLElement = tabLinks[0].el.nativeElement as HTMLElement;\n const secondLinkEl: HTMLElement = tabLinks[1].el.nativeElement as HTMLElement;\n return secondLinkEl.getBoundingClientRect().left - firstLinkEl.getBoundingClientRect().right;\n }\n\n private updateTabsInOverflow(tabLinks: HermesTabLink[], hermesTabLinkMargin: number, container: HTMLElement): void {\n let areNextTabLinksOverflowing = false;\n tabLinks.forEach((tabLink: HermesTabLink) => {\n if (!areNextTabLinksOverflowing) {\n tabLink.inOverflow = areNextTabLinksOverflowing = this.isTabLinkOverflowing(\n container,\n hermesTabLinkMargin,\n tabLink\n );\n } else {\n // presume and hide remaining tabs\n tabLink.inOverflow = true;\n }\n\n // Manually restore the classes that HermesTabLink adds to its parent button.\n // Change detection updates the visibility of the tabs, but does not\n // update the @HostBinding properly.\n if (tabLink.inOverflow) {\n this.removeTabLinkClasses(tabLink);\n } else {\n this.addTabLinkClasses(tabLink);\n }\n });\n\n // as tabs may have shifted position in/out of menu, synchronize view\n this.cdr.detectChanges();\n }\n\n private isTabLinkOverflowing(container: HTMLElement, hermesTabLinkMargin: number, tabLink: HermesTabLink): boolean {\n const containerBcr: DOMRect = container.getBoundingClientRect();\n const hermesTabLinkEl: HTMLElement = tabLink.el.nativeElement;\n const hermesTabLinkElementBcr: DOMRect = hermesTabLinkEl.getBoundingClientRect();\n // layout decision making process for showing or hiding a tab\n // include natural margin around tab and guarantee some inset padding for the \"...\" against right edge\n return hermesTabLinkElementBcr.right + hermesTabLinkMargin > containerBcr.right - hermesTabLinkMargin;\n }\n\n private addTabLinkClasses(tabLink: HermesTabLink): void {\n const buttonClassList = tabLink.el.nativeElement.classList;\n if (buttonClassList.contains(resources.appfxSecondaryTabButtonClass)) {\n // when appfx tabs are rendered as secondary tabs, no need to adjust the tab link classes.\n return;\n }\n\n resources.hermesTabLinkClasses.forEach((cssClass: string) =>\n this.renderer.addClass(tabLink.el.nativeElement, cssClass)\n );\n }\n\n private removeTabLinkClasses(tabLink: HermesTabLink): void {\n resources.hermesTabLinkClasses.forEach((cssClass: string) =>\n this.renderer.removeClass(tabLink.el.nativeElement, cssClass)\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\n// Disable the duplicate string check because this is a translations file.\n\nimport { AppfxTranslations } from '@hermes-ui/angular/addons/translate';\n\nexport const translations: AppfxTranslations = {\n en: {\n legendPrefix: 'Fields marked with',\n legendSuffix: 'are required',\n },\n es: {\n legendPrefix: 'Campos marcados con',\n legendSuffix: 'son obligatorios',\n },\n fr: {\n legendPrefix: \"Champs marqués d'un\",\n legendSuffix: 'sont requis',\n },\n ja: {\n legendPrefix: 'フィールドのマークに使用される条件',\n legendSuffix: 'は必須です',\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 { Component } from '@angular/core';\nimport { AppfxTranslateService, appfxTranslationsToken } from '@hermes-ui/angular/addons/translate';\n\nimport { translations } from './required-field-legend.l10n';\n\n@Component({\n selector: 'appfx-required-field-legend',\n standalone: false,\n templateUrl: 'required-field-legend.component.html',\n styleUrls: ['required-field-legend.component.scss'],\n providers: [\n AppfxTranslateService,\n {\n provide: appfxTranslationsToken,\n useValue: translations,\n },\n ],\n})\nexport class RequiredFieldLegendComponent {}\n","<!--\r\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n ~ This software is released under MIT license.\r\n ~ The full license information can be found in LICENSE in the root directory of this project.\r\n -->\r\n<div class=\"legend-wrapper\">\r\n <span>{{ 'legendPrefix' | translate }}</span>\r\n <span class=\"icon-margin hermes-required-mark\"></span>\r\n <span>{{ 'legendSuffix' | translate }}</span>\r\n</div>\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\n// Supported zoom levels are 200% and 400% with breakpoints based on\r\n// Bootstrap responsive breakpoints:\r\n// https://getbootstrap.com/docs/4.5/layout/overview/\r\n// The mapping between zoom levels and Bootstrap breakpoints is:\r\n// 400% = Bootstrap XS - <576px\r\n// 200% = Bootstrap SM | MD | L - ≥576px\r\n// none (no-zoom) = Bootstrap XL - ≥1200px\r\n\r\nexport enum ZoomLevel {\r\n x2 = 'zoom2x',\r\n x4 = 'zoom4x',\r\n none = 'no-zoom',\r\n}\r\n\r\nexport const zoomBreakpoints = [\r\n {\r\n zoomLevel: ZoomLevel.x4,\r\n maxWidth: 575,\r\n },\r\n {\r\n zoomLevel: ZoomLevel.x2,\r\n maxWidth: 1199,\r\n },\r\n {\r\n zoomLevel: ZoomLevel.none,\r\n maxWidth: Number.MAX_VALUE,\r\n },\r\n];\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable, OnDestroy } from '@angular/core';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\nimport { zoomBreakpoints, ZoomLevel } from './zoom-level.model';\r\n\r\n/**\r\n * Service for detecting zoom level based on document body size. Uses\r\n * ResizeObserver for detecting body size changes.\r\n * @private\r\n * ResizeObserver spec: https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver\r\n */\r\n@Injectable()\r\nexport class ZoomLevelService implements OnDestroy {\r\n private observer: ResizeObserver;\r\n private resizeSubject = new ReplaySubject<ZoomLevel>(1);\r\n private lastZoomLevel: ZoomLevel | undefined;\r\n\r\n /**\r\n * Emits when the zoom level is changed.\r\n *\r\n * NOTE: This observable emits <b>outside Angular</b>. You might need to explicitly invoke\r\n * <code>ChangeDetectorRef.detectChanges()</code> to trigger Angular change detection.\r\n */\r\n // debounceTime() operator is added to avoid the following error:\r\n // \"ResizeObserver loop limit exceeded thrown\"\r\n // This error means that ResizeObserver was not able to deliver all observations within\r\n // a single animation frame. This happens if a change detection is run inside the subscriber.\r\n private _onChange: Observable<ZoomLevel> = this.resizeSubject.pipe(debounceTime(10));\r\n\r\n constructor(@Inject(DOCUMENT) private document: Document) {\r\n this.observe();\r\n }\r\n\r\n get onChange(): Observable<ZoomLevel> {\r\n return this._onChange;\r\n }\r\n set onChange(value: Observable<ZoomLevel>) {\r\n this._onChange = value;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unobserve();\r\n this.resizeSubject.complete();\r\n }\r\n\r\n private observe(): void {\r\n this.observer = new ResizeObserver((entries: any[]) => {\r\n const entry: any = entries && entries[0];\r\n if (!entry) {\r\n return;\r\n }\r\n this.detectZoomLevelChange(entry);\r\n });\r\n this.observer.observe(this.document.documentElement);\r\n }\r\n\r\n private unobserve() {\r\n this.observer.unobserve(this.document.documentElement);\r\n }\r\n\r\n private detectZoomLevelChange(entry: any): void {\r\n const docCurrentWidth = entry.contentRect.width;\r\n\r\n const newResponsiveBreakpoint = zoomBreakpoints.find(breakpoint => {\r\n return breakpoint.maxWidth >= docCurrentWidth;\r\n });\r\n\r\n if (newResponsiveBreakpoint?.zoomLevel === this.lastZoomLevel) {\r\n return;\r\n }\r\n\r\n this.lastZoomLevel = newResponsiveBreakpoint?.zoomLevel;\r\n this.resizeSubject.next(this.lastZoomLevel as ZoomLevel);\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { Directive, HostBinding, OnDestroy, OnInit, Optional } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ZoomLevel } from './zoom-level.model';\r\nimport { ZoomLevelService } from './zoom-level.service';\r\n\r\n@Directive({ selector: '[zoomLevelIndicator]', standalone: false })\r\nexport class ZoomLevelIndicatorDirective implements OnInit, OnDestroy {\r\n @HostBinding('class') zoomLevel: ZoomLevel;\r\n\r\n private subscription: Subscription;\r\n\r\n constructor(@Optional() private zoomLevelService: ZoomLevelService) {}\r\n\r\n ngOnInit() {\r\n if (this.zoomLevelService) {\r\n this.subscription = this.zoomLevelService.onChange.subscribe(v => {\r\n this.zoomLevel = v;\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n}\r\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 { NgModule } from '@angular/core';\nimport { AppfxTranslateModule } from '@hermes-ui/angular/addons/translate';\n\nimport { OverrideHermesStringsDirective } from './hermes-stepper-panel/override-hermes-strings.directive';\nimport { OverflowHermesTabsDirective } from './hermes-tabs/overflow-hermes-tabs.directive';\nimport { RequiredFieldLegendComponent } from './forms/required-field-legend.component';\nimport { ZoomLevelIndicatorDirective } from './zoom/zoom-level-indicator.directive';\nimport { ZoomLevelService } from './zoom/zoom-level.service';\n\n/**\n * Provides accessibility related services.\n */\n@NgModule({\n declarations: [\n OverflowHermesTabsDirective,\n OverrideHermesStringsDirective,\n RequiredFieldLegendComponent,\n ZoomLevelIndicatorDirective,\n ],\n imports: [AppfxTranslateModule],\n exports: [\n OverflowHermesTabsDirective,\n OverrideHermesStringsDirective,\n RequiredFieldLegendComponent,\n ZoomLevelIndicatorDirective,\n ],\n providers: [ZoomLevelService],\n})\nexport class AppfxA11yModule {}\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nexport { a11ykeys } from './a11y.constants';\r\nexport {\r\n /**\r\n * @deprecated Use AppfxA11yModule import instead.\r\n */\r\n AppfxA11yModule as A11yModule,\r\n} from './a11y.module';\r\nexport { AppfxA11yModule } from './a11y.module';\r\nexport { OverrideHermesStringsDirective } from './hermes-stepper-panel/override-hermes-strings.directive';\r\nexport { OverflowHermesTabsDirective } from './hermes-tabs/overflow-hermes-tabs.directive';\r\nexport { RequiredFieldLegendComponent } from './forms/required-field-legend.component';\r\nexport { ElementResizeService } from './resize/element-resize.service';\r\nexport { ZoomLevel } from './zoom/zoom-level.model';\r\nexport { ZoomLevelService } from './zoom/zoom-level.service';\r\nexport { ZoomLevelIndicatorDirective } from './zoom/zoom-level-indicator.directive';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.ElementResizeService","i1.ZoomLevelService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hermes-ui-angular-addons-a11y.mjs","sources":["../../../addons/a11y/a11y.constants.ts","../../../addons/a11y/hermes-stepper-panel/override-hermes-strings.directive.ts","../../../addons/a11y/resize/element-resize.service.ts","../../../addons/a11y/hermes-tabs/overflow-hermes-tabs.directive.ts","../../../addons/a11y/forms/required-field-legend.l10n.ts","../../../addons/a11y/forms/required-field-legend.component.ts","../../../addons/a11y/forms/required-field-legend.component.html","../../../addons/a11y/zoom/zoom-level.model.ts","../../../addons/a11y/zoom/zoom-level.service.ts","../../../addons/a11y/zoom/zoom-level-indicator.directive.ts","../../../addons/a11y/a11y.module.ts","../../../addons/a11y/index.ts","../../../addons/a11y/hermes-ui-angular-addons-a11y.ts"],"sourcesContent":["/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\n/**\r\n * Accessibility mode keys\r\n */\r\nexport const a11ykeys = {\r\n enter: 'Enter',\r\n arrowLeft: 'ArrowLeft',\r\n arrowRight: 'ArrowRight',\r\n};\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { Directive, Input, OnInit } from '@angular/core';\r\nimport { HermesStepperPanel } from '@hermes-ui/angular/stepper';\r\nimport { HermesCommonStrings, HermesCommonStringsService } from '@hermes-ui/angular/utils';\r\n\r\n/**\r\n * This directive overrides strings used in HermesStepperPanel. It creates a copy of the strings, returned by\r\n * HermesCommonStringsService and does not modify the original resources.\r\n *\r\n * This directive relies on the following Clarity internals:\r\n * <code>\r\n * export class HermesStepperPanel extends HermesAccordionPanel implements OnInit {\r\n * public constructor(\r\n * public commonStrings: HermesCommonStringsService,\r\n * ...\r\n * ) {}\r\n * ...\r\n * }\r\n * </code>\r\n *\r\n * common-strings.default.ts:\r\n * <code>\r\n * // Accordion/Stepper\r\n * stepComplete: 'Step {STEP} complete',\r\n * stepError: 'Error in step {STEP}',\r\n * </code>\r\n *\r\n * Usage:\r\n * <code>\r\n * <hermes-stepper-panel formGroupName=\"step0\" [appfxOverrideHermesStrings]=\"stepPanelOverriddenStrings\">\r\n * ...\r\n * </hermes-stepper-panel>\r\n *\r\n * const stepPanelOverriddenStrings: Partial<HermesCommonStrings> = {\r\n * success: \"The step is successfully completed\",\r\n * danger: \"The step is in serious danger\",\r\n * };\r\n * </code>\r\n */\r\n@Directive({\r\n selector: 'hermes-stepper-panel [appfxOverrideHermesStrings]',\r\n standalone: false,\r\n})\r\nexport class OverrideHermesStringsDirective implements OnInit {\r\n @Input() appfxOverrideHermesStrings: Partial<HermesCommonStrings> = {};\r\n\r\n constructor(\r\n private hermesPanel: HermesStepperPanel,\r\n private hermesCommonStringsService: HermesCommonStringsService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n const copiedStrings: HermesCommonStrings = Object.assign({}, this.hermesCommonStringsService.keys);\r\n\r\n // TODO syuleymanovg: Remove this workaround after upgrading to Clarity 18.\r\n //\r\n // Clarity versions 16.4.0 and 17.1.0 introduced new `stepComplete` and `stepError` strings\r\n // to address accessibility (a11y) issues. Unfortunately, this change is a breaking change for AppFx.\r\n // For more details, see the related pull request: https://github.com/vmware-clarity/ng-clarity/pull/1334\r\n // If these strings are present, it indicates that the Clarity version is 16.4.0/17.1.0 or newer,\r\n // and no further string overriding is necessary.\r\n if (copiedStrings['stepComplete'] && copiedStrings['stepError']) {\r\n return;\r\n }\r\n\r\n const keys = Object.assign(copiedStrings, this.appfxOverrideHermesStrings);\r\n this.hermesPanel.commonStrings = <HermesCommonStringsService>{\r\n keys: keys,\r\n };\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\n\r\n// TODO: tganchev: better solution needed.\r\n\r\ndeclare let ResizeObserver: any;\r\n\r\n/**\r\n * Abstracts the ResizeObserver to limit its API.\r\n */\r\n@Injectable({ providedIn: 'root' })\r\nexport class ElementResizeService {\r\n getResizeObservable(element: Element): Observable<void> {\r\n return new Observable<void>(subscriber => {\r\n const observer = new ResizeObserver(() => subscriber.next());\r\n observer.observe(element);\r\n return () => {\r\n observer.unobserve(element);\r\n };\r\n });\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport {\r\n AfterViewInit,\r\n ChangeDetectorRef,\r\n Directive,\r\n ElementRef,\r\n OnDestroy,\r\n QueryList,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport { HermesTab, HermesTabLink, HermesTabs } from '@hermes-ui/angular/layout/tabs';\r\nimport { merge, of, Subscription } from 'rxjs';\r\nimport { debounceTime, delay } from 'rxjs/operators';\r\n\r\nimport { ElementResizeService } from '../resize/element-resize.service';\r\n\r\nexport const resources = {\r\n layoutChangesDebounceDuration: 10,\r\n initialLoadDelay: 250,\r\n hermesTabLinkClasses: ['btn-link', 'nav-link'],\r\n appfxSecondaryTabButtonClass: 'appfx-tab-button',\r\n};\r\n\r\n/**\r\n * Automatically include the tab links in overflow if there is not enough width.\r\n *\r\n * This directive relies on the following Clarity internals:\r\n * 1. HermesTabLink:\r\n * <code>\r\n * @HostBinding('class.btn-link')\r\n * @HostBinding('class.nav-link')\r\n * get addLinkClasses() {...}\r\n * </code>\r\n *\r\n * 2. HermesTabs:\r\n * <code>\r\n * @ContentChildren(HermesTab) private tabs: QueryList<HermesTab>;\r\n *\r\n * private _tabOverflowEl: HTMLElement;\r\n * </code>\r\n */\r\n@Directive({\r\n selector: 'hermes-tabs [appfxOverflowTabs]',\r\n standalone: false,\r\n})\r\nexport class OverflowHermesTabsDirective implements AfterViewInit, OnDestroy {\r\n private readonly subscription: Subscription = new Subscription();\r\n private parentElement: HTMLElement;\r\n private tabOverflowEl: HTMLElement;\r\n\r\n constructor(\r\n private cdr: ChangeDetectorRef,\r\n private element: ElementRef,\r\n private renderer: Renderer2,\r\n private hermesTabsComponent: HermesTabs,\r\n private elementResizeService: ElementResizeService\r\n ) {}\r\n\r\n ngAfterViewInit() {\r\n this.setup();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n private setup() {\r\n this.patchOverflowContent();\r\n\r\n const tabs: QueryList<HermesTab> = this.hermesTabsComponent['tabs'];\r\n this.parentElement = this.renderer.parentNode(this.element.nativeElement) as HTMLElement;\r\n this.subscription.add(\r\n merge(\r\n tabs.changes,\r\n of(undefined).pipe(delay(resources.initialLoadDelay)),\r\n this.elementResizeService.getResizeObservable(this.parentElement)\r\n )\r\n .pipe(debounceTime(resources.layoutChangesDebounceDuration))\r\n .subscribe(() => this.updateOverflowMenu(this.parentElement))\r\n );\r\n }\r\n\r\n /**\r\n * When the More button (...) is clicked, HermesTabOverflowContent is displayed.\r\n * It is a dropdown with style 'bottom-right'. However when there is just one tab,\r\n * the overflow component overflows to the left of the viewport and is not visible.\r\n * This method overrides private field in HermesTabs - _tabOverflowEl - that is set when\r\n * the HermesTabOverflowContent is created. If all tabs are in overflow, then change the\r\n * style of <hermes-tab-overflow-content> element so that it takes the entire width\r\n * of the viewport.\r\n */\r\n private patchOverflowContent(): void {\r\n Object.defineProperty(this.hermesTabsComponent, '_tabOverflowEl', <PropertyDescriptor>{\r\n get: () => this.tabOverflowEl,\r\n set: (el: HTMLElement) => {\r\n this.tabOverflowEl = el;\r\n if (!this.tabOverflowEl) {\r\n return;\r\n }\r\n\r\n const tabLinks: HermesTabLink[] = this.hermesTabsComponent.tabLinkDirectives;\r\n const allTabsInOverflow = tabLinks.every((tabLink: HermesTabLink) => tabLink.inOverflow);\r\n if (allTabsInOverflow) {\r\n this.renderer.setStyle(this.tabOverflowEl, 'left', 0);\r\n this.renderer.setStyle(this.tabOverflowEl, 'position', 'fixed');\r\n this.renderer.setStyle(this.tabOverflowEl, 'top', 'auto');\r\n }\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Determine which tab links to be shelved into the overflow menu.\r\n */\r\n private updateOverflowMenu(container: HTMLElement): void {\r\n const tabLinks: HermesTabLink[] = this.hermesTabsComponent.tabLinkDirectives;\r\n this.showAllTabs(tabLinks);\r\n\r\n const hermesTabLinkMargin = this.calculateTabLinkMargin(tabLinks);\r\n this.updateTabsInOverflow(tabLinks, hermesTabLinkMargin, container);\r\n }\r\n\r\n private showAllTabs(tabLinks: HermesTabLink[]): void {\r\n let overflowStateChanged = false;\r\n // Move all tabs out of overflow, then update the underlying view to sync the shifted tabs.\r\n tabLinks.forEach((tabLink: HermesTabLink) => {\r\n if (tabLink.inOverflow) {\r\n overflowStateChanged = true;\r\n tabLink.inOverflow = false;\r\n // Hidden tabs are displayed, but their style is like regular button. They are\r\n // wider and this affect the overflow calculation. Temporary add link classes\r\n // for more precise width calculation.\r\n this.addTabLinkClasses(tabLink);\r\n }\r\n });\r\n\r\n // Trigger change detection only if the overflow of tabs was changed.\r\n if (overflowStateChanged) {\r\n this.cdr.detectChanges();\r\n }\r\n }\r\n\r\n private calculateTabLinkMargin(tabLinks: HermesTabLink[]): number {\r\n if (tabLinks.length < 2) {\r\n return 0;\r\n }\r\n\r\n const firstLinkEl: HTMLElement = tabLinks[0].el.nativeElement as HTMLElement;\r\n const secondLinkEl: HTMLElement = tabLinks[1].el.nativeElement as HTMLElement;\r\n return secondLinkEl.getBoundingClientRect().left - firstLinkEl.getBoundingClientRect().right;\r\n }\r\n\r\n private updateTabsInOverflow(tabLinks: HermesTabLink[], hermesTabLinkMargin: number, container: HTMLElement): void {\r\n let areNextTabLinksOverflowing = false;\r\n tabLinks.forEach((tabLink: HermesTabLink) => {\r\n if (!areNextTabLinksOverflowing) {\r\n tabLink.inOverflow = areNextTabLinksOverflowing = this.isTabLinkOverflowing(\r\n container,\r\n hermesTabLinkMargin,\r\n tabLink\r\n );\r\n } else {\r\n // presume and hide remaining tabs\r\n tabLink.inOverflow = true;\r\n }\r\n\r\n // Manually restore the classes that HermesTabLink adds to its parent button.\r\n // Change detection updates the visibility of the tabs, but does not\r\n // update the @HostBinding properly.\r\n if (tabLink.inOverflow) {\r\n this.removeTabLinkClasses(tabLink);\r\n } else {\r\n this.addTabLinkClasses(tabLink);\r\n }\r\n });\r\n\r\n // as tabs may have shifted position in/out of menu, synchronize view\r\n this.cdr.detectChanges();\r\n }\r\n\r\n private isTabLinkOverflowing(container: HTMLElement, hermesTabLinkMargin: number, tabLink: HermesTabLink): boolean {\r\n const containerBcr: DOMRect = container.getBoundingClientRect();\r\n const hermesTabLinkEl: HTMLElement = tabLink.el.nativeElement;\r\n const hermesTabLinkElementBcr: DOMRect = hermesTabLinkEl.getBoundingClientRect();\r\n // layout decision making process for showing or hiding a tab\r\n // include natural margin around tab and guarantee some inset padding for the \"...\" against right edge\r\n return hermesTabLinkElementBcr.right + hermesTabLinkMargin > containerBcr.right - hermesTabLinkMargin;\r\n }\r\n\r\n private addTabLinkClasses(tabLink: HermesTabLink): void {\r\n const buttonClassList = tabLink.el.nativeElement.classList;\r\n if (buttonClassList.contains(resources.appfxSecondaryTabButtonClass)) {\r\n // when appfx tabs are rendered as secondary tabs, no need to adjust the tab link classes.\r\n return;\r\n }\r\n\r\n resources.hermesTabLinkClasses.forEach((cssClass: string) =>\r\n this.renderer.addClass(tabLink.el.nativeElement, cssClass)\r\n );\r\n }\r\n\r\n private removeTabLinkClasses(tabLink: HermesTabLink): void {\r\n resources.hermesTabLinkClasses.forEach((cssClass: string) =>\r\n this.renderer.removeClass(tabLink.el.nativeElement, cssClass)\r\n );\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\n// Disable the duplicate string check because this is a translations file.\r\n\r\nimport { AppfxTranslations } from '@hermes-ui/angular/addons/translate';\r\n\r\nexport const translations: AppfxTranslations = {\r\n en: {\r\n legendPrefix: 'Fields marked with',\r\n legendSuffix: 'are required',\r\n },\r\n es: {\r\n legendPrefix: 'Campos marcados con',\r\n legendSuffix: 'son obligatorios',\r\n },\r\n fr: {\r\n legendPrefix: \"Champs marqués d'un\",\r\n legendSuffix: 'sont requis',\r\n },\r\n ja: {\r\n legendPrefix: 'フィールドのマークに使用される条件',\r\n legendSuffix: 'は必須です',\r\n },\r\n};\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { Component } from '@angular/core';\r\nimport { AppfxTranslateService, appfxTranslationsToken } from '@hermes-ui/angular/addons/translate';\r\n\r\nimport { translations } from './required-field-legend.l10n';\r\n\r\n@Component({\r\n selector: 'appfx-required-field-legend',\r\n standalone: false,\r\n templateUrl: 'required-field-legend.component.html',\r\n styleUrls: ['required-field-legend.component.scss'],\r\n providers: [\r\n AppfxTranslateService,\r\n {\r\n provide: appfxTranslationsToken,\r\n useValue: translations,\r\n },\r\n ],\r\n})\r\nexport class RequiredFieldLegendComponent {}\r\n","<!--\r\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n ~ This software is released under MIT license.\r\n ~ The full license information can be found in LICENSE in the root directory of this project.\r\n -->\r\n<div class=\"legend-wrapper\">\r\n <span>{{ 'legendPrefix' | translate }}</span>\r\n <span class=\"icon-margin hermes-required-mark\"></span>\r\n <span>{{ 'legendSuffix' | translate }}</span>\r\n</div>\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\n// Supported zoom levels are 200% and 400% with breakpoints based on\r\n// Bootstrap responsive breakpoints:\r\n// https://getbootstrap.com/docs/4.5/layout/overview/\r\n// The mapping between zoom levels and Bootstrap breakpoints is:\r\n// 400% = Bootstrap XS - <576px\r\n// 200% = Bootstrap SM | MD | L - ≥576px\r\n// none (no-zoom) = Bootstrap XL - ≥1200px\r\n\r\nexport enum ZoomLevel {\r\n x2 = 'zoom2x',\r\n x4 = 'zoom4x',\r\n none = 'no-zoom',\r\n}\r\n\r\nexport const zoomBreakpoints = [\r\n {\r\n zoomLevel: ZoomLevel.x4,\r\n maxWidth: 575,\r\n },\r\n {\r\n zoomLevel: ZoomLevel.x2,\r\n maxWidth: 1199,\r\n },\r\n {\r\n zoomLevel: ZoomLevel.none,\r\n maxWidth: Number.MAX_VALUE,\r\n },\r\n];\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { Inject, Injectable, OnDestroy } from '@angular/core';\r\nimport { Observable, ReplaySubject } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\nimport { zoomBreakpoints, ZoomLevel } from './zoom-level.model';\r\n\r\n/**\r\n * Service for detecting zoom level based on document body size. Uses\r\n * ResizeObserver for detecting body size changes.\r\n * @private\r\n * ResizeObserver spec: https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver\r\n */\r\n@Injectable()\r\nexport class ZoomLevelService implements OnDestroy {\r\n private observer: ResizeObserver;\r\n private resizeSubject = new ReplaySubject<ZoomLevel>(1);\r\n private lastZoomLevel: ZoomLevel | undefined;\r\n\r\n /**\r\n * Emits when the zoom level is changed.\r\n *\r\n * NOTE: This observable emits <b>outside Angular</b>. You might need to explicitly invoke\r\n * <code>ChangeDetectorRef.detectChanges()</code> to trigger Angular change detection.\r\n */\r\n // debounceTime() operator is added to avoid the following error:\r\n // \"ResizeObserver loop limit exceeded thrown\"\r\n // This error means that ResizeObserver was not able to deliver all observations within\r\n // a single animation frame. This happens if a change detection is run inside the subscriber.\r\n private _onChange: Observable<ZoomLevel> = this.resizeSubject.pipe(debounceTime(10));\r\n\r\n constructor(@Inject(DOCUMENT) private document: Document) {\r\n this.observe();\r\n }\r\n\r\n get onChange(): Observable<ZoomLevel> {\r\n return this._onChange;\r\n }\r\n set onChange(value: Observable<ZoomLevel>) {\r\n this._onChange = value;\r\n }\r\n\r\n ngOnDestroy() {\r\n this.unobserve();\r\n this.resizeSubject.complete();\r\n }\r\n\r\n private observe(): void {\r\n this.observer = new ResizeObserver((entries: any[]) => {\r\n const entry: any = entries && entries[0];\r\n if (!entry) {\r\n return;\r\n }\r\n this.detectZoomLevelChange(entry);\r\n });\r\n this.observer.observe(this.document.documentElement);\r\n }\r\n\r\n private unobserve() {\r\n this.observer.unobserve(this.document.documentElement);\r\n }\r\n\r\n private detectZoomLevelChange(entry: any): void {\r\n const docCurrentWidth = entry.contentRect.width;\r\n\r\n const newResponsiveBreakpoint = zoomBreakpoints.find(breakpoint => {\r\n return breakpoint.maxWidth >= docCurrentWidth;\r\n });\r\n\r\n if (newResponsiveBreakpoint?.zoomLevel === this.lastZoomLevel) {\r\n return;\r\n }\r\n\r\n this.lastZoomLevel = newResponsiveBreakpoint?.zoomLevel;\r\n this.resizeSubject.next(this.lastZoomLevel as ZoomLevel);\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { Directive, HostBinding, OnDestroy, OnInit, Optional } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { ZoomLevel } from './zoom-level.model';\r\nimport { ZoomLevelService } from './zoom-level.service';\r\n\r\n@Directive({ selector: '[zoomLevelIndicator]', standalone: false })\r\nexport class ZoomLevelIndicatorDirective implements OnInit, OnDestroy {\r\n @HostBinding('class') zoomLevel: ZoomLevel;\r\n\r\n private subscription: Subscription;\r\n\r\n constructor(@Optional() private zoomLevelService: ZoomLevelService) {}\r\n\r\n ngOnInit() {\r\n if (this.zoomLevelService) {\r\n this.subscription = this.zoomLevelService.onChange.subscribe(v => {\r\n this.zoomLevel = v;\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { NgModule } from '@angular/core';\r\nimport { AppfxTranslateModule } from '@hermes-ui/angular/addons/translate';\r\n\r\nimport { OverrideHermesStringsDirective } from './hermes-stepper-panel/override-hermes-strings.directive';\r\nimport { OverflowHermesTabsDirective } from './hermes-tabs/overflow-hermes-tabs.directive';\r\nimport { RequiredFieldLegendComponent } from './forms/required-field-legend.component';\r\nimport { ZoomLevelIndicatorDirective } from './zoom/zoom-level-indicator.directive';\r\nimport { ZoomLevelService } from './zoom/zoom-level.service';\r\n\r\n/**\r\n * Provides accessibility related services.\r\n */\r\n@NgModule({\r\n declarations: [\r\n OverflowHermesTabsDirective,\r\n OverrideHermesStringsDirective,\r\n RequiredFieldLegendComponent,\r\n ZoomLevelIndicatorDirective,\r\n ],\r\n imports: [AppfxTranslateModule],\r\n exports: [\r\n OverflowHermesTabsDirective,\r\n OverrideHermesStringsDirective,\r\n RequiredFieldLegendComponent,\r\n ZoomLevelIndicatorDirective,\r\n ],\r\n providers: [ZoomLevelService],\r\n})\r\nexport class AppfxA11yModule {}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nexport { a11ykeys } from './a11y.constants';\r\nexport {\r\n /**\r\n * @deprecated Use AppfxA11yModule import instead.\r\n */\r\n AppfxA11yModule as A11yModule,\r\n} from './a11y.module';\r\nexport { AppfxA11yModule } from './a11y.module';\r\nexport { OverrideHermesStringsDirective } from './hermes-stepper-panel/override-hermes-strings.directive';\r\nexport { OverflowHermesTabsDirective } from './hermes-tabs/overflow-hermes-tabs.directive';\r\nexport { RequiredFieldLegendComponent } from './forms/required-field-legend.component';\r\nexport { ElementResizeService } from './resize/element-resize.service';\r\nexport { ZoomLevel } from './zoom/zoom-level.model';\r\nexport { ZoomLevelService } from './zoom/zoom-level.service';\r\nexport { ZoomLevelIndicatorDirective } from './zoom/zoom-level-indicator.directive';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.ElementResizeService","i1.ZoomLevelService"],"mappings":"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"}
|