@hermes-ui/angular 0.1.5 → 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 +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 +48 -0
- package/fesm2022/hermes-ui-angular-card.mjs.map +1 -0
- 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 +46 -0
- package/fesm2022/hermes-ui-angular-divider.mjs.map +1 -0
- 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 +375 -375
- 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 +31 -3
- 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 +116 -0
- package/fesm2022/hermes-ui-angular-pagination.mjs.map +1 -0
- 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 +16 -3
- package/fesm2022/hermes-ui-angular.mjs.map +1 -1
- package/hermes-ui.scss +7 -7
- package/layout/vertical-nav/_mixins.vertical-nav.scss +3 -7
- package/layout/vertical-nav/_properties.vertical-nav.scss +10 -5
- package/layout/vertical-nav/_variables.vertical-nav.scss +2 -0
- package/layout/vertical-nav/_vertical-nav.clarity.scss +14 -0
- package/package.json +13 -1
- package/popover/dropdown/_dropdown.clarity.scss +8 -7
- package/popover/dropdown/_menu-mixins.clarity.scss +22 -6
- package/popover/dropdown/_properties.dropdown.scss +20 -0
- package/popover/dropdown/_variables.dropdown.scss +7 -0
- 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-card.d.ts +24 -0
- package/types/hermes-ui-angular-card.d.ts.map +1 -0
- package/types/hermes-ui-angular-data-datagrid.d.ts.map +1 -1
- package/types/hermes-ui-angular-divider.d.ts +20 -0
- package/types/hermes-ui-angular-divider.d.ts.map +1 -0
- package/types/hermes-ui-angular-layout-vertical-nav.d.ts +11 -1
- package/types/hermes-ui-angular-layout-vertical-nav.d.ts.map +1 -1
- package/types/hermes-ui-angular-pagination.d.ts +52 -0
- package/types/hermes-ui-angular-pagination.d.ts.map +1 -0
- 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
- package/types/hermes-ui-angular.d.ts +23 -17
- package/types/hermes-ui-angular.d.ts.map +1 -1
|
@@ -310,12 +310,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
|
|
|
310
310
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
311
311
|
*/
|
|
312
312
|
class HermesVerticalNav {
|
|
313
|
+
onPeekEnter() {
|
|
314
|
+
if (this.pinnable && this.collapsed) {
|
|
315
|
+
this.peeking = true;
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
onPeekLeave() {
|
|
319
|
+
this.peeking = false;
|
|
320
|
+
}
|
|
313
321
|
constructor(_navService, _navIconService, _navGroupRegistrationService, commonStrings) {
|
|
314
322
|
this._navService = _navService;
|
|
315
323
|
this._navIconService = _navIconService;
|
|
316
324
|
this._navGroupRegistrationService = _navGroupRegistrationService;
|
|
317
325
|
this.commonStrings = commonStrings;
|
|
326
|
+
/** Quando true, o toggle vira semanticamente um "fixar aberta/fechada" (ícones
|
|
327
|
+
* pin/unpin em vez do chevron duplo genérico) e habilita o hover-peek: passar
|
|
328
|
+
* o mouse enquanto colapsada e não fixada expande temporariamente (ver
|
|
329
|
+
* onPeekEnter/onPeekLeave abaixo), sem persistir nem emitir o output. */
|
|
330
|
+
this.pinnable = false;
|
|
318
331
|
this.contentId = uniqueIdFactory();
|
|
332
|
+
/** true só enquanto o mouse está sobre uma nav colapsada e "pinnable" —
|
|
333
|
+
* não persiste, não afeta `collapsed`/o output, é puramente visual. */
|
|
334
|
+
this.peeking = false;
|
|
319
335
|
this._collapsedChanged = new EventEmitter(true);
|
|
320
336
|
this._sub = _navService.collapsedChanged.subscribe(value => {
|
|
321
337
|
this._collapsedChanged.emit(value);
|
|
@@ -352,19 +368,31 @@ class HermesVerticalNav {
|
|
|
352
368
|
this.collapsed = !this.collapsed;
|
|
353
369
|
}
|
|
354
370
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesVerticalNav, deps: [{ token: VerticalNavService }, { token: VerticalNavIconService }, { token: VerticalNavGroupRegistrationService }, { token: i1.HermesCommonStringsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
355
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesVerticalNav, isStandalone: false, selector: "hermes-vertical-nav", inputs: { toggleLabel: ["hermesVerticalNavToggleLabel", "toggleLabel"], collapsible: ["hermesVerticalNavCollapsible", "collapsible"], collapsed: ["hermesVerticalNavCollapsed", "collapsed"] }, outputs: { _collapsedChanged: "hermesVerticalNavCollapsedChange" }, host: { properties: { "class.is-collapsed": "collapsed", "class.has-nav-groups": "hasNavGroups", "class.has-icons": "hasIcons" }, classAttribute: "hermes-vertical-nav" }, providers: [VerticalNavService, VerticalNavIconService, VerticalNavGroupRegistrationService], ngImport: i0, template: "<!--\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@if (collapsible) {\r\n<button\r\n type=\"button\"\r\n class=\"nav-trigger\"\r\n [class.on-collapse]=\"collapsed\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-expanded]=\"ariaExpanded\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n (click)=\"toggleByButton()\"\r\n>\r\n <hermes-icon shape=\"angle-double\" class=\"nav-trigger-icon\" [direction]=\"(collapsed) ? 'right' : 'left'\"></hermes-icon>\r\n</button>\r\n}\r\n<div [id]=\"contentId\" class=\"nav-content\">\r\n <ng-content></ng-content>\r\n @if (collapsible && collapsed) {\r\n <button\r\n type=\"button\"\r\n (click)=\"collapsed = false\"\r\n class=\"nav-btn\"\r\n aria-hidden=\"true\"\r\n tabindex=\"-1\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n ></button>\r\n }\r\n</div>\r\n", dependencies: [{ kind: "component", type: i5.HermesIcon, selector: "hermes-icon, hermes-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }] }); }
|
|
371
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.22", type: HermesVerticalNav, isStandalone: false, selector: "hermes-vertical-nav", inputs: { toggleLabel: ["hermesVerticalNavToggleLabel", "toggleLabel"], pinnable: ["hermesVerticalNavPinnable", "pinnable"], collapsible: ["hermesVerticalNavCollapsible", "collapsible"], collapsed: ["hermesVerticalNavCollapsed", "collapsed"] }, outputs: { _collapsedChanged: "hermesVerticalNavCollapsedChange" }, host: { listeners: { "mouseenter": "onPeekEnter()", "mouseleave": "onPeekLeave()" }, properties: { "class.is-collapsed": "collapsed && !peeking", "class.is-peeking": "peeking", "class.has-nav-groups": "hasNavGroups", "class.has-icons": "hasIcons", "class.is-pinnable": "pinnable" }, classAttribute: "hermes-vertical-nav" }, providers: [VerticalNavService, VerticalNavIconService, VerticalNavGroupRegistrationService], ngImport: i0, template: "<!--\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@if (collapsible) {\r\n<button\r\n type=\"button\"\r\n class=\"nav-trigger\"\r\n [class.on-collapse]=\"collapsed\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-expanded]=\"ariaExpanded\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n (click)=\"toggleByButton()\"\r\n>\r\n @if (pinnable) {\r\n <hermes-icon [shape]=\"collapsed ? 'pin' : 'unpin'\" class=\"nav-trigger-icon\"></hermes-icon>\r\n } @else {\r\n <hermes-icon shape=\"angle-double\" class=\"nav-trigger-icon\" [direction]=\"(collapsed) ? 'right' : 'left'\"></hermes-icon>\r\n }\r\n</button>\r\n}\r\n<div [id]=\"contentId\" class=\"nav-content\">\r\n <ng-content></ng-content>\r\n @if (collapsible && collapsed) {\r\n <button\r\n type=\"button\"\r\n (click)=\"collapsed = false\"\r\n class=\"nav-btn\"\r\n aria-hidden=\"true\"\r\n tabindex=\"-1\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n ></button>\r\n }\r\n</div>\r\n", dependencies: [{ kind: "component", type: i5.HermesIcon, selector: "hermes-icon, hermes-icon", inputs: ["shape", "size", "direction", "flip", "solid", "status", "inverse", "badge"] }] }); }
|
|
356
372
|
}
|
|
357
373
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesVerticalNav, decorators: [{
|
|
358
374
|
type: Component,
|
|
359
375
|
args: [{ selector: 'hermes-vertical-nav', providers: [VerticalNavService, VerticalNavIconService, VerticalNavGroupRegistrationService], host: {
|
|
360
376
|
class: 'hermes-vertical-nav',
|
|
361
|
-
|
|
377
|
+
// Suprimido durante o peek: reaproveita 100% do CSS já existente pro
|
|
378
|
+
// estado expandido (inclusive empurrar o conteúdo ao lado, via flex
|
|
379
|
+
// normal) em vez de tentar "desfazer" as regras de .is-collapsed via
|
|
380
|
+
// :hover (o `collapsed` real, usado por toggleByButton()/ariaExpanded/
|
|
381
|
+
// o output, não muda — só a classe aplicada).
|
|
382
|
+
'[class.is-collapsed]': 'collapsed && !peeking',
|
|
383
|
+
'[class.is-peeking]': 'peeking',
|
|
362
384
|
'[class.has-nav-groups]': 'hasNavGroups',
|
|
363
385
|
'[class.has-icons]': 'hasIcons',
|
|
364
|
-
|
|
386
|
+
'[class.is-pinnable]': 'pinnable',
|
|
387
|
+
'(mouseenter)': 'onPeekEnter()',
|
|
388
|
+
'(mouseleave)': 'onPeekLeave()',
|
|
389
|
+
}, standalone: false, template: "<!--\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@if (collapsible) {\r\n<button\r\n type=\"button\"\r\n class=\"nav-trigger\"\r\n [class.on-collapse]=\"collapsed\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-expanded]=\"ariaExpanded\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n (click)=\"toggleByButton()\"\r\n>\r\n @if (pinnable) {\r\n <hermes-icon [shape]=\"collapsed ? 'pin' : 'unpin'\" class=\"nav-trigger-icon\"></hermes-icon>\r\n } @else {\r\n <hermes-icon shape=\"angle-double\" class=\"nav-trigger-icon\" [direction]=\"(collapsed) ? 'right' : 'left'\"></hermes-icon>\r\n }\r\n</button>\r\n}\r\n<div [id]=\"contentId\" class=\"nav-content\">\r\n <ng-content></ng-content>\r\n @if (collapsible && collapsed) {\r\n <button\r\n type=\"button\"\r\n (click)=\"collapsed = false\"\r\n class=\"nav-btn\"\r\n aria-hidden=\"true\"\r\n tabindex=\"-1\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n ></button>\r\n }\r\n</div>\r\n" }]
|
|
365
390
|
}], ctorParameters: () => [{ type: VerticalNavService }, { type: VerticalNavIconService }, { type: VerticalNavGroupRegistrationService }, { type: i1.HermesCommonStringsService }], propDecorators: { toggleLabel: [{
|
|
366
391
|
type: Input,
|
|
367
392
|
args: ['hermesVerticalNavToggleLabel']
|
|
393
|
+
}], pinnable: [{
|
|
394
|
+
type: Input,
|
|
395
|
+
args: ['hermesVerticalNavPinnable']
|
|
368
396
|
}], _collapsedChanged: [{
|
|
369
397
|
type: Output,
|
|
370
398
|
args: ['hermesVerticalNavCollapsedChange']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes-ui-angular-layout-vertical-nav.mjs","sources":["../../../layout/vertical-nav/vertical-nav-group-children.ts","../../../layout/vertical-nav/providers/vertical-nav-group.service.ts","../../../layout/vertical-nav/providers/vertical-nav-group-registration.service.ts","../../../layout/vertical-nav/providers/vertical-nav.service.ts","../../../layout/vertical-nav/vertical-nav-group.ts","../../../layout/vertical-nav/vertical-nav-group.html","../../../layout/vertical-nav/providers/vertical-nav-icon.service.ts","../../../layout/vertical-nav/vertical-nav.ts","../../../layout/vertical-nav/vertical-nav.html","../../../layout/vertical-nav/vertical-nav-link.ts","../../../layout/vertical-nav/vertical-nav-icon.ts","../../../layout/vertical-nav/vertical-nav.module.ts","../../../layout/vertical-nav/index.ts","../../../layout/vertical-nav/hermes-ui-angular-layout-vertical-nav.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 { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-vertical-nav-group-children',\r\n template: `<ng-content></ng-content>`,\r\n standalone: false,\r\n})\r\nexport class HermesVerticalNavGroupChildren {}\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, Subject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class VerticalNavGroupService {\r\n private _expandChange = new Subject<boolean>();\r\n\r\n get expandChange(): Observable<boolean> {\r\n return this._expandChange.asObservable();\r\n }\r\n\r\n expand(): void {\r\n this._expandChange.next(true);\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\n\r\n@Injectable()\r\nexport class VerticalNavGroupRegistrationService {\r\n navGroupCount = 0;\r\n\r\n registerNavGroup() {\r\n this.navGroupCount++;\r\n }\r\n\r\n unregisterNavGroup(): void {\r\n this.navGroupCount--;\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, Subject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class VerticalNavService {\r\n private _animateOnCollapsed = new Subject<boolean>();\r\n private _collapsedChanged = new Subject<boolean>();\r\n private _collapsed = false;\r\n private _collapsible = false;\r\n\r\n get animateOnCollapsed(): Observable<boolean> {\r\n return this._animateOnCollapsed.asObservable();\r\n }\r\n\r\n get collapsedChanged(): Observable<boolean> {\r\n return this._collapsedChanged.asObservable();\r\n }\r\n\r\n get collapsed(): boolean {\r\n return this._collapsed;\r\n }\r\n set collapsed(value: boolean) {\r\n value = !!value;\r\n if (this.collapsible && this._collapsed !== value) {\r\n this.updateCollapseBehavior(value);\r\n }\r\n }\r\n\r\n get collapsible(): boolean {\r\n return this._collapsible;\r\n }\r\n set collapsible(value: boolean) {\r\n value = !!value;\r\n if (this._collapsible !== value) {\r\n if (!value && this.collapsed) {\r\n this.updateCollapseBehavior(false);\r\n }\r\n this._collapsible = value;\r\n }\r\n }\r\n\r\n private updateCollapseBehavior(value: boolean): void {\r\n this._animateOnCollapsed.next(value);\r\n this._collapsed = value;\r\n this._collapsedChanged.next(value);\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 { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\nimport { AfterContentInit, Component, EventEmitter, HostBinding, Input, OnDestroy, Output } from '@angular/core';\nimport { HermesCommonStringsService, IfExpandService } from '@hermes-ui/angular/utils';\nimport { Subscription } from 'rxjs';\n\nimport { VerticalNavGroupRegistrationService } from './providers/vertical-nav-group-registration.service';\nimport { VerticalNavGroupService } from './providers/vertical-nav-group.service';\nimport { VerticalNavService } from './providers/vertical-nav.service';\n\nconst EXPANDED_STATE = 'expanded';\nconst COLLAPSED_STATE = 'collapsed';\n\n@Component({\n selector: 'hermes-vertical-nav-group',\n templateUrl: './vertical-nav-group.html',\n providers: [IfExpandService, VerticalNavGroupService],\n animations: [\n trigger('hermesExpand', [\n state(EXPANDED_STATE, style({ height: '*' })),\n state(COLLAPSED_STATE, style({ height: 0, visibility: 'hidden' })),\n transition(`${EXPANDED_STATE} <=> ${COLLAPSED_STATE}`, animate('0.2s ease-in-out')),\n ]),\n ],\n host: { class: 'nav-group' },\n standalone: false,\n})\nexport class HermesVerticalNavGroup implements AfterContentInit, OnDestroy {\n @Output('hermesVerticalNavGroupExpandedChange') expandedChange = new EventEmitter<boolean>(true);\n\n private wasExpanded = false;\n private _subscriptions: Subscription[] = [];\n private _expandAnimationState: string = COLLAPSED_STATE;\n\n constructor(\n private _itemExpand: IfExpandService,\n private _navGroupRegistrationService: VerticalNavGroupRegistrationService,\n navGroupService: VerticalNavGroupService,\n private _navService: VerticalNavService,\n public commonStrings: HermesCommonStringsService\n ) {\n _navGroupRegistrationService.registerNavGroup();\n\n // FIXME: This subscription handles a corner case\n // Vertical Nav collapse requires the animation to run first and then\n // remove the nodes from the DOM. If the user directly sets the input\n // on the hermesIfExpanded directive, we have no chance to run the animation\n // and wait for it to complete. This subscription makes sure that the\n // animation states are correct for that edge case.\n this._subscriptions.push(\n _itemExpand.expandChange.subscribe(value => {\n if (value && this.expandAnimationState === COLLAPSED_STATE) {\n if (_navService.collapsed) {\n _navService.collapsed = false;\n }\n this.expandAnimationState = EXPANDED_STATE;\n } else if (!value && this.expandAnimationState === EXPANDED_STATE) {\n this.expandAnimationState = COLLAPSED_STATE;\n }\n })\n );\n\n // 1. If the nav is collapsing, close the open nav group + save its state\n // 2. If the nav is expanding, expand the nav group if the previous state was expanded\n this._subscriptions.push(\n _navService.animateOnCollapsed.subscribe((goingToCollapse: boolean) => {\n if (goingToCollapse && this.expanded) {\n this.wasExpanded = true;\n this.expandAnimationState = COLLAPSED_STATE;\n } else if (!goingToCollapse && this.wasExpanded) {\n this.expandGroup();\n this.wasExpanded = false;\n }\n })\n );\n\n // If a link is clicked, expand the nav group\n this._subscriptions.push(\n navGroupService.expandChange.subscribe((expand: boolean) => {\n if (expand && !this.expanded) {\n this.expandGroup();\n }\n })\n );\n }\n\n @HostBinding('class.is-expanded')\n get expanded(): boolean {\n return this._itemExpand.expanded;\n }\n set expanded(value: boolean) {\n if (this._itemExpand.expanded !== value) {\n this._itemExpand.expanded = value;\n this.expandedChange.emit(value);\n }\n }\n\n @Input('hermesVerticalNavGroupExpanded')\n set userExpandedInput(value: boolean | string) {\n value = !!value;\n if (this.expanded !== value) {\n // We have to call toggleExpand because some cases require animations to occur first\n // Directly setting the Expand service value skips the animation and can result in\n // nodes in the DOM but the nav group still being collapsed\n this.toggleExpand();\n }\n }\n\n get expandAnimationState(): string {\n return this._expandAnimationState;\n }\n set expandAnimationState(value: string) {\n if (value !== this._expandAnimationState) {\n this._expandAnimationState = value;\n }\n }\n\n ngAfterContentInit() {\n // This makes sure that if someone marks a nav group expanded in a collapsed nav\n // the expanded property is switched back to collapsed state.\n if (this._navService.collapsed && this.expanded) {\n this.wasExpanded = true;\n this.expandAnimationState = COLLAPSED_STATE;\n }\n }\n\n ngOnDestroy() {\n this._subscriptions.forEach((sub: Subscription) => sub.unsubscribe());\n this._navGroupRegistrationService.unregisterNavGroup();\n }\n\n expandGroup(): void {\n this.expanded = true;\n // Expanded animation occurs after Expand.expand is set to true\n this.expandAnimationState = EXPANDED_STATE;\n }\n\n collapseGroup(): void {\n // If a Vertical Nav Group toggle button is clicked while the Vertical Nav is in Collapsed state,\n // the Vertical Nav should be expanded first.\n this.expandAnimationState = COLLAPSED_STATE;\n }\n\n // closes a group after the collapse animation\n expandAnimationDone($event: AnimationEvent) {\n if ($event.toState === COLLAPSED_STATE) {\n this.expanded = false;\n }\n }\n\n toggleExpand(): void {\n if (this.expanded) {\n this.collapseGroup();\n } else {\n // If nav is collasped, first open the nav\n if (this._navService.collapsed) {\n this._navService.collapsed = false;\n }\n // then expand the nav group\n this.expandGroup();\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\n<div class=\"nav-group-content\">\r\n <ng-content select=\"[hermesVerticalNavLink]\"></ng-content>\r\n <button class=\"nav-group-trigger\" type=\"button\" [attr.aria-expanded]=\"expanded\" (click)=\"toggleExpand()\">\r\n <ng-content select=\"[hermesVerticalNavIcon]\"></ng-content>\r\n <div class=\"nav-group-text\">\r\n <ng-content></ng-content>\r\n </div>\r\n <hermes-icon shape=\"angle\" class=\"nav-group-trigger-icon\" [direction]=\"expanded ? 'down' : 'right'\"></hermes-icon>\r\n </button>\r\n</div>\r\n<!--TODO: This animation needs to be added to the hermes-vertical-nav-group-children component-->\r\n<div class=\"nav-group-children\" [@hermesExpand]=\"expandAnimationState\" (@hermesExpand.done)=\"expandAnimationDone($event)\">\r\n <ng-content select=\"[hermesIfExpanded], hermes-vertical-nav-group-children\"></ng-content>\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\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class VerticalNavIconService {\r\n private _icons = 0;\r\n\r\n get hasIcons(): boolean {\r\n return this._icons > 0;\r\n }\r\n\r\n registerIcon(): void {\r\n this._icons++;\r\n }\r\n\r\n unregisterIcon(): void {\r\n this._icons--;\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 { Component, EventEmitter, Input, OnDestroy, Output } from '@angular/core';\nimport { HermesCommonStringsService, uniqueIdFactory } from '@hermes-ui/angular/utils';\nimport { Subscription } from 'rxjs';\n\nimport { VerticalNavGroupRegistrationService } from './providers/vertical-nav-group-registration.service';\nimport { VerticalNavIconService } from './providers/vertical-nav-icon.service';\nimport { VerticalNavService } from './providers/vertical-nav.service';\n\n@Component({\n selector: 'hermes-vertical-nav',\n templateUrl: './vertical-nav.html',\n providers: [VerticalNavService, VerticalNavIconService, VerticalNavGroupRegistrationService],\n host: {\n class: 'hermes-vertical-nav',\n '[class.is-collapsed]': 'collapsed',\n '[class.has-nav-groups]': 'hasNavGroups',\n '[class.has-icons]': 'hasIcons',\n },\n standalone: false,\n})\nexport class HermesVerticalNav implements OnDestroy {\n @Input('hermesVerticalNavToggleLabel') toggleLabel: string;\n contentId = uniqueIdFactory();\n\n @Output('hermesVerticalNavCollapsedChange') private _collapsedChanged = new EventEmitter<boolean>(true);\n\n private _sub: Subscription;\n\n constructor(\n private _navService: VerticalNavService,\n private _navIconService: VerticalNavIconService,\n private _navGroupRegistrationService: VerticalNavGroupRegistrationService,\n public commonStrings: HermesCommonStringsService\n ) {\n this._sub = _navService.collapsedChanged.subscribe(value => {\n this._collapsedChanged.emit(value);\n });\n }\n\n @Input('hermesVerticalNavCollapsible')\n get collapsible(): boolean | string {\n return this._navService.collapsible;\n }\n set collapsible(value: boolean | string) {\n this._navService.collapsible = value as boolean;\n }\n\n @Input('hermesVerticalNavCollapsed')\n get collapsed(): boolean | string {\n return this._navService.collapsed;\n }\n set collapsed(value: boolean | string) {\n this._navService.collapsed = value as boolean;\n }\n\n get hasNavGroups(): boolean {\n return this._navGroupRegistrationService.navGroupCount > 0;\n }\n\n get hasIcons(): boolean {\n return this._navIconService.hasIcons;\n }\n\n get ariaExpanded(): string {\n if (!this.collapsible) {\n return null;\n }\n return !this.collapsed ? 'true' : 'false';\n }\n\n ngOnDestroy() {\n this._sub.unsubscribe();\n }\n\n toggleByButton() {\n this.collapsed = !this.collapsed;\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\n@if (collapsible) {\r\n<button\r\n type=\"button\"\r\n class=\"nav-trigger\"\r\n [class.on-collapse]=\"collapsed\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-expanded]=\"ariaExpanded\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n (click)=\"toggleByButton()\"\r\n>\r\n <hermes-icon shape=\"angle-double\" class=\"nav-trigger-icon\" [direction]=\"(collapsed) ? 'right' : 'left'\"></hermes-icon>\r\n</button>\r\n}\r\n<div [id]=\"contentId\" class=\"nav-content\">\r\n <ng-content></ng-content>\r\n @if (collapsible && collapsed) {\r\n <button\r\n type=\"button\"\r\n (click)=\"collapsed = false\"\r\n class=\"nav-btn\"\r\n aria-hidden=\"true\"\r\n tabindex=\"-1\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n ></button>\r\n }\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\nimport { ChangeDetectorRef, Component, ElementRef, Inject, OnDestroy, Optional } from '@angular/core';\r\nimport { fromEvent, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { VerticalNavGroupService } from './providers/vertical-nav-group.service';\r\n\r\n@Component({\r\n selector: '[hermesVerticalNavLink]',\r\n template: `\r\n <ng-content select=\"[hermesVerticalNavIcon]\"></ng-content>\r\n <span class=\"nav-text\">\r\n <ng-content></ng-content>\r\n </span>\r\n `,\r\n host: {\r\n class: 'nav-link',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesVerticalNavLink implements OnDestroy {\r\n private destroy$ = new Subject<void>();\r\n\r\n constructor(\r\n host: ElementRef<HTMLElement>,\r\n ref: ChangeDetectorRef,\r\n @Optional() @Inject(VerticalNavGroupService) navGroupService: VerticalNavGroupService | null\r\n ) {\r\n // Note: since the `VerticalNavGroupService` is an optional provider, we'll setup the event\r\n // listener only when the `[hermesVerticalLink]` is located within the `hermes-vertical-nav-group`.\r\n navGroupService &&\r\n fromEvent(host.nativeElement, 'click')\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(() => {\r\n navGroupService.expand();\r\n ref.markForCheck();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\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, OnDestroy } from '@angular/core';\r\n\r\nimport { VerticalNavIconService } from './providers/vertical-nav-icon.service';\r\n\r\n@Directive({\r\n selector: '[hermesVerticalNavIcon]',\r\n host: { class: 'nav-icon' },\r\n standalone: false,\r\n})\r\nexport class HermesVerticalNavIcon implements OnDestroy {\r\n constructor(private _verticalNavIconService: VerticalNavIconService) {\r\n _verticalNavIconService.registerIcon();\r\n }\r\n\r\n ngOnDestroy() {\r\n this._verticalNavIconService.unregisterIcon();\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 { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { angleDoubleIcon, angleIcon, ClarityIcons, HermesIcon } from '@hermes-ui/angular/icon';\nimport { HermesConditionalModule, HermesFocusOnViewInitModule } from '@hermes-ui/angular/utils';\n\nimport { HermesVerticalNav } from './vertical-nav';\nimport { HermesVerticalNavGroup } from './vertical-nav-group';\nimport { HermesVerticalNavGroupChildren } from './vertical-nav-group-children';\nimport { HermesVerticalNavIcon } from './vertical-nav-icon';\nimport { HermesVerticalNavLink } from './vertical-nav-link';\n\nexport const HERMES_VERTICAL_NAV_DIRECTIVES: Type<any>[] = [\n HermesVerticalNav,\n HermesVerticalNavLink,\n HermesVerticalNavGroup,\n HermesVerticalNavGroupChildren,\n HermesVerticalNavIcon,\n];\n\n@NgModule({\n imports: [CommonModule, HermesIcon, HermesConditionalModule, HermesFocusOnViewInitModule],\n declarations: [HERMES_VERTICAL_NAV_DIRECTIVES],\n exports: [HERMES_VERTICAL_NAV_DIRECTIVES, HermesConditionalModule, HermesIcon, HermesFocusOnViewInitModule],\n})\nexport class HermesVerticalNavModule {\n constructor() {\n ClarityIcons.addIcons(angleIcon, angleDoubleIcon);\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 './vertical-nav-group-children';\r\nexport * from './vertical-nav-group';\r\nexport * from './vertical-nav';\r\nexport * from './vertical-nav-link';\r\nexport * from './vertical-nav-icon';\r\nexport * from './vertical-nav.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.VerticalNavGroupRegistrationService","i3.VerticalNavGroupService","i4.VerticalNavService","i1.VerticalNavService","i2.VerticalNavIconService","i3.VerticalNavGroupRegistrationService","i4","i1.VerticalNavIconService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hermes-ui-angular-layout-vertical-nav.mjs","sources":["../../../layout/vertical-nav/vertical-nav-group-children.ts","../../../layout/vertical-nav/providers/vertical-nav-group.service.ts","../../../layout/vertical-nav/providers/vertical-nav-group-registration.service.ts","../../../layout/vertical-nav/providers/vertical-nav.service.ts","../../../layout/vertical-nav/vertical-nav-group.ts","../../../layout/vertical-nav/vertical-nav-group.html","../../../layout/vertical-nav/providers/vertical-nav-icon.service.ts","../../../layout/vertical-nav/vertical-nav.ts","../../../layout/vertical-nav/vertical-nav.html","../../../layout/vertical-nav/vertical-nav-link.ts","../../../layout/vertical-nav/vertical-nav-icon.ts","../../../layout/vertical-nav/vertical-nav.module.ts","../../../layout/vertical-nav/index.ts","../../../layout/vertical-nav/hermes-ui-angular-layout-vertical-nav.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 { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-vertical-nav-group-children',\r\n template: `<ng-content></ng-content>`,\r\n standalone: false,\r\n})\r\nexport class HermesVerticalNavGroupChildren {}\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, Subject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class VerticalNavGroupService {\r\n private _expandChange = new Subject<boolean>();\r\n\r\n get expandChange(): Observable<boolean> {\r\n return this._expandChange.asObservable();\r\n }\r\n\r\n expand(): void {\r\n this._expandChange.next(true);\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\n\r\n@Injectable()\r\nexport class VerticalNavGroupRegistrationService {\r\n navGroupCount = 0;\r\n\r\n registerNavGroup() {\r\n this.navGroupCount++;\r\n }\r\n\r\n unregisterNavGroup(): void {\r\n this.navGroupCount--;\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, Subject } from 'rxjs';\r\n\r\n@Injectable()\r\nexport class VerticalNavService {\r\n private _animateOnCollapsed = new Subject<boolean>();\r\n private _collapsedChanged = new Subject<boolean>();\r\n private _collapsed = false;\r\n private _collapsible = false;\r\n\r\n get animateOnCollapsed(): Observable<boolean> {\r\n return this._animateOnCollapsed.asObservable();\r\n }\r\n\r\n get collapsedChanged(): Observable<boolean> {\r\n return this._collapsedChanged.asObservable();\r\n }\r\n\r\n get collapsed(): boolean {\r\n return this._collapsed;\r\n }\r\n set collapsed(value: boolean) {\r\n value = !!value;\r\n if (this.collapsible && this._collapsed !== value) {\r\n this.updateCollapseBehavior(value);\r\n }\r\n }\r\n\r\n get collapsible(): boolean {\r\n return this._collapsible;\r\n }\r\n set collapsible(value: boolean) {\r\n value = !!value;\r\n if (this._collapsible !== value) {\r\n if (!value && this.collapsed) {\r\n this.updateCollapseBehavior(false);\r\n }\r\n this._collapsible = value;\r\n }\r\n }\r\n\r\n private updateCollapseBehavior(value: boolean): void {\r\n this._animateOnCollapsed.next(value);\r\n this._collapsed = value;\r\n this._collapsedChanged.next(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 { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\r\nimport { AfterContentInit, Component, EventEmitter, HostBinding, Input, OnDestroy, Output } from '@angular/core';\r\nimport { HermesCommonStringsService, IfExpandService } from '@hermes-ui/angular/utils';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { VerticalNavGroupRegistrationService } from './providers/vertical-nav-group-registration.service';\r\nimport { VerticalNavGroupService } from './providers/vertical-nav-group.service';\r\nimport { VerticalNavService } from './providers/vertical-nav.service';\r\n\r\nconst EXPANDED_STATE = 'expanded';\r\nconst COLLAPSED_STATE = 'collapsed';\r\n\r\n@Component({\r\n selector: 'hermes-vertical-nav-group',\r\n templateUrl: './vertical-nav-group.html',\r\n providers: [IfExpandService, VerticalNavGroupService],\r\n animations: [\r\n trigger('hermesExpand', [\r\n state(EXPANDED_STATE, style({ height: '*' })),\r\n state(COLLAPSED_STATE, style({ height: 0, visibility: 'hidden' })),\r\n transition(`${EXPANDED_STATE} <=> ${COLLAPSED_STATE}`, animate('0.2s ease-in-out')),\r\n ]),\r\n ],\r\n host: { class: 'nav-group' },\r\n standalone: false,\r\n})\r\nexport class HermesVerticalNavGroup implements AfterContentInit, OnDestroy {\r\n @Output('hermesVerticalNavGroupExpandedChange') expandedChange = new EventEmitter<boolean>(true);\r\n\r\n private wasExpanded = false;\r\n private _subscriptions: Subscription[] = [];\r\n private _expandAnimationState: string = COLLAPSED_STATE;\r\n\r\n constructor(\r\n private _itemExpand: IfExpandService,\r\n private _navGroupRegistrationService: VerticalNavGroupRegistrationService,\r\n navGroupService: VerticalNavGroupService,\r\n private _navService: VerticalNavService,\r\n public commonStrings: HermesCommonStringsService\r\n ) {\r\n _navGroupRegistrationService.registerNavGroup();\r\n\r\n // FIXME: This subscription handles a corner case\r\n // Vertical Nav collapse requires the animation to run first and then\r\n // remove the nodes from the DOM. If the user directly sets the input\r\n // on the hermesIfExpanded directive, we have no chance to run the animation\r\n // and wait for it to complete. This subscription makes sure that the\r\n // animation states are correct for that edge case.\r\n this._subscriptions.push(\r\n _itemExpand.expandChange.subscribe(value => {\r\n if (value && this.expandAnimationState === COLLAPSED_STATE) {\r\n if (_navService.collapsed) {\r\n _navService.collapsed = false;\r\n }\r\n this.expandAnimationState = EXPANDED_STATE;\r\n } else if (!value && this.expandAnimationState === EXPANDED_STATE) {\r\n this.expandAnimationState = COLLAPSED_STATE;\r\n }\r\n })\r\n );\r\n\r\n // 1. If the nav is collapsing, close the open nav group + save its state\r\n // 2. If the nav is expanding, expand the nav group if the previous state was expanded\r\n this._subscriptions.push(\r\n _navService.animateOnCollapsed.subscribe((goingToCollapse: boolean) => {\r\n if (goingToCollapse && this.expanded) {\r\n this.wasExpanded = true;\r\n this.expandAnimationState = COLLAPSED_STATE;\r\n } else if (!goingToCollapse && this.wasExpanded) {\r\n this.expandGroup();\r\n this.wasExpanded = false;\r\n }\r\n })\r\n );\r\n\r\n // If a link is clicked, expand the nav group\r\n this._subscriptions.push(\r\n navGroupService.expandChange.subscribe((expand: boolean) => {\r\n if (expand && !this.expanded) {\r\n this.expandGroup();\r\n }\r\n })\r\n );\r\n }\r\n\r\n @HostBinding('class.is-expanded')\r\n get expanded(): boolean {\r\n return this._itemExpand.expanded;\r\n }\r\n set expanded(value: boolean) {\r\n if (this._itemExpand.expanded !== value) {\r\n this._itemExpand.expanded = value;\r\n this.expandedChange.emit(value);\r\n }\r\n }\r\n\r\n @Input('hermesVerticalNavGroupExpanded')\r\n set userExpandedInput(value: boolean | string) {\r\n value = !!value;\r\n if (this.expanded !== value) {\r\n // We have to call toggleExpand because some cases require animations to occur first\r\n // Directly setting the Expand service value skips the animation and can result in\r\n // nodes in the DOM but the nav group still being collapsed\r\n this.toggleExpand();\r\n }\r\n }\r\n\r\n get expandAnimationState(): string {\r\n return this._expandAnimationState;\r\n }\r\n set expandAnimationState(value: string) {\r\n if (value !== this._expandAnimationState) {\r\n this._expandAnimationState = value;\r\n }\r\n }\r\n\r\n ngAfterContentInit() {\r\n // This makes sure that if someone marks a nav group expanded in a collapsed nav\r\n // the expanded property is switched back to collapsed state.\r\n if (this._navService.collapsed && this.expanded) {\r\n this.wasExpanded = true;\r\n this.expandAnimationState = COLLAPSED_STATE;\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this._subscriptions.forEach((sub: Subscription) => sub.unsubscribe());\r\n this._navGroupRegistrationService.unregisterNavGroup();\r\n }\r\n\r\n expandGroup(): void {\r\n this.expanded = true;\r\n // Expanded animation occurs after Expand.expand is set to true\r\n this.expandAnimationState = EXPANDED_STATE;\r\n }\r\n\r\n collapseGroup(): void {\r\n // If a Vertical Nav Group toggle button is clicked while the Vertical Nav is in Collapsed state,\r\n // the Vertical Nav should be expanded first.\r\n this.expandAnimationState = COLLAPSED_STATE;\r\n }\r\n\r\n // closes a group after the collapse animation\r\n expandAnimationDone($event: AnimationEvent) {\r\n if ($event.toState === COLLAPSED_STATE) {\r\n this.expanded = false;\r\n }\r\n }\r\n\r\n toggleExpand(): void {\r\n if (this.expanded) {\r\n this.collapseGroup();\r\n } else {\r\n // If nav is collasped, first open the nav\r\n if (this._navService.collapsed) {\r\n this._navService.collapsed = false;\r\n }\r\n // then expand the nav group\r\n this.expandGroup();\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<div class=\"nav-group-content\">\r\n <ng-content select=\"[hermesVerticalNavLink]\"></ng-content>\r\n <button class=\"nav-group-trigger\" type=\"button\" [attr.aria-expanded]=\"expanded\" (click)=\"toggleExpand()\">\r\n <ng-content select=\"[hermesVerticalNavIcon]\"></ng-content>\r\n <div class=\"nav-group-text\">\r\n <ng-content></ng-content>\r\n </div>\r\n <hermes-icon shape=\"angle\" class=\"nav-group-trigger-icon\" [direction]=\"expanded ? 'down' : 'right'\"></hermes-icon>\r\n </button>\r\n</div>\r\n<!--TODO: This animation needs to be added to the hermes-vertical-nav-group-children component-->\r\n<div class=\"nav-group-children\" [@hermesExpand]=\"expandAnimationState\" (@hermesExpand.done)=\"expandAnimationDone($event)\">\r\n <ng-content select=\"[hermesIfExpanded], hermes-vertical-nav-group-children\"></ng-content>\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\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class VerticalNavIconService {\r\n private _icons = 0;\r\n\r\n get hasIcons(): boolean {\r\n return this._icons > 0;\r\n }\r\n\r\n registerIcon(): void {\r\n this._icons++;\r\n }\r\n\r\n unregisterIcon(): void {\r\n this._icons--;\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, EventEmitter, Input, OnDestroy, Output } from '@angular/core';\r\nimport { HermesCommonStringsService, uniqueIdFactory } from '@hermes-ui/angular/utils';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { VerticalNavGroupRegistrationService } from './providers/vertical-nav-group-registration.service';\r\nimport { VerticalNavIconService } from './providers/vertical-nav-icon.service';\r\nimport { VerticalNavService } from './providers/vertical-nav.service';\r\n\r\n@Component({\r\n selector: 'hermes-vertical-nav',\r\n templateUrl: './vertical-nav.html',\r\n providers: [VerticalNavService, VerticalNavIconService, VerticalNavGroupRegistrationService],\r\n host: {\r\n class: 'hermes-vertical-nav',\r\n // Suprimido durante o peek: reaproveita 100% do CSS já existente pro\r\n // estado expandido (inclusive empurrar o conteúdo ao lado, via flex\r\n // normal) em vez de tentar \"desfazer\" as regras de .is-collapsed via\r\n // :hover (o `collapsed` real, usado por toggleByButton()/ariaExpanded/\r\n // o output, não muda — só a classe aplicada).\r\n '[class.is-collapsed]': 'collapsed && !peeking',\r\n '[class.is-peeking]': 'peeking',\r\n '[class.has-nav-groups]': 'hasNavGroups',\r\n '[class.has-icons]': 'hasIcons',\r\n '[class.is-pinnable]': 'pinnable',\r\n '(mouseenter)': 'onPeekEnter()',\r\n '(mouseleave)': 'onPeekLeave()',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesVerticalNav implements OnDestroy {\r\n @Input('hermesVerticalNavToggleLabel') toggleLabel: string;\r\n /** Quando true, o toggle vira semanticamente um \"fixar aberta/fechada\" (ícones\r\n * pin/unpin em vez do chevron duplo genérico) e habilita o hover-peek: passar\r\n * o mouse enquanto colapsada e não fixada expande temporariamente (ver\r\n * onPeekEnter/onPeekLeave abaixo), sem persistir nem emitir o output. */\r\n @Input('hermesVerticalNavPinnable') pinnable = false;\r\n contentId = uniqueIdFactory();\r\n\r\n /** true só enquanto o mouse está sobre uma nav colapsada e \"pinnable\" —\r\n * não persiste, não afeta `collapsed`/o output, é puramente visual. */\r\n peeking = false;\r\n\r\n onPeekEnter(): void {\r\n if (this.pinnable && this.collapsed) {\r\n this.peeking = true;\r\n }\r\n }\r\n\r\n onPeekLeave(): void {\r\n this.peeking = false;\r\n }\r\n\r\n @Output('hermesVerticalNavCollapsedChange') private _collapsedChanged = new EventEmitter<boolean>(true);\r\n\r\n private _sub: Subscription;\r\n\r\n constructor(\r\n private _navService: VerticalNavService,\r\n private _navIconService: VerticalNavIconService,\r\n private _navGroupRegistrationService: VerticalNavGroupRegistrationService,\r\n public commonStrings: HermesCommonStringsService\r\n ) {\r\n this._sub = _navService.collapsedChanged.subscribe(value => {\r\n this._collapsedChanged.emit(value);\r\n });\r\n }\r\n\r\n @Input('hermesVerticalNavCollapsible')\r\n get collapsible(): boolean | string {\r\n return this._navService.collapsible;\r\n }\r\n set collapsible(value: boolean | string) {\r\n this._navService.collapsible = value as boolean;\r\n }\r\n\r\n @Input('hermesVerticalNavCollapsed')\r\n get collapsed(): boolean | string {\r\n return this._navService.collapsed;\r\n }\r\n set collapsed(value: boolean | string) {\r\n this._navService.collapsed = value as boolean;\r\n }\r\n\r\n get hasNavGroups(): boolean {\r\n return this._navGroupRegistrationService.navGroupCount > 0;\r\n }\r\n\r\n get hasIcons(): boolean {\r\n return this._navIconService.hasIcons;\r\n }\r\n\r\n get ariaExpanded(): string {\r\n if (!this.collapsible) {\r\n return null;\r\n }\r\n return !this.collapsed ? 'true' : 'false';\r\n }\r\n\r\n ngOnDestroy() {\r\n this._sub.unsubscribe();\r\n }\r\n\r\n toggleByButton() {\r\n this.collapsed = !this.collapsed;\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@if (collapsible) {\r\n<button\r\n type=\"button\"\r\n class=\"nav-trigger\"\r\n [class.on-collapse]=\"collapsed\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-expanded]=\"ariaExpanded\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n (click)=\"toggleByButton()\"\r\n>\r\n @if (pinnable) {\r\n <hermes-icon [shape]=\"collapsed ? 'pin' : 'unpin'\" class=\"nav-trigger-icon\"></hermes-icon>\r\n } @else {\r\n <hermes-icon shape=\"angle-double\" class=\"nav-trigger-icon\" [direction]=\"(collapsed) ? 'right' : 'left'\"></hermes-icon>\r\n }\r\n</button>\r\n}\r\n<div [id]=\"contentId\" class=\"nav-content\">\r\n <ng-content></ng-content>\r\n @if (collapsible && collapsed) {\r\n <button\r\n type=\"button\"\r\n (click)=\"collapsed = false\"\r\n class=\"nav-btn\"\r\n aria-hidden=\"true\"\r\n tabindex=\"-1\"\r\n [attr.aria-controls]=\"contentId\"\r\n [attr.aria-label]=\"toggleLabel || commonStrings.keys.verticalNavToggle\"\r\n ></button>\r\n }\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\nimport { ChangeDetectorRef, Component, ElementRef, Inject, OnDestroy, Optional } from '@angular/core';\r\nimport { fromEvent, Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\nimport { VerticalNavGroupService } from './providers/vertical-nav-group.service';\r\n\r\n@Component({\r\n selector: '[hermesVerticalNavLink]',\r\n template: `\r\n <ng-content select=\"[hermesVerticalNavIcon]\"></ng-content>\r\n <span class=\"nav-text\">\r\n <ng-content></ng-content>\r\n </span>\r\n `,\r\n host: {\r\n class: 'nav-link',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesVerticalNavLink implements OnDestroy {\r\n private destroy$ = new Subject<void>();\r\n\r\n constructor(\r\n host: ElementRef<HTMLElement>,\r\n ref: ChangeDetectorRef,\r\n @Optional() @Inject(VerticalNavGroupService) navGroupService: VerticalNavGroupService | null\r\n ) {\r\n // Note: since the `VerticalNavGroupService` is an optional provider, we'll setup the event\r\n // listener only when the `[hermesVerticalLink]` is located within the `hermes-vertical-nav-group`.\r\n navGroupService &&\r\n fromEvent(host.nativeElement, 'click')\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe(() => {\r\n navGroupService.expand();\r\n ref.markForCheck();\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\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, OnDestroy } from '@angular/core';\r\n\r\nimport { VerticalNavIconService } from './providers/vertical-nav-icon.service';\r\n\r\n@Directive({\r\n selector: '[hermesVerticalNavIcon]',\r\n host: { class: 'nav-icon' },\r\n standalone: false,\r\n})\r\nexport class HermesVerticalNavIcon implements OnDestroy {\r\n constructor(private _verticalNavIconService: VerticalNavIconService) {\r\n _verticalNavIconService.registerIcon();\r\n }\r\n\r\n ngOnDestroy() {\r\n this._verticalNavIconService.unregisterIcon();\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, Type } from '@angular/core';\r\nimport { angleDoubleIcon, angleIcon, ClarityIcons, HermesIcon } from '@hermes-ui/angular/icon';\r\nimport { HermesConditionalModule, HermesFocusOnViewInitModule } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesVerticalNav } from './vertical-nav';\r\nimport { HermesVerticalNavGroup } from './vertical-nav-group';\r\nimport { HermesVerticalNavGroupChildren } from './vertical-nav-group-children';\r\nimport { HermesVerticalNavIcon } from './vertical-nav-icon';\r\nimport { HermesVerticalNavLink } from './vertical-nav-link';\r\n\r\nexport const HERMES_VERTICAL_NAV_DIRECTIVES: Type<any>[] = [\r\n HermesVerticalNav,\r\n HermesVerticalNavLink,\r\n HermesVerticalNavGroup,\r\n HermesVerticalNavGroupChildren,\r\n HermesVerticalNavIcon,\r\n];\r\n\r\n@NgModule({\r\n imports: [CommonModule, HermesIcon, HermesConditionalModule, HermesFocusOnViewInitModule],\r\n declarations: [HERMES_VERTICAL_NAV_DIRECTIVES],\r\n exports: [HERMES_VERTICAL_NAV_DIRECTIVES, HermesConditionalModule, HermesIcon, HermesFocusOnViewInitModule],\r\n})\r\nexport class HermesVerticalNavModule {\r\n constructor() {\r\n ClarityIcons.addIcons(angleIcon, angleDoubleIcon);\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 './vertical-nav-group-children';\r\nexport * from './vertical-nav-group';\r\nexport * from './vertical-nav';\r\nexport * from './vertical-nav-link';\r\nexport * from './vertical-nav-icon';\r\nexport * from './vertical-nav.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.VerticalNavGroupRegistrationService","i3.VerticalNavGroupService","i4.VerticalNavService","i1.VerticalNavService","i2.VerticalNavIconService","i3.VerticalNavGroupRegistrationService","i4","i1.VerticalNavIconService"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes-ui-angular-layout.mjs","sources":["../../../layout/layout.module.ts","../../../layout/index.ts","../../../layout/hermes-ui-angular-layout.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { NgModule } from '@angular/core';\nimport { HermesBreadcrumbsModule } from '@hermes-ui/angular/layout/breadcrumbs';\nimport { HermesMainContainerModule } from '@hermes-ui/angular/layout/main-container';\nimport { HermesNavigationModule } from '@hermes-ui/angular/layout/nav';\nimport { HermesTabsModule } from '@hermes-ui/angular/layout/tabs';\nimport { HermesVerticalNavModule } from '@hermes-ui/angular/layout/vertical-nav';\n\n@NgModule({\n exports: [HermesMainContainerModule, HermesNavigationModule, HermesTabsModule, HermesVerticalNavModule, HermesBreadcrumbsModule],\n})\nexport class HermesLayoutModule {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nexport * from './layout.module';\nexport * from '@hermes-ui/angular/layout/main-container';\nexport * from '@hermes-ui/angular/layout/nav';\nexport * from '@hermes-ui/angular/layout/tabs';\nexport * from '@hermes-ui/angular/layout/vertical-nav';\nexport * from '@hermes-ui/angular/layout/breadcrumbs';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;;;;;AAKG;MAYU,kBAAkB,CAAA;+GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAlB,kBAAkB,EAAA,OAAA,EAAA,CAFnB,yBAAyB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA;gHAEpH,kBAAkB,EAAA,OAAA,EAAA,CAFnB,yBAAyB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA;;4FAEpH,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,yBAAyB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,uBAAuB,CAAC;AACjI,iBAAA;;;AChBD;;;;;AAKG;;ACLH;;AAEG;;"}
|
|
1
|
+
{"version":3,"file":"hermes-ui-angular-layout.mjs","sources":["../../../layout/layout.module.ts","../../../layout/index.ts","../../../layout/hermes-ui-angular-layout.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 { NgModule } from '@angular/core';\r\nimport { HermesBreadcrumbsModule } from '@hermes-ui/angular/layout/breadcrumbs';\r\nimport { HermesMainContainerModule } from '@hermes-ui/angular/layout/main-container';\r\nimport { HermesNavigationModule } from '@hermes-ui/angular/layout/nav';\r\nimport { HermesTabsModule } from '@hermes-ui/angular/layout/tabs';\r\nimport { HermesVerticalNavModule } from '@hermes-ui/angular/layout/vertical-nav';\r\n\r\n@NgModule({\r\n exports: [HermesMainContainerModule, HermesNavigationModule, HermesTabsModule, HermesVerticalNavModule, HermesBreadcrumbsModule],\r\n})\r\nexport class HermesLayoutModule {}\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 './layout.module';\r\nexport * from '@hermes-ui/angular/layout/main-container';\r\nexport * from '@hermes-ui/angular/layout/nav';\r\nexport * from '@hermes-ui/angular/layout/tabs';\r\nexport * from '@hermes-ui/angular/layout/vertical-nav';\r\nexport * from '@hermes-ui/angular/layout/breadcrumbs';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;;;;;AAKG;MAYU,kBAAkB,CAAA;+GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAlB,kBAAkB,EAAA,OAAA,EAAA,CAFnB,yBAAyB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA;gHAEpH,kBAAkB,EAAA,OAAA,EAAA,CAFnB,yBAAyB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,uBAAuB,CAAA,EAAA,CAAA,CAAA;;4FAEpH,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,yBAAyB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,uBAAuB,CAAC;AACjI,iBAAA;;;AChBD;;;;;AAKG;;ACLH;;AAEG;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hermes-ui-angular-modal.mjs","sources":["../../../modal/modal-stack.service.ts","../../../modal/modal-configuration.service.ts","../../../modal/modal.ts","../../../modal/modal.html","../../../modal/modal-body.ts","../../../modal/modal-host.component.ts","../../../modal/modal.module.ts","../../../modal/side-panel.ts","../../../modal/side-panel.html","../../../modal/side-panel.module.ts","../../../modal/index.ts","../../../modal/hermes-ui-angular-modal.ts"],"sourcesContent":["/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { isPlatformBrowser } from '@angular/common';\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { Keys } from '@hermes-ui/angular/utils';\n\nexport interface Closable {\n close(): void;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class ModalStackService {\n private readonly modalStack: Closable[] = [];\n private readonly keyUpEventListener = this.onKeyUp.bind(this);\n\n constructor(@Inject(PLATFORM_ID) private readonly platformId: unknown) {}\n\n trackModalOpen(openedModal: Closable) {\n if (this.modalStack.includes(openedModal) === false) {\n this.modalStack.unshift(openedModal);\n }\n\n if (isPlatformBrowser(this.platformId)) {\n document.body.addEventListener('keyup', this.keyUpEventListener);\n }\n }\n\n trackModalClose(closedModal: Closable) {\n const closedModalIndex = this.modalStack.indexOf(closedModal);\n\n if (closedModalIndex > -1) {\n this.modalStack.splice(closedModalIndex, 1);\n }\n\n if (this.modalStack.length === 0 && isPlatformBrowser(this.platformId)) {\n document.body.removeEventListener('keyup', this.keyUpEventListener);\n }\n }\n\n private onKeyUp(event: KeyboardEvent) {\n if (this.modalStack.length && event.key === Keys.Escape) {\n // We blur the active element because escaping with an input element in focus could cause\n // an ExpressionChangedAfterItHasBeenCheckedError for the touched state. (CDE-1662)\n (document.activeElement as HTMLElement).blur();\n\n this.modalStack[0].close();\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\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class HermesModalConfigurationService {\r\n fadeMove = 'fadeDown';\r\n backdrop = true;\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 { animate, AnimationEvent, style, transition, trigger } from '@angular/animations';\nimport {\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChange,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { HermesCommonStringsService, ScrollingService, uniqueIdFactory } from '@hermes-ui/angular/utils';\n\nimport { HermesModalConfigurationService } from './modal-configuration.service';\nimport { ModalStackService } from './modal-stack.service';\n\n@Component({\n selector: 'hermes-modal',\n viewProviders: [ScrollingService],\n templateUrl: './modal.html',\n styles: [\n `\n :host {\n display: none;\n }\n :host.open {\n display: inline;\n }\n `,\n ],\n animations: [\n trigger('fadeMove', [\n transition('* => fadeDown', [\n style({ opacity: 0, transform: 'translate(0, -25%)' }),\n animate('0.2s ease-in-out'),\n ]),\n transition('fadeDown => *', [\n animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, -25%)' })),\n ]),\n transition('* => fadeLeft', [style({ opacity: 0, transform: 'translate(25%, 0)' }), animate('0.2s ease-in-out')]),\n transition('fadeLeft => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(25%, 0)' }))]),\n transition('* => fadeUp', [style({ opacity: 0, transform: 'translate(0, 50%)' }), animate('0.2s ease-in-out')]),\n transition('fadeUp => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, 50%)' }))]),\n ]),\n trigger('fade', [\n transition('void => *', [style({ opacity: 0 }), animate('0.2s ease-in-out', style({ opacity: 0.85 }))]),\n transition('* => void', [animate('0.2s ease-in-out', style({ opacity: 0 }))]),\n ]),\n ],\n standalone: false,\n})\nexport class HermesModal implements OnChanges, OnDestroy {\n modalId = uniqueIdFactory();\n @ViewChild('title') title: ElementRef<HTMLElement>;\n\n @Input('hermesModalOpen') @HostBinding('class.open') _open = false;\n @Output('hermesModalOpenChange') _openChanged = new EventEmitter<boolean>(false);\n\n @Input('hermesModalClosable') closable = true;\n @Input('hermesModalCloseButtonAriaLabel') closeButtonAriaLabel = this.commonStrings.keys.close;\n @Input('hermesModalSize') size = 'md';\n @Input('hermesModalStaticBackdrop') staticBackdrop = true;\n @Input('hermesModalSkipAnimation') skipAnimation = false;\n\n @Input('hermesModalPreventClose') stopClose = false;\n @Output('hermesModalAlternateClose') altClose = new EventEmitter<boolean>(false);\n\n @Input('hermesModalLabelledById') labelledBy: string;\n\n // presently this is only used by inline wizards\n @Input('hermesModalOverrideScrollService') bypassScrollService = false;\n\n // Provide raw modal content. This is used by the wizard so that the same template can be rendered with and without a modal.\n @ContentChild('hermesInternalModalContentTemplate') protected readonly modalContentTemplate: TemplateRef<any>;\n\n @ViewChild('body') private readonly bodyElementRef: ElementRef<HTMLElement>;\n\n constructor(\n private _scrollingService: ScrollingService,\n public commonStrings: HermesCommonStringsService,\n private modalStackService: ModalStackService,\n private configuration: HermesModalConfigurationService\n ) {}\n\n get fadeMove(): string {\n return this.skipAnimation ? '' : this.configuration.fadeMove;\n }\n set fadeMove(move: string) {\n this.configuration.fadeMove = move;\n }\n\n get backdrop(): boolean {\n return this.configuration.backdrop;\n }\n\n // Detect when _open is set to true and set no-scrolling to true\n ngOnChanges(changes: { [propName: string]: SimpleChange }): void {\n if (!this.bypassScrollService && changes && Object.prototype.hasOwnProperty.call(changes, '_open')) {\n if (changes._open.currentValue) {\n this._scrollingService.stopScrolling();\n this.modalStackService.trackModalOpen(this);\n } else {\n this._scrollingService.resumeScrolling();\n }\n }\n }\n\n ngOnDestroy(): void {\n this._scrollingService.resumeScrolling();\n }\n\n open(): void {\n if (this._open) {\n return;\n }\n this._open = true;\n this._openChanged.emit(true);\n this.modalStackService.trackModalOpen(this);\n }\n\n backdropClick(): void {\n if (this.staticBackdrop) {\n return;\n }\n\n this.close();\n }\n\n close(): void {\n if (this.stopClose) {\n this.altClose.emit(false);\n return;\n }\n if (!this.closable || !this._open) {\n return;\n }\n this._open = false;\n }\n\n fadeDone(e: AnimationEvent) {\n if (e.toState === 'void') {\n // TODO: Investigate if we can decouple from animation events\n this._openChanged.emit(false);\n this.modalStackService.trackModalClose(this);\n }\n }\n\n scrollTop() {\n this.bodyElementRef.nativeElement.scrollTo(0, 0);\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\n@if (_open) {\r\n<div class=\"modal\" [class.modal-full-screen]=\"size == 'full-screen'\">\r\n <!--fixme: revisit when ngClass works with exit animation-->\r\n <div\r\n cdkTrapFocus\r\n [cdkTrapFocusAutoCapture]=\"true\"\r\n [@fadeMove]=\"fadeMove\"\r\n (@fadeMove.done)=\"fadeDone($event)\"\r\n class=\"modal-dialog\"\r\n [class.modal-sm]=\"size == 'sm'\"\r\n [class.modal-lg]=\"size == 'lg'\"\r\n [class.modal-xl]=\"size == 'xl'\"\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n [attr.aria-hidden]=\"!_open\"\r\n [attr.aria-labelledby]=\"labelledBy || modalId\"\r\n >\r\n <div class=\"hermes-sr-only\">{{commonStrings.keys.modalContentStart}}</div>\r\n <!-- This wizard is tightly coupled to the modal styles, so changes here could require changes in the wizard. -->\r\n @if (!modalContentTemplate) {\r\n <div class=\"modal-content-wrapper\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header--accessible\">\r\n <ng-content select=\".leading-button\"></ng-content>\r\n <div class=\"modal-title-wrapper\" #title [id]=\"modalId\" cdkFocusInitial tabindex=\"-1\">\r\n <ng-content select=\".modal-title\"></ng-content>\r\n </div>\r\n @if (closable) {\r\n <button\r\n type=\"button\"\r\n [attr.aria-label]=\"closeButtonAriaLabel || commonStrings.keys.close\"\r\n class=\"close\"\r\n (click)=\"close()\"\r\n >\r\n <hermes-icon shape=\"window-close\"></hermes-icon>\r\n </button>\r\n }\r\n </div>\r\n <div #body class=\"modal-body-wrapper\">\r\n <ng-content select=\".modal-body\"></ng-content>\r\n </div>\r\n <ng-content select=\".modal-footer\"></ng-content>\r\n </div>\r\n </div>\r\n } @else {\r\n <ng-template [ngTemplateOutlet]=\"modalContentTemplate\"></ng-template>\r\n }\r\n </div>\r\n <div class=\"hermes-sr-only\">{{commonStrings.keys.modalContentEnd}}</div>\r\n @if (backdrop) {\r\n <div\r\n [@fade]\r\n class=\"modal-backdrop\"\r\n [class.static]=\"staticBackdrop\"\r\n aria-hidden=\"true\"\r\n (click)=\"backdropClick()\"\r\n ></div>\r\n }\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\nimport { Directive, ElementRef, NgZone, OnDestroy, Renderer2 } from '@angular/core';\r\n\r\n/**\r\n * Allows modal overflow area to be scrollable via keyboard.\r\n * The modal body will focus with keyboard navigation only.\r\n * This allows inner focusable items to be focused without\r\n * the overflow scroll being focused.\r\n */\r\n@Directive({\r\n selector: '.modal-body',\r\n standalone: false,\r\n})\r\nexport class HermesModalBody implements OnDestroy {\r\n private tabindex = '0';\r\n private unlisteners: VoidFunction[] = [];\r\n private observer: ResizeObserver;\r\n\r\n constructor(\r\n private readonly renderer: Renderer2,\r\n private readonly host: ElementRef<HTMLElement>,\r\n ngZone: NgZone\r\n ) {\r\n ngZone.runOutsideAngular(() => {\r\n this.observer = new ResizeObserver(() => this.addOrRemoveTabIndex());\r\n this.observer.observe(host.nativeElement);\r\n\r\n this.unlisteners.push(\r\n renderer.listen(host.nativeElement, 'mouseup', () => {\r\n // set the tabindex binding back when click is completed with mouseup\r\n this.addOrRemoveTabIndex();\r\n }),\r\n renderer.listen(host.nativeElement, 'mousedown', () => {\r\n // tabindex = 0 binding should be removed\r\n // so it won't be focused when click starts with mousedown\r\n this.removeTabIndex();\r\n })\r\n );\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n while (this.unlisteners.length) {\r\n this.unlisteners.pop()();\r\n }\r\n\r\n this.observer.disconnect();\r\n this.observer = null;\r\n }\r\n\r\n private addTabIndex() {\r\n this.renderer.setAttribute(this.host.nativeElement, 'tabindex', this.tabindex);\r\n }\r\n\r\n private removeTabIndex() {\r\n this.renderer.removeAttribute(this.host.nativeElement, 'tabindex');\r\n }\r\n\r\n private addOrRemoveTabIndex() {\r\n const modalBody = this.host.nativeElement.parentElement;\r\n\r\n if (modalBody && modalBody.clientHeight < modalBody.scrollHeight) {\r\n this.addTabIndex();\r\n } else {\r\n this.removeTabIndex();\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 { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: '[hermesModalHost]',\r\n host: { '[class.hermes-modal-host]': 'true' },\r\n template: `\r\n <div class=\"hermes-modal-host-scrollable\">\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n standalone: false,\r\n})\r\nexport class HermesModalHostComponent {}\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 { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { ClarityIcons, HermesIcon, windowCloseIcon } from '@hermes-ui/angular/icon';\nimport { CdkTrapFocusModule } from '@hermes-ui/angular/utils';\n\nimport { HermesModal } from './modal';\nimport { HermesModalBody } from './modal-body';\nimport { HermesModalHostComponent } from './modal-host.component';\n\nexport const HERMES_MODAL_DIRECTIVES: Type<any>[] = [HermesModal, HermesModalBody, HermesModalHostComponent];\n\n@NgModule({\n imports: [CommonModule, CdkTrapFocusModule, HermesIcon],\n declarations: [HERMES_MODAL_DIRECTIVES],\n exports: [HERMES_MODAL_DIRECTIVES, HermesIcon],\n})\nexport class HermesModalModule {\n constructor() {\n ClarityIcons.addIcons(windowCloseIcon);\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 Component,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { HermesCommonStringsService } from '@hermes-ui/angular/utils';\n\nimport { HermesModal } from './modal';\nimport { HermesModalConfigurationService } from './modal-configuration.service';\n\n@Component({\n selector: 'hermes-side-panel',\n templateUrl: 'side-panel.html',\n host: {\n '[class.side-panel]': 'true',\n },\n standalone: false,\n})\nexport class HermesSidePanel implements OnInit, OnDestroy {\n @Output('hermesSidePanelOpenChange') openChange = new EventEmitter<boolean>(false);\n @Input('hermesSidePanelCloseButtonAriaLabel') closeButtonAriaLabel: string | undefined;\n @Input('hermesSidePanelSkipAnimation') skipAnimation = false;\n @Input('hermesSidePanelLabelledById') labelledById: string;\n @Input('hermesSidePanelStaticBackdrop') staticBackdrop = false;\n @Input('hermesSidePanelClosable') closable = true;\n @Input('hermesSidePanelPreventClose') preventClose = false;\n @Output('hermesSidePanelAlternateClose') altClose = new EventEmitter<boolean>(false);\n\n private _pinnable = false;\n private _pinned = false;\n private originalStopClose: boolean;\n private _position = 'right';\n private _modal: HermesModal;\n private __open = false;\n\n private _size = 'md';\n\n constructor(\n private element: ElementRef<HTMLElement>,\n private configuration: HermesModalConfigurationService,\n public commonStrings: HermesCommonStringsService\n ) {}\n\n @Input('hermesSidePanelOpen')\n get _open(): boolean {\n return this.__open;\n }\n set _open(open: boolean) {\n if (open !== this.__open) {\n this.__open = open;\n if (this.pinned) {\n this.updateModalState();\n }\n }\n }\n\n @Input('hermesSidePanelSize')\n get size(): string {\n return this._size;\n }\n\n set size(value: string) {\n if (!value) {\n value = 'md';\n }\n if (this._size !== value) {\n this._size = value;\n if (this.pinned) {\n this.updateModalState();\n }\n }\n }\n\n @Input('hermesSidePanelPosition')\n get position(): string {\n return this._position;\n }\n\n set position(position: string) {\n if (position && position !== this._position) {\n this._position = position;\n if (this._position === 'right') {\n this.configuration.fadeMove = 'fadeLeft';\n } else if (this._position === 'bottom') {\n this.configuration.fadeMove = 'fadeUp';\n }\n }\n }\n\n @Input('hermesSidePanelPinned')\n get pinned(): boolean {\n return this._pinned;\n }\n\n set pinned(pinned: boolean) {\n this._pinned = pinned;\n if (this.modal) {\n this.updateModalState();\n }\n }\n\n @Input()\n get hermesSidePanelBackdrop(): boolean {\n return this.configuration.backdrop;\n }\n\n set hermesSidePanelBackdrop(backdrop: boolean) {\n if (backdrop !== undefined) {\n this.configuration.backdrop = backdrop;\n }\n }\n\n @Input()\n get hermesSidePanelPinnable(): boolean {\n return this._pinnable;\n }\n\n set hermesSidePanelPinnable(pinnable: boolean) {\n this._pinnable = pinnable;\n }\n\n @ViewChild(HermesModal)\n private get modal(): HermesModal {\n return this._modal;\n }\n\n private set modal(modal: HermesModal) {\n this._modal = modal;\n this.originalStopClose = this.modal.stopClose;\n this.updateModalState();\n }\n\n private get hostElement(): HTMLElement {\n return (this.element.nativeElement as HTMLElement).closest('.hermes-modal-host') || document.body;\n }\n\n @HostBinding('class.side-panel-bottom')\n private get bottomPositionCssClass() {\n return this.position === 'bottom';\n }\n\n ngOnInit(): void {\n this.configuration.fadeMove = 'fadeLeft';\n if (this.position === 'bottom') {\n this.configuration.fadeMove = 'fadeUp';\n }\n }\n\n ngOnDestroy(): void {\n this.cleanupPinnedClasses();\n }\n\n handleModalOpen(open: boolean) {\n if (open) {\n this.updateModalState();\n } else {\n this.cleanupPinnedClasses();\n }\n this.openChange.emit(open);\n }\n\n open() {\n this.modal.open();\n }\n\n close() {\n this.modal.close();\n }\n\n togglePinned() {\n this.pinned = !this.pinned;\n }\n\n @HostListener('document:pointerup', ['$event'])\n private documentClick(event: Event) {\n if (\n !this.element.nativeElement.contains(event.target as Node) &&\n this.modal._open &&\n !this.configuration.backdrop\n ) {\n this.modal.close();\n }\n }\n\n private updateModalState() {\n if (!this.modal) {\n return;\n }\n if (this.pinned) {\n this.modal.stopClose = true;\n if (this.__open) {\n this.updatePinnedClasses();\n }\n } else {\n this.modal.stopClose = this.originalStopClose;\n this.cleanupPinnedClasses();\n }\n }\n\n private cleanupPinnedClasses() {\n [this.hostElement, document.body].forEach(host => {\n host.classList.forEach(className => {\n if (className.startsWith('hermes-side-panel-pinned-')) {\n host.classList.remove(className);\n }\n });\n });\n }\n\n private updatePinnedClasses() {\n this.cleanupPinnedClasses();\n this.hostElement.classList.add(`hermes-side-panel-pinned-${this.position}-${this.size}`);\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<hermes-modal\r\n [hermesModalOpen]=\"_open\"\r\n (hermesModalOpenChange)=\"handleModalOpen($event)\"\r\n [hermesModalCloseButtonAriaLabel]=\"closeButtonAriaLabel\"\r\n [hermesModalSize]=\"size\"\r\n [hermesModalSkipAnimation]=\"skipAnimation\"\r\n [hermesModalStaticBackdrop]=\"staticBackdrop\"\r\n [hermesModalLabelledById]=\"labelledById\"\r\n [hermesModalPreventClose]=\"preventClose\"\r\n [hermesModalClosable]=\"closable\"\r\n (hermesModalAlternateClose)=\"altClose.emit($event)\"\r\n [hermesModalOverrideScrollService]=\"true\"\r\n>\r\n @if (hermesSidePanelPinnable) {\r\n <button\r\n type=\"button\"\r\n [attr.aria-label]=\"commonStrings.keys.sidePanelPin\"\r\n class=\"leading-button pinnable\"\r\n (click)=\"togglePinned()\"\r\n >\r\n <hermes-icon [shape]=\"pinned ? 'unpin' : 'pin'\"></hermes-icon>\r\n </button>\r\n }\r\n <div class=\"modal-title\"><ng-content select=\".side-panel-title\"></ng-content></div>\r\n <div class=\"modal-body\"><ng-content select=\".side-panel-body\"></ng-content></div>\r\n <div class=\"modal-footer\"><ng-content select=\".side-panel-footer\"></ng-content></div>\r\n</hermes-modal>\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 { CommonModule } from '@angular/common';\nimport { NgModule, Type } from '@angular/core';\nimport { HermesIcon } from '@hermes-ui/angular/icon';\nimport { CdkTrapFocusModule } from '@hermes-ui/angular/utils';\n\nimport { HermesModalModule } from './modal.module';\nimport { HermesSidePanel } from './side-panel';\n\nexport const HERMES_SIDEPANEL_DIRECTIVES: Type<any>[] = [HermesSidePanel];\n\n@NgModule({\n imports: [CommonModule, CdkTrapFocusModule, HermesIcon, HermesModalModule],\n declarations: [HERMES_SIDEPANEL_DIRECTIVES],\n exports: [HERMES_SIDEPANEL_DIRECTIVES, HermesModalModule, HermesIcon],\n})\nexport class HermesSidePanelModule {}\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 './modal';\r\nexport * from './modal.module';\r\nexport * from './modal-configuration.service';\r\nexport * from './modal-host.component';\r\nexport * from './side-panel.module';\r\nexport * from './modal-body';\r\nexport * from './side-panel';\r\nexport * from './modal-stack.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.ModalStackService","i3.HermesModalConfigurationService","i1.HermesModalConfigurationService","i2","i3","i4.HermesModal","i5.HermesModalBody"],"mappings":";;;;;;;;;;AAAA;;;;;AAKG;MAWU,iBAAiB,CAAA;AAI5B,IAAA,WAAA,CAAkD,UAAmB,EAAA;QAAnB,IAAA,CAAA,UAAU,GAAV,UAAU;QAH3C,IAAA,CAAA,UAAU,GAAe,EAAE;QAC3B,IAAA,CAAA,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IAEW;AAExE,IAAA,cAAc,CAAC,WAAqB,EAAA;QAClC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,KAAK,EAAE;AACnD,YAAA,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC;QACtC;AAEA,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACtC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC;QAClE;IACF;AAEA,IAAA,eAAe,CAAC,WAAqB,EAAA;QACnC,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC;AAE7D,QAAA,IAAI,gBAAgB,GAAG,CAAC,CAAC,EAAE;YACzB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC7C;AAEA,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACtE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC;QACrE;IACF;AAEQ,IAAA,OAAO,CAAC,KAAoB,EAAA;AAClC,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,EAAE;;;AAGtD,YAAA,QAAQ,CAAC,aAA6B,CAAC,IAAI,EAAE;YAE9C,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;QAC5B;IACF;AApCW,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,kBAIR,WAAW,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAJpB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,cADJ,MAAM,EAAA,CAAA,CAAA;;4FACnB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;0BAKnB,MAAM;2BAAC,WAAW;;;ACpBjC;;;;;AAKG;MAKU,+BAA+B,CAAA;AAD5C,IAAA,WAAA,GAAA;QAEE,IAAA,CAAA,QAAQ,GAAG,UAAU;QACrB,IAAA,CAAA,QAAQ,GAAG,IAAI;AAChB,IAAA;+GAHY,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,cADlB,MAAM,EAAA,CAAA,CAAA;;4FACnB,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAD3C,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACTlC;;;;;AAKG;MAyDU,WAAW,CAAA;AA0BtB,IAAA,WAAA,CACU,iBAAmC,EACpC,aAAyC,EACxC,iBAAoC,EACpC,aAA8C,EAAA;QAH9C,IAAA,CAAA,iBAAiB,GAAjB,iBAAiB;QAClB,IAAA,CAAA,aAAa,GAAb,aAAa;QACZ,IAAA,CAAA,iBAAiB,GAAjB,iBAAiB;QACjB,IAAA,CAAA,aAAa,GAAb,aAAa;QA7BvB,IAAA,CAAA,OAAO,GAAG,eAAe,EAAE;QAG0B,IAAA,CAAA,KAAK,GAAG,KAAK;AACjC,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,CAAU,KAAK,CAAC;QAElD,IAAA,CAAA,QAAQ,GAAG,IAAI;QACH,IAAA,CAAA,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK;QACpE,IAAA,CAAA,IAAI,GAAG,IAAI;QACD,IAAA,CAAA,cAAc,GAAG,IAAI;QACtB,IAAA,CAAA,aAAa,GAAG,KAAK;QAEtB,IAAA,CAAA,SAAS,GAAG,KAAK;AACd,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,CAAU,KAAK,CAAC;;QAKrC,IAAA,CAAA,mBAAmB,GAAG,KAAK;IAYnE;AAEH,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ;IAC9D;IACA,IAAI,QAAQ,CAAC,IAAY,EAAA;AACvB,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,IAAI;IACpC;AAEA,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ;IACpC;;AAGA,IAAA,WAAW,CAAC,OAA6C,EAAA;QACvD,IAAI,CAAC,IAAI,CAAC,mBAAmB,IAAI,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;AAClG,YAAA,IAAI,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE;AAC9B,gBAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE;AACtC,gBAAA,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC;YAC7C;iBAAO;AACL,gBAAA,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE;YAC1C;QACF;IACF;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE;IAC1C;IAEA,IAAI,GAAA;AACF,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;YACd;QACF;AACA,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;AAC5B,QAAA,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,CAAC;IAC7C;IAEA,aAAa,GAAA;AACX,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB;QACF;QAEA,IAAI,CAAC,KAAK,EAAE;IACd;IAEA,KAAK,GAAA;AACH,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;YACzB;QACF;QACA,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACjC;QACF;AACA,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;IACpB;AAEA,IAAA,QAAQ,CAAC,CAAiB,EAAA;AACxB,QAAA,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,EAAE;;AAExB,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;AAC7B,YAAA,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC;QAC9C;IACF;IAEA,SAAS,GAAA;QACP,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;IAClD;+GAlGW,WAAW,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,+BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAX,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,WAAW,mkCC9DxB,0gFAmEA,EAAA,MAAA,EAAA,CAAA,iDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,+BAAA,EAAA,QAAA,EAAA,gBAAA,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,CAAA,EAAA,aAAA,EDtCiB,CAAC,gBAAgB,CAAC,EAAA,UAAA,EAYrB;YACV,OAAO,CAAC,UAAU,EAAE;gBAClB,UAAU,CAAC,eAAe,EAAE;oBAC1B,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC;oBACtD,OAAO,CAAC,kBAAkB,CAAC;iBAC5B,CAAC;gBACF,UAAU,CAAC,eAAe,EAAE;AAC1B,oBAAA,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC,CAAC;iBACpF,CAAC;gBACF,UAAU,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;gBACjH,UAAU,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;gBACjH,UAAU,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;gBAC/G,UAAU,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;aAChH,CAAC;YACF,OAAO,CAAC,MAAM,EAAE;gBACd,UAAU,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACvG,gBAAA,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;aAC9E,CAAC;AACH,SAAA,EAAA,CAAA,CAAA;;4FAGU,WAAW,EAAA,UAAA,EAAA,CAAA;kBAnCvB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EAAA,aAAA,EACT,CAAC,gBAAgB,CAAC,EAAA,UAAA,EAYrB;wBACV,OAAO,CAAC,UAAU,EAAE;4BAClB,UAAU,CAAC,eAAe,EAAE;gCAC1B,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC;gCACtD,OAAO,CAAC,kBAAkB,CAAC;6BAC5B,CAAC;4BACF,UAAU,CAAC,eAAe,EAAE;AAC1B,gCAAA,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC,CAAC;6BACpF,CAAC;4BACF,UAAU,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;4BACjH,UAAU,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;4BACjH,UAAU,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;4BAC/G,UAAU,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC;yBAChH,CAAC;wBACF,OAAO,CAAC,MAAM,EAAE;4BACd,UAAU,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACvG,4BAAA,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;yBAC9E,CAAC;AACH,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,QAAA,EAAA,0gFAAA,EAAA,MAAA,EAAA,CAAA,iDAAA,CAAA,EAAA;;sBAIhB,SAAS;uBAAC,OAAO;;sBAEjB,KAAK;uBAAC,iBAAiB;;sBAAG,WAAW;uBAAC,YAAY;;sBAClD,MAAM;uBAAC,uBAAuB;;sBAE9B,KAAK;uBAAC,qBAAqB;;sBAC3B,KAAK;uBAAC,iCAAiC;;sBACvC,KAAK;uBAAC,iBAAiB;;sBACvB,KAAK;uBAAC,2BAA2B;;sBACjC,KAAK;uBAAC,0BAA0B;;sBAEhC,KAAK;uBAAC,yBAAyB;;sBAC/B,MAAM;uBAAC,2BAA2B;;sBAElC,KAAK;uBAAC,yBAAyB;;sBAG/B,KAAK;uBAAC,kCAAkC;;sBAGxC,YAAY;uBAAC,oCAAoC;;sBAEjD,SAAS;uBAAC,MAAM;;;AEtFnB;;;;;AAKG;AAIH;;;;;AAKG;MAKU,eAAe,CAAA;AAK1B,IAAA,WAAA,CACmB,QAAmB,EACnB,IAA6B,EAC9C,MAAc,EAAA;QAFG,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,IAAI,GAAJ,IAAI;QANf,IAAA,CAAA,QAAQ,GAAG,GAAG;QACd,IAAA,CAAA,WAAW,GAAmB,EAAE;AAQtC,QAAA,MAAM,CAAC,iBAAiB,CAAC,MAAK;AAC5B,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACpE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;AAEzC,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CACnB,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,MAAK;;gBAElD,IAAI,CAAC,mBAAmB,EAAE;AAC5B,YAAA,CAAC,CAAC,EACF,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,MAAK;;;gBAGpD,IAAI,CAAC,cAAc,EAAE;YACvB,CAAC,CAAC,CACH;AACH,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;AAC9B,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE;QAC1B;AAEA,QAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;AAC1B,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;IACtB;IAEQ,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC;IAChF;IAEQ,cAAc,GAAA;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC;IACpE;IAEQ,mBAAmB,GAAA;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa;QAEvD,IAAI,SAAS,IAAI,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC,YAAY,EAAE;YAChE,IAAI,CAAC,WAAW,EAAE;QACpB;aAAO;YACL,IAAI,CAAC,cAAc,EAAE;QACvB;IACF;+GArDW,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,aAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACvB,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;AClBD;;;;;AAKG;MAcU,wBAAwB,CAAA;+GAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAPzB,CAAA;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA;;4FAGU,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAVpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,IAAI,EAAE,EAAE,2BAA2B,EAAE,MAAM,EAAE;AAC7C,oBAAA,QAAQ,EAAE,CAAA;;;;AAIT,EAAA,CAAA;AACD,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;;AClBD;;;;;AAKG;AAWI,MAAM,uBAAuB,GAAgB,CAAC,WAAW,EAAE,eAAe,EAAE,wBAAwB;MAO9F,iBAAiB,CAAA;AAC5B,IAAA,WAAA,GAAA;AACE,QAAA,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC;IACxC;+GAHW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAjB,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,iBAAiB,iBAPuB,WAAW,EAAE,eAAe,EAAE,wBAAwB,aAG/F,YAAY,EAAE,kBAAkB,EAAE,UAAU,aAHH,WAAW,EAAE,eAAe,EAAE,wBAAwB,EAKtE,UAAU,CAAA,EAAA,CAAA,CAAA;AAElC,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,iBAAiB,EAAA,OAAA,EAAA,CAJlB,YAAY,EAAE,kBAAkB,EAAE,UAAU,CAAA,EAAA,CAAA,CAAA;;4FAI3C,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,UAAU,CAAC;oBACvD,YAAY,EAAE,CAAC,uBAAuB,CAAC;AACvC,oBAAA,OAAO,EAAE,CAAC,uBAAuB,EAAE,UAAU,CAAC;AAC/C,iBAAA;;;ACtBD;;;;;AAKG;MA2BU,eAAe,CAAA;AAmB1B,IAAA,WAAA,CACU,OAAgC,EAChC,aAA8C,EAC/C,aAAyC,EAAA;QAFxC,IAAA,CAAA,OAAO,GAAP,OAAO;QACP,IAAA,CAAA,aAAa,GAAb,aAAa;QACd,IAAA,CAAA,aAAa,GAAb,aAAa;AArBe,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,CAAU,KAAK,CAAC;QAE3C,IAAA,CAAA,aAAa,GAAG,KAAK;QAEpB,IAAA,CAAA,cAAc,GAAG,KAAK;QAC5B,IAAA,CAAA,QAAQ,GAAG,IAAI;QACX,IAAA,CAAA,YAAY,GAAG,KAAK;AACjB,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,YAAY,CAAU,KAAK,CAAC;QAE5E,IAAA,CAAA,SAAS,GAAG,KAAK;QACjB,IAAA,CAAA,OAAO,GAAG,KAAK;QAEf,IAAA,CAAA,SAAS,GAAG,OAAO;QAEnB,IAAA,CAAA,MAAM,GAAG,KAAK;QAEd,IAAA,CAAA,KAAK,GAAG,IAAI;IAMjB;AAEH,IAAA,IACI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,MAAM;IACpB;IACA,IAAI,KAAK,CAAC,IAAa,EAAA;AACrB,QAAA,IAAI,IAAI,KAAK,IAAI,CAAC,MAAM,EAAE;AACxB,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,YAAA,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,IAAI,CAAC,gBAAgB,EAAE;YACzB;QACF;IACF;AAEA,IAAA,IACI,IAAI,GAAA;QACN,OAAO,IAAI,CAAC,KAAK;IACnB;IAEA,IAAI,IAAI,CAAC,KAAa,EAAA;QACpB,IAAI,CAAC,KAAK,EAAE;YACV,KAAK,GAAG,IAAI;QACd;AACA,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK,EAAE;AACxB,YAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,YAAA,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,IAAI,CAAC,gBAAgB,EAAE;YACzB;QACF;IACF;AAEA,IAAA,IACI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS;IACvB;IAEA,IAAI,QAAQ,CAAC,QAAgB,EAAA;QAC3B,IAAI,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,SAAS,EAAE;AAC3C,YAAA,IAAI,CAAC,SAAS,GAAG,QAAQ;AACzB,YAAA,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,EAAE;AAC9B,gBAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,UAAU;YAC1C;AAAO,iBAAA,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;AACtC,gBAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,QAAQ;YACxC;QACF;IACF;AAEA,IAAA,IACI,MAAM,GAAA;QACR,OAAO,IAAI,CAAC,OAAO;IACrB;IAEA,IAAI,MAAM,CAAC,MAAe,EAAA;AACxB,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM;AACrB,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,gBAAgB,EAAE;QACzB;IACF;AAEA,IAAA,IACI,uBAAuB,GAAA;AACzB,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ;IACpC;IAEA,IAAI,uBAAuB,CAAC,QAAiB,EAAA;AAC3C,QAAA,IAAI,QAAQ,KAAK,SAAS,EAAE;AAC1B,YAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,QAAQ;QACxC;IACF;AAEA,IAAA,IACI,uBAAuB,GAAA;QACzB,OAAO,IAAI,CAAC,SAAS;IACvB;IAEA,IAAI,uBAAuB,CAAC,QAAiB,EAAA;AAC3C,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ;IAC3B;AAEA,IAAA,IACY,KAAK,GAAA;QACf,OAAO,IAAI,CAAC,MAAM;IACpB;IAEA,IAAY,KAAK,CAAC,KAAkB,EAAA;AAClC,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;QACnB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS;QAC7C,IAAI,CAAC,gBAAgB,EAAE;IACzB;AAEA,IAAA,IAAY,WAAW,GAAA;AACrB,QAAA,OAAQ,IAAI,CAAC,OAAO,CAAC,aAA6B,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,QAAQ,CAAC,IAAI;IACnG;AAEA,IAAA,IACY,sBAAsB,GAAA;AAChC,QAAA,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ;IACnC;IAEA,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,UAAU;AACxC,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC9B,YAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,GAAG,QAAQ;QACxC;IACF;IAEA,WAAW,GAAA;QACT,IAAI,CAAC,oBAAoB,EAAE;IAC7B;AAEA,IAAA,eAAe,CAAC,IAAa,EAAA;QAC3B,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,gBAAgB,EAAE;QACzB;aAAO;YACL,IAAI,CAAC,oBAAoB,EAAE;QAC7B;AACA,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;IAC5B;IAEA,IAAI,GAAA;AACF,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;IACnB;IAEA,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;IACpB;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM;IAC5B;AAGQ,IAAA,aAAa,CAAC,KAAY,EAAA;AAChC,QAAA,IACE,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC;YAC1D,IAAI,CAAC,KAAK,CAAC,KAAK;AAChB,YAAA,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAC5B;AACA,YAAA,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;QACpB;IACF;IAEQ,gBAAgB,GAAA;AACtB,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf;QACF;AACA,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,YAAA,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI;AAC3B,YAAA,IAAI,IAAI,CAAC,MAAM,EAAE;gBACf,IAAI,CAAC,mBAAmB,EAAE;YAC5B;QACF;aAAO;YACL,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,iBAAiB;YAC7C,IAAI,CAAC,oBAAoB,EAAE;QAC7B;IACF;IAEQ,oBAAoB,GAAA;AAC1B,QAAA,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,IAAG;AAC/C,YAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,IAAG;AACjC,gBAAA,IAAI,SAAS,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE;AACrD,oBAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;gBAClC;AACF,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;IACJ;IAEQ,mBAAmB,GAAA;QACzB,IAAI,CAAC,oBAAoB,EAAE;AAC3B,QAAA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA,yBAAA,EAA4B,IAAI,CAAC,QAAQ,CAAA,CAAA,EAAI,IAAI,CAAC,IAAI,CAAA,CAAE,CAAC;IAC1F;+GAlMW,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,+BAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,0BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,oBAAA,EAAA,CAAA,qCAAA,EAAA,sBAAA,CAAA,EAAA,aAAA,EAAA,CAAA,8BAAA,EAAA,eAAA,CAAA,EAAA,YAAA,EAAA,CAAA,6BAAA,EAAA,cAAA,CAAA,EAAA,cAAA,EAAA,CAAA,+BAAA,EAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,yBAAA,EAAA,UAAA,CAAA,EAAA,YAAA,EAAA,CAAA,6BAAA,EAAA,cAAA,CAAA,EAAA,KAAA,EAAA,CAAA,qBAAA,EAAA,OAAA,CAAA,EAAA,IAAA,EAAA,CAAA,qBAAA,EAAA,MAAA,CAAA,EAAA,QAAA,EAAA,CAAA,yBAAA,EAAA,UAAA,CAAA,EAAA,MAAA,EAAA,CAAA,uBAAA,EAAA,QAAA,CAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,2BAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,oBAAA,EAAA,uBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,yBAAA,EAAA,6BAAA,EAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAuGf,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvIxB,g8CAiCA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,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,WAAA,EAAA,IAAA,EAAAC,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,qBAAA,EAAA,iCAAA,EAAA,iBAAA,EAAA,2BAAA,EAAA,0BAAA,EAAA,yBAAA,EAAA,yBAAA,EAAA,kCAAA,CAAA,EAAA,OAAA,EAAA,CAAA,uBAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,eAAA,EAAA,QAAA,EAAA,aAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FDDa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAR3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,EAAA,IAAA,EAEvB;AACJ,wBAAA,oBAAoB,EAAE,MAAM;AAC7B,qBAAA,EAAA,UAAA,EACW,KAAK,EAAA,QAAA,EAAA,g8CAAA,EAAA;;sBAGhB,MAAM;uBAAC,2BAA2B;;sBAClC,KAAK;uBAAC,qCAAqC;;sBAC3C,KAAK;uBAAC,8BAA8B;;sBACpC,KAAK;uBAAC,6BAA6B;;sBACnC,KAAK;uBAAC,+BAA+B;;sBACrC,KAAK;uBAAC,yBAAyB;;sBAC/B,KAAK;uBAAC,6BAA6B;;sBACnC,MAAM;uBAAC,+BAA+B;;sBAiBtC,KAAK;uBAAC,qBAAqB;;sBAa3B,KAAK;uBAAC,qBAAqB;;sBAiB3B,KAAK;uBAAC,yBAAyB;;sBAgB/B,KAAK;uBAAC,uBAAuB;;sBAY7B;;sBAWA;;sBASA,SAAS;uBAAC,WAAW;;sBAerB,WAAW;uBAAC,yBAAyB;;sBAqCrC,YAAY;uBAAC,oBAAoB,EAAE,CAAC,QAAQ,CAAC;;;AE3LhD;;;;;AAKG;AAUI,MAAM,2BAA2B,GAAgB,CAAC,eAAe;MAO3D,qBAAqB,CAAA;+GAArB,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,EAAA,YAAA,EAAA,CAPuB,eAAe,CAAA,EAAA,OAAA,EAAA,CAG5D,YAAY,EAAE,kBAAkB,EAAE,UAAU,EAAE,iBAAiB,CAAA,EAAA,OAAA,EAAA,CAHlB,eAAe,EAK/B,iBAAiB,EAAE,UAAU,CAAA,EAAA,CAAA,CAAA;gHAEzD,qBAAqB,EAAA,OAAA,EAAA,CAJtB,YAAY,EAAE,kBAAkB,EAAE,UAAU,EAAE,iBAAiB,EAElC,iBAAiB,CAAA,EAAA,CAAA,CAAA;;4FAE7C,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,kBAAkB,EAAE,UAAU,EAAE,iBAAiB,CAAC;oBAC1E,YAAY,EAAE,CAAC,2BAA2B,CAAC;AAC3C,oBAAA,OAAO,EAAE,CAAC,2BAA2B,EAAE,iBAAiB,EAAE,UAAU,CAAC;AACtE,iBAAA;;;ACrBD;;;;;AAKG;;ACLH;;AAEG;;"}
|
|
1
|
+
{"version":3,"file":"hermes-ui-angular-modal.mjs","sources":["../../../modal/modal-stack.service.ts","../../../modal/modal-configuration.service.ts","../../../modal/modal.ts","../../../modal/modal.html","../../../modal/modal-body.ts","../../../modal/modal-host.component.ts","../../../modal/modal.module.ts","../../../modal/side-panel.ts","../../../modal/side-panel.html","../../../modal/side-panel.module.ts","../../../modal/index.ts","../../../modal/hermes-ui-angular-modal.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 { isPlatformBrowser } from '@angular/common';\r\nimport { Inject, Injectable, PLATFORM_ID } from '@angular/core';\r\nimport { Keys } from '@hermes-ui/angular/utils';\r\n\r\nexport interface Closable {\r\n close(): void;\r\n}\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class ModalStackService {\r\n private readonly modalStack: Closable[] = [];\r\n private readonly keyUpEventListener = this.onKeyUp.bind(this);\r\n\r\n constructor(@Inject(PLATFORM_ID) private readonly platformId: unknown) {}\r\n\r\n trackModalOpen(openedModal: Closable) {\r\n if (this.modalStack.includes(openedModal) === false) {\r\n this.modalStack.unshift(openedModal);\r\n }\r\n\r\n if (isPlatformBrowser(this.platformId)) {\r\n document.body.addEventListener('keyup', this.keyUpEventListener);\r\n }\r\n }\r\n\r\n trackModalClose(closedModal: Closable) {\r\n const closedModalIndex = this.modalStack.indexOf(closedModal);\r\n\r\n if (closedModalIndex > -1) {\r\n this.modalStack.splice(closedModalIndex, 1);\r\n }\r\n\r\n if (this.modalStack.length === 0 && isPlatformBrowser(this.platformId)) {\r\n document.body.removeEventListener('keyup', this.keyUpEventListener);\r\n }\r\n }\r\n\r\n private onKeyUp(event: KeyboardEvent) {\r\n if (this.modalStack.length && event.key === Keys.Escape) {\r\n // We blur the active element because escaping with an input element in focus could cause\r\n // an ExpressionChangedAfterItHasBeenCheckedError for the touched state. (CDE-1662)\r\n (document.activeElement as HTMLElement).blur();\r\n\r\n this.modalStack[0].close();\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\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class HermesModalConfigurationService {\r\n fadeMove = 'fadeDown';\r\n backdrop = true;\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 { animate, AnimationEvent, style, transition, trigger } from '@angular/animations';\r\nimport {\r\n Component,\r\n ContentChild,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n Input,\r\n OnChanges,\r\n OnDestroy,\r\n Output,\r\n SimpleChange,\r\n TemplateRef,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { HermesCommonStringsService, ScrollingService, uniqueIdFactory } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesModalConfigurationService } from './modal-configuration.service';\r\nimport { ModalStackService } from './modal-stack.service';\r\n\r\n@Component({\r\n selector: 'hermes-modal',\r\n viewProviders: [ScrollingService],\r\n templateUrl: './modal.html',\r\n styles: [\r\n `\r\n :host {\r\n display: none;\r\n }\r\n :host.open {\r\n display: inline;\r\n }\r\n `,\r\n ],\r\n animations: [\r\n trigger('fadeMove', [\r\n transition('* => fadeDown', [\r\n style({ opacity: 0, transform: 'translate(0, -25%)' }),\r\n animate('0.2s ease-in-out'),\r\n ]),\r\n transition('fadeDown => *', [\r\n animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, -25%)' })),\r\n ]),\r\n transition('* => fadeLeft', [style({ opacity: 0, transform: 'translate(25%, 0)' }), animate('0.2s ease-in-out')]),\r\n transition('fadeLeft => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(25%, 0)' }))]),\r\n transition('* => fadeUp', [style({ opacity: 0, transform: 'translate(0, 50%)' }), animate('0.2s ease-in-out')]),\r\n transition('fadeUp => *', [animate('0.2s ease-in-out', style({ opacity: 0, transform: 'translate(0, 50%)' }))]),\r\n ]),\r\n trigger('fade', [\r\n transition('void => *', [style({ opacity: 0 }), animate('0.2s ease-in-out', style({ opacity: 0.85 }))]),\r\n transition('* => void', [animate('0.2s ease-in-out', style({ opacity: 0 }))]),\r\n ]),\r\n ],\r\n standalone: false,\r\n})\r\nexport class HermesModal implements OnChanges, OnDestroy {\r\n modalId = uniqueIdFactory();\r\n @ViewChild('title') title: ElementRef<HTMLElement>;\r\n\r\n @Input('hermesModalOpen') @HostBinding('class.open') _open = false;\r\n @Output('hermesModalOpenChange') _openChanged = new EventEmitter<boolean>(false);\r\n\r\n @Input('hermesModalClosable') closable = true;\r\n @Input('hermesModalCloseButtonAriaLabel') closeButtonAriaLabel = this.commonStrings.keys.close;\r\n @Input('hermesModalSize') size = 'md';\r\n @Input('hermesModalStaticBackdrop') staticBackdrop = true;\r\n @Input('hermesModalSkipAnimation') skipAnimation = false;\r\n\r\n @Input('hermesModalPreventClose') stopClose = false;\r\n @Output('hermesModalAlternateClose') altClose = new EventEmitter<boolean>(false);\r\n\r\n @Input('hermesModalLabelledById') labelledBy: string;\r\n\r\n // presently this is only used by inline wizards\r\n @Input('hermesModalOverrideScrollService') bypassScrollService = false;\r\n\r\n // Provide raw modal content. This is used by the wizard so that the same template can be rendered with and without a modal.\r\n @ContentChild('hermesInternalModalContentTemplate') protected readonly modalContentTemplate: TemplateRef<any>;\r\n\r\n @ViewChild('body') private readonly bodyElementRef: ElementRef<HTMLElement>;\r\n\r\n constructor(\r\n private _scrollingService: ScrollingService,\r\n public commonStrings: HermesCommonStringsService,\r\n private modalStackService: ModalStackService,\r\n private configuration: HermesModalConfigurationService\r\n ) {}\r\n\r\n get fadeMove(): string {\r\n return this.skipAnimation ? '' : this.configuration.fadeMove;\r\n }\r\n set fadeMove(move: string) {\r\n this.configuration.fadeMove = move;\r\n }\r\n\r\n get backdrop(): boolean {\r\n return this.configuration.backdrop;\r\n }\r\n\r\n // Detect when _open is set to true and set no-scrolling to true\r\n ngOnChanges(changes: { [propName: string]: SimpleChange }): void {\r\n if (!this.bypassScrollService && changes && Object.prototype.hasOwnProperty.call(changes, '_open')) {\r\n if (changes._open.currentValue) {\r\n this._scrollingService.stopScrolling();\r\n this.modalStackService.trackModalOpen(this);\r\n } else {\r\n this._scrollingService.resumeScrolling();\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._scrollingService.resumeScrolling();\r\n }\r\n\r\n open(): void {\r\n if (this._open) {\r\n return;\r\n }\r\n this._open = true;\r\n this._openChanged.emit(true);\r\n this.modalStackService.trackModalOpen(this);\r\n }\r\n\r\n backdropClick(): void {\r\n if (this.staticBackdrop) {\r\n return;\r\n }\r\n\r\n this.close();\r\n }\r\n\r\n close(): void {\r\n if (this.stopClose) {\r\n this.altClose.emit(false);\r\n return;\r\n }\r\n if (!this.closable || !this._open) {\r\n return;\r\n }\r\n this._open = false;\r\n }\r\n\r\n fadeDone(e: AnimationEvent) {\r\n if (e.toState === 'void') {\r\n // TODO: Investigate if we can decouple from animation events\r\n this._openChanged.emit(false);\r\n this.modalStackService.trackModalClose(this);\r\n }\r\n }\r\n\r\n scrollTop() {\r\n this.bodyElementRef.nativeElement.scrollTo(0, 0);\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@if (_open) {\r\n<div class=\"modal\" [class.modal-full-screen]=\"size == 'full-screen'\">\r\n <!--fixme: revisit when ngClass works with exit animation-->\r\n <div\r\n cdkTrapFocus\r\n [cdkTrapFocusAutoCapture]=\"true\"\r\n [@fadeMove]=\"fadeMove\"\r\n (@fadeMove.done)=\"fadeDone($event)\"\r\n class=\"modal-dialog\"\r\n [class.modal-sm]=\"size == 'sm'\"\r\n [class.modal-lg]=\"size == 'lg'\"\r\n [class.modal-xl]=\"size == 'xl'\"\r\n role=\"dialog\"\r\n aria-modal=\"true\"\r\n [attr.aria-hidden]=\"!_open\"\r\n [attr.aria-labelledby]=\"labelledBy || modalId\"\r\n >\r\n <div class=\"hermes-sr-only\">{{commonStrings.keys.modalContentStart}}</div>\r\n <!-- This wizard is tightly coupled to the modal styles, so changes here could require changes in the wizard. -->\r\n @if (!modalContentTemplate) {\r\n <div class=\"modal-content-wrapper\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header--accessible\">\r\n <ng-content select=\".leading-button\"></ng-content>\r\n <div class=\"modal-title-wrapper\" #title [id]=\"modalId\" cdkFocusInitial tabindex=\"-1\">\r\n <ng-content select=\".modal-title\"></ng-content>\r\n </div>\r\n @if (closable) {\r\n <button\r\n type=\"button\"\r\n [attr.aria-label]=\"closeButtonAriaLabel || commonStrings.keys.close\"\r\n class=\"close\"\r\n (click)=\"close()\"\r\n >\r\n <hermes-icon shape=\"window-close\"></hermes-icon>\r\n </button>\r\n }\r\n </div>\r\n <div #body class=\"modal-body-wrapper\">\r\n <ng-content select=\".modal-body\"></ng-content>\r\n </div>\r\n <ng-content select=\".modal-footer\"></ng-content>\r\n </div>\r\n </div>\r\n } @else {\r\n <ng-template [ngTemplateOutlet]=\"modalContentTemplate\"></ng-template>\r\n }\r\n </div>\r\n <div class=\"hermes-sr-only\">{{commonStrings.keys.modalContentEnd}}</div>\r\n @if (backdrop) {\r\n <div\r\n [@fade]\r\n class=\"modal-backdrop\"\r\n [class.static]=\"staticBackdrop\"\r\n aria-hidden=\"true\"\r\n (click)=\"backdropClick()\"\r\n ></div>\r\n }\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\nimport { Directive, ElementRef, NgZone, OnDestroy, Renderer2 } from '@angular/core';\r\n\r\n/**\r\n * Allows modal overflow area to be scrollable via keyboard.\r\n * The modal body will focus with keyboard navigation only.\r\n * This allows inner focusable items to be focused without\r\n * the overflow scroll being focused.\r\n */\r\n@Directive({\r\n selector: '.modal-body',\r\n standalone: false,\r\n})\r\nexport class HermesModalBody implements OnDestroy {\r\n private tabindex = '0';\r\n private unlisteners: VoidFunction[] = [];\r\n private observer: ResizeObserver;\r\n\r\n constructor(\r\n private readonly renderer: Renderer2,\r\n private readonly host: ElementRef<HTMLElement>,\r\n ngZone: NgZone\r\n ) {\r\n ngZone.runOutsideAngular(() => {\r\n this.observer = new ResizeObserver(() => this.addOrRemoveTabIndex());\r\n this.observer.observe(host.nativeElement);\r\n\r\n this.unlisteners.push(\r\n renderer.listen(host.nativeElement, 'mouseup', () => {\r\n // set the tabindex binding back when click is completed with mouseup\r\n this.addOrRemoveTabIndex();\r\n }),\r\n renderer.listen(host.nativeElement, 'mousedown', () => {\r\n // tabindex = 0 binding should be removed\r\n // so it won't be focused when click starts with mousedown\r\n this.removeTabIndex();\r\n })\r\n );\r\n });\r\n }\r\n\r\n ngOnDestroy(): void {\r\n while (this.unlisteners.length) {\r\n this.unlisteners.pop()();\r\n }\r\n\r\n this.observer.disconnect();\r\n this.observer = null;\r\n }\r\n\r\n private addTabIndex() {\r\n this.renderer.setAttribute(this.host.nativeElement, 'tabindex', this.tabindex);\r\n }\r\n\r\n private removeTabIndex() {\r\n this.renderer.removeAttribute(this.host.nativeElement, 'tabindex');\r\n }\r\n\r\n private addOrRemoveTabIndex() {\r\n const modalBody = this.host.nativeElement.parentElement;\r\n\r\n if (modalBody && modalBody.clientHeight < modalBody.scrollHeight) {\r\n this.addTabIndex();\r\n } else {\r\n this.removeTabIndex();\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 { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: '[hermesModalHost]',\r\n host: { '[class.hermes-modal-host]': 'true' },\r\n template: `\r\n <div class=\"hermes-modal-host-scrollable\">\r\n <ng-content></ng-content>\r\n </div>\r\n `,\r\n standalone: false,\r\n})\r\nexport class HermesModalHostComponent {}\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, Type } from '@angular/core';\r\nimport { ClarityIcons, HermesIcon, windowCloseIcon } from '@hermes-ui/angular/icon';\r\nimport { CdkTrapFocusModule } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesModal } from './modal';\r\nimport { HermesModalBody } from './modal-body';\r\nimport { HermesModalHostComponent } from './modal-host.component';\r\n\r\nexport const HERMES_MODAL_DIRECTIVES: Type<any>[] = [HermesModal, HermesModalBody, HermesModalHostComponent];\r\n\r\n@NgModule({\r\n imports: [CommonModule, CdkTrapFocusModule, HermesIcon],\r\n declarations: [HERMES_MODAL_DIRECTIVES],\r\n exports: [HERMES_MODAL_DIRECTIVES, HermesIcon],\r\n})\r\nexport class HermesModalModule {\r\n constructor() {\r\n ClarityIcons.addIcons(windowCloseIcon);\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 Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostBinding,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { HermesCommonStringsService } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesModal } from './modal';\r\nimport { HermesModalConfigurationService } from './modal-configuration.service';\r\n\r\n@Component({\r\n selector: 'hermes-side-panel',\r\n templateUrl: 'side-panel.html',\r\n host: {\r\n '[class.side-panel]': 'true',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSidePanel implements OnInit, OnDestroy {\r\n @Output('hermesSidePanelOpenChange') openChange = new EventEmitter<boolean>(false);\r\n @Input('hermesSidePanelCloseButtonAriaLabel') closeButtonAriaLabel: string | undefined;\r\n @Input('hermesSidePanelSkipAnimation') skipAnimation = false;\r\n @Input('hermesSidePanelLabelledById') labelledById: string;\r\n @Input('hermesSidePanelStaticBackdrop') staticBackdrop = false;\r\n @Input('hermesSidePanelClosable') closable = true;\r\n @Input('hermesSidePanelPreventClose') preventClose = false;\r\n @Output('hermesSidePanelAlternateClose') altClose = new EventEmitter<boolean>(false);\r\n\r\n private _pinnable = false;\r\n private _pinned = false;\r\n private originalStopClose: boolean;\r\n private _position = 'right';\r\n private _modal: HermesModal;\r\n private __open = false;\r\n\r\n private _size = 'md';\r\n\r\n constructor(\r\n private element: ElementRef<HTMLElement>,\r\n private configuration: HermesModalConfigurationService,\r\n public commonStrings: HermesCommonStringsService\r\n ) {}\r\n\r\n @Input('hermesSidePanelOpen')\r\n get _open(): boolean {\r\n return this.__open;\r\n }\r\n set _open(open: boolean) {\r\n if (open !== this.__open) {\r\n this.__open = open;\r\n if (this.pinned) {\r\n this.updateModalState();\r\n }\r\n }\r\n }\r\n\r\n @Input('hermesSidePanelSize')\r\n get size(): string {\r\n return this._size;\r\n }\r\n\r\n set size(value: string) {\r\n if (!value) {\r\n value = 'md';\r\n }\r\n if (this._size !== value) {\r\n this._size = value;\r\n if (this.pinned) {\r\n this.updateModalState();\r\n }\r\n }\r\n }\r\n\r\n @Input('hermesSidePanelPosition')\r\n get position(): string {\r\n return this._position;\r\n }\r\n\r\n set position(position: string) {\r\n if (position && position !== this._position) {\r\n this._position = position;\r\n if (this._position === 'right') {\r\n this.configuration.fadeMove = 'fadeLeft';\r\n } else if (this._position === 'bottom') {\r\n this.configuration.fadeMove = 'fadeUp';\r\n }\r\n }\r\n }\r\n\r\n @Input('hermesSidePanelPinned')\r\n get pinned(): boolean {\r\n return this._pinned;\r\n }\r\n\r\n set pinned(pinned: boolean) {\r\n this._pinned = pinned;\r\n if (this.modal) {\r\n this.updateModalState();\r\n }\r\n }\r\n\r\n @Input()\r\n get hermesSidePanelBackdrop(): boolean {\r\n return this.configuration.backdrop;\r\n }\r\n\r\n set hermesSidePanelBackdrop(backdrop: boolean) {\r\n if (backdrop !== undefined) {\r\n this.configuration.backdrop = backdrop;\r\n }\r\n }\r\n\r\n @Input()\r\n get hermesSidePanelPinnable(): boolean {\r\n return this._pinnable;\r\n }\r\n\r\n set hermesSidePanelPinnable(pinnable: boolean) {\r\n this._pinnable = pinnable;\r\n }\r\n\r\n @ViewChild(HermesModal)\r\n private get modal(): HermesModal {\r\n return this._modal;\r\n }\r\n\r\n private set modal(modal: HermesModal) {\r\n this._modal = modal;\r\n this.originalStopClose = this.modal.stopClose;\r\n this.updateModalState();\r\n }\r\n\r\n private get hostElement(): HTMLElement {\r\n return (this.element.nativeElement as HTMLElement).closest('.hermes-modal-host') || document.body;\r\n }\r\n\r\n @HostBinding('class.side-panel-bottom')\r\n private get bottomPositionCssClass() {\r\n return this.position === 'bottom';\r\n }\r\n\r\n ngOnInit(): void {\r\n this.configuration.fadeMove = 'fadeLeft';\r\n if (this.position === 'bottom') {\r\n this.configuration.fadeMove = 'fadeUp';\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.cleanupPinnedClasses();\r\n }\r\n\r\n handleModalOpen(open: boolean) {\r\n if (open) {\r\n this.updateModalState();\r\n } else {\r\n this.cleanupPinnedClasses();\r\n }\r\n this.openChange.emit(open);\r\n }\r\n\r\n open() {\r\n this.modal.open();\r\n }\r\n\r\n close() {\r\n this.modal.close();\r\n }\r\n\r\n togglePinned() {\r\n this.pinned = !this.pinned;\r\n }\r\n\r\n @HostListener('document:pointerup', ['$event'])\r\n private documentClick(event: Event) {\r\n if (\r\n !this.element.nativeElement.contains(event.target as Node) &&\r\n this.modal._open &&\r\n !this.configuration.backdrop\r\n ) {\r\n this.modal.close();\r\n }\r\n }\r\n\r\n private updateModalState() {\r\n if (!this.modal) {\r\n return;\r\n }\r\n if (this.pinned) {\r\n this.modal.stopClose = true;\r\n if (this.__open) {\r\n this.updatePinnedClasses();\r\n }\r\n } else {\r\n this.modal.stopClose = this.originalStopClose;\r\n this.cleanupPinnedClasses();\r\n }\r\n }\r\n\r\n private cleanupPinnedClasses() {\r\n [this.hostElement, document.body].forEach(host => {\r\n host.classList.forEach(className => {\r\n if (className.startsWith('hermes-side-panel-pinned-')) {\r\n host.classList.remove(className);\r\n }\r\n });\r\n });\r\n }\r\n\r\n private updatePinnedClasses() {\r\n this.cleanupPinnedClasses();\r\n this.hostElement.classList.add(`hermes-side-panel-pinned-${this.position}-${this.size}`);\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<hermes-modal\r\n [hermesModalOpen]=\"_open\"\r\n (hermesModalOpenChange)=\"handleModalOpen($event)\"\r\n [hermesModalCloseButtonAriaLabel]=\"closeButtonAriaLabel\"\r\n [hermesModalSize]=\"size\"\r\n [hermesModalSkipAnimation]=\"skipAnimation\"\r\n [hermesModalStaticBackdrop]=\"staticBackdrop\"\r\n [hermesModalLabelledById]=\"labelledById\"\r\n [hermesModalPreventClose]=\"preventClose\"\r\n [hermesModalClosable]=\"closable\"\r\n (hermesModalAlternateClose)=\"altClose.emit($event)\"\r\n [hermesModalOverrideScrollService]=\"true\"\r\n>\r\n @if (hermesSidePanelPinnable) {\r\n <button\r\n type=\"button\"\r\n [attr.aria-label]=\"commonStrings.keys.sidePanelPin\"\r\n class=\"leading-button pinnable\"\r\n (click)=\"togglePinned()\"\r\n >\r\n <hermes-icon [shape]=\"pinned ? 'unpin' : 'pin'\"></hermes-icon>\r\n </button>\r\n }\r\n <div class=\"modal-title\"><ng-content select=\".side-panel-title\"></ng-content></div>\r\n <div class=\"modal-body\"><ng-content select=\".side-panel-body\"></ng-content></div>\r\n <div class=\"modal-footer\"><ng-content select=\".side-panel-footer\"></ng-content></div>\r\n</hermes-modal>\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, Type } from '@angular/core';\r\nimport { HermesIcon } from '@hermes-ui/angular/icon';\r\nimport { CdkTrapFocusModule } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesModalModule } from './modal.module';\r\nimport { HermesSidePanel } from './side-panel';\r\n\r\nexport const HERMES_SIDEPANEL_DIRECTIVES: Type<any>[] = [HermesSidePanel];\r\n\r\n@NgModule({\r\n imports: [CommonModule, CdkTrapFocusModule, HermesIcon, HermesModalModule],\r\n declarations: [HERMES_SIDEPANEL_DIRECTIVES],\r\n exports: [HERMES_SIDEPANEL_DIRECTIVES, HermesModalModule, HermesIcon],\r\n})\r\nexport class HermesSidePanelModule {}\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 './modal';\r\nexport * from './modal.module';\r\nexport * from './modal-configuration.service';\r\nexport * from './modal-host.component';\r\nexport * from './side-panel.module';\r\nexport * from './modal-body';\r\nexport * from './side-panel';\r\nexport * from './modal-stack.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.ModalStackService","i3.HermesModalConfigurationService","i1.HermesModalConfigurationService","i2","i3","i4.HermesModal","i5.HermesModalBody"],"mappings":"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"}
|