@hermes-ui/angular 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +52 -0
- package/accordion/_accordion.clarity.scss +81 -0
- package/accordion/_properties.accordion.scss +45 -0
- package/accordion/_variables.accordion.scss +91 -0
- package/addons/a11y/README.md +157 -0
- package/addons/a11y/forms/required-field-legend.component.scss +17 -0
- package/addons/card-container/card/appfx-card.component.scss +137 -0
- package/addons/card-container/container/appfx-card-container.component.scss +17 -0
- package/addons/card-container/settings/appfx-card-container-settings.component.scss +62 -0
- package/addons/certificate-viewer/certificate-viewer/certificate-viewer.component.scss +69 -0
- package/addons/certificate-viewer/certificate-viewer-details/certificate-viewer-details.component.scss +49 -0
- package/addons/certificate-viewer/certificate-viewer-general/certificate-viewer-general.component.scss +38 -0
- package/addons/datagrid/README.md +289 -0
- package/addons/datagrid/addons/action-bar/datagrid-action-bar.component.scss +81 -0
- package/addons/datagrid/addons/column-toggle/datagrid-column-toggle.component.scss +99 -0
- package/addons/datagrid/addons/export/export-datagrid.component.scss +9 -0
- package/addons/datagrid/datagrid.component.scss +339 -0
- package/addons/datagrid-filters/README.md +223 -0
- package/addons/datagrid-filters/advanced-filters/date-time-filter.component.scss +10 -0
- package/addons/datagrid-filters/advanced-filters/enum-filter.component.scss +40 -0
- package/addons/datagrid-filters/advanced-filters/users-filter.component.scss +11 -0
- package/addons/datagrid-filters/common-styles.scss +98 -0
- package/addons/datagrid-filters/composite-filters.component.scss +26 -0
- package/addons/datagrid-filters/datagrid-filters.component.scss +22 -0
- package/addons/datagrid-filters/manage-filters/manage-filter.component.scss +42 -0
- package/addons/dialog/README.md +112 -0
- package/addons/dialog/multi-page-dialog.a11y.scss +203 -0
- package/addons/dialog/multi-page-dialog.component.scss +102 -0
- package/addons/dialog/toggle-component/toggle.component.scss +15 -0
- package/addons/drag-and-drop/README.md +48 -0
- package/addons/menu/menu.component.scss +120 -0
- package/addons/property-view/components/property-view-category.component.scss +38 -0
- package/addons/property-view/components/property-view-message.component.scss +48 -0
- package/addons/property-view/components/property-view-property.component.scss +122 -0
- package/addons/property-view/components/property-view-section.component.scss +59 -0
- package/addons/property-view/components/property-view.component.scss +23 -0
- package/addons/stepper/stepper.component.scss +53 -0
- package/addons/tabs/tab-links/tab-links.component.scss +61 -0
- package/addons/tabs/tabs.a11y.scss +26 -0
- package/addons/tabs/tabs.component.scss +95 -0
- package/addons/theme-builder/README.md +70 -0
- package/addons/theme-builder/theme-builder.component.scss +194 -0
- package/addons/translate/README.md +124 -0
- package/addons/var/debug/workflow-model-monitor.component.scss +50 -0
- package/addons/var/error/error.component.scss +38 -0
- package/addons/var/spinner/spinner.component.scss +33 -0
- package/addons/wizard/summary/summary.component.scss +22 -0
- package/addons/wizard/wizard.component.scss +251 -0
- package/button/_buttons.clarity.scss +388 -0
- package/button/_mixins.buttons.scss +241 -0
- package/button/_properties.buttons.scss +387 -0
- package/button/_properties.toggles.scss +35 -0
- package/button/_variables.buttons.scss +905 -0
- package/button/_variables.toggles.scss +41 -0
- package/button/button-group/_button-group.clarity.scss +202 -0
- package/collapsible-panel/_mixins.collapsible-panel.scss +189 -0
- package/collapsible-panel/_properties.collapsible-panel.scss +42 -0
- package/collapsible-panel/_variables.collapsible-panel.scss +40 -0
- package/data/_mixins.tables.scss +114 -0
- package/data/_properties.tables.scss +77 -0
- package/data/_tables.clarity.scss +120 -0
- package/data/_variables.tables.scss +42 -0
- package/data/datagrid/_datagrid.clarity.scss +1871 -0
- package/data/datagrid/_mixins.datagrid.scss +102 -0
- package/data/datagrid/_properties.datagrid.scss +98 -0
- package/data/datagrid/_variables.datagrid.scss +98 -0
- package/data/stack-view/_properties.stack-view.scss +50 -0
- package/data/stack-view/_stack-view.clarity.scss +267 -0
- package/data/stack-view/_variables.stack-view.scss +32 -0
- package/data/tree-view/_properties.tree-view.scss +41 -0
- package/data/tree-view/_tree-view.clarity.scss +281 -0
- package/data/tree-view/_variables.tree-view.scss +51 -0
- package/emphasis/alert/_alert.clarity.scss +467 -0
- package/emphasis/alert/_mixins.alert.scss +96 -0
- package/emphasis/alert/_properties.alert.scss +183 -0
- package/emphasis/alert/_variables.alert.scss +502 -0
- package/emphasis/badge/_badges.clarity.scss +61 -0
- package/emphasis/badge/_mixins.bades.scss +34 -0
- package/emphasis/badge/_properties.badges.scss +82 -0
- package/emphasis/badge/_variables.badges.scss +160 -0
- package/emphasis/label/_labels.clarity.scss +179 -0
- package/emphasis/label/_mixins.label.scss +77 -0
- package/emphasis/label/_properties.label.scss +105 -0
- package/emphasis/label/_variables.label.scss +181 -0
- package/fesm2022/hermes-ui-angular-accordion.mjs +355 -0
- package/fesm2022/hermes-ui-angular-accordion.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-a11y.mjs +544 -0
- package/fesm2022/hermes-ui-angular-addons-a11y.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-card-container.mjs +1082 -0
- package/fesm2022/hermes-ui-angular-addons-card-container.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-certificate-viewer.mjs +2520 -0
- package/fesm2022/hermes-ui-angular-addons-certificate-viewer.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-datagrid-filters.mjs +2818 -0
- package/fesm2022/hermes-ui-angular-addons-datagrid-filters.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-datagrid.mjs +3131 -0
- package/fesm2022/hermes-ui-angular-addons-datagrid.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-dialog.mjs +386 -0
- package/fesm2022/hermes-ui-angular-addons-dialog.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-drag-and-drop.mjs +78 -0
- package/fesm2022/hermes-ui-angular-addons-drag-and-drop.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-menu.mjs +559 -0
- package/fesm2022/hermes-ui-angular-addons-menu.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-property-view.mjs +1142 -0
- package/fesm2022/hermes-ui-angular-addons-property-view.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-stepper.mjs +716 -0
- package/fesm2022/hermes-ui-angular-addons-stepper.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-tabs.mjs +539 -0
- package/fesm2022/hermes-ui-angular-addons-tabs.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-testing.mjs +2010 -0
- package/fesm2022/hermes-ui-angular-addons-testing.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs +922 -0
- package/fesm2022/hermes-ui-angular-addons-theme-builder.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-translate.mjs +295 -0
- package/fesm2022/hermes-ui-angular-addons-translate.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-var.mjs +2028 -0
- package/fesm2022/hermes-ui-angular-addons-var.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-wizard.mjs +610 -0
- package/fesm2022/hermes-ui-angular-addons-wizard.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-workflow-strings.mjs +121 -0
- package/fesm2022/hermes-ui-angular-addons-workflow-strings.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-addons-workflow.mjs +88 -0
- package/fesm2022/hermes-ui-angular-addons-workflow.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-button.mjs +719 -0
- package/fesm2022/hermes-ui-angular-button.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-collapsible-panel.mjs +201 -0
- package/fesm2022/hermes-ui-angular-collapsible-panel.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-data-datagrid.mjs +8045 -0
- package/fesm2022/hermes-ui-angular-data-datagrid.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-data-stack-view.mjs +442 -0
- package/fesm2022/hermes-ui-angular-data-stack-view.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-data-tree-view.mjs +1106 -0
- package/fesm2022/hermes-ui-angular-data-tree-view.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-data.mjs +40 -0
- package/fesm2022/hermes-ui-angular-data.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-emphasis-alert.mjs +624 -0
- package/fesm2022/hermes-ui-angular-emphasis-alert.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-emphasis-badge.mjs +69 -0
- package/fesm2022/hermes-ui-angular-emphasis-badge.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-emphasis-common.mjs +25 -0
- package/fesm2022/hermes-ui-angular-emphasis-common.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-emphasis-label.mjs +105 -0
- package/fesm2022/hermes-ui-angular-emphasis-label.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-emphasis.mjs +41 -0
- package/fesm2022/hermes-ui-angular-emphasis.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-checkbox.mjs +279 -0
- package/fesm2022/hermes-ui-angular-forms-checkbox.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-combobox.mjs +1775 -0
- package/fesm2022/hermes-ui-angular-forms-combobox.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-common.mjs +1251 -0
- package/fesm2022/hermes-ui-angular-forms-common.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-datalist.mjs +263 -0
- package/fesm2022/hermes-ui-angular-forms-datalist.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-datepicker.mjs +3274 -0
- package/fesm2022/hermes-ui-angular-forms-datepicker.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-file-input.mjs +826 -0
- package/fesm2022/hermes-ui-angular-forms-file-input.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-input.mjs +153 -0
- package/fesm2022/hermes-ui-angular-forms-input.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-native-select.mjs +153 -0
- package/fesm2022/hermes-ui-angular-forms-native-select.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-number-input.mjs +236 -0
- package/fesm2022/hermes-ui-angular-forms-number-input.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-password.mjs +233 -0
- package/fesm2022/hermes-ui-angular-forms-password.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-radio.mjs +224 -0
- package/fesm2022/hermes-ui-angular-forms-radio.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-range.mjs +186 -0
- package/fesm2022/hermes-ui-angular-forms-range.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-select.mjs +606 -0
- package/fesm2022/hermes-ui-angular-forms-select.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms-textarea.mjs +136 -0
- package/fesm2022/hermes-ui-angular-forms-textarea.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-forms.mjs +105 -0
- package/fesm2022/hermes-ui-angular-forms.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-icon.mjs +7413 -0
- package/fesm2022/hermes-ui-angular-icon.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-layout-breadcrumbs.mjs +120 -0
- package/fesm2022/hermes-ui-angular-layout-breadcrumbs.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-layout-main-container.mjs +100 -0
- package/fesm2022/hermes-ui-angular-layout-main-container.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-layout-nav.mjs +582 -0
- package/fesm2022/hermes-ui-angular-layout-nav.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-layout-tabs.mjs +807 -0
- package/fesm2022/hermes-ui-angular-layout-tabs.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs +507 -0
- package/fesm2022/hermes-ui-angular-layout-vertical-nav.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-layout.mjs +44 -0
- package/fesm2022/hermes-ui-angular-layout.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-modal.mjs +619 -0
- package/fesm2022/hermes-ui-angular-modal.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-popover-common.mjs +1371 -0
- package/fesm2022/hermes-ui-angular-popover-common.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-popover-dropdown.mjs +492 -0
- package/fesm2022/hermes-ui-angular-popover-dropdown.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-popover-signpost.mjs +494 -0
- package/fesm2022/hermes-ui-angular-popover-signpost.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-popover-tooltip.mjs +293 -0
- package/fesm2022/hermes-ui-angular-popover-tooltip.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-popover.mjs +41 -0
- package/fesm2022/hermes-ui-angular-popover.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-progress-progress-bars.mjs +217 -0
- package/fesm2022/hermes-ui-angular-progress-progress-bars.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-progress-spinner.mjs +132 -0
- package/fesm2022/hermes-ui-angular-progress-spinner.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-stepper.mjs +694 -0
- package/fesm2022/hermes-ui-angular-stepper.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-timeline.mjs +316 -0
- package/fesm2022/hermes-ui-angular-timeline.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-toast.mjs +373 -0
- package/fesm2022/hermes-ui-angular-toast.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-utils-conditional.mjs +351 -0
- package/fesm2022/hermes-ui-angular-utils-conditional.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-utils-loading.mjs +107 -0
- package/fesm2022/hermes-ui-angular-utils-loading.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-utils.mjs +2086 -0
- package/fesm2022/hermes-ui-angular-utils.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular-wizard.mjs +3074 -0
- package/fesm2022/hermes-ui-angular-wizard.mjs.map +1 -0
- package/fesm2022/hermes-ui-angular.mjs +130 -0
- package/fesm2022/hermes-ui-angular.mjs.map +1 -0
- package/forms/combobox/_combobox.clarity.scss +330 -0
- package/forms/combobox/_properties.combobox.scss +46 -0
- package/forms/combobox/_variables.combobox.scss +32 -0
- package/forms/datepicker/_datepicker.clarity.scss +259 -0
- package/forms/datepicker/_mixins.datepicker.scss +89 -0
- package/forms/datepicker/_properties.datepicker.scss +46 -0
- package/forms/datepicker/_variables.datepicker.scss +74 -0
- package/forms/styles/_checkbox.clarity.scss +193 -0
- package/forms/styles/_containers.clarity.scss +230 -0
- package/forms/styles/_datalist.clarity.scss +47 -0
- package/forms/styles/_file-input.clarity.scss +134 -0
- package/forms/styles/_file.clarity.scss +52 -0
- package/forms/styles/_form.clarity.scss +87 -0
- package/forms/styles/_input-group.clarity.scss +126 -0
- package/forms/styles/_input.clarity.scss +83 -0
- package/forms/styles/_mixins.forms.scss +193 -0
- package/forms/styles/_native-select.clarity.scss +178 -0
- package/forms/styles/_number-input.clarity.scss +58 -0
- package/forms/styles/_password.clarity.scss +26 -0
- package/forms/styles/_properties.forms.scss +180 -0
- package/forms/styles/_radio.clarity.scss +120 -0
- package/forms/styles/_range.clarity.scss +124 -0
- package/forms/styles/_select.clarity.scss +158 -0
- package/forms/styles/_textarea.clarity.scss +71 -0
- package/forms/styles/_toggles.clarity.scss +209 -0
- package/forms/styles/_variables.forms.scss +156 -0
- package/hermes-ui.scss +7 -0
- package/icon/icon.component.scss +247 -0
- package/image/_icons.clarity.scss +101 -0
- package/image/_images.clarity.scss +42 -0
- package/image/_mixins.images.scss +11 -0
- package/layout/_card.clarity.scss +318 -0
- package/layout/_login.clarity.scss +240 -0
- package/layout/_properties.card.scss +39 -0
- package/layout/_properties.login.scss +32 -0
- package/layout/_variables.card.scss +24 -0
- package/layout/_variables.login.scss +22 -0
- package/layout/breadcrumbs/_breadcrumbs.clarity.scss +60 -0
- package/layout/breadcrumbs/_properties.breadcrumbs.scss +18 -0
- package/layout/breadcrumbs/_variables.breadcrumbs.scss +11 -0
- package/layout/grid/_grid.scss +23 -0
- package/layout/grid/grid/_grid.scss +39 -0
- package/layout/grid/mixins/_breakpoint.scss +83 -0
- package/layout/grid/mixins/_clearfix.scss +13 -0
- package/layout/grid/mixins/_grid-framework.scss +91 -0
- package/layout/grid/mixins/_grid.scss +39 -0
- package/layout/grid/utilities/_align.scss +30 -0
- package/layout/grid/utilities/_clearfix.scss +12 -0
- package/layout/grid/utilities/_display.scss +18 -0
- package/layout/grid/utilities/_flex.scss +222 -0
- package/layout/grid/utilities/_float.scss +26 -0
- package/layout/grid/utilities/_visibility.scss +60 -0
- package/layout/main-container/_layout.clarity.scss +87 -0
- package/layout/main-container/_properties.header.scss +55 -0
- package/layout/main-container/_variables.header.scss +32 -0
- package/layout/nav/_header.clarity.scss +40 -0
- package/layout/nav/_links.clarity.scss +84 -0
- package/layout/nav/_mixins.header.scss +332 -0
- package/layout/nav/_mixins.responsive-nav.scss +75 -0
- package/layout/nav/_nav.clarity.scss +100 -0
- package/layout/nav/_properties.nav.scss +27 -0
- package/layout/nav/_properties.responsive-nav.scss +23 -0
- package/layout/nav/_properties.subnav.scss +19 -0
- package/layout/nav/_responsive-nav.clarity.scss +490 -0
- package/layout/nav/_subnav.clarity.scss +48 -0
- package/layout/nav/_variables.nav.scss +13 -0
- package/layout/nav/_variables.responsive-nav.scss +28 -0
- package/layout/nav/_variables.subnav.scss +21 -0
- package/layout/tabs/_mixins.tabs.scss +41 -0
- package/layout/tabs/_properties.tabs.scss +25 -0
- package/layout/tabs/_tabs.clarity.scss +110 -0
- package/layout/tabs/_variables.tabs.scss +17 -0
- package/layout/vertical-nav/_mixins.vertical-nav.scss +52 -0
- package/layout/vertical-nav/_properties.vertical-nav.scss +73 -0
- package/layout/vertical-nav/_variables.vertical-nav.scss +52 -0
- package/layout/vertical-nav/_vertical-nav.clarity.scss +469 -0
- package/main.scss +14 -0
- package/modal/_modal.clarity.scss +379 -0
- package/modal/_properties.modal.scss +57 -0
- package/modal/_variables.modal.scss +41 -0
- package/package.json +325 -0
- package/popover/common/README.md +112 -0
- package/popover/common/_popover.clarity.scss +28 -0
- package/popover/dropdown/_dropdown.clarity.scss +326 -0
- package/popover/dropdown/_menu-mixins.clarity.scss +132 -0
- package/popover/dropdown/_properties.dropdown.scss +50 -0
- package/popover/dropdown/_variables.dropdown.scss +36 -0
- package/popover/signpost/_properties.signpost.scss +34 -0
- package/popover/signpost/_signposts.clarity.scss +414 -0
- package/popover/signpost/_variables.signpost.scss +21 -0
- package/popover/tooltip/_mixins.tooltip.scss +186 -0
- package/popover/tooltip/_properties.tooltip.scss +28 -0
- package/popover/tooltip/_tooltips.clarity.scss +122 -0
- package/popover/tooltip/_variables.tooltip.scss +20 -0
- package/progress/progress-bars/_progress-bars.clarity.scss +616 -0
- package/progress/progress-bars/_properties.progress-bars.scss +24 -0
- package/progress/progress-bars/_variables.progress-bars.scss +15 -0
- package/progress/progress-bars/utils/_mixins.clarity.scss +18 -0
- package/progress/spinner/_mixins.spinner.scss +30 -0
- package/progress/spinner/_properties.spinner.scss +37 -0
- package/progress/spinner/_spinner.clarity.scss +148 -0
- package/progress/spinner/_variables.spinner.scss +25 -0
- package/schematics/collection.json +14 -0
- package/stepper/_properties.stepper.scss +29 -0
- package/stepper/_stepper.clarity.scss +184 -0
- package/stepper/_variables.stepper.scss +13 -0
- package/styles/_a11y.scss +14 -0
- package/styles/_close.clarity.scss +60 -0
- package/styles/_components.clarity.scss +189 -0
- package/styles/_mixins.scss +460 -0
- package/styles/_normalize.scss +292 -0
- package/styles/_reboot.clarity.scss +374 -0
- package/styles/_variables.clarity.scss +139 -0
- package/styles/core/base/base.element.scss +97 -0
- package/styles/core/global.scss +12 -0
- package/styles/core/layout/_alignments.scss +18 -0
- package/styles/core/layout/_container.scss +29 -0
- package/styles/core/layout/_display.scss +58 -0
- package/styles/core/layout/_optimize.scss +60 -0
- package/styles/core/layout/_shadow-dom.scss +47 -0
- package/styles/core/layout/_spacing.scss +31 -0
- package/styles/core/layout/_type-grid.scss +66 -0
- package/styles/core/layout/_type-horizontal.scss +33 -0
- package/styles/core/layout/_type-vertical.scss +26 -0
- package/styles/core/layout/mixins/_mixins.alignment.scss +35 -0
- package/styles/core/layout/mixins/_mixins.display.scss +23 -0
- package/styles/core/layout/mixins/_mixins.grid.scss +105 -0
- package/styles/core/layout/mixins/_mixins.scss +106 -0
- package/styles/core/layout/mixins/_mixins.shadow-dom.scss +106 -0
- package/styles/core/layout/mixins/_mixins.type-horizontal.scss +113 -0
- package/styles/core/layout/mixins/_mixins.type-vertical.scss +108 -0
- package/styles/core/module.layout.scss +22 -0
- package/styles/core/module.reset.scss +48 -0
- package/styles/core/module.typography.scss +9 -0
- package/styles/core/theme.dark.scss +298 -0
- package/styles/core/theme.high-contrast.scss +42 -0
- package/styles/core/theme.low-motion.scss +20 -0
- package/styles/core/tokens/_alias-interaction.scss +74 -0
- package/styles/core/tokens/_alias-object-background.scss +29 -0
- package/styles/core/tokens/_alias-object-border.scss +21 -0
- package/styles/core/tokens/_alias-object-container.scss +20 -0
- package/styles/core/tokens/_alias-object-opacity.scss +15 -0
- package/styles/core/tokens/_alias-object-shadow.scss +17 -0
- package/styles/core/tokens/_alias-primary.scss +21 -0
- package/styles/core/tokens/_alias-status.scss +40 -0
- package/styles/core/tokens/_alias-typography.scss +107 -0
- package/styles/core/tokens/_alias-utility.scss +42 -0
- package/styles/core/tokens/_alias-viz-colors.scss +170 -0
- package/styles/core/tokens/_global-animation.scss +32 -0
- package/styles/core/tokens/_global-colors.scss +249 -0
- package/styles/core/tokens/_global-space.scss +52 -0
- package/styles/core/tokens/_internal-scale.scss +14 -0
- package/styles/core/tokens/_properties.tokens.scss +22 -0
- package/styles/core/tokens/_variables.tokens.scss +787 -0
- package/styles/core/typography/_legacy-typography.scss +328 -0
- package/styles/core/typography/_mixins.typography.scss +18 -0
- package/styles/core/typography/_typography.scss +328 -0
- package/styles/variables/_properties.density.scss +225 -0
- package/styles/variables/_properties.global.scss +51 -0
- package/styles/variables/_properties.layout.scss +21 -0
- package/styles/variables/_properties.scss +11 -0
- package/styles/variables/_properties.typography.scss +164 -0
- package/styles/variables/_variables.density.scss +116 -0
- package/styles/variables/_variables.global.scss +87 -0
- package/styles/variables/_variables.layout.scss +37 -0
- package/styles/variables/_variables.scss +11 -0
- package/styles/variables/_variables.typography.scss +156 -0
- package/timeline/_properties.timeline.scss +38 -0
- package/timeline/_timeline.clarity.scss +172 -0
- package/timeline/_variables.timeline.scss +29 -0
- package/toast/README.md +65 -0
- package/toast/_properties.toast.scss +56 -0
- package/toast/_toast.clarity.scss +190 -0
- package/toast/_variables.toast.scss +33 -0
- package/types/hermes-ui-angular-accordion.d.ts +101 -0
- package/types/hermes-ui-angular-accordion.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-a11y.d.ts +187 -0
- package/types/hermes-ui-angular-addons-a11y.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-card-container.d.ts +482 -0
- package/types/hermes-ui-angular-addons-card-container.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-certificate-viewer.d.ts +404 -0
- package/types/hermes-ui-angular-addons-certificate-viewer.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-datagrid-filters.d.ts +911 -0
- package/types/hermes-ui-angular-addons-datagrid-filters.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-datagrid.d.ts +1529 -0
- package/types/hermes-ui-angular-addons-datagrid.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-dialog.d.ts +233 -0
- package/types/hermes-ui-angular-addons-dialog.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-drag-and-drop.d.ts +35 -0
- package/types/hermes-ui-angular-addons-drag-and-drop.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-menu.d.ts +197 -0
- package/types/hermes-ui-angular-addons-menu.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-property-view.d.ts +387 -0
- package/types/hermes-ui-angular-addons-property-view.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-stepper.d.ts +298 -0
- package/types/hermes-ui-angular-addons-stepper.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-tabs.d.ts +173 -0
- package/types/hermes-ui-angular-addons-tabs.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-testing.d.ts +592 -0
- package/types/hermes-ui-angular-addons-testing.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-theme-builder.d.ts +200 -0
- package/types/hermes-ui-angular-addons-theme-builder.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-translate.d.ts +149 -0
- package/types/hermes-ui-angular-addons-translate.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-var.d.ts +923 -0
- package/types/hermes-ui-angular-addons-var.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-wizard.d.ts +241 -0
- package/types/hermes-ui-angular-addons-wizard.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-workflow-strings.d.ts +124 -0
- package/types/hermes-ui-angular-addons-workflow-strings.d.ts.map +1 -0
- package/types/hermes-ui-angular-addons-workflow.d.ts +15 -0
- package/types/hermes-ui-angular-addons-workflow.d.ts.map +1 -0
- package/types/hermes-ui-angular-button.d.ts +170 -0
- package/types/hermes-ui-angular-button.d.ts.map +1 -0
- package/types/hermes-ui-angular-collapsible-panel.d.ts +74 -0
- package/types/hermes-ui-angular-collapsible-panel.d.ts.map +1 -0
- package/types/hermes-ui-angular-data-datagrid.d.ts +1938 -0
- package/types/hermes-ui-angular-data-datagrid.d.ts.map +1 -0
- package/types/hermes-ui-angular-data-stack-view.d.ts +88 -0
- package/types/hermes-ui-angular-data-stack-view.d.ts.map +1 -0
- package/types/hermes-ui-angular-data-tree-view.d.ts +230 -0
- package/types/hermes-ui-angular-data-tree-view.d.ts.map +1 -0
- package/types/hermes-ui-angular-data.d.ts +16 -0
- package/types/hermes-ui-angular-data.d.ts.map +1 -0
- package/types/hermes-ui-angular-emphasis-alert.d.ts +176 -0
- package/types/hermes-ui-angular-emphasis-alert.d.ts.map +1 -0
- package/types/hermes-ui-angular-emphasis-badge.d.ts +26 -0
- package/types/hermes-ui-angular-emphasis-badge.d.ts.map +1 -0
- package/types/hermes-ui-angular-emphasis-common.d.ts +7 -0
- package/types/hermes-ui-angular-emphasis-common.d.ts.map +1 -0
- package/types/hermes-ui-angular-emphasis-label.d.ts +30 -0
- package/types/hermes-ui-angular-emphasis-label.d.ts.map +1 -0
- package/types/hermes-ui-angular-emphasis.d.ts +16 -0
- package/types/hermes-ui-angular-emphasis.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-checkbox.d.ts +73 -0
- package/types/hermes-ui-angular-forms-checkbox.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-combobox.d.ts +354 -0
- package/types/hermes-ui-angular-forms-combobox.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-common.d.ts +340 -0
- package/types/hermes-ui-angular-forms-common.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-datalist.d.ts +60 -0
- package/types/hermes-ui-angular-forms-datalist.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-datepicker.d.ts +987 -0
- package/types/hermes-ui-angular-forms-datepicker.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-file-input.d.ts +194 -0
- package/types/hermes-ui-angular-forms-file-input.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-input.d.ts +30 -0
- package/types/hermes-ui-angular-forms-input.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-native-select.d.ts +37 -0
- package/types/hermes-ui-angular-forms-native-select.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-number-input.d.ts +44 -0
- package/types/hermes-ui-angular-forms-number-input.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-password.d.ts +53 -0
- package/types/hermes-ui-angular-forms-password.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-radio.d.ts +50 -0
- package/types/hermes-ui-angular-forms-radio.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-range.d.ts +38 -0
- package/types/hermes-ui-angular-forms-range.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-select.d.ts +211 -0
- package/types/hermes-ui-angular-forms-select.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms-textarea.d.ts +30 -0
- package/types/hermes-ui-angular-forms-textarea.d.ts.map +1 -0
- package/types/hermes-ui-angular-forms.d.ts +39 -0
- package/types/hermes-ui-angular-forms.d.ts.map +1 -0
- package/types/hermes-ui-angular-icon.d.ts +1504 -0
- package/types/hermes-ui-angular-icon.d.ts.map +1 -0
- package/types/hermes-ui-angular-layout-breadcrumbs.d.ts +46 -0
- package/types/hermes-ui-angular-layout-breadcrumbs.d.ts.map +1 -0
- package/types/hermes-ui-angular-layout-main-container.d.ts +29 -0
- package/types/hermes-ui-angular-layout-main-container.d.ts.map +1 -0
- package/types/hermes-ui-angular-layout-nav.d.ts +143 -0
- package/types/hermes-ui-angular-layout-nav.d.ts.map +1 -0
- package/types/hermes-ui-angular-layout-tabs.d.ts +159 -0
- package/types/hermes-ui-angular-layout-tabs.d.ts.map +1 -0
- package/types/hermes-ui-angular-layout-vertical-nav.d.ts +129 -0
- package/types/hermes-ui-angular-layout-vertical-nav.d.ts.map +1 -0
- package/types/hermes-ui-angular-layout.d.ts +20 -0
- package/types/hermes-ui-angular-layout.d.ts.map +1 -0
- package/types/hermes-ui-angular-modal.d.ts +161 -0
- package/types/hermes-ui-angular-modal.d.ts.map +1 -0
- package/types/hermes-ui-angular-popover-common.d.ts +317 -0
- package/types/hermes-ui-angular-popover-common.d.ts.map +1 -0
- package/types/hermes-ui-angular-popover-dropdown.d.ts +124 -0
- package/types/hermes-ui-angular-popover-dropdown.d.ts.map +1 -0
- package/types/hermes-ui-angular-popover-signpost.d.ts +158 -0
- package/types/hermes-ui-angular-popover-signpost.d.ts.map +1 -0
- package/types/hermes-ui-angular-popover-tooltip.d.ts +84 -0
- package/types/hermes-ui-angular-popover-tooltip.d.ts.map +1 -0
- package/types/hermes-ui-angular-popover.d.ts +17 -0
- package/types/hermes-ui-angular-popover.d.ts.map +1 -0
- package/types/hermes-ui-angular-progress-progress-bars.d.ts +58 -0
- package/types/hermes-ui-angular-progress-progress-bars.d.ts.map +1 -0
- package/types/hermes-ui-angular-progress-spinner.d.ts +45 -0
- package/types/hermes-ui-angular-progress-spinner.d.ts.map +1 -0
- package/types/hermes-ui-angular-stepper.d.ts +180 -0
- package/types/hermes-ui-angular-stepper.d.ts.map +1 -0
- package/types/hermes-ui-angular-timeline.d.ts +87 -0
- package/types/hermes-ui-angular-timeline.d.ts.map +1 -0
- package/types/hermes-ui-angular-toast.d.ts +131 -0
- package/types/hermes-ui-angular-toast.d.ts.map +1 -0
- package/types/hermes-ui-angular-utils-conditional.d.ts +133 -0
- package/types/hermes-ui-angular-utils-conditional.d.ts.map +1 -0
- package/types/hermes-ui-angular-utils-loading.d.ts +39 -0
- package/types/hermes-ui-angular-utils-loading.d.ts.map +1 -0
- package/types/hermes-ui-angular-utils.d.ts +914 -0
- package/types/hermes-ui-angular-utils.d.ts.map +1 -0
- package/types/hermes-ui-angular-wizard.d.ts +1509 -0
- package/types/hermes-ui-angular-wizard.d.ts.map +1 -0
- package/types/hermes-ui-angular.d.ts +44 -0
- package/types/hermes-ui-angular.d.ts.map +1 -0
- package/typography/_code.scss +36 -0
- package/typography/_font-metropolis.scss +45 -0
- package/typography/_lists.scss +81 -0
- package/typography/_typography.scss +322 -0
- package/utils/animations/_animations.clarity.scss +44 -0
- package/utils/animations/_mixins.animations.scss +33 -0
- package/wizard/_properties.wizard.scss +54 -0
- package/wizard/_variables.wizard.scss +59 -0
- package/wizard/_wizard.clarity.scss +692 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hermes-ui-angular-accordion.mjs","sources":["../../../accordion/accordion-description.ts","../../../accordion/accordion-panel.ts","../../../accordion/accordion-panel.html","../../../accordion/enums/accordion-strategy.enum.ts","../../../accordion/models/accordion.model.ts","../../../accordion/providers/accordion.service.ts","../../../accordion/accordion.ts","../../../accordion/accordion-title.ts","../../../accordion/accordion-content.ts","../../../accordion/chocolate/accordion-willy-wonka.ts","../../../accordion/chocolate/accordion-oompa-loompa.ts","../../../accordion/accordion.module.ts","../../../accordion/index.ts","../../../accordion/hermes-ui-angular-accordion.ts"],"sourcesContent":["/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-description',\r\n template: `<ng-content></ng-content>`,\r\n host: { '[class.hermes-accordion-description]': 'true' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionDescription {}\r\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n EventEmitter,\n HostBinding,\n Input,\n OnChanges,\n Output,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport {\n CollapsiblePanel,\n collapsiblePanelExpandAnimation,\n CollapsiblePanelModel,\n} from '@hermes-ui/angular/collapsible-panel';\nimport { HeadingLevel, IfExpandService } from '@hermes-ui/angular/utils';\n\nimport { HermesAccordionDescription } from './accordion-description';\n\n@Component({\n selector: 'hermes-accordion-panel',\n templateUrl: './accordion-panel.html',\n host: { '[class.hermes-accordion-panel]': 'true' },\n changeDetection: ChangeDetectionStrategy.OnPush,\n animations: collapsiblePanelExpandAnimation,\n providers: [IfExpandService],\n standalone: false,\n})\nexport class HermesAccordionPanel extends CollapsiblePanel implements OnChanges {\n @Input('hermesAccordionPanelDisabled') @HostBinding('class.hermes-accordion-panel-disabled') disabled = false;\n @Input('hermesAccordionPanelOpen') override panelOpen = false;\n @Output('hermesAccordionPanelOpenChange') override panelOpenChange = new EventEmitter<boolean>();\n\n /**\n * Level of the accordion heading from 1 to 6.\n */\n @Input('hermesAccordionPanelHeadingLevel') explicitHeadingLevel: HeadingLevel;\n\n @ContentChildren(HermesAccordionDescription) accordionDescription: QueryList<HermesAccordionDescription>;\n\n ngOnChanges(changes: SimpleChanges) {\n this.handlePanelInputChanges(changes);\n }\n\n getPanelStateClasses(panel: CollapsiblePanelModel) {\n return panel.open ? 'hermes-accordion-panel-open' : 'hermes-accordion-panel-closed';\n }\n\n getContentId(id: string) {\n return `hermes-accordion-content-${id}`;\n }\n\n getHeaderId(id: string) {\n return `hermes-accordion-header-${id}`;\n }\n}\n","<!--\r\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n ~ This software is released under MIT license.\r\n ~ The full license information can be found in LICENSE in the root directory of this project.\r\n -->\r\n@if (panel | async; as panel) {\r\n<div [ngClass]=\"getPanelStateClasses(panel)\">\r\n <div\r\n class=\"hermes-accordion-header\"\r\n [attr.role]=\"explicitHeadingLevel ? 'heading' : null\"\r\n [attr.aria-level]=\"explicitHeadingLevel ? explicitHeadingLevel : null\"\r\n >\r\n <button\r\n type=\"button\"\r\n class=\"hermes-accordion-header-button\"\r\n (click)=\"togglePanel()\"\r\n [id]=\"getHeaderId(panel.templateId)\"\r\n [disabled]=\"panel.disabled\"\r\n [attr.aria-controls]=\"!panel.disabled && panel.open ? getContentId(panel.templateId) : null\"\r\n [attr.aria-expanded]=\"panel.open\"\r\n [class.hermes-accordion-header-has-description]=\"(accordionDescription.changes | async)?.length || accordionDescription.length\"\r\n #headerButton\r\n >\r\n <span class=\"hermes-accordion-status\">\r\n <hermes-icon shape=\"angle\" direction=\"right\" class=\"hermes-accordion-angle\"></hermes-icon>\r\n </span>\r\n <ng-content select=\"hermes-accordion-title\"></ng-content>\r\n <ng-content select=\"hermes-accordion-description\"></ng-content>\r\n </button>\r\n </div>\r\n <div\r\n @skipInitialRender\r\n role=\"region\"\r\n class=\"hermes-accordion-content-region\"\r\n [id]=\"getContentId(panel.templateId)\"\r\n [attr.aria-hidden]=\"!panel.open\"\r\n [attr.aria-labelledby]=\"getHeaderId(panel.templateId)\"\r\n >\r\n @if (panel.open) {\r\n <div @toggle (@toggle.done)=\"collapsePanelOnAnimationDone(panel)\" class=\"hermes-accordion-content\">\r\n <div class=\"hermes-accordion-inner-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</div>\r\n}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\n/**\r\n * Controls how many panels can be open simultaneously within an accordion.\r\n */\r\nexport enum AccordionStrategy {\r\n /** Only one panel can be open at a time. Opening a panel closes any previously open panel. */\r\n Single = 'single',\r\n /** Multiple panels can be open simultaneously. */\r\n Multi = 'multi',\r\n}\r\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CollapsiblePanelGroupModel } from '@hermes-ui/angular/collapsible-panel';\n\nimport { AccordionStrategy } from '../enums/accordion-strategy.enum';\n\nexport class AccordionModel extends CollapsiblePanelGroupModel {\n private strategy = AccordionStrategy.Single;\n\n setStrategy(strategy: AccordionStrategy) {\n this.strategy = strategy;\n }\n\n override togglePanel(panelId: string, open?: boolean) {\n if (!this._panels[panelId]) {\n return;\n }\n\n const panelIsOpen = this._panels[panelId].open;\n const newOpenState = open !== undefined ? open : !panelIsOpen;\n if (newOpenState && this.strategy === AccordionStrategy.Single) {\n this.closeAllPanels();\n }\n\n this._panels[panelId].open = newOpenState;\n }\n\n private closeAllPanels() {\n this.panels.forEach(panel => (this._panels[panel.id].open = false));\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Injectable } from '@angular/core';\nimport { CollapsiblePanelService } from '@hermes-ui/angular/collapsible-panel';\n\nimport { AccordionStrategy } from '../enums/accordion-strategy.enum';\nimport { AccordionModel } from '../models/accordion.model';\n\n@Injectable()\nexport class AccordionService extends CollapsiblePanelService {\n protected override panelGroup = new AccordionModel();\n\n setStrategy(strategy: AccordionStrategy) {\n this.panelGroup.setStrategy(strategy);\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ContentChildren,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n SimpleChanges,\n} from '@angular/core';\nimport { CollapsiblePanelService } from '@hermes-ui/angular/collapsible-panel';\nimport { Subscription } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { HermesAccordionPanel } from './accordion-panel';\nimport { AccordionStrategy } from './enums/accordion-strategy.enum';\nimport { AccordionService } from './providers/accordion.service';\n\n@Component({\n selector: 'hermes-accordion',\n template: `<ng-content></ng-content>`,\n host: { '[class.hermes-accordion]': 'true' },\n providers: [AccordionService, { provide: CollapsiblePanelService, useExisting: AccordionService }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class HermesAccordion implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n @Input('hermesAccordionMultiPanel') multiPanel: boolean | string = false;\n @ContentChildren(HermesAccordionPanel) panels: QueryList<HermesAccordionPanel>;\n private subscriptions: Subscription[] = [];\n\n constructor(private accordionService: AccordionService) {}\n\n ngOnInit() {\n this.setAccordionStrategy();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (\n changes.multiPanel &&\n !changes.multiPanel.firstChange &&\n changes.multiPanel.currentValue !== changes.multiPanel.previousValue\n ) {\n this.setAccordionStrategy();\n }\n }\n\n ngAfterViewInit() {\n this.subscriptions.push(this.listenForDOMChanges());\n }\n\n ngOnDestroy() {\n this.subscriptions.forEach(s => s.unsubscribe());\n }\n\n private setAccordionStrategy() {\n const strategy = this.multiPanel ? AccordionStrategy.Multi : AccordionStrategy.Single;\n this.accordionService.setStrategy(strategy);\n }\n\n private listenForDOMChanges() {\n return this.panels.changes\n .pipe(startWith(this.panels))\n .subscribe((panels: QueryList<HermesAccordionPanel>) =>\n this.accordionService.updatePanelOrder(panels.toArray().map(p => p.id))\n );\n }\n}\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-title',\r\n template: `<ng-content></ng-content>`,\r\n host: { '[class.hermes-accordion-title]': 'true' },\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionTitle {}\r\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nimport { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'hermes-accordion-content',\r\n template: `<ng-content></ng-content>`,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: false,\r\n})\r\nexport class HermesAccordionContent {}\r\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { Directive } from '@angular/core';\nimport { WillyWonka } from '@hermes-ui/angular/utils';\n\n@Directive({\n selector: 'hermes-accordion',\n standalone: false,\n})\nexport class AccordionWillyWonka extends WillyWonka {}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { ChangeDetectorRef, Directive, Optional } from '@angular/core';\nimport { IfExpandService, OompaLoompa } from '@hermes-ui/angular/utils';\n\nimport { AccordionWillyWonka } from './accordion-willy-wonka';\n\n@Directive({\n selector: 'hermes-accordion-panel',\n standalone: false,\n})\nexport class AccordionOompaLoompa extends OompaLoompa {\n private expand: IfExpandService;\n\n constructor(cdr: ChangeDetectorRef, @Optional() willyWonka: AccordionWillyWonka, ifExpandService: IfExpandService) {\n if (!willyWonka) {\n throw new Error('hermes-accordion-panel should only be used inside of hermes-accordion');\n }\n super(cdr, willyWonka);\n this.expand = ifExpandService;\n }\n\n get flavor() {\n return this.expand.expanded;\n }\n}\n","/*\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\n * This software is released under MIT license.\n * The full license information can be found in LICENSE in the root directory of this project.\n */\n\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { angleIcon, ClarityIcons, HermesIcon } from '@hermes-ui/angular/icon';\n\nimport { HermesAccordion } from './accordion';\nimport { HermesAccordionContent } from './accordion-content';\nimport { HermesAccordionDescription } from './accordion-description';\nimport { HermesAccordionPanel } from './accordion-panel';\nimport { HermesAccordionTitle } from './accordion-title';\nimport { AccordionOompaLoompa } from './chocolate/accordion-oompa-loompa';\nimport { AccordionWillyWonka } from './chocolate/accordion-willy-wonka';\n\nconst declarations = [\n HermesAccordion,\n HermesAccordionPanel,\n HermesAccordionTitle,\n HermesAccordionDescription,\n HermesAccordionContent,\n AccordionOompaLoompa,\n AccordionWillyWonka,\n];\n\n@NgModule({\n imports: [CommonModule, HermesIcon],\n declarations: [...declarations],\n exports: [...declarations],\n})\nexport class HermesAccordionModule {\n constructor() {\n ClarityIcons.addIcons(angleIcon);\n }\n}\n","/*\r\n * Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n * The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n * This software is released under MIT license.\r\n * The full license information can be found in LICENSE in the root directory of this project.\r\n */\r\n\r\nexport * from './accordion';\r\nexport * from './accordion-panel';\r\nexport * from './accordion-title';\r\nexport * from './accordion-content';\r\nexport * from './accordion-description';\r\nexport * from './accordion.module';\r\nexport * from './enums/accordion-strategy.enum';\r\nexport * from './models/accordion.model';\r\nexport * from './providers/accordion.service';\r\nexport * from './chocolate/accordion-willy-wonka';\r\nexport * from './chocolate/accordion-oompa-loompa';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.AccordionService","i1.AccordionWillyWonka","i2"],"mappings":"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"}
|
|
@@ -0,0 +1,544 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Input, Directive, Injectable, Component, Inject, HostBinding, Optional, NgModule } from '@angular/core';
|
|
3
|
+
import * as i1$2 from '@hermes-ui/angular/addons/translate';
|
|
4
|
+
import { AppfxTranslateService, appfxTranslationsToken, AppfxTranslateModule } from '@hermes-ui/angular/addons/translate';
|
|
5
|
+
import * as i1 from '@hermes-ui/angular/stepper';
|
|
6
|
+
import * as i2 from '@hermes-ui/angular/utils';
|
|
7
|
+
import { Observable, Subscription, merge, of, ReplaySubject } from 'rxjs';
|
|
8
|
+
import { delay, debounceTime } from 'rxjs/operators';
|
|
9
|
+
import * as i1$1 from '@hermes-ui/angular/layout/tabs';
|
|
10
|
+
import { DOCUMENT } from '@angular/common';
|
|
11
|
+
|
|
12
|
+
/*
|
|
13
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
14
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
15
|
+
* This software is released under MIT license.
|
|
16
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Accessibility mode keys
|
|
20
|
+
*/
|
|
21
|
+
const a11ykeys = {
|
|
22
|
+
enter: 'Enter',
|
|
23
|
+
arrowLeft: 'ArrowLeft',
|
|
24
|
+
arrowRight: 'ArrowRight',
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
/*
|
|
28
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
29
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
30
|
+
* This software is released under MIT license.
|
|
31
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
32
|
+
*/
|
|
33
|
+
/**
|
|
34
|
+
* This directive overrides strings used in HermesStepperPanel. It creates a copy of the strings, returned by
|
|
35
|
+
* HermesCommonStringsService and does not modify the original resources.
|
|
36
|
+
*
|
|
37
|
+
* This directive relies on the following Clarity internals:
|
|
38
|
+
* <code>
|
|
39
|
+
* export class HermesStepperPanel extends HermesAccordionPanel implements OnInit {
|
|
40
|
+
* public constructor(
|
|
41
|
+
* public commonStrings: HermesCommonStringsService,
|
|
42
|
+
* ...
|
|
43
|
+
* ) {}
|
|
44
|
+
* ...
|
|
45
|
+
* }
|
|
46
|
+
* </code>
|
|
47
|
+
*
|
|
48
|
+
* common-strings.default.ts:
|
|
49
|
+
* <code>
|
|
50
|
+
* // Accordion/Stepper
|
|
51
|
+
* stepComplete: 'Step {STEP} complete',
|
|
52
|
+
* stepError: 'Error in step {STEP}',
|
|
53
|
+
* </code>
|
|
54
|
+
*
|
|
55
|
+
* Usage:
|
|
56
|
+
* <code>
|
|
57
|
+
* <hermes-stepper-panel formGroupName="step0" [appfxOverrideHermesStrings]="stepPanelOverriddenStrings">
|
|
58
|
+
* ...
|
|
59
|
+
* </hermes-stepper-panel>
|
|
60
|
+
*
|
|
61
|
+
* const stepPanelOverriddenStrings: Partial<HermesCommonStrings> = {
|
|
62
|
+
* success: "The step is successfully completed",
|
|
63
|
+
* danger: "The step is in serious danger",
|
|
64
|
+
* };
|
|
65
|
+
* </code>
|
|
66
|
+
*/
|
|
67
|
+
class OverrideHermesStringsDirective {
|
|
68
|
+
constructor(hermesPanel, hermesCommonStringsService) {
|
|
69
|
+
this.hermesPanel = hermesPanel;
|
|
70
|
+
this.hermesCommonStringsService = hermesCommonStringsService;
|
|
71
|
+
this.appfxOverrideHermesStrings = {};
|
|
72
|
+
}
|
|
73
|
+
ngOnInit() {
|
|
74
|
+
const copiedStrings = Object.assign({}, this.hermesCommonStringsService.keys);
|
|
75
|
+
// TODO syuleymanovg: Remove this workaround after upgrading to Clarity 18.
|
|
76
|
+
//
|
|
77
|
+
// Clarity versions 16.4.0 and 17.1.0 introduced new `stepComplete` and `stepError` strings
|
|
78
|
+
// to address accessibility (a11y) issues. Unfortunately, this change is a breaking change for AppFx.
|
|
79
|
+
// For more details, see the related pull request: https://github.com/vmware-clarity/ng-clarity/pull/1334
|
|
80
|
+
// If these strings are present, it indicates that the Clarity version is 16.4.0/17.1.0 or newer,
|
|
81
|
+
// and no further string overriding is necessary.
|
|
82
|
+
if (copiedStrings['stepComplete'] && copiedStrings['stepError']) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
const keys = Object.assign(copiedStrings, this.appfxOverrideHermesStrings);
|
|
86
|
+
this.hermesPanel.commonStrings = {
|
|
87
|
+
keys: keys,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: OverrideHermesStringsDirective, deps: [{ token: i1.HermesStepperPanel }, { token: i2.HermesCommonStringsService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
91
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: OverrideHermesStringsDirective, isStandalone: false, selector: "hermes-stepper-panel [appfxOverrideHermesStrings]", inputs: { appfxOverrideHermesStrings: "appfxOverrideHermesStrings" }, ngImport: i0 }); }
|
|
92
|
+
}
|
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: OverrideHermesStringsDirective, decorators: [{
|
|
94
|
+
type: Directive,
|
|
95
|
+
args: [{
|
|
96
|
+
selector: 'hermes-stepper-panel [appfxOverrideHermesStrings]',
|
|
97
|
+
standalone: false,
|
|
98
|
+
}]
|
|
99
|
+
}], ctorParameters: () => [{ type: i1.HermesStepperPanel }, { type: i2.HermesCommonStringsService }], propDecorators: { appfxOverrideHermesStrings: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}] } });
|
|
102
|
+
|
|
103
|
+
/*
|
|
104
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
105
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
106
|
+
* This software is released under MIT license.
|
|
107
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
108
|
+
*/
|
|
109
|
+
/**
|
|
110
|
+
* Abstracts the ResizeObserver to limit its API.
|
|
111
|
+
*/
|
|
112
|
+
class ElementResizeService {
|
|
113
|
+
getResizeObservable(element) {
|
|
114
|
+
return new Observable(subscriber => {
|
|
115
|
+
const observer = new ResizeObserver(() => subscriber.next());
|
|
116
|
+
observer.observe(element);
|
|
117
|
+
return () => {
|
|
118
|
+
observer.unobserve(element);
|
|
119
|
+
};
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ElementResizeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
123
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ElementResizeService, providedIn: 'root' }); }
|
|
124
|
+
}
|
|
125
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ElementResizeService, decorators: [{
|
|
126
|
+
type: Injectable,
|
|
127
|
+
args: [{ providedIn: 'root' }]
|
|
128
|
+
}] });
|
|
129
|
+
|
|
130
|
+
/*
|
|
131
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
132
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
133
|
+
* This software is released under MIT license.
|
|
134
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
135
|
+
*/
|
|
136
|
+
const resources = {
|
|
137
|
+
layoutChangesDebounceDuration: 10,
|
|
138
|
+
initialLoadDelay: 250,
|
|
139
|
+
hermesTabLinkClasses: ['btn-link', 'nav-link'],
|
|
140
|
+
appfxSecondaryTabButtonClass: 'appfx-tab-button',
|
|
141
|
+
};
|
|
142
|
+
/**
|
|
143
|
+
* Automatically include the tab links in overflow if there is not enough width.
|
|
144
|
+
*
|
|
145
|
+
* This directive relies on the following Clarity internals:
|
|
146
|
+
* 1. HermesTabLink:
|
|
147
|
+
* <code>
|
|
148
|
+
* @HostBinding('class.btn-link')
|
|
149
|
+
* @HostBinding('class.nav-link')
|
|
150
|
+
* get addLinkClasses() {...}
|
|
151
|
+
* </code>
|
|
152
|
+
*
|
|
153
|
+
* 2. HermesTabs:
|
|
154
|
+
* <code>
|
|
155
|
+
* @ContentChildren(HermesTab) private tabs: QueryList<HermesTab>;
|
|
156
|
+
*
|
|
157
|
+
* private _tabOverflowEl: HTMLElement;
|
|
158
|
+
* </code>
|
|
159
|
+
*/
|
|
160
|
+
class OverflowHermesTabsDirective {
|
|
161
|
+
constructor(cdr, element, renderer, hermesTabsComponent, elementResizeService) {
|
|
162
|
+
this.cdr = cdr;
|
|
163
|
+
this.element = element;
|
|
164
|
+
this.renderer = renderer;
|
|
165
|
+
this.hermesTabsComponent = hermesTabsComponent;
|
|
166
|
+
this.elementResizeService = elementResizeService;
|
|
167
|
+
this.subscription = new Subscription();
|
|
168
|
+
}
|
|
169
|
+
ngAfterViewInit() {
|
|
170
|
+
this.setup();
|
|
171
|
+
}
|
|
172
|
+
ngOnDestroy() {
|
|
173
|
+
this.subscription.unsubscribe();
|
|
174
|
+
}
|
|
175
|
+
setup() {
|
|
176
|
+
this.patchOverflowContent();
|
|
177
|
+
const tabs = this.hermesTabsComponent['tabs'];
|
|
178
|
+
this.parentElement = this.renderer.parentNode(this.element.nativeElement);
|
|
179
|
+
this.subscription.add(merge(tabs.changes, of(undefined).pipe(delay(resources.initialLoadDelay)), this.elementResizeService.getResizeObservable(this.parentElement))
|
|
180
|
+
.pipe(debounceTime(resources.layoutChangesDebounceDuration))
|
|
181
|
+
.subscribe(() => this.updateOverflowMenu(this.parentElement)));
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* When the More button (...) is clicked, HermesTabOverflowContent is displayed.
|
|
185
|
+
* It is a dropdown with style 'bottom-right'. However when there is just one tab,
|
|
186
|
+
* the overflow component overflows to the left of the viewport and is not visible.
|
|
187
|
+
* This method overrides private field in HermesTabs - _tabOverflowEl - that is set when
|
|
188
|
+
* the HermesTabOverflowContent is created. If all tabs are in overflow, then change the
|
|
189
|
+
* style of <hermes-tab-overflow-content> element so that it takes the entire width
|
|
190
|
+
* of the viewport.
|
|
191
|
+
*/
|
|
192
|
+
patchOverflowContent() {
|
|
193
|
+
Object.defineProperty(this.hermesTabsComponent, '_tabOverflowEl', {
|
|
194
|
+
get: () => this.tabOverflowEl,
|
|
195
|
+
set: (el) => {
|
|
196
|
+
this.tabOverflowEl = el;
|
|
197
|
+
if (!this.tabOverflowEl) {
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
const tabLinks = this.hermesTabsComponent.tabLinkDirectives;
|
|
201
|
+
const allTabsInOverflow = tabLinks.every((tabLink) => tabLink.inOverflow);
|
|
202
|
+
if (allTabsInOverflow) {
|
|
203
|
+
this.renderer.setStyle(this.tabOverflowEl, 'left', 0);
|
|
204
|
+
this.renderer.setStyle(this.tabOverflowEl, 'position', 'fixed');
|
|
205
|
+
this.renderer.setStyle(this.tabOverflowEl, 'top', 'auto');
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Determine which tab links to be shelved into the overflow menu.
|
|
212
|
+
*/
|
|
213
|
+
updateOverflowMenu(container) {
|
|
214
|
+
const tabLinks = this.hermesTabsComponent.tabLinkDirectives;
|
|
215
|
+
this.showAllTabs(tabLinks);
|
|
216
|
+
const hermesTabLinkMargin = this.calculateTabLinkMargin(tabLinks);
|
|
217
|
+
this.updateTabsInOverflow(tabLinks, hermesTabLinkMargin, container);
|
|
218
|
+
}
|
|
219
|
+
showAllTabs(tabLinks) {
|
|
220
|
+
let overflowStateChanged = false;
|
|
221
|
+
// Move all tabs out of overflow, then update the underlying view to sync the shifted tabs.
|
|
222
|
+
tabLinks.forEach((tabLink) => {
|
|
223
|
+
if (tabLink.inOverflow) {
|
|
224
|
+
overflowStateChanged = true;
|
|
225
|
+
tabLink.inOverflow = false;
|
|
226
|
+
// Hidden tabs are displayed, but their style is like regular button. They are
|
|
227
|
+
// wider and this affect the overflow calculation. Temporary add link classes
|
|
228
|
+
// for more precise width calculation.
|
|
229
|
+
this.addTabLinkClasses(tabLink);
|
|
230
|
+
}
|
|
231
|
+
});
|
|
232
|
+
// Trigger change detection only if the overflow of tabs was changed.
|
|
233
|
+
if (overflowStateChanged) {
|
|
234
|
+
this.cdr.detectChanges();
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
calculateTabLinkMargin(tabLinks) {
|
|
238
|
+
if (tabLinks.length < 2) {
|
|
239
|
+
return 0;
|
|
240
|
+
}
|
|
241
|
+
const firstLinkEl = tabLinks[0].el.nativeElement;
|
|
242
|
+
const secondLinkEl = tabLinks[1].el.nativeElement;
|
|
243
|
+
return secondLinkEl.getBoundingClientRect().left - firstLinkEl.getBoundingClientRect().right;
|
|
244
|
+
}
|
|
245
|
+
updateTabsInOverflow(tabLinks, hermesTabLinkMargin, container) {
|
|
246
|
+
let areNextTabLinksOverflowing = false;
|
|
247
|
+
tabLinks.forEach((tabLink) => {
|
|
248
|
+
if (!areNextTabLinksOverflowing) {
|
|
249
|
+
tabLink.inOverflow = areNextTabLinksOverflowing = this.isTabLinkOverflowing(container, hermesTabLinkMargin, tabLink);
|
|
250
|
+
}
|
|
251
|
+
else {
|
|
252
|
+
// presume and hide remaining tabs
|
|
253
|
+
tabLink.inOverflow = true;
|
|
254
|
+
}
|
|
255
|
+
// Manually restore the classes that HermesTabLink adds to its parent button.
|
|
256
|
+
// Change detection updates the visibility of the tabs, but does not
|
|
257
|
+
// update the @HostBinding properly.
|
|
258
|
+
if (tabLink.inOverflow) {
|
|
259
|
+
this.removeTabLinkClasses(tabLink);
|
|
260
|
+
}
|
|
261
|
+
else {
|
|
262
|
+
this.addTabLinkClasses(tabLink);
|
|
263
|
+
}
|
|
264
|
+
});
|
|
265
|
+
// as tabs may have shifted position in/out of menu, synchronize view
|
|
266
|
+
this.cdr.detectChanges();
|
|
267
|
+
}
|
|
268
|
+
isTabLinkOverflowing(container, hermesTabLinkMargin, tabLink) {
|
|
269
|
+
const containerBcr = container.getBoundingClientRect();
|
|
270
|
+
const hermesTabLinkEl = tabLink.el.nativeElement;
|
|
271
|
+
const hermesTabLinkElementBcr = hermesTabLinkEl.getBoundingClientRect();
|
|
272
|
+
// layout decision making process for showing or hiding a tab
|
|
273
|
+
// include natural margin around tab and guarantee some inset padding for the "..." against right edge
|
|
274
|
+
return hermesTabLinkElementBcr.right + hermesTabLinkMargin > containerBcr.right - hermesTabLinkMargin;
|
|
275
|
+
}
|
|
276
|
+
addTabLinkClasses(tabLink) {
|
|
277
|
+
const buttonClassList = tabLink.el.nativeElement.classList;
|
|
278
|
+
if (buttonClassList.contains(resources.appfxSecondaryTabButtonClass)) {
|
|
279
|
+
// when appfx tabs are rendered as secondary tabs, no need to adjust the tab link classes.
|
|
280
|
+
return;
|
|
281
|
+
}
|
|
282
|
+
resources.hermesTabLinkClasses.forEach((cssClass) => this.renderer.addClass(tabLink.el.nativeElement, cssClass));
|
|
283
|
+
}
|
|
284
|
+
removeTabLinkClasses(tabLink) {
|
|
285
|
+
resources.hermesTabLinkClasses.forEach((cssClass) => this.renderer.removeClass(tabLink.el.nativeElement, cssClass));
|
|
286
|
+
}
|
|
287
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: OverflowHermesTabsDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1$1.HermesTabs }, { token: ElementResizeService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
288
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: OverflowHermesTabsDirective, isStandalone: false, selector: "hermes-tabs [appfxOverflowTabs]", ngImport: i0 }); }
|
|
289
|
+
}
|
|
290
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: OverflowHermesTabsDirective, decorators: [{
|
|
291
|
+
type: Directive,
|
|
292
|
+
args: [{
|
|
293
|
+
selector: 'hermes-tabs [appfxOverflowTabs]',
|
|
294
|
+
standalone: false,
|
|
295
|
+
}]
|
|
296
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1$1.HermesTabs }, { type: ElementResizeService }] });
|
|
297
|
+
|
|
298
|
+
/*
|
|
299
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
300
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
301
|
+
* This software is released under MIT license.
|
|
302
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
303
|
+
*/
|
|
304
|
+
const translations = {
|
|
305
|
+
en: {
|
|
306
|
+
legendPrefix: 'Fields marked with',
|
|
307
|
+
legendSuffix: 'are required',
|
|
308
|
+
},
|
|
309
|
+
es: {
|
|
310
|
+
legendPrefix: 'Campos marcados con',
|
|
311
|
+
legendSuffix: 'son obligatorios',
|
|
312
|
+
},
|
|
313
|
+
fr: {
|
|
314
|
+
legendPrefix: "Champs marqués d'un",
|
|
315
|
+
legendSuffix: 'sont requis',
|
|
316
|
+
},
|
|
317
|
+
ja: {
|
|
318
|
+
legendPrefix: 'フィールドのマークに使用される条件',
|
|
319
|
+
legendSuffix: 'は必須です',
|
|
320
|
+
},
|
|
321
|
+
};
|
|
322
|
+
|
|
323
|
+
/*
|
|
324
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
325
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
326
|
+
* This software is released under MIT license.
|
|
327
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
328
|
+
*/
|
|
329
|
+
class RequiredFieldLegendComponent {
|
|
330
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: RequiredFieldLegendComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
331
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.22", type: RequiredFieldLegendComponent, isStandalone: false, selector: "appfx-required-field-legend", providers: [
|
|
332
|
+
AppfxTranslateService,
|
|
333
|
+
{
|
|
334
|
+
provide: appfxTranslationsToken,
|
|
335
|
+
useValue: translations,
|
|
336
|
+
},
|
|
337
|
+
], ngImport: i0, template: "<!--\r\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n ~ This software is released under MIT license.\r\n ~ The full license information can be found in LICENSE in the root directory of this project.\r\n -->\r\n<div class=\"legend-wrapper\">\r\n <span>{{ 'legendPrefix' | translate }}</span>\r\n <span class=\"icon-margin hermes-required-mark\"></span>\r\n <span>{{ 'legendSuffix' | translate }}</span>\r\n</div>\r\n", styles: [".legend-wrapper{display:inline-block;position:relative;height:1.5rem;font-style:italic}.legend-wrapper .icon-margin{margin-right:.3rem}\n"], dependencies: [{ kind: "pipe", type: i1$2.TranslatePipe, name: "translate" }] }); }
|
|
338
|
+
}
|
|
339
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: RequiredFieldLegendComponent, decorators: [{
|
|
340
|
+
type: Component,
|
|
341
|
+
args: [{ selector: 'appfx-required-field-legend', standalone: false, providers: [
|
|
342
|
+
AppfxTranslateService,
|
|
343
|
+
{
|
|
344
|
+
provide: appfxTranslationsToken,
|
|
345
|
+
useValue: translations,
|
|
346
|
+
},
|
|
347
|
+
], template: "<!--\r\n ~ Copyright (c) 2016-2026 Broadcom. All Rights Reserved.\r\n ~ The term \"Broadcom\" refers to Broadcom Inc. and/or its subsidiaries.\r\n ~ This software is released under MIT license.\r\n ~ The full license information can be found in LICENSE in the root directory of this project.\r\n -->\r\n<div class=\"legend-wrapper\">\r\n <span>{{ 'legendPrefix' | translate }}</span>\r\n <span class=\"icon-margin hermes-required-mark\"></span>\r\n <span>{{ 'legendSuffix' | translate }}</span>\r\n</div>\r\n", styles: [".legend-wrapper{display:inline-block;position:relative;height:1.5rem;font-style:italic}.legend-wrapper .icon-margin{margin-right:.3rem}\n"] }]
|
|
348
|
+
}] });
|
|
349
|
+
|
|
350
|
+
/*
|
|
351
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
352
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
353
|
+
* This software is released under MIT license.
|
|
354
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
355
|
+
*/
|
|
356
|
+
// Supported zoom levels are 200% and 400% with breakpoints based on
|
|
357
|
+
// Bootstrap responsive breakpoints:
|
|
358
|
+
// https://getbootstrap.com/docs/4.5/layout/overview/
|
|
359
|
+
// The mapping between zoom levels and Bootstrap breakpoints is:
|
|
360
|
+
// 400% = Bootstrap XS - <576px
|
|
361
|
+
// 200% = Bootstrap SM | MD | L - ≥576px
|
|
362
|
+
// none (no-zoom) = Bootstrap XL - ≥1200px
|
|
363
|
+
var ZoomLevel;
|
|
364
|
+
(function (ZoomLevel) {
|
|
365
|
+
ZoomLevel["x2"] = "zoom2x";
|
|
366
|
+
ZoomLevel["x4"] = "zoom4x";
|
|
367
|
+
ZoomLevel["none"] = "no-zoom";
|
|
368
|
+
})(ZoomLevel || (ZoomLevel = {}));
|
|
369
|
+
const zoomBreakpoints = [
|
|
370
|
+
{
|
|
371
|
+
zoomLevel: ZoomLevel.x4,
|
|
372
|
+
maxWidth: 575,
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
zoomLevel: ZoomLevel.x2,
|
|
376
|
+
maxWidth: 1199,
|
|
377
|
+
},
|
|
378
|
+
{
|
|
379
|
+
zoomLevel: ZoomLevel.none,
|
|
380
|
+
maxWidth: Number.MAX_VALUE,
|
|
381
|
+
},
|
|
382
|
+
];
|
|
383
|
+
|
|
384
|
+
/*
|
|
385
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
386
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
387
|
+
* This software is released under MIT license.
|
|
388
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
389
|
+
*/
|
|
390
|
+
/**
|
|
391
|
+
* Service for detecting zoom level based on document body size. Uses
|
|
392
|
+
* ResizeObserver for detecting body size changes.
|
|
393
|
+
* @private
|
|
394
|
+
* ResizeObserver spec: https://developer.mozilla.org/en-US/docs/Web/API/ResizeObserver
|
|
395
|
+
*/
|
|
396
|
+
class ZoomLevelService {
|
|
397
|
+
constructor(document) {
|
|
398
|
+
this.document = document;
|
|
399
|
+
this.resizeSubject = new ReplaySubject(1);
|
|
400
|
+
/**
|
|
401
|
+
* Emits when the zoom level is changed.
|
|
402
|
+
*
|
|
403
|
+
* NOTE: This observable emits <b>outside Angular</b>. You might need to explicitly invoke
|
|
404
|
+
* <code>ChangeDetectorRef.detectChanges()</code> to trigger Angular change detection.
|
|
405
|
+
*/
|
|
406
|
+
// debounceTime() operator is added to avoid the following error:
|
|
407
|
+
// "ResizeObserver loop limit exceeded thrown"
|
|
408
|
+
// This error means that ResizeObserver was not able to deliver all observations within
|
|
409
|
+
// a single animation frame. This happens if a change detection is run inside the subscriber.
|
|
410
|
+
this._onChange = this.resizeSubject.pipe(debounceTime(10));
|
|
411
|
+
this.observe();
|
|
412
|
+
}
|
|
413
|
+
get onChange() {
|
|
414
|
+
return this._onChange;
|
|
415
|
+
}
|
|
416
|
+
set onChange(value) {
|
|
417
|
+
this._onChange = value;
|
|
418
|
+
}
|
|
419
|
+
ngOnDestroy() {
|
|
420
|
+
this.unobserve();
|
|
421
|
+
this.resizeSubject.complete();
|
|
422
|
+
}
|
|
423
|
+
observe() {
|
|
424
|
+
this.observer = new ResizeObserver((entries) => {
|
|
425
|
+
const entry = entries && entries[0];
|
|
426
|
+
if (!entry) {
|
|
427
|
+
return;
|
|
428
|
+
}
|
|
429
|
+
this.detectZoomLevelChange(entry);
|
|
430
|
+
});
|
|
431
|
+
this.observer.observe(this.document.documentElement);
|
|
432
|
+
}
|
|
433
|
+
unobserve() {
|
|
434
|
+
this.observer.unobserve(this.document.documentElement);
|
|
435
|
+
}
|
|
436
|
+
detectZoomLevelChange(entry) {
|
|
437
|
+
const docCurrentWidth = entry.contentRect.width;
|
|
438
|
+
const newResponsiveBreakpoint = zoomBreakpoints.find(breakpoint => {
|
|
439
|
+
return breakpoint.maxWidth >= docCurrentWidth;
|
|
440
|
+
});
|
|
441
|
+
if (newResponsiveBreakpoint?.zoomLevel === this.lastZoomLevel) {
|
|
442
|
+
return;
|
|
443
|
+
}
|
|
444
|
+
this.lastZoomLevel = newResponsiveBreakpoint?.zoomLevel;
|
|
445
|
+
this.resizeSubject.next(this.lastZoomLevel);
|
|
446
|
+
}
|
|
447
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ZoomLevelService, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
448
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ZoomLevelService }); }
|
|
449
|
+
}
|
|
450
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ZoomLevelService, decorators: [{
|
|
451
|
+
type: Injectable
|
|
452
|
+
}], ctorParameters: () => [{ type: Document, decorators: [{
|
|
453
|
+
type: Inject,
|
|
454
|
+
args: [DOCUMENT]
|
|
455
|
+
}] }] });
|
|
456
|
+
|
|
457
|
+
/*
|
|
458
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
459
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
460
|
+
* This software is released under MIT license.
|
|
461
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
462
|
+
*/
|
|
463
|
+
class ZoomLevelIndicatorDirective {
|
|
464
|
+
constructor(zoomLevelService) {
|
|
465
|
+
this.zoomLevelService = zoomLevelService;
|
|
466
|
+
}
|
|
467
|
+
ngOnInit() {
|
|
468
|
+
if (this.zoomLevelService) {
|
|
469
|
+
this.subscription = this.zoomLevelService.onChange.subscribe(v => {
|
|
470
|
+
this.zoomLevel = v;
|
|
471
|
+
});
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
ngOnDestroy() {
|
|
475
|
+
if (this.subscription) {
|
|
476
|
+
this.subscription.unsubscribe();
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ZoomLevelIndicatorDirective, deps: [{ token: ZoomLevelService, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
480
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.22", type: ZoomLevelIndicatorDirective, isStandalone: false, selector: "[zoomLevelIndicator]", host: { properties: { "class": "this.zoomLevel" } }, ngImport: i0 }); }
|
|
481
|
+
}
|
|
482
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: ZoomLevelIndicatorDirective, decorators: [{
|
|
483
|
+
type: Directive,
|
|
484
|
+
args: [{ selector: '[zoomLevelIndicator]', standalone: false }]
|
|
485
|
+
}], ctorParameters: () => [{ type: ZoomLevelService, decorators: [{
|
|
486
|
+
type: Optional
|
|
487
|
+
}] }], propDecorators: { zoomLevel: [{
|
|
488
|
+
type: HostBinding,
|
|
489
|
+
args: ['class']
|
|
490
|
+
}] } });
|
|
491
|
+
|
|
492
|
+
/*
|
|
493
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
494
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
495
|
+
* This software is released under MIT license.
|
|
496
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
497
|
+
*/
|
|
498
|
+
/**
|
|
499
|
+
* Provides accessibility related services.
|
|
500
|
+
*/
|
|
501
|
+
class AppfxA11yModule {
|
|
502
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: AppfxA11yModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
503
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.22", ngImport: i0, type: AppfxA11yModule, declarations: [OverflowHermesTabsDirective,
|
|
504
|
+
OverrideHermesStringsDirective,
|
|
505
|
+
RequiredFieldLegendComponent,
|
|
506
|
+
ZoomLevelIndicatorDirective], imports: [AppfxTranslateModule], exports: [OverflowHermesTabsDirective,
|
|
507
|
+
OverrideHermesStringsDirective,
|
|
508
|
+
RequiredFieldLegendComponent,
|
|
509
|
+
ZoomLevelIndicatorDirective] }); }
|
|
510
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: AppfxA11yModule, providers: [ZoomLevelService], imports: [AppfxTranslateModule] }); }
|
|
511
|
+
}
|
|
512
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.22", ngImport: i0, type: AppfxA11yModule, decorators: [{
|
|
513
|
+
type: NgModule,
|
|
514
|
+
args: [{
|
|
515
|
+
declarations: [
|
|
516
|
+
OverflowHermesTabsDirective,
|
|
517
|
+
OverrideHermesStringsDirective,
|
|
518
|
+
RequiredFieldLegendComponent,
|
|
519
|
+
ZoomLevelIndicatorDirective,
|
|
520
|
+
],
|
|
521
|
+
imports: [AppfxTranslateModule],
|
|
522
|
+
exports: [
|
|
523
|
+
OverflowHermesTabsDirective,
|
|
524
|
+
OverrideHermesStringsDirective,
|
|
525
|
+
RequiredFieldLegendComponent,
|
|
526
|
+
ZoomLevelIndicatorDirective,
|
|
527
|
+
],
|
|
528
|
+
providers: [ZoomLevelService],
|
|
529
|
+
}]
|
|
530
|
+
}] });
|
|
531
|
+
|
|
532
|
+
/*
|
|
533
|
+
* Copyright (c) 2016-2026 Broadcom. All Rights Reserved.
|
|
534
|
+
* The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
|
535
|
+
* This software is released under MIT license.
|
|
536
|
+
* The full license information can be found in LICENSE in the root directory of this project.
|
|
537
|
+
*/
|
|
538
|
+
|
|
539
|
+
/**
|
|
540
|
+
* Generated bundle index. Do not edit.
|
|
541
|
+
*/
|
|
542
|
+
|
|
543
|
+
export { AppfxA11yModule as A11yModule, AppfxA11yModule, ElementResizeService, OverflowHermesTabsDirective, OverrideHermesStringsDirective, RequiredFieldLegendComponent, ZoomLevel, ZoomLevelIndicatorDirective, ZoomLevelService, a11ykeys };
|
|
544
|
+
//# sourceMappingURL=hermes-ui-angular-addons-a11y.mjs.map
|