@hermes-ui/angular 0.1.7 → 0.2.0

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.
Files changed (108) hide show
  1. package/README.md +6 -6
  2. package/button/_buttons.clarity.scss +80 -2
  3. package/button/_mixins.buttons.scss +44 -2
  4. package/button/_properties.buttons.scss +209 -247
  5. package/button/_variables.buttons.scss +22 -0
  6. package/fesm2022/hermes-ui-angular-accordion.mjs +2 -2
  7. package/fesm2022/hermes-ui-angular-accordion.mjs.map +1 -1
  8. package/fesm2022/hermes-ui-angular-addons-card-container.mjs +3 -3
  9. package/fesm2022/hermes-ui-angular-addons-card-container.mjs.map +1 -1
  10. package/fesm2022/hermes-ui-angular-addons-certificate-viewer.mjs +2 -2
  11. package/fesm2022/hermes-ui-angular-addons-certificate-viewer.mjs.map +1 -1
  12. package/fesm2022/hermes-ui-angular-addons-datagrid-filters.mjs +2 -2
  13. package/fesm2022/hermes-ui-angular-addons-datagrid-filters.mjs.map +1 -1
  14. package/fesm2022/hermes-ui-angular-addons-datagrid.mjs +2 -2
  15. package/fesm2022/hermes-ui-angular-addons-datagrid.mjs.map +1 -1
  16. package/fesm2022/hermes-ui-angular-addons-property-view.mjs +2 -2
  17. package/fesm2022/hermes-ui-angular-addons-property-view.mjs.map +1 -1
  18. package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs +66 -66
  19. package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs.map +1 -1
  20. package/fesm2022/hermes-ui-angular-addons-var.mjs +2 -2
  21. package/fesm2022/hermes-ui-angular-addons-var.mjs.map +1 -1
  22. package/fesm2022/hermes-ui-angular-addons-wizard.mjs +2 -2
  23. package/fesm2022/hermes-ui-angular-addons-wizard.mjs.map +1 -1
  24. package/fesm2022/hermes-ui-angular-button.mjs +2 -2
  25. package/fesm2022/hermes-ui-angular-button.mjs.map +1 -1
  26. package/fesm2022/hermes-ui-angular-data-datagrid.mjs +2 -2
  27. package/fesm2022/hermes-ui-angular-data-datagrid.mjs.map +1 -1
  28. package/fesm2022/hermes-ui-angular-data-stack-view.mjs +2 -2
  29. package/fesm2022/hermes-ui-angular-data-stack-view.mjs.map +1 -1
  30. package/fesm2022/hermes-ui-angular-data-tree-view.mjs +2 -2
  31. package/fesm2022/hermes-ui-angular-data-tree-view.mjs.map +1 -1
  32. package/fesm2022/hermes-ui-angular-emphasis-alert.mjs +2 -2
  33. package/fesm2022/hermes-ui-angular-emphasis-alert.mjs.map +1 -1
  34. package/fesm2022/hermes-ui-angular-forms-checkbox.mjs +2 -2
  35. package/fesm2022/hermes-ui-angular-forms-checkbox.mjs.map +1 -1
  36. package/fesm2022/hermes-ui-angular-forms-combobox.mjs +2 -2
  37. package/fesm2022/hermes-ui-angular-forms-combobox.mjs.map +1 -1
  38. package/fesm2022/hermes-ui-angular-forms-common.mjs +2 -2
  39. package/fesm2022/hermes-ui-angular-forms-common.mjs.map +1 -1
  40. package/fesm2022/hermes-ui-angular-forms-datalist.mjs +2 -2
  41. package/fesm2022/hermes-ui-angular-forms-datalist.mjs.map +1 -1
  42. package/fesm2022/hermes-ui-angular-forms-datepicker.mjs +3 -3
  43. package/fesm2022/hermes-ui-angular-forms-datepicker.mjs.map +1 -1
  44. package/fesm2022/hermes-ui-angular-forms-file-input.mjs +2 -2
  45. package/fesm2022/hermes-ui-angular-forms-file-input.mjs.map +1 -1
  46. package/fesm2022/hermes-ui-angular-forms-input.mjs +2 -2
  47. package/fesm2022/hermes-ui-angular-forms-input.mjs.map +1 -1
  48. package/fesm2022/hermes-ui-angular-forms-native-select.mjs +2 -2
  49. package/fesm2022/hermes-ui-angular-forms-native-select.mjs.map +1 -1
  50. package/fesm2022/hermes-ui-angular-forms-number-input.mjs +2 -2
  51. package/fesm2022/hermes-ui-angular-forms-number-input.mjs.map +1 -1
  52. package/fesm2022/hermes-ui-angular-forms-password.mjs +2 -2
  53. package/fesm2022/hermes-ui-angular-forms-password.mjs.map +1 -1
  54. package/fesm2022/hermes-ui-angular-forms-radio.mjs +2 -2
  55. package/fesm2022/hermes-ui-angular-forms-radio.mjs.map +1 -1
  56. package/fesm2022/hermes-ui-angular-forms-range.mjs +2 -2
  57. package/fesm2022/hermes-ui-angular-forms-range.mjs.map +1 -1
  58. package/fesm2022/hermes-ui-angular-forms-select.mjs +2 -2
  59. package/fesm2022/hermes-ui-angular-forms-select.mjs.map +1 -1
  60. package/fesm2022/hermes-ui-angular-forms-textarea.mjs +2 -2
  61. package/fesm2022/hermes-ui-angular-forms-textarea.mjs.map +1 -1
  62. package/fesm2022/hermes-ui-angular-icon.mjs +29 -29
  63. package/fesm2022/hermes-ui-angular-icon.mjs.map +1 -1
  64. package/fesm2022/hermes-ui-angular-layout-nav.mjs +2 -2
  65. package/fesm2022/hermes-ui-angular-layout-nav.mjs.map +1 -1
  66. package/fesm2022/hermes-ui-angular-layout-tabs.mjs +2 -2
  67. package/fesm2022/hermes-ui-angular-layout-tabs.mjs.map +1 -1
  68. package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs +382 -28
  69. package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs.map +1 -1
  70. package/fesm2022/hermes-ui-angular-modal.mjs +2 -2
  71. package/fesm2022/hermes-ui-angular-modal.mjs.map +1 -1
  72. package/fesm2022/hermes-ui-angular-popover-signpost.mjs +2 -2
  73. package/fesm2022/hermes-ui-angular-popover-signpost.mjs.map +1 -1
  74. package/fesm2022/hermes-ui-angular-stepper.mjs +2 -2
  75. package/fesm2022/hermes-ui-angular-stepper.mjs.map +1 -1
  76. package/fesm2022/hermes-ui-angular-timeline.mjs +2 -2
  77. package/fesm2022/hermes-ui-angular-timeline.mjs.map +1 -1
  78. package/fesm2022/hermes-ui-angular-toast.mjs +2 -2
  79. package/fesm2022/hermes-ui-angular-toast.mjs.map +1 -1
  80. package/fesm2022/hermes-ui-angular-utils.mjs +6 -0
  81. package/fesm2022/hermes-ui-angular-utils.mjs.map +1 -1
  82. package/fesm2022/hermes-ui-angular-wizard.mjs +2 -2
  83. package/fesm2022/hermes-ui-angular-wizard.mjs.map +1 -1
  84. package/forms/combobox/_combobox.clarity.scss +18 -4
  85. package/forms/combobox/_properties.combobox.scss +5 -5
  86. package/forms/styles/_input-group.clarity.scss +7 -0
  87. package/forms/styles/_mixins.forms.scss +12 -10
  88. package/forms/styles/_native-select.clarity.scss +17 -5
  89. package/forms/styles/_properties.forms.scss +29 -18
  90. package/forms/styles/_textarea.clarity.scss +4 -4
  91. package/forms/styles/_variables.forms.scss +6 -0
  92. package/layout/main-container/_properties.header.scss +44 -6
  93. package/layout/main-container/_variables.header.scss +11 -0
  94. package/layout/nav/_header.clarity.scss +14 -0
  95. package/layout/nav/_mixins.header.scss +55 -40
  96. package/layout/nav/_responsive-nav.clarity.scss +21 -10
  97. package/layout/vertical-nav/_properties.vertical-nav.scss +77 -27
  98. package/layout/vertical-nav/_variables.vertical-nav.scss +23 -0
  99. package/layout/vertical-nav/_vertical-nav.clarity.scss +418 -277
  100. package/package.json +1 -1
  101. package/types/hermes-ui-angular-addons-theme-builder.d.ts +2 -2
  102. package/types/hermes-ui-angular-addons-theme-builder.d.ts.map +1 -1
  103. package/types/hermes-ui-angular-icon.d.ts +3 -3
  104. package/types/hermes-ui-angular-icon.d.ts.map +1 -1
  105. package/types/hermes-ui-angular-layout-vertical-nav.d.ts +134 -10
  106. package/types/hermes-ui-angular-layout-vertical-nav.d.ts.map +1 -1
  107. package/types/hermes-ui-angular-utils.d.ts +12 -0
  108. package/types/hermes-ui-angular-utils.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-ui-angular-forms-password.mjs","sources":["../../../forms/password/password-container.ts","../../../forms/password/password.ts","../../../forms/password/password.module.ts","../../../forms/password/index.ts","../../../forms/password/hermes-ui-angular-forms-password.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, Inject, InjectionToken, Input, Optional } from '@angular/core';\r\nimport {\r\n HermesAbstractContainer,\r\n ControlClassService,\r\n ControlIdService,\r\n FormsFocusService,\r\n LayoutService,\r\n NgControlService,\r\n} from '@hermes-ui/angular/forms/common';\r\nimport { HermesCommonStringsService } from '@hermes-ui/angular/utils';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nexport const TOGGLE_SERVICE = new InjectionToken<BehaviorSubject<boolean>>(undefined);\r\nexport function ToggleServiceFactory() {\r\n return new BehaviorSubject<boolean>(false);\r\n}\r\nexport const TOGGLE_SERVICE_PROVIDER = { provide: TOGGLE_SERVICE, useFactory: ToggleServiceFactory };\r\n\r\n@Component({\r\n selector: 'hermes-password-container',\r\n template: `\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label && addGrid()) {\r\n <label></label>\r\n }\r\n <div class=\"hermes-control-container\" [ngClass]=\"controlClass()\">\r\n <div class=\"hermes-input-wrapper\">\r\n <div class=\"hermes-input-group\" [class.hermes-focus]=\"focus\">\r\n <ng-content select=\"[hermesPassword]\"></ng-content>\r\n @if (hermesToggle) {\r\n <button (click)=\"toggle()\" [disabled]=\"control?.disabled\" class=\"hermes-input-group-icon-action\" type=\"button\">\r\n <hermes-icon class=\"hermes-password-eye-icon\" [shape]=\"show ? 'eye-hide' : 'eye'\"></hermes-icon>\r\n <span class=\"hermes-sr-only\">\r\n {{ show ? hidePasswordText(label?.labelText) : showPasswordText(label?.labelText) }}\r\n </span>\r\n </button>\r\n }\r\n </div>\r\n </div>\r\n @if (showHelper) {\r\n <ng-content select=\"hermes-control-helper\"></ng-content>\r\n }\r\n @if (showInvalid) {\r\n <ng-content select=\"hermes-control-error\"></ng-content>\r\n }\r\n @if (showValid) {\r\n <ng-content select=\"hermes-control-success\"></ng-content>\r\n }\r\n </div>\r\n `,\r\n host: {\r\n '[class.hermes-form-control]': 'true',\r\n '[class.hermes-form-control-disabled]': 'control?.disabled',\r\n '[class.hermes-row]': 'addGrid()',\r\n },\r\n providers: [NgControlService, ControlIdService, ControlClassService, FormsFocusService, TOGGLE_SERVICE_PROVIDER],\r\n standalone: false,\r\n})\r\nexport class HermesPasswordContainer extends HermesAbstractContainer {\r\n show = false;\r\n focus = false;\r\n\r\n private _toggle = true;\r\n\r\n constructor(\r\n @Optional() layoutService: LayoutService,\r\n controlClassService: ControlClassService,\r\n ngControlService: NgControlService,\r\n public focusService: FormsFocusService,\r\n @Inject(TOGGLE_SERVICE) private toggleService: BehaviorSubject<boolean>,\r\n public commonStrings: HermesCommonStringsService\r\n ) {\r\n super(layoutService, controlClassService, ngControlService);\r\n\r\n /* The unsubscribe is handle inside the HermesAbstractContainer */\r\n this.subscriptions.push(\r\n focusService.focusChange.subscribe(state => {\r\n this.focus = state;\r\n })\r\n );\r\n }\r\n\r\n @Input('hermesToggle')\r\n get hermesToggle() {\r\n return this._toggle;\r\n }\r\n set hermesToggle(state: boolean) {\r\n this._toggle = state;\r\n if (!state) {\r\n this.show = false;\r\n }\r\n }\r\n\r\n toggle() {\r\n this.show = !this.show;\r\n this.toggleService.next(this.show);\r\n }\r\n\r\n showPasswordText(label: string) {\r\n return this.commonStrings.parse(this.commonStrings.keys.passwordShow, { LABEL: label });\r\n }\r\n\r\n hidePasswordText(label: string) {\r\n return this.commonStrings.parse(this.commonStrings.keys.passwordHide, { LABEL: label });\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 Directive,\r\n ElementRef,\r\n HostListener,\r\n Inject,\r\n Injector,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Renderer2,\r\n Self,\r\n ViewContainerRef,\r\n} from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\nimport { FormsFocusService, WrappedFormControl } from '@hermes-ui/angular/forms/common';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport { HermesPasswordContainer, TOGGLE_SERVICE } from './password-container';\r\n\r\n@Directive({\r\n selector: '[hermesPassword]',\r\n host: { '[class.hermes-input]': 'true' },\r\n standalone: false,\r\n})\r\nexport class HermesPassword extends WrappedFormControl<HermesPasswordContainer> implements OnInit, OnDestroy {\r\n protected override index = 1;\r\n\r\n constructor(\r\n vcr: ViewContainerRef,\r\n injector: Injector,\r\n @Self()\r\n @Optional()\r\n control: NgControl,\r\n renderer: Renderer2,\r\n el: ElementRef<HTMLInputElement>,\r\n @Optional() private focusService: FormsFocusService,\r\n @Optional()\r\n @Inject(TOGGLE_SERVICE)\r\n toggleService: BehaviorSubject<boolean>\r\n ) {\r\n super(vcr, HermesPasswordContainer, injector, control, renderer, el);\r\n\r\n if (!focusService) {\r\n throw new Error('hermesPassword requires being wrapped in <hermes-password-container>');\r\n }\r\n\r\n this.subscriptions.push(\r\n toggleService.subscribe(toggle => {\r\n renderer.setProperty(el.nativeElement, 'type', toggle ? 'text' : 'password');\r\n })\r\n );\r\n }\r\n\r\n @HostListener('focus')\r\n triggerFocus() {\r\n if (this.focusService) {\r\n this.focusService.focused = true;\r\n }\r\n }\r\n\r\n override triggerValidation() {\r\n super.triggerValidation();\r\n if (this.focusService) {\r\n this.focusService.focused = false;\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 { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HermesCommonFormsModule } from '@hermes-ui/angular/forms/common';\r\nimport { ClarityIcons, HermesIcon, errorStandardIcon, eyeHideIcon, eyeIcon, successStandardIcon } from '@hermes-ui/angular/icon';\r\n\r\nimport { HermesPassword } from './password';\r\nimport { HermesPasswordContainer } from './password-container';\r\n\r\n@NgModule({\r\n imports: [CommonModule, FormsModule, HermesIcon, HermesCommonFormsModule],\r\n declarations: [HermesPassword, HermesPasswordContainer],\r\n exports: [HermesCommonFormsModule, HermesPassword, HermesPasswordContainer],\r\n})\r\nexport class HermesPasswordModule {\r\n constructor() {\r\n ClarityIcons.addIcons(eyeHideIcon, eyeIcon, successStandardIcon, errorStandardIcon);\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 './password';\r\nexport * from './password-container';\r\nexport * from './password.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hermes-ui-angular-forms-password.mjs","sources":["../../../forms/password/password-container.ts","../../../forms/password/password.ts","../../../forms/password/password.module.ts","../../../forms/password/index.ts","../../../forms/password/hermes-ui-angular-forms-password.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, Inject, InjectionToken, Input, Optional } from '@angular/core';\r\nimport {\r\n HermesAbstractContainer,\r\n ControlClassService,\r\n ControlIdService,\r\n FormsFocusService,\r\n LayoutService,\r\n NgControlService,\r\n} from '@hermes-ui/angular/forms/common';\r\nimport { HermesCommonStringsService } from '@hermes-ui/angular/utils';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nexport const TOGGLE_SERVICE = new InjectionToken<BehaviorSubject<boolean>>(undefined);\r\nexport function ToggleServiceFactory() {\r\n return new BehaviorSubject<boolean>(false);\r\n}\r\nexport const TOGGLE_SERVICE_PROVIDER = { provide: TOGGLE_SERVICE, useFactory: ToggleServiceFactory };\r\n\r\n@Component({\r\n selector: 'hermes-password-container',\r\n template: `\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label && addGrid()) {\r\n <label></label>\r\n }\r\n <div class=\"hermes-control-container\" [ngClass]=\"controlClass()\">\r\n <div class=\"hermes-input-wrapper\">\r\n <div class=\"hermes-input-group\" [class.hermes-focus]=\"focus\">\r\n <ng-content select=\"[hermesPassword]\"></ng-content>\r\n @if (hermesToggle) {\r\n <button (click)=\"toggle()\" [disabled]=\"control?.disabled\" class=\"hermes-input-group-icon-action\" type=\"button\">\r\n <hermes-icon class=\"hermes-password-eye-icon\" [shape]=\"show ? 'eye-hide' : 'eye'\"></hermes-icon>\r\n <span class=\"hermes-sr-only\">\r\n {{ show ? hidePasswordText(label?.labelText) : showPasswordText(label?.labelText) }}\r\n </span>\r\n </button>\r\n }\r\n </div>\r\n </div>\r\n @if (showHelper) {\r\n <ng-content select=\"hermes-control-helper\"></ng-content>\r\n }\r\n @if (showInvalid) {\r\n <ng-content select=\"hermes-control-error\"></ng-content>\r\n }\r\n @if (showValid) {\r\n <ng-content select=\"hermes-control-success\"></ng-content>\r\n }\r\n </div>\r\n `,\r\n host: {\r\n '[class.hermes-form-control]': 'true',\r\n '[class.hermes-form-control-disabled]': 'control?.disabled',\r\n '[class.hermes-row]': 'addGrid()',\r\n },\r\n providers: [NgControlService, ControlIdService, ControlClassService, FormsFocusService, TOGGLE_SERVICE_PROVIDER],\r\n standalone: false,\r\n})\r\nexport class HermesPasswordContainer extends HermesAbstractContainer {\r\n show = false;\r\n focus = false;\r\n\r\n private _toggle = true;\r\n\r\n constructor(\r\n @Optional() layoutService: LayoutService,\r\n controlClassService: ControlClassService,\r\n ngControlService: NgControlService,\r\n public focusService: FormsFocusService,\r\n @Inject(TOGGLE_SERVICE) private toggleService: BehaviorSubject<boolean>,\r\n public commonStrings: HermesCommonStringsService\r\n ) {\r\n super(layoutService, controlClassService, ngControlService);\r\n\r\n /* The unsubscribe is handle inside the HermesAbstractContainer */\r\n this.subscriptions.push(\r\n focusService.focusChange.subscribe(state => {\r\n this.focus = state;\r\n })\r\n );\r\n }\r\n\r\n @Input('hermesToggle')\r\n get hermesToggle() {\r\n return this._toggle;\r\n }\r\n set hermesToggle(state: boolean) {\r\n this._toggle = state;\r\n if (!state) {\r\n this.show = false;\r\n }\r\n }\r\n\r\n toggle() {\r\n this.show = !this.show;\r\n this.toggleService.next(this.show);\r\n }\r\n\r\n showPasswordText(label: string) {\r\n return this.commonStrings.parse(this.commonStrings.keys.passwordShow, { LABEL: label });\r\n }\r\n\r\n hidePasswordText(label: string) {\r\n return this.commonStrings.parse(this.commonStrings.keys.passwordHide, { LABEL: label });\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 Directive,\r\n ElementRef,\r\n HostListener,\r\n Inject,\r\n Injector,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Renderer2,\r\n Self,\r\n ViewContainerRef,\r\n} from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\nimport { FormsFocusService, WrappedFormControl } from '@hermes-ui/angular/forms/common';\r\nimport { BehaviorSubject } from 'rxjs';\r\n\r\nimport { HermesPasswordContainer, TOGGLE_SERVICE } from './password-container';\r\n\r\n@Directive({\r\n selector: '[hermesPassword]',\r\n host: { '[class.hermes-input]': 'true' },\r\n standalone: false,\r\n})\r\nexport class HermesPassword extends WrappedFormControl<HermesPasswordContainer> implements OnInit, OnDestroy {\r\n protected override index = 1;\r\n\r\n constructor(\r\n vcr: ViewContainerRef,\r\n injector: Injector,\r\n @Self()\r\n @Optional()\r\n control: NgControl,\r\n renderer: Renderer2,\r\n el: ElementRef<HTMLInputElement>,\r\n @Optional() private focusService: FormsFocusService,\r\n @Optional()\r\n @Inject(TOGGLE_SERVICE)\r\n toggleService: BehaviorSubject<boolean>\r\n ) {\r\n super(vcr, HermesPasswordContainer, injector, control, renderer, el);\r\n\r\n if (!focusService) {\r\n throw new Error('hermesPassword requires being wrapped in <hermes-password-container>');\r\n }\r\n\r\n this.subscriptions.push(\r\n toggleService.subscribe(toggle => {\r\n renderer.setProperty(el.nativeElement, 'type', toggle ? 'text' : 'password');\r\n })\r\n );\r\n }\r\n\r\n @HostListener('focus')\r\n triggerFocus() {\r\n if (this.focusService) {\r\n this.focusService.focused = true;\r\n }\r\n }\r\n\r\n override triggerValidation() {\r\n super.triggerValidation();\r\n if (this.focusService) {\r\n this.focusService.focused = false;\r\n }\r\n }\r\n}\r\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { HermesCommonFormsModule } from '@hermes-ui/angular/forms/common';\nimport { HermesIcons, HermesIcon, errorStandardIcon, eyeHideIcon, eyeIcon, successStandardIcon } from '@hermes-ui/angular/icon';\n\nimport { HermesPassword } from './password';\nimport { HermesPasswordContainer } from './password-container';\n\n@NgModule({\n imports: [CommonModule, FormsModule, HermesIcon, HermesCommonFormsModule],\n declarations: [HermesPassword, HermesPasswordContainer],\n exports: [HermesCommonFormsModule, HermesPassword, HermesPasswordContainer],\n})\nexport class HermesPasswordModule {\n constructor() {\n HermesIcons.addIcons(eyeHideIcon, eyeIcon, successStandardIcon, errorStandardIcon);\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 './password';\r\nexport * from './password-container';\r\nexport * from './password.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import * as i1$1 from '@angular/forms';
6
6
  import { uniqueIdFactory, HermesHostWrappingModule } from '@hermes-ui/angular/utils';
7
7
  import * as i2 from '@angular/common';
8
8
  import { CommonModule } from '@angular/common';
9
- import { ClarityIcons, successStandardIcon, errorStandardIcon, HermesIcon } from '@hermes-ui/angular/icon';
9
+ import { HermesIcons, successStandardIcon, errorStandardIcon, HermesIcon } from '@hermes-ui/angular/icon';
10
10
 
11
11
  /*
12
12
  * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
@@ -194,7 +194,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
194
194
  */
195
195
  class HermesRadioModule {
196
196
  constructor() {
197
- ClarityIcons.addIcons(successStandardIcon, errorStandardIcon);
197
+ HermesIcons.addIcons(successStandardIcon, errorStandardIcon);
198
198
  }
199
199
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesRadioModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
200
200
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: HermesRadioModule, declarations: [HermesRadio, HermesRadioContainer, HermesRadioWrapper], imports: [CommonModule, HermesCommonFormsModule, HermesHostWrappingModule, HermesIcon], exports: [HermesCommonFormsModule, HermesRadio, HermesRadioContainer, HermesRadioWrapper] }); }
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-ui-angular-forms-radio.mjs","sources":["../../../forms/radio/radio-wrapper.ts","../../../forms/radio/radio.ts","../../../forms/radio/radio-container.ts","../../../forms/radio/radio.module.ts","../../../forms/radio/index.ts","../../../forms/radio/hermes-ui-angular-forms-radio.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, ContentChild, OnInit } from '@angular/core';\r\nimport { HermesControlLabel, ControlIdService } from '@hermes-ui/angular/forms/common';\r\n\r\n@Component({\r\n selector: 'hermes-radio-wrapper',\r\n template: `\r\n <ng-content select=\"[hermesRadio]\"></ng-content>\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label) {\r\n <label></label>\r\n }\r\n `,\r\n host: {\r\n '[class.hermes-radio-wrapper]': 'true',\r\n },\r\n providers: [ControlIdService],\r\n standalone: false,\r\n})\r\nexport class HermesRadioWrapper implements OnInit {\r\n @ContentChild(HermesControlLabel, { static: true }) label: HermesControlLabel;\r\n\r\n ngOnInit() {\r\n if (this.label) {\r\n this.label.disableGrid();\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 { Directive, ElementRef, Injector, Optional, Renderer2, Self, ViewContainerRef } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\nimport { WrappedFormControl } from '@hermes-ui/angular/forms/common';\r\n\r\nimport { HermesRadioWrapper } from './radio-wrapper';\r\n\r\n@Directive({\r\n selector: '[hermesRadio]',\r\n standalone: false,\r\n})\r\nexport class HermesRadio extends WrappedFormControl<HermesRadioWrapper> {\r\n constructor(\r\n vcr: ViewContainerRef,\r\n injector: Injector,\r\n @Self()\r\n @Optional()\r\n control: NgControl,\r\n renderer: Renderer2,\r\n el: ElementRef<HTMLInputElement>\r\n ) {\r\n super(vcr, HermesRadioWrapper, injector, control, renderer, el);\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 { AfterContentInit, Component, ContentChildren, Input, Optional, QueryList } from '@angular/core';\r\nimport {\r\n HermesAbstractContainer,\r\n ContainerIdService,\r\n ControlClassService,\r\n LayoutService,\r\n NgControlService,\r\n} from '@hermes-ui/angular/forms/common';\r\nimport { uniqueIdFactory } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesRadio } from './radio';\r\n\r\n@Component({\r\n selector: 'hermes-radio-container',\r\n template: `\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label && addGrid()) {\r\n <label></label>\r\n }\r\n <div class=\"hermes-control-container\" [class.hermes-control-inline]=\"hermesInline\" [ngClass]=\"controlClass()\">\r\n <ng-content select=\"hermes-radio-wrapper\"></ng-content>\r\n @if (showHelper) {\r\n <div class=\"hermes-subtext-wrapper\">\r\n <ng-content select=\"hermes-control-helper\"></ng-content>\r\n </div>\r\n }\r\n @if (showInvalid) {\r\n <ng-content select=\"hermes-control-error\"></ng-content>\r\n }\r\n @if (showValid) {\r\n <ng-content select=\"hermes-control-success\"></ng-content>\r\n }\r\n </div>\r\n `,\r\n host: {\r\n '[class.hermes-form-control]': 'true',\r\n '[class.hermes-form-control-disabled]': 'control?.disabled',\r\n '[class.hermes-row]': 'addGrid()',\r\n '[attr.role]': 'role',\r\n '[attr.aria-labelledby]': 'ariaLabelledBy',\r\n },\r\n providers: [NgControlService, ControlClassService, ContainerIdService],\r\n standalone: false,\r\n})\r\nexport class HermesRadioContainer extends HermesAbstractContainer implements AfterContentInit {\r\n role: string;\r\n ariaLabelledBy: string;\r\n\r\n @ContentChildren(HermesRadio, { descendants: true }) radios: QueryList<HermesRadio>;\r\n\r\n private inline = false;\r\n private _generatedId = uniqueIdFactory();\r\n\r\n constructor(\r\n @Optional() protected override layoutService: LayoutService,\r\n protected override controlClassService: ControlClassService,\r\n protected override ngControlService: NgControlService\r\n ) {\r\n super(layoutService, controlClassService, ngControlService);\r\n }\r\n\r\n /*\r\n * Here we want to support the following cases\r\n * hermesInline - true by presence\r\n * hermesInline=\"true|false\" - unless it is explicitly false, strings are considered true\r\n * [hermesInline]=\"true|false\" - expect a boolean\r\n */\r\n @Input()\r\n get hermesInline() {\r\n return this.inline;\r\n }\r\n set hermesInline(value: boolean | string) {\r\n if (typeof value === 'string') {\r\n this.inline = value === 'false' ? false : true;\r\n } else {\r\n this.inline = !!value;\r\n }\r\n }\r\n\r\n ngAfterContentInit() {\r\n this.setAriaRoles();\r\n this.setAriaLabelledBy();\r\n }\r\n\r\n private setAriaRoles() {\r\n this.role = this.radios.length ? 'radiogroup' : null;\r\n }\r\n\r\n private setAriaLabelledBy() {\r\n if (this.label && !this.label.idAttr) {\r\n this.label.idAttr = this._generatedId;\r\n }\r\n\r\n this.ariaLabelledBy = this.radios?.length && this.label ? this.label.idAttr : null;\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { HermesCommonFormsModule } from '@hermes-ui/angular/forms/common';\r\nimport { ClarityIcons, HermesIcon, errorStandardIcon, successStandardIcon } from '@hermes-ui/angular/icon';\r\nimport { HermesHostWrappingModule } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesRadio } from './radio';\r\nimport { HermesRadioContainer } from './radio-container';\r\nimport { HermesRadioWrapper } from './radio-wrapper';\r\n\r\n@NgModule({\r\n imports: [CommonModule, HermesCommonFormsModule, HermesHostWrappingModule, HermesIcon],\r\n declarations: [HermesRadio, HermesRadioContainer, HermesRadioWrapper],\r\n exports: [HermesCommonFormsModule, HermesRadio, HermesRadioContainer, HermesRadioWrapper],\r\n})\r\nexport class HermesRadioModule {\r\n constructor() {\r\n ClarityIcons.addIcons(successStandardIcon, errorStandardIcon);\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 './radio';\r\nexport * from './radio-container';\r\nexport * from './radio-wrapper';\r\nexport * from './radio.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"hermes-ui-angular-forms-radio.mjs","sources":["../../../forms/radio/radio-wrapper.ts","../../../forms/radio/radio.ts","../../../forms/radio/radio-container.ts","../../../forms/radio/radio.module.ts","../../../forms/radio/index.ts","../../../forms/radio/hermes-ui-angular-forms-radio.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, ContentChild, OnInit } from '@angular/core';\r\nimport { HermesControlLabel, ControlIdService } from '@hermes-ui/angular/forms/common';\r\n\r\n@Component({\r\n selector: 'hermes-radio-wrapper',\r\n template: `\r\n <ng-content select=\"[hermesRadio]\"></ng-content>\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label) {\r\n <label></label>\r\n }\r\n `,\r\n host: {\r\n '[class.hermes-radio-wrapper]': 'true',\r\n },\r\n providers: [ControlIdService],\r\n standalone: false,\r\n})\r\nexport class HermesRadioWrapper implements OnInit {\r\n @ContentChild(HermesControlLabel, { static: true }) label: HermesControlLabel;\r\n\r\n ngOnInit() {\r\n if (this.label) {\r\n this.label.disableGrid();\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 { Directive, ElementRef, Injector, Optional, Renderer2, Self, ViewContainerRef } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\nimport { WrappedFormControl } from '@hermes-ui/angular/forms/common';\r\n\r\nimport { HermesRadioWrapper } from './radio-wrapper';\r\n\r\n@Directive({\r\n selector: '[hermesRadio]',\r\n standalone: false,\r\n})\r\nexport class HermesRadio extends WrappedFormControl<HermesRadioWrapper> {\r\n constructor(\r\n vcr: ViewContainerRef,\r\n injector: Injector,\r\n @Self()\r\n @Optional()\r\n control: NgControl,\r\n renderer: Renderer2,\r\n el: ElementRef<HTMLInputElement>\r\n ) {\r\n super(vcr, HermesRadioWrapper, injector, control, renderer, el);\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 { AfterContentInit, Component, ContentChildren, Input, Optional, QueryList } from '@angular/core';\r\nimport {\r\n HermesAbstractContainer,\r\n ContainerIdService,\r\n ControlClassService,\r\n LayoutService,\r\n NgControlService,\r\n} from '@hermes-ui/angular/forms/common';\r\nimport { uniqueIdFactory } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesRadio } from './radio';\r\n\r\n@Component({\r\n selector: 'hermes-radio-container',\r\n template: `\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label && addGrid()) {\r\n <label></label>\r\n }\r\n <div class=\"hermes-control-container\" [class.hermes-control-inline]=\"hermesInline\" [ngClass]=\"controlClass()\">\r\n <ng-content select=\"hermes-radio-wrapper\"></ng-content>\r\n @if (showHelper) {\r\n <div class=\"hermes-subtext-wrapper\">\r\n <ng-content select=\"hermes-control-helper\"></ng-content>\r\n </div>\r\n }\r\n @if (showInvalid) {\r\n <ng-content select=\"hermes-control-error\"></ng-content>\r\n }\r\n @if (showValid) {\r\n <ng-content select=\"hermes-control-success\"></ng-content>\r\n }\r\n </div>\r\n `,\r\n host: {\r\n '[class.hermes-form-control]': 'true',\r\n '[class.hermes-form-control-disabled]': 'control?.disabled',\r\n '[class.hermes-row]': 'addGrid()',\r\n '[attr.role]': 'role',\r\n '[attr.aria-labelledby]': 'ariaLabelledBy',\r\n },\r\n providers: [NgControlService, ControlClassService, ContainerIdService],\r\n standalone: false,\r\n})\r\nexport class HermesRadioContainer extends HermesAbstractContainer implements AfterContentInit {\r\n role: string;\r\n ariaLabelledBy: string;\r\n\r\n @ContentChildren(HermesRadio, { descendants: true }) radios: QueryList<HermesRadio>;\r\n\r\n private inline = false;\r\n private _generatedId = uniqueIdFactory();\r\n\r\n constructor(\r\n @Optional() protected override layoutService: LayoutService,\r\n protected override controlClassService: ControlClassService,\r\n protected override ngControlService: NgControlService\r\n ) {\r\n super(layoutService, controlClassService, ngControlService);\r\n }\r\n\r\n /*\r\n * Here we want to support the following cases\r\n * hermesInline - true by presence\r\n * hermesInline=\"true|false\" - unless it is explicitly false, strings are considered true\r\n * [hermesInline]=\"true|false\" - expect a boolean\r\n */\r\n @Input()\r\n get hermesInline() {\r\n return this.inline;\r\n }\r\n set hermesInline(value: boolean | string) {\r\n if (typeof value === 'string') {\r\n this.inline = value === 'false' ? false : true;\r\n } else {\r\n this.inline = !!value;\r\n }\r\n }\r\n\r\n ngAfterContentInit() {\r\n this.setAriaRoles();\r\n this.setAriaLabelledBy();\r\n }\r\n\r\n private setAriaRoles() {\r\n this.role = this.radios.length ? 'radiogroup' : null;\r\n }\r\n\r\n private setAriaLabelledBy() {\r\n if (this.label && !this.label.idAttr) {\r\n this.label.idAttr = this._generatedId;\r\n }\r\n\r\n this.ariaLabelledBy = this.radios?.length && this.label ? this.label.idAttr : null;\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 } from '@angular/core';\nimport { HermesCommonFormsModule } from '@hermes-ui/angular/forms/common';\nimport { HermesIcons, HermesIcon, errorStandardIcon, successStandardIcon } from '@hermes-ui/angular/icon';\nimport { HermesHostWrappingModule } from '@hermes-ui/angular/utils';\n\nimport { HermesRadio } from './radio';\nimport { HermesRadioContainer } from './radio-container';\nimport { HermesRadioWrapper } from './radio-wrapper';\n\n@NgModule({\n imports: [CommonModule, HermesCommonFormsModule, HermesHostWrappingModule, HermesIcon],\n declarations: [HermesRadio, HermesRadioContainer, HermesRadioWrapper],\n exports: [HermesCommonFormsModule, HermesRadio, HermesRadioContainer, HermesRadioWrapper],\n})\nexport class HermesRadioModule {\n constructor() {\n HermesIcons.addIcons(successStandardIcon, errorStandardIcon);\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 './radio';\r\nexport * from './radio-container';\r\nexport * from './radio-wrapper';\r\nexport * from './radio.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
@@ -5,7 +5,7 @@ import { HermesAbstractContainer, NgControlService, ControlIdService, ControlCla
5
5
  import * as i2 from '@angular/common';
6
6
  import { CommonModule } from '@angular/common';
7
7
  import * as i1$1 from '@angular/forms';
8
- import { ClarityIcons, successStandardIcon, errorStandardIcon, HermesIcon } from '@hermes-ui/angular/icon';
8
+ import { HermesIcons, successStandardIcon, errorStandardIcon, HermesIcon } from '@hermes-ui/angular/icon';
9
9
  import { HermesHostWrappingModule } from '@hermes-ui/angular/utils';
10
10
 
11
11
  /*
@@ -156,7 +156,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
156
156
  */
157
157
  class HermesRangeModule {
158
158
  constructor() {
159
- ClarityIcons.addIcons(successStandardIcon, errorStandardIcon);
159
+ HermesIcons.addIcons(successStandardIcon, errorStandardIcon);
160
160
  }
161
161
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesRangeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
162
162
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: HermesRangeModule, declarations: [HermesRange, HermesRangeContainer], imports: [CommonModule, HermesCommonFormsModule, HermesHostWrappingModule, HermesIcon], exports: [HermesCommonFormsModule, HermesRange, HermesRangeContainer] }); }
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-ui-angular-forms-range.mjs","sources":["../../../forms/range/range-container.ts","../../../forms/range/range.ts","../../../forms/range/range.module.ts","../../../forms/range/index.ts","../../../forms/range/hermes-ui-angular-forms-range.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, Input, Optional, Renderer2 } from '@angular/core';\r\nimport {\r\n HermesAbstractContainer,\r\n ControlClassService,\r\n ControlIdService,\r\n LayoutService,\r\n NgControlService,\r\n} from '@hermes-ui/angular/forms/common';\r\n\r\n@Component({\r\n selector: 'hermes-range-container',\r\n template: `\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label && addGrid()) {\r\n <label></label>\r\n }\r\n <div class=\"hermes-control-container\" [ngClass]=\"controlClass()\">\r\n <div class=\"hermes-range-wrapper\" [class.progress-fill]=\"hasProgress\">\r\n <ng-content select=\"[hermesRange]\"></ng-content>\r\n @if (hasProgress) {\r\n <span class=\"fill-input\" [style.width]=\"getRangeProgressFillWidth()\"></span>\r\n }\r\n </div>\r\n @if (showHelper) {\r\n <ng-content select=\"hermes-control-helper\"></ng-content>\r\n }\r\n @if (showInvalid) {\r\n <ng-content select=\"hermes-control-error\"></ng-content>\r\n }\r\n @if (showValid) {\r\n <ng-content select=\"hermes-control-success\"></ng-content>\r\n }\r\n </div>\r\n `,\r\n host: {\r\n '[class.hermes-form-control]': 'true',\r\n '[class.hermes-form-control-disabled]': 'control?.disabled',\r\n '[class.hermes-row]': 'addGrid()',\r\n },\r\n providers: [NgControlService, ControlIdService, ControlClassService],\r\n standalone: false,\r\n})\r\nexport class HermesRangeContainer extends HermesAbstractContainer {\r\n private _hasProgress = false;\r\n private lastRangeProgressFillWidth: string;\r\n\r\n constructor(\r\n @Optional() layoutService: LayoutService,\r\n controlClassService: ControlClassService,\r\n ngControlService: NgControlService,\r\n private renderer: Renderer2,\r\n private idService: ControlIdService\r\n ) {\r\n super(layoutService, controlClassService, ngControlService);\r\n }\r\n\r\n @Input('hermesRangeHasProgress')\r\n get hasProgress() {\r\n return this._hasProgress;\r\n }\r\n set hasProgress(val: boolean) {\r\n const valBool = !!val;\r\n if (valBool !== this._hasProgress) {\r\n this._hasProgress = valBool;\r\n }\r\n }\r\n\r\n getRangeProgressFillWidth(): string {\r\n const input = this.selectRangeElement();\r\n\r\n if (!input) {\r\n return this.lastRangeProgressFillWidth;\r\n }\r\n\r\n const inputWidth = input.offsetWidth;\r\n const inputMinValue = +input.min;\r\n let inputMaxValue = +input.max;\r\n\r\n if (inputMinValue === 0 && inputMaxValue === 0) {\r\n inputMaxValue = 100;\r\n }\r\n\r\n const inputMiddle = (inputMinValue + inputMaxValue) / 2;\r\n const inputValue = !!this.control && this.control.value !== undefined ? this.control.value : inputMiddle;\r\n const valueAsPercent = ((inputValue - inputMinValue) * 100) / (inputMaxValue - inputMinValue);\r\n\r\n this.lastRangeProgressFillWidth = (valueAsPercent * inputWidth) / 100 + 'px';\r\n\r\n return this.lastRangeProgressFillWidth;\r\n }\r\n\r\n private selectRangeElement() {\r\n try {\r\n return this.renderer.selectRootElement('[hermesRange]#' + this.idService.id);\r\n } catch {\r\n return undefined;\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 { Directive, ElementRef, Injector, Optional, Renderer2, Self, ViewContainerRef } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\nimport { WrappedFormControl } from '@hermes-ui/angular/forms/common';\r\n\r\nimport { HermesRangeContainer } from './range-container';\r\n\r\n@Directive({\r\n selector: '[hermesRange]',\r\n host: { '[class.hermes-range]': 'true' },\r\n standalone: false,\r\n})\r\nexport class HermesRange extends WrappedFormControl<HermesRangeContainer> {\r\n constructor(\r\n vcr: ViewContainerRef,\r\n injector: Injector,\r\n @Self()\r\n @Optional()\r\n control: NgControl,\r\n renderer: Renderer2,\r\n el: ElementRef<HTMLInputElement>\r\n ) {\r\n super(vcr, HermesRangeContainer, injector, control, renderer, el);\r\n }\r\n\r\n // Notes: We need an output here EventEmitter for the value\r\n // Does this implementation also need a display for the value?\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { HermesCommonFormsModule } from '@hermes-ui/angular/forms/common';\r\nimport { ClarityIcons, HermesIcon, errorStandardIcon, successStandardIcon } from '@hermes-ui/angular/icon';\r\nimport { HermesHostWrappingModule } from '@hermes-ui/angular/utils';\r\n\r\nimport { HermesRange } from './range';\r\nimport { HermesRangeContainer } from './range-container';\r\n\r\n@NgModule({\r\n imports: [CommonModule, HermesCommonFormsModule, HermesHostWrappingModule, HermesIcon],\r\n declarations: [HermesRange, HermesRangeContainer],\r\n exports: [HermesCommonFormsModule, HermesRange, HermesRangeContainer],\r\n})\r\nexport class HermesRangeModule {\r\n constructor() {\r\n ClarityIcons.addIcons(successStandardIcon, errorStandardIcon);\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 './range';\r\nexport * from './range-container';\r\nexport * from './range.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":";;;;;;;;;;AAAA;;;;;AAKG;AA4CG,MAAO,oBAAqB,SAAQ,uBAAuB,CAAA;IAI/D,WAAA,CACc,aAA4B,EACxC,mBAAwC,EACxC,gBAAkC,EAC1B,QAAmB,EACnB,SAA2B,EAAA;AAEnC,QAAA,KAAK,CAAC,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,CAAC;QAHnD,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,SAAS,GAAT,SAAS;QARX,IAAA,CAAA,YAAY,GAAG,KAAK;IAW5B;AAEA,IAAA,IACI,WAAW,GAAA;QACb,OAAO,IAAI,CAAC,YAAY;IAC1B;IACA,IAAI,WAAW,CAAC,GAAY,EAAA;AAC1B,QAAA,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG;AACrB,QAAA,IAAI,OAAO,KAAK,IAAI,CAAC,YAAY,EAAE;AACjC,YAAA,IAAI,CAAC,YAAY,GAAG,OAAO;QAC7B;IACF;IAEA,yBAAyB,GAAA;AACvB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,EAAE;QAEvC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,IAAI,CAAC,0BAA0B;QACxC;AAEA,QAAA,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW;AACpC,QAAA,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,GAAG;AAChC,QAAA,IAAI,aAAa,GAAG,CAAC,KAAK,CAAC,GAAG;QAE9B,IAAI,aAAa,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,EAAE;YAC9C,aAAa,GAAG,GAAG;QACrB;QAEA,MAAM,WAAW,GAAG,CAAC,aAAa,GAAG,aAAa,IAAI,CAAC;QACvD,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,WAAW;AACxG,QAAA,MAAM,cAAc,GAAG,CAAC,CAAC,UAAU,GAAG,aAAa,IAAI,GAAG,KAAK,aAAa,GAAG,aAAa,CAAC;AAE7F,QAAA,IAAI,CAAC,0BAA0B,GAAG,CAAC,cAAc,GAAG,UAAU,IAAI,GAAG,GAAG,IAAI;QAE5E,OAAO,IAAI,CAAC,0BAA0B;IACxC;IAEQ,kBAAkB,GAAA;AACxB,QAAA,IAAI;AACF,YAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9E;AAAE,QAAA,MAAM;AACN,YAAA,OAAO,SAAS;QAClB;IACF;+GAvDW,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,CAAA,wBAAA,EAAA,aAAA,CAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,oCAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,EAAA,EAAA,SAAA,EAHpB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA5B1D,CAAA;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,OAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,KAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FASU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAjChC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,QAAQ,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,6BAA6B,EAAE,MAAM;AACrC,wBAAA,sCAAsC,EAAE,mBAAmB;AAC3D,wBAAA,oBAAoB,EAAE,WAAW;AAClC,qBAAA;AACD,oBAAA,SAAS,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,CAAC;AACpE,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;0BAMI;;sBASF,KAAK;uBAAC,wBAAwB;;;AC/DjC;;;;;AAKG;AAaG,MAAO,WAAY,SAAQ,kBAAwC,CAAA;IACvE,WAAA,CACE,GAAqB,EACrB,QAAkB,EAGlB,OAAkB,EAClB,QAAmB,EACnB,EAAgC,EAAA;AAEhC,QAAA,KAAK,CAAC,GAAG,EAAE,oBAAoB,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC;IACnE;+GAXW,WAAW,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAX,WAAW,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,eAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBALvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,IAAI,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE;AACxC,oBAAA,UAAU,EAAE,KAAK;AAClB,iBAAA;;0BAKI;;0BACA;;;ACvBL;;;;;AAKG;MAgBU,iBAAiB,CAAA;AAC5B,IAAA,WAAA,GAAA;AACE,QAAA,YAAY,CAAC,QAAQ,CAAC,mBAAmB,EAAE,iBAAiB,CAAC;IAC/D;+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,iBAHb,WAAW,EAAE,oBAAoB,CAAA,EAAA,OAAA,EAAA,CADtC,YAAY,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,UAAU,CAAA,EAAA,OAAA,EAAA,CAE3E,uBAAuB,EAAE,WAAW,EAAE,oBAAoB,CAAA,EAAA,CAAA,CAAA;gHAEzD,iBAAiB,EAAA,OAAA,EAAA,CAJlB,YAAY,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,UAAU,EAE3E,uBAAuB,CAAA,EAAA,CAAA,CAAA;;4FAEtB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,UAAU,CAAC;AACtF,oBAAA,YAAY,EAAE,CAAC,WAAW,EAAE,oBAAoB,CAAC;AACjD,oBAAA,OAAO,EAAE,CAAC,uBAAuB,EAAE,WAAW,EAAE,oBAAoB,CAAC;AACtE,iBAAA;;;ACpBD;;;;;AAKG;;ACLH;;AAEG;;"}
1
+ {"version":3,"file":"hermes-ui-angular-forms-range.mjs","sources":["../../../forms/range/range-container.ts","../../../forms/range/range.ts","../../../forms/range/range.module.ts","../../../forms/range/index.ts","../../../forms/range/hermes-ui-angular-forms-range.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, Input, Optional, Renderer2 } from '@angular/core';\r\nimport {\r\n HermesAbstractContainer,\r\n ControlClassService,\r\n ControlIdService,\r\n LayoutService,\r\n NgControlService,\r\n} from '@hermes-ui/angular/forms/common';\r\n\r\n@Component({\r\n selector: 'hermes-range-container',\r\n template: `\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label && addGrid()) {\r\n <label></label>\r\n }\r\n <div class=\"hermes-control-container\" [ngClass]=\"controlClass()\">\r\n <div class=\"hermes-range-wrapper\" [class.progress-fill]=\"hasProgress\">\r\n <ng-content select=\"[hermesRange]\"></ng-content>\r\n @if (hasProgress) {\r\n <span class=\"fill-input\" [style.width]=\"getRangeProgressFillWidth()\"></span>\r\n }\r\n </div>\r\n @if (showHelper) {\r\n <ng-content select=\"hermes-control-helper\"></ng-content>\r\n }\r\n @if (showInvalid) {\r\n <ng-content select=\"hermes-control-error\"></ng-content>\r\n }\r\n @if (showValid) {\r\n <ng-content select=\"hermes-control-success\"></ng-content>\r\n }\r\n </div>\r\n `,\r\n host: {\r\n '[class.hermes-form-control]': 'true',\r\n '[class.hermes-form-control-disabled]': 'control?.disabled',\r\n '[class.hermes-row]': 'addGrid()',\r\n },\r\n providers: [NgControlService, ControlIdService, ControlClassService],\r\n standalone: false,\r\n})\r\nexport class HermesRangeContainer extends HermesAbstractContainer {\r\n private _hasProgress = false;\r\n private lastRangeProgressFillWidth: string;\r\n\r\n constructor(\r\n @Optional() layoutService: LayoutService,\r\n controlClassService: ControlClassService,\r\n ngControlService: NgControlService,\r\n private renderer: Renderer2,\r\n private idService: ControlIdService\r\n ) {\r\n super(layoutService, controlClassService, ngControlService);\r\n }\r\n\r\n @Input('hermesRangeHasProgress')\r\n get hasProgress() {\r\n return this._hasProgress;\r\n }\r\n set hasProgress(val: boolean) {\r\n const valBool = !!val;\r\n if (valBool !== this._hasProgress) {\r\n this._hasProgress = valBool;\r\n }\r\n }\r\n\r\n getRangeProgressFillWidth(): string {\r\n const input = this.selectRangeElement();\r\n\r\n if (!input) {\r\n return this.lastRangeProgressFillWidth;\r\n }\r\n\r\n const inputWidth = input.offsetWidth;\r\n const inputMinValue = +input.min;\r\n let inputMaxValue = +input.max;\r\n\r\n if (inputMinValue === 0 && inputMaxValue === 0) {\r\n inputMaxValue = 100;\r\n }\r\n\r\n const inputMiddle = (inputMinValue + inputMaxValue) / 2;\r\n const inputValue = !!this.control && this.control.value !== undefined ? this.control.value : inputMiddle;\r\n const valueAsPercent = ((inputValue - inputMinValue) * 100) / (inputMaxValue - inputMinValue);\r\n\r\n this.lastRangeProgressFillWidth = (valueAsPercent * inputWidth) / 100 + 'px';\r\n\r\n return this.lastRangeProgressFillWidth;\r\n }\r\n\r\n private selectRangeElement() {\r\n try {\r\n return this.renderer.selectRootElement('[hermesRange]#' + this.idService.id);\r\n } catch {\r\n return undefined;\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 { Directive, ElementRef, Injector, Optional, Renderer2, Self, ViewContainerRef } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\nimport { WrappedFormControl } from '@hermes-ui/angular/forms/common';\r\n\r\nimport { HermesRangeContainer } from './range-container';\r\n\r\n@Directive({\r\n selector: '[hermesRange]',\r\n host: { '[class.hermes-range]': 'true' },\r\n standalone: false,\r\n})\r\nexport class HermesRange extends WrappedFormControl<HermesRangeContainer> {\r\n constructor(\r\n vcr: ViewContainerRef,\r\n injector: Injector,\r\n @Self()\r\n @Optional()\r\n control: NgControl,\r\n renderer: Renderer2,\r\n el: ElementRef<HTMLInputElement>\r\n ) {\r\n super(vcr, HermesRangeContainer, injector, control, renderer, el);\r\n }\r\n\r\n // Notes: We need an output here EventEmitter for the value\r\n // Does this implementation also need a display for the value?\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 } from '@angular/core';\nimport { HermesCommonFormsModule } from '@hermes-ui/angular/forms/common';\nimport { HermesIcons, HermesIcon, errorStandardIcon, successStandardIcon } from '@hermes-ui/angular/icon';\nimport { HermesHostWrappingModule } from '@hermes-ui/angular/utils';\n\nimport { HermesRange } from './range';\nimport { HermesRangeContainer } from './range-container';\n\n@NgModule({\n imports: [CommonModule, HermesCommonFormsModule, HermesHostWrappingModule, HermesIcon],\n declarations: [HermesRange, HermesRangeContainer],\n exports: [HermesCommonFormsModule, HermesRange, HermesRangeContainer],\n})\nexport class HermesRangeModule {\n constructor() {\n HermesIcons.addIcons(successStandardIcon, errorStandardIcon);\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 './range';\r\nexport * from './range-container';\r\nexport * from './range.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
@@ -6,7 +6,7 @@ import { HermesPopoverHostDirective, HermesPopoverType, HermesPopoverPosition, m
6
6
  import { uniqueIdFactory, Keys } from '@hermes-ui/angular/utils';
7
7
  import { Subject } from 'rxjs';
8
8
  import * as i3 from '@hermes-ui/angular/icon';
9
- import { ClarityIcons, angleIcon, checkIcon, HermesIcon } from '@hermes-ui/angular/icon';
9
+ import { HermesIcons, angleIcon, checkIcon, HermesIcon } from '@hermes-ui/angular/icon';
10
10
  import * as i2$1 from '@angular/platform-browser';
11
11
  import { CommonModule } from '@angular/common';
12
12
 
@@ -562,7 +562,7 @@ const HERMES_SELECT_DIRECTIVES = [
562
562
  ];
563
563
  class HermesSelectModule {
564
564
  constructor() {
565
- ClarityIcons.addIcons(angleIcon, checkIcon);
565
+ HermesIcons.addIcons(angleIcon, checkIcon);
566
566
  }
567
567
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
568
568
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: HermesSelectModule, declarations: [HermesSelect,
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-ui-angular-forms-select.mjs","sources":["../../../forms/select/providers/select-state.service.ts","../../../forms/select/select.ts","../../../forms/select/select-trigger.ts","../../../forms/select/select-trigger.html","../../../forms/select/select-value.ts","../../../forms/select/select-value.html","../../../forms/select/select-item.ts","../../../forms/select/select-item.html","../../../forms/select/select-content.ts","../../../forms/select/select-content.html","../../../forms/select/select-group.ts","../../../forms/select/select-label.ts","../../../forms/select/select-separator.ts","../../../forms/select/select.module.ts","../../../forms/select/index.ts","../../../forms/select/hermes-ui-angular-forms-select.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 { Injectable } from '@angular/core';\r\nimport { uniqueIdFactory } from '@hermes-ui/angular/utils';\r\nimport { Subject } from 'rxjs';\r\n\r\n/**\r\n * Minimal shape HermesSelectItem exposes to the shared state - kept as an interface (rather\r\n * than importing HermesSelectItem directly) to avoid a service <-> component circular import.\r\n *\r\n * getLabelHtml() returns a snapshot of the item's rendered markup (innerHTML), rather than\r\n * exposing its content as a re-usable TemplateRef: <ng-content> projects a single, real set of\r\n * DOM nodes, so instantiating that same template a second time (e.g. from hermes-select-value)\r\n * would move those nodes there instead of cloning them, leaving the item's own row empty the\r\n * moment it becomes selected.\r\n */\r\nexport interface HermesSelectItemRef {\r\n value: unknown;\r\n disabled: boolean;\r\n nativeElement: HTMLElement;\r\n getLabelHtml(): string;\r\n focus(): void;\r\n}\r\n\r\n/**\r\n * Shared state for a single hermes-select instance, provided at the HermesSelect component\r\n * level so the trigger, value, content, and every item can all read/mutate the same value\r\n * and item registry without prop-drilling through content projection.\r\n */\r\n@Injectable()\r\nexport class HermesSelectStateService {\r\n disabled = false;\r\n placeholder = '';\r\n items: HermesSelectItemRef[] = [];\r\n readonly listboxId = uniqueIdFactory();\r\n\r\n /** Set by HermesSelectTrigger; read by HermesSelectContent to item-align the popup. */\r\n triggerElement?: HTMLElement;\r\n\r\n readonly valueChange = new Subject<unknown>();\r\n\r\n onChange: (value: unknown) => void = () => {};\r\n onTouched: () => void = () => {};\r\n\r\n private _value: unknown;\r\n\r\n get value(): unknown {\r\n return this._value;\r\n }\r\n set value(value: unknown) {\r\n this._value = value;\r\n }\r\n\r\n get selectedItem(): HermesSelectItemRef | undefined {\r\n return this.items.find(item => this.isSelected(item.value));\r\n }\r\n\r\n isSelected(value: unknown): boolean {\r\n return this._value !== undefined && this._value !== null && this._value === value;\r\n }\r\n\r\n registerItem(item: HermesSelectItemRef): void {\r\n this.items.push(item);\r\n }\r\n\r\n unregisterItem(item: HermesSelectItemRef): void {\r\n const index = this.items.indexOf(item);\r\n if (index > -1) {\r\n this.items.splice(index, 1);\r\n }\r\n }\r\n\r\n selectValue(value: unknown): void {\r\n if (this.disabled || this._value === value) {\r\n return;\r\n }\r\n this._value = value;\r\n this.onChange(value);\r\n this.valueChange.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 { Component, forwardRef, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { HermesPopoverHostDirective, HermesPopoverService } from '@hermes-ui/angular/popover/common';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\n/**\r\n * Root of a hermes-select. Renders nothing itself besides its projected content\r\n * (typically a HermesSelectTrigger and a HermesSelectContent) and provides the\r\n * HermesSelectStateService every descendant reads/writes through.\r\n */\r\n@Component({\r\n selector: 'hermes-select',\r\n template: '<ng-content></ng-content>',\r\n providers: [\r\n HermesSelectStateService,\r\n { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => HermesSelect), multi: true },\r\n ],\r\n hostDirectives: [HermesPopoverHostDirective],\r\n host: {\r\n '[class.hermes-select]': 'true',\r\n '[attr.data-disabled]': 'disabled || null',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelect implements ControlValueAccessor, OnInit, OnDestroy {\r\n private subscription: Subscription;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n private popoverService: HermesPopoverService\r\n ) {}\r\n\r\n get disabled(): boolean {\r\n return this.state.disabled;\r\n }\r\n\r\n @Input()\r\n get placeholder(): string {\r\n return this.state.placeholder;\r\n }\r\n set placeholder(value: string) {\r\n this.state.placeholder = value ?? '';\r\n }\r\n\r\n ngOnInit() {\r\n // A close (regardless of whether it happened through a selection, Escape, or an\r\n // outside click) is the closest thing a listbox-style control has to a \"blur\".\r\n this.subscription = this.popoverService.openChange.subscribe(open => {\r\n if (!open) {\r\n this.state.onTouched();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription?.unsubscribe();\r\n }\r\n\r\n writeValue(value: unknown): void {\r\n this.state.value = value;\r\n }\r\n\r\n registerOnChange(fn: (value: unknown) => void): void {\r\n this.state.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: () => void): void {\r\n this.state.onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.state.disabled = isDisabled;\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 { AfterViewInit, Component, ElementRef, Input, ViewChild } from '@angular/core';\r\nimport { HermesPopoverService } from '@hermes-ui/angular/popover/common';\r\n\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\n/**\r\n * The button that opens the listbox. A real <button> so Enter/Space activation and tab\r\n * order come from the browser for free; only ArrowUp/ArrowDown need their own handling\r\n * here, matching how a native <select> also opens on either arrow key.\r\n */\r\n@Component({\r\n selector: 'hermes-select-trigger',\r\n templateUrl: './select-trigger.html',\r\n host: {\r\n '[class.hermes-select-trigger]': 'true',\r\n '[attr.data-size]': 'size',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectTrigger implements AfterViewInit {\r\n @Input() size: 'default' | 'sm' = 'default';\r\n\r\n @ViewChild('triggerButton', { static: true }) private buttonRef: ElementRef<HTMLButtonElement>;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n public popoverService: HermesPopoverService\r\n ) {}\r\n\r\n ngAfterViewInit() {\r\n this.state.triggerElement = this.buttonRef.nativeElement;\r\n }\r\n\r\n openOnArrowKey(event: Event): void {\r\n if (this.state.disabled) {\r\n return;\r\n }\r\n event.preventDefault();\r\n if (!this.popoverService.open) {\r\n this.popoverService.open = true;\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<button\r\n #triggerButton\r\n type=\"button\"\r\n class=\"hermes-select-trigger-button\"\r\n role=\"combobox\"\r\n hermesPopoverOrigin\r\n hermesPopoverOpenCloseButton\r\n [disabled]=\"state.disabled\"\r\n [attr.aria-expanded]=\"popoverService.open\"\r\n [attr.aria-controls]=\"state.listboxId\"\r\n aria-haspopup=\"listbox\"\r\n (keydown.ArrowDown)=\"openOnArrowKey($event)\"\r\n (keydown.ArrowUp)=\"openOnArrowKey($event)\"\r\n>\r\n <ng-content></ng-content>\r\n <hermes-icon shape=\"angle\" direction=\"down\" size=\"16\" class=\"hermes-select-trigger-icon\"></hermes-icon>\r\n</button>\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, Input } from '@angular/core';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\n\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\n/**\r\n * Displays a snapshot of the selected item's rendered markup inside the trigger, or the\r\n * placeholder text when nothing is selected yet - mirrors shadcn's <SelectValue>.\r\n *\r\n * Reads HermesSelectItem.getLabelHtml() (an innerHTML snapshot) rather than re-rendering the\r\n * item's projected content through a shared TemplateRef: <ng-content> hands out one real set\r\n * of DOM nodes, and instantiating that same template a second time here would move them out\r\n * of the item's own row instead of cloning them.\r\n */\r\n@Component({\r\n selector: 'hermes-select-value',\r\n templateUrl: './select-value.html',\r\n host: {\r\n '[class.hermes-select-value]': 'true',\r\n '[class.hermes-select-placeholder]': '!state.selectedItem',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectValue {\r\n @Input() placeholder: string;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n private sanitizer: DomSanitizer\r\n ) {}\r\n\r\n get resolvedPlaceholder(): string {\r\n return this.placeholder ?? this.state.placeholder;\r\n }\r\n\r\n get valueHtml(): SafeHtml | null {\r\n const item = this.state.selectedItem;\r\n // Trusted: this is a snapshot of markup this same app already rendered from its own\r\n // hermes-select-item templates, not third-party or user-supplied HTML.\r\n return item ? this.sanitizer.bypassSecurityTrustHtml(item.getLabelHtml()) : null;\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 (state.selectedItem) {\r\n <span [innerHTML]=\"valueHtml\"></span>\r\n} @else {\r\n {{ resolvedPlaceholder }}\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, ElementRef, Input, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\n\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\n@Component({\r\n selector: 'hermes-select-item',\r\n templateUrl: './select-item.html',\r\n host: {\r\n role: 'option',\r\n '[attr.aria-selected]': 'selected',\r\n '[attr.aria-disabled]': 'disabled || null',\r\n '[attr.tabindex]': '-1',\r\n '[class.hermes-select-item]': 'true',\r\n '[class.selected]': 'selected',\r\n '[class.disabled]': 'disabled',\r\n '(click)': 'onSelect()',\r\n '(keydown.enter)': 'onKeydownSelect($event)',\r\n '(keydown.space)': 'onKeydownSelect($event)',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectItem implements OnInit, OnDestroy {\r\n @Input() value: unknown;\r\n\r\n @ViewChild('text', { static: true }) private textEl: ElementRef<HTMLElement>;\r\n\r\n private _disabled = false;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n private elementRef: ElementRef<HTMLElement>\r\n ) {}\r\n\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: boolean | string) {\r\n this._disabled = !!value || value === '';\r\n }\r\n\r\n get selected(): boolean {\r\n return this.state.isSelected(this.value);\r\n }\r\n\r\n get nativeElement(): HTMLElement {\r\n return this.elementRef.nativeElement;\r\n }\r\n\r\n focus(): void {\r\n this.elementRef.nativeElement.focus();\r\n }\r\n\r\n getLabelHtml(): string {\r\n return this.textEl?.nativeElement.innerHTML ?? '';\r\n }\r\n\r\n ngOnInit() {\r\n this.state.registerItem(this);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.state.unregisterItem(this);\r\n }\r\n\r\n onSelect(): void {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this.state.selectValue(this.value);\r\n }\r\n\r\n onKeydownSelect(event: KeyboardEvent): void {\r\n // Space normally scrolls the page; both keys should only ever select.\r\n event.preventDefault();\r\n this.onSelect();\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<span #text class=\"hermes-select-item-text\">\r\n <ng-content></ng-content>\r\n</span>\r\n<span class=\"hermes-select-item-indicator\">\r\n @if (selected) {\r\n <hermes-icon shape=\"check\" size=\"16\"></hermes-icon>\r\n }\r\n</span>\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 { ConnectedPosition } from '@angular/cdk/overlay';\r\nimport {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n ElementRef,\r\n HostBinding,\r\n OnDestroy,\r\n QueryList,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n HermesPopoverContent,\r\n HermesPopoverPosition,\r\n HermesPopoverService,\r\n HermesPopoverType,\r\n mapPopoverKeyToPosition,\r\n} from '@hermes-ui/angular/popover/common';\r\nimport { Keys } from '@hermes-ui/angular/utils';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { HermesSelectItem } from './select-item';\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\nconst TYPEAHEAD_RESET_MS = 500;\r\n\r\n/**\r\n * The listbox popup. Hosts HermesPopoverContent for positioning/overlay/outside-click/escape\r\n * handling (the same primitive hermes-dropdown-menu uses) and owns arrow-key navigation,\r\n * Home/End, and single-character typeahead across its projected hermes-select-item children.\r\n */\r\n@Component({\r\n selector: 'hermes-select-content',\r\n templateUrl: './select-content.html',\r\n hostDirectives: [HermesPopoverContent],\r\n host: {\r\n role: 'listbox',\r\n '[attr.id]': 'state.listboxId',\r\n '[class.hermes-select-content]': 'true',\r\n '(keydown)': 'onKeydown($event)',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectContent implements AfterContentInit, OnDestroy {\r\n @ContentChildren(HermesSelectItem, { descendants: true }) items: QueryList<HermesSelectItem>;\r\n\r\n @ViewChild('viewport', { static: true }) viewport: ElementRef<HTMLElement>;\r\n\r\n canScrollUp = false;\r\n canScrollDown = false;\r\n\r\n private subscriptions: Subscription[] = [];\r\n private typeaheadBuffer = '';\r\n private typeaheadTimeout: ReturnType<typeof setTimeout>;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n private popoverService: HermesPopoverService,\r\n private popoverContent: HermesPopoverContent,\r\n private elementRef: ElementRef<HTMLElement>\r\n ) {\r\n popoverContent.contentType = HermesPopoverType.DROPDOWN;\r\n popoverContent.contentAt = HermesPopoverPosition.BOTTOM_LEFT;\r\n popoverService.panelClass.push('hermes-select-content-panel');\r\n }\r\n\r\n /**\r\n * Fallback to hide when the overlay hasn't attached (or has just detached) this\r\n * element's DOM node yet - mirrors hermes-dropdown-menu's own off-screen fallback.\r\n */\r\n @HostBinding('class.is-off-screen')\r\n get isOffScreen() {\r\n return !this.popoverService.open;\r\n }\r\n\r\n ngAfterContentInit() {\r\n this.subscriptions.push(\r\n this.popoverService.popoverVisible.subscribe(visible => {\r\n if (visible) {\r\n this.focusInitialItem();\r\n // Wait for layout so scrollHeight reflects the now-visible content.\r\n setTimeout(() => this.updateScrollButtonsVisibility());\r\n }\r\n }),\r\n this.state.valueChange.subscribe(() => this.updateItemAlignedPosition()),\r\n this.items.changes.subscribe(() => this.updateItemAlignedPosition())\r\n );\r\n\r\n // Deferred one tick: HermesSelectTrigger sets state.triggerElement in its own\r\n // ngAfterViewInit, which may not have run yet by the time this fires.\r\n setTimeout(() => this.updateItemAlignedPosition());\r\n }\r\n\r\n onViewportScroll(): void {\r\n this.updateScrollButtonsVisibility();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(subscription => subscription.unsubscribe());\r\n clearTimeout(this.typeaheadTimeout);\r\n }\r\n\r\n scrollBy(delta: number): void {\r\n this.viewport?.nativeElement.scrollBy({ top: delta });\r\n }\r\n\r\n /**\r\n * Mirrors the \"item-aligned\" positioning a native <select> (and shadcn/Radix's Select)\r\n * uses: instead of always dropping the popup below the trigger, it opens with the\r\n * currently selected item lined up against the trigger, so the control feels like it\r\n * expands in place rather than sliding a menu out from under itself. Falls back to a\r\n * plain below-the-trigger dropdown position when there's no selection yet.\r\n */\r\n private updateItemAlignedPosition(): void {\r\n const base = mapPopoverKeyToPosition(HermesPopoverPosition.BOTTOM_LEFT, HermesPopoverType.DROPDOWN);\r\n const trigger = this.state.triggerElement;\r\n const selected = this.state.selectedItem;\r\n\r\n if (!trigger || !selected) {\r\n this.popoverContent.contentAt = base;\r\n return;\r\n }\r\n\r\n const itemOffsetTop = this.offsetTopWithin(selected.nativeElement, this.elementRef.nativeElement);\r\n const triggerHeight = trigger.getBoundingClientRect().height;\r\n const itemHeight = selected.nativeElement.getBoundingClientRect().height;\r\n\r\n this.popoverContent.contentAt = {\r\n ...base,\r\n originY: 'top',\r\n overlayY: 'top',\r\n // Centers the selected item's row against the trigger's own height, then cancels out\r\n // how far that item already sits from the top of the (still off-screen) popup.\r\n offsetY: (triggerHeight - itemHeight) / 2 - itemOffsetTop,\r\n } as ConnectedPosition;\r\n }\r\n\r\n /**\r\n * Walks the offsetParent chain rather than comparing getBoundingClientRect()s: while\r\n * closed this element is `position: fixed` off-screen (see isOffScreen), so absolute\r\n * screen coordinates aren't meaningful yet, but relative offsetTop distances still are.\r\n */\r\n private offsetTopWithin(element: HTMLElement, ancestor: HTMLElement): number {\r\n let top = 0;\r\n let node: HTMLElement | null = element;\r\n while (node && node !== ancestor) {\r\n top += node.offsetTop;\r\n node = node.offsetParent as HTMLElement | null;\r\n }\r\n return top;\r\n }\r\n\r\n private updateScrollButtonsVisibility(): void {\r\n const el = this.viewport?.nativeElement;\r\n if (!el) {\r\n return;\r\n }\r\n this.canScrollUp = el.scrollTop > 0;\r\n this.canScrollDown = Math.ceil(el.scrollTop + el.clientHeight) < el.scrollHeight;\r\n }\r\n\r\n onKeydown(event: KeyboardEvent): void {\r\n const items = this.enabledItems();\r\n if (!items.length) {\r\n return;\r\n }\r\n\r\n const currentIndex = items.findIndex(item => item.nativeElement === document.activeElement);\r\n\r\n switch (event.key) {\r\n case Keys.ArrowDown:\r\n event.preventDefault();\r\n this.focusAt(items, currentIndex + 1 < items.length ? currentIndex + 1 : 0);\r\n break;\r\n case Keys.ArrowUp:\r\n event.preventDefault();\r\n this.focusAt(items, currentIndex > 0 ? currentIndex - 1 : items.length - 1);\r\n break;\r\n case Keys.Home:\r\n event.preventDefault();\r\n this.focusAt(items, 0);\r\n break;\r\n case Keys.End:\r\n event.preventDefault();\r\n this.focusAt(items, items.length - 1);\r\n break;\r\n default:\r\n this.handleTypeahead(event, items);\r\n }\r\n }\r\n\r\n private enabledItems(): HermesSelectItem[] {\r\n return this.items?.filter(item => !item.disabled) ?? [];\r\n }\r\n\r\n private focusAt(items: HermesSelectItem[], index: number): void {\r\n items[index]?.focus();\r\n }\r\n\r\n private focusInitialItem(): void {\r\n // The overlay's own content isn't attached/focusable synchronously with this emission.\r\n setTimeout(() => {\r\n const items = this.enabledItems();\r\n if (!items.length) {\r\n return;\r\n }\r\n (items.find(item => item.selected) ?? items[0]).focus();\r\n });\r\n }\r\n\r\n private handleTypeahead(event: KeyboardEvent, items: HermesSelectItem[]): void {\r\n if (event.key.length !== 1 || event.metaKey || event.ctrlKey || event.altKey) {\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n clearTimeout(this.typeaheadTimeout);\r\n this.typeaheadBuffer += event.key.toLowerCase();\r\n this.typeaheadTimeout = setTimeout(() => (this.typeaheadBuffer = ''), TYPEAHEAD_RESET_MS);\r\n\r\n const match = items.find(item => item.nativeElement.textContent?.trim().toLowerCase().startsWith(this.typeaheadBuffer));\r\n match?.focus();\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 (canScrollUp) {\r\n <button type=\"button\" class=\"hermes-select-scroll-button\" aria-hidden=\"true\" tabindex=\"-1\" (click)=\"scrollBy(-40)\">\r\n <hermes-icon shape=\"angle\" direction=\"up\" size=\"16\"></hermes-icon>\r\n </button>\r\n}\r\n<div #viewport class=\"hermes-select-viewport\" (scroll)=\"onViewportScroll()\">\r\n <ng-content></ng-content>\r\n</div>\r\n@if (canScrollDown) {\r\n <button type=\"button\" class=\"hermes-select-scroll-button\" aria-hidden=\"true\" tabindex=\"-1\" (click)=\"scrollBy(40)\">\r\n <hermes-icon shape=\"angle\" direction=\"down\" size=\"16\"></hermes-icon>\r\n </button>\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: 'hermes-select-group',\r\n template: '<ng-content></ng-content>',\r\n host: {\r\n role: 'group',\r\n '[class.hermes-select-group]': 'true',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectGroup {}\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: 'hermes-select-label',\r\n template: '<ng-content></ng-content>',\r\n host: {\r\n '[class.hermes-select-label]': 'true',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectLabel {}\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: 'hermes-select-separator',\r\n template: '',\r\n host: {\r\n role: 'separator',\r\n '[class.hermes-select-separator]': 'true',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectSeparator {}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { angleIcon, checkIcon, ClarityIcons, HermesIcon } from '@hermes-ui/angular/icon';\r\nimport { HermesPopoverModuleNext } from '@hermes-ui/angular/popover/common';\r\n\r\nimport { HermesSelect } from './select';\r\nimport { HermesSelectContent } from './select-content';\r\nimport { HermesSelectGroup } from './select-group';\r\nimport { HermesSelectItem } from './select-item';\r\nimport { HermesSelectLabel } from './select-label';\r\nimport { HermesSelectSeparator } from './select-separator';\r\nimport { HermesSelectTrigger } from './select-trigger';\r\nimport { HermesSelectValue } from './select-value';\r\n\r\nconst HERMES_SELECT_DIRECTIVES = [\r\n HermesSelect,\r\n HermesSelectTrigger,\r\n HermesSelectValue,\r\n HermesSelectContent,\r\n HermesSelectItem,\r\n HermesSelectGroup,\r\n HermesSelectLabel,\r\n HermesSelectSeparator,\r\n];\r\n\r\n@NgModule({\r\n imports: [CommonModule, HermesIcon, HermesPopoverModuleNext],\r\n declarations: [HERMES_SELECT_DIRECTIVES],\r\n exports: [HERMES_SELECT_DIRECTIVES],\r\n})\r\nexport class HermesSelectModule {\r\n constructor() {\r\n ClarityIcons.addIcons(angleIcon, checkIcon);\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 './select';\r\nexport * from './select-trigger';\r\nexport * from './select-value';\r\nexport * from './select-content';\r\nexport * from './select-item';\r\nexport * from './select-group';\r\nexport * from './select-label';\r\nexport * from './select-separator';\r\nexport * from './select.module';\r\nexport * from './providers/select-state.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.HermesSelectStateService","i2"],"mappings":"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"}
1
+ {"version":3,"file":"hermes-ui-angular-forms-select.mjs","sources":["../../../forms/select/providers/select-state.service.ts","../../../forms/select/select.ts","../../../forms/select/select-trigger.ts","../../../forms/select/select-trigger.html","../../../forms/select/select-value.ts","../../../forms/select/select-value.html","../../../forms/select/select-item.ts","../../../forms/select/select-item.html","../../../forms/select/select-content.ts","../../../forms/select/select-content.html","../../../forms/select/select-group.ts","../../../forms/select/select-label.ts","../../../forms/select/select-separator.ts","../../../forms/select/select.module.ts","../../../forms/select/index.ts","../../../forms/select/hermes-ui-angular-forms-select.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 { Injectable } from '@angular/core';\r\nimport { uniqueIdFactory } from '@hermes-ui/angular/utils';\r\nimport { Subject } from 'rxjs';\r\n\r\n/**\r\n * Minimal shape HermesSelectItem exposes to the shared state - kept as an interface (rather\r\n * than importing HermesSelectItem directly) to avoid a service <-> component circular import.\r\n *\r\n * getLabelHtml() returns a snapshot of the item's rendered markup (innerHTML), rather than\r\n * exposing its content as a re-usable TemplateRef: <ng-content> projects a single, real set of\r\n * DOM nodes, so instantiating that same template a second time (e.g. from hermes-select-value)\r\n * would move those nodes there instead of cloning them, leaving the item's own row empty the\r\n * moment it becomes selected.\r\n */\r\nexport interface HermesSelectItemRef {\r\n value: unknown;\r\n disabled: boolean;\r\n nativeElement: HTMLElement;\r\n getLabelHtml(): string;\r\n focus(): void;\r\n}\r\n\r\n/**\r\n * Shared state for a single hermes-select instance, provided at the HermesSelect component\r\n * level so the trigger, value, content, and every item can all read/mutate the same value\r\n * and item registry without prop-drilling through content projection.\r\n */\r\n@Injectable()\r\nexport class HermesSelectStateService {\r\n disabled = false;\r\n placeholder = '';\r\n items: HermesSelectItemRef[] = [];\r\n readonly listboxId = uniqueIdFactory();\r\n\r\n /** Set by HermesSelectTrigger; read by HermesSelectContent to item-align the popup. */\r\n triggerElement?: HTMLElement;\r\n\r\n readonly valueChange = new Subject<unknown>();\r\n\r\n onChange: (value: unknown) => void = () => {};\r\n onTouched: () => void = () => {};\r\n\r\n private _value: unknown;\r\n\r\n get value(): unknown {\r\n return this._value;\r\n }\r\n set value(value: unknown) {\r\n this._value = value;\r\n }\r\n\r\n get selectedItem(): HermesSelectItemRef | undefined {\r\n return this.items.find(item => this.isSelected(item.value));\r\n }\r\n\r\n isSelected(value: unknown): boolean {\r\n return this._value !== undefined && this._value !== null && this._value === value;\r\n }\r\n\r\n registerItem(item: HermesSelectItemRef): void {\r\n this.items.push(item);\r\n }\r\n\r\n unregisterItem(item: HermesSelectItemRef): void {\r\n const index = this.items.indexOf(item);\r\n if (index > -1) {\r\n this.items.splice(index, 1);\r\n }\r\n }\r\n\r\n selectValue(value: unknown): void {\r\n if (this.disabled || this._value === value) {\r\n return;\r\n }\r\n this._value = value;\r\n this.onChange(value);\r\n this.valueChange.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 { Component, forwardRef, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { HermesPopoverHostDirective, HermesPopoverService } from '@hermes-ui/angular/popover/common';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\n/**\r\n * Root of a hermes-select. Renders nothing itself besides its projected content\r\n * (typically a HermesSelectTrigger and a HermesSelectContent) and provides the\r\n * HermesSelectStateService every descendant reads/writes through.\r\n */\r\n@Component({\r\n selector: 'hermes-select',\r\n template: '<ng-content></ng-content>',\r\n providers: [\r\n HermesSelectStateService,\r\n { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => HermesSelect), multi: true },\r\n ],\r\n hostDirectives: [HermesPopoverHostDirective],\r\n host: {\r\n '[class.hermes-select]': 'true',\r\n '[attr.data-disabled]': 'disabled || null',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelect implements ControlValueAccessor, OnInit, OnDestroy {\r\n private subscription: Subscription;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n private popoverService: HermesPopoverService\r\n ) {}\r\n\r\n get disabled(): boolean {\r\n return this.state.disabled;\r\n }\r\n\r\n @Input()\r\n get placeholder(): string {\r\n return this.state.placeholder;\r\n }\r\n set placeholder(value: string) {\r\n this.state.placeholder = value ?? '';\r\n }\r\n\r\n ngOnInit() {\r\n // A close (regardless of whether it happened through a selection, Escape, or an\r\n // outside click) is the closest thing a listbox-style control has to a \"blur\".\r\n this.subscription = this.popoverService.openChange.subscribe(open => {\r\n if (!open) {\r\n this.state.onTouched();\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription?.unsubscribe();\r\n }\r\n\r\n writeValue(value: unknown): void {\r\n this.state.value = value;\r\n }\r\n\r\n registerOnChange(fn: (value: unknown) => void): void {\r\n this.state.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: () => void): void {\r\n this.state.onTouched = fn;\r\n }\r\n\r\n setDisabledState(isDisabled: boolean): void {\r\n this.state.disabled = isDisabled;\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 { AfterViewInit, Component, ElementRef, Input, ViewChild } from '@angular/core';\r\nimport { HermesPopoverService } from '@hermes-ui/angular/popover/common';\r\n\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\n/**\r\n * The button that opens the listbox. A real <button> so Enter/Space activation and tab\r\n * order come from the browser for free; only ArrowUp/ArrowDown need their own handling\r\n * here, matching how a native <select> also opens on either arrow key.\r\n */\r\n@Component({\r\n selector: 'hermes-select-trigger',\r\n templateUrl: './select-trigger.html',\r\n host: {\r\n '[class.hermes-select-trigger]': 'true',\r\n '[attr.data-size]': 'size',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectTrigger implements AfterViewInit {\r\n @Input() size: 'default' | 'sm' = 'default';\r\n\r\n @ViewChild('triggerButton', { static: true }) private buttonRef: ElementRef<HTMLButtonElement>;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n public popoverService: HermesPopoverService\r\n ) {}\r\n\r\n ngAfterViewInit() {\r\n this.state.triggerElement = this.buttonRef.nativeElement;\r\n }\r\n\r\n openOnArrowKey(event: Event): void {\r\n if (this.state.disabled) {\r\n return;\r\n }\r\n event.preventDefault();\r\n if (!this.popoverService.open) {\r\n this.popoverService.open = true;\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<button\r\n #triggerButton\r\n type=\"button\"\r\n class=\"hermes-select-trigger-button\"\r\n role=\"combobox\"\r\n hermesPopoverOrigin\r\n hermesPopoverOpenCloseButton\r\n [disabled]=\"state.disabled\"\r\n [attr.aria-expanded]=\"popoverService.open\"\r\n [attr.aria-controls]=\"state.listboxId\"\r\n aria-haspopup=\"listbox\"\r\n (keydown.ArrowDown)=\"openOnArrowKey($event)\"\r\n (keydown.ArrowUp)=\"openOnArrowKey($event)\"\r\n>\r\n <ng-content></ng-content>\r\n <hermes-icon shape=\"angle\" direction=\"down\" size=\"16\" class=\"hermes-select-trigger-icon\"></hermes-icon>\r\n</button>\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, Input } from '@angular/core';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\n\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\n/**\r\n * Displays a snapshot of the selected item's rendered markup inside the trigger, or the\r\n * placeholder text when nothing is selected yet - mirrors shadcn's <SelectValue>.\r\n *\r\n * Reads HermesSelectItem.getLabelHtml() (an innerHTML snapshot) rather than re-rendering the\r\n * item's projected content through a shared TemplateRef: <ng-content> hands out one real set\r\n * of DOM nodes, and instantiating that same template a second time here would move them out\r\n * of the item's own row instead of cloning them.\r\n */\r\n@Component({\r\n selector: 'hermes-select-value',\r\n templateUrl: './select-value.html',\r\n host: {\r\n '[class.hermes-select-value]': 'true',\r\n '[class.hermes-select-placeholder]': '!state.selectedItem',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectValue {\r\n @Input() placeholder: string;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n private sanitizer: DomSanitizer\r\n ) {}\r\n\r\n get resolvedPlaceholder(): string {\r\n return this.placeholder ?? this.state.placeholder;\r\n }\r\n\r\n get valueHtml(): SafeHtml | null {\r\n const item = this.state.selectedItem;\r\n // Trusted: this is a snapshot of markup this same app already rendered from its own\r\n // hermes-select-item templates, not third-party or user-supplied HTML.\r\n return item ? this.sanitizer.bypassSecurityTrustHtml(item.getLabelHtml()) : null;\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 (state.selectedItem) {\r\n <span [innerHTML]=\"valueHtml\"></span>\r\n} @else {\r\n {{ resolvedPlaceholder }}\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, ElementRef, Input, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\n\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\n@Component({\r\n selector: 'hermes-select-item',\r\n templateUrl: './select-item.html',\r\n host: {\r\n role: 'option',\r\n '[attr.aria-selected]': 'selected',\r\n '[attr.aria-disabled]': 'disabled || null',\r\n '[attr.tabindex]': '-1',\r\n '[class.hermes-select-item]': 'true',\r\n '[class.selected]': 'selected',\r\n '[class.disabled]': 'disabled',\r\n '(click)': 'onSelect()',\r\n '(keydown.enter)': 'onKeydownSelect($event)',\r\n '(keydown.space)': 'onKeydownSelect($event)',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectItem implements OnInit, OnDestroy {\r\n @Input() value: unknown;\r\n\r\n @ViewChild('text', { static: true }) private textEl: ElementRef<HTMLElement>;\r\n\r\n private _disabled = false;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n private elementRef: ElementRef<HTMLElement>\r\n ) {}\r\n\r\n @Input()\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n set disabled(value: boolean | string) {\r\n this._disabled = !!value || value === '';\r\n }\r\n\r\n get selected(): boolean {\r\n return this.state.isSelected(this.value);\r\n }\r\n\r\n get nativeElement(): HTMLElement {\r\n return this.elementRef.nativeElement;\r\n }\r\n\r\n focus(): void {\r\n this.elementRef.nativeElement.focus();\r\n }\r\n\r\n getLabelHtml(): string {\r\n return this.textEl?.nativeElement.innerHTML ?? '';\r\n }\r\n\r\n ngOnInit() {\r\n this.state.registerItem(this);\r\n }\r\n\r\n ngOnDestroy() {\r\n this.state.unregisterItem(this);\r\n }\r\n\r\n onSelect(): void {\r\n if (this.disabled) {\r\n return;\r\n }\r\n this.state.selectValue(this.value);\r\n }\r\n\r\n onKeydownSelect(event: KeyboardEvent): void {\r\n // Space normally scrolls the page; both keys should only ever select.\r\n event.preventDefault();\r\n this.onSelect();\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<span #text class=\"hermes-select-item-text\">\r\n <ng-content></ng-content>\r\n</span>\r\n<span class=\"hermes-select-item-indicator\">\r\n @if (selected) {\r\n <hermes-icon shape=\"check\" size=\"16\"></hermes-icon>\r\n }\r\n</span>\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 { ConnectedPosition } from '@angular/cdk/overlay';\r\nimport {\r\n AfterContentInit,\r\n Component,\r\n ContentChildren,\r\n ElementRef,\r\n HostBinding,\r\n OnDestroy,\r\n QueryList,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport {\r\n HermesPopoverContent,\r\n HermesPopoverPosition,\r\n HermesPopoverService,\r\n HermesPopoverType,\r\n mapPopoverKeyToPosition,\r\n} from '@hermes-ui/angular/popover/common';\r\nimport { Keys } from '@hermes-ui/angular/utils';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { HermesSelectItem } from './select-item';\r\nimport { HermesSelectStateService } from './providers/select-state.service';\r\n\r\nconst TYPEAHEAD_RESET_MS = 500;\r\n\r\n/**\r\n * The listbox popup. Hosts HermesPopoverContent for positioning/overlay/outside-click/escape\r\n * handling (the same primitive hermes-dropdown-menu uses) and owns arrow-key navigation,\r\n * Home/End, and single-character typeahead across its projected hermes-select-item children.\r\n */\r\n@Component({\r\n selector: 'hermes-select-content',\r\n templateUrl: './select-content.html',\r\n hostDirectives: [HermesPopoverContent],\r\n host: {\r\n role: 'listbox',\r\n '[attr.id]': 'state.listboxId',\r\n '[class.hermes-select-content]': 'true',\r\n '(keydown)': 'onKeydown($event)',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectContent implements AfterContentInit, OnDestroy {\r\n @ContentChildren(HermesSelectItem, { descendants: true }) items: QueryList<HermesSelectItem>;\r\n\r\n @ViewChild('viewport', { static: true }) viewport: ElementRef<HTMLElement>;\r\n\r\n canScrollUp = false;\r\n canScrollDown = false;\r\n\r\n private subscriptions: Subscription[] = [];\r\n private typeaheadBuffer = '';\r\n private typeaheadTimeout: ReturnType<typeof setTimeout>;\r\n\r\n constructor(\r\n public state: HermesSelectStateService,\r\n private popoverService: HermesPopoverService,\r\n private popoverContent: HermesPopoverContent,\r\n private elementRef: ElementRef<HTMLElement>\r\n ) {\r\n popoverContent.contentType = HermesPopoverType.DROPDOWN;\r\n popoverContent.contentAt = HermesPopoverPosition.BOTTOM_LEFT;\r\n popoverService.panelClass.push('hermes-select-content-panel');\r\n }\r\n\r\n /**\r\n * Fallback to hide when the overlay hasn't attached (or has just detached) this\r\n * element's DOM node yet - mirrors hermes-dropdown-menu's own off-screen fallback.\r\n */\r\n @HostBinding('class.is-off-screen')\r\n get isOffScreen() {\r\n return !this.popoverService.open;\r\n }\r\n\r\n ngAfterContentInit() {\r\n this.subscriptions.push(\r\n this.popoverService.popoverVisible.subscribe(visible => {\r\n if (visible) {\r\n this.focusInitialItem();\r\n // Wait for layout so scrollHeight reflects the now-visible content.\r\n setTimeout(() => this.updateScrollButtonsVisibility());\r\n }\r\n }),\r\n this.state.valueChange.subscribe(() => this.updateItemAlignedPosition()),\r\n this.items.changes.subscribe(() => this.updateItemAlignedPosition())\r\n );\r\n\r\n // Deferred one tick: HermesSelectTrigger sets state.triggerElement in its own\r\n // ngAfterViewInit, which may not have run yet by the time this fires.\r\n setTimeout(() => this.updateItemAlignedPosition());\r\n }\r\n\r\n onViewportScroll(): void {\r\n this.updateScrollButtonsVisibility();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscriptions.forEach(subscription => subscription.unsubscribe());\r\n clearTimeout(this.typeaheadTimeout);\r\n }\r\n\r\n scrollBy(delta: number): void {\r\n this.viewport?.nativeElement.scrollBy({ top: delta });\r\n }\r\n\r\n /**\r\n * Mirrors the \"item-aligned\" positioning a native <select> (and shadcn/Radix's Select)\r\n * uses: instead of always dropping the popup below the trigger, it opens with the\r\n * currently selected item lined up against the trigger, so the control feels like it\r\n * expands in place rather than sliding a menu out from under itself. Falls back to a\r\n * plain below-the-trigger dropdown position when there's no selection yet.\r\n */\r\n private updateItemAlignedPosition(): void {\r\n const base = mapPopoverKeyToPosition(HermesPopoverPosition.BOTTOM_LEFT, HermesPopoverType.DROPDOWN);\r\n const trigger = this.state.triggerElement;\r\n const selected = this.state.selectedItem;\r\n\r\n if (!trigger || !selected) {\r\n this.popoverContent.contentAt = base;\r\n return;\r\n }\r\n\r\n const itemOffsetTop = this.offsetTopWithin(selected.nativeElement, this.elementRef.nativeElement);\r\n const triggerHeight = trigger.getBoundingClientRect().height;\r\n const itemHeight = selected.nativeElement.getBoundingClientRect().height;\r\n\r\n this.popoverContent.contentAt = {\r\n ...base,\r\n originY: 'top',\r\n overlayY: 'top',\r\n // Centers the selected item's row against the trigger's own height, then cancels out\r\n // how far that item already sits from the top of the (still off-screen) popup.\r\n offsetY: (triggerHeight - itemHeight) / 2 - itemOffsetTop,\r\n } as ConnectedPosition;\r\n }\r\n\r\n /**\r\n * Walks the offsetParent chain rather than comparing getBoundingClientRect()s: while\r\n * closed this element is `position: fixed` off-screen (see isOffScreen), so absolute\r\n * screen coordinates aren't meaningful yet, but relative offsetTop distances still are.\r\n */\r\n private offsetTopWithin(element: HTMLElement, ancestor: HTMLElement): number {\r\n let top = 0;\r\n let node: HTMLElement | null = element;\r\n while (node && node !== ancestor) {\r\n top += node.offsetTop;\r\n node = node.offsetParent as HTMLElement | null;\r\n }\r\n return top;\r\n }\r\n\r\n private updateScrollButtonsVisibility(): void {\r\n const el = this.viewport?.nativeElement;\r\n if (!el) {\r\n return;\r\n }\r\n this.canScrollUp = el.scrollTop > 0;\r\n this.canScrollDown = Math.ceil(el.scrollTop + el.clientHeight) < el.scrollHeight;\r\n }\r\n\r\n onKeydown(event: KeyboardEvent): void {\r\n const items = this.enabledItems();\r\n if (!items.length) {\r\n return;\r\n }\r\n\r\n const currentIndex = items.findIndex(item => item.nativeElement === document.activeElement);\r\n\r\n switch (event.key) {\r\n case Keys.ArrowDown:\r\n event.preventDefault();\r\n this.focusAt(items, currentIndex + 1 < items.length ? currentIndex + 1 : 0);\r\n break;\r\n case Keys.ArrowUp:\r\n event.preventDefault();\r\n this.focusAt(items, currentIndex > 0 ? currentIndex - 1 : items.length - 1);\r\n break;\r\n case Keys.Home:\r\n event.preventDefault();\r\n this.focusAt(items, 0);\r\n break;\r\n case Keys.End:\r\n event.preventDefault();\r\n this.focusAt(items, items.length - 1);\r\n break;\r\n default:\r\n this.handleTypeahead(event, items);\r\n }\r\n }\r\n\r\n private enabledItems(): HermesSelectItem[] {\r\n return this.items?.filter(item => !item.disabled) ?? [];\r\n }\r\n\r\n private focusAt(items: HermesSelectItem[], index: number): void {\r\n items[index]?.focus();\r\n }\r\n\r\n private focusInitialItem(): void {\r\n // The overlay's own content isn't attached/focusable synchronously with this emission.\r\n setTimeout(() => {\r\n const items = this.enabledItems();\r\n if (!items.length) {\r\n return;\r\n }\r\n (items.find(item => item.selected) ?? items[0]).focus();\r\n });\r\n }\r\n\r\n private handleTypeahead(event: KeyboardEvent, items: HermesSelectItem[]): void {\r\n if (event.key.length !== 1 || event.metaKey || event.ctrlKey || event.altKey) {\r\n return;\r\n }\r\n\r\n event.preventDefault();\r\n clearTimeout(this.typeaheadTimeout);\r\n this.typeaheadBuffer += event.key.toLowerCase();\r\n this.typeaheadTimeout = setTimeout(() => (this.typeaheadBuffer = ''), TYPEAHEAD_RESET_MS);\r\n\r\n const match = items.find(item => item.nativeElement.textContent?.trim().toLowerCase().startsWith(this.typeaheadBuffer));\r\n match?.focus();\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 (canScrollUp) {\r\n <button type=\"button\" class=\"hermes-select-scroll-button\" aria-hidden=\"true\" tabindex=\"-1\" (click)=\"scrollBy(-40)\">\r\n <hermes-icon shape=\"angle\" direction=\"up\" size=\"16\"></hermes-icon>\r\n </button>\r\n}\r\n<div #viewport class=\"hermes-select-viewport\" (scroll)=\"onViewportScroll()\">\r\n <ng-content></ng-content>\r\n</div>\r\n@if (canScrollDown) {\r\n <button type=\"button\" class=\"hermes-select-scroll-button\" aria-hidden=\"true\" tabindex=\"-1\" (click)=\"scrollBy(40)\">\r\n <hermes-icon shape=\"angle\" direction=\"down\" size=\"16\"></hermes-icon>\r\n </button>\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: 'hermes-select-group',\r\n template: '<ng-content></ng-content>',\r\n host: {\r\n role: 'group',\r\n '[class.hermes-select-group]': 'true',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectGroup {}\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: 'hermes-select-label',\r\n template: '<ng-content></ng-content>',\r\n host: {\r\n '[class.hermes-select-label]': 'true',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectLabel {}\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: 'hermes-select-separator',\r\n template: '',\r\n host: {\r\n role: 'separator',\r\n '[class.hermes-select-separator]': 'true',\r\n },\r\n standalone: false,\r\n})\r\nexport class HermesSelectSeparator {}\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 } from '@angular/core';\nimport { angleIcon, checkIcon, HermesIcons, HermesIcon } from '@hermes-ui/angular/icon';\nimport { HermesPopoverModuleNext } from '@hermes-ui/angular/popover/common';\n\nimport { HermesSelect } from './select';\nimport { HermesSelectContent } from './select-content';\nimport { HermesSelectGroup } from './select-group';\nimport { HermesSelectItem } from './select-item';\nimport { HermesSelectLabel } from './select-label';\nimport { HermesSelectSeparator } from './select-separator';\nimport { HermesSelectTrigger } from './select-trigger';\nimport { HermesSelectValue } from './select-value';\n\nconst HERMES_SELECT_DIRECTIVES = [\n HermesSelect,\n HermesSelectTrigger,\n HermesSelectValue,\n HermesSelectContent,\n HermesSelectItem,\n HermesSelectGroup,\n HermesSelectLabel,\n HermesSelectSeparator,\n];\n\n@NgModule({\n imports: [CommonModule, HermesIcon, HermesPopoverModuleNext],\n declarations: [HERMES_SELECT_DIRECTIVES],\n exports: [HERMES_SELECT_DIRECTIVES],\n})\nexport class HermesSelectModule {\n constructor() {\n HermesIcons.addIcons(angleIcon, checkIcon);\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 './select';\r\nexport * from './select-trigger';\r\nexport * from './select-value';\r\nexport * from './select-content';\r\nexport * from './select-item';\r\nexport * from './select-group';\r\nexport * from './select-label';\r\nexport * from './select-separator';\r\nexport * from './select.module';\r\nexport * from './providers/select-state.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.HermesSelectStateService","i2"],"mappings":"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"}
@@ -6,7 +6,7 @@ import * as i1 from '@angular/common';
6
6
  import { CommonModule } from '@angular/common';
7
7
  import * as i1$1 from '@angular/forms';
8
8
  import { FormsModule } from '@angular/forms';
9
- import { ClarityIcons, successStandardIcon, errorStandardIcon, HermesIcon } from '@hermes-ui/angular/icon';
9
+ import { HermesIcons, successStandardIcon, errorStandardIcon, HermesIcon } from '@hermes-ui/angular/icon';
10
10
 
11
11
  /*
12
12
  * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
@@ -106,7 +106,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImpo
106
106
  */
107
107
  class HermesTextareaModule {
108
108
  constructor() {
109
- ClarityIcons.addIcons(successStandardIcon, errorStandardIcon);
109
+ HermesIcons.addIcons(successStandardIcon, errorStandardIcon);
110
110
  }
111
111
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: HermesTextareaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
112
112
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: HermesTextareaModule, declarations: [HermesTextarea, HermesTextareaContainer], imports: [CommonModule, FormsModule, HermesIcon, HermesCommonFormsModule], exports: [HermesCommonFormsModule, HermesTextarea, HermesTextareaContainer] }); }
@@ -1 +1 @@
1
- {"version":3,"file":"hermes-ui-angular-forms-textarea.mjs","sources":["../../../forms/textarea/textarea-container.ts","../../../forms/textarea/textarea.ts","../../../forms/textarea/textarea.module.ts","../../../forms/textarea/index.ts","../../../forms/textarea/hermes-ui-angular-forms-textarea.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\nimport {\r\n HermesAbstractContainer,\r\n ControlClassService,\r\n ControlIdService,\r\n NgControlService,\r\n} from '@hermes-ui/angular/forms/common';\r\n\r\n@Component({\r\n selector: 'hermes-textarea-container',\r\n template: `\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label && addGrid()) {\r\n <label></label>\r\n }\r\n <div class=\"hermes-control-container\" [ngClass]=\"controlClass()\">\r\n <div class=\"hermes-textarea-wrapper\">\r\n <ng-content select=\"[hermesTextarea]\"></ng-content>\r\n </div>\r\n @if (showHelper) {\r\n <ng-content select=\"hermes-control-helper\"></ng-content>\r\n }\r\n @if (showInvalid) {\r\n <ng-content select=\"hermes-control-error\"></ng-content>\r\n }\r\n @if (showValid) {\r\n <ng-content select=\"hermes-control-success\"></ng-content>\r\n }\r\n </div>\r\n `,\r\n host: {\r\n '[class.hermes-form-control]': 'true',\r\n '[class.hermes-form-control-disabled]': 'control?.disabled',\r\n '[class.hermes-row]': 'addGrid()',\r\n },\r\n providers: [NgControlService, ControlIdService, ControlClassService],\r\n standalone: false,\r\n})\r\nexport class HermesTextareaContainer extends HermesAbstractContainer {}\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, Injector, Optional, Renderer2, Self, ViewContainerRef } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\nimport { WrappedFormControl } from '@hermes-ui/angular/forms/common';\r\n\r\nimport { HermesTextareaContainer } from './textarea-container';\r\n\r\n@Directive({\r\n selector: '[hermesTextarea]',\r\n host: { '[class.hermes-textarea]': 'true' },\r\n standalone: false,\r\n})\r\nexport class HermesTextarea extends WrappedFormControl<HermesTextareaContainer> {\r\n protected override index = 1;\r\n\r\n constructor(\r\n vcr: ViewContainerRef,\r\n injector: Injector,\r\n @Self()\r\n @Optional()\r\n control: NgControl,\r\n renderer: Renderer2,\r\n el: ElementRef<HTMLTextAreaElement>\r\n ) {\r\n super(vcr, HermesTextareaContainer, injector, control, renderer, el);\r\n }\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HermesCommonFormsModule } from '@hermes-ui/angular/forms/common';\r\nimport { ClarityIcons, HermesIcon, errorStandardIcon, successStandardIcon } from '@hermes-ui/angular/icon';\r\n\r\nimport { HermesTextarea } from './textarea';\r\nimport { HermesTextareaContainer } from './textarea-container';\r\n\r\n@NgModule({\r\n imports: [CommonModule, FormsModule, HermesIcon, HermesCommonFormsModule],\r\n declarations: [HermesTextarea, HermesTextareaContainer],\r\n exports: [HermesCommonFormsModule, HermesTextarea, HermesTextareaContainer],\r\n})\r\nexport class HermesTextareaModule {\r\n constructor() {\r\n ClarityIcons.addIcons(successStandardIcon, errorStandardIcon);\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 './textarea';\r\nexport * from './textarea-container';\r\nexport * from './textarea.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"hermes-ui-angular-forms-textarea.mjs","sources":["../../../forms/textarea/textarea-container.ts","../../../forms/textarea/textarea.ts","../../../forms/textarea/textarea.module.ts","../../../forms/textarea/index.ts","../../../forms/textarea/hermes-ui-angular-forms-textarea.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\nimport {\r\n HermesAbstractContainer,\r\n ControlClassService,\r\n ControlIdService,\r\n NgControlService,\r\n} from '@hermes-ui/angular/forms/common';\r\n\r\n@Component({\r\n selector: 'hermes-textarea-container',\r\n template: `\r\n <ng-content select=\"label\"></ng-content>\r\n @if (!label && addGrid()) {\r\n <label></label>\r\n }\r\n <div class=\"hermes-control-container\" [ngClass]=\"controlClass()\">\r\n <div class=\"hermes-textarea-wrapper\">\r\n <ng-content select=\"[hermesTextarea]\"></ng-content>\r\n </div>\r\n @if (showHelper) {\r\n <ng-content select=\"hermes-control-helper\"></ng-content>\r\n }\r\n @if (showInvalid) {\r\n <ng-content select=\"hermes-control-error\"></ng-content>\r\n }\r\n @if (showValid) {\r\n <ng-content select=\"hermes-control-success\"></ng-content>\r\n }\r\n </div>\r\n `,\r\n host: {\r\n '[class.hermes-form-control]': 'true',\r\n '[class.hermes-form-control-disabled]': 'control?.disabled',\r\n '[class.hermes-row]': 'addGrid()',\r\n },\r\n providers: [NgControlService, ControlIdService, ControlClassService],\r\n standalone: false,\r\n})\r\nexport class HermesTextareaContainer extends HermesAbstractContainer {}\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, Injector, Optional, Renderer2, Self, ViewContainerRef } from '@angular/core';\r\nimport { NgControl } from '@angular/forms';\r\nimport { WrappedFormControl } from '@hermes-ui/angular/forms/common';\r\n\r\nimport { HermesTextareaContainer } from './textarea-container';\r\n\r\n@Directive({\r\n selector: '[hermesTextarea]',\r\n host: { '[class.hermes-textarea]': 'true' },\r\n standalone: false,\r\n})\r\nexport class HermesTextarea extends WrappedFormControl<HermesTextareaContainer> {\r\n protected override index = 1;\r\n\r\n constructor(\r\n vcr: ViewContainerRef,\r\n injector: Injector,\r\n @Self()\r\n @Optional()\r\n control: NgControl,\r\n renderer: Renderer2,\r\n el: ElementRef<HTMLTextAreaElement>\r\n ) {\r\n super(vcr, HermesTextareaContainer, injector, control, renderer, el);\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 } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { HermesCommonFormsModule } from '@hermes-ui/angular/forms/common';\nimport { HermesIcons, HermesIcon, errorStandardIcon, successStandardIcon } from '@hermes-ui/angular/icon';\n\nimport { HermesTextarea } from './textarea';\nimport { HermesTextareaContainer } from './textarea-container';\n\n@NgModule({\n imports: [CommonModule, FormsModule, HermesIcon, HermesCommonFormsModule],\n declarations: [HermesTextarea, HermesTextareaContainer],\n exports: [HermesCommonFormsModule, HermesTextarea, HermesTextareaContainer],\n})\nexport class HermesTextareaModule {\n constructor() {\n HermesIcons.addIcons(successStandardIcon, errorStandardIcon);\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 './textarea';\r\nexport * from './textarea-container';\r\nexport * from './textarea.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}