@inera/ids-react 8.2.0 → 9.0.1
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/components/accordion/accordion-base.d.ts +18 -0
- package/components/accordion/accordion-base.js +33 -0
- package/components/accordion/accordion.d.ts +5 -4
- package/components/accordion/accordion.js +16 -35
- package/components/alert/alert-base.d.ts +21 -0
- package/components/alert/alert-base.js +29 -0
- package/components/alert/alert.d.ts +3 -19
- package/components/alert/alert.js +8 -18
- package/components/alert/global-alert-base.d.ts +15 -0
- package/components/alert/global-alert-base.js +21 -0
- package/components/alert/global-alert.d.ts +7 -0
- package/components/alert/global-alert.js +19 -0
- package/components/badge/badge.js +2 -2
- package/components/breadcrumbs/breadcrumbs.js +2 -2
- package/components/{button-group → button}/button-group.js +2 -2
- package/components/button/button.js +3 -3
- package/components/card/card.js +3 -3
- package/components/carousel/carousel-item.d.ts +5 -4
- package/components/carousel/carousel-item.js +8 -6
- package/components/carousel/carousel.d.ts +4 -1
- package/components/carousel/carousel.js +24 -39
- package/components/{pagination/data-pagination → data-pagination}/data-pagination.d.ts +2 -6
- package/components/data-pagination/data-pagination.js +12 -0
- package/components/date-label/date-label.js +2 -2
- package/components/dialog/dialog-base.d.ts +21 -0
- package/components/dialog/dialog-base.js +29 -0
- package/components/dialog/dialog.d.ts +14 -17
- package/components/dialog/dialog.js +36 -36
- package/components/dropdown/dropdown-base.d.ts +18 -0
- package/components/dropdown/dropdown-base.js +42 -0
- package/components/dropdown/dropdown-content-button.d.ts +0 -1
- package/components/dropdown/dropdown-content-button.js +0 -1
- package/components/dropdown/dropdown-content-link.d.ts +2 -3
- package/components/dropdown/dropdown-content-link.js +3 -10
- package/components/dropdown/dropdown.d.ts +11 -13
- package/components/dropdown/dropdown.js +34 -53
- package/components/footer-1177/footer-1177.d.ts +6 -7
- package/components/footer-1177/footer-1177.js +8 -5
- package/components/footer-1177-admin/footer-1177-admin.d.ts +6 -7
- package/components/footer-1177-admin/footer-1177-admin.js +9 -6
- package/components/footer-1177-pro/footer-1177-pro.d.ts +6 -7
- package/components/footer-1177-pro/footer-1177-pro.js +9 -6
- package/components/footer-inera/footer-inera.d.ts +6 -7
- package/components/footer-inera/footer-inera.js +9 -6
- package/components/footer-inera-admin/footer-inera-admin.d.ts +6 -7
- package/components/footer-inera-admin/footer-inera-admin.js +9 -6
- package/components/form/check-button/check-button.d.ts +5 -6
- package/components/form/check-button/check-button.js +5 -10
- package/components/form/checkbox/checkbox-base.d.ts +19 -0
- package/components/form/checkbox/checkbox-base.js +29 -0
- package/components/form/checkbox/checkbox-group-base.d.ts +12 -0
- package/components/form/checkbox/checkbox-group-base.js +13 -0
- package/components/form/checkbox/checkbox-group.d.ts +4 -5
- package/components/form/checkbox/checkbox-group.js +26 -30
- package/components/form/checkbox/checkbox.d.ts +3 -3
- package/components/form/checkbox/checkbox.js +17 -41
- package/components/form/darkmode-toggle/darkmode-toggle.d.ts +11 -0
- package/components/form/darkmode-toggle/darkmode-toggle.js +13 -0
- package/components/form/datepicker/datepicker.d.ts +11 -4
- package/components/form/datepicker/datepicker.js +65 -27
- package/components/form/error-message/error-message.d.ts +1 -2
- package/components/form/error-message/error-message.js +2 -4
- package/components/form/form-hooks/useGroupValidity.d.ts +4 -1
- package/components/form/form-hooks/useGroupValidity.js +7 -2
- package/components/form/form-hooks/useInputValidity.d.ts +1 -1
- package/components/form/form-hooks/useInputValidity.js +9 -5
- package/components/form/input/input-base.d.ts +24 -0
- package/components/form/input/input-base.js +32 -0
- package/components/form/input/input.d.ts +3 -2
- package/components/form/input/input.js +8 -24
- package/components/form/radio/radio-base.d.ts +16 -0
- package/components/form/radio/radio-base.js +24 -0
- package/components/form/radio/radio-group-base.d.ts +13 -0
- package/components/form/radio/radio-group-base.js +10 -0
- package/components/form/radio/radio-group.d.ts +6 -5
- package/components/form/radio/radio-group.js +25 -19
- package/components/form/radio/radio.d.ts +9 -9
- package/components/form/radio/radio.js +7 -20
- package/components/form/radio-button/radio-button-group-base.d.ts +8 -0
- package/components/form/radio-button/radio-button-group-base.js +8 -0
- package/components/form/radio-button/radio-button-group.d.ts +4 -3
- package/components/form/radio-button/radio-button-group.js +18 -12
- package/components/form/radio-button/radio-button.d.ts +4 -5
- package/components/form/radio-button/radio-button.js +5 -10
- package/components/form/range/range-base.d.ts +18 -0
- package/components/form/range/range-base.js +16 -0
- package/components/form/range/range.d.ts +3 -6
- package/components/form/range/range.js +23 -23
- package/components/form/select/select-base.d.ts +19 -0
- package/components/form/select/select-base.js +24 -0
- package/components/form/select/select.d.ts +7 -7
- package/components/form/select/select.js +8 -18
- package/components/form/select-multiple/select-multiple-base.d.ts +27 -0
- package/components/form/select-multiple/select-multiple-base.js +27 -0
- package/components/form/select-multiple/select-multiple.d.ts +10 -7
- package/components/form/select-multiple/select-multiple.js +29 -54
- package/components/form/spinner/spinner.d.ts +3 -4
- package/components/form/spinner/spinner.js +3 -7
- package/components/form/textarea/textarea-base.d.ts +24 -0
- package/components/form/textarea/textarea-base.js +34 -0
- package/components/form/textarea/textarea.d.ts +4 -5
- package/components/form/textarea/textarea.js +6 -22
- package/components/form/time/time-base.d.ts +17 -0
- package/components/form/time/time-base.js +24 -0
- package/components/form/time/time.d.ts +8 -7
- package/components/form/time/time.js +5 -16
- package/components/form/toggle/toggle.d.ts +1 -2
- package/components/form/toggle/toggle.js +5 -8
- package/components/grid/column.d.ts +1 -1
- package/components/grid/column.js +6 -7
- package/components/grid/container.js +1 -1
- package/components/grid/row.js +1 -1
- package/components/grid-layout/grid-column.d.ts +19 -0
- package/components/grid-layout/grid-column.js +14 -0
- package/components/grid-layout/grid-container.d.ts +10 -0
- package/components/grid-layout/grid-container.js +17 -0
- package/components/grid-layout/grid-row.d.ts +8 -0
- package/components/grid-layout/grid-row.js +12 -0
- package/components/header-1177/header-1177-avatar-base.d.ts +16 -0
- package/components/header-1177/header-1177-avatar-base.js +24 -0
- package/components/header-1177/header-1177-avatar.d.ts +4 -7
- package/components/header-1177/header-1177-avatar.js +35 -42
- package/components/header-1177/header-1177-base.d.ts +18 -0
- package/components/header-1177/header-1177-base.js +14 -0
- package/components/header-1177/header-1177-item-base.d.ts +9 -0
- package/components/header-1177/header-1177-item-base.js +13 -0
- package/components/header-1177/header-1177-item.d.ts +2 -7
- package/components/header-1177/header-1177-item.js +6 -29
- package/components/header-1177/header-1177-menu-mobile-base.d.ts +12 -0
- package/components/header-1177/header-1177-menu-mobile-base.js +18 -0
- package/components/header-1177/header-1177-menu-mobile.d.ts +4 -5
- package/components/header-1177/header-1177-menu-mobile.js +29 -28
- package/components/header-1177/header-1177-nav-base.d.ts +9 -0
- package/components/header-1177/header-1177-nav-base.js +12 -0
- package/components/header-1177/header-1177-nav-item-base.d.ts +18 -0
- package/components/header-1177/header-1177-nav-item-base.js +31 -0
- package/components/header-1177/header-1177-nav-item-mobile-base.d.ts +7 -0
- package/components/header-1177/header-1177-nav-item-mobile-base.js +10 -0
- package/components/header-1177/header-1177-nav-item-mobile.d.ts +4 -8
- package/components/header-1177/header-1177-nav-item-mobile.js +5 -16
- package/components/header-1177/header-1177-nav-item.d.ts +7 -7
- package/components/header-1177/header-1177-nav-item.js +44 -35
- package/components/header-1177/header-1177-nav.d.ts +2 -4
- package/components/header-1177/header-1177-nav.js +5 -9
- package/components/header-1177/header-1177-region-picker-base.d.ts +9 -0
- package/components/header-1177/header-1177-region-picker-base.js +21 -0
- package/components/header-1177/header-1177-region-picker-mobile-base.d.ts +9 -0
- package/components/header-1177/header-1177-region-picker-mobile-base.js +21 -0
- package/components/header-1177/header-1177-region-picker-mobile.d.ts +3 -6
- package/components/header-1177/header-1177-region-picker-mobile.js +13 -29
- package/components/header-1177/header-1177-region-picker.d.ts +3 -6
- package/components/header-1177/header-1177-region-picker.js +15 -29
- package/components/header-1177/header-1177.d.ts +3 -3
- package/components/header-1177/header-1177.js +5 -10
- package/components/header-1177-admin/header-1177-admin-avatar-base.d.ts +14 -0
- package/components/header-1177-admin/header-1177-admin-avatar-base.js +23 -0
- package/components/header-1177-admin/header-1177-admin-avatar-mobile-base.d.ts +13 -0
- package/components/header-1177-admin/header-1177-admin-avatar-mobile-base.js +23 -0
- package/components/header-1177-admin/header-1177-admin-avatar-mobile.d.ts +3 -5
- package/components/header-1177-admin/header-1177-admin-avatar-mobile.js +27 -23
- package/components/header-1177-admin/header-1177-admin-avatar.d.ts +3 -5
- package/components/header-1177-admin/header-1177-admin-avatar.js +26 -25
- package/components/header-1177-admin/header-1177-admin-base.d.ts +18 -0
- package/components/header-1177-admin/header-1177-admin-base.js +14 -0
- package/components/header-1177-admin/header-1177-admin-item-base.d.ts +8 -0
- package/components/header-1177-admin/header-1177-admin-item-base.js +12 -0
- package/components/header-1177-admin/header-1177-admin-item.d.ts +3 -8
- package/components/header-1177-admin/header-1177-admin-item.js +5 -27
- package/components/header-1177-admin/header-1177-admin-menu-mobile-base.d.ts +11 -0
- package/components/header-1177-admin/header-1177-admin-menu-mobile-base.js +18 -0
- package/components/header-1177-admin/header-1177-admin-menu-mobile.d.ts +4 -5
- package/components/header-1177-admin/header-1177-admin-menu-mobile.js +27 -25
- package/components/header-1177-admin/header-1177-admin-nav-base.d.ts +7 -0
- package/components/header-1177-admin/header-1177-admin-nav-base.js +10 -0
- package/components/header-1177-admin/header-1177-admin-nav-item-base.d.ts +18 -0
- package/components/header-1177-admin/header-1177-admin-nav-item-base.js +31 -0
- package/components/header-1177-admin/header-1177-admin-nav-item-mobile-base.d.ts +7 -0
- package/components/header-1177-admin/header-1177-admin-nav-item-mobile-base.js +10 -0
- package/components/header-1177-admin/header-1177-admin-nav-item-mobile.d.ts +7 -0
- package/components/header-1177-admin/header-1177-admin-nav-item-mobile.js +11 -0
- package/components/header-1177-admin/header-1177-admin-nav-item.d.ts +6 -6
- package/components/header-1177-admin/header-1177-admin-nav-item.js +44 -35
- package/components/header-1177-admin/header-1177-admin-nav.d.ts +2 -4
- package/components/header-1177-admin/header-1177-admin-nav.js +4 -6
- package/components/header-1177-admin/header-1177-admin.d.ts +2 -3
- package/components/header-1177-admin/header-1177-admin.js +5 -10
- package/components/header-1177-pro/header-1177-pro-avatar-base.d.ts +14 -0
- package/components/header-1177-pro/header-1177-pro-avatar-base.js +23 -0
- package/components/header-1177-pro/header-1177-pro-avatar-mobile-base.d.ts +13 -0
- package/components/header-1177-pro/header-1177-pro-avatar-mobile-base.js +24 -0
- package/components/header-1177-pro/header-1177-pro-avatar-mobile.d.ts +3 -6
- package/components/header-1177-pro/header-1177-pro-avatar-mobile.js +23 -20
- package/components/header-1177-pro/header-1177-pro-avatar.d.ts +4 -6
- package/components/header-1177-pro/header-1177-pro-avatar.js +32 -30
- package/components/header-1177-pro/header-1177-pro-base.d.ts +19 -0
- package/components/header-1177-pro/header-1177-pro-base.js +11 -0
- package/components/header-1177-pro/header-1177-pro-item-base.d.ts +8 -0
- package/components/header-1177-pro/header-1177-pro-item-base.js +12 -0
- package/components/header-1177-pro/header-1177-pro-item.d.ts +3 -8
- package/components/header-1177-pro/header-1177-pro-item.js +5 -27
- package/components/header-1177-pro/header-1177-pro-menu-mobile-base.d.ts +11 -0
- package/components/header-1177-pro/header-1177-pro-menu-mobile-base.js +18 -0
- package/components/header-1177-pro/header-1177-pro-menu-mobile.d.ts +5 -6
- package/components/header-1177-pro/header-1177-pro-menu-mobile.js +27 -25
- package/components/header-1177-pro/header-1177-pro-nav-base.d.ts +10 -0
- package/components/header-1177-pro/header-1177-pro-nav-base.js +10 -0
- package/components/header-1177-pro/header-1177-pro-nav-item-base.d.ts +18 -0
- package/components/header-1177-pro/header-1177-pro-nav-item-base.js +31 -0
- package/components/header-1177-pro/header-1177-pro-nav-item-mobile-base.d.ts +7 -0
- package/components/header-1177-pro/header-1177-pro-nav-item-mobile-base.js +10 -0
- package/components/header-1177-pro/header-1177-pro-nav-item-mobile.d.ts +7 -0
- package/components/header-1177-pro/header-1177-pro-nav-item-mobile.js +11 -0
- package/components/header-1177-pro/header-1177-pro-nav-item.d.ts +6 -6
- package/components/header-1177-pro/header-1177-pro-nav-item.js +44 -35
- package/components/header-1177-pro/header-1177-pro-nav.d.ts +4 -5
- package/components/header-1177-pro/header-1177-pro-nav.js +5 -7
- package/components/header-1177-pro/header-1177-pro-region-picker-base.d.ts +9 -0
- package/components/header-1177-pro/header-1177-pro-region-picker-base.js +19 -0
- package/components/header-1177-pro/header-1177-pro-region-picker-mobile-base.d.ts +9 -0
- package/components/header-1177-pro/header-1177-pro-region-picker-mobile-base.js +19 -0
- package/components/header-1177-pro/header-1177-pro-region-picker-mobile.d.ts +3 -5
- package/components/header-1177-pro/header-1177-pro-region-picker-mobile.js +13 -29
- package/components/header-1177-pro/header-1177-pro-region-picker.d.ts +3 -5
- package/components/header-1177-pro/header-1177-pro-region-picker.js +15 -29
- package/components/header-1177-pro/header-1177-pro.d.ts +4 -5
- package/components/header-1177-pro/header-1177-pro.js +5 -7
- package/components/header-inera/header-inera-base.d.ts +14 -0
- package/components/header-inera/header-inera-base.js +11 -0
- package/components/header-inera/header-inera-item-base.d.ts +8 -0
- package/components/header-inera/header-inera-item-base.js +12 -0
- package/components/header-inera/header-inera-item.d.ts +3 -8
- package/components/header-inera/header-inera-item.js +5 -36
- package/components/header-inera/header-inera-menu-mobile-base.d.ts +11 -0
- package/components/header-inera/header-inera-menu-mobile-base.js +18 -0
- package/components/header-inera/header-inera-menu-mobile.d.ts +5 -6
- package/components/header-inera/header-inera-menu-mobile.js +27 -26
- package/components/header-inera/header-inera-nav-base.d.ts +7 -0
- package/components/header-inera/header-inera-nav-base.js +10 -0
- package/components/header-inera/header-inera-nav-item-base.d.ts +17 -0
- package/components/header-inera/header-inera-nav-item-base.js +26 -0
- package/components/header-inera/header-inera-nav-item.d.ts +7 -7
- package/components/header-inera/header-inera-nav-item.js +44 -34
- package/components/header-inera/header-inera-nav.d.ts +4 -6
- package/components/header-inera/header-inera-nav.js +4 -7
- package/components/header-inera/header-inera.d.ts +1 -3
- package/components/header-inera/header-inera.js +5 -7
- package/components/header-inera-admin/header-inera-admin-avatar-base.d.ts +14 -0
- package/components/header-inera-admin/header-inera-admin-avatar-base.js +23 -0
- package/components/header-inera-admin/header-inera-admin-avatar-mobile-base.d.ts +13 -0
- package/components/header-inera-admin/header-inera-admin-avatar-mobile-base.js +23 -0
- package/components/header-inera-admin/header-inera-admin-avatar-mobile.d.ts +3 -6
- package/components/header-inera-admin/header-inera-admin-avatar-mobile.js +26 -21
- package/components/header-inera-admin/header-inera-admin-avatar.d.ts +4 -6
- package/components/header-inera-admin/header-inera-admin-avatar.js +35 -31
- package/components/header-inera-admin/header-inera-admin-base.d.ts +15 -0
- package/components/header-inera-admin/header-inera-admin-base.js +20 -0
- package/components/header-inera-admin/header-inera-admin-item-base.d.ts +8 -0
- package/components/header-inera-admin/header-inera-admin-item-base.js +13 -0
- package/components/header-inera-admin/header-inera-admin-item.d.ts +3 -8
- package/components/header-inera-admin/header-inera-admin-item.js +6 -26
- package/components/header-inera-admin/header-inera-admin-menu-mobile-base.d.ts +11 -0
- package/components/header-inera-admin/header-inera-admin-menu-mobile-base.js +18 -0
- package/components/header-inera-admin/header-inera-admin-menu-mobile.d.ts +4 -5
- package/components/header-inera-admin/header-inera-admin-menu-mobile.js +27 -25
- package/components/header-inera-admin/header-inera-admin-nav-base.d.ts +7 -0
- package/components/header-inera-admin/header-inera-admin-nav-base.js +10 -0
- package/components/header-inera-admin/header-inera-admin-nav-item-base.d.ts +18 -0
- package/components/header-inera-admin/header-inera-admin-nav-item-base.js +31 -0
- package/components/header-inera-admin/header-inera-admin-nav-item-mobile-base.d.ts +7 -0
- package/components/header-inera-admin/header-inera-admin-nav-item-mobile-base.js +10 -0
- package/components/header-inera-admin/header-inera-admin-nav-item-mobile.d.ts +7 -0
- package/components/header-inera-admin/header-inera-admin-nav-item-mobile.js +11 -0
- package/components/header-inera-admin/header-inera-admin-nav-item.d.ts +7 -6
- package/components/header-inera-admin/header-inera-admin-nav-item.js +44 -34
- package/components/header-inera-admin/header-inera-admin-nav.d.ts +4 -6
- package/components/header-inera-admin/header-inera-admin-nav.js +5 -8
- package/components/header-inera-admin/header-inera-admin.d.ts +3 -4
- package/components/header-inera-admin/header-inera-admin.js +5 -16
- package/components/header-patient/header-patient.d.ts +2 -4
- package/components/header-patient/header-patient.js +6 -10
- package/components/{action-link → link}/action-link.js +2 -2
- package/components/link/box-link.d.ts +6 -0
- package/components/link/box-link.js +9 -0
- package/components/link/link.d.ts +2 -2
- package/components/link/link.js +3 -10
- package/components/list-pagination/list-pagination-links.d.ts +19 -0
- package/components/list-pagination/list-pagination-links.js +48 -0
- package/components/{pagination/list-pagination → list-pagination}/list-pagination.d.ts +3 -2
- package/components/{pagination/list-pagination → list-pagination}/list-pagination.js +4 -3
- package/components/mobile-menu/mobile-item-base.d.ts +14 -0
- package/components/mobile-menu/mobile-item-base.js +46 -0
- package/components/mobile-menu/mobile-item.d.ts +6 -0
- package/components/mobile-menu/mobile-item.js +26 -0
- package/components/mobile-menu/mobile-menu.d.ts +6 -0
- package/components/mobile-menu/mobile-menu.js +10 -0
- package/components/{navigation/content → navigation-content}/navigation-content.d.ts +1 -1
- package/components/{navigation/content → navigation-content}/navigation-content.js +1 -1
- package/components/{navigation/local → navigation-local}/navigation-local.d.ts +1 -1
- package/components/{navigation/local → navigation-local}/navigation-local.js +1 -1
- package/components/{notification/badge → notification-badge}/notification-badge.d.ts +1 -1
- package/components/notification-badge/notification-badge.js +9 -0
- package/components/popover/popover-base.d.ts +15 -0
- package/components/popover/popover-base.js +27 -0
- package/components/popover/popover-content.d.ts +19 -0
- package/components/popover/popover-content.js +20 -0
- package/components/popover/popover.d.ts +7 -8
- package/components/popover/popover.js +67 -161
- package/components/progressbar/progressbar.js +2 -2
- package/components/puff-list/{puff-list-item/puff-list-item-date.d.ts → puff-list-item-date.d.ts} +0 -1
- package/components/puff-list/{puff-list-item/puff-list-item-date.js → puff-list-item-date.js} +2 -3
- package/components/puff-list/{puff-list-item/puff-list-item-header.d.ts → puff-list-item-header.d.ts} +1 -1
- package/components/puff-list/puff-list-item-header.js +12 -0
- package/components/puff-list/{puff-list-item/puff-list-item-info.d.ts → puff-list-item-info.d.ts} +1 -2
- package/components/puff-list/puff-list-item-info.js +8 -0
- package/components/puff-list/{puff-list-item/puff-list-item.d.ts → puff-list-item.d.ts} +0 -1
- package/components/puff-list/{puff-list-item/puff-list-item.js → puff-list-item.js} +3 -3
- package/components/puff-list/puff-list.js +2 -3
- package/components/region-icon/region-icon.js +2 -2
- package/components/side-menu/side-menu-base.d.ts +22 -0
- package/components/side-menu/side-menu-base.js +42 -0
- package/components/side-menu/side-menu.d.ts +6 -9
- package/components/side-menu/side-menu.js +13 -43
- package/components/side-panel/side-panel-base.d.ts +24 -0
- package/components/side-panel/side-panel-base.js +33 -0
- package/components/side-panel/side-panel-provider.d.ts +7 -0
- package/components/side-panel/side-panel-provider.js +12 -0
- package/components/side-panel/side-panel.d.ts +14 -15
- package/components/side-panel/side-panel.js +49 -54
- package/components/stepper/step-base.d.ts +15 -0
- package/components/stepper/step-base.js +36 -0
- package/components/stepper/step.d.ts +5 -8
- package/components/stepper/step.js +17 -33
- package/components/stepper/stepper.d.ts +4 -6
- package/components/stepper/stepper.js +8 -13
- package/components/tabs/tab-link.d.ts +15 -0
- package/components/tabs/tab-link.js +10 -0
- package/components/tabs/tab-panel.d.ts +2 -4
- package/components/tabs/tab-panel.js +5 -12
- package/components/tabs/tab.d.ts +5 -5
- package/components/tabs/tab.js +5 -8
- package/components/tabs/tabs-base.d.ts +15 -0
- package/components/tabs/tabs-base.js +15 -0
- package/components/tabs/tabs.d.ts +5 -8
- package/components/tabs/tabs.js +38 -51
- package/components/tag/tag.d.ts +5 -15
- package/components/tag/tag.js +3 -8
- package/components/tooltip/tooltip-base.d.ts +14 -0
- package/components/tooltip/tooltip-base.js +18 -0
- package/components/tooltip/tooltip.d.ts +3 -10
- package/components/tooltip/tooltip.js +59 -43
- package/components/utils/contexts/HeaderContext.d.ts +1 -0
- package/index.d.ts +90 -16
- package/index.js +90 -16
- package/package.json +2 -2
- package/components/box-link/box-link.d.ts +0 -9
- package/components/box-link/box-link.js +0 -11
- package/components/global-alert/global-alert.d.ts +0 -16
- package/components/global-alert/global-alert.js +0 -26
- package/components/mobile/menu/item/mobile-item.d.ts +0 -15
- package/components/mobile/menu/item/mobile-item.js +0 -61
- package/components/mobile/menu/mobile-menu.d.ts +0 -7
- package/components/mobile/menu/mobile-menu.js +0 -12
- package/components/notification/badge/notification-badge.js +0 -9
- package/components/pagination/data-pagination/data-pagination.js +0 -16
- package/components/puff-list/puff-list-item/puff-list-item-header.js +0 -11
- package/components/puff-list/puff-list-item/puff-list-item-info.js +0 -10
- package/components/utils/hooks/useElementId.d.ts +0 -5
- package/components/utils/hooks/useElementId.js +0 -12
- /package/components/{button-group → button}/button-group.d.ts +0 -0
- /package/components/{action-link → link}/action-link.d.ts +0 -0
|
@@ -1,36 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import '
|
|
4
|
-
import
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { IDSHeader1177RegionPickerMobileBase } from './header-1177-region-picker-mobile-base.js';
|
|
5
5
|
import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
const [isExpanded, setIsExpanded] = useState(
|
|
9
|
-
const regionIconRef = useRef(null);
|
|
7
|
+
function IDSHeader1177RegionPickerMobile({ expanded = false, onToggleRegion, children, ...props }) {
|
|
8
|
+
const [isExpanded, setIsExpanded] = useState(expanded);
|
|
10
9
|
const headerContext = useHeaderContext();
|
|
11
|
-
|
|
12
|
-
const newExpanded = !isExpanded;
|
|
13
|
-
setIsExpanded(newExpanded);
|
|
14
|
-
onToggleRegion?.(newExpanded);
|
|
15
|
-
};
|
|
16
|
-
const hasChildren = React.Children.count(children) > 0;
|
|
17
|
-
const renderChild = (child) => {
|
|
18
|
-
if (isValidElement(child)) {
|
|
19
|
-
const existingClass = child.props.className;
|
|
20
|
-
return cloneElement(child, {
|
|
21
|
-
ref: regionIconRef,
|
|
22
|
-
size: "m",
|
|
23
|
-
colorPreset: 4,
|
|
24
|
-
className: clsx(existingClass)
|
|
25
|
-
});
|
|
26
|
-
}
|
|
10
|
+
if (headerContext?.hideRegionPicker)
|
|
27
11
|
return null;
|
|
12
|
+
const toggle = () => {
|
|
13
|
+
const next = !isExpanded;
|
|
14
|
+
setIsExpanded(next);
|
|
15
|
+
onToggleRegion?.(next);
|
|
28
16
|
};
|
|
29
|
-
return
|
|
30
|
-
|
|
31
|
-
}), ...props, children: jsxs("button", { onClick: toggleRegion, className: clsx("ids-header-1177-region-picker-mobile__button", {
|
|
32
|
-
"ids-header-1177-region-picker-mobile__button--expanded": isExpanded
|
|
33
|
-
}), "aria-label": text, children: [jsx("div", { className: "ids-header-1177-region-picker-mobile__region-icon", children: renderChild(children) }), jsxs("span", { className: "ids-header-1177-region-picker-mobile__button-text", children: [" ", text] })] }) }));
|
|
34
|
-
};
|
|
17
|
+
return (jsx(IDSHeader1177RegionPickerMobileBase, { ...props, client: true, expanded: isExpanded, onToggle: toggle, children: children }));
|
|
18
|
+
}
|
|
35
19
|
|
|
36
20
|
export { IDSHeader1177RegionPickerMobile };
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
export interface IDSHeader1177RegionPickerProps {
|
|
4
|
-
text?: string;
|
|
1
|
+
import { HTMLAttributes } from "react";
|
|
2
|
+
export interface IDSHeader1177RegionPickerProps extends HTMLAttributes<HTMLElement> {
|
|
5
3
|
expanded?: boolean;
|
|
6
4
|
onToggleRegion?: (isExpanded: boolean) => void;
|
|
7
|
-
children?: ReactNode;
|
|
8
5
|
}
|
|
9
|
-
export declare
|
|
6
|
+
export declare function IDSHeader1177RegionPicker({ expanded, onToggleRegion, children, ...props }: IDSHeader1177RegionPickerProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,34 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import '
|
|
4
|
-
import
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { IDSHeader1177RegionPickerBase } from './header-1177-region-picker-base.js';
|
|
5
|
+
import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
|
|
5
6
|
|
|
6
|
-
|
|
7
|
-
const [isExpanded, setIsExpanded] = useState(
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
const newExpanded = !isExpanded;
|
|
11
|
-
setIsExpanded(newExpanded);
|
|
12
|
-
onToggleRegion?.(newExpanded);
|
|
13
|
-
};
|
|
14
|
-
const hasChildren = React.Children.count(children) > 0;
|
|
15
|
-
const renderChild = (child) => {
|
|
16
|
-
if (isValidElement(child)) {
|
|
17
|
-
const existingClass = child.props.className;
|
|
18
|
-
return cloneElement(child, {
|
|
19
|
-
ref: regionIconRef,
|
|
20
|
-
size: "m",
|
|
21
|
-
colorPreset: 3,
|
|
22
|
-
className: clsx(existingClass)
|
|
23
|
-
});
|
|
24
|
-
}
|
|
7
|
+
function IDSHeader1177RegionPicker({ expanded = false, onToggleRegion, children, ...props }) {
|
|
8
|
+
const [isExpanded, setIsExpanded] = useState(expanded);
|
|
9
|
+
const headerContext = useHeaderContext();
|
|
10
|
+
if (headerContext?.hideRegionPicker)
|
|
25
11
|
return null;
|
|
12
|
+
const toggle = () => {
|
|
13
|
+
const next = !isExpanded;
|
|
14
|
+
setIsExpanded(next);
|
|
15
|
+
onToggleRegion?.(next);
|
|
26
16
|
};
|
|
27
|
-
return (
|
|
28
|
-
|
|
29
|
-
}), ...props, children: [jsx("div", { className: "ids-header-1177-region-picker__region-icon", children: renderChild(children) }), jsx("div", { className: "ids-header-1177-region-picker__selector", children: jsx("button", { onClick: toggleRegion, className: clsx("ids-header-1177-region-picker__button", {
|
|
30
|
-
"ids-header-1177-region-picker__button--expanded": isExpanded
|
|
31
|
-
}), "aria-label": text, children: text }) })] }));
|
|
32
|
-
};
|
|
17
|
+
return (jsx(IDSHeader1177RegionPickerBase, { ...props, client: true, expanded: isExpanded, onToggle: toggle, children: children }));
|
|
18
|
+
}
|
|
33
19
|
|
|
34
20
|
export { IDSHeader1177RegionPicker };
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import React, { ReactNode, AnchorHTMLAttributes } from "react";
|
|
2
|
-
import "@inera/ids-design/components/header-1177/header-1177.css";
|
|
3
2
|
interface IDSHeader1177Props extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
3
|
hideRegionPicker?: boolean;
|
|
5
4
|
unresponsive?: boolean;
|
|
5
|
+
hideAvatar?: boolean;
|
|
6
6
|
logoHref?: string;
|
|
7
7
|
logoProps?: AnchorHTMLAttributes<HTMLAnchorElement>;
|
|
8
8
|
logo?: ReactNode;
|
|
9
9
|
srLogoText?: string;
|
|
10
10
|
regionPicker?: ReactNode;
|
|
11
11
|
skipToContentLink?: ReactNode;
|
|
12
|
-
onToggleRegion?: (isExpanded: boolean) => void;
|
|
13
12
|
items?: ReactNode;
|
|
14
13
|
avatar?: ReactNode;
|
|
14
|
+
mobileMenu?: ReactNode;
|
|
15
15
|
children?: ReactNode;
|
|
16
16
|
}
|
|
17
|
-
export declare function IDSHeader1177({
|
|
17
|
+
export declare function IDSHeader1177({ hideRegionPicker, unresponsive, hideAvatar, children, ...props }: IDSHeader1177Props): import("react/jsx-runtime").JSX.Element;
|
|
18
18
|
export {};
|
|
@@ -1,15 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { HeaderProvider } from '../utils/contexts/HeaderContext.js';
|
|
4
|
-
import '
|
|
4
|
+
import { IDSHeader1177Base } from './header-1177-base.js';
|
|
5
5
|
|
|
6
|
-
function IDSHeader1177({
|
|
7
|
-
|
|
8
|
-
return (jsx("div", { className: "ids-header-1177__logo-wrapper", children: jsx("div", { className: "ids-header-1177__logo", children: logo ? (jsx("span", { className: "ids-header-1177__link", children: logo })) : (jsx("a", { className: "ids-header-1177__logo-link", href: logoHref, "aria-label": srLogoText, ...logoProps })) }) }));
|
|
9
|
-
};
|
|
10
|
-
return (jsx(HeaderProvider, { value: { unresponsive, hideRegionPicker }, children: jsxs("header", { className: clsx("ids-header-1177", {
|
|
11
|
-
"ids-header-1177--unresponsive": unresponsive
|
|
12
|
-
}, className), ...props, children: [skipToContentLink && jsx("div", { className: "ids-header-1177__skip-to-content", children: skipToContentLink }), jsxs("div", { className: "ids-header-1177__container", children: [jsx("div", { className: "ids-header-1177__left" }), jsxs("div", { className: "ids-header-1177__inner", children: [jsxs("div", { className: "ids-header-1177__inner-left", children: [renderLogo(), !hideRegionPicker && regionPicker && jsx("div", { className: "ids-header-1177__region-picker", children: regionPicker })] }), jsxs("div", { className: "ids-header-1177__inner-right", children: [items, " ", avatar] })] }), jsx("div", { className: "ids-header-1177__right" })] }), children] }) }));
|
|
6
|
+
function IDSHeader1177({ hideRegionPicker = false, unresponsive = false, hideAvatar = false, children, ...props }) {
|
|
7
|
+
return (jsx(HeaderProvider, { value: { unresponsive, hideRegionPicker, hideAvatar }, children: jsx(IDSHeader1177Base, { ...props, unresponsive: unresponsive, hideRegionPicker: hideRegionPicker, children: children }) }));
|
|
13
8
|
}
|
|
14
9
|
|
|
15
10
|
export { IDSHeader1177 };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { HTMLAttributes } from "react";
|
|
2
|
+
interface IDSHeader1177AdminAvatarBaseProps extends HTMLAttributes<HTMLElement> {
|
|
3
|
+
username?: string;
|
|
4
|
+
unit?: string;
|
|
5
|
+
expanded?: boolean;
|
|
6
|
+
hide?: boolean;
|
|
7
|
+
unresponsive?: boolean;
|
|
8
|
+
onToggleAvatar?: () => void;
|
|
9
|
+
componentRef?: React.RefObject<HTMLDivElement>;
|
|
10
|
+
menuRef?: React.RefObject<HTMLDivElement>;
|
|
11
|
+
client?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export declare function IDSHeader1177AdminAvatarBase({ username, unit, expanded, unresponsive, hide, componentRef, menuRef, children, onToggleAvatar, client, ...props }: IDSHeader1177AdminAvatarBaseProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
|
+
import { useId } from 'react';
|
|
3
|
+
import clsx from 'clsx';
|
|
4
|
+
|
|
5
|
+
function IDSHeader1177AdminAvatarBase({ username, unit, expanded = false, unresponsive = false, hide = false, componentRef, menuRef, children, onToggleAvatar, client = false, ...props }) {
|
|
6
|
+
if (hide)
|
|
7
|
+
return null;
|
|
8
|
+
const menuId = `header-1177-admin-avatar-menu-${useId()}`;
|
|
9
|
+
const toggleHandler = client && onToggleAvatar
|
|
10
|
+
? {
|
|
11
|
+
onClick: onToggleAvatar
|
|
12
|
+
}
|
|
13
|
+
: {};
|
|
14
|
+
return (jsx("div", { ref: componentRef, className: clsx("ids-header-1177-admin-avatar", {
|
|
15
|
+
"ids-header-1177-admin-avatar--unresponsive": unresponsive
|
|
16
|
+
}), ...props, children: jsxs("div", { className: "ids-header-1177-admin-avatar__menu-wrapper", children: [jsxs("button", { className: clsx("ids-header-1177-admin-avatar__button", {
|
|
17
|
+
"ids-header-1177-admin-avatar__button--expanded": expanded
|
|
18
|
+
}), ...toggleHandler, "aria-controls": menuId, "aria-expanded": expanded, children: [jsx("div", { className: "ids-header-1177-admin-avatar__name", title: username, children: username }), unit && (jsxs(Fragment, { children: [jsx("span", { className: "ids-header-1177-admin-avatar__unit-separator", children: "|" }), jsx("span", { className: "ids-header-1177-admin-avatar__unit", title: unit, children: unit })] }))] }), jsx("div", { ref: menuRef, id: menuId, className: clsx("ids-header-1177-admin-avatar__menu", {
|
|
19
|
+
"ids-header-1177-admin-avatar__menu--expanded": expanded
|
|
20
|
+
}), children: children && jsx("div", { className: "ids-header-1177-admin-avatar__menu-links", children: children }) })] }) }));
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { IDSHeader1177AdminAvatarBase };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React, { HTMLAttributes } from "react";
|
|
2
|
+
interface IDSHeader1177AdminAvatarMobileBaseProps extends HTMLAttributes<HTMLElement> {
|
|
3
|
+
expanded?: boolean;
|
|
4
|
+
hide?: boolean;
|
|
5
|
+
username?: string;
|
|
6
|
+
unit?: string;
|
|
7
|
+
unresponsive?: boolean;
|
|
8
|
+
client?: boolean;
|
|
9
|
+
onToggleAvatar?: () => void;
|
|
10
|
+
componentRef?: React.Ref<HTMLDivElement>;
|
|
11
|
+
}
|
|
12
|
+
export declare function IDSHeader1177AdminAvatarMobileBase({ username, unit, children, unresponsive, expanded, hide, client, onToggleAvatar, componentRef, ...props }: IDSHeader1177AdminAvatarMobileBaseProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { useId } from 'react';
|
|
3
|
+
import clsx from 'clsx';
|
|
4
|
+
|
|
5
|
+
function IDSHeader1177AdminAvatarMobileBase({ username, unit, children, unresponsive, expanded = false, hide = false, client = false, onToggleAvatar, componentRef, ...props }) {
|
|
6
|
+
if (hide)
|
|
7
|
+
return null;
|
|
8
|
+
const menuId = `header-1177-admin-avatar-mobile-menu-${useId()}`;
|
|
9
|
+
const toggleHandler = client && onToggleAvatar
|
|
10
|
+
? {
|
|
11
|
+
onClick: onToggleAvatar
|
|
12
|
+
}
|
|
13
|
+
: {};
|
|
14
|
+
return (jsx("div", { className: clsx("ids-header-1177-admin-avatar-mobile", {
|
|
15
|
+
"ids-header-1177-admin-avatar-mobile--unresponsive": unresponsive
|
|
16
|
+
}), ref: componentRef, ...props, children: jsxs("div", { className: "ids-header-1177-admin-avatar-mobile__menu-wrapper", children: [jsx("button", { className: clsx("ids-header-1177-admin-avatar-mobile__button", {
|
|
17
|
+
"ids-header-1177-admin-avatar-mobile__button--expanded": expanded
|
|
18
|
+
}), ...toggleHandler, "aria-controls": menuId, "aria-expanded": expanded, children: jsx("div", { className: "ids-header-1177-admin-avatar-mobile-content__name", title: username, children: username }) }), jsxs("div", { id: menuId, className: clsx("ids-header-1177-admin-avatar-mobile__menu", {
|
|
19
|
+
"ids-header-1177-admin-avatar-mobile__menu--expanded": expanded
|
|
20
|
+
}), children: [unit && jsx("div", { className: "ids-header-1177-admin-avatar-mobile__unit", children: unit }), jsx("div", { className: "ids-header-1177-admin-avatar-mobile__menu-links", children: children })] })] }) }));
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { IDSHeader1177AdminAvatarMobileBase };
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
interface IDSHeader1177AdminAvatarMobileProps {
|
|
1
|
+
import { HTMLAttributes, ReactNode } from "react";
|
|
2
|
+
interface IDSHeader1177AdminAvatarMobileProps extends HTMLAttributes<HTMLElement> {
|
|
4
3
|
username?: string;
|
|
5
4
|
unit?: string;
|
|
6
5
|
expanded?: boolean;
|
|
7
|
-
loginLink?: ReactNode;
|
|
8
6
|
persistent?: boolean;
|
|
9
7
|
children?: ReactNode;
|
|
10
8
|
}
|
|
11
|
-
export declare
|
|
9
|
+
export declare function IDSHeader1177AdminAvatarMobile({ username, unit, expanded, persistent, children, ...props }: IDSHeader1177AdminAvatarMobileProps): import("react/jsx-runtime").JSX.Element;
|
|
12
10
|
export {};
|
|
@@ -1,34 +1,38 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { useId, useState, useRef, useEffect } from 'react';
|
|
4
|
-
import '@inera/ids-design/components/header-1177-admin/header-1177-admin-avatar-mobile.css';
|
|
5
4
|
import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
|
|
6
|
-
import
|
|
5
|
+
import { IDSHeader1177AdminAvatarMobileBase } from './header-1177-admin-avatar-mobile-base.js';
|
|
7
6
|
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
function IDSHeader1177AdminAvatarMobile({ username = "", unit = "", expanded = false, persistent = false, children, ...props }) {
|
|
8
|
+
useId();
|
|
10
9
|
const [isExpanded, setIsExpanded] = useState(expanded);
|
|
11
10
|
const headerContext = useHeaderContext();
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const handleClickOutside = (event) => {
|
|
15
|
-
if (!persistent && containerRef.current && !containerRef.current.contains(event.target)) {
|
|
16
|
-
setIsExpanded(false);
|
|
17
|
-
}
|
|
18
|
-
};
|
|
11
|
+
const componentRef = useRef(null);
|
|
12
|
+
const toggleAvatar = () => setIsExpanded(prev => !prev);
|
|
19
13
|
useEffect(() => {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
14
|
+
const handleClickOutside = (event) => {
|
|
15
|
+
if (!persistent && componentRef.current && !componentRef.current.contains(event.target)) {
|
|
16
|
+
setIsExpanded(false);
|
|
17
|
+
}
|
|
23
18
|
};
|
|
19
|
+
document.addEventListener("click", handleClickOutside);
|
|
20
|
+
return () => document.removeEventListener("click", handleClickOutside);
|
|
24
21
|
}, [persistent]);
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
22
|
+
// Escape should also close
|
|
23
|
+
useEffect(() => {
|
|
24
|
+
if (!isExpanded || persistent)
|
|
25
|
+
return;
|
|
26
|
+
const handleKeyDown = (event) => {
|
|
27
|
+
if (event.key === "Escape") {
|
|
28
|
+
event.preventDefault();
|
|
29
|
+
setIsExpanded(false);
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
document.addEventListener("keydown", handleKeyDown);
|
|
33
|
+
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
34
|
+
}, [isExpanded, persistent]);
|
|
35
|
+
return (jsx(IDSHeader1177AdminAvatarMobileBase, { ...props, client: true, username: username, unit: unit, unresponsive: headerContext?.unresponsive ?? false, hide: headerContext?.hideAvatar, expanded: isExpanded, onToggleAvatar: toggleAvatar, componentRef: componentRef, children: children }));
|
|
36
|
+
}
|
|
33
37
|
|
|
34
38
|
export { IDSHeader1177AdminAvatarMobile };
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
interface IDSHeader1177AdminAvatarProps {
|
|
1
|
+
import { HTMLAttributes } from "react";
|
|
2
|
+
interface IDSHeader1177AdminAvatarProps extends HTMLAttributes<HTMLElement> {
|
|
4
3
|
username: string;
|
|
5
4
|
unit?: string;
|
|
6
5
|
expanded?: boolean;
|
|
7
|
-
children?: ReactNode;
|
|
8
6
|
persistent?: boolean;
|
|
9
7
|
}
|
|
10
|
-
export declare
|
|
8
|
+
export declare function IDSHeader1177AdminAvatar({ username, unit, expanded, children, persistent, ...props }: IDSHeader1177AdminAvatarProps): import("react/jsx-runtime").JSX.Element;
|
|
11
9
|
export {};
|
|
@@ -1,47 +1,48 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx
|
|
3
|
-
import {
|
|
4
|
-
import '
|
|
5
|
-
import clsx from 'clsx';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { useState, useRef, useEffect } from 'react';
|
|
4
|
+
import { IDSHeader1177AdminAvatarBase } from './header-1177-admin-avatar-base.js';
|
|
6
5
|
import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
|
|
7
6
|
|
|
8
|
-
|
|
9
|
-
const dropdownId = useId();
|
|
7
|
+
function IDSHeader1177AdminAvatar({ username, unit, expanded = false, children, persistent = false, ...props }) {
|
|
10
8
|
const [isExpanded, setIsExpanded] = useState(expanded);
|
|
11
9
|
const headerContext = useHeaderContext();
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
10
|
+
const componentRef = useRef(null);
|
|
11
|
+
const menuRef = useRef(null);
|
|
12
|
+
const toggleAvatar = () => setIsExpanded(prev => !prev);
|
|
15
13
|
const handleClickOutside = (event) => {
|
|
16
|
-
if (!persistent &&
|
|
14
|
+
if (!persistent && componentRef.current && !componentRef.current.contains(event.target)) {
|
|
17
15
|
setIsExpanded(false);
|
|
18
16
|
}
|
|
19
17
|
};
|
|
20
18
|
useEffect(() => {
|
|
21
19
|
document.addEventListener("mousedown", handleClickOutside);
|
|
22
|
-
return () =>
|
|
23
|
-
document.removeEventListener("mousedown", handleClickOutside);
|
|
24
|
-
};
|
|
20
|
+
return () => document.removeEventListener("mousedown", handleClickOutside);
|
|
25
21
|
}, [persistent]);
|
|
26
|
-
const handleLinkClick = () =>
|
|
27
|
-
setIsExpanded(false);
|
|
28
|
-
};
|
|
22
|
+
const handleLinkClick = () => setIsExpanded(false);
|
|
29
23
|
useEffect(() => {
|
|
30
24
|
if (!persistent && isExpanded) {
|
|
31
|
-
const links =
|
|
25
|
+
const links = menuRef.current?.querySelectorAll("a") || [];
|
|
32
26
|
links.forEach(link => link.addEventListener("click", handleLinkClick));
|
|
33
27
|
return () => {
|
|
34
28
|
links.forEach(link => link.removeEventListener("click", handleLinkClick));
|
|
35
29
|
};
|
|
36
30
|
}
|
|
37
31
|
}, [isExpanded, persistent]);
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
32
|
+
// Escape should also close
|
|
33
|
+
useEffect(() => {
|
|
34
|
+
if (!isExpanded || persistent)
|
|
35
|
+
return;
|
|
36
|
+
const handleKeyDown = (event) => {
|
|
37
|
+
if (event.key === "Escape") {
|
|
38
|
+
event.preventDefault();
|
|
39
|
+
setIsExpanded(false);
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
document.addEventListener("keydown", handleKeyDown);
|
|
43
|
+
return () => document.removeEventListener("keydown", handleKeyDown);
|
|
44
|
+
}, [isExpanded, persistent]);
|
|
45
|
+
return (jsx(IDSHeader1177AdminAvatarBase, { ...props, client: true, username: username, unit: unit, children: children, componentRef: componentRef, menuRef: menuRef, expanded: isExpanded, unresponsive: headerContext?.unresponsive, hide: headerContext?.hideAvatar, onToggleAvatar: toggleAvatar }));
|
|
46
|
+
}
|
|
46
47
|
|
|
47
48
|
export { IDSHeader1177AdminAvatar };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React, { ReactNode, AnchorHTMLAttributes } from "react";
|
|
2
|
+
import "@inera/ids-design/components/header-1177-admin/composite-header-1177-admin.css";
|
|
3
|
+
interface IDSHeader1177AdminBaseProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
4
|
+
unresponsive?: boolean;
|
|
5
|
+
srLogoText?: string;
|
|
6
|
+
brandTextTop?: string;
|
|
7
|
+
brandText?: string;
|
|
8
|
+
brandTextBottom?: string;
|
|
9
|
+
logoHref?: string;
|
|
10
|
+
logoProps?: AnchorHTMLAttributes<HTMLAnchorElement>;
|
|
11
|
+
logo?: ReactNode;
|
|
12
|
+
avatar?: ReactNode;
|
|
13
|
+
mobileMenu?: ReactNode;
|
|
14
|
+
items?: ReactNode;
|
|
15
|
+
skipToContentLink?: ReactNode;
|
|
16
|
+
}
|
|
17
|
+
export declare function IDSHeader1177AdminBase({ unresponsive, srLogoText, brandTextTop, brandText, brandTextBottom, logoHref, logoProps, logo, avatar, mobileMenu, items, skipToContentLink, className, children, ...props }: IDSHeader1177AdminBaseProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import clsx from 'clsx';
|
|
3
|
+
import '@inera/ids-design/components/header-1177-admin/composite-header-1177-admin.css';
|
|
4
|
+
|
|
5
|
+
function IDSHeader1177AdminBase({ unresponsive = false, srLogoText = "Logotyp", brandTextTop = "", brandText = "", brandTextBottom = "", logoHref = "", logoProps = {}, logo, avatar, mobileMenu, items, skipToContentLink, className, children, ...props }) {
|
|
6
|
+
const renderLogo = () => {
|
|
7
|
+
return logo ? (logo) : (jsx("a", { className: "ids-header-1177-admin__logo-link", href: logoHref, "aria-label": srLogoText, ...logoProps }));
|
|
8
|
+
};
|
|
9
|
+
return (jsxs("header", { ...props, className: clsx("ids-header-1177-admin", {
|
|
10
|
+
"ids-header-1177-admin--unresponsive": unresponsive
|
|
11
|
+
}, className), style: { position: "relative", zIndex: 3 }, children: [skipToContentLink && jsx("div", { className: "ids-header-1177-admin__skip-to-content", children: skipToContentLink }), jsxs("div", { className: "ids-header-1177-admin__main", children: [jsxs("div", { className: "ids-header-1177-admin__main-left", children: [jsx("div", { className: "ids-header-1177-admin__logo", children: renderLogo() }), jsxs("div", { className: "ids-header-1177-admin__brand", children: [brandTextTop && jsx("div", { className: "ids-header-1177-admin__brand-text---supplement", children: brandTextTop }), brandText && jsx("div", { className: "ids-header-1177-admin__brand-text", children: brandText }), brandTextBottom && jsx("div", { className: "ids-header-1177-admin__brand-text---supplement", children: brandTextBottom })] })] }), jsxs("div", { className: "ids-header-1177-admin__main-right", children: [items, avatar, mobileMenu] })] }), children] }));
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export { IDSHeader1177AdminBase };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { HTMLAttributes } from "react";
|
|
2
|
+
interface IDSHeader1177AdminItemBaseProps extends HTMLAttributes<HTMLElement> {
|
|
3
|
+
mobile?: boolean;
|
|
4
|
+
icon?: string;
|
|
5
|
+
unresponsive?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare function IDSHeader1177AdminItemBase({ mobile, icon, children, unresponsive, ...props }: IDSHeader1177AdminItemBaseProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import clsx from 'clsx';
|
|
3
|
+
|
|
4
|
+
function IDSHeader1177AdminItemBase({ mobile = false, icon, children, unresponsive = false, ...props }) {
|
|
5
|
+
const renderContent = () => (jsx("div", { className: "ids-header-1177-admin-item-icon", "aria-hidden": "true", children: jsx("span", { className: `ids-icon-${icon}` }) }));
|
|
6
|
+
return (jsxs("div", { className: clsx("ids-header-1177-admin-item", {
|
|
7
|
+
"ids-header-1177-admin-item--unresponsive": unresponsive,
|
|
8
|
+
"ids-header-1177-admin-item--mobile": mobile
|
|
9
|
+
}), ...props, children: [renderContent(), children] }));
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export { IDSHeader1177AdminItemBase };
|
|
@@ -1,12 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
interface IDSHeader1177AdminItemProps {
|
|
1
|
+
import { HTMLAttributes } from "react";
|
|
2
|
+
interface IDSHeader1177AdminItemProps extends HTMLAttributes<HTMLElement> {
|
|
4
3
|
mobile?: boolean;
|
|
5
4
|
icon?: string;
|
|
6
|
-
text?: string;
|
|
7
|
-
href?: string;
|
|
8
|
-
link?: ReactNode;
|
|
9
|
-
onClick?: () => void;
|
|
10
5
|
}
|
|
11
|
-
export declare function IDSHeader1177AdminItem({ mobile,
|
|
6
|
+
export declare function IDSHeader1177AdminItem({ mobile, icon, children, ...props }: IDSHeader1177AdminItemProps): import("react/jsx-runtime").JSX.Element;
|
|
12
7
|
export {};
|
|
@@ -1,33 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import { IDSHeader1177AdminItemBase } from './header-1177-admin-item-base.js';
|
|
4
4
|
import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
|
|
5
|
-
import '@inera/ids-design/components/header-1177-admin/header-1177-admin-item.css';
|
|
6
5
|
|
|
7
|
-
function IDSHeader1177AdminItem({ mobile
|
|
6
|
+
function IDSHeader1177AdminItem({ mobile, icon, children, ...props }) {
|
|
8
7
|
const headerContext = useHeaderContext() || { unresponsive: false };
|
|
9
|
-
|
|
10
|
-
"ids-header-1177-admin-item--unresponsive": headerContext.unresponsive,
|
|
11
|
-
"ids-header-1177-admin-item--mobile": mobile
|
|
12
|
-
});
|
|
13
|
-
const renderContent = () => (jsx("div", { className: "ids-header-1177-admin-item-icon", "aria-hidden": "true", children: jsx("span", { className: `ids-icon-${icon}` }) }));
|
|
14
|
-
if (link && isValidElement(link)) {
|
|
15
|
-
const linkProps = link.props;
|
|
16
|
-
const hasChildren = !!linkProps.children &&
|
|
17
|
-
(typeof linkProps.children === "string"
|
|
18
|
-
? linkProps.children.trim().length > 0
|
|
19
|
-
: React.Children.count(linkProps.children) > 0);
|
|
20
|
-
const newLink = cloneElement(link, {
|
|
21
|
-
...props,
|
|
22
|
-
className: clsx(linkProps.className),
|
|
23
|
-
children: hasChildren ? linkProps.children : text
|
|
24
|
-
});
|
|
25
|
-
return (jsxs("div", { className: classNames, children: [renderContent(), " ", newLink] }));
|
|
26
|
-
}
|
|
27
|
-
if (onClick) {
|
|
28
|
-
return (jsxs("div", { className: classNames, children: [renderContent(), jsx("button", { onClick: onClick, ...props, children: text })] }));
|
|
29
|
-
}
|
|
30
|
-
return (jsxs("div", { className: classNames, children: [renderContent(), jsx("a", { href: href, ...props, children: text })] }));
|
|
8
|
+
return (jsx(IDSHeader1177AdminItemBase, { ...props, icon: icon, mobile: mobile, unresponsive: headerContext.unresponsive, children: children }));
|
|
31
9
|
}
|
|
32
10
|
|
|
33
11
|
export { IDSHeader1177AdminItem };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { HTMLAttributes } from "react";
|
|
2
|
+
interface IDSHeader1177AdminMenuMobileBaseProps extends HTMLAttributes<HTMLElement> {
|
|
3
|
+
srLabel?: string;
|
|
4
|
+
expanded?: boolean;
|
|
5
|
+
unresponsive?: boolean;
|
|
6
|
+
client?: boolean;
|
|
7
|
+
onToggleMenu?: () => void;
|
|
8
|
+
componentRef?: React.RefObject<HTMLDivElement>;
|
|
9
|
+
}
|
|
10
|
+
export declare function IDSHeader1177AdminMenuMobileBase({ srLabel, expanded, unresponsive, client, children, componentRef, onToggleMenu, ...props }: IDSHeader1177AdminMenuMobileBaseProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { useId } from 'react';
|
|
3
|
+
import clsx from 'clsx';
|
|
4
|
+
|
|
5
|
+
function IDSHeader1177AdminMenuMobileBase({ srLabel = "Meny", expanded = false, unresponsive = false, client = false, children, componentRef, onToggleMenu, ...props }) {
|
|
6
|
+
const menuId = `header-1177-admin-menu-${useId()}`;
|
|
7
|
+
const toggleHandler = client && onToggleMenu
|
|
8
|
+
? {
|
|
9
|
+
onClick: onToggleMenu
|
|
10
|
+
}
|
|
11
|
+
: {};
|
|
12
|
+
return (jsxs("div", { className: clsx("ids-header-1177-admin-menu-mobile", {
|
|
13
|
+
"ids-header-1177-admin-menu-mobile--expanded": expanded,
|
|
14
|
+
"ids-header-1177-admin-menu-mobile--unresponsive": unresponsive
|
|
15
|
+
}), ref: componentRef, ...props, children: [jsx("button", { ...toggleHandler, "aria-expanded": expanded, "aria-label": srLabel, "aria-controls": menuId, className: "ids-header-1177-admin-menu-mobile__button", children: jsx("div", { className: "ids-hamburger", children: jsx("span", { className: "ids-hamburger__lines" }) }) }), jsx("div", { id: menuId, className: "ids-header-1177-admin-menu-mobile__items", children: children })] }));
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { IDSHeader1177AdminMenuMobileBase };
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
interface IDSHeader1177AdminMenuMobileProps {
|
|
1
|
+
import { HTMLAttributes } from "react";
|
|
2
|
+
interface IDSHeader1177AdminMenuMobileProps extends HTMLAttributes<HTMLElement> {
|
|
4
3
|
srLabel?: string;
|
|
4
|
+
expanded?: boolean;
|
|
5
5
|
persistent?: boolean;
|
|
6
|
-
children?: ReactNode;
|
|
7
6
|
onExpanded?: () => void;
|
|
8
7
|
onClosed?: () => void;
|
|
9
8
|
}
|
|
10
|
-
export declare
|
|
9
|
+
export declare function IDSHeader1177AdminMenuMobile({ srLabel, persistent, expanded, children, onExpanded, onClosed, ...props }: IDSHeader1177AdminMenuMobileProps): import("react/jsx-runtime").JSX.Element;
|
|
11
10
|
export {};
|