@inera/ids-angular 9.0.2 → 9.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.
- package/common/classes/form/IDErrorMessageBase.d.ts +1 -1
- package/common/classes/form/IDFormBase.d.ts +3 -2
- package/common/public-api.d.ts +1 -0
- package/common/utilities/useFocusTrap.d.ts +11 -0
- package/components/accordion/accordion.component.d.ts +4 -3
- package/components/card/card.component.d.ts +1 -1
- package/components/card/public-api.d.ts +0 -1
- package/components/carousel/carousel.component.d.ts +5 -2
- package/components/dialog/dialog.component.d.ts +4 -12
- package/components/dropdown/dropdown-trigger.component.d.ts +0 -1
- package/components/dropdown/dropdown.component.d.ts +8 -3
- package/components/footer-1177/footer-1177-col.component.d.ts +1 -0
- package/components/footer-1177/footer-1177-text.component.d.ts +0 -1
- package/components/footer-1177/footer-1177.component.d.ts +1 -0
- package/components/footer-1177-admin/footer-1177-admin-col.component.d.ts +1 -0
- package/components/footer-1177-admin/footer-1177-admin-text.component.d.ts +0 -1
- package/components/footer-1177-admin/footer-1177-admin.component.d.ts +1 -0
- package/components/footer-1177-pro/footer-1177-pro-col.component.d.ts +1 -0
- package/components/footer-1177-pro/footer-1177-pro-text.component.d.ts +0 -1
- package/components/footer-1177-pro/footer-1177-pro.component.d.ts +3 -1
- package/components/footer-inera/footer-inera-col.component.d.ts +1 -0
- package/components/footer-inera/footer-inera-sub-footer-mobile-text.component.d.ts +5 -0
- package/components/footer-inera/footer-inera-text.component.d.ts +0 -1
- package/components/footer-inera/footer-inera.component.d.ts +2 -1
- package/components/footer-inera/footer-inera.module.d.ts +2 -1
- package/components/footer-inera/public-api.d.ts +1 -0
- package/components/footer-inera-admin/footer-inera-admin-col.component.d.ts +2 -2
- package/components/footer-inera-admin/footer-inera-admin-sub-footer-mobile-text.component.d.ts +5 -0
- package/components/footer-inera-admin/footer-inera-admin-text.component.d.ts +0 -1
- package/components/footer-inera-admin/footer-inera-admin.component.d.ts +2 -1
- package/components/footer-inera-admin/footer-inera-admin.module.d.ts +2 -1
- package/components/footer-inera-admin/public-api.d.ts +1 -0
- package/components/footer-inera-general/footer-inera-general-col.component.d.ts +13 -0
- package/components/footer-inera-general/footer-inera-general-sub-footer-left.component.d.ts +5 -0
- package/components/footer-inera-general/footer-inera-general-sub-footer-mobile-text.component.d.ts +5 -0
- package/components/footer-inera-general/footer-inera-general-sub-footer-mobile.component.d.ts +5 -0
- package/components/footer-inera-general/footer-inera-general-sub-footer-right.component.d.ts +5 -0
- package/components/footer-inera-general/footer-inera-general-text.component.d.ts +5 -0
- package/components/footer-inera-general/footer-inera-general.component.d.ts +12 -0
- package/components/footer-inera-general/footer-inera-general.module.d.ts +12 -0
- package/components/footer-inera-general/index.d.ts +5 -0
- package/components/footer-inera-general/public-api.d.ts +8 -0
- package/components/form/checkbox-group/checkbox-group.component.d.ts +6 -4
- package/components/form/input/input-unit.component.d.ts +5 -0
- package/components/form/input/input.component.d.ts +7 -3
- package/components/form/input/public-api.d.ts +1 -0
- package/components/form/select-multiple/select-multiple.component.d.ts +2 -1
- package/components/form/textarea/textarea-hint.component.d.ts +1 -0
- package/components/global-alert/global-alert-actions.component.d.ts +0 -1
- package/components/global-alert/global-alert-header.component.d.ts +0 -1
- package/components/global-alert/global-alert.component.d.ts +1 -3
- package/components/header-1177/avatar/header-1177-avatar.component.d.ts +5 -2
- package/components/header-1177-admin/avatar/header-1177-admin-avatar.component.d.ts +6 -3
- package/components/header-1177-admin/avatar-mobile/header-1177-admin-avatar-mobile.component.d.ts +5 -2
- package/components/header-1177-admin/nav/header-1177-admin-nav.component.d.ts +1 -1
- package/components/header-1177-pro/avatar/header-1177-pro-avatar.component.d.ts +5 -2
- package/components/header-1177-pro/avatar-mobile/header-1177-pro-avatar-mobile.component.d.ts +6 -3
- package/components/header-1177-pro/header-1177-pro.component.d.ts +4 -4
- package/components/header-1177-pro/nav/header-1177-pro-nav.component.d.ts +1 -1
- package/components/header-1177-pro/region-picker-mobile/header-1177-pro-region-picker-mobile.component.d.ts +4 -2
- package/components/header-inera-admin/avatar/header-inera-admin-avatar.component.d.ts +5 -2
- package/components/header-inera-admin/avatar-mobile/header-inera-admin-avatar-mobile.component.d.ts +5 -2
- package/components/header-inera-admin/nav/header-inera-admin-nav.component.d.ts +3 -1
- package/components/header-inera-general/brand-link/header-inera-general-brand-link.directive.d.ts +5 -0
- package/components/header-inera-general/header-inera-general.component.d.ts +18 -0
- package/components/header-inera-general/header-inera-general.module.d.ts +14 -0
- package/components/header-inera-general/index.d.ts +5 -0
- package/components/header-inera-general/item/header-inera-general-item.component.d.ts +10 -0
- package/components/header-inera-general/menu-mobile/header-inera-general-menu-mobile.component.d.ts +10 -0
- package/components/header-inera-general/nav/header-inera-general-nav.component.d.ts +9 -0
- package/components/header-inera-general/nav-item/header-inera-general-nav-item.component.d.ts +25 -0
- package/components/header-inera-general/nav-item-menu-link/header-inera-general-nav-item-menu-link.component.d.ts +5 -0
- package/components/header-inera-general/public-api.d.ts +9 -0
- package/components/header-inera-general/skip-to-content/header-inera-general-skip-to-content.component.d.ts +5 -0
- package/components/mobile/menu/mobile-menu.component.d.ts +0 -1
- package/components/popover/popover-content.component.d.ts +4 -1
- package/components/popover/popover.component.d.ts +24 -12
- package/components/puff-list/puff-list-item-content-info.component.d.ts +3 -1
- package/components/puff-list/puff-list.component.d.ts +0 -1
- package/components/stepper/step.component.d.ts +4 -4
- package/components/tabs/tab-group.component.d.ts +3 -0
- package/components/tabs/tab.component.d.ts +4 -1
- package/components/toolbar/index.d.ts +5 -0
- package/components/toolbar/public-api.d.ts +1 -0
- package/components/toolbar/toolbar.component.d.ts +5 -0
- package/components/tooltip/tooltip.component.d.ts +17 -4
- package/fesm2022/inera-ids-angular-common.mjs +114 -28
- package/fesm2022/inera-ids-angular-common.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-accordion.mjs +15 -10
- package/fesm2022/inera-ids-angular-components-accordion.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-action-link.mjs +28 -12
- package/fesm2022/inera-ids-angular-components-action-link.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-alert.mjs +6 -6
- package/fesm2022/inera-ids-angular-components-badge.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-box-link.mjs +6 -6
- package/fesm2022/inera-ids-angular-components-breadcrumbs.mjs +7 -7
- package/fesm2022/inera-ids-angular-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-button-group.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-button.mjs +4 -4
- package/fesm2022/inera-ids-angular-components-button.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-card.mjs +7 -22
- package/fesm2022/inera-ids-angular-components-card.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-carousel.mjs +16 -8
- package/fesm2022/inera-ids-angular-components-carousel.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-date-label.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-dialog.mjs +30 -68
- package/fesm2022/inera-ids-angular-components-dialog.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-dropdown.mjs +59 -28
- package/fesm2022/inera-ids-angular-components-dropdown.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-footer-1177-admin.mjs +30 -28
- package/fesm2022/inera-ids-angular-components-footer-1177-admin.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-footer-1177-pro.mjs +36 -31
- package/fesm2022/inera-ids-angular-components-footer-1177-pro.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-footer-1177.mjs +29 -27
- package/fesm2022/inera-ids-angular-components-footer-1177.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-footer-inera-admin.mjs +55 -36
- package/fesm2022/inera-ids-angular-components-footer-inera-admin.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-footer-inera-general.mjs +214 -0
- package/fesm2022/inera-ids-angular-components-footer-inera-general.mjs.map +1 -0
- package/fesm2022/inera-ids-angular-components-footer-inera.mjs +53 -31
- package/fesm2022/inera-ids-angular-components-footer-inera.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-form-check-button.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-form-checkbox-group.mjs +11 -5
- package/fesm2022/inera-ids-angular-components-form-checkbox-group.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-form-checkbox.mjs +9 -3
- package/fesm2022/inera-ids-angular-components-form-checkbox.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-form-darkmode-toggle.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-form-error-message.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-form-input.mjs +44 -20
- package/fesm2022/inera-ids-angular-components-form-input.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-form-radio-button.mjs +7 -7
- package/fesm2022/inera-ids-angular-components-form-radio-button.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-form-radio.mjs +6 -6
- package/fesm2022/inera-ids-angular-components-form-range.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-form-select-multiple.mjs +25 -9
- package/fesm2022/inera-ids-angular-components-form-select-multiple.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-form-select.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-form-spinner.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-form-textarea.mjs +9 -8
- package/fesm2022/inera-ids-angular-components-form-textarea.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-form-time.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-form-toggle.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-global-alert.mjs +13 -21
- package/fesm2022/inera-ids-angular-components-global-alert.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-grid-column.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-grid-container.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-grid-layout-grid-column.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-grid-layout-grid-container.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-grid-layout-grid-row.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-grid-layout.mjs +9 -9
- package/fesm2022/inera-ids-angular-components-grid-row.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-grid.mjs +9 -9
- package/fesm2022/inera-ids-angular-components-header-1177-admin.mjs +159 -105
- package/fesm2022/inera-ids-angular-components-header-1177-admin.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-header-1177-pro.mjs +179 -131
- package/fesm2022/inera-ids-angular-components-header-1177-pro.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-header-1177.mjs +59 -50
- package/fesm2022/inera-ids-angular-components-header-1177.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-header-inera-admin.mjs +81 -60
- package/fesm2022/inera-ids-angular-components-header-inera-admin.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-header-inera-general.mjs +425 -0
- package/fesm2022/inera-ids-angular-components-header-inera-general.mjs.map +1 -0
- package/fesm2022/inera-ids-angular-components-header-inera.mjs +29 -31
- package/fesm2022/inera-ids-angular-components-header-inera.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-header-patient.mjs +6 -6
- package/fesm2022/inera-ids-angular-components-link.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-mobile-menu-item.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-mobile-menu-item.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-mobile-menu.mjs +7 -8
- package/fesm2022/inera-ids-angular-components-mobile-menu.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-navigation-content.mjs +6 -6
- package/fesm2022/inera-ids-angular-components-navigation-local.mjs +6 -6
- package/fesm2022/inera-ids-angular-components-notification-badge.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-pagination-data-pagination.mjs +6 -6
- package/fesm2022/inera-ids-angular-components-pagination-list-pagination.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-popover.mjs +209 -72
- package/fesm2022/inera-ids-angular-components-popover.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-progressbar.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-puff-list.mjs +160 -128
- package/fesm2022/inera-ids-angular-components-puff-list.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-region-icon.mjs +3 -3
- package/fesm2022/inera-ids-angular-components-side-menu.mjs +13 -13
- package/fesm2022/inera-ids-angular-components-side-panel.mjs +13 -13
- package/fesm2022/inera-ids-angular-components-stepper.mjs +57 -45
- package/fesm2022/inera-ids-angular-components-stepper.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-tabs.mjs +89 -14
- package/fesm2022/inera-ids-angular-components-tabs.mjs.map +1 -1
- package/fesm2022/inera-ids-angular-components-tag.mjs +6 -6
- package/fesm2022/inera-ids-angular-components-toolbar.mjs +18 -0
- package/fesm2022/inera-ids-angular-components-toolbar.mjs.map +1 -0
- package/fesm2022/inera-ids-angular-components-tooltip.mjs +148 -42
- package/fesm2022/inera-ids-angular-components-tooltip.mjs.map +1 -1
- package/package.json +104 -224
- package/components/card/card-link.directive.d.ts +0 -5
- package/esm2022/common/classes/form/IDErrorMessageBase.mjs +0 -19
- package/esm2022/common/classes/form/IDFormBase.mjs +0 -124
- package/esm2022/common/context/header-context.mjs +0 -3
- package/esm2022/common/directives/click-outside.directive.mjs +0 -30
- package/esm2022/common/inera-ids-angular-common.mjs +0 -5
- package/esm2022/common/public-api.mjs +0 -11
- package/esm2022/common/services/input-described-by-linker.service.mjs +0 -31
- package/esm2022/common/services/input-invalid-linker.service.mjs +0 -29
- package/esm2022/common/services/input-label-linker.service.mjs +0 -26
- package/esm2022/common/services/tooltip-category.service.mjs +0 -16
- package/esm2022/common/services/use-id.service.ts.mjs +0 -19
- package/esm2022/common/utilities/useEscKey.mjs +0 -11
- package/esm2022/components/accordion/accordion-header.component.mjs +0 -25
- package/esm2022/components/accordion/accordion.component.mjs +0 -99
- package/esm2022/components/accordion/inera-ids-angular-components-accordion.mjs +0 -5
- package/esm2022/components/accordion/public-api.mjs +0 -3
- package/esm2022/components/action-link/action-link.component.mjs +0 -32
- package/esm2022/components/action-link/inera-ids-angular-components-action-link.mjs +0 -5
- package/esm2022/components/action-link/public-api.mjs +0 -2
- package/esm2022/components/alert/alert-header.component.mjs +0 -25
- package/esm2022/components/alert/alert.component.mjs +0 -114
- package/esm2022/components/alert/inera-ids-angular-components-alert.mjs +0 -5
- package/esm2022/components/alert/public-api.mjs +0 -3
- package/esm2022/components/badge/badge.component.mjs +0 -22
- package/esm2022/components/badge/inera-ids-angular-components-badge.mjs +0 -5
- package/esm2022/components/badge/public-api.mjs +0 -2
- package/esm2022/components/box-link/box-link-button.component.mjs +0 -25
- package/esm2022/components/box-link/box-link.component.mjs +0 -20
- package/esm2022/components/box-link/inera-ids-angular-components-box-link.mjs +0 -5
- package/esm2022/components/box-link/public-api.mjs +0 -3
- package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +0 -43
- package/esm2022/components/breadcrumbs/crumb.component.mjs +0 -31
- package/esm2022/components/breadcrumbs/inera-ids-angular-components-breadcrumbs.mjs +0 -5
- package/esm2022/components/breadcrumbs/public-api.mjs +0 -3
- package/esm2022/components/button/button.directive.mjs +0 -140
- package/esm2022/components/button/inera-ids-angular-components-button.mjs +0 -5
- package/esm2022/components/button/public-api.mjs +0 -2
- package/esm2022/components/button-group/button-group.component.mjs +0 -39
- package/esm2022/components/button-group/inera-ids-angular-components-button-group.mjs +0 -5
- package/esm2022/components/button-group/public-api.mjs +0 -2
- package/esm2022/components/card/card-link.directive.mjs +0 -17
- package/esm2022/components/card/card.component.mjs +0 -48
- package/esm2022/components/card/inera-ids-angular-components-card.mjs +0 -5
- package/esm2022/components/card/public-api.mjs +0 -3
- package/esm2022/components/carousel/carousel-item/carousel-item.component.mjs +0 -33
- package/esm2022/components/carousel/carousel.component.mjs +0 -71
- package/esm2022/components/carousel/inera-ids-angular-components-carousel.mjs +0 -5
- package/esm2022/components/carousel/public-api.mjs +0 -3
- package/esm2022/components/date-label/date-label.component.mjs +0 -125
- package/esm2022/components/date-label/inera-ids-angular-components-date-label.mjs +0 -5
- package/esm2022/components/date-label/public-api.mjs +0 -2
- package/esm2022/components/dialog/dialog-close.component.mjs +0 -24
- package/esm2022/components/dialog/dialog-content.component.mjs +0 -15
- package/esm2022/components/dialog/dialog-footer.component.mjs +0 -18
- package/esm2022/components/dialog/dialog-header.component.mjs +0 -15
- package/esm2022/components/dialog/dialog-trigger.component.mjs +0 -15
- package/esm2022/components/dialog/dialog.component.mjs +0 -164
- package/esm2022/components/dialog/inera-ids-angular-components-dialog.mjs +0 -5
- package/esm2022/components/dialog/public-api.mjs +0 -7
- package/esm2022/components/dropdown/dropdown-item.directive.mjs +0 -18
- package/esm2022/components/dropdown/dropdown-trigger.component.mjs +0 -16
- package/esm2022/components/dropdown/dropdown.component.mjs +0 -103
- package/esm2022/components/dropdown/dropdown.module.mjs +0 -30
- package/esm2022/components/dropdown/inera-ids-angular-components-dropdown.mjs +0 -5
- package/esm2022/components/dropdown/public-api.mjs +0 -5
- package/esm2022/components/footer-1177/footer-1177-col.component.mjs +0 -42
- package/esm2022/components/footer-1177/footer-1177-sub-footer-left.component.mjs +0 -18
- package/esm2022/components/footer-1177/footer-1177-sub-footer-mobile.component.mjs +0 -18
- package/esm2022/components/footer-1177/footer-1177-sub-footer-right.component.mjs +0 -18
- package/esm2022/components/footer-1177/footer-1177-text.component.mjs +0 -29
- package/esm2022/components/footer-1177/footer-1177.component.mjs +0 -40
- package/esm2022/components/footer-1177/footer-1177.module.mjs +0 -45
- package/esm2022/components/footer-1177/inera-ids-angular-components-footer-1177.mjs +0 -5
- package/esm2022/components/footer-1177/public-api.mjs +0 -8
- package/esm2022/components/footer-1177-admin/footer-1177-admin-col.component.mjs +0 -42
- package/esm2022/components/footer-1177-admin/footer-1177-admin-sub-footer-left.component.mjs +0 -18
- package/esm2022/components/footer-1177-admin/footer-1177-admin-sub-footer-mobile.component.mjs +0 -18
- package/esm2022/components/footer-1177-admin/footer-1177-admin-sub-footer-right.component.mjs +0 -18
- package/esm2022/components/footer-1177-admin/footer-1177-admin-text.component.mjs +0 -29
- package/esm2022/components/footer-1177-admin/footer-1177-admin.component.mjs +0 -38
- package/esm2022/components/footer-1177-admin/footer-1177-admin.module.mjs +0 -45
- package/esm2022/components/footer-1177-admin/inera-ids-angular-components-footer-1177-admin.mjs +0 -5
- package/esm2022/components/footer-1177-admin/public-api.mjs +0 -8
- package/esm2022/components/footer-1177-pro/footer-1177-pro-col.component.mjs +0 -42
- package/esm2022/components/footer-1177-pro/footer-1177-pro-sub-footer-left.component.mjs +0 -18
- package/esm2022/components/footer-1177-pro/footer-1177-pro-sub-footer-mobile.component.mjs +0 -18
- package/esm2022/components/footer-1177-pro/footer-1177-pro-sub-footer-right.component.mjs +0 -18
- package/esm2022/components/footer-1177-pro/footer-1177-pro-text.component.mjs +0 -29
- package/esm2022/components/footer-1177-pro/footer-1177-pro.component.mjs +0 -38
- package/esm2022/components/footer-1177-pro/footer-1177-pro.module.mjs +0 -45
- package/esm2022/components/footer-1177-pro/inera-ids-angular-components-footer-1177-pro.mjs +0 -5
- package/esm2022/components/footer-1177-pro/public-api.mjs +0 -8
- package/esm2022/components/footer-inera/footer-inera-col.component.mjs +0 -42
- package/esm2022/components/footer-inera/footer-inera-sub-footer-left.component.mjs +0 -18
- package/esm2022/components/footer-inera/footer-inera-sub-footer-mobile.component.mjs +0 -18
- package/esm2022/components/footer-inera/footer-inera-sub-footer-right.component.mjs +0 -18
- package/esm2022/components/footer-inera/footer-inera-text.component.mjs +0 -29
- package/esm2022/components/footer-inera/footer-inera.component.mjs +0 -38
- package/esm2022/components/footer-inera/footer-inera.module.mjs +0 -45
- package/esm2022/components/footer-inera/inera-ids-angular-components-footer-inera.mjs +0 -5
- package/esm2022/components/footer-inera/public-api.mjs +0 -8
- package/esm2022/components/footer-inera-admin/footer-inera-admin-col.component.mjs +0 -46
- package/esm2022/components/footer-inera-admin/footer-inera-admin-sub-footer-left.component.mjs +0 -18
- package/esm2022/components/footer-inera-admin/footer-inera-admin-sub-footer-mobile.component.mjs +0 -18
- package/esm2022/components/footer-inera-admin/footer-inera-admin-sub-footer-right.component.mjs +0 -18
- package/esm2022/components/footer-inera-admin/footer-inera-admin-text.component.mjs +0 -29
- package/esm2022/components/footer-inera-admin/footer-inera-admin.component.mjs +0 -38
- package/esm2022/components/footer-inera-admin/footer-inera-admin.module.mjs +0 -45
- package/esm2022/components/footer-inera-admin/inera-ids-angular-components-footer-inera-admin.mjs +0 -5
- package/esm2022/components/footer-inera-admin/public-api.mjs +0 -8
- package/esm2022/components/form/check-button/check-button.component.mjs +0 -18
- package/esm2022/components/form/check-button/inera-ids-angular-components-form-check-button.mjs +0 -5
- package/esm2022/components/form/check-button/public-api.mjs +0 -2
- package/esm2022/components/form/checkbox/checkbox.component.mjs +0 -47
- package/esm2022/components/form/checkbox/inera-ids-angular-components-form-checkbox.mjs +0 -5
- package/esm2022/components/form/checkbox/public-api.mjs +0 -2
- package/esm2022/components/form/checkbox-group/checkbox-group.component.mjs +0 -44
- package/esm2022/components/form/checkbox-group/inera-ids-angular-components-form-checkbox-group.mjs +0 -5
- package/esm2022/components/form/checkbox-group/public-api.mjs +0 -2
- package/esm2022/components/form/darkmode-toggle/darkmode-toggle.component.mjs +0 -12
- package/esm2022/components/form/darkmode-toggle/inera-ids-angular-components-form-darkmode-toggle.mjs +0 -5
- package/esm2022/components/form/darkmode-toggle/public-api.mjs +0 -2
- package/esm2022/components/form/error-message/error-message.component.mjs +0 -46
- package/esm2022/components/form/error-message/inera-ids-angular-components-form-error-message.mjs +0 -5
- package/esm2022/components/form/error-message/public-api.mjs +0 -2
- package/esm2022/components/form/input/inera-ids-angular-components-form-input.mjs +0 -5
- package/esm2022/components/form/input/input-hint.component.mjs +0 -21
- package/esm2022/components/form/input/input-icon.component.mjs +0 -23
- package/esm2022/components/form/input/input.component.mjs +0 -42
- package/esm2022/components/form/input/public-api.mjs +0 -4
- package/esm2022/components/form/radio/inera-ids-angular-components-form-radio.mjs +0 -5
- package/esm2022/components/form/radio/public-api.mjs +0 -3
- package/esm2022/components/form/radio/radio-group.component.mjs +0 -55
- package/esm2022/components/form/radio/radio.component.mjs +0 -25
- package/esm2022/components/form/radio-button/inera-ids-angular-components-form-radio-button.mjs +0 -5
- package/esm2022/components/form/radio-button/public-api.mjs +0 -3
- package/esm2022/components/form/radio-button/radio-button-group.component.mjs +0 -46
- package/esm2022/components/form/radio-button/radio-button.component.mjs +0 -23
- package/esm2022/components/form/range/inera-ids-angular-components-form-range.mjs +0 -5
- package/esm2022/components/form/range/public-api.mjs +0 -2
- package/esm2022/components/form/range/range.component.mjs +0 -75
- package/esm2022/components/form/select/inera-ids-angular-components-form-select.mjs +0 -5
- package/esm2022/components/form/select/public-api.mjs +0 -2
- package/esm2022/components/form/select/select.component.mjs +0 -16
- package/esm2022/components/form/select-multiple/inera-ids-angular-components-form-select-multiple.mjs +0 -5
- package/esm2022/components/form/select-multiple/public-api.mjs +0 -2
- package/esm2022/components/form/select-multiple/select-multiple.component.mjs +0 -100
- package/esm2022/components/form/spinner/inera-ids-angular-components-form-spinner.mjs +0 -5
- package/esm2022/components/form/spinner/public-api.mjs +0 -2
- package/esm2022/components/form/spinner/spinner.component.mjs +0 -24
- package/esm2022/components/form/textarea/inera-ids-angular-components-form-textarea.mjs +0 -5
- package/esm2022/components/form/textarea/public-api.mjs +0 -3
- package/esm2022/components/form/textarea/textarea-hint.component.mjs +0 -24
- package/esm2022/components/form/textarea/textarea.component.mjs +0 -54
- package/esm2022/components/form/time/inera-ids-angular-components-form-time.mjs +0 -5
- package/esm2022/components/form/time/public-api.mjs +0 -2
- package/esm2022/components/form/time/time.component.mjs +0 -15
- package/esm2022/components/form/toggle/inera-ids-angular-components-form-toggle.mjs +0 -5
- package/esm2022/components/form/toggle/public-api.mjs +0 -2
- package/esm2022/components/form/toggle/toggle.component.mjs +0 -14
- package/esm2022/components/global-alert/global-alert-actions.component.mjs +0 -26
- package/esm2022/components/global-alert/global-alert-header.component.mjs +0 -26
- package/esm2022/components/global-alert/global-alert.component.mjs +0 -86
- package/esm2022/components/global-alert/inera-ids-angular-components-global-alert.mjs +0 -5
- package/esm2022/components/global-alert/public-api.mjs +0 -4
- package/esm2022/components/grid/column/column.component.mjs +0 -61
- package/esm2022/components/grid/column/inera-ids-angular-components-grid-column.mjs +0 -5
- package/esm2022/components/grid/column/public-api.mjs +0 -2
- package/esm2022/components/grid/container/container.component.mjs +0 -27
- package/esm2022/components/grid/container/inera-ids-angular-components-grid-container.mjs +0 -5
- package/esm2022/components/grid/container/public-api.mjs +0 -2
- package/esm2022/components/grid/inera-ids-angular-components-grid.mjs +0 -5
- package/esm2022/components/grid/public-api.mjs +0 -4
- package/esm2022/components/grid/row/inera-ids-angular-components-grid-row.mjs +0 -5
- package/esm2022/components/grid/row/public-api.mjs +0 -2
- package/esm2022/components/grid/row/row.component.mjs +0 -43
- package/esm2022/components/grid-layout/grid-column/grid-column.component.mjs +0 -72
- package/esm2022/components/grid-layout/grid-column/inera-ids-angular-components-grid-layout-grid-column.mjs +0 -5
- package/esm2022/components/grid-layout/grid-column/public-api.mjs +0 -2
- package/esm2022/components/grid-layout/grid-container/grid-container.component.mjs +0 -35
- package/esm2022/components/grid-layout/grid-container/inera-ids-angular-components-grid-layout-grid-container.mjs +0 -5
- package/esm2022/components/grid-layout/grid-container/public-api.mjs +0 -2
- package/esm2022/components/grid-layout/grid-row/grid-row.component.mjs +0 -43
- package/esm2022/components/grid-layout/grid-row/inera-ids-angular-components-grid-layout-grid-row.mjs +0 -5
- package/esm2022/components/grid-layout/grid-row/public-api.mjs +0 -2
- package/esm2022/components/grid-layout/inera-ids-angular-components-grid-layout.mjs +0 -5
- package/esm2022/components/grid-layout/public-api.mjs +0 -4
- package/esm2022/components/header-1177/avatar/header-1177-avatar-agent.component.mjs +0 -20
- package/esm2022/components/header-1177/avatar/header-1177-avatar.component.mjs +0 -113
- package/esm2022/components/header-1177/brand-link/header-1177-brand-link.directive.mjs +0 -17
- package/esm2022/components/header-1177/header-1177.component.mjs +0 -58
- package/esm2022/components/header-1177/header-1177.module.mjs +0 -80
- package/esm2022/components/header-1177/inera-ids-angular-components-header-1177.mjs +0 -5
- package/esm2022/components/header-1177/item/header-1177-item.component.mjs +0 -52
- package/esm2022/components/header-1177/menu-mobile/header-1177-menu-mobile.component.mjs +0 -57
- package/esm2022/components/header-1177/nav/header-1177-nav.component.mjs +0 -55
- package/esm2022/components/header-1177/nav-item/header-1177-nav-item.component.mjs +0 -157
- package/esm2022/components/header-1177/nav-item-menu-link/header-1177-nav-item-menu-link.component.mjs +0 -18
- package/esm2022/components/header-1177/nav-item-mobile/header-1177-nav-item-mobile.component.mjs +0 -36
- package/esm2022/components/header-1177/public-api.mjs +0 -15
- package/esm2022/components/header-1177/region-picker/header-1177-region-picker.component.mjs +0 -85
- package/esm2022/components/header-1177/region-picker-mobile/header-1177-region-picker-mobile.component.mjs +0 -76
- package/esm2022/components/header-1177/skip-to-content/header-1177-skip-to-content.component.mjs +0 -18
- package/esm2022/components/header-1177-admin/avatar/header-1177-admin-avatar.component.mjs +0 -130
- package/esm2022/components/header-1177-admin/avatar-mobile/header-1177-admin-avatar-mobile.component.mjs +0 -125
- package/esm2022/components/header-1177-admin/brand-link/header-1177-admin-brand-link.directive.mjs +0 -17
- package/esm2022/components/header-1177-admin/header-1177-admin.component.mjs +0 -57
- package/esm2022/components/header-1177-admin/header-1177-admin.module.mjs +0 -70
- package/esm2022/components/header-1177-admin/inera-ids-angular-components-header-1177-admin.mjs +0 -5
- package/esm2022/components/header-1177-admin/item/header-1177-admin-item.component.mjs +0 -39
- package/esm2022/components/header-1177-admin/menu-mobile/header-1177-admin-menu-mobile.component.mjs +0 -65
- package/esm2022/components/header-1177-admin/nav/header-1177-admin-nav.component.mjs +0 -37
- package/esm2022/components/header-1177-admin/nav-item/header-1177-admin-nav-item.component.mjs +0 -157
- package/esm2022/components/header-1177-admin/nav-item-menu-link/header-1177-admin-nav-item-menu-link.component.mjs +0 -18
- package/esm2022/components/header-1177-admin/nav-item-mobile/header-1177-admin-nav-item-mobile.mjs +0 -36
- package/esm2022/components/header-1177-admin/public-api.mjs +0 -13
- package/esm2022/components/header-1177-admin/skip-to-content/header-1177-admin-skip-to-content.component.mjs +0 -18
- package/esm2022/components/header-1177-pro/avatar/header-1177-pro-avatar.component.mjs +0 -130
- package/esm2022/components/header-1177-pro/avatar-mobile/header-1177-pro-avatar-mobile.component.mjs +0 -125
- package/esm2022/components/header-1177-pro/brand-link/header-1177-pro-brand-link.directive.mjs +0 -17
- package/esm2022/components/header-1177-pro/header-1177-pro.component.mjs +0 -51
- package/esm2022/components/header-1177-pro/header-1177-pro.module.mjs +0 -80
- package/esm2022/components/header-1177-pro/inera-ids-angular-components-header-1177-pro.mjs +0 -5
- package/esm2022/components/header-1177-pro/item/header-1177-pro-item.component.mjs +0 -39
- package/esm2022/components/header-1177-pro/menu-mobile/header-1177-pro-menu-mobile.component.mjs +0 -65
- package/esm2022/components/header-1177-pro/nav/header-1177-pro-nav.component.mjs +0 -33
- package/esm2022/components/header-1177-pro/nav-item/header-1177-pro-nav-item.component.mjs +0 -154
- package/esm2022/components/header-1177-pro/nav-item-menu-link/header-1177-pro-nav-item-menu-link.component.mjs +0 -18
- package/esm2022/components/header-1177-pro/nav-item-mobile/header-1177-pro-nav-item-mobile.mjs +0 -36
- package/esm2022/components/header-1177-pro/public-api.mjs +0 -15
- package/esm2022/components/header-1177-pro/region-picker/header-1177-pro-region-picker.component.mjs +0 -85
- package/esm2022/components/header-1177-pro/region-picker-mobile/header-1177-pro-region-picker-mobile.component.mjs +0 -76
- package/esm2022/components/header-1177-pro/skip-to-content/header-1177-pro-skip-to-content.component.mjs +0 -18
- package/esm2022/components/header-inera/brand-link/header-inera-brand-link.directive.mjs +0 -14
- package/esm2022/components/header-inera/header-inera.component.mjs +0 -53
- package/esm2022/components/header-inera/header-inera.module.mjs +0 -55
- package/esm2022/components/header-inera/inera-ids-angular-components-header-inera.mjs +0 -5
- package/esm2022/components/header-inera/item/header-inera-item.component.mjs +0 -39
- package/esm2022/components/header-inera/menu-mobile/header-inera-menu-mobile.component.mjs +0 -71
- package/esm2022/components/header-inera/nav/header-inera-nav.component.mjs +0 -33
- package/esm2022/components/header-inera/nav-item/header-inera-nav-item.component.mjs +0 -154
- package/esm2022/components/header-inera/nav-item-menu-link/header-inera-nav-item-menu-link.component.mjs +0 -18
- package/esm2022/components/header-inera/public-api.mjs +0 -10
- package/esm2022/components/header-inera/skip-to-content/header-inera-skip-to-content.component.mjs +0 -18
- package/esm2022/components/header-inera-admin/avatar/header-inera-admin-avatar.component.mjs +0 -130
- package/esm2022/components/header-inera-admin/avatar-mobile/header-inera-admin-avatar-mobile.component.mjs +0 -125
- package/esm2022/components/header-inera-admin/brand-link/header-inera-admin-brand-link.directive.mjs +0 -17
- package/esm2022/components/header-inera-admin/header-inera-admin.component.mjs +0 -65
- package/esm2022/components/header-inera-admin/header-inera-admin.module.mjs +0 -70
- package/esm2022/components/header-inera-admin/inera-ids-angular-components-header-inera-admin.mjs +0 -5
- package/esm2022/components/header-inera-admin/item/header-inera-admin-item.component.mjs +0 -44
- package/esm2022/components/header-inera-admin/menu-mobile/header-inera-admin-menu-mobile.component.mjs +0 -71
- package/esm2022/components/header-inera-admin/nav/header-inera-admin-nav.component.mjs +0 -33
- package/esm2022/components/header-inera-admin/nav-item/header-inera-admin-nav-item.component.mjs +0 -154
- package/esm2022/components/header-inera-admin/nav-item-menu-link/header-inera-admin-nav-item-menu-link.component.mjs +0 -18
- package/esm2022/components/header-inera-admin/nav-item-mobile/header-inera-admin-nav-item-mobile.mjs +0 -36
- package/esm2022/components/header-inera-admin/public-api.mjs +0 -13
- package/esm2022/components/header-inera-admin/skip-to-content/header-inera-admin-skip-to-content.component.mjs +0 -18
- package/esm2022/components/header-patient/header-patient-actions.component.mjs +0 -22
- package/esm2022/components/header-patient/header-patient.component.mjs +0 -78
- package/esm2022/components/header-patient/inera-ids-angular-components-header-patient.mjs +0 -5
- package/esm2022/components/header-patient/public-api.mjs +0 -3
- package/esm2022/components/link/inera-ids-angular-components-link.mjs +0 -5
- package/esm2022/components/link/link.directive.mjs +0 -64
- package/esm2022/components/link/public-api.mjs +0 -2
- package/esm2022/components/mobile/menu/inera-ids-angular-components-mobile-menu.mjs +0 -5
- package/esm2022/components/mobile/menu/item/inera-ids-angular-components-mobile-menu-item.mjs +0 -5
- package/esm2022/components/mobile/menu/item/mobile-menu-item.component.mjs +0 -92
- package/esm2022/components/mobile/menu/item/public-api.mjs +0 -2
- package/esm2022/components/mobile/menu/mobile-menu.component.mjs +0 -42
- package/esm2022/components/mobile/menu/public-api.mjs +0 -3
- package/esm2022/components/navigation/content/inera-ids-angular-components-navigation-content.mjs +0 -5
- package/esm2022/components/navigation/content/navigation-content-link.component.mjs +0 -29
- package/esm2022/components/navigation/content/navigation-content.component.mjs +0 -24
- package/esm2022/components/navigation/content/public-api.mjs +0 -3
- package/esm2022/components/navigation/local/inera-ids-angular-components-navigation-local.mjs +0 -5
- package/esm2022/components/navigation/local/navigation-local-link.component.mjs +0 -27
- package/esm2022/components/navigation/local/navigation-local.component.mjs +0 -21
- package/esm2022/components/navigation/local/public-api.mjs +0 -3
- package/esm2022/components/notification-badge/inera-ids-angular-components-notification-badge.mjs +0 -5
- package/esm2022/components/notification-badge/notification-badge.component.mjs +0 -39
- package/esm2022/components/notification-badge/public-api.mjs +0 -2
- package/esm2022/components/pagination/data-pagination/data-pagination-select.component.mjs +0 -20
- package/esm2022/components/pagination/data-pagination/data-pagination.component.mjs +0 -75
- package/esm2022/components/pagination/data-pagination/inera-ids-angular-components-pagination-data-pagination.mjs +0 -5
- package/esm2022/components/pagination/data-pagination/public-api.mjs +0 -3
- package/esm2022/components/pagination/list-pagination/inera-ids-angular-components-pagination-list-pagination.mjs +0 -5
- package/esm2022/components/pagination/list-pagination/list-pagination.component.mjs +0 -197
- package/esm2022/components/pagination/list-pagination/public-api.mjs +0 -2
- package/esm2022/components/popover/inera-ids-angular-components-popover.mjs +0 -5
- package/esm2022/components/popover/popover-close.component.mjs +0 -24
- package/esm2022/components/popover/popover-content.component.mjs +0 -91
- package/esm2022/components/popover/popover-header.component.mjs +0 -18
- package/esm2022/components/popover/popover-trigger.component.mjs +0 -15
- package/esm2022/components/popover/popover.component.mjs +0 -149
- package/esm2022/components/popover/popover.module.mjs +0 -40
- package/esm2022/components/popover/public-api.mjs +0 -7
- package/esm2022/components/progressbar/inera-ids-angular-components-progressbar.mjs +0 -5
- package/esm2022/components/progressbar/progressbar.component.mjs +0 -24
- package/esm2022/components/progressbar/public-api.mjs +0 -2
- package/esm2022/components/puff-list/inera-ids-angular-components-puff-list.mjs +0 -5
- package/esm2022/components/puff-list/public-api.mjs +0 -9
- package/esm2022/components/puff-list/puff-list-item-content-info.component.mjs +0 -18
- package/esm2022/components/puff-list/puff-list-item-content.component.mjs +0 -15
- package/esm2022/components/puff-list/puff-list-item-date-label.component.mjs +0 -18
- package/esm2022/components/puff-list/puff-list-item-extra-content.component.mjs +0 -18
- package/esm2022/components/puff-list/puff-list-item-header.component.mjs +0 -18
- package/esm2022/components/puff-list/puff-list-item.component.mjs +0 -161
- package/esm2022/components/puff-list/puff-list.component.mjs +0 -40
- package/esm2022/components/puff-list/puff-list.module.mjs +0 -51
- package/esm2022/components/region-icon/inera-ids-angular-components-region-icon.mjs +0 -5
- package/esm2022/components/region-icon/public-api.mjs +0 -2
- package/esm2022/components/region-icon/region-icon.component.mjs +0 -51
- package/esm2022/components/side-menu/inera-ids-angular-components-side-menu.mjs +0 -5
- package/esm2022/components/side-menu/public-api.mjs +0 -5
- package/esm2022/components/side-menu/side-menu-icon.component.mjs +0 -24
- package/esm2022/components/side-menu/side-menu-link.component.mjs +0 -18
- package/esm2022/components/side-menu/side-menu.component.mjs +0 -215
- package/esm2022/components/side-menu/side-menu.module.mjs +0 -30
- package/esm2022/components/side-panel/inera-ids-angular-components-side-panel.mjs +0 -5
- package/esm2022/components/side-panel/public-api.mjs +0 -5
- package/esm2022/components/side-panel/side-panel-footer.component.mjs +0 -50
- package/esm2022/components/side-panel/side-panel-provider.component.mjs +0 -73
- package/esm2022/components/side-panel/side-panel.component.mjs +0 -196
- package/esm2022/components/side-panel/side-panel.module.mjs +0 -31
- package/esm2022/components/stepper/inera-ids-angular-components-stepper.mjs +0 -5
- package/esm2022/components/stepper/public-api.mjs +0 -5
- package/esm2022/components/stepper/step-header.component.mjs +0 -18
- package/esm2022/components/stepper/step.component.mjs +0 -133
- package/esm2022/components/stepper/stepper.component.mjs +0 -30
- package/esm2022/components/stepper/stepper.module.mjs +0 -30
- package/esm2022/components/tabs/inera-ids-angular-components-tabs.mjs +0 -5
- package/esm2022/components/tabs/public-api.mjs +0 -3
- package/esm2022/components/tabs/tab-group.component.mjs +0 -51
- package/esm2022/components/tabs/tab.component.mjs +0 -41
- package/esm2022/components/tag/inera-ids-angular-components-tag.mjs +0 -5
- package/esm2022/components/tag/public-api.mjs +0 -3
- package/esm2022/components/tag/tag.component.mjs +0 -23
- package/esm2022/components/tag/tag.directive.mjs +0 -17
- package/esm2022/components/tooltip/inera-ids-angular-components-tooltip.mjs +0 -5
- package/esm2022/components/tooltip/public-api.mjs +0 -4
- package/esm2022/components/tooltip/tooltip-trigger.directive.mjs +0 -18
- package/esm2022/components/tooltip/tooltip.component.mjs +0 -84
- package/esm2022/components/tooltip/tooltip.module.mjs +0 -25
- package/esm2022/inera-ids-angular.mjs +0 -5
- package/esm2022/public-api.mjs +0 -2
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { EventEmitter, HostListener, Output, Component, booleanAttribute, Input,
|
|
2
|
+
import { EventEmitter, HostListener, Output, Component, inject, ElementRef, booleanAttribute, Input, ApplicationRef, DestroyRef, effect, ViewChild, ContentChildren, ContentChild, NgModule } from '@angular/core';
|
|
3
3
|
import * as i2 from '@angular/common';
|
|
4
|
-
import { CommonModule } from '@angular/common';
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
4
|
+
import { CommonModule, DOCUMENT } from '@angular/common';
|
|
5
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
6
|
+
import { DomPortalOutlet, DomPortal } from '@angular/cdk/portal';
|
|
7
|
+
import { IDClickOutsideDirective, IDTooltipCategoryService } from '@inera/ids-angular/common';
|
|
7
8
|
import * as i1 from '@angular/cdk/a11y';
|
|
8
9
|
import { A11yModule } from '@angular/cdk/a11y';
|
|
9
10
|
|
|
@@ -12,10 +13,10 @@ class IDPopoverCloseComponent {
|
|
|
12
13
|
onClick = (e) => {
|
|
13
14
|
this.clicked.emit(e);
|
|
14
15
|
};
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
16
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
16
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverCloseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
17
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: IDPopoverCloseComponent, isStandalone: true, selector: "id-popover-close", outputs: { clicked: "clicked" }, host: { listeners: { "click": "onClick()" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
|
|
17
18
|
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverCloseComponent, decorators: [{
|
|
19
20
|
type: Component,
|
|
20
21
|
args: [{
|
|
21
22
|
selector: 'id-popover-close',
|
|
@@ -30,6 +31,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
30
31
|
}] } });
|
|
31
32
|
|
|
32
33
|
class IDPopoverContentComponent {
|
|
34
|
+
elementRef = inject(ElementRef);
|
|
33
35
|
contentClosed = new EventEmitter();
|
|
34
36
|
position = 'bottom';
|
|
35
37
|
closeOnBlur = false;
|
|
@@ -44,17 +46,38 @@ class IDPopoverContentComponent {
|
|
|
44
46
|
this.contentClosed.emit(event);
|
|
45
47
|
}
|
|
46
48
|
}
|
|
49
|
+
onKeyDown(event) {
|
|
50
|
+
if (event.key === 'Escape') {
|
|
51
|
+
this.contentClosed.emit(event);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
onShiftTab(event) {
|
|
55
|
+
const wrapper = this.elementRef.nativeElement.querySelector('.ids-popover-content__content-wrapper');
|
|
56
|
+
if (document.activeElement !== wrapper && !wrapper?.contains(document.activeElement))
|
|
57
|
+
return;
|
|
58
|
+
if (document.activeElement === wrapper) {
|
|
59
|
+
event.preventDefault();
|
|
60
|
+
const focusable = wrapper.querySelectorAll('a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])');
|
|
61
|
+
const last = Array.from(focusable).filter(el => el !== wrapper).pop();
|
|
62
|
+
if (last) {
|
|
63
|
+
last.focus();
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
47
67
|
get caretPositionClass() {
|
|
48
68
|
return `ids-popover-content__caret--${this.position}`;
|
|
49
69
|
}
|
|
50
70
|
get hostClasses() {
|
|
51
71
|
return `ids-popover-content ids-popover-content--${this.position}`;
|
|
52
72
|
}
|
|
53
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
54
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "
|
|
55
|
-
<div [cdkTrapFocus]="true" idClickOutside (idClickOutside)="onClickedOutside($event)"
|
|
73
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
74
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.2.20", type: IDPopoverContentComponent, isStandalone: true, selector: "id-popover-content", inputs: { closeOnBlur: ["closeOnBlur", "closeOnBlur", booleanAttribute], maxHeight: "maxHeight", maxWidth: "maxWidth", srCloseText: "srCloseText" }, outputs: { contentClosed: "contentClosed" }, host: { listeners: { "keydown": "onKeyDown($event)" }, properties: { "class": "hostClasses" }, styleAttribute: "display: none" }, ngImport: i0, template: `
|
|
75
|
+
<div [cdkTrapFocus]="true" idClickOutside (idClickOutside)="onClickedOutside($event)"
|
|
76
|
+
(keydown.shift.tab)="onShiftTab($event)"
|
|
77
|
+
class="ids-popover-content__content-wrapper"
|
|
78
|
+
tabindex="0"
|
|
56
79
|
[style.maxWidth]="maxWidth"
|
|
57
|
-
[style.maxHeight]="
|
|
80
|
+
[style.maxHeight]="maxHeight">
|
|
58
81
|
<div class="ids-popover-content__caret" [ngClass]="caretPositionClass">
|
|
59
82
|
<span class="ids-popover-content__caret-body" [ngClass]="caretPositionClass"></span>
|
|
60
83
|
<span class="ids-popover-content__caret-border" [ngClass]="caretPositionClass"></span>
|
|
@@ -65,22 +88,25 @@ class IDPopoverContentComponent {
|
|
|
65
88
|
<button (click)="contentClosed.emit($event)" class="ids-popover-content__close-btn" [attr.aria-label]="srCloseText"></button>
|
|
66
89
|
</div>
|
|
67
90
|
</div>
|
|
68
|
-
<div
|
|
91
|
+
<div class="ids-popover-content__content-wrapper-inner">
|
|
69
92
|
<ng-content select="id-popover-header"></ng-content>
|
|
70
93
|
<ng-content></ng-content>
|
|
71
94
|
</div>
|
|
72
95
|
</div>`, isInline: true, dependencies: [{ kind: "ngmodule", type: A11yModule }, { kind: "directive", type: i1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: IDClickOutsideDirective, selector: "[idClickOutside]", outputs: ["idClickOutside"] }] });
|
|
73
96
|
}
|
|
74
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
97
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverContentComponent, decorators: [{
|
|
75
98
|
type: Component,
|
|
76
99
|
args: [{
|
|
77
100
|
selector: 'id-popover-content',
|
|
78
101
|
standalone: true,
|
|
79
102
|
imports: [A11yModule, CommonModule, IDClickOutsideDirective],
|
|
80
103
|
template: `
|
|
81
|
-
<div [cdkTrapFocus]="true" idClickOutside (idClickOutside)="onClickedOutside($event)"
|
|
104
|
+
<div [cdkTrapFocus]="true" idClickOutside (idClickOutside)="onClickedOutside($event)"
|
|
105
|
+
(keydown.shift.tab)="onShiftTab($event)"
|
|
106
|
+
class="ids-popover-content__content-wrapper"
|
|
107
|
+
tabindex="0"
|
|
82
108
|
[style.maxWidth]="maxWidth"
|
|
83
|
-
[style.maxHeight]="
|
|
109
|
+
[style.maxHeight]="maxHeight">
|
|
84
110
|
<div class="ids-popover-content__caret" [ngClass]="caretPositionClass">
|
|
85
111
|
<span class="ids-popover-content__caret-body" [ngClass]="caretPositionClass"></span>
|
|
86
112
|
<span class="ids-popover-content__caret-border" [ngClass]="caretPositionClass"></span>
|
|
@@ -91,13 +117,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
91
117
|
<button (click)="contentClosed.emit($event)" class="ids-popover-content__close-btn" [attr.aria-label]="srCloseText"></button>
|
|
92
118
|
</div>
|
|
93
119
|
</div>
|
|
94
|
-
<div
|
|
120
|
+
<div class="ids-popover-content__content-wrapper-inner">
|
|
95
121
|
<ng-content select="id-popover-header"></ng-content>
|
|
96
122
|
<ng-content></ng-content>
|
|
97
123
|
</div>
|
|
98
124
|
</div>`,
|
|
99
125
|
host: {
|
|
100
126
|
'[class]': 'hostClasses',
|
|
127
|
+
'style': 'display: none',
|
|
101
128
|
}
|
|
102
129
|
}]
|
|
103
130
|
}], propDecorators: { contentClosed: [{
|
|
@@ -111,23 +138,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
111
138
|
type: Input
|
|
112
139
|
}], srCloseText: [{
|
|
113
140
|
type: Input
|
|
141
|
+
}], onKeyDown: [{
|
|
142
|
+
type: HostListener,
|
|
143
|
+
args: ['keydown', ['$event']]
|
|
114
144
|
}] } });
|
|
115
145
|
|
|
116
146
|
class IDPopoverComponent {
|
|
117
|
-
categoryCollection;
|
|
118
147
|
position = 'bottom';
|
|
119
148
|
category = '';
|
|
120
149
|
show = false;
|
|
121
150
|
showChange = new EventEmitter();
|
|
122
|
-
autoFocus = false;
|
|
123
151
|
closed = new EventEmitter();
|
|
124
152
|
opened = new EventEmitter();
|
|
125
153
|
bodyComponent;
|
|
126
154
|
closeComponents;
|
|
127
|
-
|
|
155
|
+
triggerEl;
|
|
156
|
+
document = inject(DOCUMENT);
|
|
157
|
+
appRef = inject(ApplicationRef);
|
|
128
158
|
opener = false;
|
|
129
|
-
|
|
130
|
-
|
|
159
|
+
categoryCollection = inject(IDTooltipCategoryService);
|
|
160
|
+
destroyRef = inject(DestroyRef);
|
|
161
|
+
updatePositionTimeout;
|
|
162
|
+
isAttached = false;
|
|
163
|
+
openedViaTrigger = false;
|
|
164
|
+
portalOutlet = null;
|
|
165
|
+
GAP = 4;
|
|
166
|
+
CARET_SIZE = 8;
|
|
167
|
+
resizeHandler = () => this.applyPortalPosition();
|
|
168
|
+
get win() {
|
|
169
|
+
return this.document.defaultView || window;
|
|
170
|
+
}
|
|
171
|
+
constructor() {
|
|
131
172
|
effect(() => {
|
|
132
173
|
const categoryToClose = this.categoryCollection.closeCategory();
|
|
133
174
|
if (!categoryToClose || categoryToClose !== this.category)
|
|
@@ -136,6 +177,7 @@ class IDPopoverComponent {
|
|
|
136
177
|
this.opener = false;
|
|
137
178
|
return;
|
|
138
179
|
}
|
|
180
|
+
this.detachPortal();
|
|
139
181
|
this.show = false;
|
|
140
182
|
});
|
|
141
183
|
}
|
|
@@ -143,23 +185,44 @@ class IDPopoverComponent {
|
|
|
143
185
|
if (changes['position']) {
|
|
144
186
|
this.updatePosition(changes['position'].currentValue);
|
|
145
187
|
}
|
|
188
|
+
if (changes['show'] && !changes['show'].firstChange) {
|
|
189
|
+
if (changes['show'].currentValue) {
|
|
190
|
+
this.attachPortal();
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
this.detachPortal();
|
|
194
|
+
}
|
|
195
|
+
}
|
|
146
196
|
}
|
|
147
197
|
updatePosition(position) {
|
|
148
|
-
|
|
198
|
+
clearTimeout(this.updatePositionTimeout);
|
|
199
|
+
this.updatePositionTimeout = setTimeout(() => {
|
|
149
200
|
this.bodyComponent.position = position;
|
|
201
|
+
if (this.isAttached) {
|
|
202
|
+
requestAnimationFrame(() => this.applyPortalPosition());
|
|
203
|
+
}
|
|
150
204
|
}, 0);
|
|
151
205
|
}
|
|
152
206
|
ngAfterContentInit() {
|
|
153
|
-
this.bodyComponent.contentClosed
|
|
207
|
+
this.bodyComponent.contentClosed
|
|
208
|
+
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
209
|
+
.subscribe((event) => {
|
|
154
210
|
this.closePopover(event);
|
|
155
211
|
});
|
|
156
212
|
this.closeComponents.forEach((closeComponent) => {
|
|
157
|
-
closeComponent.clicked
|
|
213
|
+
closeComponent.clicked
|
|
214
|
+
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
215
|
+
.subscribe((event) => {
|
|
158
216
|
this.closePopover(event);
|
|
159
217
|
});
|
|
160
218
|
});
|
|
219
|
+
if (this.show) {
|
|
220
|
+
this.attachPortal();
|
|
221
|
+
}
|
|
161
222
|
}
|
|
162
|
-
|
|
223
|
+
ngOnDestroy() {
|
|
224
|
+
clearTimeout(this.updatePositionTimeout);
|
|
225
|
+
this.detachPortal();
|
|
163
226
|
}
|
|
164
227
|
togglePopover(e) {
|
|
165
228
|
e.preventDefault();
|
|
@@ -170,67 +233,144 @@ class IDPopoverComponent {
|
|
|
170
233
|
this.showPopover(e);
|
|
171
234
|
}
|
|
172
235
|
}
|
|
173
|
-
|
|
174
|
-
if (this.
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
}
|
|
181
|
-
else if (bodyComponent) {
|
|
182
|
-
bodyComponent.focus();
|
|
183
|
-
}
|
|
184
|
-
}, 0);
|
|
236
|
+
focusContent() {
|
|
237
|
+
if (!this.bodyComponent)
|
|
238
|
+
return;
|
|
239
|
+
const contentEl = this.bodyComponent.elementRef.nativeElement;
|
|
240
|
+
const wrapper = contentEl.querySelector('.ids-popover-content__content-wrapper');
|
|
241
|
+
if (wrapper) {
|
|
242
|
+
wrapper.focus({ preventScroll: true });
|
|
185
243
|
}
|
|
186
244
|
}
|
|
187
245
|
showPopover(event) {
|
|
188
246
|
this.opener = true;
|
|
247
|
+
this.openedViaTrigger = true;
|
|
189
248
|
this.categoryCollection.requestClose(this.category);
|
|
190
|
-
this.closeCategory();
|
|
191
249
|
this.show = true;
|
|
192
250
|
this.showChange.emit(this.show);
|
|
193
|
-
this.
|
|
251
|
+
this.attachPortal();
|
|
194
252
|
this.opened.emit(event);
|
|
195
253
|
}
|
|
196
|
-
handleKeyDown(event) {
|
|
197
|
-
if (event.key === 'Escape' && this.show) {
|
|
198
|
-
this.closePopover(event);
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
254
|
closePopover(event) {
|
|
255
|
+
this.detachPortal();
|
|
202
256
|
this.show = false;
|
|
203
257
|
this.showChange.emit(this.show);
|
|
204
258
|
this.closed.emit(event);
|
|
259
|
+
this.focusTriggerContent();
|
|
260
|
+
}
|
|
261
|
+
focusTriggerContent() {
|
|
262
|
+
const trigger = this.triggerEl?.nativeElement;
|
|
263
|
+
if (!trigger)
|
|
264
|
+
return;
|
|
265
|
+
const focusable = trigger.querySelector('button, a[href], [tabindex]:not([tabindex="-1"]), input, select, textarea');
|
|
266
|
+
if (focusable) {
|
|
267
|
+
focusable.focus();
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
attachPortal() {
|
|
271
|
+
if (this.isAttached || !this.bodyComponent)
|
|
272
|
+
return;
|
|
273
|
+
this.isAttached = true;
|
|
274
|
+
const contentEl = this.bodyComponent.elementRef.nativeElement;
|
|
275
|
+
contentEl.style.display = '';
|
|
276
|
+
contentEl.style.opacity = '0';
|
|
277
|
+
const outletEl = this.document.createElement('div');
|
|
278
|
+
this.document.body.appendChild(outletEl);
|
|
279
|
+
this.portalOutlet = new DomPortalOutlet(outletEl, undefined, this.appRef, undefined, this.document);
|
|
280
|
+
this.portalOutlet.attach(new DomPortal(this.bodyComponent.elementRef));
|
|
281
|
+
clearTimeout(this.updatePositionTimeout);
|
|
282
|
+
this.updatePositionTimeout = setTimeout(() => {
|
|
283
|
+
requestAnimationFrame(() => {
|
|
284
|
+
this.applyPortalPosition();
|
|
285
|
+
contentEl.style.opacity = '';
|
|
286
|
+
if (this.openedViaTrigger) {
|
|
287
|
+
this.focusContent();
|
|
288
|
+
this.openedViaTrigger = false;
|
|
289
|
+
}
|
|
290
|
+
});
|
|
291
|
+
}, 100);
|
|
292
|
+
this.win.addEventListener('resize', this.resizeHandler);
|
|
293
|
+
}
|
|
294
|
+
detachPortal() {
|
|
295
|
+
if (!this.isAttached)
|
|
296
|
+
return;
|
|
297
|
+
this.isAttached = false;
|
|
298
|
+
this.win.removeEventListener('resize', this.resizeHandler);
|
|
299
|
+
if (this.portalOutlet) {
|
|
300
|
+
this.portalOutlet.dispose();
|
|
301
|
+
this.portalOutlet = null;
|
|
302
|
+
}
|
|
303
|
+
if (this.bodyComponent) {
|
|
304
|
+
this.bodyComponent.elementRef.nativeElement.style.cssText = 'display:none';
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
calculatePosition(triggerRect, contentRect) {
|
|
308
|
+
const offset = this.GAP + this.CARET_SIZE;
|
|
309
|
+
const pos = this.position;
|
|
310
|
+
const centerY = triggerRect.top + triggerRect.height / 2 - contentRect.height / 2;
|
|
311
|
+
const centerX = triggerRect.left + triggerRect.width / 2 - contentRect.width / 2;
|
|
312
|
+
let top;
|
|
313
|
+
if (pos.startsWith('top'))
|
|
314
|
+
top = triggerRect.top - contentRect.height - offset;
|
|
315
|
+
else if (pos.startsWith('bottom'))
|
|
316
|
+
top = triggerRect.bottom + offset;
|
|
317
|
+
else if (pos.endsWith('-top'))
|
|
318
|
+
top = triggerRect.bottom - contentRect.height;
|
|
319
|
+
else if (pos.endsWith('-bottom'))
|
|
320
|
+
top = triggerRect.top;
|
|
321
|
+
else
|
|
322
|
+
top = centerY;
|
|
323
|
+
let left;
|
|
324
|
+
if (pos.startsWith('left'))
|
|
325
|
+
left = triggerRect.left - contentRect.width - offset;
|
|
326
|
+
else if (pos.startsWith('right'))
|
|
327
|
+
left = triggerRect.right + offset;
|
|
328
|
+
else if (pos.endsWith('-left'))
|
|
329
|
+
left = triggerRect.left;
|
|
330
|
+
else if (pos.endsWith('-right'))
|
|
331
|
+
left = triggerRect.right - contentRect.width;
|
|
332
|
+
else
|
|
333
|
+
left = centerX;
|
|
334
|
+
return { top, left };
|
|
205
335
|
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
336
|
+
applyPortalPosition() {
|
|
337
|
+
if (!this.bodyComponent || !this.triggerEl)
|
|
338
|
+
return;
|
|
339
|
+
const triggerRect = this.triggerEl.nativeElement.getBoundingClientRect();
|
|
340
|
+
const contentEl = this.bodyComponent.elementRef.nativeElement;
|
|
341
|
+
const { top, left } = this.calculatePosition(triggerRect, contentEl.getBoundingClientRect());
|
|
342
|
+
const window = this.win;
|
|
343
|
+
Object.assign(contentEl.style, {
|
|
344
|
+
position: 'absolute',
|
|
345
|
+
top: `${top + window.scrollY}px`,
|
|
346
|
+
left: `${left + window.scrollX}px`,
|
|
347
|
+
bottom: 'auto', right: 'auto', transform: 'none', zIndex: '9999',
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
351
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.2.20", type: IDPopoverComponent, isStandalone: true, selector: "id-popover", inputs: { position: "position", category: "category", show: ["show", "show", booleanAttribute] }, outputs: { showChange: "showChange", closed: "closed", opened: "opened" }, host: { classAttribute: "ids-popover" }, queries: [{ propertyName: "bodyComponent", first: true, predicate: IDPopoverContentComponent, descendants: true }, { propertyName: "closeComponents", predicate: IDPopoverCloseComponent, descendants: true }], viewQueries: [{ propertyName: "triggerEl", first: true, predicate: ["triggerEl"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
|
352
|
+
<span #triggerEl class="ids-popover-trigger" (click)="togglePopover($event)">
|
|
209
353
|
<ng-content></ng-content>
|
|
210
354
|
</span>
|
|
211
|
-
|
|
212
|
-
<ng-content select="id-popover-content"></ng-content>
|
|
213
|
-
}
|
|
355
|
+
<ng-content select="id-popover-content"></ng-content>
|
|
214
356
|
`, isInline: true });
|
|
215
357
|
}
|
|
216
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
358
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverComponent, decorators: [{
|
|
217
359
|
type: Component,
|
|
218
360
|
args: [{
|
|
219
361
|
selector: 'id-popover',
|
|
220
362
|
standalone: true,
|
|
221
363
|
template: `
|
|
222
|
-
<span class="ids-popover-trigger" (click)="togglePopover($event)">
|
|
364
|
+
<span #triggerEl class="ids-popover-trigger" (click)="togglePopover($event)">
|
|
223
365
|
<ng-content></ng-content>
|
|
224
366
|
</span>
|
|
225
|
-
|
|
226
|
-
<ng-content select="id-popover-content"></ng-content>
|
|
227
|
-
}
|
|
367
|
+
<ng-content select="id-popover-content"></ng-content>
|
|
228
368
|
`,
|
|
229
369
|
host: {
|
|
230
370
|
class: 'ids-popover'
|
|
231
371
|
}
|
|
232
372
|
}]
|
|
233
|
-
}], ctorParameters: () => [
|
|
373
|
+
}], ctorParameters: () => [], propDecorators: { position: [{
|
|
234
374
|
type: Input
|
|
235
375
|
}], category: [{
|
|
236
376
|
type: Input
|
|
@@ -239,9 +379,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
239
379
|
args: [{ transform: booleanAttribute }]
|
|
240
380
|
}], showChange: [{
|
|
241
381
|
type: Output
|
|
242
|
-
}], autoFocus: [{
|
|
243
|
-
type: Input,
|
|
244
|
-
args: [{ transform: booleanAttribute }]
|
|
245
382
|
}], closed: [{
|
|
246
383
|
type: Output
|
|
247
384
|
}], opened: [{
|
|
@@ -252,16 +389,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
252
389
|
}], closeComponents: [{
|
|
253
390
|
type: ContentChildren,
|
|
254
391
|
args: [IDPopoverCloseComponent, { descendants: true }]
|
|
255
|
-
}],
|
|
256
|
-
type:
|
|
257
|
-
args: ['
|
|
392
|
+
}], triggerEl: [{
|
|
393
|
+
type: ViewChild,
|
|
394
|
+
args: ['triggerEl']
|
|
258
395
|
}] } });
|
|
259
396
|
|
|
260
397
|
class IDPopoverHeaderComponent {
|
|
261
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
262
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
398
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
399
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: IDPopoverHeaderComponent, isStandalone: true, selector: "id-popover-header", host: { classAttribute: "ids-popover-content__headline" }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
|
|
263
400
|
}
|
|
264
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
401
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverHeaderComponent, decorators: [{
|
|
265
402
|
type: Component,
|
|
266
403
|
args: [{
|
|
267
404
|
selector: 'id-popover-header',
|
|
@@ -274,10 +411,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
274
411
|
}] });
|
|
275
412
|
|
|
276
413
|
class IDPopoverTriggerComponent {
|
|
277
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
278
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
414
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverTriggerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
415
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.20", type: IDPopoverTriggerComponent, isStandalone: true, selector: "id-popover-trigger", ngImport: i0, template: `<ng-content></ng-content>`, isInline: true });
|
|
279
416
|
}
|
|
280
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
417
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverTriggerComponent, decorators: [{
|
|
281
418
|
type: Component,
|
|
282
419
|
args: [{
|
|
283
420
|
selector: 'id-popover-trigger',
|
|
@@ -287,8 +424,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
287
424
|
}] });
|
|
288
425
|
|
|
289
426
|
class IDPopoverModule {
|
|
290
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
291
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
427
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
428
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverModule, imports: [IDPopoverComponent,
|
|
292
429
|
IDPopoverHeaderComponent,
|
|
293
430
|
IDPopoverContentComponent,
|
|
294
431
|
IDPopoverTriggerComponent,
|
|
@@ -297,9 +434,9 @@ class IDPopoverModule {
|
|
|
297
434
|
IDPopoverContentComponent,
|
|
298
435
|
IDPopoverTriggerComponent,
|
|
299
436
|
IDPopoverCloseComponent] });
|
|
300
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
437
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverModule, imports: [IDPopoverContentComponent] });
|
|
301
438
|
}
|
|
302
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
439
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDPopoverModule, decorators: [{
|
|
303
440
|
type: NgModule,
|
|
304
441
|
args: [{
|
|
305
442
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inera-ids-angular-components-popover.mjs","sources":["../../../projects/ids-angular/components/popover/popover-close.component.ts","../../../projects/ids-angular/components/popover/popover-content.component.ts","../../../projects/ids-angular/components/popover/popover.component.ts","../../../projects/ids-angular/components/popover/popover-header.component.ts","../../../projects/ids-angular/components/popover/popover-trigger.component.ts","../../../projects/ids-angular/components/popover/popover.module.ts","../../../projects/ids-angular/components/popover/inera-ids-angular-components-popover.ts"],"sourcesContent":["import { Component, EventEmitter, HostListener, Output } from '@angular/core';\n\n@Component({\n selector: 'id-popover-close',\n standalone: true,\n template: `<ng-content></ng-content>`,\n})\nexport class IDPopoverCloseComponent {\n @Output() clicked = new EventEmitter<Event>();\n\n @HostListener('click')\n onClick = (e:Event) => {\n this.clicked.emit(e);\n }\n}","import { CommonModule } from '@angular/common';\nimport { booleanAttribute, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { IDClickOutsideDirective } from '@inera/ids-angular/common';\nimport { A11yModule } from '@angular/cdk/a11y';\n\n@Component({\n selector: 'id-popover-content',\n standalone: true,\n imports: [A11yModule, CommonModule, IDClickOutsideDirective],\n template: `\n <div [cdkTrapFocus]=\"true\" idClickOutside (idClickOutside)=\"onClickedOutside($event)\" class=\"ids-popover-content__content-wrapper\"\n [style.maxWidth]=\"maxWidth\"\n [style.maxHeight]=\"contentMaxHeight\">\n <div class=\"ids-popover-content__caret\" [ngClass]=\"caretPositionClass\">\n <span class=\"ids-popover-content__caret-body\" [ngClass]=\"caretPositionClass\"></span>\n <span class=\"ids-popover-content__caret-border\" [ngClass]=\"caretPositionClass\"></span>\n <span class=\"ids-popover-content__caret-shadow\" [ngClass]=\"caretPositionClass\"></span>\n </div>\n <div class=\"ids-popover-content__top-bar\">\n <div class=\"ids-popover-content__close-btn-wrapper\">\n <button (click)=\"contentClosed.emit($event)\" class=\"ids-popover-content__close-btn\" [attr.aria-label]=\"srCloseText\"></button>\n </div>\n </div>\n <div tabindex=\"0\" class=\"ids-popover-content__content-wrapper-inner\">\n <ng-content select=\"id-popover-header\"></ng-content>\n <ng-content></ng-content>\n </div>\n </div>`,\n host: {\n '[class]': 'hostClasses',\n }\n})\nexport class IDPopoverContentComponent {\n\n @Output()\n contentClosed: EventEmitter<Event> = new EventEmitter<Event>();\n\n position = 'bottom';\n\n @Input({transform: booleanAttribute}) closeOnBlur = false;\n @Input() maxHeight = '260px';\n @Input() maxWidth = '260px';\n @Input() srCloseText = 'Stäng';\n\n get contentMaxHeight() {\n return `calc(${this.maxHeight} - 40px)`\n }\n\n onClickedOutside(event: Event) {\n if(this.closeOnBlur) {\n this.contentClosed.emit(event)\n }\n }\n\n get caretPositionClass() {\n return `ids-popover-content__caret--${this.position}`;\n }\n\n get hostClasses(): string {\n return `ids-popover-content ids-popover-content--${this.position}`;\n }\n}\n","import { AfterContentInit, booleanAttribute, Component, ContentChild, ContentChildren, effect, ElementRef, EventEmitter, HostListener, inject, Input, OnChanges, Output, QueryList, SimpleChanges } from '@angular/core';\nimport { IDPopoverCloseComponent } from './popover-close.component';\nimport { IDPopoverContentComponent } from './popover-content.component';\nimport { IDTooltipCategoryService } from '@inera/ids-angular/common';\n\n@Component({\n selector: 'id-popover',\n standalone: true,\n template: `\n <span class=\"ids-popover-trigger\" (click)=\"togglePopover($event)\">\n <ng-content></ng-content>\n </span>\n @if(show) {\n <ng-content select=\"id-popover-content\"></ng-content>\n }\n `,\n host: {\n class: 'ids-popover'\n }\n})\nexport class IDPopoverComponent implements AfterContentInit, OnChanges {\n @Input() position:\n | 'top'\n | 'top-left'\n | 'top-right'\n | 'right'\n | 'right-top'\n | 'right-bottom'\n | 'bottom'\n | 'bottom-left'\n | 'bottom-right'\n | 'left'\n | 'left-top'\n | 'left-bottom' = 'bottom';\n\n @Input() category = '';\n @Input({transform: booleanAttribute}) show: boolean = false;\n @Output() showChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n @Input({transform: booleanAttribute}) autoFocus: boolean = false;\n \n @Output() closed: EventEmitter<Event> = new EventEmitter();\n @Output() opened: EventEmitter<Event> = new EventEmitter();\n\n @ContentChild(IDPopoverContentComponent, { descendants:true })\n bodyComponent: IDPopoverContentComponent;\n\n @ContentChildren(IDPopoverCloseComponent, { descendants: true })\n closeComponents: QueryList<IDPopoverCloseComponent>;\n\n elementRef = inject(ElementRef);\n private opener = false; \n\n constructor(private categoryCollection: IDTooltipCategoryService) {\n effect(() => {\n const categoryToClose = this.categoryCollection.closeCategory();\n if (!categoryToClose || categoryToClose !== this.category) return;\n if (this.opener) {\n this.opener = false;\n return;\n }\n this.show = false;\n });\n }\n \n ngOnChanges(changes: SimpleChanges): void {\n if (changes['position']) {\n this.updatePosition(changes['position'].currentValue)\n }\n }\n\n private updatePosition(position: string) {\n setTimeout(() => {\n this.bodyComponent.position = position;\n }, 0);\n }\n\n ngAfterContentInit(): void {\n this.bodyComponent.contentClosed.subscribe((event: Event) => {\n this.closePopover(event);\n })\n this.closeComponents.forEach((closeComponent) => {\n closeComponent.clicked.subscribe((event: Event) => {\n this.closePopover(event);\n })\n });\n }\n\n closeCategory() {\n }\n\n togglePopover(e: Event) {\n e.preventDefault();\n if (this.show) {\n this.closePopover(e);\n } else {\n this.showPopover(e);\n }\n }\n\n checkAutoFocus() {\n if(this.autoFocus) {\n setTimeout(() => {\n const focusAnchor = this.elementRef.nativeElement.querySelector('.ids-focus-anchor');\n const bodyComponent = this.elementRef.nativeElement.querySelector('.ids-popover-content__content-wrapper-inner');\n if(focusAnchor) {\n focusAnchor.focus();\n } else if (bodyComponent) {\n bodyComponent.focus();\n }\n }, 0);\n }\n }\n \n showPopover(event: Event):void {\n this.opener = true;\n this.categoryCollection.requestClose(this.category);\n this.closeCategory();\n this.show = true;\n this.showChange.emit(this.show);\n this.checkAutoFocus();\n this.opened.emit(event)\n }\n\n @HostListener('window:keydown', ['$event'])\n handleKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape' && this.show) {\n this.closePopover(event);\n }\n }\n\n closePopover(event: Event):void {\n this.show = false;\n this.showChange.emit(this.show);\n this.closed.emit(event)\n }\n}","import { Component } from '@angular/core';\n\n@Component({\n selector: 'id-popover-header',\n standalone: true,\n template: `<ng-content></ng-content>`,\n host: {\n class: 'ids-popover-content__headline'\n }\n})\nexport class IDPopoverHeaderComponent {}","import { Component } from '@angular/core';\n\n@Component({\n selector: 'id-popover-trigger',\n standalone: true,\n template: `<ng-content></ng-content>`,\n})\nexport class IDPopoverTriggerComponent {}","import { NgModule } from '@angular/core';\n\nimport { IDPopoverComponent } from './popover.component';\nimport { IDPopoverHeaderComponent } from './popover-header.component';\nimport { IDPopoverContentComponent } from './popover-content.component';\nimport { IDPopoverTriggerComponent } from './popover-trigger.component';\nimport { IDPopoverCloseComponent } from './popover-close.component';\n\n\n@NgModule({\n imports: [\n IDPopoverComponent,\n IDPopoverHeaderComponent,\n IDPopoverContentComponent,\n IDPopoverTriggerComponent,\n IDPopoverCloseComponent\n ],\n exports: [\n IDPopoverComponent,\n IDPopoverHeaderComponent,\n IDPopoverContentComponent,\n IDPopoverTriggerComponent,\n IDPopoverCloseComponent\n ],\n})\nexport class IDPopoverModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"inera-ids-angular-components-popover.mjs","sources":["../../../projects/ids-angular/components/popover/popover-close.component.ts","../../../projects/ids-angular/components/popover/popover-content.component.ts","../../../projects/ids-angular/components/popover/popover.component.ts","../../../projects/ids-angular/components/popover/popover-header.component.ts","../../../projects/ids-angular/components/popover/popover-trigger.component.ts","../../../projects/ids-angular/components/popover/popover.module.ts","../../../projects/ids-angular/components/popover/inera-ids-angular-components-popover.ts"],"sourcesContent":["import { Component, EventEmitter, HostListener, Output } from '@angular/core';\n\n@Component({\n selector: 'id-popover-close',\n standalone: true,\n template: `<ng-content></ng-content>`,\n})\nexport class IDPopoverCloseComponent {\n @Output() clicked = new EventEmitter<Event>();\n\n @HostListener('click')\n onClick = (e:Event) => {\n this.clicked.emit(e);\n }\n}","import { CommonModule } from '@angular/common';\nimport { booleanAttribute, Component, ElementRef, EventEmitter, HostListener, inject, Input, Output } from '@angular/core';\nimport { IDClickOutsideDirective } from '@inera/ids-angular/common';\nimport { A11yModule } from '@angular/cdk/a11y';\n\n@Component({\n selector: 'id-popover-content',\n standalone: true,\n imports: [A11yModule, CommonModule, IDClickOutsideDirective],\n template: `\n <div [cdkTrapFocus]=\"true\" idClickOutside (idClickOutside)=\"onClickedOutside($event)\"\n (keydown.shift.tab)=\"onShiftTab($event)\"\n class=\"ids-popover-content__content-wrapper\"\n tabindex=\"0\"\n [style.maxWidth]=\"maxWidth\"\n [style.maxHeight]=\"maxHeight\">\n <div class=\"ids-popover-content__caret\" [ngClass]=\"caretPositionClass\">\n <span class=\"ids-popover-content__caret-body\" [ngClass]=\"caretPositionClass\"></span>\n <span class=\"ids-popover-content__caret-border\" [ngClass]=\"caretPositionClass\"></span>\n <span class=\"ids-popover-content__caret-shadow\" [ngClass]=\"caretPositionClass\"></span>\n </div>\n <div class=\"ids-popover-content__top-bar\">\n <div class=\"ids-popover-content__close-btn-wrapper\">\n <button (click)=\"contentClosed.emit($event)\" class=\"ids-popover-content__close-btn\" [attr.aria-label]=\"srCloseText\"></button>\n </div>\n </div>\n <div class=\"ids-popover-content__content-wrapper-inner\">\n <ng-content select=\"id-popover-header\"></ng-content>\n <ng-content></ng-content>\n </div>\n </div>`,\n host: {\n '[class]': 'hostClasses',\n 'style': 'display: none',\n }\n})\nexport class IDPopoverContentComponent {\n\n public elementRef = inject(ElementRef);\n\n @Output()\n contentClosed: EventEmitter<Event> = new EventEmitter<Event>();\n\n position = 'bottom';\n\n @Input({transform: booleanAttribute}) closeOnBlur = false;\n @Input() maxHeight = '260px';\n @Input() maxWidth = '260px';\n @Input() srCloseText = 'Stäng';\n\n get contentMaxHeight() {\n return `calc(${this.maxHeight} - 40px)`\n }\n\n onClickedOutside(event: Event) {\n if(this.closeOnBlur) {\n this.contentClosed.emit(event)\n }\n }\n\n @HostListener('keydown', ['$event'])\n onKeyDown(event: KeyboardEvent) {\n if (event.key === 'Escape') {\n this.contentClosed.emit(event);\n }\n }\n\n onShiftTab(event: Event) {\n const wrapper = this.elementRef.nativeElement.querySelector('.ids-popover-content__content-wrapper');\n if (document.activeElement !== wrapper && !wrapper?.contains(document.activeElement)) return;\n if (document.activeElement === wrapper) {\n event.preventDefault();\n const focusable = wrapper.querySelectorAll('a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])') as NodeListOf<HTMLElement>;\n const last = Array.from(focusable).filter(el => el !== wrapper).pop();\n if (last) {\n last.focus();\n }\n }\n }\n\n\n get caretPositionClass() {\n return `ids-popover-content__caret--${this.position}`;\n }\n\n get hostClasses(): string {\n return `ids-popover-content ids-popover-content--${this.position}`;\n }\n}\n","import { AfterContentInit, ApplicationRef, booleanAttribute, Component, ContentChild, ContentChildren, DestroyRef, effect, ElementRef, EventEmitter, inject, Input, OnChanges, OnDestroy, Output, QueryList, SimpleChanges, ViewChild } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { DomPortal, DomPortalOutlet } from '@angular/cdk/portal';\nimport { IDPopoverCloseComponent } from './popover-close.component';\nimport { IDPopoverContentComponent } from './popover-content.component';\nimport { IDTooltipCategoryService } from '@inera/ids-angular/common';\n\n@Component({\n selector: 'id-popover',\n standalone: true,\n template: `\n <span #triggerEl class=\"ids-popover-trigger\" (click)=\"togglePopover($event)\">\n <ng-content></ng-content>\n </span>\n <ng-content select=\"id-popover-content\"></ng-content>\n `,\n host: {\n class: 'ids-popover'\n }\n})\nexport class IDPopoverComponent implements AfterContentInit, OnChanges, OnDestroy {\n @Input() position:\n | 'top'\n | 'top-left'\n | 'top-right'\n | 'right'\n | 'right-top'\n | 'right-bottom'\n | 'bottom'\n | 'bottom-left'\n | 'bottom-right'\n | 'left'\n | 'left-top'\n | 'left-bottom' = 'bottom';\n\n @Input() category = '';\n @Input({transform: booleanAttribute}) show: boolean = false;\n @Output() showChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n \n @Output() closed: EventEmitter<Event> = new EventEmitter();\n @Output() opened: EventEmitter<Event> = new EventEmitter();\n\n @ContentChild(IDPopoverContentComponent, { descendants:true })\n bodyComponent: IDPopoverContentComponent;\n\n @ContentChildren(IDPopoverCloseComponent, { descendants: true })\n closeComponents: QueryList<IDPopoverCloseComponent>;\n\n @ViewChild('triggerEl') triggerEl: ElementRef<HTMLElement>;\n\n private document = inject(DOCUMENT);\n private appRef = inject(ApplicationRef);\n private opener = false;\n private categoryCollection = inject(IDTooltipCategoryService);\n private destroyRef = inject(DestroyRef);\n private updatePositionTimeout?: ReturnType<typeof setTimeout>;\n private isAttached = false;\n private openedViaTrigger = false;\n private portalOutlet: DomPortalOutlet | null = null;\n\n private readonly GAP = 4;\n private readonly CARET_SIZE = 8;\n\n private resizeHandler = () => this.applyPortalPosition();\n\n private get win(): Window {\n return this.document.defaultView || window;\n }\n\n constructor() {\n effect(() => {\n const categoryToClose = this.categoryCollection.closeCategory();\n if (!categoryToClose || categoryToClose !== this.category) return;\n if (this.opener) {\n this.opener = false;\n return;\n }\n this.detachPortal();\n this.show = false;\n });\n }\n \n ngOnChanges(changes: SimpleChanges): void {\n if (changes['position']) {\n this.updatePosition(changes['position'].currentValue);\n }\n if (changes['show'] && !changes['show'].firstChange) {\n if (changes['show'].currentValue) {\n this.attachPortal();\n } else {\n this.detachPortal();\n }\n }\n }\n\n private updatePosition(position: string) {\n clearTimeout(this.updatePositionTimeout);\n this.updatePositionTimeout = setTimeout(() => {\n this.bodyComponent.position = position;\n if (this.isAttached) {\n requestAnimationFrame(() => this.applyPortalPosition());\n }\n }, 0);\n }\n\n ngAfterContentInit(): void {\n this.bodyComponent.contentClosed\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((event: Event) => {\n this.closePopover(event);\n });\n this.closeComponents.forEach((closeComponent) => {\n closeComponent.clicked\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((event: Event) => {\n this.closePopover(event);\n });\n });\n\n if (this.show) {\n this.attachPortal();\n }\n }\n\n ngOnDestroy(): void {\n clearTimeout(this.updatePositionTimeout);\n this.detachPortal();\n }\n\n togglePopover(e: Event) {\n e.preventDefault();\n if (this.show) {\n this.closePopover(e);\n } else {\n this.showPopover(e);\n }\n }\n\n private focusContent(): void {\n if (!this.bodyComponent) return;\n const contentEl = this.bodyComponent.elementRef.nativeElement;\n const wrapper = contentEl.querySelector('.ids-popover-content__content-wrapper') as HTMLElement | null;\n if (wrapper) {\n wrapper.focus({ preventScroll: true });\n }\n }\n \n showPopover(event: Event):void {\n this.opener = true;\n this.openedViaTrigger = true;\n this.categoryCollection.requestClose(this.category);\n this.show = true;\n this.showChange.emit(this.show);\n this.attachPortal();\n this.opened.emit(event);\n }\n\n closePopover(event: Event):void {\n this.detachPortal();\n this.show = false;\n this.showChange.emit(this.show);\n this.closed.emit(event);\n this.focusTriggerContent();\n }\n\n private focusTriggerContent(): void {\n const trigger = this.triggerEl?.nativeElement;\n if (!trigger) return;\n const focusable = trigger.querySelector<HTMLElement>('button, a[href], [tabindex]:not([tabindex=\"-1\"]), input, select, textarea');\n if (focusable) {\n focusable.focus();\n }\n }\n\n private attachPortal(): void {\n if (this.isAttached || !this.bodyComponent) return;\n this.isAttached = true;\n\n const contentEl = this.bodyComponent.elementRef.nativeElement;\n contentEl.style.display = '';\n contentEl.style.opacity = '0';\n\n const outletEl = this.document.createElement('div');\n this.document.body.appendChild(outletEl);\n this.portalOutlet = new DomPortalOutlet(outletEl, undefined, this.appRef, undefined, this.document);\n this.portalOutlet.attach(new DomPortal(this.bodyComponent.elementRef));\n\n clearTimeout(this.updatePositionTimeout);\n this.updatePositionTimeout = setTimeout(() => {\n requestAnimationFrame(() => {\n this.applyPortalPosition();\n contentEl.style.opacity = '';\n if (this.openedViaTrigger) {\n this.focusContent();\n this.openedViaTrigger = false;\n }\n });\n }, 100);\n\n this.win.addEventListener('resize', this.resizeHandler);\n }\n\n private detachPortal(): void {\n if (!this.isAttached) return;\n this.isAttached = false;\n\n this.win.removeEventListener('resize', this.resizeHandler);\n\n if (this.portalOutlet) {\n this.portalOutlet.dispose();\n this.portalOutlet = null;\n }\n\n if (this.bodyComponent) {\n this.bodyComponent.elementRef.nativeElement.style.cssText = 'display:none';\n }\n }\n\n private calculatePosition(triggerRect: DOMRect, contentRect: DOMRect): { top: number; left: number } {\n const offset = this.GAP + this.CARET_SIZE;\n const pos = this.position;\n const centerY = triggerRect.top + triggerRect.height / 2 - contentRect.height / 2;\n const centerX = triggerRect.left + triggerRect.width / 2 - contentRect.width / 2;\n\n let top: number;\n if (pos.startsWith('top')) top = triggerRect.top - contentRect.height - offset;\n else if (pos.startsWith('bottom')) top = triggerRect.bottom + offset;\n else if (pos.endsWith('-top')) top = triggerRect.bottom - contentRect.height;\n else if (pos.endsWith('-bottom')) top = triggerRect.top;\n else top = centerY;\n\n let left: number;\n if (pos.startsWith('left')) left = triggerRect.left - contentRect.width - offset;\n else if (pos.startsWith('right')) left = triggerRect.right + offset;\n else if (pos.endsWith('-left')) left = triggerRect.left;\n else if (pos.endsWith('-right')) left = triggerRect.right - contentRect.width;\n else left = centerX;\n\n return { top, left };\n }\n\n private applyPortalPosition(): void {\n if (!this.bodyComponent || !this.triggerEl) return;\n\n const triggerRect = this.triggerEl.nativeElement.getBoundingClientRect();\n const contentEl = this.bodyComponent.elementRef.nativeElement;\n const { top, left } = this.calculatePosition(triggerRect, contentEl.getBoundingClientRect());\n const window = this.win;\n\n Object.assign(contentEl.style, {\n position: 'absolute',\n top: `${top + window.scrollY}px`,\n left: `${left + window.scrollX}px`,\n bottom: 'auto', right: 'auto', transform: 'none', zIndex: '9999',\n });\n }\n}","import { Component } from '@angular/core';\n\n@Component({\n selector: 'id-popover-header',\n standalone: true,\n template: `<ng-content></ng-content>`,\n host: {\n class: 'ids-popover-content__headline'\n }\n})\nexport class IDPopoverHeaderComponent {}","import { Component } from '@angular/core';\n\n@Component({\n selector: 'id-popover-trigger',\n standalone: true,\n template: `<ng-content></ng-content>`,\n})\nexport class IDPopoverTriggerComponent {}","import { NgModule } from '@angular/core';\n\nimport { IDPopoverComponent } from './popover.component';\nimport { IDPopoverHeaderComponent } from './popover-header.component';\nimport { IDPopoverContentComponent } from './popover-content.component';\nimport { IDPopoverTriggerComponent } from './popover-trigger.component';\nimport { IDPopoverCloseComponent } from './popover-close.component';\n\n\n@NgModule({\n imports: [\n IDPopoverComponent,\n IDPopoverHeaderComponent,\n IDPopoverContentComponent,\n IDPopoverTriggerComponent,\n IDPopoverCloseComponent\n ],\n exports: [\n IDPopoverComponent,\n IDPopoverHeaderComponent,\n IDPopoverContentComponent,\n IDPopoverTriggerComponent,\n IDPopoverCloseComponent\n ],\n})\nexport class IDPopoverModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -6,10 +6,10 @@ class IDProgressbarComponent {
|
|
|
6
6
|
hideLabel = false;
|
|
7
7
|
srLabel = "";
|
|
8
8
|
label = "";
|
|
9
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
10
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDProgressbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: IDProgressbarComponent, isStandalone: true, selector: "id-progressbar", inputs: { value: "value", hideLabel: ["hideLabel", "hideLabel", booleanAttribute], srLabel: "srLabel", label: "label" }, ngImport: i0, template: "<div class=\"ids-progressbar\">\n @if(label && !hideLabel) {\n <div class=\"ids-progressbar__label\">{{this.label}} {{this.value}}%</div> \n } @else if(!hideLabel) {\n <div class=\"ids-progressbar__label\">{{this.value}}%</div>\n }\n <div\n class=\"ids-progressbar__bar\"\n role=\"progressbar\"\n [attr.aria-label]=\"srLabel\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [attr.aria-valuenow]=\"value\">\n <div\n [class.ids-progressbar__progress]=\"value > 0\"\n [class.ids-progressbar__progress--none]=\"value == 0\"\n [style.width]=\"'calc(' + value + '% + 0.125rem)'\"></div>\n </div>\n</div>" });
|
|
11
11
|
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: IDProgressbarComponent, decorators: [{
|
|
13
13
|
type: Component,
|
|
14
14
|
args: [{ selector: "id-progressbar", standalone: true, template: "<div class=\"ids-progressbar\">\n @if(label && !hideLabel) {\n <div class=\"ids-progressbar__label\">{{this.label}} {{this.value}}%</div> \n } @else if(!hideLabel) {\n <div class=\"ids-progressbar__label\">{{this.value}}%</div>\n }\n <div\n class=\"ids-progressbar__bar\"\n role=\"progressbar\"\n [attr.aria-label]=\"srLabel\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [attr.aria-valuenow]=\"value\">\n <div\n [class.ids-progressbar__progress]=\"value > 0\"\n [class.ids-progressbar__progress--none]=\"value == 0\"\n [style.width]=\"'calc(' + value + '% + 0.125rem)'\"></div>\n </div>\n</div>" }]
|
|
15
15
|
}], propDecorators: { value: [{
|