desy-angular 2.0.2 → 5.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/README.md +5 -5
- package/bundles/desy-angular.umd.js +5961 -1898
- package/bundles/desy-angular.umd.js.map +1 -1
- package/bundles/desy-angular.umd.min.js +2 -2
- package/bundles/desy-angular.umd.min.js.map +1 -1
- package/desy-angular.d.ts +30 -17
- package/desy-angular.metadata.json +1 -1
- package/esm2015/desy-angular.js +31 -18
- package/esm2015/lib/desy-angular.module.js +6 -3
- package/esm2015/lib/desy-buttons/components/button/button.component.js +9 -20
- package/esm2015/lib/desy-buttons/components/button-loader/button-loader.component.js +8 -3
- package/esm2015/lib/desy-buttons/components/dropdown/dropdown.component.js +76 -17
- package/esm2015/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.js +26 -0
- package/esm2015/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.js +14 -0
- package/esm2015/lib/desy-buttons/components/listbox/listbox.component.js +287 -0
- package/esm2015/lib/desy-buttons/components/pill/pill.component.js +8 -10
- package/esm2015/lib/desy-buttons/desy-buttons.module.js +15 -4
- package/esm2015/lib/desy-buttons/interfaces/listbox-item-data.js +2 -0
- package/esm2015/lib/desy-buttons/interfaces/listbox-label-data.js +2 -0
- package/esm2015/lib/desy-commons/components/content/content.component.js +14 -0
- package/esm2015/lib/desy-commons/components/description/description.component.js +14 -0
- package/esm2015/lib/desy-commons/components/icon/icon.component.js +14 -0
- package/esm2015/lib/desy-commons/components/title/title.component.js +14 -0
- package/esm2015/lib/desy-commons/desy-commons.module.js +33 -0
- package/esm2015/lib/desy-commons/interfaces/content-data.js +2 -0
- package/esm2015/lib/desy-commons/interfaces/description-data.js +2 -0
- package/esm2015/lib/desy-commons/interfaces/icon-data.js +2 -0
- package/esm2015/lib/desy-commons/interfaces/index.js +5 -0
- package/esm2015/lib/desy-commons/interfaces/title-data.js +2 -0
- package/esm2015/lib/desy-forms/components/character-count/character-count.component.js +2 -2
- package/esm2015/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.js +190 -0
- package/esm2015/lib/desy-forms/components/checkboxes/checkboxes.component.js +181 -74
- package/esm2015/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.js +46 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.js +19 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.js +13 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.js +46 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.js +44 -0
- package/esm2015/lib/desy-forms/components/date-input/date-input.component.js +132 -27
- package/esm2015/lib/desy-forms/components/error-message/error-message.component.js +17 -5
- package/esm2015/lib/desy-forms/components/fieldset/fieldset.component.js +27 -4
- package/esm2015/lib/desy-forms/components/fieldset/legend/legend.component.js +6 -5
- package/esm2015/lib/desy-forms/components/file-upload/file-upload.component.js +1 -1
- package/esm2015/lib/desy-forms/components/form-field/form-field.component.js +45 -7
- package/esm2015/lib/desy-forms/components/hint/hint.component.js +18 -6
- package/esm2015/lib/desy-forms/components/input/input.component.js +2 -3
- package/esm2015/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.js +20 -0
- package/esm2015/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.js +46 -0
- package/esm2015/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.js +13 -0
- package/esm2015/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.js +42 -0
- package/esm2015/lib/desy-forms/components/input-group/input-group.component.js +115 -21
- package/esm2015/lib/desy-forms/components/label/label.component.js +21 -8
- package/esm2015/lib/desy-forms/components/radios/radio-item/radio-item.component.js +147 -0
- package/esm2015/lib/desy-forms/components/radios/radios.component.js +198 -12
- package/esm2015/lib/desy-forms/components/search-bar/search-bar.component.js +14 -4
- package/esm2015/lib/desy-forms/components/select/option/option.component.js +17 -0
- package/esm2015/lib/desy-forms/components/select/option-group/option-group.component.js +17 -0
- package/esm2015/lib/desy-forms/components/select/select-item/select-item.component.js +14 -0
- package/esm2015/lib/desy-forms/components/select/select.component.js +33 -18
- package/esm2015/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.js +1 -1
- package/esm2015/lib/desy-forms/components/textarea/textarea.component.js +1 -1
- package/esm2015/lib/desy-forms/desy-forms.module.js +43 -6
- package/esm2015/lib/desy-forms/directives/condition.directive.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/accesibility-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/error-message-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/fieldset-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/hint-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/index.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-checkbox-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-date-input-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-divider-date-input-data.js +2 -0
- package/esm2015/lib/desy-forms/interfaces/item-divider-input-group-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-input-group-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-radio-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/item-radio-with-template-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/label-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/legend-data.js +1 -1
- package/esm2015/lib/desy-forms/interfaces/select-item-data.js +1 -1
- package/esm2015/lib/desy-modals/components/dialog/dialog.component.js +1 -1
- package/esm2015/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.js +19 -0
- package/esm2015/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.js +19 -0
- package/esm2015/lib/desy-modals/components/modal/modal.component.js +106 -21
- package/esm2015/lib/desy-modals/desy-modals.module.js +7 -1
- package/esm2015/lib/desy-modals/interfaces/dialog-options.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/index.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/modal-button-data.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/modal-data.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/modal-icon-data.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/modal-options.js +1 -1
- package/esm2015/lib/desy-modals/interfaces/open-dialog-result.js +1 -1
- package/esm2015/lib/desy-modals/services/dialog.service.js +1 -1
- package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.js +15 -0
- package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.js +18 -16
- package/esm2015/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.js +15 -0
- package/esm2015/lib/desy-nav/components/error-summary/error-summary.component.js +34 -13
- package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.js +16 -0
- package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta.component.js +23 -0
- package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.js +16 -0
- package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.js +16 -0
- package/esm2015/lib/desy-nav/components/footer/footer.component.js +31 -8
- package/esm2015/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.js +26 -36
- package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.js +19 -0
- package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation.component.js +14 -7
- package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.js +25 -0
- package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.js +11 -0
- package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.js +76 -14
- package/esm2015/lib/desy-nav/components/header/header-subnav/header-subnav.component.js +26 -36
- package/esm2015/lib/desy-nav/components/header/header.component.js +38 -7
- package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.js +28 -0
- package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.js +41 -21
- package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.js +32 -0
- package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.js +16 -0
- package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.js +24 -0
- package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical.component.js +43 -93
- package/esm2015/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.js +36 -0
- package/esm2015/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.js +14 -0
- package/esm2015/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.js +29 -0
- package/esm2015/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.js +23 -0
- package/esm2015/lib/desy-nav/components/menubar/directives/menubaritem.directive.js +37 -0
- package/esm2015/lib/desy-nav/components/menubar/menubar.component.js +656 -0
- package/esm2015/lib/desy-nav/components/nav/nav-item/nav-item.component.js +30 -0
- package/esm2015/lib/desy-nav/components/nav/nav.component.js +44 -22
- package/esm2015/lib/desy-nav/components/notification/notification-item/notification-item.component.js +18 -0
- package/esm2015/lib/desy-nav/components/notification/notification.component.js +49 -22
- package/esm2015/lib/desy-nav/components/skip-link/skip-link.component.js +24 -5
- package/esm2015/lib/desy-nav/desy-nav.module.js +78 -12
- package/esm2015/lib/desy-nav/interfaces/breadcrumbs.data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/error-summary-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/footer-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-dropdown-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-navigation-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-navigation-item-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-offcanvas-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/header-subnav-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/index.js +1 -5
- package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-event-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menu-vertical-items-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-items-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.js +2 -0
- package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item.js +2 -0
- package/esm2015/lib/desy-nav/interfaces/menubar-item-sub.js +2 -0
- package/esm2015/lib/desy-nav/interfaces/menubar-item.js +2 -0
- package/esm2015/lib/desy-nav/interfaces/nav-item-event.data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/nav-item.data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/notification-items-data.js +1 -1
- package/esm2015/lib/desy-nav/interfaces/notification-options.js +1 -1
- package/esm2015/lib/desy-pagination/components/pagination/pagination.component.js +41 -76
- package/esm2015/lib/desy-pagination/desy-pagination.module.js +1 -1
- package/esm2015/lib/desy-pagination/interfaces/index.js +1 -1
- package/esm2015/lib/desy-pagination/interfaces/pagination-item.data.js +1 -1
- package/esm2015/lib/desy-tables/components/table/components/table-caption.component.js +14 -0
- package/esm2015/lib/desy-tables/components/table/components/table-cell.component.js +17 -0
- package/esm2015/lib/desy-tables/components/table/components/table-header.component.js +14 -0
- package/esm2015/lib/desy-tables/components/table/components/table-row.component.js +14 -0
- package/esm2015/lib/desy-tables/components/table/table.component.js +47 -14
- package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.js +20 -0
- package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.js +14 -0
- package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.js +17 -0
- package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.js +20 -0
- package/esm2015/lib/desy-tables/components/table-advanced/table-advanced.component.js +173 -149
- package/esm2015/lib/desy-tables/desy-tables.module.js +31 -3
- package/esm2015/lib/desy-tables/directives/cell.directive.js +26 -0
- package/esm2015/lib/desy-tables/directives/focus-clicked-cell.directive.js +12 -8
- package/esm2015/lib/desy-tables/directives/row.directive.js +24 -0
- package/esm2015/lib/desy-tables/interfaces/cell-data.js +1 -1
- package/esm2015/lib/desy-tables/interfaces/head-cell-data.js +1 -1
- package/esm2015/lib/desy-tables/interfaces/index.js +2 -1
- package/esm2015/lib/desy-tables/interfaces/recalculate-table-params.js +2 -0
- package/esm2015/lib/desy-tables/interfaces/row-data.js +1 -1
- package/esm2015/lib/desy-tables/interfaces/wrapper-data.js +2 -0
- package/esm2015/lib/desy-views/components/accordion/accordion-header/accordion-header.component.js +14 -0
- package/esm2015/lib/desy-views/components/accordion/accordion-item/accordion-item.component.js +33 -0
- package/esm2015/lib/desy-views/components/accordion/accordion.component.js +84 -56
- package/esm2015/lib/desy-views/components/alert/alert.component.js +28 -23
- package/esm2015/lib/desy-views/components/collapsible/collapsible.component.js +6 -10
- package/esm2015/lib/desy-views/components/description-list/definition/definition.component.js +15 -0
- package/esm2015/lib/desy-views/components/description-list/description-item/description-item.component.js +26 -0
- package/esm2015/lib/desy-views/components/description-list/description-list.component.js +13 -23
- package/esm2015/lib/desy-views/components/description-list/term/term.component.js +15 -0
- package/esm2015/lib/desy-views/components/details/details.component.js +1 -1
- package/esm2015/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.js +14 -0
- package/esm2015/lib/desy-views/components/item/item-content-right/item-content-right.component.js +11 -0
- package/esm2015/lib/desy-views/components/item/item-item/item-item.component.js +11 -0
- package/esm2015/lib/desy-views/components/item/item.component.js +57 -24
- package/esm2015/lib/desy-views/components/media-object/media-object.component.js +1 -1
- package/esm2015/lib/desy-views/components/spinner/spinner.component.js +1 -1
- package/esm2015/lib/desy-views/components/status/status.component.js +2 -2
- package/esm2015/lib/desy-views/components/status-item/status-item.component.js +39 -26
- package/esm2015/lib/desy-views/components/tabs/panel/panel.component.js +15 -0
- package/esm2015/lib/desy-views/components/tabs/tab-item/tab-item.component.js +28 -0
- package/esm2015/lib/desy-views/components/tabs/tabs.component.js +58 -36
- package/esm2015/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.js +11 -0
- package/esm2015/lib/desy-views/components/tooltip/tooltip.component.js +132 -0
- package/esm2015/lib/desy-views/desy-views.module.js +41 -1
- package/esm2015/lib/desy-views/interfaces/accordion-header.data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/accordion-item.data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/alert-options.js +1 -1
- package/esm2015/lib/desy-views/interfaces/description-item.data.js +2 -0
- package/esm2015/lib/desy-views/interfaces/index.js +4 -4
- package/esm2015/lib/desy-views/interfaces/open-alert-result.js +1 -1
- package/esm2015/lib/desy-views/interfaces/status-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/status-icon-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/status-item-title-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/tabs-items-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/tabs-panel-data.js +1 -1
- package/esm2015/lib/desy-views/interfaces/term-definition.data.js +2 -0
- package/esm2015/lib/desy-views/services/alert.service.js +1 -1
- package/esm2015/lib/shared/components/accessibility/accessibility.component.js +1 -1
- package/esm2015/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.js +27 -0
- package/esm2015/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.js +1 -1
- package/esm2015/lib/shared/components/content-base/content-base.component.js +20 -0
- package/esm2015/lib/shared/components/index.js +3 -1
- package/esm2015/lib/shared/components/text-or-html-required/text-or-html-required.component.js +1 -1
- package/esm2015/lib/shared/decorators/desy-content-child.decorator.js +41 -0
- package/esm2015/lib/shared/decorators/desy-on-input-change.decorator.js +19 -0
- package/esm2015/lib/shared/directives/attribute-change.directive.js +43 -0
- package/esm2015/lib/shared/directives/click-outside.directive.js +1 -1
- package/esm2015/lib/shared/directives/content-change.directive.js +43 -0
- package/esm2015/lib/shared/directives/content-empty.directive.js +86 -0
- package/esm2015/lib/shared/directives/custom-inner-content.directive.js +62 -0
- package/esm2015/lib/shared/directives/inner-content.directive.js +5 -3
- package/esm2015/lib/shared/interfaces/accesibility-data.js +1 -1
- package/esm2015/lib/shared/pipes/external-href.pipe.js +28 -0
- package/esm2015/lib/shared/pipes/inner-html.pipe.js +1 -1
- package/esm2015/lib/shared/pipes/make-html-list.pipe.js +1 -1
- package/esm2015/lib/shared/shared.module.js +23 -4
- package/esm2015/lib/shared/utils/focus-utils.js +1 -1
- package/esm2015/lib/shared/utils/search-utils.js +1 -1
- package/esm2015/lib/shared/utils/string-utils.js +18 -0
- package/esm2015/public-api.js +88 -29
- package/fesm2015/desy-angular.js +5759 -2069
- package/fesm2015/desy-angular.js.map +1 -1
- package/lib/desy-buttons/components/button/button.component.d.ts +6 -7
- package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +1 -0
- package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +9 -7
- package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +12 -0
- package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +4 -0
- package/lib/desy-buttons/components/listbox/listbox.component.d.ts +53 -0
- package/lib/desy-buttons/components/pill/pill.component.d.ts +3 -3
- package/lib/desy-buttons/interfaces/listbox-item-data.d.ts +9 -0
- package/lib/{desy-nav/interfaces/notification-title-data.d.ts → desy-buttons/interfaces/listbox-label-data.d.ts} +1 -1
- package/lib/desy-commons/components/content/content.component.d.ts +5 -0
- package/lib/desy-commons/components/description/description.component.d.ts +5 -0
- package/lib/desy-commons/components/icon/icon.component.d.ts +5 -0
- package/lib/desy-commons/components/title/title.component.d.ts +5 -0
- package/lib/desy-commons/desy-commons.module.d.ts +2 -0
- package/lib/{desy-nav/interfaces/notification-content-data.d.ts → desy-commons/interfaces/content-data.d.ts} +1 -1
- package/lib/desy-commons/interfaces/description-data.d.ts +5 -0
- package/lib/desy-commons/interfaces/icon-data.d.ts +4 -0
- package/lib/desy-commons/interfaces/index.d.ts +4 -0
- package/lib/desy-commons/interfaces/title-data.d.ts +6 -0
- package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +47 -0
- package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +53 -15
- package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +22 -0
- package/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.d.ts +7 -0
- package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +4 -0
- package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +22 -0
- package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +19 -0
- package/lib/desy-forms/components/date-input/date-input.component.d.ts +21 -4
- package/lib/desy-forms/components/error-message/error-message.component.d.ts +8 -2
- package/lib/desy-forms/components/fieldset/fieldset.component.d.ts +12 -4
- package/lib/desy-forms/components/fieldset/legend/legend.component.d.ts +3 -2
- package/lib/desy-forms/components/form-field/form-field.component.d.ts +7 -18
- package/lib/desy-forms/components/hint/hint.component.d.ts +8 -2
- package/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.d.ts +8 -0
- package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +20 -0
- package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +4 -0
- package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +16 -0
- package/lib/desy-forms/components/input-group/input-group.component.d.ts +24 -6
- package/lib/desy-forms/components/label/label.component.d.ts +12 -5
- package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +43 -0
- package/lib/desy-forms/components/radios/radios.component.d.ts +56 -11
- package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +7 -3
- package/lib/desy-forms/components/select/option/option.component.d.ts +7 -0
- package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +7 -0
- package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +4 -0
- package/lib/desy-forms/components/select/select.component.d.ts +9 -2
- package/lib/desy-forms/interfaces/error-message-data.d.ts +5 -5
- package/lib/desy-forms/interfaces/fieldset-data.d.ts +5 -4
- package/lib/desy-forms/interfaces/hint-data.d.ts +4 -4
- package/lib/desy-forms/interfaces/item-checkbox-data.d.ts +1 -0
- package/lib/desy-forms/interfaces/item-date-input-data.d.ts +3 -0
- package/lib/desy-forms/interfaces/item-divider-date-input-data.d.ts +5 -0
- package/lib/desy-forms/interfaces/item-input-group-data.d.ts +1 -2
- package/lib/desy-forms/interfaces/item-radio-data.d.ts +15 -12
- package/lib/desy-forms/interfaces/legend-data.d.ts +4 -4
- package/lib/desy-forms/interfaces/select-item-data.d.ts +2 -1
- package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +7 -0
- package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +7 -0
- package/lib/desy-modals/components/modal/modal.component.d.ts +27 -2
- package/lib/desy-modals/interfaces/modal-button-data.d.ts +2 -2
- package/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.d.ts +6 -0
- package/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.d.ts +7 -4
- package/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.d.ts +6 -0
- package/lib/desy-nav/components/error-summary/error-summary.component.d.ts +12 -4
- package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +7 -0
- package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +10 -0
- package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +7 -0
- package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +8 -0
- package/lib/desy-nav/components/footer/footer.component.d.ts +15 -3
- package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +10 -6
- package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +10 -0
- package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +6 -2
- package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.d.ts +6 -0
- package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.d.ts +3 -0
- package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +30 -9
- package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +11 -8
- package/lib/desy-nav/components/header/header.component.d.ts +16 -5
- package/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.d.ts +15 -0
- package/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.d.ts +6 -5
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +18 -0
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +8 -0
- package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +15 -0
- package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +13 -18
- package/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.d.ts +23 -0
- package/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.d.ts +4 -0
- package/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.d.ts +15 -0
- package/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.d.ts +10 -0
- package/lib/desy-nav/components/menubar/directives/menubaritem.directive.d.ts +16 -0
- package/lib/desy-nav/components/menubar/menubar.component.d.ts +88 -0
- package/lib/desy-nav/components/nav/nav-item/nav-item.component.d.ts +17 -0
- package/lib/desy-nav/components/nav/nav.component.d.ts +7 -5
- package/lib/desy-nav/components/notification/notification-item/notification-item.component.d.ts +9 -0
- package/lib/desy-nav/components/notification/notification.component.d.ts +25 -11
- package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +9 -2
- package/lib/desy-nav/interfaces/breadcrumbs.data.d.ts +4 -4
- package/lib/desy-nav/interfaces/error-summary-data.d.ts +4 -4
- package/lib/desy-nav/interfaces/footer-data.d.ts +7 -10
- package/lib/desy-nav/interfaces/header-dropdown-data.d.ts +5 -1
- package/lib/desy-nav/interfaces/header-offcanvas-data.d.ts +0 -1
- package/lib/desy-nav/interfaces/header-subnav-data.d.ts +6 -1
- package/lib/desy-nav/interfaces/index.d.ts +0 -4
- package/lib/desy-nav/interfaces/menu-vertical-items-data.d.ts +15 -13
- package/lib/desy-nav/interfaces/menu-vertical-sub-data.d.ts +3 -4
- package/lib/desy-nav/interfaces/menu-vertical-sub-items-data.d.ts +15 -12
- package/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.d.ts +6 -0
- package/lib/desy-nav/interfaces/menubar-item-sub-item.d.ts +9 -0
- package/lib/desy-nav/interfaces/menubar-item-sub.d.ts +6 -0
- package/lib/desy-nav/interfaces/menubar-item.d.ts +18 -0
- package/lib/desy-nav/interfaces/nav-item.data.d.ts +2 -1
- package/lib/desy-nav/interfaces/notification-items-data.d.ts +8 -5
- package/lib/desy-nav/interfaces/notification-options.d.ts +5 -8
- package/lib/desy-pagination/components/pagination/pagination.component.d.ts +7 -12
- package/lib/desy-tables/components/table/components/table-caption.component.d.ts +4 -0
- package/lib/desy-tables/components/table/components/table-cell.component.d.ts +8 -0
- package/lib/desy-tables/components/table/components/table-header.component.d.ts +5 -0
- package/lib/desy-tables/components/table/components/table-row.component.d.ts +5 -0
- package/lib/desy-tables/components/table/table.component.d.ts +16 -4
- package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +13 -0
- package/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.d.ts +5 -0
- package/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.d.ts +8 -0
- package/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.d.ts +8 -0
- package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +66 -39
- package/lib/desy-tables/directives/cell.directive.d.ts +14 -0
- package/lib/desy-tables/directives/focus-clicked-cell.directive.d.ts +3 -3
- package/lib/desy-tables/directives/row.directive.d.ts +16 -0
- package/lib/desy-tables/interfaces/head-cell-data.d.ts +2 -2
- package/lib/desy-tables/interfaces/index.d.ts +1 -0
- package/lib/desy-tables/interfaces/recalculate-table-params.d.ts +11 -0
- package/lib/desy-tables/interfaces/row-data.d.ts +1 -0
- package/lib/desy-tables/interfaces/wrapper-data.d.ts +4 -0
- package/lib/desy-views/components/accordion/accordion-header/accordion-header.component.d.ts +5 -0
- package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +13 -0
- package/lib/desy-views/components/accordion/accordion.component.d.ts +20 -11
- package/lib/desy-views/components/alert/alert.component.d.ts +6 -4
- package/lib/desy-views/components/collapsible/collapsible.component.d.ts +4 -6
- package/lib/desy-views/components/description-list/definition/definition.component.d.ts +6 -0
- package/lib/desy-views/components/description-list/description-item/description-item.component.d.ts +9 -0
- package/lib/desy-views/components/description-list/description-list.component.d.ts +9 -6
- package/lib/desy-views/components/description-list/term/term.component.d.ts +6 -0
- package/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.d.ts +5 -0
- package/lib/desy-views/components/item/item-content-right/item-content-right.component.d.ts +3 -0
- package/lib/desy-views/components/item/item-item/item-item.component.d.ts +3 -0
- package/lib/desy-views/components/item/item.component.d.ts +28 -9
- package/lib/desy-views/components/status-item/status-item.component.d.ts +17 -6
- package/lib/desy-views/components/tabs/panel/panel.component.d.ts +6 -0
- package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +12 -0
- package/lib/desy-views/components/tabs/tabs.component.d.ts +15 -3
- package/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.d.ts +3 -0
- package/lib/desy-views/components/tooltip/tooltip.component.d.ts +35 -0
- package/lib/desy-views/interfaces/accordion-header.data.d.ts +3 -3
- package/lib/desy-views/interfaces/accordion-item.data.d.ts +8 -8
- package/lib/desy-views/interfaces/description-item.data.d.ts +8 -0
- package/lib/desy-views/interfaces/index.d.ts +3 -3
- package/lib/desy-views/interfaces/tabs-items-data.d.ts +5 -5
- package/lib/desy-views/interfaces/tabs-panel-data.d.ts +4 -4
- package/lib/desy-views/interfaces/term-definition.data.d.ts +7 -0
- package/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.d.ts +26 -0
- package/lib/shared/components/content-base/content-base.component.d.ts +9 -0
- package/lib/shared/components/index.d.ts +2 -0
- package/lib/shared/decorators/desy-content-child.decorator.d.ts +15 -0
- package/lib/shared/decorators/desy-on-input-change.decorator.d.ts +5 -0
- package/lib/shared/directives/attribute-change.directive.d.ts +10 -0
- package/lib/shared/directives/content-change.directive.d.ts +19 -0
- package/lib/shared/directives/content-empty.directive.d.ts +26 -0
- package/lib/shared/directives/custom-inner-content.directive.d.ts +22 -0
- package/lib/shared/directives/inner-content.directive.d.ts +1 -0
- package/lib/shared/pipes/external-href.pipe.d.ts +8 -0
- package/lib/shared/utils/string-utils.d.ts +10 -0
- package/package.json +16 -11
- package/public-api.d.ts +75 -25
- package/esm2015/lib/desy-forms/components/checkboxes/item-checkbox/item-checkbox.component.js +0 -100
- package/esm2015/lib/desy-forms/components/radios/item-radio/item-radio.component.js +0 -89
- package/esm2015/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.js +0 -62
- package/esm2015/lib/desy-nav/interfaces/notification-content-data.js +0 -2
- package/esm2015/lib/desy-nav/interfaces/notification-description-data.js +0 -2
- package/esm2015/lib/desy-nav/interfaces/notification-icon-data.js +0 -2
- package/esm2015/lib/desy-nav/interfaces/notification-title-data.js +0 -2
- package/esm2015/lib/desy-views/interfaces/description.data.js +0 -2
- package/esm2015/lib/desy-views/interfaces/item-data.js +0 -2
- package/esm2015/lib/desy-views/interfaces/item-description.data.js +0 -2
- package/esm2015/lib/shared/utils/navigation-utils.js +0 -18
- package/lib/desy-forms/components/checkboxes/item-checkbox/item-checkbox.component.d.ts +0 -39
- package/lib/desy-forms/components/radios/item-radio/item-radio.component.d.ts +0 -36
- package/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.d.ts +0 -19
- package/lib/desy-nav/interfaces/notification-description-data.d.ts +0 -5
- package/lib/desy-nav/interfaces/notification-icon-data.d.ts +0 -3
- package/lib/desy-views/interfaces/description.data.d.ts +0 -7
- package/lib/desy-views/interfaces/item-data.d.ts +0 -19
- package/lib/desy-views/interfaces/item-description.data.d.ts +0 -8
- package/lib/shared/utils/navigation-utils.d.ts +0 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(e,
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/forms"),require("@angular/animations"),require("@angular/cdk/a11y"),require("@angular/common"),require("@angular/router"),require("@angular/platform-browser"),require("ngx-tippy-wrapper")):"function"==typeof define&&define.amd?define("desy-angular",["exports","@angular/core","@angular/forms","@angular/animations","@angular/cdk/a11y","@angular/common","@angular/router","@angular/platform-browser","ngx-tippy-wrapper"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["desy-angular"]={},e.ng.core,e.ng.forms,e.ng.animations,e.ng.cdk.a11y,e.ng.common,e.ng.router,e.ng.platformBrowser,e.ngxTippyWrapper)}(this,(function(e,t,r,a,n,i,o,l,s){"use strict";function d(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var p=d(t),c=function(e,t){return(c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)};
|
|
2
2
|
/*! *****************************************************************************
|
|
3
3
|
Copyright (c) Microsoft Corporation.
|
|
4
4
|
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */var d=function(e,a){return(d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,a){e.__proto__=a}||function(e,a){for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])})(e,a)};function u(e,a){function r(){this.constructor=e}d(e,a),e.prototype=null===a?Object.create(a):(r.prototype=a.prototype,new r)}function c(e,a,r,t){return new(r||(r=Promise))((function(n,i){function l(e){try{o(t.next(e))}catch(e){i(e)}}function s(e){try{o(t.throw(e))}catch(e){i(e)}}function o(e){var a;e.done?n(e.value):(a=e.value,a instanceof r?a:new r((function(e){e(a)}))).then(l,s)}o((t=t.apply(e,a||[])).next())}))}function p(e,a){var r,t,n,i,l={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;l;)try{if(r=1,t&&(n=2&i[0]?t.return:i[0]?t.throw||((n=t.return)&&n.call(t),0):t.next)&&!(n=n.call(t,i[1])).done)return n;switch(t=0,n&&(i=[2&i[0],n.value]),i[0]){case 0:case 1:n=i;break;case 4:return l.label++,{value:i[1],done:!1};case 5:l.label++,t=i[1],i=[0];continue;case 7:i=l.ops.pop(),l.trys.pop();continue;default:if(!(n=l.trys,(n=n.length>0&&n[n.length-1])||6!==i[0]&&2!==i[0])){l=0;continue}if(3===i[0]&&(!n||i[1]>n[0]&&i[1]<n[3])){l.label=i[1];break}if(6===i[0]&&l.label<n[1]){l.label=n[1],n=i;break}if(n&&l.label<n[2]){l.label=n[2],l.ops.push(i);break}n[2]&&l.ops.pop(),l.trys.pop();continue}i=a.call(e,l)}catch(e){i=[6,e],t=0}finally{r=n=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}Object.create;function m(e){var a="function"==typeof Symbol&&Symbol.iterator,r=a&&e[a],t=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&t>=e.length&&(e=void 0),{value:e&&e[t++],done:!e}}};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")}function b(e,a){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var t,n,i=r.call(e),l=[];try{for(;(void 0===a||a-- >0)&&!(t=i.next()).done;)l.push(t.value)}catch(e){n={error:e}}finally{try{t&&!t.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return l}function g(){for(var e=[],a=0;a<arguments.length;a++)e=e.concat(b(arguments[a]));return e}Object.create;var h=function(){};h.decorators=[{type:a.Component,args:[{selector:"desy-accessibility",template:"<div></div>"}]}],h.propDecorators={role:[{type:a.Input}],ariaLabel:[{type:a.Input}],ariaDescribedBy:[{type:a.Input}],ariaLabelledBy:[{type:a.Input}],ariaHidden:[{type:a.Input}],ariaDisabled:[{type:a.Input}],ariaControls:[{type:a.Input}],ariaCurrent:[{type:a.Input}],ariaLive:[{type:a.Input}],ariaExpanded:[{type:a.Input}],ariaErrorMessage:[{type:a.Input}],ariaHasPopup:[{type:a.Input}],ariaModal:[{type:a.Input}],tabindex:[{type:a.Input}]};var y=function(){function e(){}return e.prototype.ngOnChanges=function(e){f(this.text,this.html)},e}();function f(e,a){if(!a&&!e)throw new Error("html or text are required")}y.decorators=[{type:a.Component,args:[{selector:"desy-text-or-html-required",template:"<div></div>"}]}],y.propDecorators={text:[{type:a.Input}],html:[{type:a.Input}]};var x=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a}(y);x.decorators=[{type:a.Component,args:[{selector:"desy-accessibility-and-text-or-html-required",template:"<div></div>"}]}],x.propDecorators={role:[{type:a.Input}],ariaLabel:[{type:a.Input}],ariaDescribedBy:[{type:a.Input}],ariaLabelledBy:[{type:a.Input}],ariaHidden:[{type:a.Input}],ariaDisabled:[{type:a.Input}],ariaControls:[{type:a.Input}],ariaCurrent:[{type:a.Input}],ariaLive:[{type:a.Input}],ariaExpanded:[{type:a.Input}],ariaErrorMessage:[{type:a.Input}],ariaHasPopup:[{type:a.Input}],tabindex:[{type:a.Input}]};var v=function(){function e(){}return e.getExternalHref=function(e){return e?e.match("http(s)?://")?e:"http://"+e:"#"},e}(),D=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.clickEvent=new a.EventEmitter,r.avoidingDoubleClick=!1,r}return u(r,e),r.prototype.ngOnInit=function(){this.required()},r.prototype.ngOnChanges=function(e){this.required()},r.prototype.required=function(){this.getElement()!==this.staticElementTypeInput&&f(this.text,this.html)},r.prototype.onClick=function(e){var a=this;this.preventDoubleClick?this.avoidingDoubleClick?e.preventDefault():(this.avoidingDoubleClick=!0,this.clickEvent.emit(e),setTimeout((function(){a.avoidingDoubleClick=!1}),1e3)):this.clickEvent.emit(e)},r.prototype.getExternalHref=function(){return v.getExternalHref(this.href)},r.prototype.getElement=function(){return this.element?this.element.toLocaleLowerCase():this.href?r.ELEMENT_A:r.ELEMENT_BUTTON},r.prototype.getClassNames=function(){var e="c-button";return this.classes&&(e+=" "+this.classes),this.disabled&&(e+=" c-button--disabled"),e},r.prototype.isDisabled=function(){return!!this.disabled||null},Object.defineProperty(r.prototype,"staticElementTypeA",{get:function(){return r.ELEMENT_A},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"staticElementTypeButton",{get:function(){return r.ELEMENT_BUTTON},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"staticElementTypeInput",{get:function(){return r.ELEMENT_INPUT},enumerable:!1,configurable:!0}),r}(x);D.ELEMENT_A="a",D.ELEMENT_BUTTON="button",D.ELEMENT_INPUT="input",D.decorators=[{type:a.Component,args:[{selector:"desy-button",template:'<ng-container [ngSwitch]="getElement()">\r\n <ng-container *ngSwitchCase="staticElementTypeA">\r\n \x3c!-- routerLink modifica href, por eso se duplica para que no convivan en un mismo html --\x3e\r\n <a *ngIf="routerLink" draggable="false" (click)="onClick($event)"\r\n [routerLink]="routerLink" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.tabindex]="isDisabled() ? -1 : null"\r\n [attr.role]="isDisabled() ? \'button\' : (role ? role : \'button\')"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"></a>\r\n\r\n <a *ngIf="!routerLink" data-module="c-button" draggable="false" (click)="onClick($event)"\r\n [href]="getExternalHref()"\r\n [attr.target]="target ? target : null"\r\n [attr.tabindex]="isDisabled() ? -1 : null"\r\n [attr.role]="isDisabled() ? \'button\' : (role ? role : \'button\')"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"></a>\r\n\r\n </ng-container>\r\n\r\n <button *ngSwitchCase="staticElementTypeButton" data-module="c-button" (click)="onClick($event)"\r\n [routerLink]="routerLink ? routerLink : null" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.name]="name ? name : null"\r\n [attr.value]="value ? value : null"\r\n [attr.disabled]="isDisabled()"\r\n [attr.role]="isDisabled() ? \'button\' : (role ? role : null)"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.data-prevent-double-click]="preventDoubleClick ? \'true\' : null"\r\n [attr.type]="type ? type : null"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"></button>\r\n\r\n <input *ngSwitchCase="staticElementTypeInput" data-module="c-button" (click)="onClick($event)"\r\n [routerLink]="routerLink ? routerLink : null" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.name]="name ? name : null"\r\n [value]="text ? text : null"\r\n [attr.disabled]="isDisabled()"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.role]="isDisabled() ? \'button\' : (role ? role : null)"\r\n [attr.data-prevent-double-click]="preventDoubleClick ? \'true\' : null"\r\n [attr.type]="type ? type : \'submit\'"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null">\r\n</ng-container>\r\n'}]}],D.propDecorators={id:[{type:a.Input}],classes:[{type:a.Input}],element:[{type:a.Input}],name:[{type:a.Input}],type:[{type:a.Input}],value:[{type:a.Input}],disabled:[{type:a.Input}],href:[{type:a.Input}],target:[{type:a.Input}],preventDoubleClick:[{type:a.Input}],routerLink:[{type:a.Input}],routerLinkActiveClasses:[{type:a.Input}],clickEvent:[{type:a.Output}]};var C=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.getClassNames=function(){var e="c-button-loader relative";return this.classes&&(e+=" "+this.classes),this.disabled&&(e+=" c-button-loader--disabled"),e},a.prototype.getSpinnerText=function(){var e=null;return this.state===a.STATE_LOADING&&(e=this.loaderText?this.loaderText:a.DEFAULT_LOADER_TEXT),e},a.prototype.getSuccessText=function(){var e=null;return this.state===a.STATE_SUCCESS&&(e=this.successText?this.successText:a.DEFAULT_SUCCESS_TEXT),e},a}(D);C.STATE_LOADING="is-loading",C.STATE_SUCCESS="is-success",C.DEFAULT_LOADER_TEXT="Acción en curso",C.DEFAULT_SUCCESS_TEXT="Acción realizada con éxito",C.decorators=[{type:a.Component,args:[{selector:"desy-button-loader",template:'<ng-template #spinnerTemplate>\r\n <span class="c-button-loader__spinner flex items-center justify-center absolute inset-0">\r\n <desy-spinner [text]="getSpinnerText()" [classes]="loaderClasses" ></desy-spinner>\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #successTemplate>\r\n <span class="c-button-loader__success flex items-center justify-center absolute inset-0">\r\n <p class="sr-only" role="alert" aria-live="assertive">{{ getSuccessText() }}</p>\r\n <span aria-hidden="true">✓</span>\r\n </span>\r\n</ng-template>\r\n\r\n<ng-container [ngSwitch]="getElement()">\r\n <ng-container *ngSwitchCase="staticElementTypeA">\r\n <a *ngIf="routerLink" data-module="c-button" draggable="false" (click)="onClick($event)"\r\n [routerLink]="routerLink" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.tabindex]="isDisabled() ? -1 : null"\r\n role="button"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"\r\n [class]="getClassNames()">\r\n <ng-container *ngTemplateOutlet="spinnerTemplate"></ng-container>\r\n <ng-container *ngTemplateOutlet="successTemplate"></ng-container>\r\n <span class="c-button-loader__content inline-flex align-baseline" [desyInnerContent]="html ? html : text" [isHtml]="html"></span>\r\n </a>\r\n\r\n <a *ngIf="!routerLink" data-module="c-button" draggable="false" (click)="onClick($event)"\r\n [href]="getExternalHref()" [attr.target]="target ? target : null"\r\n [attr.tabindex]="isDisabled() ? -1 : null"\r\n role="button"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"\r\n [class]="getClassNames()">\r\n <ng-container *ngTemplateOutlet="spinnerTemplate"></ng-container>\r\n <ng-container *ngTemplateOutlet="successTemplate"></ng-container>\r\n <span class="c-button-loader__content inline-flex align-baseline" [desyInnerContent]="html ? html : text" [isHtml]="html"></span>\r\n </a>\r\n </ng-container>\r\n\r\n <button *ngSwitchCase="staticElementTypeButton" data-module="c-button" (click)="onClick($event)"\r\n [routerLink]="routerLink ? routerLink : null" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.name]="name ? name : null"\r\n [attr.value]="value ? value : null"\r\n [attr.disabled]="isDisabled()"\r\n [attr.role]="(role ? role : null)"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.data-prevent-double-click]="preventDoubleClick ? \'true\' : null"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"\r\n [attr.type]="type ? type : null"\r\n [class]="getClassNames()">\r\n <ng-container *ngTemplateOutlet="spinnerTemplate"></ng-container>\r\n <ng-container *ngTemplateOutlet="successTemplate"></ng-container>\r\n <span class="c-button-loader__content inline-flex align-baseline" [desyInnerContent]="html ? html : text" [isHtml]="html"></span>\r\n </button>\r\n\r\n <div *ngSwitchCase="staticElementTypeInput" data-module="c-button" (click)="onClick($event)"\r\n [attr.name]="name ? name : null"\r\n [routerLink]="routerLink ? routerLink : null" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.disabled]="isDisabled()"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.role]="(role ? role : null)"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"\r\n [class]="getClassNames()"\r\n [attr.data-prevent-double-click]="preventDoubleClick ? \'true\' : null">\r\n <span class="c-button-loader__content inline-flex align-baseline">\r\n <input [value]="text ? text : null" [type]="type ? type : \'submit\'" class="bg-transparent font-semibold">\r\n </span>\r\n <ng-container *ngTemplateOutlet="spinnerTemplate"></ng-container>\r\n <ng-container *ngTemplateOutlet="successTemplate"></ng-container>\r\n </div>\r\n</ng-container>\r\n'}]}],C.propDecorators={loaderText:[{type:a.Input}],loaderClasses:[{type:a.Input}],state:[{type:a.Input}],successText:[{type:a.Input}]};var I=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.clickEvent=new a.EventEmitter,r}return u(r,e),r.prototype.onClick=function(e){this.clickEvent.emit(e)},r.prototype.getType=function(){return this.type?this.type.toLocaleLowerCase():this.href?r.TYPE_A:r.TYPE_SPAN},r.prototype.getExternalHref=function(){return v.getExternalHref(this.href)},r.prototype.getClassNames=function(){var e="c-pill";return this.classes&&(e+=" "+this.classes),e},Object.defineProperty(r.prototype,"staticElementTypeA",{get:function(){return r.TYPE_A},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"staticElementTypeButton",{get:function(){return r.TYPE_BUTTON},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"staticElementTypeSpan",{get:function(){return r.TYPE_SPAN},enumerable:!1,configurable:!0}),r}(x);I.TYPE_A="a",I.TYPE_BUTTON="button",I.TYPE_SPAN="span",I.decorators=[{type:a.Component,args:[{selector:"desy-pill",template:'<ng-container [ngSwitch]="getType()">\r\n <ng-container *ngSwitchCase="staticElementTypeA">\r\n \x3c!-- routerLink modifica href, por eso se duplica para que no convivan en un mismo html --\x3e\r\n <a *ngIf="routerLink" data-module="c-pill" (click)="onClick($event)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [routerLink]="routerLink" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></a>\r\n\r\n <a *ngIf="!routerLink" data-module="c-pill" (click)="onClick($event)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [href]="getExternalHref()"\r\n [class]="getClassNames()"\r\n [attr.target]="target ? target : null"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></a>\r\n </ng-container>\r\n\r\n <button *ngSwitchCase="staticElementTypeButton" data-module="c-pill" (click)="onClick($event)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></button>\r\n\r\n <span *ngSwitchCase="staticElementTypeSpan" data-module="c-pill" (click)="onClick($event)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></span>\r\n</ng-container>\r\n'}]}],I.propDecorators={type:[{type:a.Input}],href:[{type:a.Input}],target:[{type:a.Input}],routerLink:[{type:a.Input}],routerLinkActiveClasses:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}],clickEvent:[{type:a.Output}]};var L=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.clickEvent=new a.EventEmitter,r.show=!1,r.clickOutsideEnabled=!1,r}return u(r,e),r.prototype.ngOnChanges=function(e){this.isDisabled()&&this.closeDropdown()},r.prototype.onClick=function(e){this.isDisabled()||(this.toggleDropdown(),this.clickEvent.emit(e))},r.prototype.toggleDropdown=function(){var e=this;this.show=!this.show,setTimeout((function(){return e.clickOutsideEnabled=e.show}))},r.prototype.closeDropdown=function(){this.show=!1,this.clickOutsideEnabled=!1},r.prototype.isDisabled=function(){return!!this.disabled||null},r}(x);L.decorators=[{type:a.Component,args:[{selector:"desy-dropdown",template:'<div [ngClass]="classesContainer ? classesContainer : \'relative\'">\r\n <button aria-haspopup="true" (click)="onClick($event)"\r\n [class]="[\'c-dropdown\', classes] | makeHtmlList"\r\n [attr.disabled]="isDisabled() ? \'disabled\' : null"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.aria-expanded]="show ? true : false"\r\n [attr.aria-describedby]="show ? (ariaDescribedBy ? ariaDescribedBy : \'dropdown\' ) : null"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.tabIndex]="isDisabled() ? \'-1\' : tabindex">\r\n\r\n <span class="inline-block self-center max-w-xs align-middle truncate" [desyInnerContent]="html ? html : text" [isHtml]="html"></span>\r\n <svg class="inline-block -mr-2 align-middle" viewBox="0 0 96 96" aria-hidden="true" fill="currentColor" focusable="false" width="1.5em" height="1.5em"><g><path d="M46.71 58.037a1.823 1.823 0 002.581 0L62.048 45.28a1.823 1.823 0 00-1.29-3.113H35.243a1.823 1.823 0 00-1.291 3.113z"/></g></svg>\r\n </button>\r\n <span *ngIf="hiddenText" class="sr-only">{{ hiddenText }}</span>\r\n <div *ngIf="show" [id]="ariaDescribedBy ? ariaDescribedBy : \'dropdown\'" style="z-index: 9999;margin: 0px;position: absolute;"\r\n [class]="[\'-ml-sm mt-2 border border-neutral-base shadow-md bg-white\', classesTooltip] | makeHtmlList"\r\n [desyClickOutside]="clickOutsideEnabled" (clickOutside)="closeDropdown()">\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n</div>\r\n'}]}],L.propDecorators={id:[{type:a.Input}],disabled:[{type:a.Input}],hiddenText:[{type:a.Input}],classesContainer:[{type:a.Input}],classesTooltip:[{type:a.Input}],classes:[{type:a.Input}],caller:[{type:a.Input}],clickEvent:[{type:a.Output}]};var E=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a}(x);E.decorators=[{type:a.Component,args:[{selector:"desy-hint",template:'<p [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [class]="\'block text-neutral-dark\' + (classes ? \' \' + classes : \'\')"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></p>\r\n'}]}],E.propDecorators={id:[{type:a.Input}],classes:[{type:a.Input}]};var H=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a}(x);H.decorators=[{type:a.Component,args:[{selector:"desy-label",template:'<ng-template #labelTemplate>\r\n <label [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [class]="\'block\' + (classes ? \' \' + classes : \'\')"\r\n [attr.id]="id ? id : null"\r\n [attr.for]="for ? for : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></label>\r\n</ng-template>\r\n<h2 *ngIf="isPageHeading; else elseBlock" class="block">\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n</h2>\r\n<ng-template #elseBlock>\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n</ng-template>\r\n'}]}],H.propDecorators={for:[{type:a.Input}],isPageHeading:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}]};var w=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a}(x);w.decorators=[{type:a.Component,args:[{selector:"desy-error-message",template:'<p *ngIf="!html"\r\n class="block font-semibold text-alert-base" [ngClass]="classes"\r\n [attr.id]="id"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <span class="sr-only">{{visuallyHiddenText ? visuallyHiddenText : \'Error\'}}:</span>\r\n {{ text }}\r\n</p>\r\n\r\n<p *ngIf="html"\r\n class="block font-semibold text-alert-base" [ngClass]="classes"\r\n [attr.id]="id"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <span class="sr-only">{{visuallyHiddenText ? visuallyHiddenText : \'Error\'}}:</span>\r\n <ng-container *ngTemplateOutlet="tmpHtml"></ng-container>\r\n</p>\r\n\r\n<ng-template #tmpHtml>\r\n <div [outerHTML]="html | innerHtml"></div> \x3c!-- con outerHtml se reemplaza el div --\x3e\r\n</ng-template>\r\n'}]}],w.propDecorators={id:[{type:a.Input}],classes:[{type:a.Input}],visuallyHiddenText:[{type:a.Input}]};var M=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a}(h);M.decorators=[{type:a.Component,args:[{selector:"desy-fieldset",template:'<fieldset [class]="classes"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="describedBy ? describedBy : ariaDescribedBy"\r\n [attr.aria-errormessage]="errorId ? errorId : ariaErrorMessage"\r\n\r\n [attr.id]="id"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngTemplateOutlet="legendRef"></ng-container>\r\n <desy-legend *ngIf="!legendRef && legendData"\r\n [text]="legendData.text"\r\n [html]="legendData.html"\r\n [classes]="legendData.classes"\r\n [isPageHeading]="legendData.isPageHeading"></desy-legend>\r\n\r\n <desy-legend *ngIf="!legendRef && !legendData && legendText" [text]="legendText"></desy-legend>\r\n\r\n \r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n</fieldset>\r\n'}]}],M.propDecorators={describedBy:[{type:a.Input}],errorId:[{type:a.Input}],legendRef:[{type:a.Input}],legendData:[{type:a.Input}],legendText:[{type:a.Input}],classes:[{type:a.Input}],caller:[{type:a.Input}],id:[{type:a.Input}]};var k=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a}(y);k.decorators=[{type:a.Component,args:[{selector:"desy-legend",template:'<legend *ngIf="isPageHeading" [ngClass]="classes ? classes : \'font-bold\'">\r\n <h2 class="font-bold" [desyInnerContent]="html ? html : text" [isHtml]="html"></h2>\r\n</legend>\r\n\r\n<legend *ngIf="!isPageHeading" [ngClass]="classes ? classes : \'font-bold\'" [desyInnerContent]="html ? html : text" [isHtml]="html"></legend>'}]}],k.propDecorators={classes:[{type:a.Input}],isPageHeading:[{type:a.Input}]};var B=function(e){function a(){var a=e.apply(this,g(arguments))||this;return a.onChange=function(e){},a.onTouch=function(){},a}return u(a,e),a.prototype.onInput=function(e){this.value=e,this.onTouch(),this.onChange(this.value)},a.prototype.registerOnChange=function(e){this.onChange=e},a.prototype.registerOnTouched=function(e){this.onTouch=e},a.prototype.setDisabledState=function(e){this.disabled=e},a.prototype.writeValue=function(e){e&&(this.value=e),this.onChange(e)},a.prototype.getHintId=function(){return this.hasHint()?this.id+"-hint":null},a.prototype.getErrorId=function(){return this.hasErrorsMessage()?this.id+"-error":null},a.prototype.hasLabel=function(){return!!(this.labelText||this.labelRef||this.labelData&&(this.labelData.text||this.labelData.html))},a.prototype.hasHint=function(){return!!(this.hintText||this.hintRef||this.hintData&&(this.hintData.text||this.hintData.html))},a.prototype.hasErrorsMessage=function(){return!!(this.errorMessageText||this.errorMessageRef||this.errorMessageData&&(this.errorMessageData.text||this.errorMessageData.html))},a}(h);B.decorators=[{type:a.Component,args:[{selector:"desy-form-field",template:"<div></div>"}]}],B.propDecorators={id:[{type:a.Input}],disabled:[{type:a.Input}],labelRef:[{type:a.Input}],labelData:[{type:a.Input}],labelText:[{type:a.Input}],hintRef:[{type:a.Input}],hintData:[{type:a.Input}],hintText:[{type:a.Input}],errorMessageRef:[{type:a.Input}],errorMessageData:[{type:a.Input}],errorMessageText:[{type:a.Input}]};var P=function(e){function a(){var a=e.call(this)||this;return a.inputTransform=function(e){return e},a}return u(a,e),a.prototype.ngOnChanges=function(e){this.checkRequiredParams(),this.writeValue(this.value)},a.prototype.checkRequiredParams=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.labelRef&&!this.labelData&&!this.labelText)throw Error("label is required")},a.prototype.getRows=function(){return this.rows?this.rows:a.DEFAULT_ROWS},a.prototype.onInput=function(a){e.prototype.onInput.call(this,this.inputTransform(this.ensureText(a)))},a.prototype.writeValue=function(e){this.value=this.inputTransform(this.ensureText(e)),this.onChange(this.value)},a.prototype.registerInputTransform=function(e){this.inputTransform=e},a.prototype.ensureText=function(e){return e&&e||""},a}(B);P.DEFAULT_ROWS=5,P.decorators=[{type:a.Component,args:[{selector:"desy-textarea",template:'<div [class]="[\'c-form-group\', this.formGroupClasses] | makeHtmlList" [ngClass]="{\'c-form-group--error\': hasErrorsMessage()}">\r\n\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n [classes]="labelData.classes"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" [for]="id"></desy-label>\r\n\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n\r\n <textarea #textarea\r\n [class]="[\'block mt-sm px-base py-sm border-black rounded font-semibold leading-normal placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base\', classes] | makeHtmlList"\r\n [value]="value" (input)="onInput($event.target.value)"\r\n [ngClass]="{\'border-alert-base ring-2 ring-alert-base\' : hasErrorsMessage()}"\r\n [rows]="getRows()"\r\n [attr.id]="id ? id : null"\r\n [attr.name]="name ? name : null"\r\n [attr.aria-describedby]="[describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="hasErrorsMessage() ? getErrorId() : null"\r\n [attr.aria-invalid]="hasErrorsMessage() ? true : null"\r\n [attr.placeholder]="placeholder ? placeholder : null"\r\n [attr.autocomplete]="autocomplete ? autocomplete : null"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.maxlength]="maxlength"\r\n\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></textarea>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return P})),multi:!0}]}]}],P.ctorParameters=function(){return[]},P.propDecorators={textareaElement:[{type:a.ViewChild,args:["textarea"]}],name:[{type:a.Input}],rows:[{type:a.Input}],placeholder:[{type:a.Input}],describedBy:[{type:a.Input}],formGroupClasses:[{type:a.Input}],classes:[{type:a.Input}],autocomplete:[{type:a.Input}],maxlength:[{type:a.Input}]};var T=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngAfterViewInit=function(){var e=this;this.textareaElement=this.textarea.textareaElement.nativeElement,this.textarea.registerInputTransform(this.inputTransform.bind(this)),this.registerOnChange(this.onChange),this.registerOnTouched(this.onTouch),this.textarea.setDisabledState(this.disabled),setTimeout((function(){return e.textarea.writeValue(e.value)}),50)},a.prototype.ngOnChanges=function(e){var a=this;this.checkRequired(),this.textarea&&setTimeout((function(){return a.textarea.ngOnChanges(e)}),50)},a.prototype.inputTransform=function(e){if(e)if(this.maxlength){var a=this.calculateLenght(e);for(this.displayCountMessage=!this.threshold||a>this.maxlength*this.threshold/100;a>this.maxlength;)e=e.substring(0,e.length-1),a=this.calculateLenght(e);this.remaining=this.maxlength-a}else{var r=e.match(/[\wáéíóúÁÉÍÓÚüÜñÑ]+/g)||[];for(this.displayCountMessage=!this.threshold||r.length>this.maxwords*this.threshold/100;r.length>this.maxwords;)e=e.substring(0,e.lastIndexOf(r.pop()));this.remaining=this.maxwords-r.length}else e="",this.displayCountMessage=!this.threshold,this.remaining=this.maxlength?this.maxlength:this.maxwords;return this.textareaElement.value=e,e},a.prototype.calculateLenght=function(e){var a=e.length;if(this.countbbdd&&e){var r=e.match(/[^A-z0-9_\s.,:;]/g);a+=r?r.length:0}return a},a.prototype.checkRequired=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.maxlength&&!this.maxwords)throw Error("maxlength or maxwords are required");if(!this.hasLabel())throw Error("label is required")},a.prototype.registerOnChange=function(e){this.onChange=e,this.textarea&&(this.textarea.registerOnChange(e),this.onChange=function(e){})},a.prototype.registerOnTouched=function(e){this.onTouch=e,this.textarea&&(this.textarea.registerOnTouched(e),this.onTouch=function(){})},a.prototype.setDisabledState=function(e){this.disabled=e,this.textarea&&this.textarea.setDisabledState(e)},a.prototype.writeValue=function(e){this.value=e,this.textarea&&this.textarea.writeValue(e)},a}(B);T.decorators=[{type:a.Component,args:[{selector:"desy-character-count",template:'<div>\r\n <desy-textarea\r\n [id]="id"\r\n [name]="name"\r\n [describedBy]="id + \'-info\'"\r\n [rows]="rows"\r\n [placeholder]="placeholder"\r\n formGroupClasses="mb-0"\r\n [classes]="[\'js-character-count\', hasErrorsMessage() ? \'border-alert-base ring-2 ring-alert-base\' : null, classes] | makeHtmlList"\r\n [labelRef]="labelRef" [labelData]="labelData" [labelText]="labelText"\r\n [hintRef]="hintRef" [hintData]="hintData" [hintText]="hintText"\r\n [errorMessageRef]="errorMessageRef" [errorMessageData]="errorMessageData" [errorMessageText]="errorMessageText"\r\n [role]="role"\r\n [ariaLabel]="ariaLabel"\r\n [ariaLabelledBy]="ariaLabelledBy"\r\n [ariaHidden]="ariaHidden"\r\n [ariaDisabled]="ariaDisabled"\r\n [ariaControls]="ariaControls"\r\n [ariaCurrent]="ariaCurrent"\r\n [ariaLive]="ariaLive"\r\n [ariaExpanded]="ariaExpanded"\r\n [ariaErrorMessage]="ariaErrorMessage"\r\n [ariaHasPopup]="ariaHasPopup"\r\n [tabindex]="tabindex"></desy-textarea>\r\n\r\n <desy-hint *ngIf="!!displayCountMessage"\r\n [id]="id + \'-info\'" [classes]="[\'mt-xs text-sm\', countMessageClasses] | makeHtmlList" ariaLive="polite"\r\n [text]="\'Puedes escribir hasta \' + remaining + (maxlength ? \' caracteres\' : \' palabras\')"></desy-hint>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return T})),multi:!0}]}]}],T.propDecorators={textarea:[{type:a.ViewChild,args:[P]}],name:[{type:a.Input}],type:[{type:a.Input}],rows:[{type:a.Input}],placeholder:[{type:a.Input}],maxlength:[{type:a.Input}],countbbdd:[{type:a.Input}],maxwords:[{type:a.Input}],threshold:[{type:a.Input}],formGroupClasses:[{type:a.Input}],countMessageClasses:[{type:a.Input}],classes:[{type:a.Input}]};var S=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){this.checkRequired(),this.writeValue(this.value)},a.prototype.getErrorId=function(){return this.errorId?this.errorId:e.prototype.getErrorId.call(this)},a.prototype.writeValue=function(e){this.value=e&&e||"",this.onChange(this.value)},a.prototype.checkRequired=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.hasLabel())throw Error("label is required")},a}(B);S.decorators=[{type:a.Component,args:[{selector:"desy-input",template:'\r\n<div [class]="[\'c-form-group\', this.formGroupClasses] | makeHtmlList" [ngClass]="{\'c-form-group--error\': hasErrorsMessage()}">\r\n\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n [classes]="labelData.classes"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" [for]="id"></desy-label>\r\n\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n <input [class]="[\'c-input block mt-sm px-base py-sm border-black rounded font-semibold leading-normal placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base\', classes] | makeHtmlList"\r\n [ngClass]="{\'border-alert-base ring-2 ring-alert-base\' : getErrorId()}"\r\n [value]="value" (input)="onInput($event.target.value)"\r\n [attr.id]="id ? id : null"\r\n [attr.name]="name ? name : null"\r\n [type]="type ? type : \'text\'"\r\n [attr.aria-describedby]="[describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="getErrorId() ? getErrorId() : null"\r\n [attr.aria-invalid]="getErrorId() ? true : null"\r\n [attr.autocomplete]="autocomplete ? autocomplete : null"\r\n [attr.pattern]="pattern ? pattern : null"\r\n [attr.inputmode]="inputmode ? inputmode : null"\r\n [attr.placeholder]="placeholder ? placeholder : null"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.maxlength]="maxlength ? maxlength : null"\r\n\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return S})),multi:!0}]}]}],S.propDecorators={name:[{type:a.Input}],type:[{type:a.Input}],describedBy:[{type:a.Input}],pattern:[{type:a.Input}],inputmode:[{type:a.Input}],placeholder:[{type:a.Input}],formGroupClasses:[{type:a.Input}],classes:[{type:a.Input}],autocomplete:[{type:a.Input}],maxlength:[{type:a.Input}],errorId:[{type:a.Input}]};var O=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnInit=function(){var e=this;if(this.checkRequiredParams(),!this.value){var a=this.items.find((function(e){return e.selected}));a&&setTimeout((function(){return e.writeValue(a.value)}),10)}},a.prototype.ngOnChanges=function(e){this.checkRequiredParams()},a.prototype.checkRequiredParams=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.items||null==this.items)throw Error("items is required");this.items&&this.items.forEach((function(e,a){if(!e.text)throw Error("text is required in items["+a+"]")}))},a.prototype.isItemSelected=function(e){return this.value?this.value===e.value:e.selected},a}(B);O.decorators=[{type:a.Component,args:[{selector:"desy-select",template:'<div [class]="[\'c-form-group\', this.formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\': hasErrorsMessage()}">\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n [classes]="labelData.classes"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" [for]="id"></desy-label>\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n <select\r\n [class]="[\'c-select block mt-sm transition duration-150 ease-in-out border-black rounded font-semibold leading-normal focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base\', classes] | makeHtmlList"\r\n [value]="value" (input)="onInput($event.target.value)"\r\n [ngClass]="{\'c-select--error border-alert-base ring-2 ring-alert-base\': hasErrorsMessage()}"\r\n [attr.id]="id ? id : null"\r\n [attr.name]="name ? name : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="[describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="hasErrorsMessage() ? getErrorId() : null"\r\n [attr.aria-invalid]="hasErrorsMessage() ? true : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"\r\n [disabled]=disabled>\r\n <option *ngFor="let item of items" [value]="item.value" [disabled]="item.disabled" [selected]="isItemSelected(item)"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.describedBy ? item.describedBy : ariaDescribedBy"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n {{item.text}}\r\n </option>\r\n </select>\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return O})),multi:!0}]}]}],O.propDecorators={name:[{type:a.Input}],items:[{type:a.Input}],describedBy:[{type:a.Input}],formGroupClasses:[{type:a.Input}],classes:[{type:a.Input}]};var R=function(e){function a(){return e.call(this)||this}return u(a,e),a.prototype.onInput=function(e){e&&e.length>0&&e[0]?this.value=e[0]:this.value=null,this.onTouch(),this.onChange(this.value)},a.prototype.ngOnChanges=function(e){this.checkRequiredParams()},a.prototype.checkRequiredParams=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.labelRef&&!this.labelData&&!this.labelText)throw Error("label is required")},a}(B);R.decorators=[{type:a.Component,args:[{selector:"desy-file-upload",template:'<div [class]="[\'c-form-group\', this.formGroupClasses] | makeHtmlList" [ngClass]="{\'c-form-group--error\': hasErrorsMessage()}">\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n [classes]="labelData.classes"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" [for]="id"></desy-label>\r\n\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n <input [class]="[\'mt-sm focus:outline-none focus:bg-warning-base focus:shadow-outline-focus\', classes] | makeHtmlList" type="file"\r\n [ngClass]="{\'c-file-upload--error\' : hasErrorsMessage()}"\r\n (input)="onInput($event.target.files)"\r\n\r\n [attr.id]="id ? id : null"\r\n [attr.name]="name ? name : null"\r\n [attr.aria-describedby]="[describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="hasErrorsMessage() ? getErrorId() : null"\r\n [attr.aria-invalid]="hasErrorsMessage() ? true : null"\r\n [attr.accept]="accept ? accept : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,multi:!0,useExisting:a.forwardRef((function(){return R}))}]}]}],R.ctorParameters=function(){return[]},R.propDecorators={name:[{type:a.Input}],describedBy:[{type:a.Input}],formGroupClasses:[{type:a.Input}],classes:[{type:a.Input}],accept:[{type:a.Input}]};var A=function(e){function a(a){var r=e.call(this)||this;return r.controlContainer=a,r}return u(a,e),a.prototype.ngOnInit=function(){this.checkRequired(),this.onExternalChange()},a.prototype.ngOnChanges=function(){this.checkRequired(),this.onExternalChange()},a.prototype.checkRequired=function(){var e,a;if(!this.id)throw Error("id is required");if(!this.items)throw Error("items are required");try{for(var r=m(this.items),t=r.next();!t.done;t=r.next()){var n=t.value;if(!n.divider&&!n.name)throw Error("item name is required");if(!n.divider&&!this.hasItemLabel(n))throw Error("item label is required")}}catch(a){e={error:a}}finally{try{t&&!t.done&&(a=r.return)&&a.call(r)}finally{if(e)throw e.error}}},a.prototype.writeValue=function(e){var a=this;this.value=e,this.value&&this.items.forEach((function(e){return e.value=a.value[a.getItemName(e)]})),this.onChange(e)},a.prototype.onExternalChange=function(){var e=this;this.value||(this.value={}),this.items.forEach((function(a){return e.value[e.getItemName(a)]=a.value})),this.onChange(this.value)},a.prototype.onInternalChange=function(e,a){this.value||(this.value={}),this.value[e]=a,this.onChange(this.value)},a.prototype.hasFieldset=function(){return!!(this.legendRef||this.fieldsetData||this.legendData&&(this.legendData.text||this.legendData.html)||this.legendText)},a.prototype.getItemName=function(e){return this.namePrefix?this.namePrefix+"-"+e.name:e.name},a.prototype.hasItemLabel=function(e){return!!(e.labelData&&(e.labelData.text||e.labelData.html)||e.labelText)},a}(B);A.decorators=[{type:a.Component,args:[{selector:"desy-input-group",template:'\r\n\x3c!-- Divider no forma parte del formulario, por lo que es reutilizable en cualquier caso --\x3e\r\n<ng-template #itemDivider let-item="item" let-mode="mode">\r\n <div *ngIf="item.divider.html; else notHtml" [ngClass]="item.divider.classes" role="separator" [innerHTML]="item.divider.html"></div>\r\n <ng-template #notHtml>\r\n <div [ngClass]="item.divider.classes" role="separator" >\r\n <p>{{item.divider.text}}</p>\r\n </div>\r\n </ng-template>\r\n</ng-template>\r\n\r\n<ng-template #innerHtml>\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n \x3c!-- Reactive forms --\x3e\r\n <div *ngIf="controlContainer && !ngModelGroup"\r\n [formGroup]="controlContainer.control"\r\n [ngClass]="classes ? classes : \'flex\'"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngFor="let item of items; index as i">\r\n <ng-container *ngTemplateOutlet="item.isSelect && item.selectItems ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelData]="item.labelData ? item.labelData : {text: item.labelText}"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [formControlName]="getItemName(item)"\r\n [items]="item.selectItems"\r\n\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelData]="item.labelData ? item.labelData : {text: item.labelText}"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [formControlName]="getItemName(item)"\r\n [type]="item.type ? item.type : \'text\'"\r\n [inputmode]="item.inputmode"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern"\r\n [placeholder]="item.placeholder"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </ng-template>\r\n </ng-container>\r\n </div>\r\n\r\n \x3c!-- Template-driven forms --\x3e\r\n <desy-template-driven-wrapper *ngIf="controlContainer && ngModelGroup">\r\n <div [ngModelGroup]="ngModelGroup"\r\n [ngClass]="classes ? classes : \'flex\'"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngFor="let item of items; index as i">\r\n <ng-container *ngTemplateOutlet="item.isSelect && item.selectItems ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelData]="item.labelData ? item.labelData : {text: item.labelText}"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item.name, $event)"\r\n [items]="item.selectItems"\r\n\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelData]="item.labelData ? item.labelData : {text: item.labelText}"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item.name, $event)"\r\n [type]="item.type ? item.type : \'text\'"\r\n [inputmode]="item.inputmode"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern"\r\n [placeholder]="item.placeholder"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </ng-template>\r\n </ng-container>\r\n </div>\r\n </desy-template-driven-wrapper>\r\n\r\n \x3c!-- With ngModel--\x3e\r\n <div *ngIf="!controlContainer"\r\n [ngClass]="classes ? classes : \'flex\'"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngFor="let item of items; index as i">\r\n <ng-container *ngTemplateOutlet="item.isSelect && item.selectItems ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelData]="item.labelData ? item.labelData : {text: item.labelText}"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [items]="item.selectItems"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item.name, $event)"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelData]="item.labelData ? item.labelData : {text: item.labelText}"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item.name, $event)"\r\n [type]="item.type ? item.type : \'text\'"\r\n [inputmode]="item.inputmode"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern"\r\n [placeholder]="item.placeholder"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </ng-template>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<div [class]="[\'c-form-group\', formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\' : (hasErrorsMessage() || formGroupClasses == \'c-form-group--error\')}">\r\n\r\n <desy-fieldset *ngIf="fieldsetData"\r\n [classes]="fieldsetData.classes"\r\n [id]="fieldsetData.id"\r\n [legendData]="fieldsetData.legend"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"\r\n [ariaLabel]="fieldsetData.ariaLabel"\r\n [ariaLabelledBy]="fieldsetData.ariaLabelledBy"\r\n [ariaHidden]="fieldsetData.ariaHidden"\r\n [ariaDisabled]="fieldsetData.ariaDisabled"\r\n [ariaControls]="fieldsetData.ariaControls"\r\n [ariaCurrent]="fieldsetData.ariaCurrent"\r\n [ariaLive]="fieldsetData.ariaLive"\r\n [ariaExpanded]="fieldsetData.ariaExpanded"\r\n [ariaHasPopup]="fieldsetData.ariaHasPopup"\r\n [tabindex]="fieldsetData.tabindex"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && legendRef"\r\n [legendRef]="legendRef"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendRef && legendData"\r\n [legendData]="{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendRef && !legendData && legendText"\r\n [legendText]="legendText"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n\r\n <ng-container *ngIf="!hasFieldset()">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ng-container>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return A})),multi:!0}]}]}],A.ctorParameters=function(){return[{type:r.ControlContainer,decorators:[{type:a.Optional}]}]},A.propDecorators={ngModelGroup:[{type:a.Input}],items:[{type:a.Input}],namePrefix:[{type:a.Input}],classes:[{type:a.Input}],formGroupClasses:[{type:a.Input}],errorMessage:[{type:a.Input}],id:[{type:a.Input}],fieldsetData:[{type:a.Input}],legendRef:[{type:a.Input}],legendData:[{type:a.Input}],legendText:[{type:a.Input}]};var z=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){this.checkRequired()},a.prototype.checkRequired=function(){if(!this.name)throw Error("name is required");if(!this.items)throw Error("items is required")},a.prototype.hasFieldset=function(){return!!(this.legendRef||this.fieldsetData||this.legendData&&(this.legendData.text||this.legendData.html)||this.legendText)},a.prototype.getErrorId=function(){return this.hasErrorsMessage()?this.getIdPrefix()+"-error":null},a.prototype.getHintId=function(){return this.hasHint()?this.getIdPrefix()+"-hint":null},a.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:this.name},a}(B);z.decorators=[{type:a.Component,args:[{selector:"desy-radios",template:'<div [class]="[\'c-form-group\', formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\': (hasErrorsMessage() || formGroupClasses == \'c-form-group--error\') }">\r\n\r\n <desy-fieldset *ngIf="fieldsetData"\r\n [classes]="fieldsetData.classes"\r\n [id]="fieldsetData.id"\r\n [legendData]="fieldsetData.legend"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [role]="fieldsetData.role"\r\n [ariaLabel]="fieldsetData.ariaLabel"\r\n [ariaLabelledBy]="fieldsetData.ariaLabelledBy"\r\n [ariaHidden]="fieldsetData.ariaHidden"\r\n [ariaDisabled]="fieldsetData.ariaDisabled"\r\n [ariaControls]="fieldsetData.ariaControls"\r\n [ariaCurrent]="fieldsetData.ariaCurrent"\r\n [ariaLive]="fieldsetData.ariaLive"\r\n [ariaExpanded]="fieldsetData.ariaExpanded"\r\n [ariaHasPopup]="fieldsetData.ariaHasPopup"\r\n [tabindex]="fieldsetData.tabindex"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && legendRef"\r\n [legendRef]="legendRef"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendRef && legendData"\r\n [legendData]="{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendRef && !legendData && legendText"\r\n [legendText]="legendText"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n\r\n <ng-container *ngIf="!hasFieldset()">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #innerHtml>\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n\r\n <div class="c-radios" [ngClass]="classes"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <desy-item-radio *ngFor="let item of items; index as i"\r\n [hasDividers]="hasDividers"\r\n [nameRadios]="name"\r\n [hasError]="hasErrorsMessage()"\r\n [idPrefix]="getIdPrefix()"\r\n [index]="i"\r\n\r\n [text]="item.text"\r\n [html]="item.html"\r\n [value]="item.value"\r\n (check)="onInput($event)"\r\n\r\n [divider]="item.divider"\r\n [checked]="value ? (value == item.value) : item.checked"\r\n [conditional]="item.conditional"\r\n [conditionalHtml]="item.conditionalHtml"\r\n [classes]="item.classes"\r\n\r\n [id]="item.id"\r\n [disabled]="item.disabled"\r\n\r\n [labelData]="item.labelData"\r\n [hintData]="item.hintData"\r\n [hintText]="item.hintText"\r\n\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-item-radio>\r\n </div>\r\n</ng-template>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return z})),multi:!0}]}]}],z.propDecorators={fieldsetData:[{type:a.Input}],legendRef:[{type:a.Input}],legendData:[{type:a.Input}],legendText:[{type:a.Input}],formGroupClasses:[{type:a.Input}],idPrefix:[{type:a.Input}],name:[{type:a.Input}],items:[{type:a.Input}],hasDividers:[{type:a.Input}],hasError:[{type:a.Input}],classes:[{type:a.Input}]};var q=function(e){function a(){var a=e.apply(this,g(arguments))||this;return a.configuredChecks=[],a.configuredValue=[],a.orderedValue=[],a}return u(a,e),a.prototype.ngOnInit=function(){var e=this;this.checkRequired(),this.value&&this.value.length>0?(this.configuredValue=this.value,this.items.forEach((function(a,r){e.configuredChecks[r]=a.checked,e.orderedValue[r]=e.value.findIndex((function(e){return e===a.value}))>-1?a.value:null}))):this.items.forEach((function(a,r){e.configuredChecks[r]=a.checked,e.orderedValue[r]=a.checked?a.value:null})),setTimeout((function(){return e.updateValue()}),10)},a.prototype.ngOnChanges=function(e){var a=this;this.checkRequired(),!function(e,a){var r=!0;if(e&&a)if(e.length===a.length){for(var t=0;t<e.length;t++)if(e[t]!==a[t]){r=!1;break}}else r=!1;return r}(this.value,this.configuredValue)?(this.configuredValue=this.value,this.items.forEach((function(e,r){a.configuredChecks[r]=e.checked,a.orderedValue[r]=a.value.findIndex((function(a){return a===e.value}))>-1?e.value:null,setTimeout((function(){return a.updateValue()}),10)}))):this.items.forEach((function(e,r){e.checked!==a.configuredChecks[r]&&(a.configuredChecks[r]=e.checked,a.orderedValue[r]=e.checked?e.value:null,setTimeout((function(){return a.updateValue()}),10))}))},a.prototype.checkRequired=function(){if(!this.name)throw Error("name is required");if(!this.items)throw Error("items are required")},a.prototype.onCheckItem=function(e,a){this.orderedValue[a]=e,this.updateValue()},a.prototype.updateValue=function(){this.value=this.orderedValue?this.orderedValue.filter((function(e){return e})):[],this.onChange(this.value)},a.prototype.hasFieldset=function(){return!!(this.legendRef||this.fieldsetData||this.legendData&&(this.legendData.text||this.legendData.html)||this.legendText)},a.prototype.getErrorId=function(){return this.hasErrorsMessage()?this.getIdPrefix()+"-error":null},a.prototype.getHintId=function(){return this.hasHint()?this.getIdPrefix()+"-hint":null},a.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:this.name},a}(B);q.decorators=[{type:a.Component,args:[{selector:"desy-checkboxes",template:'<div [class]="[\'c-form-group\', formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\': (hasErrorsMessage() || formGroupClasses == \'c-form-group--error\') }">\r\n\r\n <desy-fieldset *ngIf="fieldsetData"\r\n [classes]="fieldsetData.classes"\r\n [id]="fieldsetData.id"\r\n [legendData]="fieldsetData.legend"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [role]="fieldsetData.role"\r\n [ariaLabel]="fieldsetData.ariaLabel"\r\n [ariaLabelledBy]="fieldsetData.ariaLabelledBy"\r\n [ariaHidden]="fieldsetData.ariaHidden"\r\n [ariaDisabled]="fieldsetData.ariaDisabled"\r\n [ariaControls]="fieldsetData.ariaControls"\r\n [ariaCurrent]="fieldsetData.ariaCurrent"\r\n [ariaLive]="fieldsetData.ariaLive"\r\n [ariaExpanded]="fieldsetData.ariaExpanded"\r\n [ariaHasPopup]="fieldsetData.ariaHasPopup"\r\n [tabindex]="fieldsetData.tabindex"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && legendRef"\r\n [legendRef]="legendRef"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendRef && legendData"\r\n [legendData]="{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendRef && !legendData && legendText"\r\n [legendText]="legendText"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n\r\n <ng-container *ngIf="!hasFieldset()">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n\r\n<ng-template #innerHtml>\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n <div [class]="[\'c-checkboxes\', classes] | makeHtmlList"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <desy-item-checkbox *ngFor="let item of items; index as i"\r\n [hasDividers]="hasDividers"\r\n [nameCheckbox]="name"\r\n [hasError]="hasErrorsMessage()"\r\n [idPrefix]="getIdPrefix()"\r\n [index]="i"\r\n [describedBy]="!hasFieldset() ? describedBy : null"\r\n\r\n [id]="item.id"\r\n [disabled]="item.disabled"\r\n [text]="item.text"\r\n [html]="item.html"\r\n [name]="item.name"\r\n [value]="item.value"\r\n [checked]="!!orderedValue[i]" (check)="onCheckItem($event, i)"\r\n [conditional]="item.conditional"\r\n [conditionalHtml]="item.conditionalHtml"\r\n [isIndeterminate]="item.isIndeterminate"\r\n [classes]="item.classes"\r\n\r\n [labelData]="item.labelData"\r\n [hintData]="item.hintData"\r\n [hintText]="item.hintText"\r\n\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-item-checkbox>\r\n </div>\r\n</ng-template>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return q})),multi:!0}]}]}],q.propDecorators={fieldsetData:[{type:a.Input}],legendRef:[{type:a.Input}],legendData:[{type:a.Input}],legendText:[{type:a.Input}],formGroupClasses:[{type:a.Input}],idPrefix:[{type:a.Input}],name:[{type:a.Input}],items:[{type:a.Input}],hasDividers:[{type:a.Input}],hasError:[{type:a.Input}],classes:[{type:a.Input}],describedBy:[{type:a.Input}]};var F=function(e){function a(a){var r=e.call(this)||this;return r.controlContainer=a,r}return u(a,e),a.prototype.ngOnInit=function(){this.initDefaultItems(),this.checkRequired(),this.onExternalChange()},a.prototype.ngOnChanges=function(){this.initDefaultItems(),this.checkRequired(),this.onExternalChange()},a.prototype.initDefaultItems=function(){this.items||(this.items=[{name:"día",classes:"w-14",maxlength:2},{name:"mes",classes:"w-14",maxlength:2},{name:"año",classes:"w-20",maxlength:4}])},a.prototype.checkRequired=function(){var e,a;if(!this.id)throw Error("id is required");if(this.items)try{for(var r=m(this.items),t=r.next();!t.done;t=r.next()){if(!t.value.name)throw Error("item name is required")}}catch(a){e={error:a}}finally{try{t&&!t.done&&(a=r.return)&&a.call(r)}finally{if(e)throw e.error}}},a.prototype.writeValue=function(e){var a=this;this.value=e,this.value&&this.items.forEach((function(e){return e.value=a.value[a.getItemName(e)]})),this.onChange(e)},a.prototype.onExternalChange=function(){var e=this;this.value||(this.value={}),this.items.forEach((function(a){return e.value[e.getItemName(a)]=a.value})),this.onChange(this.value)},a.prototype.onInternalChange=function(e,a){this.value||(this.value={}),this.value[e]=a?+a:void 0,this.onChange(this.value)},a.prototype.hasFieldset=function(){return!!(this.legendRef||this.fieldsetData||this.legendData&&(this.legendData.text||this.legendData.html)||this.legendText)},a.prototype.getItemName=function(e){return this.namePrefix?this.namePrefix+"-"+e.name:e.name},a.prototype.getItemLabel=function(e){return e.labelData&&(e.labelData.text||e.labelData.html)?e.labelData:{text:e.labelText?e.labelText:e.name.toUpperCase(),classes:"block"}},a}(B);F.decorators=[{type:a.Component,args:[{selector:"desy-date-input",template:'<ng-template #innerHtml>\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n \x3c!-- Reactive forms --\x3e\r\n <div *ngIf="controlContainer && !ngModelGroup"\r\n [formGroup]="controlContainer.control"\r\n [class]="[\'flex\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngFor="let item of items; index as i">\r\n <div class="mr-base">\r\n <desy-input [labelData]="{text: item.label ? item.label : (item.name | titlecase), classes: \'block\'}"\r\n [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [formControlName]="getItemName(item)"\r\n [type]="\'text\'"\r\n [inputmode]="\'numeric\'"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern ? item.pattern : \'[0-9]*\'"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n \x3c!-- Template-driven forms --\x3e\r\n <desy-template-driven-wrapper *ngIf="controlContainer && ngModelGroup">\r\n <div [ngModelGroup]="ngModelGroup"\r\n [class]="[\'flex\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngFor="let item of items; index as i">\r\n <div class="mr-base">\r\n <desy-input [labelData]="getItemLabel(item)"\r\n [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item.name, $event)"\r\n [type]="\'text\'"\r\n [inputmode]="\'numeric\'"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern ? item.pattern : \'[0-9]*\'"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </desy-template-driven-wrapper>\r\n\r\n \x3c!-- With ngModel--\x3e\r\n <div *ngIf="!controlContainer"\r\n [class]="[\'flex\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngFor="let item of items; index as i">\r\n <div class="mr-base">\r\n <desy-input [labelData]="getItemLabel(item)"\r\n [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item.name, $event)"\r\n [type]="\'text\'"\r\n [inputmode]="\'numeric\'"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern ? item.pattern : \'[0-9]*\'"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<div [class]="[\'c-form-group\', formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\' : (hasErrorsMessage() || formGroupClasses == \'c-form-group--error\')}">\r\n\r\n <desy-fieldset *ngIf="fieldsetData"\r\n [classes]="fieldsetData.classes"\r\n [id]="fieldsetData.id"\r\n [legendData]="fieldsetData.legend"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"\r\n [ariaLabel]="fieldsetData.ariaLabel"\r\n [ariaLabelledBy]="fieldsetData.ariaLabelledBy"\r\n [ariaHidden]="fieldsetData.ariaHidden"\r\n [ariaDisabled]="fieldsetData.ariaDisabled"\r\n [ariaControls]="fieldsetData.ariaControls"\r\n [ariaCurrent]="fieldsetData.ariaCurrent"\r\n [ariaLive]="fieldsetData.ariaLive"\r\n [ariaExpanded]="fieldsetData.ariaExpanded"\r\n [ariaHasPopup]="fieldsetData.ariaHasPopup"\r\n [tabindex]="fieldsetData.tabindex"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && legendRef"\r\n [legendRef]="legendRef"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendRef && legendData"\r\n [legendData]="{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendRef && !legendData && legendText"\r\n [legendText]="legendText"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n\r\n <ng-container *ngIf="!hasFieldset()">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ng-container>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return F})),multi:!0}]}]}],F.ctorParameters=function(){return[{type:r.ControlContainer,decorators:[{type:a.Optional}]}]},F.propDecorators={ngModelGroup:[{type:a.Input}],items:[{type:a.Input}],namePrefix:[{type:a.Input}],classes:[{type:a.Input}],formGroupClasses:[{type:a.Input}],errorMessage:[{type:a.Input}],id:[{type:a.Input}],fieldsetData:[{type:a.Input}],legendRef:[{type:a.Input}],legendData:[{type:a.Input}],legendText:[{type:a.Input}]};var V=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.value="",r.clickEvent=new a.EventEmitter,r}return u(r,e),r.prototype.ngOnChanges=function(e){this.checkRequiredParams()},r.prototype.checkRequiredParams=function(){if(!this.id)throw Error("id is required");if(!this.hasLabel())throw Error("label is required")},r.prototype.onClick=function(e){this.disabled||this.clickEvent.emit(e)},r}(B);V.decorators=[{type:a.Component,args:[{selector:"desy-search-bar",template:'<form class="relative" (ngSubmit)="onClick($event)">\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n classes="sr-only"\r\n [isPageHeading]="labelData.isPageHeading"\r\n for="searchbar"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" classes="sr-only" for="searchbar"></desy-label>\r\n <input type="search" name="searchbar"\r\n [class]="[\'c-input block w-full mt-sm pr-12 border-black rounded font-semibold leading-normal placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base\', classes] | makeHtmlList"\r\n [ngClass]="{\'border-alert-base ring-2 ring-alert-base\': hasErrorsMessage()}"\r\n [value]="value" (input)="onInput($event.target.value)"\r\n [attr.id]="id ? id : null"\r\n [attr.aria-describedby]="[describedBy, getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="hasErrorsMessage() ? getErrorId() : null"\r\n [attr.aria-invalid]="hasErrorsMessage() ? true : null"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.placeholder]="placeholder ? placeholder : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <button type="submit" [attr.disabled]="disabled ? \'disabled\' : null" [attr.aria-disabled]="disabled ? \'true\' : null"\r\n [class]="[\'absolute top-0 right-0 m-sm p-0.5 text-primary-base hover:text-primary-dark focus:bg-warning-base focus:outline-none focus:shadow-outline-focus\', buttonClasses] | makeHtmlList">\r\n <span class="sr-only">Buscar</span>\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="1.375em" height="1.375em" aria-hidden="true"><path d="M23.498 23.487a1.713 1.713 0 000-2.421l-4.572-4.575a.43.43 0 01-.062-.539 10.283 10.283 0 10-2.911 2.911.43.43 0 01.539.055l4.574 4.574a1.712 1.712 0 002.433-.005zM3.451 10.289a6.85 6.85 0 116.85 6.85 6.85 6.85 0 01-6.85-6.85z" fill="currentColor"/></svg>\r\n </button>\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n</form>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:a.forwardRef((function(){return V})),multi:!0}]}]}],V.propDecorators={describedBy:[{type:a.Input}],classes:[{type:a.Input}],buttonClasses:[{type:a.Input}],placeholder:[{type:a.Input}],clickEvent:[{type:a.Output}]};var N=function(){function e(e){this.templateRef=e}return e.prototype.ngOnChanges=function(e){var a,r;if(this.item)this.item.conditionalHtml=this.templateRef;else{if(!this.value||!this.items)throw Error("item or value + items are required");try{for(var t=m(this.items),n=t.next();!n.done;n=t.next()){var i=n.value;i.value===this.value&&(i.conditionalHtml=this.templateRef)}}catch(e){a={error:e}}finally{try{n&&!n.done&&(r=t.return)&&r.call(t)}finally{if(a)throw a.error}}}},e}();N.decorators=[{type:a.Directive,args:[{selector:"[desyCondition]"}]}],N.ctorParameters=function(){return[{type:a.TemplateRef}]},N.propDecorators={item:[{type:a.Input}],value:[{type:a.Input}],items:[{type:a.Input}]};var _=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.closeModal=new a.EventEmitter,r.clickButton=new a.EventEmitter,r}return u(r,e),r.prototype.closeDialog=function(){this.closeModal.emit()},r.prototype.getType=function(){var e;return this.icon.type&&(e=this.icon.type.toLocaleLowerCase()),e},r.prototype.ngOnChanges=function(e){if(!this.title)throw new Error("title are required");if(f(this.title.text,this.title.html),!this.description)throw new Error("description are required");if(f(this.description.text,this.description.html),!this.id)throw new Error("id are required")},r.prototype.clickButtonEmit=function(e){this.clickButton.emit(e)},r}(h);_.decorators=[{type:a.Component,args:[{selector:"desy-modal",template:'<div [class]="(classes ? \'relative max-w-lg mx-auto p-base lg:p-lg border border-neutral-base rounded bg-white \' + classes : \'relative max-w-lg mx-auto p-base lg:p-lg border border-neutral-base rounded bg-white\')"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div *ngIf="icon" class="flex justify-center p-base">\r\n <ng-container *ngIf="!icon.html; else elseBlock">\r\n <ng-container [ngSwitch]="getType()">\r\n <ng-container *ngSwitchCase="\'discard\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-alert-light" aria-label="Descartar" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M4.375 70a65.625 65.625 0 10131.25 0 65.625 65.625 0 10-131.25 0zM23.596 116.404l92.808-92.808" stroke-width="8.749995"/></g></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'delete\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-alert-light" aria-label="Borrar" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M100.625 122.5h-61.25a8.75 8.75 0 01-8.75-8.75V35h78.75v78.75a8.75 8.75 0 01-8.75 8.75zM56.875 96.25v-35M83.125 96.25v-35M13.125 35h113.75M83.125 17.5h-26.25a8.75 8.75 0 00-8.75 8.75V35h43.75v-8.75a8.75 8.75 0 00-8.75-8.75z" stroke-width="8.749995"/></g></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'edit\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-primary-light" aria-label="Editar" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M73.89 82.46l-21.652 3.098 3.091-21.66 55.685-55.685a13.125 13.125 0 0118.562 18.562z" stroke-width="8.749995"/><path d="M111.545 83.125v43.75a8.75 8.75 0 01-8.75 8.75h-87.5a8.75 8.75 0 01-8.75-8.75v-87.5a8.75 8.75 0 018.75-8.75h43.75" stroke-width="8.749995"/></g></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'changes\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-primary-light" aria-label="Cambios" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M107.112 40.833a48.125 48.125 0 00-85.237 30.608v13.142M35 104.463a48.125 48.125 0 0083.125-33.022v-8.75" stroke-width="8.749995"/><path d="M4.375 67.066l17.5 17.5 17.5-17.5M135.625 80.19l-17.5-17.5-17.5 17.5" stroke-width="8.749995"/></g></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'publish\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-primary-light" aria-label="Publicar" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M16.094 91.17a9.707 9.707 0 01-5.145-17.938L118.767 5.833a9.7 9.7 0 0114.676 10.034l-21 111.842a9.707 9.707 0 01-17.301 4.031L64.75 91.17z" stroke-width="8.749995"/><path d="M64.75 91.17H50.167v30.163a9.7 9.7 0 0015.166 8.015l18.539-12.635zM64.744 91.17l64.633-85.11" stroke-width="8.749995"/></g></svg>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseBlock>\r\n <div [outerHTML]="icon.html | innerHtml"></div> \x3c!-- con outerHtml se reemplaza el div --\x3e\r\n </ng-template>\r\n \r\n </div>\r\n \r\n <h2 [attr.id]="\'label-\' + id"\r\n [class]="title.classes ? title.classes : \'c-h2 px-base text-center focus:outline-none focus:underline\'"\r\n tabindex="-1"\r\n [desyInnerContent]="title.html ? title.html : title.text" [isHtml]="title.html"></h2>\r\n \r\n <ng-container *ngIf="description">\r\n <p [class]="description.classes ? description.classes : \'c-p my-base text-center\'"\r\n [desyInnerContent]="description.html ? description.html : description.text" [isHtml]="description.html"></p>\r\n </ng-container>\r\n <ng-container *ngIf="caller">\r\n <div class="p-base">\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <div class="flex flex-wrap w-full" [ngClass]="itemsPrimary && itemsSecondary ? \'justify-between\' : \'justify-center\'">\r\n <ng-container *ngIf="itemsPrimary">\r\n <div class="mt-sm" *ngIf="itemsPrimary.length==1">\r\n <desy-button (clickEvent)="clickButtonEmit($event)" [text]="itemsPrimary[0].text" [classes]="itemsPrimary[0].classes"></desy-button>\r\n </div>\r\n\r\n <ul *ngIf="itemsPrimary.length > 1">\r\n <ng-container *ngFor="let item of itemsPrimary">\r\n <li class="lg:inline-block mt-sm">\r\n <desy-button (clickEvent)="clickButtonEmit($event)" [text]="item.text" [classes]="item.classes"></desy-button>\r\n </li> \r\n </ng-container>\r\n \r\n </ul>\r\n </ng-container>\r\n <ng-container *ngIf="itemsSecondary">\r\n <div class="mt-sm" *ngIf="itemsSecondary.length==1">\r\n <desy-button (clickEvent)="clickButtonEmit($event)" [text]="itemsSecondary[0].text" [classes]="itemsSecondary[0].classes"></desy-button>\r\n </div>\r\n\r\n <ul *ngIf="itemsSecondary.length > 1">\r\n <ng-container *ngFor="let item of itemsSecondary">\r\n <li class="lg:inline-block mt-sm">\r\n <desy-button (clickEvent)="clickButtonEmit($event)" [text]="item.text" [classes]="item.classes"></desy-button>\r\n </li> \r\n </ng-container>\r\n </ul>\r\n </ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf="isDismissible">\r\n <div class="absolute top-0 right-0 p-sm lg:p-base">\r\n <button (click)="closeDialog()" class="p-sm focus:bg-warning-base focus:border-warning-base focus:shadow-outline-black focus:text-black focus:outline-none" aria-label="X: Cerrar modal">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4" aria-hidden="true" role="presentation"><path d="M85.91 71.77a2.5 2.5 0 010-3.54l46.16-46.16a10 10 0 10-14.14-14.14L71.77 54.09a2.5 2.5 0 01-3.54 0L22.07 7.93A10 10 0 007.93 22.07l46.16 46.16a2.5 2.5 0 010 3.54L7.93 117.93a10 10 0 0014.14 14.14l46.16-46.16a2.5 2.5 0 013.54 0l46.16 46.16a10 10 0 0014.14-14.14z" fill="currentColor"/></svg>\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n</div>\r\n'}]}],_.propDecorators={title:[{type:a.Input}],description:[{type:a.Input}],itemsPrimary:[{type:a.Input}],itemsSecondary:[{type:a.Input}],icon:[{type:a.Input}],isDismissible:[{type:a.Input}],id:[{type:a.Input}],classes:[{type:a.Input}],caller:[{type:a.Input}],closeModal:[{type:a.Output}],clickButton:[{type:a.Output}]};var G=function(){function e(){}return e.getFirstFocusableElement=function(a){var r,t='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';if(!(r=a?a.querySelectorAll(t):document.querySelectorAll(t))||0===r.length)return null;for(var n=null,i=0;i<r.length;){try{var l=r.item(i);if(e.isFocusable(l)){n=l;break}}catch(e){}i++}return n},e.isFocusable=function(e){if(e.tabIndex>0||0===e.tabIndex&&null!==e.getAttribute("tabIndex"))return!0;if(e.disabled)return!1;switch(e.nodeName){case"A":return!!e.href&&"ignore"!==e.rel;case"INPUT":return"hidden"!==e.type&&"file"!==e.type;case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},e}(),U=0,j=function(e){function r(r,t,n){var i=e.call(this)||this;return i.cdRef=r,i.focusTrapFactory=t,i.factoryResolver=n,i.activeChange=new a.EventEmitter,i.lastActiveState=!1,i.clickOutsideEnabled=!1,i}return u(r,e),r.prototype.ngOnChanges=function(){this.focusTrapWrapper&&this.handleActiveState()},r.prototype.ngAfterViewInit=function(){if(!this.id)throw Error("id is required");if(!this.caller&&!this.callerType)throw Error("caller is required");if(this.callerType){var e=this.factoryResolver.resolveComponentFactory(this.callerType),a=this.container.createComponent(e);this.onCallerCreationCallback&&this.onCallerCreationCallback(this,a)}this.focusTrapWrapper.nativeElement.children&&1===this.focusTrapWrapper.nativeElement.children.length&&(this.childElem=this.focusTrapWrapper.nativeElement.children[0]),this.handleActiveState(),this.cdRef.detectChanges()},r.prototype.ngOnDestroy=function(){this.active=!1,this.handleActiveState()},r.prototype.dismiss=function(){this.activeChange.emit(!1)},r.prototype.onKeyUp=function(e){e.key===r.KEY_CODE_ESC&&(e.stopPropagation(),this.dismiss())},r.prototype.handleActiveState=function(){var e=this;if(this.focusTrap||(this.focusTrap=this.focusTrapFactory.create(this.focusTrapWrapper.nativeElement)),this.active!==this.lastActiveState){var a;if(this.lastActiveState=this.active,this.active&&0===U?document.body.classList.add(r.DIALOG_OPEN_CLASS):this.active||1!==U||(document.body.classList.remove(r.DIALOG_OPEN_CLASS),0===document.body.classList.length&&document.body.removeAttribute("class")),this.active)setTimeout((function(){return e.focusTrap.focusInitialElement()})),U++;else this.focusTrap.destroy(),(a=this.focusOnClose?"string"==typeof this.focusOnClose?document.getElementById(this.focusOnClose):this.focusOnClose:G.getFirstFocusableElement())&&setTimeout((function(){return a.focus()})),U--;setTimeout((function(){return e.clickOutsideEnabled=e.active}))}},r.prototype.handleClickOutside=function(){this.dismissOnBackdrop&&this.dismiss()},r}(h);j.DIALOG_OPEN_CLASS="has-dialog",j.KEY_CODE_ESC="Escape",j.decorators=[{type:a.Component,args:[{selector:"desy-dialog",template:'<div class="dialog-backdrop" [ngClass]="{\'active\': active}"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.aria-modal]="ariaModal ? ariaModal : null">\r\n <div #focusTrapWrapper [id]="id" [class]="classes"\r\n [desyClickOutside]="clickOutsideEnabled" (clickOutside)="handleClickOutside()" [desyClickOutsideElem]="childElem">\r\n <ng-template #container></ng-template>\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n</div>\r\n'}]}],j.ctorParameters=function(){return[{type:a.ChangeDetectorRef},{type:t.ConfigurableFocusTrapFactory},{type:a.ComponentFactoryResolver}]},j.propDecorators={container:[{type:a.ViewChild,args:["container",{read:a.ViewContainerRef}]}],focusTrapWrapper:[{type:a.ViewChild,args:["focusTrapWrapper"]}],active:[{type:a.Input}],activeChange:[{type:a.Output}],id:[{type:a.Input}],caller:[{type:a.Input}],classes:[{type:a.Input}],focusOnClose:[{type:a.Input}],dismissOnBackdrop:[{type:a.Input}],onKeyUp:[{type:a.HostListener,args:["document:keyup",["$event"]]}]};var $=function(){function e(e,a,r){this.factoryResolver=e,this.defaultInjector=a,this.appRef=r}return e.prototype.openDialog=function(e,r){var t=this;return new Promise((function(n,i){e||i("caller is required"),r||i("dialogOptions is required");var l=t.createDialog(r),s={dialog:l};e instanceof a.Type?(l.instance.callerType=e,l.instance.onCallerCreationCallback=function(e,a){s.component=a,n(s)}):e instanceof a.TemplateRef?(l.instance.caller=e,n(s)):(l.instance.callerType=_,l.instance.onCallerCreationCallback=function(a,r){t.initModal(a,r,e),s.component=r,n(s)})}))},e.prototype.closeDialog=function(e){if(!e)throw Error("dialog is required");e instanceof a.ComponentRef?e.instance.dismiss():e.dismiss()},e.prototype.onCloseDialog=function(e){return new Promise((function(r){var t=(e instanceof a.ComponentRef?e.instance:e).activeChange.subscribe((function(){r(),t.unsubscribe()}))}))},e.prototype.createDialog=function(e){var a,r=this.factoryResolver.resolveComponentFactory(j);if(e.rootViewContainer)a=e.rootViewContainer.createComponent(r);else{a=r.create(this.defaultInjector),this.appRef.attachView(a.hostView);var t=a.hostView.rootNodes[0];document.body.appendChild(t)}return a.instance.active=!0,e&&Object.assign(a.instance,e),this.onCloseDialog(a).then((function(){return a.destroy()})),a},e.prototype.initModal=function(e,a,r){var t=this;if(a.instance.title=r.title,a.instance.description=r.description,a.instance.itemsPrimary=r.itemsPrimary,a.instance.itemsSecondary=r.itemsSecondary,a.instance.icon=r.icon,a.instance.isDismissible=r.isDismissible,a.instance.id=r.id,a.instance.classes=r.classes,a.instance.caller=r.caller,r.isDismissible)var n=a.instance.closeModal.subscribe((function(){t.closeDialog(e),n.unsubscribe()}))},e}();$.ɵprov=a.ɵɵdefineInjectable({factory:function(){return new $(a.ɵɵinject(a.ComponentFactoryResolver),a.ɵɵinject(a.INJECTOR),a.ɵɵinject(a.ApplicationRef))},token:$,providedIn:"root"}),$.decorators=[{type:a.Injectable,args:[{providedIn:"root"}]}],$.ctorParameters=function(){return[{type:a.ComponentFactoryResolver},{type:a.Injector},{type:a.ApplicationRef}]};var W=function(e){function a(a){var r=e.call(this)||this;return r.location=a,r}return u(a,e),a.prototype.ngOnChanges=function(e){if(!this.items)throw new Error("items are required");this.items.forEach((function(e){f(e.text,e.html)}))},a.prototype.getLength=function(){var e=this.items.length;return this.hasBackButton&&(e+=1),e},a.prototype.goBack=function(){this.location.back()},a}(h);W.decorators=[{type:a.Component,args:[{selector:"desy-breadcrumbs",template:'<nav [class]="(classes ? \'c-breadcrumbs \' + classes : \'c-breadcrumbs\') + (collapseOnMobile==true ? \' \' + \'c-breadcrumbs--collapse-on-mobile\' : \'\')" \r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : \'Estás en: \'"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <ol [class]="\'lg:grid lg:grid-cols-max-content-\'+getLength()+\' w-full items-baseline text-sm\'">\r\n <li *ngIf="hasBackButton" class="c-breadcrumbs__backbutton flex items-baseline font-bold text-primary-base">\r\n <a (click)="goBack()" class="px-sm border-r border-neutral-base focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black cursor-pointer">\r\n <span class="sr-only">Volver a la página anterior</span><span aria-hidden="true" title="Volver a la página anterior">←</span>\r\n </a>\r\n </li>\r\n <ng-container *ngFor="let item of items; last as isLast">\r\n <li *ngIf="!isLast" class="flex items-baseline mb-sm py-xs text-neutral-dark" [ngClass]="{\'hover:text-black\' : item.routerLink}">\r\n <a *ngIf="item.routerLink" class="underline focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black truncate" \r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html" [routerLink]="item.routerLink"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex"></a>\r\n <span *ngIf="!item.routerLink" class="no-underline truncate" [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex"></span>\r\n </li>\r\n <li *ngIf="isLast" class="flex items-baseline mb-sm py-xs text-neutral-dark flex-1 font-semibold" [ngClass]="{\'hover:text-black\' : item.routerLink}">\r\n <a *ngIf="item.routerLink" class="underline focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black text-black font-semibold no-underline truncate"\r\n aria-current="page" [routerLink]="item.routerLink"\r\n\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex"><strong [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></strong></a>\r\n <span *ngIf="!item.routerLink" class="no-underline text-black truncate" aria-current="page"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex"><strong [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></strong></span>\r\n </li>\r\n </ng-container>\r\n </ol>\r\n</nav>\r\n'}]}],W.ctorParameters=function(){return[{type:n.Location}]},W.propDecorators={items:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}],collapseOnMobile:[{type:a.Input}],hasBackButton:[{type:a.Input}]};var Y=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.getHomeUrl=function(){return v.getExternalHref(this.homepageUrl)},a}(h);Y.decorators=[{type:a.Component,args:[{selector:"desy-header",template:'<header [ngClass]="classes"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <div [ngClass]="containerClasses">\r\n <nav aria-labelledby="skip-link">\r\n <desy-skip-link text="Saltar al contenido principal" [id]="\'skip-link\'"></desy-skip-link>\r\n </nav>\r\n <div class="flex h-1 bg-red-700">\r\n <div class="flex-auto bg-yellow-300 h-full"></div>\r\n <div class="flex-auto bg-red-500 h-full"></div>\r\n <div class="flex-auto bg-red-800 h-full"></div>\r\n </div>\r\n <div class="bg-black">\r\n <div class="max-w-screen-xl mx-auto px-base">\r\n <div class="flex items-center justify-between h-14">\r\n <div class="flex items-center">\r\n <div class="flex items-center flex-shrink-0">\r\n <a *ngIf="homepageRouterLink || !homepageUrl" [routerLink]="homepageRouterLink" [fragment]="homepageFragment" class="text-white focus:outline-none focus:shadow-outline-warning" title="Ir a la página de inicio">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 216.878 51.894" width="144" height="32" [ngClass]="{\'sm:block\': expandedLogo}" class="fill-current hidden" aria-label="Gobierno de Aragón" role="img"><title>Ir a la página de inicio</title><path data-name="img" d="M51.89 51.892H0V0h51.89zm-2.5-2.494v-8.96L38.906 42.33a17.743 17.743 0 01-3.136.278 18.211 18.211 0 01-9.225-2.517 21.42 21.42 0 00-9.317-2.082 20.786 20.786 0 00-4.9.571c-.743.15-1.526.292-2.282.429l-.125.023-.613.112-4.928.913-1.875.382V48.934l1.527-.247 22.517-4.133a17.458 17.458 0 013.236-.3 18.06 18.06 0 017.317 1.527l5.442 2.854a9.431 9.431 0 002.372.679 7.837 7.837 0 001.147.083h.029a16 16 0 003.3-.464zm0 0zm0-8.96V27.195a8.1 8.1 0 00-4.062-1.2 7.451 7.451 0 00-1.162.094l-10.852 2.009c-.026 0-2.878.518-4.281.779L17.12 31.048a18.266 18.266 0 01-2.5.173 18.246 18.246 0 01-7.67-1.683l-4.447-2.34V33.636l1.511-.281a19.009 19.009 0 014.442-.517 17.882 17.882 0 018.168 1.894 23.042 23.042 0 0010.673 2.617 23.64 23.64 0 002.884-.178l19.21-3.535zm0-13.243v-8.778l-1.341.282a19.092 19.092 0 01-4.442.516 17.873 17.873 0 01-8.169-1.894 23.049 23.049 0 00-10.672-2.618 23.464 23.464 0 00-2.884.179L2.5 18.417v6.538a7.558 7.558 0 003.968 1.128 9.406 9.406 0 001.426-.116l10.852-2.008c.027-.005 2.876-.518 4.28-.78l11.914-2.174a18.122 18.122 0 012.5-.173 18.236 18.236 0 017.67 1.683l4.277 2.441v-4.427zm0-8.778V2.981l-7.4 1.524-7.35 1.328-7.035 1.277a23.976 23.976 0 01-5.306.62 16.834 16.834 0 01-4.517-.57 19.322 19.322 0 01-5.084-2.209 95.551 95.551 0 00-1.3-.712c-.285-.139-.571-.291-.846-.437h-.005a9.085 9.085 0 00-2.252-.954 7.331 7.331 0 00-1.918-.341H2.5v9c1.433-.237 2.593-.442 3.651-.647l7.517-1.345a19.656 19.656 0 012.63-.178 17.162 17.162 0 012.63.2 22.628 22.628 0 017.434 2.705 21.654 21.654 0 008.584 1.768h.006a20.746 20.746 0 003.173-.242l11.264-2.256v6.907zM2.5 2.98v-.472h2.95a14.929 14.929 0 00-2.949.473z"/><path data-name="typo" d="M59.352 45.091V32.36h2.074c4.307 0 6.668 2.266 6.668 6.382 0 4.212-2.265 6.349-6.7 6.349zm15.489-16.974v21.281h14.1v-4.307h-9.348v-4.85h9.253v-4.308h-9.253v-3.542h9.348v-4.275zm32.389 0l-7.757 21.282h5.041l2.3-6.477h6.509l2.265 6.477h5.138l-7.912-21.281zm2.807 4.4l-1.978 6.287h3.989zm63.051 6h-4.754v6.7a6.262 6.262 0 01-2.042.288c-3.638 0-6.317-2.84-6.317-6.7 0-4.147 2.84-6.923 7.051-6.923a11.142 11.142 0 016.062 1.851v-4.849a17.388 17.388 0 00-6.477-1.276c-6.891 0-11.677 4.626-11.677 11.262 0 6.54 4.689 10.976 11.677 10.976a19.329 19.329 0 006.477-1.117zm24.023.192c0-6.35-4.722-10.976-11.167-10.976a11.024 11.024 0 00.16 22.047c6.445.001 11.007-4.593 11.007-11.07zm-11.1-6.637c-3.573 0-5.966 2.713-5.966 6.7s2.456 6.7 6.062 6.7c3.573 0 5.934-2.681 5.934-6.7s-2.428-6.699-6.033-6.699zm12.94-3.956v21.281h4.85v-13.56l8.58 13.56h4.5V28.116h-4.849l.006 13.235-8.237-13.235zm-126.6-15h-4.754v6.7a6.266 6.266 0 01-2.042.287c-3.637 0-6.317-2.84-6.317-6.7 0-4.148 2.84-6.923 7.051-6.923a11.152 11.152 0 016.062 1.85V3.481a17.386 17.386 0 00-6.477-1.277c-6.891 0-11.677 4.626-11.677 11.263 0 6.54 4.69 10.974 11.677 10.974a19.342 19.342 0 006.477-1.116zm24 .191c0-6.349-4.722-10.975-11.167-10.975a11.023 11.023 0 00.159 22.046c6.437-.002 11-4.597 11-11.074zm-11.1-6.636c-3.573 0-5.966 2.711-5.966 6.7s2.457 6.7 6.062 6.7c3.573 0 5.935-2.68 5.935-6.7s-2.437-6.702-6.042-6.702zm12.695-3.956v21.281h8.806c4.69 0 7.433-2.33 7.433-6.318 0-2.743-1.563-4.721-4.435-5.551a4.665 4.665 0 002.9-4.371c.032-3.382-2.265-5.041-6.859-5.041zm7.083 7.944c2.074 0 2.9-.575 2.9-2.01 0-1.372-.8-1.882-3.062-1.882h-2.074v3.892zm.638 9c2.36 0 3.381-.734 3.381-2.457 0-1.786-1.053-2.489-3.573-2.489h-2.679v4.946zm14.274-16.942h-4.768v21.281h4.754zm2.07 0v21.281h14.1v-4.307h-9.349v-4.85h9.253v-4.307h-9.253V6.993h9.349V2.718zm75.145 10.592c0-6.349-4.722-10.975-11.167-10.975a11.023 11.023 0 00.16 22.046c6.435-.004 10.997-4.599 10.997-11.076zm-11.1-6.636c-3.573 0-5.966 2.711-5.966 6.7s2.456 6.7 6.062 6.7c3.573 0 5.934-2.68 5.934-6.7s-2.438-6.704-6.043-6.704zm-37.783 32.132l-2.01-6.287-1.978 6.287zM126.43 49.398v-8.743h.606c3.063 0 3.382.319 5.423 5.583a10.7 10.7 0 00.447 1.085l.415.989a9.523 9.523 0 00.51 1.085h6.911l2.3-6.477h6.509l2.265 6.477h5.137l-7.912-21.281h-5.583l-6.288 17.258a89.817 89.817 0 01-1.549-3.411c-.83-1.819-1.308-2.362-2.84-3a5.086 5.086 0 003.892-5.106c0-3.828-2.52-5.743-7.593-5.743h-7.53v21.281zm0-12.763h2.105c2.042 0 3.063-.734 3.063-2.265s-.926-2.2-3-2.2h-2.17zm16.613-12.643V15.25h.605c3.063 0 3.382.319 5.424 5.583a10.427 10.427 0 00.447 1.085l.415.989a9.465 9.465 0 00.51 1.085h9.578l.027-13.652 8.555 13.652h4.5V2.711h-4.849l.021 13.056-8.252-13.056h-4.851v19.812a44.3 44.3 0 01-2.942-5.962c-.829-1.818-1.307-2.36-2.839-3a5.085 5.085 0 003.892-5.1c0-3.829-2.521-5.743-7.594-5.743h-7.529v21.281zm0-12.762h2.106c2.041 0 3.062-.734 3.062-2.265s-.924-2.2-3-2.2h-2.169zM54.53 28.117v21.281h7.114c7.21 0 11.454-3.956 11.454-10.657 0-6.669-4.339-10.625-11.709-10.625z" fill-rule="evenodd"/></svg>\r\n <svg class="w-8 h-8 fill-current" [ngClass]="{\'sm:hidden\': expandedLogo}" viewBox="0 0 51.894 51.894" width="32" height="32" aria-label="Gobierno de Aragón" role="img"><title>Ir a la página de inicio</title><path data-name="img" d="M51.89 51.892H0V0h51.89zm-2.5-2.494v-8.96L38.906 42.33a17.743 17.743 0 01-3.136.278 18.211 18.211 0 01-9.225-2.517 21.42 21.42 0 00-9.317-2.082 20.786 20.786 0 00-4.9.571c-.743.15-1.526.292-2.282.429l-.125.023-.613.112-4.928.913-1.875.382V48.934l1.527-.247 22.517-4.133a17.458 17.458 0 013.236-.3 18.06 18.06 0 017.317 1.527l5.442 2.854a9.431 9.431 0 002.372.679 7.837 7.837 0 001.147.083h.029a16 16 0 003.3-.464zm0 0zm0-8.96V27.195a8.1 8.1 0 00-4.062-1.2 7.451 7.451 0 00-1.162.094l-10.852 2.009c-.026 0-2.878.518-4.281.779L17.12 31.048a18.266 18.266 0 01-2.5.173 18.246 18.246 0 01-7.67-1.683l-4.447-2.34V33.636l1.511-.281a19.009 19.009 0 014.442-.517 17.882 17.882 0 018.168 1.894 23.042 23.042 0 0010.673 2.617 23.64 23.64 0 002.884-.178l19.21-3.535zm0-13.243v-8.778l-1.341.282a19.092 19.092 0 01-4.442.516 17.873 17.873 0 01-8.169-1.894 23.049 23.049 0 00-10.672-2.618 23.464 23.464 0 00-2.884.179L2.5 18.417v6.538a7.558 7.558 0 003.968 1.128 9.406 9.406 0 001.426-.116l10.852-2.008c.027-.005 2.876-.518 4.28-.78l11.914-2.174a18.122 18.122 0 012.5-.173 18.236 18.236 0 017.67 1.683l4.277 2.441v-4.427zm0-8.778V2.981l-7.4 1.524-7.35 1.328-7.035 1.277a23.976 23.976 0 01-5.306.62 16.834 16.834 0 01-4.517-.57 19.322 19.322 0 01-5.084-2.209 95.551 95.551 0 00-1.3-.712c-.285-.139-.571-.291-.846-.437h-.005a9.085 9.085 0 00-2.252-.954 7.331 7.331 0 00-1.918-.341H2.5v9c1.433-.237 2.593-.442 3.651-.647l7.517-1.345a19.656 19.656 0 012.63-.178 17.162 17.162 0 012.63.2 22.628 22.628 0 017.434 2.705 21.654 21.654 0 008.584 1.768h.006a20.746 20.746 0 003.173-.242l11.264-2.256v6.907zM2.5 2.98v-.472h2.95a14.929 14.929 0 00-2.949.473z"/></svg>\r\n </a>\r\n <a *ngIf="!homepageRouterLink && homepageUrl" [href]="getHomeUrl()" class="text-white focus:outline-none focus:shadow-outline-warning" title="Ir a la página de inicio">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 216.878 51.894" width="144" height="32" [ngClass]="{\'sm:block\': expandedLogo}" class="fill-current hidden" aria-label="Gobierno de Aragón" role="img"><title>Ir a la página de inicio</title><path data-name="img" d="M51.89 51.892H0V0h51.89zm-2.5-2.494v-8.96L38.906 42.33a17.743 17.743 0 01-3.136.278 18.211 18.211 0 01-9.225-2.517 21.42 21.42 0 00-9.317-2.082 20.786 20.786 0 00-4.9.571c-.743.15-1.526.292-2.282.429l-.125.023-.613.112-4.928.913-1.875.382V48.934l1.527-.247 22.517-4.133a17.458 17.458 0 013.236-.3 18.06 18.06 0 017.317 1.527l5.442 2.854a9.431 9.431 0 002.372.679 7.837 7.837 0 001.147.083h.029a16 16 0 003.3-.464zm0 0zm0-8.96V27.195a8.1 8.1 0 00-4.062-1.2 7.451 7.451 0 00-1.162.094l-10.852 2.009c-.026 0-2.878.518-4.281.779L17.12 31.048a18.266 18.266 0 01-2.5.173 18.246 18.246 0 01-7.67-1.683l-4.447-2.34V33.636l1.511-.281a19.009 19.009 0 014.442-.517 17.882 17.882 0 018.168 1.894 23.042 23.042 0 0010.673 2.617 23.64 23.64 0 002.884-.178l19.21-3.535zm0-13.243v-8.778l-1.341.282a19.092 19.092 0 01-4.442.516 17.873 17.873 0 01-8.169-1.894 23.049 23.049 0 00-10.672-2.618 23.464 23.464 0 00-2.884.179L2.5 18.417v6.538a7.558 7.558 0 003.968 1.128 9.406 9.406 0 001.426-.116l10.852-2.008c.027-.005 2.876-.518 4.28-.78l11.914-2.174a18.122 18.122 0 012.5-.173 18.236 18.236 0 017.67 1.683l4.277 2.441v-4.427zm0-8.778V2.981l-7.4 1.524-7.35 1.328-7.035 1.277a23.976 23.976 0 01-5.306.62 16.834 16.834 0 01-4.517-.57 19.322 19.322 0 01-5.084-2.209 95.551 95.551 0 00-1.3-.712c-.285-.139-.571-.291-.846-.437h-.005a9.085 9.085 0 00-2.252-.954 7.331 7.331 0 00-1.918-.341H2.5v9c1.433-.237 2.593-.442 3.651-.647l7.517-1.345a19.656 19.656 0 012.63-.178 17.162 17.162 0 012.63.2 22.628 22.628 0 017.434 2.705 21.654 21.654 0 008.584 1.768h.006a20.746 20.746 0 003.173-.242l11.264-2.256v6.907zM2.5 2.98v-.472h2.95a14.929 14.929 0 00-2.949.473z"/><path data-name="typo" d="M59.352 45.091V32.36h2.074c4.307 0 6.668 2.266 6.668 6.382 0 4.212-2.265 6.349-6.7 6.349zm15.489-16.974v21.281h14.1v-4.307h-9.348v-4.85h9.253v-4.308h-9.253v-3.542h9.348v-4.275zm32.389 0l-7.757 21.282h5.041l2.3-6.477h6.509l2.265 6.477h5.138l-7.912-21.281zm2.807 4.4l-1.978 6.287h3.989zm63.051 6h-4.754v6.7a6.262 6.262 0 01-2.042.288c-3.638 0-6.317-2.84-6.317-6.7 0-4.147 2.84-6.923 7.051-6.923a11.142 11.142 0 016.062 1.851v-4.849a17.388 17.388 0 00-6.477-1.276c-6.891 0-11.677 4.626-11.677 11.262 0 6.54 4.689 10.976 11.677 10.976a19.329 19.329 0 006.477-1.117zm24.023.192c0-6.35-4.722-10.976-11.167-10.976a11.024 11.024 0 00.16 22.047c6.445.001 11.007-4.593 11.007-11.07zm-11.1-6.637c-3.573 0-5.966 2.713-5.966 6.7s2.456 6.7 6.062 6.7c3.573 0 5.934-2.681 5.934-6.7s-2.428-6.699-6.033-6.699zm12.94-3.956v21.281h4.85v-13.56l8.58 13.56h4.5V28.116h-4.849l.006 13.235-8.237-13.235zm-126.6-15h-4.754v6.7a6.266 6.266 0 01-2.042.287c-3.637 0-6.317-2.84-6.317-6.7 0-4.148 2.84-6.923 7.051-6.923a11.152 11.152 0 016.062 1.85V3.481a17.386 17.386 0 00-6.477-1.277c-6.891 0-11.677 4.626-11.677 11.263 0 6.54 4.69 10.974 11.677 10.974a19.342 19.342 0 006.477-1.116zm24 .191c0-6.349-4.722-10.975-11.167-10.975a11.023 11.023 0 00.159 22.046c6.437-.002 11-4.597 11-11.074zm-11.1-6.636c-3.573 0-5.966 2.711-5.966 6.7s2.457 6.7 6.062 6.7c3.573 0 5.935-2.68 5.935-6.7s-2.437-6.702-6.042-6.702zm12.695-3.956v21.281h8.806c4.69 0 7.433-2.33 7.433-6.318 0-2.743-1.563-4.721-4.435-5.551a4.665 4.665 0 002.9-4.371c.032-3.382-2.265-5.041-6.859-5.041zm7.083 7.944c2.074 0 2.9-.575 2.9-2.01 0-1.372-.8-1.882-3.062-1.882h-2.074v3.892zm.638 9c2.36 0 3.381-.734 3.381-2.457 0-1.786-1.053-2.489-3.573-2.489h-2.679v4.946zm14.274-16.942h-4.768v21.281h4.754zm2.07 0v21.281h14.1v-4.307h-9.349v-4.85h9.253v-4.307h-9.253V6.993h9.349V2.718zm75.145 10.592c0-6.349-4.722-10.975-11.167-10.975a11.023 11.023 0 00.16 22.046c6.435-.004 10.997-4.599 10.997-11.076zm-11.1-6.636c-3.573 0-5.966 2.711-5.966 6.7s2.456 6.7 6.062 6.7c3.573 0 5.934-2.68 5.934-6.7s-2.438-6.704-6.043-6.704zm-37.783 32.132l-2.01-6.287-1.978 6.287zM126.43 49.398v-8.743h.606c3.063 0 3.382.319 5.423 5.583a10.7 10.7 0 00.447 1.085l.415.989a9.523 9.523 0 00.51 1.085h6.911l2.3-6.477h6.509l2.265 6.477h5.137l-7.912-21.281h-5.583l-6.288 17.258a89.817 89.817 0 01-1.549-3.411c-.83-1.819-1.308-2.362-2.84-3a5.086 5.086 0 003.892-5.106c0-3.828-2.52-5.743-7.593-5.743h-7.53v21.281zm0-12.763h2.105c2.042 0 3.063-.734 3.063-2.265s-.926-2.2-3-2.2h-2.17zm16.613-12.643V15.25h.605c3.063 0 3.382.319 5.424 5.583a10.427 10.427 0 00.447 1.085l.415.989a9.465 9.465 0 00.51 1.085h9.578l.027-13.652 8.555 13.652h4.5V2.711h-4.849l.021 13.056-8.252-13.056h-4.851v19.812a44.3 44.3 0 01-2.942-5.962c-.829-1.818-1.307-2.36-2.839-3a5.085 5.085 0 003.892-5.1c0-3.829-2.521-5.743-7.594-5.743h-7.529v21.281zm0-12.762h2.106c2.041 0 3.062-.734 3.062-2.265s-.924-2.2-3-2.2h-2.169zM54.53 28.117v21.281h7.114c7.21 0 11.454-3.956 11.454-10.657 0-6.669-4.339-10.625-11.709-10.625z" fill-rule="evenodd"/></svg>\r\n <svg class="w-8 h-8 fill-current" [ngClass]="{\'sm:hidden\': expandedLogo}" viewBox="0 0 51.894 51.894" width="32" height="32" aria-label="Gobierno de Aragón" role="img"><title>Ir a la página de inicio</title><path data-name="img" d="M51.89 51.892H0V0h51.89zm-2.5-2.494v-8.96L38.906 42.33a17.743 17.743 0 01-3.136.278 18.211 18.211 0 01-9.225-2.517 21.42 21.42 0 00-9.317-2.082 20.786 20.786 0 00-4.9.571c-.743.15-1.526.292-2.282.429l-.125.023-.613.112-4.928.913-1.875.382V48.934l1.527-.247 22.517-4.133a17.458 17.458 0 013.236-.3 18.06 18.06 0 017.317 1.527l5.442 2.854a9.431 9.431 0 002.372.679 7.837 7.837 0 001.147.083h.029a16 16 0 003.3-.464zm0 0zm0-8.96V27.195a8.1 8.1 0 00-4.062-1.2 7.451 7.451 0 00-1.162.094l-10.852 2.009c-.026 0-2.878.518-4.281.779L17.12 31.048a18.266 18.266 0 01-2.5.173 18.246 18.246 0 01-7.67-1.683l-4.447-2.34V33.636l1.511-.281a19.009 19.009 0 014.442-.517 17.882 17.882 0 018.168 1.894 23.042 23.042 0 0010.673 2.617 23.64 23.64 0 002.884-.178l19.21-3.535zm0-13.243v-8.778l-1.341.282a19.092 19.092 0 01-4.442.516 17.873 17.873 0 01-8.169-1.894 23.049 23.049 0 00-10.672-2.618 23.464 23.464 0 00-2.884.179L2.5 18.417v6.538a7.558 7.558 0 003.968 1.128 9.406 9.406 0 001.426-.116l10.852-2.008c.027-.005 2.876-.518 4.28-.78l11.914-2.174a18.122 18.122 0 012.5-.173 18.236 18.236 0 017.67 1.683l4.277 2.441v-4.427zm0-8.778V2.981l-7.4 1.524-7.35 1.328-7.035 1.277a23.976 23.976 0 01-5.306.62 16.834 16.834 0 01-4.517-.57 19.322 19.322 0 01-5.084-2.209 95.551 95.551 0 00-1.3-.712c-.285-.139-.571-.291-.846-.437h-.005a9.085 9.085 0 00-2.252-.954 7.331 7.331 0 00-1.918-.341H2.5v9c1.433-.237 2.593-.442 3.651-.647l7.517-1.345a19.656 19.656 0 012.63-.178 17.162 17.162 0 012.63.2 22.628 22.628 0 017.434 2.705 21.654 21.654 0 008.584 1.768h.006a20.746 20.746 0 003.173-.242l11.264-2.256v6.907zM2.5 2.98v-.472h2.95a14.929 14.929 0 00-2.949.473z"/></svg>\r\n </a>\r\n <div *ngIf="subnavData && (subnavData.text || subnavData.html)" [ngClass]="subnavData">\r\n <desy-header-subnav [text]="subnavData.text" [html]="subnavData.html" [items]="subnavData.items">\r\n <ng-container *ngIf="subnavData && subnavData.items && subnavData.items.length > 0">\r\n <desy-nav [isMenu]="true" idPrefix="header-subnav-nav-item" [items]="subnavData.items" [id]="\'id-subnav-nav\'" [ariaLabelledBy]="\'subnav-title\'"></desy-nav>\r\n </ng-container>\r\n </desy-header-subnav>\r\n </div>\r\n </div>\r\n <ng-container *ngIf="navigationData && navigationData.items && navigationData.items.length > 0">\r\n <desy-header-navigation [idPrefix]="\'header-nav-item\'"\r\n [classes]="navigationData.classes"\r\n [items]="navigationData.items"\r\n [ariaLabel]="\'Menú principal\'"></desy-header-navigation>\r\n </ng-container>\r\n </div>\r\n <div *ngIf="dropdownData && dropdownData.items && dropdownData.items.length > 0">\r\n <div [class]="dropdownData.classes ? dropdownData.classes : \'hidden lg:block\'">\r\n <desy-header-dropdown [text]="dropdownData.text" [html]="dropdownData.html">\r\n <desy-nav [isMenu]="true" idPrefix="header-dropdown-nav-item" [items]="dropdownData.items" [id]="\'id-dropdown-nav\'" [ariaLabel]="\'Menú de usuario\'"></desy-nav>\r\n </desy-header-dropdown>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf="offcanvasData">\r\n <desy-header-offcanvas-button [text]="offcanvasData.text"\r\n [html]="offcanvasData.html"\r\n [classes]="offcanvasData.classes"\r\n [offcanvasText]="offcanvasData.textClose"\r\n [offcanvasLabelledId]="offcanvasData.labelledId"\r\n [offcanvasContentHtml]="offcanvasData.contentHtml"></desy-header-offcanvas-button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n'}]}],Y.propDecorators={classes:[{type:a.Input}],containerClasses:[{type:a.Input}],homepageUrl:[{type:a.Input}],homepageRouterLink:[{type:a.Input}],homepageFragment:[{type:a.Input}],expandedLogo:[{type:a.Input}],subnavData:[{type:a.Input}],navigationData:[{type:a.Input}],dropdownData:[{type:a.Input}],offcanvasData:[{type:a.Input}]};var K=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.clickEvent=new a.EventEmitter,r}return u(r,e),r.prototype.ngOnInit=function(){this.required()},r.prototype.ngOnChanges=function(e){this.required()},r.prototype.required=function(){var e,a;if(!this.items||0===this.items.length)throw new Error("items are required");try{for(var r=m(this.items),t=r.next();!t.done;t=r.next()){var n=t.value;f(n.text,n.html)}}catch(a){e={error:a}}finally{try{t&&!t.done&&(a=r.return)&&a.call(r)}finally{if(e)throw e.error}}},r.prototype.onClick=function(e,a){this.items.forEach((function(e){return e.active=!1})),a.active=!0,this.clickEvent.emit({item:a,event:e})},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"menu-item"},r.prototype.getItemId=function(e,a){return e.id?e.id:0===a?this.getIdPrefix():this.getIdPrefix()+"-"+a},r.prototype.getExternalHref=function(e){return v.getExternalHref(e.href)},r}(h);K.decorators=[{type:a.Component,args:[{selector:"desy-menu-horizontal",template:'<nav [class]="[\'c-menu-horizontal py-1.5 text-sm\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ul class="c-menu-horizontal__list lg:flex lg:flex-wrap">\r\n <ng-container *ngFor="let item of items; index as i">\r\n <li *ngIf="item">\r\n <span *ngIf="item.active; else elseBlock" [attr.id]="getItemId(item, i)"\r\n [class]="[\'c-menu-horizontal__active flex items-center relative lg:px-lg py-2 border border-transparent truncate font-semibold\', item.classes] | makeHtmlList"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n aria-current="page"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n <strong [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></strong>\r\n </span>\r\n <ng-template #elseBlock>\r\n <a *ngIf="item.routerLink || !item.href" (click)="onClick($event, item)"\r\n [attr.id]="getItemId(item, i)"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n [class]="[\'c-menu-horizontal__link flex items-center lg:px-lg py-2 border border-transparent text-neutral-dark hover:text-primary-base underline truncate focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': item.disabled}"\r\n [attr.disabled]="item.disabled ? \'disabled\' : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : null"\r\n [attr.tabindex]="item.disabled ? -1 : item.tabindex"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"></a>\r\n <a *ngIf="!item.routerLink && item.href" (click)="onClick($event, item)"\r\n [attr.id]="getItemId(item, i)"\r\n [href]="getExternalHref(item)"\r\n [target]="item.target"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n [class]="[\'c-menu-horizontal__link flex items-center lg:px-lg py-2 border border-transparent text-neutral-dark hover:text-primary-base underline truncate focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': item.disabled}"\r\n [attr.disabled]="item.disabled ? \'disabled\' : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : null"\r\n [attr.tabindex]="item.disabled ? -1 : item.tabindex"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"></a>\r\n </ng-template>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</nav>\r\n'}]}],K.propDecorators={id:[{type:a.Input}],idPrefix:[{type:a.Input}],classes:[{type:a.Input}],items:[{type:a.Input}],clickEvent:[{type:a.Output}]};var X=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.clickEvent=new a.EventEmitter,r}return u(r,e),r.prototype.getExternalHref=function(e){return v.getExternalHref(e.href)},r.prototype.onClick=function(e,a){this.items.forEach((function(e){return e.active=!1})),a.active=!0,this.clickEvent.emit({item:a,event:e})},r.prototype.ngOnChanges=function(e){this.checkRequiredParams()},r.prototype.checkRequiredParams=function(){if(!this.items)throw new Error("items are required");this.items.forEach((function(e){if(!e.href&&!e.routerLink)throw new Error("href or routerLink are required");f(e.text,e.html)}))},r.prototype.getItemId=function(e,a){return e.id?e.id:0===a?this.getIdPrefix():this.getIdPrefix()+"-"+a},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"nav-item"},r}(h);X.decorators=[{type:a.Component,args:[{selector:"desy-nav",template:'<ng-template #innerHtml>\r\n <ng-container *ngFor="let item of items; index as i">\r\n <li [attr.role]="isMenu ? \'menuitem\' : null">\r\n <span *ngIf="item.active"\r\n [class]="[\'flex items-center px-base py-sm truncate font-semibold\', item.classes] | makeHtmlList"\r\n [attr.id]="getItemId(item, i)"\r\n [attr.title]="item.title ? item.title : null"\r\n\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n aria-current="page"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex"\r\n (click)="onClick($event, item)">\r\n <strong [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></strong>\r\n </span>\r\n <a *ngIf="!item.active && item.href"\r\n [href]="getExternalHref(item)" [target]="item.target"\r\n [class]="[\'flex items-center px-base py-sm hover:bg-primary-base hover:text-white truncate focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': item.disabled}"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n\r\n [attr.disabled]="item.disabled ? \'disabled\' : null"\r\n [attr.aria-disabled]="item.disabled ? \'true\' : null"\r\n [attr.tabindex]="item.disabled ? -1 : item.tabindex"\r\n\r\n [attr.id]="getItemId(item, i)"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n (click)="onClick($event, item)">\r\n </a>\r\n <a *ngIf="!item.active && !item.href"\r\n [routerLink]="item.routerLink" [fragment]="item.fragment"\r\n [class]="[\'flex items-center px-base py-sm hover:bg-primary-base hover:text-white truncate focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': item.disabled}"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n\r\n [attr.disabled]="item.disabled ? \'disabled\' : null"\r\n [attr.aria-disabled]="item.disabled ? \'true\' : null"\r\n [attr.tabindex]="item.disabled ? -1 : item.tabindex"\r\n\r\n [attr.id]="getItemId(item, i)"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n (click)="onClick($event, item)">\r\n </a>\r\n \r\n </li>\r\n\r\n <li *ngIf="item.divider" class="my-sm border-b border-neutral-base" aria-hidden="true">\r\n <div class="sr-only">Separador</div>\r\n </li>\r\n </ng-container>\r\n</ng-template>\r\n\r\n\r\n\r\n<ul *ngIf="isMenu; else noMenu" role="menu"\r\n [class]="[\'text-sm\', classes] | makeHtmlList"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n</ul>\r\n<ng-template #noMenu>\r\n <nav [class]="[\'text-sm\', classes] | makeHtmlList"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ul>\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ul>\r\n </nav>\r\n</ng-template>'}]}],X.propDecorators={isMenu:[{type:a.Input}],idPrefix:[{type:a.Input}],items:[{type:a.Input}],classes:[{type:a.Input}],clickEvent:[{type:a.Output}]};var J=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){var a=this;if(!this.idPrefix)throw new Error("idPrefix are required");if(!this.items)throw new Error("items are required");this.items.forEach((function(e){f(e.text,e.html),e.sub&&(a.isTree=!0)}))},a.prototype.getId=function(e,a){return e.id?e.id:0===a?this.getIdPrefix():this.getIdPrefix()+"-"+a},a.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"nav-item"},a.prototype.getSubId=function(e,a){return e.id?e.id:0===a?"sub-"+this.getIdPrefix():this.getIdPrefix()+"-"+a},a.prototype.isDisabled=function(e){return!!e.disabled||null},a.prototype.isItemExpanded=function(e){return this.expandable?e.expanded?"true":"false":"true"},a.prototype.isActive=function(e){return!!e.active},a.prototype.expand=function(e){this.expandable&&(e.expanded=!e.expanded)},a.prototype.getButtonClasses=function(e){var a="w-full flex relative px-xs focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black text-left ";return e.classes&&(a+=e.classes),this.isDisabled(e)&&(a+=" opacity-50 pointer-events-none"),a},a.prototype.getItemWithHrefClass=function(e){var a="block px-xs focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black ";return e.classes&&(a+=e.classes),this.isDisabled(e)?a+=" opacity-50 pointer-events-none":a+=" group-hover:text-primary-base group-hover:underline ",this.isActive(e)?a+" font-bold ":a},a.prototype.getClassesItemSubWithHref=function(e){var a="block px-xs hover:text-primary-base hover:underline focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black ";return e.classes&&(a+=e.classes),this.isDisabled(e)&&(a+=" opacity-50 pointer-events-none "),this.isActive(e)?a+" font-bold ":a},a.prototype.getClassesItemSubNoHref=function(e){var a="block px-xs text-neutral-dark ";return e.classes&&(a+=e.classes),this.isActive(e)&&(a+=" font-bold"),a},a}(h);J.decorators=[{type:a.Component,args:[{selector:"desy-menu-vertical",template:'<nav [class]="classes" [attr.id]="id ? id : null"\r\n [attr.role]="(role ? role : null)"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <ul class="text-base"\r\n [attr.role]="(isTree ? \'tree\' : role )"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <ng-container *ngFor="let item of items; index as i">\r\n <li class="m-base" [attr.role]="(isTree ? \'none\' : null )">\r\n <div class="group">\r\n <ng-container *ngIf="item.sub">\r\n <div class="w-full h-full">\r\n <button (click)="expand(item)" \r\n [class]="getButtonClasses(item)"\r\n [attr.id]="getId(item, i)"\r\n [attr.role]="(isTree ? \'treeitem\' : null )"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="(item.sub.html ? (\'sub-\' + getId(item, i)) : item.ariaControls)"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="isItemExpanded(item)"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex"\r\n [attr.disabled]="isDisabled(item)">\r\n <span class="absolute flex items-center -left-4 w-4 top-0 bottom-0 text-primary-base font-bold">\r\n <svg *ngIf="expandable && item.expanded" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 10" width="10" height="10" aria-hidden="true"><path fill="currentColor" d="M9.286 5.714H.714a.714.714 0 010-1.428h8.572a.714.714 0 010 1.428z"/></svg>\r\n <svg *ngIf="expandable && !item.expanded" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 10" width="10" height="10" aria-hidden="true"><path fill="currentColor" d="M9.286 4.286H5.893a.179.179 0 01-.179-.179V.714a.714.714 0 00-1.428 0v3.393a.179.179 0 01-.179.179H.714a.714.714 0 000 1.428h3.393a.179.179 0 01.179.179v3.393a.714.714 0 001.428 0V5.893a.179.179 0 01.179-.179h3.393a.714.714 0 000-1.428z"/></svg>\r\n </span>\r\n \r\n <ng-container *ngIf="item.text">\r\n {{ item.text }}\r\n </ng-container>\r\n <div *ngIf="item.html" [outerHTML]="item.html | innerHtml"></div> \r\n </button>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf="item.href || item.routerLink || item.fragment && !item.sub">\r\n <a *ngIf="item.href" [href]=item.href\r\n [class]="getItemWithHrefClass(item)"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n [target]="item.target ? item.target : null"\r\n [attr.id]="getId(item, i)"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="isActive(item) ? \'page\' : item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="(isDisabled(item) ? \'-1\' : item.tabindex)"\r\n [attr.disabled]="isDisabled(item)"\r\n [attr.aria-disabled]="isDisabled(item) ? \'true\' : (ariaDisabled ? ariaDisabled : null)"></a>\r\n <a *ngIf="item.routerLink && !item.fragment && !item.href" [routerLink]="item.routerLink" [routerLinkActive]="item.routerLinkActiveClasses ? item.routerLinkActiveClasses : []"\r\n [class]="getItemWithHrefClass(item)"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n [attr.id]="getId(item, i)"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="isActive(item) ? \'page\' : item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="(item.tabindex ? item.tabindex : isDisabled(item) ? \'-1\' : item.tabindex)"\r\n [attr.disabled]="isDisabled(item)"\r\n [attr.aria-disabled]="isDisabled(item) ? \'true\' : (ariaDisabled ? ariaDisabled : null)"></a>\r\n <a *ngIf="item.fragment && !item.routerLink && !item.href" routerLink="./" [fragment]="item.fragment"\r\n [class]="getItemWithHrefClass(item)"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n [attr.id]="getId(item, i)"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="isActive(item) ? \'page\' : item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="(item.tabindex ? item.tabindex : isDisabled(item) ? \'-1\' : item.tabindex)"\r\n [attr.disabled]="isDisabled(item)"\r\n [attr.aria-disabled]="isDisabled(item) ? \'true\' : (ariaDisabled ? ariaDisabled : null)"></a>\r\n </ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf="item.sub">\r\n <ng-container *ngIf="item.sub.items; else elseBlock1">\r\n <ul [class]="item.sub.classes ? item.sub.classes : null"\r\n role="group"\r\n [attr.aria-describedby]="item.sub.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.sub.ariaErrorMessage"\r\n [attr.aria-label]="item.sub.ariaLabel"\r\n [attr.aria-labelledby]="item.sub.ariaLabelledBy"\r\n [attr.aria-hidden]="item.sub.ariaHidden"\r\n [attr.aria-disabled]="item.sub.ariaDisabled"\r\n [attr.aria-controls]="item.sub.ariaControls"\r\n [attr.aria-current]="item.sub.ariaCurrent"\r\n [attr.aria-live]="item.sub.ariaLive"\r\n [attr.aria-expanded]="item.sub.ariaExpanded"\r\n [attr.aria-haspopup]="item.sub.ariaHasPopup"\r\n [attr.tabindex]="item.sub.tabindex">\r\n <ng-container *ngFor="let itemSub of item.sub.items; index as k">\r\n <li *ngIf="expandable ? item.expanded : true" class="m-base origin-top-left text-sm" @displayMenuVertical\r\n [attr.id]="getSubId(itemSub, k)"\r\n role="treeitem">\r\n <ng-container *ngIf="itemSub.href || itemSub.routerLink || itemSub.fragment; else elseBlock">\r\n <a *ngIf="itemSub.href" [href]="itemSub.href" [desyInnerContent]="itemSub.html ? itemSub.html : itemSub.text" [isHtml]="itemSub.html"\r\n [attr.id]="itemSub.id ? getId(item, i) : null" [class]="getClassesItemSubWithHref(itemSub)" \r\n [title]="itemSub.title ? itemSub.title : null" [target]="itemSub.target ? itemSub.target : null"\r\n [attr.role]="itemSub.role"\r\n [attr.aria-errormessage]="itemSub.ariaErrorMessage"\r\n [attr.aria-label]="itemSub.ariaLabel"\r\n [attr.aria-labelledby]="itemSub.ariaLabelledBy"\r\n [attr.aria-hidden]="itemSub.ariaHidden"\r\n [attr.aria-disabled]="isDisabled(itemSub) ? \'true\' : null"\r\n [attr.aria-controls]="itemSub.ariaControls"\r\n [attr.aria-current]="isActive(itemSub) ? \'page\' : itemSub.ariaCurrent"\r\n [attr.aria-live]="itemSub.ariaLive"\r\n [attr.aria-expanded]="itemSub.ariaExpanded"\r\n [attr.aria-haspopup]="itemSub.ariaHasPopup"\r\n [attr.tabindex]="isDisabled(itemSub) ? \'-1\' : null"\r\n [attr.disabled]="isDisabled(itemSub)"></a>\r\n <a *ngIf="itemSub.routerLink && !itemSub.href && !itemSub.fragment" \r\n [routerLink]="itemSub.routerLink" [routerLinkActive]="itemSub.routerLinkActiveClasses ? itemSub.routerLinkActiveClasses : []" \r\n [desyInnerContent]="itemSub.html ? itemSub.html : itemSub.text" [isHtml]="itemSub.html"\r\n [attr.id]="itemSub.id ? getId(item, i) : null" [class]="getClassesItemSubWithHref(itemSub)" \r\n [title]="itemSub.title ? itemSub.title : null" \r\n [attr.role]="itemSub.role"\r\n [attr.aria-errormessage]="itemSub.ariaErrorMessage"\r\n [attr.aria-label]="itemSub.ariaLabel"\r\n [attr.aria-labelledby]="itemSub.ariaLabelledBy"\r\n [attr.aria-hidden]="itemSub.ariaHidden"\r\n [attr.aria-disabled]="isDisabled(itemSub) ? \'true\' : null"\r\n [attr.aria-controls]="itemSub.ariaControls"\r\n [attr.aria-current]="isActive(itemSub) ? \'page\' : itemSub.ariaCurrent"\r\n [attr.aria-live]="itemSub.ariaLive"\r\n [attr.aria-expanded]="itemSub.ariaExpanded"\r\n [attr.aria-haspopup]="itemSub.ariaHasPopup"\r\n [attr.tabindex]="isDisabled(itemSub) ? \'-1\' : null"\r\n [attr.disabled]="isDisabled(itemSub)"></a>\r\n <a *ngIf="itemSub.fragment && !itemSub.href && !itemSub.routerLink" routerLink="./" [fragment]="itemSub.fragment"\r\n [desyInnerContent]="itemSub.html ? itemSub.html : itemSub.text" [isHtml]="itemSub.html"\r\n [attr.id]="itemSub.id ? getId(item, i) : null" [class]="getClassesItemSubWithHref(itemSub)" \r\n [title]="itemSub.title ? itemSub.title : null"\r\n [attr.role]="itemSub.role"\r\n [attr.aria-errormessage]="itemSub.ariaErrorMessage"\r\n [attr.aria-label]="itemSub.ariaLabel"\r\n [attr.aria-labelledby]="itemSub.ariaLabelledBy"\r\n [attr.aria-hidden]="itemSub.ariaHidden"\r\n [attr.aria-disabled]="isDisabled(itemSub) ? \'true\' : null"\r\n [attr.aria-controls]="itemSub.ariaControls"\r\n [attr.aria-current]="isActive(itemSub) ? \'page\' : itemSub.ariaCurrent"\r\n [attr.aria-live]="itemSub.ariaLive"\r\n [attr.aria-expanded]="itemSub.ariaExpanded"\r\n [attr.aria-haspopup]="itemSub.ariaHasPopup"\r\n [attr.tabindex]="isDisabled(itemSub) ? \'-1\' : null"\r\n [attr.disabled]="isDisabled(itemSub)"></a>\r\n </ng-container>\r\n <ng-template #elseBlock>\r\n <ng-container *ngIf="itemSub.active; else elseBlock2">\r\n <span [attr.id]="itemSub.id ? getId(item, i) : null"\r\n [class]="getClassesItemSubNoHref(itemSub)"\r\n [title]="itemSub.title ? itemSub.title : null"\r\n [attr.role]="itemSub.role"\r\n [attr.aria-errormessage]="itemSub.ariaErrorMessage"\r\n [attr.aria-label]="itemSub.ariaLabel"\r\n [attr.aria-labelledby]="itemSub.ariaLabelledBy"\r\n [attr.aria-hidden]="itemSub.ariaHidden"\r\n [attr.aria-disabled]="isDisabled(itemSub) ? \'true\' : null"\r\n [attr.aria-controls]="itemSub.ariaControls"\r\n [attr.aria-current]="isActive(itemSub) ? \'page\' : itemSub.ariaCurrent"\r\n [attr.aria-live]="itemSub.ariaLive"\r\n [attr.aria-expanded]="itemSub.ariaExpanded"\r\n [attr.aria-haspopup]="itemSub.ariaHasPopup"\r\n [attr.tabindex]="isDisabled(itemSub) ? \'-1\' : null"\r\n [attr.disabled]="isDisabled(itemSub)"\r\n [attr.target]="itemSub.target ? itemSub.target : null">\r\n <strong [desyInnerContent]="itemSub.html ? itemSub.html : itemSub.text" [isHtml]="itemSub.html"></strong>\r\n </span>\r\n </ng-container>\r\n <ng-template #elseBlock2>\r\n <span [attr.id]="getSubId(itemSub, i)"\r\n [class]="getClassesItemSubNoHref(itemSub)"\r\n [title]="itemSub.title ? itemSub.title : null"\r\n [desyInnerContent]="itemSub.html ? itemSub.html : itemSub.text" [isHtml]="itemSub.html"\r\n [attr.role]="itemSub.role"\r\n [attr.aria-errormessage]="itemSub.ariaErrorMessage"\r\n [attr.aria-label]="itemSub.ariaLabel"\r\n [attr.aria-labelledby]="itemSub.ariaLabelledBy"\r\n [attr.aria-hidden]="itemSub.ariaHidden"\r\n [attr.aria-disabled]="isDisabled(itemSub) ? \'true\' : null"\r\n [attr.aria-controls]="itemSub.ariaControls"\r\n [attr.aria-current]="isActive(itemSub) ? \'page\' : itemSub.ariaCurrent"\r\n [attr.aria-live]="itemSub.ariaLive"\r\n [attr.aria-expanded]="itemSub.ariaExpanded"\r\n [attr.aria-haspopup]="itemSub.ariaHasPopup"\r\n [attr.tabindex]="isDisabled(itemSub) ? \'-1\' : null"\r\n [attr.disabled]="isDisabled(itemSub)"\r\n [attr.target]="itemSub.target ? itemSub.target : null"></span>\r\n </ng-template>\r\n </ng-template> \r\n <ng-container *ngIf="itemSub.divider"> \r\n <li class="my-sm border-b border-neutral-base" aria-hidden="true">\r\n <div class="sr-only">Separador</div>\r\n </li> \r\n </ng-container>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </ng-container>\r\n <ng-template #elseBlock1>\r\n <ng-container *ngIf="item.sub.html">\r\n <div [class]="item.sub.classes ? item.sub.classes : \'m-base px-xs origin-top-left text-sm\'"\r\n id="getSubId(itemSub, i)"\r\n [desyInnerContent]="item.sub.html" [isHtml]="item.sub.html">\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n \r\n \r\n </li>\r\n <ng-container *ngIf="item.divider">\r\n <li class="my-sm border-b border-neutral-base" aria-hidden="true">\r\n <div class="sr-only">Separador</div>\r\n </li> \r\n </ng-container>\r\n </ng-container>\r\n </ul>\r\n</nav>',animations:[i.trigger("displayMenuVertical",[i.state("void",i.style({opacity:"0.0",transform:"scale(0.95)"})),i.state("*",i.style({opacity:"1.0",transform:"scale(1.0)"})),i.transition(":enter",[i.animate("100ms ease-out")])])]}]}],J.propDecorators={id:[{type:a.Input}],idPrefix:[{type:a.Input}],expandable:[{type:a.Input}],items:[{type:a.Input}],classes:[{type:a.Input}]};var Z=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.getClassNames=function(){var e="c-skip-link sr-only active:not-sr-only focus:not-sr-only focus:outline-none focus:shadow-outline-focus block p-base bg-warning-base text-center text-black underline";return this.classes&&(e+=" "+this.classes),e},a}(x);Z.decorators=[{type:a.Component,args:[{selector:"desy-skip-link",template:'<a [desyInnerContent]="html ? html : text" [isHtml]="html"\r\n [routerLink]="[]" [fragment]="fragment ? fragment : \'content\'"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></a>\r\n'}]}],Z.propDecorators={fragment:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}]};var Q=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){if(f(this.titleText,this.titleHtml),!this.errorList)throw new Error("errorList are required");this.errorList.forEach((function(e){f(e.text,e.html)}))},a}(h);Q.decorators=[{type:a.Component,args:[{selector:"desy-error-summary",template:'<div [class]="[\'p-base border-2 border-alert-base\', classes] | makeHtmlList" tabindex="-1"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : \'alert\'"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : \'error-summary-title\'"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <h2 class="mb-base font-bold" [attr.id]="ariaLabelledBy ? ariaLabelledBy :\'error-summary-title\'"\r\n [desyInnerContent]="titleHtml ? titleHtml : titleText" [isHtml]="titleHtml"></h2>\r\n <div>\r\n <p *ngIf="descriptionHtml || descriptionText" class="mb-base" [desyInnerContent]="descriptionHtml ? descriptionHtml : descriptionText" [isHtml]="descriptionHtml"></p>\r\n <ul class="font-semibold text-alert-base">\r\n <ng-container *ngFor="let item of errorList">\r\n <li *ngIf="item.fragment">\r\n <a routerLink="./" [fragment]="item.fragment" class="c-link c-link--alert"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex"></a>\r\n </li>\r\n <li *ngIf="!item.fragment" [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n</div>\r\n'}]}],Q.propDecorators={errorList:[{type:a.Input}],titleText:[{type:a.Input}],titleHtml:[{type:a.Input}],descriptionText:[{type:a.Input}],descriptionHtml:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}]};var ee=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.isOpen=!0,r.isOpenChange=new a.EventEmitter,r.isDismissing=!1,r}return u(r,e),r.prototype.dismiss=function(){var e=this;this.isDismissing=!0,setTimeout((function(){e.isDismissing=!1,e.isOpenChange.emit(!1)}),75)},r.prototype.getType=function(){var e;return this.type&&(e=this.type.toLocaleLowerCase()),e},r.prototype.ngOnChanges=function(e){if(!this.id)throw new Error("id are required");if(!this.title)throw new Error("title are required");f(this.title.text,this.title.html),this.description&&f(this.description.text,this.description.html),this.items&&this.items.forEach((function(e){f(e.text,e.html)}))},r}(h);ee.decorators=[{type:a.Component,args:[{selector:"desy-notification",template:'<div [attr.id]="id ? id : null" [class]="(classes ? \'c-notification \' + classes : type==\'success\' ? \'c-notification c-notification--\' + type : type==\'alert\' ? \'c-notification c-notification--\' + type : \'c-notification c-notification--primary\') "\r\n *ngIf="isOpen && !isDismissing"\r\n @displayNotification\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <ng-container *ngIf="icon || type">\r\n <ng-container *ngIf="!icon; else elseBlock">\r\n <div class="h-full mr-base">\r\n <ng-container [ngSwitch]="getType()">\r\n <ng-container *ngSwitchCase="\'success\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-5 h-5 text-success-dark" aria-label="Éxito" focusable="false" role="img"><path d="M39.94 125a19.88 19.88 0 01-15.53-7.81L2.48 92.26a10 10 0 0115-13.2l20.55 23.39a2.5 2.5 0 003.68.08l81-84.42a10.002 10.002 0 1114.5 13.78l-82.02 86.33A19.41 19.41 0 0139.94 125z" fill="currentColor"/></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'alert\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-5 h-5 text-alert-base" aria-label="Error" focusable="false" role="img"><path d="M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'info\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-5 h-5 text-primary-base" aria-label="Información" focusable="false" role="img"><path d="M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm7.5 105a7.5 7.5 0 01-15 0V70a7.5 7.5 0 0115 0zM70 50a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #elseBlock>\r\n <div class="h-full mr-base" [desyInnerContent]="icon" [isHtml]="icon"></div>\r\n </ng-template>\r\n <div class="lg:flex flex-1 self-center">\r\n <div class="lg:flex-1 lg:self-center">\r\n <ng-container *ngIf="title">\r\n <p [id]="id ? id + \'-title\' : null"\r\n [class]="(title.classes ? \'font-bold pr-base focus:outline-none focus:underline \' + title.classes : \'font-bold pr-base focus:outline-none focus:underline\')" tabindex="-1"\r\n [desyInnerContent]="title.html ? title.html : title.text" [isHtml]="title.html">\r\n </p>\r\n </ng-container>\r\n <ng-container *ngIf="description">\r\n <p [class]="description.classes ? description.classes : null" [desyInnerContent]="description.html ? description.html : description.text" [isHtml]="description.html" ></p>\r\n </ng-container>\r\n <ng-container *ngIf="items">\r\n <ul>\r\n <ng-container *ngFor="let item of items">\r\n <ng-container *ngIf="item.href">\r\n <li>\r\n <a [href]="item.href" class="c-link"\r\n [ngClass]="{\'c-link--alert\': type===\'alert\'}"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.ariaLabel]="item.ariaLabel"\r\n [attr.ariaDescribedBy]="item.ariaDescribedBy"\r\n [attr.ariaLabelledBy]="item.ariaLabelledBy"\r\n [attr.ariaHidden]="item.ariaHidden"\r\n [attr.ariaDisabled]="item.ariaDisabled"\r\n [attr.ariaControls]="item.ariaControls"\r\n [attr.ariaCurrent]="item.ariaCurrent"\r\n [attr.ariaLive]="item.ariaLive"\r\n [attr.ariaExpanded]="item.ariaExpanded"\r\n [attr.ariaErrorMessage]="item.ariaErrorMessage"\r\n [attr.ariaHasPopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex" ></a>\r\n </li>\r\n </ng-container>\r\n <ng-container *ngIf="!item.href">\r\n <li [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></li>\r\n </ng-container>\r\n </ng-container>\r\n </ul>\r\n <p *ngIf="content" [class]="[\'text-sm\', content.classes] | makeHtmlList"\r\n [desyInnerContent]="content.html ? content.html : content.text" [isHtml]="content.html"></p>\r\n </ng-container>\r\n </div>\r\n <ng-container *ngIf="isDismissible">\r\n <div class="absolute top-0 right-0 p-sm">\r\n <button (click)="dismiss()" class="p-sm focus:bg-warning-base focus:border-warning-base focus:shadow-outline-black focus:text-black focus:outline-none" aria-label="X: Cerrar notificación">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4" aria-hidden="true" role="presentation"><path d="M85.91 71.77a2.5 2.5 0 010-3.54l46.16-46.16a10 10 0 10-14.14-14.14L71.77 54.09a2.5 2.5 0 01-3.54 0L22.07 7.93A10 10 0 007.93 22.07l46.16 46.16a2.5 2.5 0 010 3.54L7.93 117.93a10 10 0 0014.14 14.14l46.16-46.16a2.5 2.5 0 013.54 0l46.16 46.16a10 10 0 0014.14-14.14z" fill="currentColor"/></svg>\r\n </button>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n',animations:[i.trigger("displayNotification",[i.state("void",i.style({opacity:"0.0",transform:"scaleY(0.95)"})),i.state("*",i.style({opacity:"1.0",transform:"scaleY(1.0)"})),i.transition(":enter",[i.animate("100ms ease-out")]),i.transition(":leave",[i.animate("75ms ease-in")])])]}]}],ee.propDecorators={id:[{type:a.Input}],classes:[{type:a.Input}],isOpen:[{type:a.Input}],isOpenChange:[{type:a.Output}],title:[{type:a.Input}],description:[{type:a.Input}],content:[{type:a.Input}],items:[{type:a.Input}],icon:[{type:a.Input}],type:[{type:a.Input}],isDismissible:[{type:a.Input}]};var ae=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.getUrl=function(e){return v.getExternalHref(e.href)},a}(h);ae.decorators=[{type:a.Component,args:[{selector:"desy-footer",template:'<footer [class]="[\'py-base bg-neutral-lighter border-t border-neutral-base text-xs lg:text-sm text-neutral-dark\', classes] | makeHtmlList" role="contentinfo"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <div [class]="[\'container mx-auto px-base\', containerClasses] | makeHtmlList">\r\n <ng-container *ngIf="navigation && navigation.length != 0">\r\n <div class="flex flex-wrap">\r\n <div class="flex-1 mr-base" *ngFor="let nav of navigation">\r\n <h3 class="mb-base font-bold text-xl">{{nav.title}}</h3>\r\n <ul [class]="\'grid grid-cols-1 gap-base lg:grid-cols-\' + nav.columns">\r\n <li class="mb-xs" *ngFor="let item of nav.items">\r\n <ng-container *ngTemplateOutlet="item.href != null ? itemHref : itemRouterLink; context: {item: item}"></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <hr class="my-base border-t border-neutral-base">\r\n </ng-container>\r\n <div class="flex flex-col lg:flex-row content-end justify-between">\r\n <div class="mb-base">\r\n <ng-container *ngIf="meta">\r\n <h2 class="sr-only">{{(meta.visuallyHiddenTitle ? meta.visuallyHiddenTitle : \'Enlaces de pie de página\')}}</h2>\r\n <ul class="flex flex-col lg:flex-row lg:flex-wrap" *ngIf="meta">\r\n <li class="mb-sm mr-base" *ngFor="let item of meta.items">\r\n <ng-container *ngTemplateOutlet="item.href != null ? itemHref : itemRouterLink; context: {item: item}"></ng-container>\r\n </li>\r\n </ul>\r\n <div class="mb-sm" *ngIf="meta.html || meta.text">\r\n <p [desyInnerContent]="meta.html ? meta.html : meta.text" [isHtml]="meta.html"></p>\r\n </div>\r\n </ng-container>\r\n <div class="leading-tight">\r\n <p>\r\n Todo el contenido bajo\r\n <a\r\n class="c-link c-link--neutral"\r\n href="https://creativecommons.org/licenses/by/4.0/legalcode.es"\r\n rel="license"\r\n >licencia CC BY 4.0</a>\r\n </p>\r\n </div>\r\n <div class="leading-tight">\r\n <p>\r\n <a\r\n class="c-link c-link--neutral"\r\n href="https://www.aragon.es/"\r\n >Gobierno de Aragón</a>. Edificio Pignatelli. Pº María Agustín, 36. 50004 - Zaragoza - <abbr title="Teléfono" class="no-underline">Tel.</abbr> <a href="tel:+976714000" class="c-link c-link--neutral">976 714 000</a>\r\n </p>\r\n </div>\r\n </div>\r\n <div class="mb-base lg:pl-base">\r\n <p *ngIf="icon && icon.html" [desyInnerContent]="icon.html" [isHtml]="true"></p>\r\n <p>\r\n <a href="http://www.aragon.es/Fondos_Europeos" class="inline-block text-sm c-link no-underline" title="Más información sobre los Fondos Estructurales y de Inversión Europeos (Fondos EIE)">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 575 96" width="288" height="48" class="w-auto h-12" role="img" aria-label="Logotipo Unión Europea. Fondo Europeo de Desarrollo Regional (FEDER). Construyendo Europa desde Aragón."><text transform="translate(126 33)" fill="#039" font-size="20" font-family="Arial, Tahoma, Verdana, Calibri, Garamond, Trebuchet, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, HelveticaNeue-Bold, Helvetica Neue, Helvetica, sans" font-weight="700"><tspan x="0" y="0">UNIÓN EUROPEA</tspan></text><text transform="translate(126 56)" fill="#039" font-size="20" font-family="Arial, Tahoma, Verdana, Calibri, Garamond, Trebuchet, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, HelveticaNeue-Bold, Helvetica Neue, Helvetica, sans"><tspan x="0" y="0">Fondo Europeo de Desarrollo Regional (FEDER)</tspan></text><text transform="translate(126 79)" fill="#039" font-size="20" font-family="Arial, Tahoma, Verdana, Calibri, Garamond, Trebuchet, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, HelveticaNeue-Bold, Helvetica Neue, Helvetica, sans"><tspan x="0" y="0">“Construyendo Europa desde Aragón”</tspan></text><path fill="#039" stroke="#fff" stroke-width="1%" d="M14.086 13.02h104.282v69.522H14.086z"/><g fill="#fc0"><path d="M64.004 28.167l2.2-1.606 2.2 1.606-.837-2.6 2.235-1.606h-2.755l-.843-2.628-.843 2.631h-2.753l2.233 1.606zM52.617 31.229l2.2-1.606 2.2 1.606-.836-2.6 2.233-1.606h-2.755l-.843-2.631-.843 2.634H51.22l2.234 1.606zM46.486 32.743l-.843 2.634H42.89l2.234 1.606-.837 2.6 2.2-1.606 2.2 1.606-.837-2.6 2.234-1.606h-2.752zM43.429 49.345l2.2 1.606-.836-2.6 2.234-1.606h-2.753l-.843-2.631-.843 2.637-2.755-.006 2.235 1.606-.837 2.6zM47.332 58.156l-.843-2.631-.843 2.634h-2.753l2.234 1.606-.837 2.6 2.2-1.609 2.2 1.609-.837-2.6 2.234-1.606zM55.677 66.504l-.843-2.628-.842 2.631h-2.755l2.234 1.606-.836 2.6 2.2-1.606 2.2 1.606-.836-2.6 2.234-1.606zM67.05 69.528l-.843-2.631-.842 2.634H62.61l2.234 1.606-.836 2.6 2.2-1.606 2.2 1.606-.837-2.6 2.235-1.606zM78.422 66.504l-.842-2.628-.845 2.631h-2.752l2.232 1.606-.836 2.6 2.2-1.606 2.2 1.606-.839-2.6 2.235-1.606zM86.774 58.156l-.845-2.631-.845 2.634h-2.752l2.235 1.606-.839 2.6 2.2-1.609 2.2 1.609-.839-2.6 2.235-1.606zM92.551 46.716h-2.755l-.845-2.631-.842 2.634h-2.755l2.235 1.606-.836 2.6 2.2-1.609 2.2 1.609-.836-2.6zM83.728 39.544l2.2-1.606 2.2 1.606-.839-2.6 2.235-1.6h-2.752l-.845-2.631-.845 2.634H82.33l2.235 1.6zM77.613 24.395l-.842 2.634-2.755-.006 2.232 1.609-.836 2.6 2.2-1.609 2.2 1.609-.836-2.6 2.235-1.609h-2.758z"/></g></svg>\r\n </a>\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n</footer>\r\n\r\n<ng-template #itemHref let-item="item">\r\n <a class="c-link font-semibold" [href]="getUrl(item)"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n {{item.text}}\r\n </a>\r\n</ng-template>\r\n\r\n<ng-template #itemRouterLink let-item="item">\r\n <a class="c-link font-semibold" [routerLink]="item.routerLink" [fragment]="item.fragment"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n {{item.text}}\r\n </a>\r\n</ng-template>\r\n'}]}],ae.propDecorators={meta:[{type:a.Input}],navigation:[{type:a.Input}],icon:[{type:a.Input}],containerClasses:[{type:a.Input}],classes:[{type:a.Input}]};var re=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){if(!this.rows)throw new Error("rows are required");this.rows.forEach((function(e){e&&e.forEach((function(e){f(e.text,e.html)}))}))},a}(h);re.decorators=[{type:a.Component,args:[{selector:"desy-table",template:'<table [class]="(classes ? \'c-table \' + classes : \'c-table\')"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <caption *ngIf="caption" [class]="captionClasses">{{ caption }}</caption>\r\n <thead *ngIf="head">\r\n <tr class="border-t border-b border-neutral-base">\r\n <th *ngFor="let itemHead of head" scope="col"\r\n [class]="[\'align-top px-base py-sm text-left font-normal text-sm text-neutral-dark\', itemHead.classes] | makeHtmlList"\r\n [attr.colspan]="(itemHead.colspan ? itemHead.colspan : null)" [attr.rowspan]="(itemHead.rowspan ? itemHead.rowspan : null)"\r\n [desyInnerContent]="itemHead.html ? itemHead.html : itemHead.text" [isHtml]="itemHead.html"\r\n [attr.id]="itemHead.id ? itemHead.id : null"\r\n [attr.role]="itemHead.role"\r\n [attr.aria-describedby]="itemHead.ariaDescribedBy"\r\n [attr.aria-errormessage]="itemHead.ariaErrorMessage"\r\n [attr.aria-label]="itemHead.ariaLabel"\r\n [attr.aria-labelledby]="itemHead.ariaLabelledBy"\r\n [attr.aria-hidden]="itemHead.ariaHidden"\r\n [attr.aria-disabled]="itemHead.ariaDisabled"\r\n [attr.aria-controls]="itemHead.ariaControls"\r\n [attr.aria-current]="itemHead.ariaCurrent"\r\n [attr.aria-live]="itemHead.ariaLive"\r\n [attr.aria-expanded]="itemHead.ariaExpanded"\r\n [attr.aria-haspopup]="itemHead.ariaHasPopup"\r\n [attr.tabindex]="itemHead.tabindex">\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor="let row of rows" class="border-t border-b border-neutral-base">\r\n <ng-container *ngFor="let cell of row; first as isFirst">\r\n <th *ngIf="firstCellIsHeader && isFirst; else elseTd" scope="row" \r\n [class]="[\'align-top px-base py-sm text-left font-normal text-sm text-neutral-dark\', cell.classes] | makeHtmlList"\r\n [desyInnerContent]="cell.html ? cell.html : cell.text" [isHtml]="cell.html"\r\n [attr.colspan]="cell.colspan ? cell.colspan : null"\r\n [attr.rowspan]="cell.rowspan ? cell.rowspan : null"\r\n [attr.id]="cell.id ? cell.id : null"\r\n [attr.role]="cell.role ? cell.role : null"\r\n [attr.aria-label]="cell.ariaLabel ? cell.ariaLabel : null"\r\n [attr.aria-describedby]="cell.ariaDescribedBy ? cell.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="cell.ariaLabelledBy ? cell.ariaLabelledBy : null"\r\n [attr.aria-hidden]="cell.ariaHidden ? cell.ariaHidden : null"\r\n [attr.aria-disabled]="cell.ariaDisabled ? cell.ariaDisabled : null"\r\n [attr.aria-controls]="cell.ariaControls ? cell.ariaControls : null"\r\n [attr.aria-current]="cell.ariaCurrent ? cell.ariaCurrent : null"\r\n [attr.aria-live]="cell.ariaLive ? cell.ariaLive : null"\r\n [attr.aria-expanded]="cell.ariaExpanded ? cell.ariaExpanded : null"\r\n [attr.aria-errormessage]="cell.ariaErrorMessage ? cell.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="cell.ariaHasPopup ? cell.ariaHasPopup : null"\r\n [attr.tabindex]="cell.tabindex ? cell.tabindex : null"></th>\r\n <ng-template #elseTd>\r\n <td [class]="[\'px-base py-sm\', cell.classes] | makeHtmlList"\r\n [desyInnerContent]="cell.html ? cell.html : cell.text" [isHtml]="cell.html"\r\n [attr.colspan]="cell.colspan ? cell.colspan : null"\r\n [attr.rowspan]="cell.rowspan ? cell.rowspan : null"\r\n [attr.id]="cell.id ? cell.id : null"\r\n [attr.role]="cell.role ? cell.role : null"\r\n [attr.aria-label]="cell.ariaLabel ? cell.ariaLabel : null"\r\n [attr.aria-describedby]="cell.ariaDescribedBy ? cell.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="cell.ariaLabelledBy ? cell.ariaLabelledBy : null"\r\n [attr.aria-hidden]="cell.ariaHidden ? cell.ariaHidden : null"\r\n [attr.aria-disabled]="cell.ariaDisabled ? cell.ariaDisabled : null"\r\n [attr.aria-controls]="cell.ariaControls ? cell.ariaControls : null"\r\n [attr.aria-current]="cell.ariaCurrent ? cell.ariaCurrent : null"\r\n [attr.aria-live]="cell.ariaLive ? cell.ariaLive : null"\r\n [attr.aria-expanded]="cell.ariaExpanded ? cell.ariaExpanded : null"\r\n [attr.aria-errormessage]="cell.ariaErrorMessage ? cell.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="cell.ariaHasPopup ? cell.ariaHasPopup : null"\r\n [attr.tabindex]="cell.tabindex ? cell.tabindex : null"></td>\r\n </ng-template>\r\n </ng-container>\r\n </tr>\r\n </tbody>\r\n</table>\r\n'}]}],re.propDecorators={rows:[{type:a.Input}],head:[{type:a.Input}],caption:[{type:a.Input}],captionClasses:[{type:a.Input}],firstCellIsHeader:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}]};var te,ne=function(){function e(){}return e.containsAnyWordFrom=function(e,a,r){var t=this,n=[],i=!1,l=this.getSimplifiedString(e);return a&&a.split(" ").length>1&&(n=a.split(" ")),n.push(a),n.forEach((function(e){l&&e&&(r&&l===t.getSimplifiedString(e)||!r&&l.includes(t.getSimplifiedString(e)))&&(i=!0)})),i},e.getSimplifiedString=function(e){var a=e;return e&&(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=(a=e.toLocaleUpperCase().trim()).replace("Á","A")).replace("É","E")).replace("Í","I")).replace("Ó","O")).replace("Ú","U")).replace("À","A")).replace("È","E")).replace("Ì","I")).replace("Ò","O")).replace("Ù","U")).replace("Ä","A")).replace("Ë","E")).replace("Ï","I")).replace("Ö","O")).replace("Ü","U")).replace(",","")).replace(".","")).replace("'","")).replace('"',"")),a},e}();(te=e.OrderBy||(e.OrderBy={})).none="none",te.asc="asc",te.desc="desc";var ie=function(t){function n(r){var n=t.call(this)||this;return n.el=r,n.orderBy=e.OrderBy,n.rowsChecked=new a.EventEmitter,n}return u(n,t),n.prototype.ngOnChanges=function(e){var a=this;if(!this.rows)throw new Error("rows are required");this.rows.forEach((function(e){if(e&&(e.cellsList.forEach((function(e){f(e.text,e.html)})),a.hasCheckboxes&&!e.id))throw new Error("id row is required with checkboxes")})),this.searchData=this.rows.slice(),this.createFormGroup()},n.prototype.ngAfterViewInit=function(){this.el.nativeElement.querySelector("[tabindex]").setAttribute("tabindex","0")},n.prototype.hasFilters=function(){var e,a,r=!1;if(this.head)try{for(var t=m(this.head),n=t.next();!n.done;n=t.next()){if(n.value.hasFilter){r=!0;break}}}catch(a){e={error:a}}finally{try{n&&!n.done&&(a=t.return)&&a.call(t)}finally{if(e)throw e.error}}return r},n.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"id-table-row"},n.prototype.getIdHeader=function(e){return this.getIdPrefix+"-header-"+e},n.prototype.getIdHeaderCheckbox=function(e){return this.getIdPrefix+"-header-checkbox-"+e},n.prototype.getIdRowCheckbox=function(e){return this.getIdPrefix+"-checkbox-"+e},n.prototype.getIdHeaderFilter=function(e){return this.getIdPrefix+"-header-filter-"+e},n.prototype.getStringOrderBy=function(a){return a===e.OrderBy.asc?"ascending":a===e.OrderBy.desc?"descending":a===e.OrderBy.none?"none":void 0},n.prototype.getTextVisible=function(e){return e.html?e.html:e.text},n.prototype.createFormGroup=function(){var e=this,a={};this.hasCheckboxes&&this.rows.forEach((function(e){a[e.id]=new r.FormControl(!1)})),this.form=new r.FormGroup(a),this.hasCheckboxes&&this.form.valueChanges.subscribe((function(a){e.isReset||e.rowsChecked.emit(a)}))},n.prototype.unchecked=function(){var e=this;this.hasCheckboxes&&(this.isReset=!0,this.rows.forEach((function(a){e.form.controls[a.id].setValue(!1)})),this.isReset=!1,this.rowsChecked.emit(this.form.value))},n.prototype.isChecked=function(e){return this.form.get(e).value},n.prototype.onInputSearch=function(e){e.hasFilter&&(e.valueFilter?e.activeFilter=!0:e.activeFilter=!1,this.searchData=this.search(),this.searchSort(),this.unchecked())},n.prototype.search=function(){for(var e=this.rows.slice(),a=0;a<this.head.length;a++){var r=this.head[a];if(r.hasFilter&&r.activeFilter)for(var t=0;t<e.length;t++){var n=e[t].cellsList;ne.containsAnyWordFrom(this.getTextVisible(n[a]),r.valueFilter)||(e.splice(t,1),t--)}}return e},n.prototype.searchSort=function(){for(var a=this,r=function(r){var n=t.head[r];if(n.orderBy&&n.orderBy!==e.OrderBy.none){var i=t.searchData.slice();t.searchData=i.sort((function(t,i){return a.compare(t.cellsList[r],i.cellsList[r],n.orderBy===e.OrderBy.asc)}))}},t=this,n=0;n<this.head.length;n++)r(n)},n.prototype.sortData=function(a,r){var t=this;if(a.orderBy){var n=this.searchData.slice(),i=this.getDirection(a);this.searchData=n.sort((function(a,n){return t.compare(a.cellsList[r],n.cellsList[r],i===e.OrderBy.asc)})),a.orderBy=i,this.cleanSorted(r)}},n.prototype.compare=function(e,a,r){var t=this.cleanCurrency(this.getTextVisible(e)),n=this.cleanCurrency(this.getTextVisible(a));return(isNaN(+t)&&isNaN(+n)?t.localeCompare(n,"es",{sensitivity:"base",ignorePunctuation:!0}):t.localeCompare(n,void 0,{numeric:!0}))*(r?1:-1)},n.prototype.cleanSorted=function(a){if(this.head)for(var r=0;r<this.head.length;r++)if(r<a||r>a){var t=this.head[r];t.orderBy&&(t.orderBy=e.OrderBy.none)}},n.prototype.getDirection=function(a){return a.orderBy===e.OrderBy.none||a.orderBy===e.OrderBy.desc?e.OrderBy.asc:e.OrderBy.desc},n.prototype.cleanCurrency=function(e){return/[\d.,]+[\€]/g.test(e)&&(e=e.replace(/€/g,"")),e},n}(h);ie.decorators=[{type:a.Component,args:[{selector:"desy-table-advanced",template:'<table role="grid"\r\n [class]="[\'c-table-advanced border-t-2 border-b-2 border-neutral-base\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null" \r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <caption *ngIf="caption" [class]="captionClasses">{{ caption }}</caption>\r\n <thead *ngIf="head">\r\n <tr class="border-t border-neutral-base divide-x divide-neutral-base">\r\n <th *ngIf="hasCheckboxes" scope="col" class="align-top px-base py-xs">\r\n <span class="sr-only">Seleccionar fila</span>\r\n </th>\r\n <th scope="col" *ngFor="let item of head; index as iHeader" [id]="getIdHeader(iHeader)"\r\n [attr.aria-sort]="item.orderBy ? getStringOrderBy(item.orderBy) : null"\r\n [class]="[\'align-top px-base py-sm border-neutral-base border-b-0 text-left text-sm font-normal text-neutral-dark\', item.classes] | makeHtmlList"\r\n [attr.colspan]="item.colspan ? item.colspan : null"\r\n [attr.rowspan]="item.rowspan ? item.rowspan : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n\r\n <ng-template #arrows>\r\n <span class="c-table-advanced__order" *ngIf="item.orderBy">\r\n <span class="sr-only">Pulsa para ordenar por esta columna</span>\r\n <span class="c-table-advanced__ascending" *ngIf="item.orderBy == orderBy.asc">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" aria-hidden="true" width="1em" height="1em"><path d="M112.07 37.93l-35-35a10 10 0 00-14.14 0l-35 35a10 10 0 0014.14 14.14l13.66-13.66A2.5 2.5 0 0160 40.18V130a10 10 0 0020 0V40.18a2.5 2.5 0 014.27-1.77l13.66 13.66a10 10 0 0014.14-14.14z" fill="currentColor"/></svg>\r\n </span>\r\n <span class="c-table-advanced__descending" *ngIf="item.orderBy == orderBy.desc">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" aria-hidden="true" width="1em" height="1em"><path d="M27.93 102.07l35 35a10 10 0 0014.14 0l35-35a10 10 0 00-14.14-14.14l-13.66 13.66A2.5 2.5 0 0180 99.82V10a10 10 0 00-20 0v89.82a2.5 2.5 0 01-4.27 1.77L42.07 87.93a10 10 0 00-14.14 14.14z" fill="currentColor"/></svg>\r\n </span>\r\n <span class="c-table-advanced__none" *ngIf="item.orderBy == orderBy.none">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" class="text-neutral-base" aria-hidden="true" width="1em" height="1em"><path d="M94.7 97.2l-17.2 17.19V25.61L94.7 42.8a7.5 7.5 0 0010.6-10.6l-30-30a7.49 7.49 0 00-10.6 0l-30 30a7.5 7.5 0 0010.6 10.6l17.2-17.19v88.78L45.3 97.2a7.5 7.5 0 10-10.6 10.6l30 30a7.48 7.48 0 0010.6 0l30-30a7.5 7.5 0 00-10.6-10.6z" fill="currentColor"/></svg>\r\n </span>\r\n </span>\r\n </ng-template>\r\n\r\n <ng-container *ngIf="item.orderBy">\r\n <span class="inline-block relative" *ngIf="item.html" (click)="sortData(item, iHeader)" desyFocusClickedCell\r\n [attr.tabindex]="item.orderBy ? -1 : null"\r\n [attr.role]="item.orderBy ? \'button\' : null">\r\n <ng-container *ngTemplateOutlet="tmpItemHtml"></ng-container>\r\n <ng-container *ngTemplateOutlet="arrows"></ng-container>\r\n\r\n <ng-template #tmpItemHtml>\r\n <div [outerHTML]="item.html | innerHtml"></div> \r\n </ng-template>\r\n </span>\r\n\r\n <span class="inline-block relative" *ngIf="!item.html" (click)="sortData(item, iHeader)" desyFocusClickedCell\r\n [attr.tabindex]="item.orderBy ? -1 : null"\r\n [attr.role]="item.orderBy ? \'button\' : null">\r\n {{item.text}}\r\n <ng-container *ngTemplateOutlet="arrows"></ng-container> \r\n </span>\r\n </ng-container> \r\n\r\n <ng-container *ngIf="!item.orderBy">\r\n <span class="inline-block relative" *ngIf="item.html">\r\n <ng-container *ngTemplateOutlet="tmpItemHtml"></ng-container>\r\n <ng-template #tmpItemHtml>\r\n <div [outerHTML]="item.html | innerHtml"></div> \r\n </ng-template>\r\n </span>\r\n\r\n <span class="inline-block relative" *ngIf="!item.html">\r\n {{item.text}} \r\n </span>\r\n </ng-container> \r\n \r\n </th>\r\n\r\n </tr>\r\n </thead>\r\n\r\n <tbody [formGroup]="form">\r\n <tr class="divide-x divide-neutral-base" *ngIf="hasFilters()">\r\n <td *ngIf="hasCheckboxes"></td>\r\n <td tabindex="-1" *ngFor="let item of head; index as iHead" desyFocusClickedCell\r\n [class]="[\'align-top px-base pb-sm border-neutral-base border-b-0 text-left text-sm font-normal text-neutral-dark\', item.classes] | makeHtmlList">\r\n <desy-search-bar *ngIf="item.hasFilter" (clickEvent)="onInputSearch(item)" [(ngModel)]="item.valueFilter" [ngModelOptions]="{standalone: true}"\r\n labelText="Buscar en esta columna"\r\n [id]="getIdHeaderFilter(iHead)"\r\n placeholder="Buscar"\r\n [classes]="[\'c-input--sm\', item.filterClasses] | makeHtmlList"\r\n buttonClasses="m-xs p-0.5 text-xs"\r\n [describedBy]="getIdHeader(iHead)"> </desy-search-bar>\r\n </td>\r\n </tr>\r\n\r\n\r\n <tr *ngFor="let row of searchData; index as iRow" class="border-t border-b border-neutral-base hover:bg-neutral-lighter"\r\n [ngClass]="{\'bg-neutral-light\': (hasCheckboxes && isChecked(row.id)) }">\r\n <td class="px-base py-sm" tabindex="-1" *ngIf="hasCheckboxes" desyFocusClickedCell>\r\n <div class="c-checkboxes c-checkboxes--sm">\r\n <div>\r\n <div class="relative flex items-start">\r\n <div class="flex items-center mx-sm">\r\n <input type="checkbox" [formControlName]="row.id" class="w-6 h-6 transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base text-primary-base" \r\n [id]="getIdRowCheckbox(iRow)"\r\n [name]="getIdRowCheckbox(iRow)"\r\n [attr.aria-label]="\'Fila \' + iRow">\r\n </div>\r\n <div class="pt-0.5 leading-5">\r\n <label class="sr-only block text-sm -mt-1" for="small">Select this item</label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </td>\r\n <ng-container *ngFor="let cell of row.cellsList; first as isFirstCell">\r\n <th *ngIf="firstCellIsHeader && isFirstCell; else elseTd" scope="row" \r\n [class]="[\'px-base py-xs border-neutral-base border-b-0 border-r text-left font-normal text-sm text-neutral-dark\', cell.classes] | makeHtmlList"\r\n [desyInnerContent]="cell.html ? cell.html : cell.text" [isHtml]="cell.html"\r\n [attr.colspan]="cell.colspan ? cell.colspan : null"\r\n [attr.rowspan]="cell.rowspan ? cell.rowspan : null"\r\n [attr.id]="cell.id ? cell.id : null"\r\n [attr.role]="cell.role ? cell.role : null"\r\n [attr.aria-label]="cell.ariaLabel ? cell.ariaLabel : null"\r\n [attr.aria-describedby]="cell.ariaDescribedBy ? cell.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="cell.ariaLabelledBy ? cell.ariaLabelledBy : null"\r\n [attr.aria-hidden]="cell.ariaHidden ? cell.ariaHidden : null"\r\n [attr.aria-disabled]="cell.ariaDisabled ? cell.ariaDisabled : null"\r\n [attr.aria-controls]="cell.ariaControls ? cell.ariaControls : null"\r\n [attr.aria-current]="cell.ariaCurrent ? cell.ariaCurrent : null"\r\n [attr.aria-live]="cell.ariaLive ? cell.ariaLive : null"\r\n [attr.aria-expanded]="cell.ariaExpanded ? cell.ariaExpanded : null"\r\n [attr.aria-errormessage]="cell.ariaErrorMessage ? cell.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="cell.ariaHasPopup ? cell.ariaHasPopup : null"\r\n [attr.tabindex]="cell.tabindex ? cell.tabindex : null"></th>\r\n <ng-template #elseTd>\r\n <td tabindex="-1" desyFocusClickedCell\r\n [class]="[\'px-base py-sm\', cell.classes] | makeHtmlList"\r\n [desyInnerContent]="cell.html ? cell.html : cell.text" [isHtml]="cell.html"\r\n [attr.colspan]="cell.colspan ? cell.colspan : null"\r\n [attr.rowspan]="cell.rowspan ? cell.rowspan : null"\r\n [attr.id]="cell.id ? cell.id : null"\r\n [attr.role]="cell.role ? cell.role : null"\r\n [attr.aria-label]="cell.ariaLabel ? cell.ariaLabel : null"\r\n [attr.aria-describedby]="cell.ariaDescribedBy ? cell.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="cell.ariaLabelledBy ? cell.ariaLabelledBy : null"\r\n [attr.aria-hidden]="cell.ariaHidden ? cell.ariaHidden : null"\r\n [attr.aria-disabled]="cell.ariaDisabled ? cell.ariaDisabled : null"\r\n [attr.aria-controls]="cell.ariaControls ? cell.ariaControls : null"\r\n [attr.aria-current]="cell.ariaCurrent ? cell.ariaCurrent : null"\r\n [attr.aria-live]="cell.ariaLive ? cell.ariaLive : null"\r\n [attr.aria-expanded]="cell.ariaExpanded ? cell.ariaExpanded : null"\r\n [attr.aria-errormessage]="cell.ariaErrorMessage ? cell.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="cell.ariaHasPopup ? cell.ariaHasPopup : null"\r\n [attr.tabindex]="cell.tabindex ? cell.tabindex : null"></td>\r\n </ng-template>\r\n </ng-container>\r\n </tr>\r\n\r\n </tbody>\r\n</table>\r\n'}]}],ie.ctorParameters=function(){return[{type:a.ElementRef}]},ie.propDecorators={rows:[{type:a.Input}],head:[{type:a.Input}],caption:[{type:a.Input}],captionClasses:[{type:a.Input}],firstCellIsHeader:[{type:a.Input}],hasCheckboxes:[{type:a.Input}],idPrefix:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}],rowsChecked:[{type:a.Output}]};var le=function(e){function r(r,t){var n=e.call(this)||this;return n.cdRef=r,n.factoryResolver=t,n.activeChange=new a.EventEmitter,n.lastActiveState=void 0,n.hasViewinit=!1,n}return u(r,e),r.prototype.ngOnChanges=function(){this.handleActiveState()},r.prototype.ngOnDestroy=function(){this.active=!1,this.handleActiveState()},r.prototype.ngAfterViewInit=function(){if(!this.id)throw Error("id is required");if(!this.caller&&!this.callerType)throw Error("caller is required");if(this.hasViewinit=!0,this.cdRef.detectChanges(),this.callerType){var e=this.factoryResolver.resolveComponentFactory(this.callerType),a=this.container.createComponent(e);this.onCallerCreationCallback&&this.onCallerCreationCallback(this,a)}this.handleActiveState(),this.cdRef.detectChanges()},r.prototype.dismiss=function(){this.activeChange.emit(!1)},r.prototype.handleActiveState=function(){var e=this;this.active!==this.lastActiveState&&this.hasViewinit&&(this.lastActiveState=this.active,this.active&&this.focusFirst&&setTimeout((function(){var a=G.getFirstFocusableElement(e.alertWrapper.nativeElement);a&&setTimeout((function(){return a.focus()}))})))},r}(h);le.decorators=[{type:a.Component,args:[{selector:"desy-alert",template:'<div #alertWrapper\r\n [id]="id" [class]="classes ? classes : null" *ngIf="active"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.aria-modal]="ariaModal ? ariaModal : null">\r\n <ng-template #container></ng-template>\r\n <ng-container *ngTemplateOutlet="caller; context:callerContext"></ng-container>\r\n</div>\r\n\r\n'}]}],le.ctorParameters=function(){return[{type:a.ChangeDetectorRef},{type:a.ComponentFactoryResolver}]},le.propDecorators={alertWrapper:[{type:a.ViewChild,args:["alertWrapper"]}],container:[{type:a.ViewChild,args:["container",{read:a.ViewContainerRef}]}],id:[{type:a.Input}],classes:[{type:a.Input}],caller:[{type:a.Input}],focusFirst:[{type:a.Input}],active:[{type:a.Input}],activeChange:[{type:a.Output}]};var se=function(e){function a(){var a=e.apply(this,g(arguments))||this;return a.showAll=!0,a}return u(a,e),a.prototype.ngOnChanges=function(e){if(!this.items)throw new Error("items are required");if(this.items.forEach((function(e){if(!e.html&&!e.text)throw new Error("html or text are required");if(!e.headerHtml&&!e.headerText)throw new Error("headerHtml or headerText are required")})),this.heading&&!this.heading.html&&!this.heading.text)throw new Error("heading.html or heading.text are required")},a.prototype.getIdPrefix=function(){if(this.idPrefix)return this.idPrefix},a.prototype.getItemId=function(e){return this.items[e].id?this.items[e].id:this.getIdPrefix()+"-"+e},a.prototype.changeAll=function(){var e=this;this.items.forEach((function(a){a.open=e.showAll})),this.showAll=!this.showAll},a.prototype.changeOpen=function(e){this.allowMultiple?e.open=!e.open:e.open?e.open=!1:(this.items.forEach((function(e){e.open=!1})),e.open=!0)},a.prototype.focusFirstItem=function(e){e&&e.preventDefault(),this.itemSelectors.toArray()[0].nativeElement.focus()},a.prototype.focusLastItem=function(e){e&&e.preventDefault(),this.itemSelectors.toArray()[this.itemSelectors.length-1].nativeElement.focus()},a.prototype.focusNextItem=function(e){null!=this.itemSelectors.toArray()[e+1]&&this.itemSelectors.toArray()[e+1].nativeElement.focus()},a.prototype.focusPreviousItem=function(e){null!=this.itemSelectors.toArray()[e-1]&&this.itemSelectors.toArray()[e-1].nativeElement.focus()},a.prototype.selectItem=function(e){this.currentItem=e},a}(h);se.decorators=[{type:a.Component,args:[{selector:"desy-accordion",template:'<div [class]="classes"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div class="flex justify-between" *ngIf="heading">\r\n <h2 [desyInnerContent]="heading.html ? heading.html : heading.text" [isHtml]="heading.html"\r\n [class]="[\'c-h2 mb-base\', heading.classes] | makeHtmlList">\r\n </h2>\r\n <button\r\n class="ml-auto py-base text-sm text-neutral-dark underline focus:text-black focus:bg-warning-base focus:outline-none focus:shadow-outline-focus"\r\n *ngIf="showControl && showAll" (click)="changeAll()">\r\n Mostrar todo\r\n </button>\r\n <button\r\n class="ml-auto py-base text-sm text-neutral-dark underline focus:text-black focus:bg-warning-base focus:outline-none focus:shadow-outline-focus"\r\n *ngIf="showControl && !showAll" (click)="changeAll()">\r\n Ocultar todo\r\n </button>\r\n </div>\r\n <div class="Accordion">\r\n <div *ngFor="let item of items; index as i"\r\n (keydown.home)="focusFirstItem($event)"\r\n (keydown.end)="focusLastItem($event)"\r\n (keydown.arrowup)="focusPreviousItem(i)"\r\n (keydown.arrowdown)="focusNextItem(i)"\r\n (click)="selectItem(i)"\r\n [class]="[\'-my-px px-xs py-sm border-t border-b border-neutral-base\', item.classes] | makeHtmlList"\r\n [attr.id]="getItemId(i)"\r\n [attr.role]="(item.role ? role : \'accordion\')"\r\n [attr.aria-selected]="currentItem === i ? \'true\' : \'false\'"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-controls]="\'accordion-\' + getItemId(i)"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="(currentItem !== i || item.disabled ? \'-1\' : null)">\r\n <h3>\r\n <ng-container\r\n *ngTemplateOutlet="item.headerHtml ? headerHtml : headerText; context: {item: item, i: i}"></ng-container>\r\n </h3>\r\n <div\r\n [id]="id ? id : null"\r\n class="Accordion-panel" [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"\r\n *ngIf="item.open">\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-template #headerHtml let-item="item" let-i="i">\r\n <button #itemSelector\r\n [class]="[\'Accordion-trigger group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n *ngIf="item.headerHtml" [desyInnerContent]="item.headerHtml" [isHtml]="item.headerHtml">\r\n </button>\r\n </ng-template>\r\n\r\n <ng-template #headerText let-item="item">\r\n <button #itemSelector\r\n [class]="[\'Accordion-trigger group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n *ngIf="!item.headerHtml" (click)="changeOpen(item)">\r\n {{item.headerText}}\r\n <span\r\n class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black pointer-events-none"\r\n aria-hidden="true" *ngIf="!item.open">\r\n Mostrar\r\n </span>\r\n <span\r\n class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black pointer-events-none"\r\n aria-hidden="true" *ngIf="item.open && (allowToggle || allowMultiple)">\r\n Ocultar\r\n </span>\r\n </button>\r\n </ng-template>\r\n</div>\r\n'}]}],se.propDecorators={itemSelectors:[{type:a.ViewChildren,args:["itemSelector"]}],idPrefix:[{type:a.Input}],allowToggle:[{type:a.Input}],allowMultiple:[{type:a.Input}],heading:[{type:a.Input}],showControl:[{type:a.Input}],items:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}]};var oe=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a}(h);oe.decorators=[{type:a.Component,args:[{selector:"desy-spinner",template:'<div [class]="\'c-spinner\' + (classes ? \' \' + classes : \'\')" data-module="c-spinner"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <p *ngIf="text" class="sr-only" role="alert" aria-live="assertive">{{text}}</p>\r\n</div>\r\n'}]}],oe.propDecorators={classes:[{type:a.Input}],text:[{type:a.Input}],id:[{type:a.Input}]};var de=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnInit=function(){ue(this.summaryText,this.summaryHtml)},a.prototype.ngOnChanges=function(e){ue(this.summaryText,this.summaryHtml)},a}(h);function ue(e,a){if(!a&&!e)throw new Error("summaryHtml or summaryText are required")}de.decorators=[{type:a.Component,args:[{selector:"desy-details",template:'<details \r\n [attr.id]="id ? id : null"\r\n [class]="classes"\r\n [attr.open]="open ? open : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <summary class="py-sm cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black">\r\n <span [desyInnerContent]="summaryHtml ? summaryHtml : summaryText" [isHtml]="summaryHtml"\r\n [class]="summaryClasses ? summaryClasses : \'c-link\'"></span>\r\n </summary>\r\n <div class="py-sm">\r\n <div [ngClass]="containerClasses">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</details> \r\n\r\n'}]}],de.propDecorators={summaryText:[{type:a.Input}],summaryHtml:[{type:a.Input}],summaryClasses:[{type:a.Input}],containerClasses:[{type:a.Input}],id:[{type:a.Input}],open:[{type:a.Input}],classes:[{type:a.Input}]};var ce=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){if(!this.items)throw new Error("items are required");this.items.forEach((function(e){if(!e.term)throw new Error("term is required");if(f(e.term.text,e.term.html),!e.definition)throw new Error("definition is required");f(e.definition.text,e.definition.html)}))},a}(h);ce.decorators=[{type:a.Component,args:[{selector:"desy-description-list",template:'<dl [class]="classes" \r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div *ngFor="let item of items"\r\n [class]="item.classes"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <dt [class]="(item.term.classes ? item.term.classes : \'text-sm text-neutral-dark\')"\r\n [desyInnerContent]="item.term.html ? item.term.html : item.term.text" [isHtml]="item.term.html"\r\n [attr.id]="item.term.id ? item.term.id : null"\r\n [attr.role]="item.term.role"\r\n [attr.aria-describedby]="item.term.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.term.ariaErrorMessage"\r\n [attr.aria-label]="item.term.ariaLabel"\r\n [attr.aria-labelledby]="item.term.ariaLabelledBy"\r\n [attr.aria-hidden]="item.term.ariaHidden"\r\n [attr.aria-disabled]="item.term.ariaDisabled"\r\n [attr.aria-controls]="item.term.ariaControls"\r\n [attr.aria-current]="item.term.ariaCurrent"\r\n [attr.aria-live]="item.term.ariaLive"\r\n [attr.aria-expanded]="item.term.ariaExpanded"\r\n [attr.aria-haspopup]="item.term.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n </dt>\r\n <dd [class]="(item.definition.classes ? item.definition.classes : \'text-base text-black\')" \r\n [desyInnerContent]="item.definition.html ? item.definition.html : item.definition.text" [isHtml]="item.definition.html"\r\n [attr.id]="item.definition.id ? item.definition.id : null"\r\n [attr.role]="item.definition.role"\r\n [attr.aria-describedby]="item.definition.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.definition.ariaErrorMessage"\r\n [attr.aria-label]="item.definition.ariaLabel"\r\n [attr.aria-labelledby]="item.definition.ariaLabelledBy"\r\n [attr.aria-hidden]="item.definition.ariaHidden"\r\n [attr.aria-disabled]="item.definition.ariaDisabled"\r\n [attr.aria-controls]="item.definition.ariaControls"\r\n [attr.aria-current]="item.definition.ariaCurrent"\r\n [attr.aria-live]="item.definition.ariaLive"\r\n [attr.aria-expanded]="item.definition.ariaExpanded"\r\n [attr.aria-haspopup]="item.definition.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n </dd>\r\n </div>\r\n</dl>\r\n'}]}],ce.propDecorators={items:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}]};var pe=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.isOpen=function(){this.open=!this.open,this.toggleOpen()},a.prototype.toggleOpen=function(){this.open?this.show="Ocultar":this.show="Mostrar"},a.prototype.ngOnInit=function(){f(this.text,this.html),this.headerTextOrheaderHtmlRequiredFunction(this.headerText,this.headerHtml),this.toggleOpen()},a.prototype.ngOnChanges=function(e){f(this.text,this.html),this.headerTextOrheaderHtmlRequiredFunction(this.headerText,this.headerHtml),this.toggleOpen()},a.prototype.headerTextOrheaderHtmlRequiredFunction=function(e,a){if(!a&&!e)throw new Error("headerHtml or headerText are required")},a}(h);pe.decorators=[{type:a.Component,args:[{selector:"desy-collapsible",template:'<div [class]="(classes ? classes : \'-my-px py-sm border-t border-b border-neutral-base\')"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <h3>\r\n <button *ngIf="!headerHtml" (click)="isOpen()" [attr.id]="id ? (id + \'-title\') : null"\r\n class="group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black" \r\n [attr.aria-expanded]="open"\r\n [attr.aria-controls]="id ? id : null">{{ headerText }}\r\n <span class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black" aria-hidden="true">{{show}}</span>\r\n </button>\r\n <button *ngIf="headerHtml" (click)="isOpen()" [attr.id]="id ? (id + \'-title\') : null"\r\n class="group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black" \r\n [attr.aria-expanded]="open"\r\n [attr.aria-controls]="id ? id : null"><ng-container *ngTemplateOutlet="tmpHtml"></ng-container>\r\n <span class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black" aria-hidden="true">{{show}}</span>\r\n </button>\r\n </h3>\r\n <div *ngIf="open && html" @displayCollapsible [attr.id]="(id ? id : null)" class="py-sm">\r\n <ng-container *ngTemplateOutlet="html"></ng-container>\r\n </div>\r\n <div *ngIf="open && !html" @displayCollapsible [attr.id]="(id ? id : null)" class="py-sm">\r\n <p [desyInnerContent]="text"></p>\r\n </div>\r\n</div>\r\n\r\n<ng-template #tmpHtml>\r\n <div [outerHTML]="headerHtml | innerHtml"></div> \r\n </ng-template>\r\n',animations:[i.trigger("displayCollapsible",[i.state("void",i.style({opacity:"0.0",transform:"scaleY(0.95)"})),i.state("*",i.style({opacity:"1.0",transform:"scaleY(1.0)"})),i.transition(":enter",[i.animate("100ms ease-out")]),i.transition(":leave",[i.animate("75ms ease-in")])])]}]}],pe.propDecorators={text:[{type:a.Input}],html:[{type:a.Input}],headerText:[{type:a.Input}],headerHtml:[{type:a.Input}],id:[{type:a.Input}],open:[{type:a.Input}],classes:[{type:a.Input}]};var me=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){this.checkRequiredParams()},a.prototype.checkRequiredParams=function(){if(!this.title)throw Error("title is required");if(this.title&&!this.title.text&&!this.title.html)throw Error("title text or title html is required");if(this.description&&!this.description.text&&!this.description.html)throw Error("description text or description html is required");if(this.content&&!this.content.text&&!this.content.html)throw Error("content text or content html is required")},a}(h);me.decorators=[{type:a.Component,args:[{selector:"desy-item",template:'<div [class]="[\'flex flex-wrap p-base border border-neutral-base rounded\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div class="self-center h-full mr-lg" *ngIf="isDraggable || isLocked">\r\n <svg *ngIf="isDraggable && !isLocked" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-5 h-5 text-neutral-base" aria-hidden="true" focusable="false"><g fill="currentColor"><path d="M41 28a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M79.999 28a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M41 70a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M79.999 70a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M41 112a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M79.999 112a10 10 0 1010-10 10 10 0 00-10 10z"/></g></svg>\r\n <svg *ngIf="isLocked && !isDraggable" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-base h-base text-neutral-dark" aria-label="Item Bloqueado" focusable="false"><path d="M115 55.86V45a45 45 0 00-90 0v10.86A15 15 0 0015 70v55a15 15 0 0015 15h80a15 15 0 0015-15V70a15 15 0 00-10-14.14zM70 110a12.5 12.5 0 1112.5-12.5A12.5 12.5 0 0170 110zm25-55H45V45a25 25 0 0150 0z" fill="currentColor"/></svg>\r\n </div>\r\n <div class="self-center h-full mr-lg" *ngIf="icon">\r\n <svg *ngIf="icon.html" [outerHTML]="icon.html"></svg>\r\n <svg *ngIf="icon.type == \'clipboard\' && !icon.html" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-8 h-8 text-neutral-dark" aria-label="Item tipo Solicitud" focusable="false"><path d="M96.25 52.5h-52.5a4.375 4.375 0 000 8.75h52.5a4.375 4.375 0 000-8.75zM100.625 77.286a4.375 4.375 0 00-4.375-4.375h-52.5a4.375 4.375 0 000 8.75h52.5a4.375 4.375 0 004.375-4.375zM58.333 37.917h23.334a5.833 5.833 0 005.833-5.834V17.5A17.54 17.54 0 0065.287.624 17.762 17.762 0 0052.5 18.007v14.076a5.833 5.833 0 005.833 5.834zm7.292-21.875A4.375 4.375 0 1170 20.417a4.375 4.375 0 01-4.375-4.381z" fill="currentColor"/><path d="M113.75 17.5H97.708a1.458 1.458 0 00-1.458 1.458v8.75a1.458 1.458 0 001.458 1.459h13.125a2.917 2.917 0 012.917 2.916v74.62a2.917 2.917 0 01-.852 2.065l-18.713 18.708a2.917 2.917 0 01-2.06.851H29.168a2.917 2.917 0 01-2.917-2.916V32.083a2.917 2.917 0 012.917-2.916h13.125a1.458 1.458 0 001.458-1.459v-8.75a1.458 1.458 0 00-1.458-1.458H26.25a11.667 11.667 0 00-11.667 11.667v99.166A11.667 11.667 0 0026.25 140h87.5a11.667 11.667 0 0011.667-11.667V29.167A11.667 11.667 0 00113.75 17.5z" fill="currentColor"/><path d="M43.75 93.333a4.375 4.375 0 000 8.75h21.875a4.375 4.375 0 000-8.75z" fill="currentColor"/></svg>\r\n <svg *ngIf="icon.type == \'link\' && !icon.html" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-8 h-8 text-neutral-dark" aria-label="Item tipo Link" focusable="false"><path d="M72.368 86.946a5.833 5.833 0 00-3.167 7.624 5.833 5.833 0 01-1.266 6.358l-16.497 16.503a11.667 11.667 0 01-16.496 0l-12.379-12.373a11.667 11.667 0 010-16.502l16.52-16.497a5.91 5.91 0 016.364-1.266 5.834 5.834 0 004.451-10.786 17.698 17.698 0 00-19.063 3.804l-16.52 16.497a23.368 23.368 0 000 32.999l12.378 12.372a23.333 23.333 0 0032.994 0l16.502-16.496a17.547 17.547 0 003.798-19.075 5.833 5.833 0 00-7.619-3.162z" fill="currentColor"/><path d="M45.25 94.74a5.897 5.897 0 008.247 0l45.378-45.373a5.833 5.833 0 00-8.248-8.248L45.249 86.491a5.833 5.833 0 000 8.248z" fill="currentColor"/><path d="M125.685 26.682l-12.373-12.373a23.368 23.368 0 00-32.999 0L63.811 30.806a17.535 17.535 0 00-3.798 19.069A5.835 5.835 0 1070.8 45.418a5.833 5.833 0 011.266-6.335l16.497-16.496a11.667 11.667 0 0116.502 0l12.373 12.372a11.667 11.667 0 010 16.503l-16.52 16.467a5.92 5.92 0 01-6.364 1.266 5.836 5.836 0 00-4.463 10.786 17.652 17.652 0 0019.075-3.798l16.497-16.496a23.374 23.374 0 00.023-33.005z" fill="currentColor"/></svg>\r\n <svg *ngIf="icon.type == \'document\' && !icon.html" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-8 h-8 text-neutral-dark" aria-label="Item tipo Archivo" focusable="false"><path d="M89.355 12.518l26.46 26.46a2.917 2.917 0 01.852 2.06v84.379a2.917 2.917 0 01-2.917 2.916h-87.5a2.917 2.917 0 01-2.917-2.916V14.583a2.917 2.917 0 012.917-2.916h61.046a2.917 2.917 0 012.059.851zM90.918 0H23.333a11.667 11.667 0 00-11.666 11.667v116.666A11.667 11.667 0 0023.333 140h93.334a11.667 11.667 0 0011.666-11.667V37.415a5.833 5.833 0 00-1.709-4.124L95.042 1.709A5.833 5.833 0 0090.918 0z" fill="currentColor"/><path d="M93.333 64.167h-52.5a5.833 5.833 0 010-11.667h52.5a5.833 5.833 0 010 11.667zM93.333 87.5h-52.5a5.833 5.833 0 010-11.667h52.5a5.833 5.833 0 010 11.667zM67.083 110.833h-26.25a5.833 5.833 0 010-11.666h26.25a5.833 5.833 0 010 11.666z" fill="currentColor"/></svg>\r\n </div>\r\n <div class="lg:flex flex-1 self-center">\r\n <div class="lg:flex-1 lg:self-center">\r\n <p [class]="title.classes" [desyInnerContent]="title.html ? title.html : title.text" [isHtml]="title.html">\r\n </p>\r\n <p [class]="description.classes" [desyInnerContent]="description.html ? description.html : description.text" [isHtml]="description.html" *ngIf="description">\r\n </p>\r\n <ul class="-ml-sm lg:divide-x lg:divide-neutral-base" *ngIf="items">\r\n <li class="lg:inline-block px-sm text-sm text-neutral-dark" *ngFor="let item of items">{{item}}</li>\r\n </ul>\r\n <p [class]="content.classes" [desyInnerContent]="content.html ? content.html : content.text" [isHtml]="content.html" *ngIf="content">\r\n </p>\r\n </div>\r\n <div class="w-full lg:w-auto lg:text-right mt-base lg:mt-0 lg:ml-base" *ngIf="caller">\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n'}]}],me.propDecorators={title:[{type:a.Input}],description:[{type:a.Input}],items:[{type:a.Input}],content:[{type:a.Input}],icon:[{type:a.Input}],isDraggable:[{type:a.Input}],isLocked:[{type:a.Input}],id:[{type:a.Input}],classes:[{type:a.Input}],caller:[{type:a.Input}]};var be=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){this.checkRequiredParams()},a.prototype.checkRequiredParams=function(){if(!this.figureHtml)throw new Error("figureHtml are required")},a}(h);be.decorators=[{type:a.Component,args:[{selector:"desy-media-object",template:'<div [class]="\'flex\' + (classes ? \' \' + classes : \'\') + (center==true ? \' \' + \'items-center\' : \'\')" \r\n [attr.id]="id"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex">\r\n <div [class]="(reverse==true ? \' \' + \'order-1\' : \'\') + (figureClasses ? \' \' + figureClasses : \'\')" [attr.figureHtml]="figureHtml" [innerHtml]="figureHtml"></div>\r\n\r\n <div [class]="\'flex-1\' + (contenClasses ? \' \' + contenClasses : \'\')">\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n</div>\r\n\r\n'}]}],be.propDecorators={figureHtml:[{type:a.Input}],classes:[{type:a.Input}],center:[{type:a.Input}],reverse:[{type:a.Input}],figureClasses:[{type:a.Input}],contenClasses:[{type:a.Input}],caller:[{type:a.Input}],id:[{type:a.Input}]};var ge=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.getType=function(){return this.icon.type?this.icon.type.toLocaleLowerCase():"success"},a.prototype.ngOnChanges=function(e){if(!this.text)throw new Error("title is required");if(!this.icon)throw new Error("icon is required")},a}(h);ge.decorators=[{type:a.Component,args:[{selector:"desy-status",template:'<div [class]="(classes ? classes : \'\')"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <p class="inline-flex items-center">\r\n <span class="inline-block font-bold uppercase">{{text}}</span>\r\n <span class="inline-block ml-sm" *ngIf="!icon.html; else elseBlock">\r\n <ng-container [ngSwitch]="getType()">\r\n <ng-container *ngSwitchCase="\'success\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-success-dark" aria-hidden="true" focusable="false"><path d="M39.94 125a19.88 19.88 0 01-15.53-7.81L2.48 92.26a10 10 0 0115-13.2l20.55 23.39a2.5 2.5 0 003.68.08l81-84.42a10.002 10.002 0 1114.5 13.78l-82.02 86.33A19.41 19.41 0 0139.94 125z" fill="currentColor"/></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'alert\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-alert-base" aria-hidden="true" focusable="false"><path d="M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'loading\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4" aria-hidden="true" focusable="false"><path d="M71.15 2.3a7.7 7.7 0 100 15.4A52.3 52.3 0 1118.85 70a62.29 62.29 0 014.7-23.16l5.76 4a7.55 7.55 0 004.25 1.31 7.41 7.41 0 004.09-1.22 7.51 7.51 0 003.28-7.68L37 22.45a7.52 7.52 0 00-8.66-6l-21 3.65a7.5 7.5 0 00-3 13.57l6.21 4.27A77.78 77.78 0 003.45 70a67.7 67.7 0 1067.7-67.7z" fill="currentColor"/><path d="M91.15 92.5a7.45 7.45 0 01-3.35-.79l-20-10A7.51 7.51 0 0163.65 75V42.5a7.5 7.5 0 0115 0v27.87l15.86 7.92a7.5 7.5 0 01-3.36 14.21z" fill="currentColor"/></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'error\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-alert-base" aria-hidden="true" focusable="false"><path d="M70 75a7.5 7.5 0 007.5-7.5v-25a7.5 7.5 0 00-15 0v25A7.5 7.5 0 0070 75zM60 92.5a10 10 0 1020 0 10 10 0 10-20 0z" fill="currentColor"/><path d="M139.78 101.83L135 82.6a7.51 7.51 0 00-9.1-5.45l-19.22 4.8a7.5 7.5 0 00-2 13.71l6.11 3.66A55.31 55.31 0 0170 120.19a50.47 50.47 0 01-47.16-33.06 7.503 7.503 0 00-14.09 5.16A65.52 65.52 0 0070 135.19 71.27 71.27 0 00123.57 107l5.07 3a7.5 7.5 0 0011.14-8.25zM14.13 62.85l19.22-4.8a7.5 7.5 0 002.05-13.71L29.76 41A56.18 56.18 0 0170 19.81a50.47 50.47 0 0147.16 33.06 7.51 7.51 0 007 4.92 7.61 7.61 0 002.59-.46 7.51 7.51 0 004.46-9.62A65.52 65.52 0 0070 4.81 71.53 71.53 0 0016.83 33.2l-5.47-3.28A7.5 7.5 0 00.22 38.17L5 57.4a7.51 7.51 0 007.27 5.68 7.65 7.65 0 001.86-.23z" fill="currentColor"/></svg>\r\n </ng-container>\r\n </ng-container>\r\n </span>\r\n <ng-template #elseBlock>\r\n <span class="inline-block ml-sm" [desyInnerContent]="icon.html" [isHtml]="icon.html"></span>\r\n </ng-template>\r\n </p>\r\n</div>\r\n'}]}],ge.propDecorators={text:[{type:a.Input}],id:[{type:a.Input}],classes:[{type:a.Input}],icon:[{type:a.Input}]};var he=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.ngOnChanges=function(e){this.checkRequired()},a.prototype.checkRequired=function(){if(!this.id)throw new Error("id is required");this.title&&f(this.title.text,this.title.html),this.items&&this.items.length>0&&this.items.forEach((function(e){if(!e.term)throw new Error("item term is required");if(f(e.term.text,e.term.html),!e.definition)throw new Error("item definition is required");f(e.definition.text,e.definition.html)}))},a}(h);he.decorators=[{type:a.Component,args:[{selector:"desy-status-item",template:'<ng-template #commonHtml>\r\n <p *ngIf="title" [class]="(title.classes ? title.classes : \'my-sm\')"\r\n [desyInnerContent]="title.html ? title.html : title.text" [isHtml]="title.html"></p>\r\n <ng-container *ngIf="hint">\r\n <desy-hint [text]="hint.text" [html]="hint.html" [classes]="hint.classes" [id]="hint.id"\r\n [role]="hint.role"\r\n [ariaLabel]="hint.ariaLabel"\r\n [ariaDescribedBy]="(hint.ariaDescribedBy ? hint.ariaDescribedBy + \'\' + hint.id : hint.id)"\r\n [ariaLabelledBy]="hint.ariaLabelledBy"\r\n [ariaHidden]="hint.ariaHidden"\r\n [ariaDisabled]="hint.ariaDisabled"\r\n [ariaControls]="hint.ariaControls"\r\n [ariaCurrent]="hint.ariaCurrent"\r\n [ariaLive]="hint.ariaLive"\r\n [ariaExpanded]="hint.ariaExpanded"\r\n [ariaErrorMessage]="hint.ariaErrorMessage"\r\n [ariaHasPopup]="hint.ariaHasPopup"\r\n [tabindex]="hint.tabindex"></desy-hint>\r\n </ng-container>\r\n <ng-container *ngIf="errorMessage">\r\n <desy-error-message [text]="errorMessage.text" [html]="errorMessage.html"\r\n [visuallyHiddenText]="errorMessage.visuallyHiddenText"\r\n [id]="(errorId ? errorId : id + \'-error\')" [classes]="errorMessage.classes"\r\n [role]="errorMessage.role"\r\n [ariaLabel]="errorMessage.ariaLabel"\r\n [ariaDescribedBy]="(errorMessage.ariaDescribedBy ? errorMessage.ariaDescribedBy + \'\' + errorId : errorId)"\r\n [ariaLabelledBy]="errorMessage.ariaLabelledBy"\r\n [ariaHidden]="errorMessage.ariaHidden"\r\n [ariaDisabled]="errorMessage.ariaDisabled"\r\n [ariaControls]="errorMessage.ariaControls"\r\n [ariaCurrent]="errorMessage.ariaCurrent"\r\n [ariaLive]="errorMessage.ariaLive"\r\n [ariaExpanded]="errorMessage.ariaExpanded"\r\n [ariaErrorMessage]="errorMessage.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessage.ariaHasPopup"\r\n [tabindex]="errorMessage.tabindex"></desy-error-message>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<div [attr.id]="id ? id : null" [class]="(classes ? classes : null)"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div class="lg:flex lg:justify-between lg:items-start -my-px px-base py-sm border-t border-b border-neutral-base">\r\n <ng-container *ngIf="items; else noItems">\r\n <dl class="lg:w-2/3">\r\n <ng-container *ngTemplateOutlet="commonHtml"></ng-container>\r\n <div *ngFor="let item of items"\r\n [class]="(item.classes ? \'flex lg-flex-wrap \' + item.classes : \'flex lg-flex-wrap\')"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup">\r\n <dt [class]="(item.term.classes ? item.term.classes : \'w-1/2 my-sm\')"\r\n [desyInnerContent]="item.term.html ? item.term.html : item.term.text" [isHtml]="item.term.html"\r\n [attr.id]="item.term.id ? item.term.id : null"\r\n [attr.role]="item.term.role"\r\n [attr.aria-describedby]="item.term.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.term.ariaErrorMessage"\r\n [attr.aria-label]="item.term.ariaLabel"\r\n [attr.aria-labelledby]="item.term.ariaLabelledBy"\r\n [attr.aria-hidden]="item.term.ariaHidden"\r\n [attr.aria-disabled]="item.term.ariaDisabled"\r\n [attr.aria-controls]="item.term.ariaControls"\r\n [attr.aria-current]="item.term.ariaCurrent"\r\n [attr.aria-live]="item.term.ariaLive"\r\n [attr.aria-expanded]="item.term.ariaExpanded"\r\n [attr.aria-haspopup]="item.term.ariaHasPopup">\r\n </dt>\r\n <dd [class]="(item.definition.classes ? item.definition.classes : \'w-1/2 my-sm font-semibold\')"\r\n [desyInnerContent]="item.definition.html ? item.definition.html : item.definition.text"\r\n [isHtml]="item.definition.html"\r\n [attr.id]="item.definition.id ? item.definition.id : null"\r\n [attr.role]="item.definition.role"\r\n [attr.aria-describedby]="item.definition.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.definition.ariaErrorMessage"\r\n [attr.aria-label]="item.definition.ariaLabel"\r\n [attr.aria-labelledby]="item.definition.ariaLabelledBy"\r\n [attr.aria-hidden]="item.definition.ariaHidden"\r\n [attr.aria-disabled]="item.definition.ariaDisabled"\r\n [attr.aria-controls]="item.definition.ariaControls"\r\n [attr.aria-current]="item.definition.ariaCurrent"\r\n [attr.aria-live]="item.definition.ariaLive"\r\n [attr.aria-expanded]="item.definition.ariaExpanded"\r\n [attr.aria-haspopup]="item.definition.ariaHasPopup">\r\n </dd>\r\n </div>\r\n </dl>\r\n </ng-container>\r\n <ng-template #noItems>\r\n <div class="lg:w-2/3">\r\n <ng-container *ngTemplateOutlet="commonHtml"></ng-container>\r\n </div>\r\n </ng-template>\r\n\r\n <div class="lg:flex lg:flex-wrap lg:items-center lg:1/3">\r\n <div *ngIf="caller" class="w-full lg:w-auto lg:text-right mt-base lg:mt-0 mb-base lg:mb-0">\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n <div *ngIf="status" class="mb-base lg:mb-0 ml-base">\r\n <desy-status [text]="status.text" [icon]="status.icon" [classes]="status.classes" [id]="status.id"\r\n [role]="status.role"\r\n [ariaLabel]="status.ariaLabel"\r\n [ariaDescribedBy]="status.ariaDescribedBy"\r\n [ariaLabelledBy]="status.ariaLabelledBy"\r\n [ariaHidden]="status.ariaHidden"\r\n [ariaDisabled]="status.ariaDisabled"\r\n [ariaControls]="status.ariaControls"\r\n [ariaCurrent]="status.ariaCurrent"\r\n [ariaLive]="status.ariaLive"\r\n [ariaExpanded]="status.ariaExpanded"\r\n [ariaErrorMessage]="status.ariaErrorMessage"\r\n [ariaHasPopup]="status.ariaHasPopup"\r\n [tabindex]="status.tabindex"></desy-status>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n'}]}],he.propDecorators={id:[{type:a.Input}],classes:[{type:a.Input}],errorId:[{type:a.Input}],describedBy:[{type:a.Input}],title:[{type:a.Input}],hint:[{type:a.Input}],errorMessage:[{type:a.Input}],items:[{type:a.Input}],status:[{type:a.Input}],caller:[{type:a.Input}]};var ye=function(e){function a(){var a=e.apply(this,g(arguments))||this;return a.currentTab=0,a}return u(a,e),a.prototype.ngOnChanges=function(e){if(!this.title)throw new Error("title is required");if(!this.tablistAriaLabel)throw new Error("tablistAriaLabel is required");if(!this.items)throw new Error("items are required");this.items.forEach((function(e){if(!e.id)throw new Error("id is required");if(f(e.text,e.html),!e.panel)throw new Error("panel is required");f(e.panel.text,e.panel.html)}))},a.prototype.getIdPrefix=function(){if(this.idPrefix)return this.idPrefix},a.prototype.getItemId=function(e){return this.items[e].id?this.items[e].id:this.getIdPrefix()+"-"+e},a.prototype.isDisabled=function(e){return!!e.disabled||null},a.prototype.selectTab=function(e){this.currentTab=e},a.prototype.focusFirstTab=function(e){var a=this;e&&e.preventDefault(),this.tabSelectors.filter((function(e,r){return!a.items[r].disabled}))[0].nativeElement.focus()},a.prototype.focusLastTab=function(e){var a=this;e&&e.preventDefault();var r=this.tabSelectors.filter((function(e,r){return!a.items[r].disabled}));r[r.length-1].nativeElement.focus()},a.prototype.focusNextTab=function(e){for(var a=(e+1)%this.items.length;a!==e;){if(!this.items[a].disabled){this.tabSelectors.find((function(e,r){return r===a})).nativeElement.focus();break}a=(a+1)%this.items.length}},a.prototype.focusPreviousTab=function(e){for(var a=(e-1+this.items.length)%this.items.length;a!==e;){if(!this.items[a].disabled){this.tabSelectors.find((function(e,r){return r===a})).nativeElement.focus();break}a=(a-1+this.items.length)%this.items.length}},a.prototype.ngAfterViewInit=function(){var e=this;setTimeout((function(){return e.selectTab(e.items.findIndex((function(e){return!e.disabled})))}))},a}(h);ye.decorators=[{type:a.Component,args:[{selector:"desy-tabs",template:'<div [attr.id]="id ? id : null" [class]="(classes ? \'c-tabs \' + classes : \'c-tabs\')" data-module="c-tabs"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <ng-container *ngIf="title">\r\n <h2 class="lg:hidden mb-sm text-sm">{{title}}</h2>\r\n </ng-container>\r\n <ng-container *ngIf="!title">\r\n <h2 class="lg:hidden mb-sm text-sm">Contenido</h2>\r\n </ng-container> \r\n <ng-container *ngIf="items">\r\n <div class="c-tabs lg:flex lg:flex-wrap" role="tablist" [attr.aria-label]=tablistAriaLabel>\r\n <ng-container *ngFor="let item of items; index as i">\r\n <button #tabSelector\r\n (click)="selectTab(i)"\r\n (keydown.home)="focusFirstTab($event)"\r\n (keydown.end)="focusLastTab($event)"\r\n (keydown.arrowleft)="focusPreviousTab(i)"\r\n (keydown.arrowright)="focusNextTab(i)"\r\n class="c-tabs__link relative flex items-center py-sm lg:px-lg lg:py-base border border-transparent text-black hover:text-primary-base underline truncate focus:outline-none"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': isDisabled(item)}"\r\n [attr.id]="getItemId(i)"\r\n [attr.role]="(item.role ? role : \'tab\')"\r\n [attr.aria-selected]="currentTab === i ? \'true\' : \'false\'"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-controls]="\'tab-\' + getItemId(i)"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="(currentTab !== i || item.disabled ? \'-1\' : null)"\r\n [attr.disabled]="isDisabled(item)"\r\n [attr.aria-disabled]="isDisabled(item) ? \'true\' : (ariaDisabled ? ariaDisabled : null)">\r\n <span class="flex items-center pointer-events-none" [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></span>\r\n </button>\r\n </ng-container>\r\n </div>\r\n\r\n <div [class]="[\'p-base mt-base lg:mt-0 border border-neutral-base focus:outline-none focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base\', items[currentTab].panel.classes] | makeHtmlList"\r\n [attr.id]="\'tab-\' + getItemId(currentTab)"\r\n [attr.role]="(items[currentTab].panel.role ? items[currentTab].panel.role : \'tabpanel\')"\r\n [attr.aria-describedby]="items[currentTab].panel.ariaDescribedBy"\r\n [attr.aria-errormessage]="items[currentTab].panel.ariaErrorMessage"\r\n [attr.aria-label]="items[currentTab].panel.ariaLabel"\r\n [attr.aria-labelledby]="getItemId(currentTab)"\r\n [attr.aria-hidden]="items[currentTab].panel.ariaHidden"\r\n [attr.aria-disabled]="items[currentTab].panel.ariaDisabled"\r\n [attr.aria-controls]="items[currentTab].panel.ariaControls"\r\n [attr.aria-current]="items[currentTab].panel.ariaCurrent"\r\n [attr.aria-live]="items[currentTab].panel.ariaLive"\r\n [attr.aria-expanded]="items[currentTab].panel.ariaExpanded"\r\n [attr.aria-haspopup]="items[currentTab].panel.ariaHasPopup"\r\n [attr.tabindex]="(items[currentTab].panel.tabindex ? items[currentTab].panel.tabindex : \'0\')">\r\n <h3 class="lg:sr-only inline-flex items-center mb-base lg:mb-0 font-semibold"\r\n [desyInnerContent]="items[currentTab].html ? items[currentTab].html : items[currentTab].text"\r\n [isHtml]="items[currentTab].html"></h3>\r\n <ng-container *ngIf="items[currentTab].panel.html; else elseBlock">\r\n <ng-container *ngTemplateOutlet="items[currentTab].panel.html"></ng-container>\r\n </ng-container>\r\n <ng-template #elseBlock>\r\n <p>{{items[currentTab].panel.text}}</p>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n</div>\r\n'}]}],ye.propDecorators={tabSelectors:[{type:a.ViewChildren,args:["tabSelector"]}],id:[{type:a.Input}],idPrefix:[{type:a.Input}],classes:[{type:a.Input}],title:[{type:a.Input}],tablistAriaLabel:[{type:a.Input}],items:[{type:a.Input}]};var fe=function(){function e(e){this.factoryResolver=e}return e.prototype.openAlert=function(e,r){var t=this;return new Promise((function(n,i){e||i("caller is required"),r||i("alertOptions is required");var l=t.createAlert(r),s={alert:l};e instanceof a.TemplateRef?(l.instance.caller=e,n(s)):(l.instance.callerType=ee,l.instance.onCallerCreationCallback=function(a,r){t.initNotification(a,r,e),s.component=r,n(s)})}))},e.prototype.closeAlert=function(e){if(!e)throw Error("alert is required");e instanceof a.ComponentRef?e.instance.dismiss():e.dismiss()},e.prototype.onCloseAlert=function(e){return new Promise((function(r){var t=(e instanceof a.ComponentRef?e.instance:e).activeChange.subscribe((function(){r(),t.unsubscribe()}))}))},e.prototype.createAlert=function(e){var a=this.factoryResolver.resolveComponentFactory(le),r=e.place.createComponent(a);return r.instance.active=!0,e&&Object.assign(r.instance,e),this.onCloseAlert(r).then((function(){return r.destroy()})),r},e.prototype.initNotification=function(e,a,r){var t=this;if(Object.assign(a.instance,r),r.isDismissible)var n=a.instance.isOpenChange.subscribe((function(){t.closeAlert(e),n.unsubscribe()}))},e}();fe.ɵprov=a.ɵɵdefineInjectable({factory:function(){return new fe(a.ɵɵinject(a.ComponentFactoryResolver))},token:fe,providedIn:"root"}),fe.decorators=[{type:a.Injectable,args:[{providedIn:"root"}]}],fe.ctorParameters=function(){return[{type:a.ComponentFactoryResolver}]};var xe=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.currentPage=1,r.currentPageChange=new a.EventEmitter,r.prefix='<span class="sr-only">Página</span>',r.suffix='<span class="sr-only">(resultados del '+r.getInitPosition()+" al "+r.getMaxPosition()+")</span>",r}return u(r,e),r.prototype.ngOnChanges=function(e){if(!this.totalItems)throw new Error("totalItems are required");if(!this.itemsPerPage)throw new Error("itemsPerPage are required");this.currentPage||(this.currentPage=1,this.currentPageChange.emit(this.currentPage)),this.nPages=Math.ceil(this.totalItems/this.itemsPerPage),this.buildPages()},r.prototype.buildPages=function(){this.items=[];for(var e=0;e<this.nPages;e++){var a={text:e+1,active:e+1===this.currentPage,routerLink:[]};this.items.push(a)}},r.prototype.getHtmlButton=function(e,a){return a?this.prefix+"<strong>"+(e+1)+"</strong>"+this.suffix:this.prefix+(e+1)+this.suffix},r.prototype.getHtmlButtonPrevius=function(){var e='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="self-center h-2.5 w-2.5 mr-2" aria-hidden="true" focusable="false"><path d="M54.87 71.77a2.5 2.5 0 010-3.54L106 17.07A10 10 0 1091.89 2.93L35.43 59.39a15 15 0 000 21.22l56.46 56.46A10 10 0 10106 122.93z" fill="currentColor" /></svg>';return this.previousText?e+" "+this.previousText:e},r.prototype.getHtmlButtonNext=function(){var e='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="self-center h-2.5 w-2.5 ml-2" aria-hidden="true" focusable="false"><path d="M34 137.07a10 10 0 010-14.14l51.13-51.16a2.5 2.5 0 000-3.54L34 17.07A10 10 0 0148.11 2.93l56.46 56.46a15 15 0 010 21.22l-56.46 56.46a10 10 0 01-14.11 0z" fill="currentColor" /></svg>';return this.nextText?this.nextText+" "+e:e},r.prototype.getDropdownText=function(){return"Página "+this.currentPage},r.prototype.getId=function(e){return 0===e?this.getIdPrefix():this.getIdPrefix()+"-"+e},r.prototype.getIdPrevius=function(){return this.getIdPrefix()+"-previous"},r.prototype.getIdNext=function(){return this.getIdPrefix()+"-next"},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"pagination-item"},r.prototype.changePage=function(e){this.currentPage=e,this.currentPageChange.emit(this.currentPage);for(var a=0;a<this.items.length;a++){this.items[a].active=a+1===this.currentPage}},r.prototype.getClass=function(){var e="flex items-center flex-1 mb-base lg:mb-0 text-sm";return this.classes?e+" "+this.classes:e},r.prototype.previous=function(){this.currentPage>1&&this.changePage(this.currentPage-1)},r.prototype.next=function(){this.currentPage<this.nPages&&this.changePage(this.currentPage+1)},r.prototype.getInitPosition=function(e){return null==e&&(e=this.currentPage),this.itemsPerPage*e-(this.itemsPerPage-1)},r.prototype.getMaxPosition=function(e){return null==e&&(e=this.currentPage),this.itemsPerPage*e<this.totalItems?this.itemsPerPage*e:this.totalItems},r}(h);xe.decorators=[{type:a.Component,args:[{selector:"desy-pagination",template:'<div [class]="[\'lg:flex lg:align-center\', classesContainer] | makeHtmlList">\r\n <ng-container *ngIf="hasSelect">\r\n <ng-container *ngTemplateOutlet="select"></ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!hasSelect">\r\n <ng-container *ngTemplateOutlet="buttons"></ng-container>\r\n </ng-container>\r\n <p class="block lg:ml-auto text-sm text-neutral-dark">\r\n <span class="sr-only">Posición de paginación: </span>{{getInitPosition()}} - {{getMaxPosition()}} de {{totalItems}}\r\n </p>\r\n</div>\r\n\r\n<ng-template #buttons>\r\n <nav [class]="getClass()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ul class="flex flex-wrap">\r\n <li *ngFor="let item of items; index as i">\r\n <desy-button *ngIf="item.active" [id]="getId(i)" [html]="getHtmlButton(i, true)" classes="c-button--primary mr-sm" ariaCurrent="page"></desy-button>\r\n <desy-button *ngIf="!item.active" [id]="getId(i)" [html]="getHtmlButton(i, false)" (clickEvent)="changePage((i + 1))" classes="mr-sm"></desy-button>\r\n </li>\r\n </ul>\r\n </nav>\r\n</ng-template>\r\n\r\n<ng-template #select>\r\n <div [class]="getClass()" role="menu"\r\n [attr.id]="id ? id : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <desy-button (clickEvent)="previous()" [id]="getIdPrevius()" [html]="getHtmlButtonPrevius()" [disabled]="!hasPrevious" classes="c-button--sm c-button--transparent mr-xs"></desy-button>\r\n <desy-dropdown [text]="getDropdownText()" classes="c-dropdown--sm c-dropdown--transparent mr-xs" classesTooltip="max-h-40 w-20 overflow-y-auto" [caller]="nav"></desy-dropdown>\r\n <desy-button (clickEvent)="next()" [id]="getIdNext()" [html]="getHtmlButtonNext()" [disabled]="!hasNext" classes="c-button--sm c-button--transparent mr-xs"></desy-button>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #nav>\r\n <desy-nav (clickEvent)="changePage(+$event.item.text)"\r\n [isMenu]="true" [items]="items" classes="text-cente"\r\n [idPrefix]="idPrefix"\r\n ariaLabel="Paginación"></desy-nav>\r\n</ng-template>\r\n\r\n\r\n'}]}],xe.propDecorators={hasSelect:[{type:a.Input}],idPrefix:[{type:a.Input}],classesContainer:[{type:a.Input}],totalItems:[{type:a.Input}],itemsPerPage:[{type:a.Input}],hasPrevious:[{type:a.Input}],hasNext:[{type:a.Input}],previousText:[{type:a.Input}],nextText:[{type:a.Input}],classes:[{type:a.Input}],id:[{type:a.Input}],currentPage:[{type:a.Input}],currentPageChange:[{type:a.Output}]};var ve=function(){function e(e){this.sanitizer=e}return e.prototype.transform=function(e){return this.sanitizer.sanitize(a.SecurityContext.HTML,e)},e}();ve.decorators=[{type:a.Pipe,args:[{name:"innerHtml"}]}],ve.ctorParameters=function(){return[{type:s.DomSanitizer}]};var De=function(){function e(){}return e.prototype.transform=function(e,a){var r=e.filter((function(e){return e})).join(" ");return 0===r.length&&a&&(r=a),r},e}();De.decorators=[{type:a.Pipe,args:[{name:"makeHtmlList"}]}];var Ce=function(){function e(e){this.el=e}return e.prototype.ngOnChanges=function(e){this.content?this.isHtml?this.el.nativeElement.innerHTML=this.content:this.el.nativeElement.innerText=this.content:this.el.nativeElement.innerText=null},e}();Ce.decorators=[{type:a.Directive,args:[{selector:"[desyInnerContent]"}]}],Ce.ctorParameters=function(){return[{type:a.ElementRef}]},Ce.propDecorators={content:[{type:a.Input,args:["desyInnerContent"]}],isHtml:[{type:a.Input}]};var Ie=function(){function e(e){this.hostElementRef=e,this.active=!0,this.clickOutside=new a.EventEmitter}return e.prototype.onClick=function(e){!(this.desyClickOutsideElem?this.desyClickOutsideElem.contains(e):this.hostElementRef.nativeElement.contains(e))&&this.active&&this.clickOutside.emit()},e}();Ie.decorators=[{type:a.Directive,args:[{selector:"[desyClickOutside]"}]}],Ie.ctorParameters=function(){return[{type:a.ElementRef}]},Ie.propDecorators={active:[{type:a.Input,args:["desyClickOutside"]}],clickOutside:[{type:a.Output}],desyClickOutsideElem:[{type:a.Input}],onClick:[{type:a.HostListener,args:["document:click",["$event.target"]]}]};var Le=function(){};Le.decorators=[{type:a.NgModule,args:[{declarations:[h,y,x,ve,De,Ce,Ie],imports:[n.CommonModule],exports:[l.RouterModule,h,y,x,ve,De,Ce,Ie]}]}];var Ee=function(){};Ee.decorators=[{type:a.Component,args:[{selector:"desy-template-driven-wrapper",template:"<ng-content></ng-content>\r\n",providers:[{provide:r.ControlContainer,useExisting:r.NgForm}]}]}];var He=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.checked=!1,r.check=new a.EventEmitter,r}return u(r,e),r.prototype.ngOnChanges=function(e){this.checkRequired()},r.prototype.checkRequired=function(){if(!this.divider&&(f(this.text,this.html),!this.value))throw Error("value is required")},r.prototype.getId=function(){return this.id?this.id:0===this.index?this.idPrefix:this.idPrefix+"-"+this.index},r.prototype.getConditionalId=function(){return"conditional-"+this.getId()},r.prototype.getItemHintId=function(){return this.getId()+"-item-hint"},r.prototype.hasChanged=function(){this.check.emit(this.value)},r.prototype.hasHint=function(){return!!(this.hintText||this.hintData&&(this.hintData.text||this.hintData.html))},r}(h);He.decorators=[{type:a.Component,args:[{selector:"desy-item-radio",template:'<div [ngClass]="{\'border-t border-b border-neutral-base -mb-px\': hasDividers}" [class]="classes">\r\n <div *ngIf="divider"><p>{{ divider }}</p></div>\r\n <div *ngIf="(text || html) && value">\r\n <div class="relative flex items-start py-base">\r\n <div class="flex items-center mx-sm">\r\n <input class="w-6 h-6 text-primary-base transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base text-primary-base"\r\n [attr.id]="getId()"\r\n [attr.name]="nameRadios"\r\n type="radio"\r\n [value]="value" (change)="hasChanged()"\r\n [checked]="checked"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.aria-controls]="conditionalHtml ? getConditionalId() : null"\r\n [attr.aria-describedby]="hasHint() ? getItemHintId() : null"\r\n [attr.aria-invalid]="hasError ? true : null"\r\n\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n </div>\r\n <div class="pt-0.5 leading-5">\r\n <desy-label [text]="text" [html]="html" [for]="getId()"\r\n [classes]="labelData ? labelData.classes : null"\r\n [role]="labelData ? labelData.role : null"\r\n [ariaLabel]="labelData ? labelData.ariaLabel : null"\r\n [ariaDescribedBy]="labelData ? labelData.ariaDescribedBy: null"\r\n [ariaLabelledBy]="labelData ? labelData.ariaLabelledBy : null"\r\n [ariaHidden]="labelData ? labelData.ariaHidden : null"\r\n [ariaDisabled]="labelData ? labelData.ariaDisabled : null"\r\n [ariaControls]="labelData ? labelData.ariaControls : null"\r\n [ariaCurrent]="labelData ? labelData.ariaCurrent : null"\r\n [ariaLive]="labelData ? labelData.ariaLive : null"\r\n [ariaExpanded]="labelData ? labelData.ariaExpanded : null"\r\n [ariaErrorMessage]="labelData ? labelData.ariaErrorMessage : null"\r\n [ariaHasPopup]="labelData ? labelData.ariaHasPopup : null"\r\n [tabindex]="labelData ? labelData.tabindex : null"></desy-label>\r\n\r\n <desy-hint *ngIf="hintData && (hintData.text || hintData.html)"\r\n [id]="getItemHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintData && hintText" [text]="hintText" [id]="getItemHintId()"></desy-hint>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf="conditional && conditionalHtml && checked" @displayConditional\r\n class="mb-lg ml-5 pt-sm pb-base pl-6 origin-top-left border-l-2 border-primary-base"\r\n [attr.id]="getConditionalId()">\r\n <ng-container *ngTemplateOutlet="conditionalHtml"></ng-container>\r\n </div>\r\n</div>\r\n',animations:[i.trigger("displayConditional",[i.state("void",i.style({opacity:"0.0",transform:"scale(0.95)"})),i.state("*",i.style({opacity:"1.0",transform:"scale(1.0)"})),i.transition(":enter",[i.animate("100ms ease-out")])])]}]}],He.propDecorators={hasDividers:[{type:a.Input}],nameRadios:[{type:a.Input}],hasError:[{type:a.Input}],idPrefix:[{type:a.Input}],index:[{type:a.Input}],id:[{type:a.Input}],disabled:[{type:a.Input}],text:[{type:a.Input}],html:[{type:a.Input}],value:[{type:a.Input}],divider:[{type:a.Input}],checked:[{type:a.Input}],conditional:[{type:a.Input}],conditionalHtml:[{type:a.Input}],classes:[{type:a.Input}],labelData:[{type:a.Input}],hintData:[{type:a.Input}],hintText:[{type:a.Input}],check:[{type:a.Output}]};var we=function(e){function r(){var r=e.apply(this,g(arguments))||this;return r.check=new a.EventEmitter,r}return u(r,e),r.prototype.ngOnChanges=function(e){this.checkRequired(),this.inputElement&&(this.inputElement.nativeElement.checked=this.checked)},r.prototype.ngAfterViewChecked=function(){this.inputElement&&(this.inputElement.nativeElement.checked=this.checked)},r.prototype.checkRequired=function(){if(f(this.text,this.html),!this.value)throw Error("value is required")},r.prototype.getId=function(){return this.id?this.id:this.idPrefix+(this.index>0?"-"+this.index:"")},r.prototype.getItemHintId=function(){return this.hasHint()?this.getId()+"-item-hint":null},r.prototype.hasChanged=function(){var e=this.inputElement.nativeElement;this.isIndeterminate&&(e.readOnly?(e.checked=!1,e.readOnly=!1):e.checked||(e.readOnly=!0,e.indeterminate=!0)),this.check.emit(e.checked||e.indeterminate?this.value:null)},r.prototype.hasHint=function(){return!!(this.hintText||this.hintData&&(this.hintData.text||this.hintData.html))},r}(h);we.decorators=[{type:a.Component,args:[{selector:"desy-item-checkbox",template:'<div [ngClass]="{\'border-t border-b border-neutral-base -mb-px\' : hasDividers}" [class]="classes">\r\n <div class="relative flex items-start py-base">\r\n <div class="flex items-center mx-sm">\r\n <input #input class="w-6 h-6 transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base text-primary-base"\r\n [attr.id]="getId()"\r\n [attr.name]="name ? name : nameCheckbox"\r\n type="checkbox"\r\n [value]="value" (change)="hasChanged()"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.aria-controls]="conditionalHtml ? \'conditional-\' + this.getId() : null"\r\n [attr.aria-describedby]="[describedBy, getItemHintId()] | makeHtmlList:null"\r\n [attr.aria-invalid]="hasError ? true : null"\r\n\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n </div>\r\n <div class="pt-0.5 leading-5">\r\n <desy-label [text]="text" [html]="html" [for]="getId()"\r\n [classes]="labelData ? labelData.classes : null"\r\n [role]="labelData ? labelData.role : null"\r\n [ariaLabel]="labelData ? labelData.ariaLabel : null"\r\n [ariaDescribedBy]="labelData ? labelData.ariaDescribedBy: null"\r\n [ariaLabelledBy]="labelData ? labelData.ariaLabelledBy : null"\r\n [ariaHidden]="labelData ? labelData.ariaHidden : null"\r\n [ariaDisabled]="labelData ? labelData.ariaDisabled : null"\r\n [ariaControls]="labelData ? labelData.ariaControls : null"\r\n [ariaCurrent]="labelData ? labelData.ariaCurrent : null"\r\n [ariaLive]="labelData ? labelData.ariaLive : null"\r\n [ariaExpanded]="labelData ? labelData.ariaExpanded : null"\r\n [ariaErrorMessage]="labelData ? labelData.ariaErrorMessage : null"\r\n [ariaHasPopup]="labelData ? labelData.ariaHasPopup : null"\r\n [tabindex]="tabindex ? labelData.tabindex : null"></desy-label>\r\n <desy-hint *ngIf="hintData && (hintData.text || hintData.html)"\r\n [id]="getItemHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintData && hintText" [text]="hintText" [id]="getItemHintId()"></desy-hint>\r\n\r\n </div>\r\n </div>\r\n\r\n <div *ngIf="conditional && conditionalHtml && checked" @displayConditional\r\n class="mb-base ml-5 py-sm pl-6 origin-top-left border-l-2 border-primary-base"\r\n [attr.id]="\'conditional-\' + this.getId()">\r\n <ng-container *ngTemplateOutlet="conditionalHtml"></ng-container>\r\n </div>\r\n</div>\r\n',animations:[i.trigger("displayConditional",[i.state("void",i.style({opacity:"0.0",transform:"scale(0.95)"})),i.state("*",i.style({opacity:"1.0",transform:"scale(1.0)"})),i.transition(":enter",[i.animate("100ms ease-out")])])]}]}],we.propDecorators={inputElement:[{type:a.ViewChild,args:["input"]}],hasDividers:[{type:a.Input}],nameCheckbox:[{type:a.Input}],hasError:[{type:a.Input}],idPrefix:[{type:a.Input}],index:[{type:a.Input}],describedBy:[{type:a.Input}],id:[{type:a.Input}],disabled:[{type:a.Input}],text:[{type:a.Input}],html:[{type:a.Input}],name:[{type:a.Input}],value:[{type:a.Input}],checked:[{type:a.Input}],conditional:[{type:a.Input}],conditionalHtml:[{type:a.Input}],classes:[{type:a.Input}],labelData:[{type:a.Input}],hintData:[{type:a.Input}],hintText:[{type:a.Input}],isIndeterminate:[{type:a.Input}],check:[{type:a.Output}]};var Me=function(){};Me.decorators=[{type:a.NgModule,args:[{declarations:[Ee,B,E,H,w,M,k,P,T,S,O,R,A,z,He,q,we,F,V,N],imports:[n.CommonModule,r.FormsModule,r.ReactiveFormsModule,Le],exports:[E,H,w,M,k,P,T,S,O,R,A,z,q,F,V,N]}]}];var ke=function(){};ke.decorators=[{type:a.NgModule,args:[{declarations:[le,se,oe,de,pe,ce,me,be,ge,he,ye],imports:[n.CommonModule,Le,Me],exports:[le,se,oe,de,pe,ce,me,be,ge,he,ye]}]}];var Be=function(){};Be.decorators=[{type:a.NgModule,args:[{declarations:[D,C,L,I],imports:[n.CommonModule,Le,ke],exports:[D,C,L,I]}]}];var Pe=function(){};Pe.decorators=[{type:a.NgModule,args:[{declarations:[_,j],imports:[n.CommonModule,t.A11yModule,Le,Be],exports:[_,j]}]}];var Te=function(e){function a(){var a=e.apply(this,g(arguments))||this;return a.isOpen=!1,a.clickOutsideEnabled=!1,a}return u(a,e),a.prototype.toggleOpen=function(){var e=this;this.isOpen=!this.isOpen,setTimeout((function(){return e.clickOutsideEnabled=e.isOpen}))},a.prototype.onKeydownEscape=function(){this.isOpen=!1,this.clickOutsideEnabled=!1,document.getElementById("header-subnav-button").focus()},a}(y);Te.decorators=[{type:a.Component,args:[{selector:"desy-header-subnav",template:'<div class="flex items-center" *ngIf="items; else noItems">\r\n <div class="ml-3 relative">\r\n <h2 id="subnav-title">\r\n <button id="header-subnav-button" (click)="toggleOpen()" class="pr-2 pl-3 py-4 border-r border-l border-neutral-base text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base"\r\n aria-haspopup="true" [attr.aria-expanded]="isOpen" (keydown.escape)="onKeydownEscape()">\r\n <span class="inline-block max-w-40 lg:max-w-xs align-middle truncate" [desyInnerContent]="html ? html : text" [isHtml]="html"></span>\r\n <svg class="inline-block align-middle" viewBox="0 0 96 96" fill="currentColor" aria-hidden="true" focusable="false" width="1.5em" height="1.5em">\r\n <g><path d="M46.71 58.037a1.823 1.823 0 002.581 0L62.048 45.28a1.823 1.823 0 00-1.29-3.113H35.243a1.823 1.823 0 00-1.291 3.113z"/></g>\r\n </svg>\r\n </button>\r\n </h2>\r\n <div *ngIf="isOpen" @toggleDropdown\r\n [desyClickOutside]="clickOutsideEnabled" (clickOutside)="toggleOpen()"\r\n (keydown.escape)="onKeydownEscape()"\r\n class="origin-top-left absolute right-0 max-h-64 mt-2 border border-neutral-base overflow-y-auto shadow-md">\r\n <div class="bg-white shadow-xs">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<ng-template #noItems>\r\n <p class="inline-block max-w-40 lg:max-w-xs align-middle ml-4 px-3 py-4 border-r border-l border-neutral-base text-sm text-white truncate" aria-label="Aplicación actual"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html">\r\n </p>\r\n</ng-template>\r\n',animations:[i.trigger("toggleDropdown",[i.state("void",i.style({opacity:"0.0",transform:"scale(0.95)"})),i.state("*",i.style({opacity:"1.0",transform:"scale(1.0)"})),i.transition(":enter",[i.animate("100ms ease-out")]),i.transition(":leave",[i.animate("75ms ease-in")])])]}]}],Te.propDecorators={items:[{type:a.Input}]};var Se=function(e){function a(){return null!==e&&e.apply(this,arguments)||this}return u(a,e),a.prototype.getItemId=function(e,a){var r=this.idPrefix?this.idPrefix:"header-nav-item",t=a>0?"-"+a:"";return e.id?e.id:r+t},a.prototype.getExternalHref=function(e){return v.getExternalHref(e.href)},a}(h);Se.decorators=[{type:a.Component,args:[{selector:"desy-header-navigation",template:'<nav [class]="classes ? classes : \'hidden lg:block\'"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ul class="ml-sm flex items-baseline uppercase">\r\n <ng-container *ngFor="let item of items; index as i">\r\n <li *ngIf="item">\r\n\r\n \x3c!-- Active + routerlink --\x3e\r\n <a *ngIf="item.active && (item.routerLink || !item.href)" [id]="getItemId(item, i)" [routerLink]="item.routerLink" [fragment]="item.fragment"\r\n class="max-w-40 lg:max-w-xs px-3 py-4 font-bold text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base" aria-current="page">\r\n <strong [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></strong>\r\n </a>\r\n\r\n \x3c!-- Active + href --\x3e\r\n <a *ngIf="item.active && !item.routerLink && item.href" [id]="getItemId(item, i)" [href]="item.href"\r\n class="max-w-40 lg:max-w-xs px-3 py-4 font-bold text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base" aria-current="page">\r\n <strong [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></strong>\r\n </a>\r\n\r\n \x3c!-- Not active + routerlink --\x3e\r\n <a *ngIf="!item.active && (item.routerLink || !item.href)" [id]="getItemId(item, i)" [routerLink]="item.routerLink" [fragment]="item.fragment"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': item.disabled}"\r\n class="max-w-40 lg:max-w-xs px-3 py-4 text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base"\r\n [attr.disabled]="item.disabled ? item.disabled : null" [attr.aria-disabled]="item.disabled ? item.disabled : null" [attr.tabindex]="item.disabled ? -1 : null"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></a>\r\n\r\n \x3c!-- Not active + href --\x3e\r\n <a *ngIf="!item.active && !item.routerLink && item.href" [id]="getItemId(item, i)" [href]="item.href"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': item.disabled}"\r\n class="max-w-40 lg:max-w-xs px-3 py-4 text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base"\r\n [attr.disabled]="item.disabled ? item.disabled : null" [attr.aria-disabled]="item.disabled ? item.disabled : null" [attr.tabindex]="item.disabled ? -1 : null"\r\n [desyInnerContent]="item.html ? item.html : item.text" [isHtml]="item.html"></a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</nav>\r\n'}]}],Se.propDecorators={idPrefix:[{type:a.Input}],classes:[{type:a.Input}],items:[{type:a.Input}]};var Oe=function(e){function a(){var a=e.apply(this,g(arguments))||this;return a.isOpen=!1,a.clickOutsideEnabled=!1,a}return u(a,e),a.prototype.toggleOpen=function(){var e=this;this.isOpen=!this.isOpen,setTimeout((function(){return e.clickOutsideEnabled=e.isOpen}))},a.prototype.onKeydownEscape=function(){this.isOpen=!1,this.clickOutsideEnabled=!1,document.getElementById("header-dropdown-button").focus()},a}(y);Oe.decorators=[{type:a.Component,args:[{selector:"desy-header-dropdown",template:'<div class="ml-4 flex items-center lg:ml-6">\r\n <div class="ml-3 relative">\r\n <div>\r\n <button id="header-dropdown-button" (click)="toggleOpen()" class="px-3 py-4 text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base"\r\n aria-haspopup="true" [attr.aria-expanded]="isOpen" (keydown.escape)="onKeydownEscape()">\r\n <span class="inline-block max-w-40 lg:max-w-xs align-middle truncate" [desyInnerContent]="html ? html : text" [isHtml]="html"></span> <svg class="inline-block align-middle" viewBox="0 0 96 96" fill="currentColor" aria-hidden="true" focusable="false" width="1.5em" height="1.5em"><g><path d="M46.71 58.037a1.823 1.823 0 002.581 0L62.048 45.28a1.823 1.823 0 00-1.29-3.113H35.243a1.823 1.823 0 00-1.291 3.113z"/></g></svg>\r\n </button>\r\n </div>\r\n <div *ngIf="isOpen" @toggleDropdown (keydown.escape)="onKeydownEscape()"\r\n [desyClickOutside]="clickOutsideEnabled" (clickOutside)="toggleOpen()"\r\n class="origin-top-right absolute right-0 max-h-64 mt-2 border border-neutral-base overflow-y-auto shadow-md">\r\n <div class="bg-white shadow-xs">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n',animations:[i.trigger("toggleDropdown",[i.state("void",i.style({opacity:"0.0",transform:"scale(0.95)"})),i.state("*",i.style({opacity:"1.0",transform:"scale(1.0)"})),i.transition(":enter",[i.animate("100ms ease-out")]),i.transition(":leave",[i.animate("75ms ease-in")])])]}]}];var Re=function(e){function a(a){var r=e.call(this)||this;return r.dialogService=a,r.dialogOptions={id:"header-offcanvas-dialog",focusOnClose:"header-offcanvas",ariaModal:"true"},r}return u(a,e),a.prototype.openDialog=function(e){return c(this,void 0,void 0,(function(){var a,r=this;return p(this,(function(t){switch(t.label){case 0:return this.dialog?[3,2]:(this.dialogOptions.ariaLabelledBy=this.offcanvasLabelledId,a=this,[4,this.dialogService.openDialog(e,this.dialogOptions)]);case 1:a.dialog=t.sent().dialog,this.dialogService.onCloseDialog(this.dialog).then((function(){return r.dialog=null})),t.label=2;case 2:return[2]}}))}))},a.prototype.closeDialog=function(){this.dialog&&(this.dialogService.closeDialog(this.dialog),this.dialog=null)},a.prototype.ngOnChanges=function(e){this.checkRequiredParams(),this.class=this.classes?this.classes:"-mr-2 flex lg:hidden"},a.prototype.checkRequiredParams=function(){if(!this.offcanvasText)throw new Error("offcanvasText is required");if(!this.offcanvasLabelledId)throw new Error("offcanvasLabelledId is required");if(!this.offcanvasContentHtml)throw new Error("offcanvasContentHtml is required")},a}(y);Re.decorators=[{type:a.Component,args:[{selector:"desy-header-offcanvas-button",template:'<ng-template #offcanvas>\r\n <desy-header-offcanvas [text]="offcanvasText" [labelledId]="offcanvasLabelledId" [contentHtml]="offcanvasContentHtml"\r\n (closeDialog)="closeDialog()"></desy-header-offcanvas>\r\n</ng-template>\r\n\r\n<button id="header-offcanvas-button"\r\n (click)="openDialog(offcanvas)"\r\n tabindex="0"\r\n class="px-3 py-4 text-sm text-white truncate focus:outline-none focus:shadow-outline-warning" aria-label="Header offcanvas button" aria-haspopup="true">\r\n <span class="inline-block max-w-40 lg:max-w-xs align-middle truncate" [desyInnerContent]="html ? html : text" [isHtml]="html"></span> <svg class="inline-block align-middle" viewBox="0 0 96 96" fill="currentColor" aria-hidden="true" width="1.5em" height="1.5em"><g><path d="M46.71 58.037a1.823 1.823 0 002.581 0L62.048 45.28a1.823 1.823 0 00-1.29-3.113H35.243a1.823 1.823 0 00-1.291 3.113z"/></g></svg>\r\n</button>\r\n\r\n'}]}],Re.ctorParameters=function(){return[{type:$}]},Re.propDecorators={classes:[{type:a.Input}],offcanvasText:[{type:a.Input}],offcanvasLabelledId:[{type:a.Input}],offcanvasContentHtml:[{type:a.Input}],class:[{type:a.HostBinding,args:["class"]}]};var Ae=function(){function e(){this.closeDialog=new a.EventEmitter,this.clickOutsideEnabled=!1}return e.prototype.ngOnInit=function(){var e=this;setTimeout((function(){return e.clickOutsideEnabled=!0}))},e.prototype.onCloseDialog=function(){this.closeDialog.emit()},e}();Ae.decorators=[{type:a.Component,args:[{selector:"desy-header-offcanvas",template:'<div class="origin-top-left left-0 fixed inset-0 h-screen">\r\n <div class="h-full overflow-auto relative w-offcanvas h-screen ml-offcanvas-negative bg-white z-10"\r\n [desyClickOutside]="clickOutsideEnabled" (clickOutside)="onCloseDialog()">\r\n <div class="text-right p-sm">\r\n <button (click)="onCloseDialog()" id="header-offcanvas-button-close"\r\n class="c-button c-button--sm c-button--transparent m-sm">{{ text }} <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14" class="self-center ml-2"><path fill="currentColor" d="M8.591 7.177a.25.25 0 010-.354l4.616-4.616A1 1 0 1011.793.793L7.177 5.409a.25.25 0 01-.354 0L2.207.793A1 1 0 00.793 2.207l4.616 4.616a.25.25 0 010 .354L.793 11.793a1 1 0 001.414 1.414l4.616-4.616a.25.25 0 01.354 0l4.616 4.616a1 1 0 001.414-1.414z"/></svg></button>\r\n </div>\r\n <ng-container *ngTemplateOutlet="contentHtml"></ng-container>\r\n </div>\r\n</div>\r\n'}]}],Ae.propDecorators={text:[{type:a.Input}],labelledId:[{type:a.Input}],contentHtml:[{type:a.Input}],closeDialog:[{type:a.Output}]};var ze=function(){};ze.decorators=[{type:a.NgModule,args:[{declarations:[W,Q,Y,Te,Se,Oe,Re,Ae,K,X,Z,ee,ae,J,Z,ee],imports:[n.CommonModule,Le],exports:[W,Q,Y,K,X,J,Z,ee,ae]}]}];var qe=function(){function e(e){this.el=e}return e.prototype.onClick=function(){var e,a,r=this.el.nativeElement.offsetParent.querySelectorAll("[tabindex]");try{for(var t=m(r),n=t.next();!n.done;n=t.next()){n.value.setAttribute("tabindex","-1")}}catch(a){e={error:a}}finally{try{n&&!n.done&&(a=t.return)&&a.call(t)}finally{if(e)throw e.error}}this.activeTabindex()},e.prototype.manageArrows=function(e){if("ArrowDown"===e.code||"ArrowUp"===e.code||"ArrowRight"===e.code||"ArrowLeft"===e.code){var a=null;if("ArrowDown"===e.code||"ArrowUp"===e.code){var r=null;"ArrowDown"===e.code?r=this.el.nativeElement.parentNode.nextElementSibling:"ArrowUp"===e.code&&(r=this.el.nativeElement.parentNode.previousElementSibling),a=r.children[this.findIndex()]}"ArrowRight"!==e.code&&"ArrowLeft"!==e.code||("ArrowRight"===e.code?a=this.el.nativeElement.nextElementSibling:"ArrowLeft"===e.code&&(a=this.el.nativeElement.previousElementSibling)),a&&a.getAttribute("tabindex")&&(this.inactiveTabindex(),a.setAttribute("tabindex","0"),a.focus())}},e.prototype.activeTabindex=function(){this.el.nativeElement.setAttribute("tabindex","0")},e.prototype.inactiveTabindex=function(){this.el.nativeElement.setAttribute("tabindex","-1")},e.prototype.findIndex=function(){for(var e=this.el.nativeElement,a=this.el.nativeElement.parentNode,r=-1,t=0;t<a.children.length;t++){var n=a.children[t];if(e.isEqualNode(n)){r=t;break}}return r},e}();qe.decorators=[{type:a.Directive,args:[{selector:"[desyFocusClickedCell]"}]}],qe.ctorParameters=function(){return[{type:a.ElementRef}]},qe.propDecorators={onClick:[{type:a.HostListener,args:["click"]}],manageArrows:[{type:a.HostListener,args:["keydown",["$event"]]}]};var Fe=function(){};Fe.decorators=[{type:a.NgModule,args:[{declarations:[re,ie,qe],imports:[n.CommonModule,r.FormsModule,r.ReactiveFormsModule,t.A11yModule,Le,Me],exports:[re,ie]}]}];var Ve=function(){};Ve.decorators=[{type:a.NgModule,args:[{declarations:[xe],imports:[n.CommonModule,Le,ze,Be],exports:[xe]}]}];var Ne=function(){};Ne.decorators=[{type:a.NgModule,args:[{imports:[o.BrowserAnimationsModule,Be,Me,Pe,ze,Fe,ke,Ve],exports:[Be,Me,Pe,ze,Fe,ke,Ve]}]}],e.AccordionComponent=se,e.AlertComponent=le,e.AlertService=fe,e.BreadcrumbsComponent=W,e.ButtonComponent=D,e.ButtonLoaderComponent=C,e.CharacterCountComponent=T,e.CheckboxesComponent=q,e.CollapsibleComponent=pe,e.ConditionDirective=N,e.DateInputComponent=F,e.DescriptionListComponent=ce,e.DesyAngularModule=Ne,e.DesyButtonsModule=Be,e.DesyFormsModule=Me,e.DesyModalsModule=Pe,e.DesyNavModule=ze,e.DesyPaginationModule=Ve,e.DesyTablesModule=Fe,e.DesyViewsModule=ke,e.DetailsComponent=de,e.DialogComponent=j,e.DialogService=$,e.DropdownComponent=L,e.ErrorMessageComponent=w,e.ErrorSummaryComponent=Q,e.FieldsetComponent=M,e.FileUploadComponent=R,e.FooterComponent=ae,e.HeaderComponent=Y,e.HintComponent=E,e.InputComponent=S,e.InputGroupComponent=A,e.ItemComponent=me,e.LabelComponent=H,e.LegendComponent=k,e.MediaObjectComponent=be,e.MenuHorizontalComponent=K,e.MenuVerticalComponent=J,e.ModalComponent=_,e.NavComponent=X,e.NotificationComponent=ee,e.PaginationComponent=xe,e.PillComponent=I,e.RadiosComponent=z,e.SearchBarComponent=V,e.SelectComponent=O,e.SkipLinkComponent=Z,e.SpinnerComponent=oe,e.StatusComponent=ge,e.StatusItemComponent=he,e.TableAdvancedComponent=ie,e.TableComponent=re,e.TabsComponent=ye,e.TextareaComponent=P,e.summaryTextOrSummaryHtmlRequiredFunction=ue,e.ɵa=x,e.ɵb=h,e.ɵc=y,e.ɵd=B,e.ɵe=h,e.ɵf=Le,e.ɵg=ve,e.ɵh=De,e.ɵi=Ce,e.ɵj=Ie,e.ɵk=Ee,e.ɵl=He,e.ɵm=we,e.ɵn=Te,e.ɵo=Se,e.ɵp=Oe,e.ɵq=Re,e.ɵr=Ae,e.ɵs=qe,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */function u(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}c(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}function m(e,t,r,a){var n,i=arguments.length,o=i<3?t:null===a?a=Object.getOwnPropertyDescriptor(t,r):a;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,r,a);else for(var l=e.length-1;l>=0;l--)(n=e[l])&&(o=(i<3?n(o):i>3?n(t,r,o):n(t,r))||o);return i>3&&o&&Object.defineProperty(t,r,o),o}function g(e,t,r,a){return new(r||(r=Promise))((function(n,i){function o(e){try{s(a.next(e))}catch(e){i(e)}}function l(e){try{s(a.throw(e))}catch(e){i(e)}}function s(e){var t;e.done?n(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,l)}s((a=a.apply(e,t||[])).next())}))}function h(e,t){var r,a,n,i,o={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,a&&(n=2&i[0]?a.return:i[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,i[1])).done)return n;switch(a=0,n&&(i=[2&i[0],n.value]),i[0]){case 0:case 1:n=i;break;case 4:return o.label++,{value:i[1],done:!1};case 5:o.label++,a=i[1],i=[0];continue;case 7:i=o.ops.pop(),o.trys.pop();continue;default:if(!(n=o.trys,(n=n.length>0&&n[n.length-1])||6!==i[0]&&2!==i[0])){o=0;continue}if(3===i[0]&&(!n||i[1]>n[0]&&i[1]<n[3])){o.label=i[1];break}if(6===i[0]&&o.label<n[1]){o.label=n[1],n=i;break}if(n&&o.label<n[2]){o.label=n[2],o.ops.push(i);break}n[2]&&o.ops.pop(),o.trys.pop();continue}i=t.call(e,o)}catch(e){i=[6,e],a=0}finally{r=n=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,l])}}}Object.create;function b(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],a=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&a>=e.length&&(e=void 0),{value:e&&e[a++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function y(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var a,n,i=r.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(a=i.next()).done;)o.push(a.value)}catch(e){n={error:e}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}return o}function f(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(y(arguments[t]));return e}Object.create;var C=function(){};C.decorators=[{type:t.Component,args:[{selector:"desy-accessibility",template:"<div></div>"}]}],C.propDecorators={role:[{type:t.Input}],ariaLabel:[{type:t.Input}],ariaDescribedBy:[{type:t.Input}],ariaLabelledBy:[{type:t.Input}],ariaHidden:[{type:t.Input}],ariaDisabled:[{type:t.Input}],ariaControls:[{type:t.Input}],ariaCurrent:[{type:t.Input}],ariaLive:[{type:t.Input}],ariaExpanded:[{type:t.Input}],ariaErrorMessage:[{type:t.Input}],ariaHasPopup:[{type:t.Input}],ariaModal:[{type:t.Input}],tabindex:[{type:t.Input}]};var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.getContent=function(){return this.content},t}(C);v.decorators=[{type:t.Component,args:[{selector:"desy-content-base",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],v.propDecorators={content:[{type:t.ViewChild,args:["contentTemplate",{static:!0}]}]};var x=function(){function e(){}return e.prototype.ngOnChanges=function(e){I(this.text,this.html)},e}();function I(e,t){if(!t&&!e)throw new Error("html or text are required")}x.decorators=[{type:t.Component,args:[{selector:"desy-text-or-html-required",template:"<div></div>"}]}],x.propDecorators={text:[{type:t.Input}],html:[{type:t.Input}]};var D=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(x);D.decorators=[{type:t.Component,args:[{selector:"desy-accessibility-and-text-or-html-required",template:"<div></div>"}]}],D.propDecorators={role:[{type:t.Input}],ariaLabel:[{type:t.Input}],ariaDescribedBy:[{type:t.Input}],ariaLabelledBy:[{type:t.Input}],ariaHidden:[{type:t.Input}],ariaDisabled:[{type:t.Input}],ariaControls:[{type:t.Input}],ariaCurrent:[{type:t.Input}],ariaLive:[{type:t.Input}],ariaExpanded:[{type:t.Input}],ariaErrorMessage:[{type:t.Input}],ariaHasPopup:[{type:t.Input}],tabindex:[{type:t.Input}]};var E=function(){};E.decorators=[{type:t.Component,args:[{selector:"desy-accessibility-and-content-required",template:"<div></div>"}]}],E.propDecorators={html:[{type:t.Input}],text:[{type:t.Input}],role:[{type:t.Input}],ariaLabel:[{type:t.Input}],ariaDescribedBy:[{type:t.Input}],ariaLabelledBy:[{type:t.Input}],ariaHidden:[{type:t.Input}],ariaDisabled:[{type:t.Input}],ariaControls:[{type:t.Input}],ariaCurrent:[{type:t.Input}],ariaLive:[{type:t.Input}],ariaExpanded:[{type:t.Input}],ariaErrorMessage:[{type:t.Input}],ariaHasPopup:[{type:t.Input}],tabindex:[{type:t.Input}]};var L=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.hostTabIndex=null,r.clickEvent=new t.EventEmitter,r.avoidingDoubleClick=!1,r}return u(r,e),r.prototype.onClick=function(e){var t=this;this.preventDoubleClick?this.avoidingDoubleClick?e.preventDefault():(this.avoidingDoubleClick=!0,this.clickEvent.emit(e),setTimeout((function(){t.avoidingDoubleClick=!1}),1e3)):this.clickEvent.emit(e)},r.prototype.getElement=function(){return this.element?this.element.toLocaleLowerCase():this.href?r.ELEMENT_A:r.ELEMENT_BUTTON},r.prototype.getClassNames=function(){var e="c-button";return this.classes&&(e+=" "+this.classes),this.disabled&&(e+=" c-button--disabled"),e},r.prototype.isDisabled=function(){return!!this.disabled||null},Object.defineProperty(r.prototype,"staticElementTypeA",{get:function(){return r.ELEMENT_A},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"staticElementTypeButton",{get:function(){return r.ELEMENT_BUTTON},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"staticElementTypeInput",{get:function(){return r.ELEMENT_INPUT},enumerable:!1,configurable:!0}),r}(C);L.ELEMENT_A="a",L.ELEMENT_BUTTON="button",L.ELEMENT_INPUT="input",L.decorators=[{type:t.Component,args:[{selector:"desy-button",template:'<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n<ng-container [ngSwitch]="getElement()">\r\n <ng-container *ngSwitchCase="staticElementTypeA">\r\n \x3c!-- routerLink modifica href, por eso se duplica para que no convivan en un mismo html --\x3e\r\n <a *ngIf="routerLink" draggable="false" (click)="onClick($event)"\r\n [routerLink]="routerLink" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.tabindex]="tabindex ? tabindex : (isDisabled() ? -1 : null)"\r\n [attr.role]="role ? role : \'button\'"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null">\r\n <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\r\n </a>\r\n\r\n <a *ngIf="!routerLink" draggable="false" (click)="onClick($event)"\r\n [href]="href | externalHref"\r\n [attr.target]="target ? target : null"\r\n [attr.tabindex]="tabindex ? tabindex : (isDisabled() ? -1 : null)"\r\n [attr.role]="role ? role : \'button\'"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null">\r\n <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\r\n </a>\r\n\r\n </ng-container>\r\n\r\n <button *ngSwitchCase="staticElementTypeButton" (click)="onClick($event)"\r\n [routerLink]="routerLink ? routerLink : null" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.name]="name ? name : null"\r\n [attr.value]="value ? value : null"\r\n [attr.disabled]="isDisabled()"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.data-prevent-double-click]="preventDoubleClick ? \'true\' : null"\r\n [attr.type]="type ? type : null"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\r\n </button>\r\n\r\n <input *ngSwitchCase="staticElementTypeInput" (click)="onClick($event)"\r\n [routerLink]="routerLink ? routerLink : null" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.name]="name ? name : null"\r\n [value]="text ? text : null"\r\n [attr.disabled]="isDisabled()"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.role]="role ? role : null"\r\n [attr.data-prevent-double-click]="preventDoubleClick ? \'true\' : null"\r\n [attr.type]="type ? type : \'submit\'"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null">\r\n</ng-container>\r\n'}]}],L.propDecorators={hostTabIndex:[{type:t.HostBinding,args:["attr.tabindex"]}],id:[{type:t.Input}],classes:[{type:t.Input}],html:[{type:t.Input}],text:[{type:t.Input}],element:[{type:t.Input}],name:[{type:t.Input}],type:[{type:t.Input}],value:[{type:t.Input}],disabled:[{type:t.Input}],href:[{type:t.Input}],target:[{type:t.Input}],preventDoubleClick:[{type:t.Input}],routerLink:[{type:t.Input}],routerLinkActiveClasses:[{type:t.Input}],clickEvent:[{type:t.Output}]};var w=function(e){function t(){var t=e.apply(this,f(arguments))||this;return t.hostTabIndex=null,t}return u(t,e),t.prototype.getClassNames=function(){var e="c-button-loader relative";return this.classes&&(e+=" "+this.classes),this.disabled&&(e+=" c-button-loader--disabled"),e},t.prototype.getSpinnerText=function(){var e=null;return this.state===t.STATE_LOADING&&(e=this.loaderText?this.loaderText:t.DEFAULT_LOADER_TEXT),e},t.prototype.getSuccessText=function(){var e=null;return this.state===t.STATE_SUCCESS&&(e=this.successText?this.successText:t.DEFAULT_SUCCESS_TEXT),e},t}(L);w.STATE_LOADING="is-loading",w.STATE_SUCCESS="is-success",w.DEFAULT_LOADER_TEXT="Acción en curso",w.DEFAULT_SUCCESS_TEXT="Acción realizada con éxito",w.decorators=[{type:t.Component,args:[{selector:"desy-button-loader",template:'<ng-template #spinnerTemplate>\r\n <span class="c-button-loader__spinner flex items-center justify-center absolute inset-0">\r\n <desy-spinner [text]="getSpinnerText()" [classes]="loaderClasses" ></desy-spinner>\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #successTemplate>\r\n <span class="c-button-loader__success flex items-center justify-center absolute inset-0">\r\n <p class="sr-only" role="alert" aria-live="assertive">{{ getSuccessText() }}</p>\r\n <span aria-hidden="true">✓</span>\r\n </span>\r\n</ng-template>\r\n\r\n<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n<ng-container [ngSwitch]="getElement()">\r\n <ng-container *ngSwitchCase="staticElementTypeA">\r\n <a *ngIf="routerLink" draggable="false" (click)="onClick($event)"\r\n [routerLink]="routerLink" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n role="button"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : (isDisabled() ? -1 : null)"\r\n [class]="getClassNames()">\r\n <ng-container *ngTemplateOutlet="spinnerTemplate"></ng-container>\r\n <ng-container *ngTemplateOutlet="successTemplate"></ng-container>\r\n <span class="c-button-loader__content inline-flex align-baseline" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></span>\r\n </a>\r\n\r\n <a *ngIf="!routerLink" draggable="false" (click)="onClick($event)"\r\n [href]="href | externalHref" [attr.target]="target ? target : null"\r\n [attr.tabindex]="tabindex ? tabindex : (isDisabled() ? -1 : null)"\r\n role="button"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [class]="getClassNames()">\r\n <ng-container *ngTemplateOutlet="spinnerTemplate"></ng-container>\r\n <ng-container *ngTemplateOutlet="successTemplate"></ng-container>\r\n <span class="c-button-loader__content inline-flex align-baseline" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></span>\r\n </a>\r\n </ng-container>\r\n\r\n <button *ngSwitchCase="staticElementTypeButton" (click)="onClick($event)"\r\n [routerLink]="routerLink ? routerLink : null" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.name]="name ? name : null"\r\n [attr.value]="value ? value : null"\r\n [attr.disabled]="isDisabled()"\r\n [attr.role]="(role ? role : null)"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.data-prevent-double-click]="preventDoubleClick ? \'true\' : null"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"\r\n [attr.type]="type ? type : null"\r\n [class]="getClassNames()">\r\n <ng-container *ngTemplateOutlet="spinnerTemplate"></ng-container>\r\n <ng-container *ngTemplateOutlet="successTemplate"></ng-container>\r\n <span class="c-button-loader__content inline-flex align-baseline" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"> <ng-container *ngTemplateOutlet="contentTemplate"></ng-container></span>\r\n </button>\r\n\r\n <div *ngSwitchCase="staticElementTypeInput" (click)="onClick($event)"\r\n [attr.name]="name ? name : null"\r\n [routerLink]="routerLink ? routerLink : null" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [attr.disabled]="isDisabled()"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.role]="(role ? role : null)"\r\n [attr.id]="id ? id : null" [attr.aria-label]="ariaLabel ? ariaLabel : null" [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null" [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null" [attr.aria-hidden]="ariaHidden ? ariaHidden : null" [attr.aria-controls]="ariaControls ? ariaControls : null" [attr.aria-current]="ariaCurrent ? ariaCurrent : null" [attr.aria-live]="ariaLive ? ariaLive : null" [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null" [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null" [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null" [attr.tabindex]="tabindex ? tabindex : null"\r\n [class]="getClassNames()"\r\n [attr.data-prevent-double-click]="preventDoubleClick ? \'true\' : null">\r\n <span class="c-button-loader__content inline-flex align-baseline">\r\n <input [value]="text ? text : null" [type]="type ? type : \'submit\'" class="bg-transparent font-semibold">\r\n </span>\r\n <ng-container *ngTemplateOutlet="spinnerTemplate"></ng-container>\r\n <ng-container *ngTemplateOutlet="successTemplate"></ng-container>\r\n </div>\r\n</ng-container>\r\n'}]}],w.propDecorators={hostTabIndex:[{type:t.HostBinding,args:["attr.tabindex"]}],loaderText:[{type:t.Input}],loaderClasses:[{type:t.Input}],state:[{type:t.Input}],successText:[{type:t.Input}]};var H=function(){function e(){}return e.getFirstFocusableElement=function(t){var r,a='button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])';if(!(r=t?t.querySelectorAll(a):document.querySelectorAll(a))||0===r.length)return null;for(var n=null,i=0;i<r.length;){try{var o=r.item(i);if(e.isFocusable(o)){n=o;break}}catch(e){}i++}return n},e.isFocusable=function(e){if(e.tabIndex>0||0===e.tabIndex&&null!==e.getAttribute("tabIndex"))return!0;if(e.disabled)return!1;switch(e.nodeName){case"A":return!!e.href&&"ignore"!==e.rel;case"INPUT":return"hidden"!==e.type&&"file"!==e.type;case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}},e}(),k=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.clickEvent=new t.EventEmitter,r.isOpen=!1,r.clickOutsideEnabled=!1,r}return u(r,e),r.prototype.ngOnInit=function(){var e;this.dropdownContent&&this.dropdownContent.nativeElement&&((e=this.dropdownContent.nativeElement).style.display="block",this.tippyProperties={placement:"bottom-start",inlinePositioning:!0,content:e,allowHTML:!0,trigger:"click",hideOnClick:!0,interactive:!0,arrow:!1,offset:[0,-10],theme:"",plugins:[{name:"hideOnPopperBlur",defaultValue:!0,fn:function(e){return{onCreate:function(){e.popper.addEventListener("focusout",(function(t){e.props.hideOnPopperBlur&&t.relatedTarget&&!e.popper.contains(t.relatedTarget)&&e.hide()}))}}}},{name:"hideOnEsc",defaultValue:!0,fn:function(e){var t=e.hide;function a(e){e.key===r.KEY_CODE_ESC&&t()}return{onShow:function(){document.addEventListener("keydown",a)},onHide:function(){document.removeEventListener("keydown",a)}}}}],role:!1,aria:{content:"auto"},onShown:function(t){var r=H.getFirstFocusableElement(e);r&&r.focus()}})},r.prototype.onClick=function(e){this.isDisabled()||this.clickEvent.emit(e)},r.prototype.setOpen=function(e){this.isOpen=e},r.prototype.isDisabled=function(){return!!this.disabled||null},r}(E);k.KEY_CODE_ESC="Escape",k.decorators=[{type:t.Component,args:[{selector:"desy-dropdown",template:'<div [class]="classesContainer ? classesContainer : \'relative\'"\r\n (desyContentEmpty)="setOpen(false)" (desyContentNotEmpty)="setOpen(true)">\r\n <button #desyContentEmptyIgnore (click)="onClick($event)"\r\n ngxTippy [tippyProps]="tippyProperties"\r\n [class]="[\'c-dropdown\', classes] | makeHtmlList"\r\n [attr.disabled]="isDisabled() ? \'disabled\' : null"\r\n aria-haspopup="true"\r\n [attr.aria-disabled]="isDisabled() ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.aria-expanded]="isOpen"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.tabIndex]="isDisabled() ? \'-1\' : tabindex">\r\n <span class="inline-flex self-center max-w-xs align-middle truncate">\r\n <ng-container *desyCustomInnerContent="{ html: html, text: text }"></ng-container>\r\n <ng-content></ng-content>\r\n </span>\r\n <svg class="inline-block -mr-2 align-middle -my-px" viewBox="0 0 96 96" aria-hidden="true" fill="currentColor" focusable="false" width="1.5em" height="1.5em"><g><path d="M46.71 58.037a1.823 1.823 0 002.581 0L62.048 45.28a1.823 1.823 0 00-1.29-3.113H35.243a1.823 1.823 0 00-1.291 3.113z"/></g></svg>\r\n </button>\r\n <span *ngIf="hiddenText" #desyContentEmptyIgnore class="sr-only">{{ hiddenText }}</span>\r\n <div #dropdownContent style="display: none;"\r\n [class]="[\'-ml-sm mt-2 border border-neutral-base shadow-md bg-white\', classesTooltip] | makeHtmlList">\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n</div>\r\n'}]}],k.propDecorators={dropdownContent:[{type:t.ViewChild,args:["dropdownContent",{read:t.ElementRef,static:!0}]}],id:[{type:t.Input}],disabled:[{type:t.Input}],hiddenText:[{type:t.Input}],classesContainer:[{type:t.Input}],classesTooltip:[{type:t.Input}],classes:[{type:t.Input}],caller:[{type:t.Input}],clickEvent:[{type:t.Output}]};var M=function(){function e(){}return e.escapeHtml=function(e){return e?e.replace(new RegExp("&","g"),"&").replace(new RegExp("<","g"),"<").replace(new RegExp(">","g"),">").replace(new RegExp('"',"g"),""").replace(new RegExp("'","g"),"'"):""},e}(),B=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);B.decorators=[{type:t.Component,args:[{selector:"desy-listbox-label",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],B.propDecorators={classes:[{type:t.Input}]};var T=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.itemChange=new t.EventEmitter,r}return u(r,e),r.prototype.ngOnChanges=function(e){this.itemChange.emit(e)},r}(C);function P(e){return function(r,a){var n="_"+a,i="_"+a+"Querylist";Object.defineProperty(r,a,{set:function(r){var a=this,o=r instanceof t.QueryList?r:null;o&&!this[i]&&(this[i]=o,o.changes.subscribe((function(){var t=a[n];a[n]=o&&o.length>0?o.first:null,e&&e.onSetCallbackName&&a[e.onSetCallbackName]&&a[n]&&a[e.onSetCallbackName](a[n]),e&&e.onDeleteCallbackName&&a[e.onDeleteCallbackName]&&t&&!a[n]&&a[e.onDeleteCallbackName]()})),o.notifyOnChanges())},get:function(){return this[n]}})}}T.decorators=[{type:t.Component,args:[{selector:"desy-listbox-item",template:"<ng-template #childComponentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],T.propDecorators={content:[{type:t.ViewChild,args:["childComponentTemplate"]}],id:[{type:t.Input}],active:[{type:t.Input}],classes:[{type:t.Input}],title:[{type:t.Input}],itemChange:[{type:t.Output}]};var R=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.itemsChange=new t.EventEmitter,r.activeItemChange=new t.EventEmitter,r.isListVisible=!1,r}return u(r,e),r.prototype.ngOnInit=function(){var e=this.listboxButton.nativeElement;if(this.listboxContent&&this.listboxContent.nativeElement){var t=this.listboxContent.nativeElement;this.tippyProperties={placement:"bottom-start",inlinePositioning:!0,content:t,allowHTML:!0,trigger:"click",hideOnClick:!0,interactive:!0,arrow:!1,offset:[0,-10],theme:"",plugins:[{name:"hideOnPopperBlur",defaultValue:!0,fn:function(e){return{onCreate:function(){e.popper.addEventListener("focusout",(function(t){e.props.hideOnPopperBlur&&t.relatedTarget&&!e.popper.contains(t.relatedTarget)&&e.hide()}))}}}},{name:"hideOnEsc",defaultValue:!0,fn:function(t){var a=t.hide;function n(t){t.key===r.KEY_CODE_ESC&&(a(),e.focus())}return{onShow:function(){document.addEventListener("keydown",n)},onHide:function(){document.removeEventListener("keydown",n)}}}}],role:!1,aria:{content:"auto"},onShow:this.onListShow.bind(this),onHidden:this.onListClose.bind(this)}}},r.prototype.ngOnChanges=function(){var e=this;setTimeout((function(){var t,r;if(!e.id)throw Error("id is required");if(!e.items&&!e.itemComponentList)throw Error("items are required");if(!e.label&&!e.labelComponent)throw Error("label is required");if(e.itemComponentList&&e.itemComponentList.length>0?(e.itemComponentSubscriptions&&e.itemComponentSubscriptions.forEach((function(e){return e.unsubscribe()})),e.itemComponentSubscriptions=[],e.itemList=[],e.itemComponentList.forEach((function(t){var r=t.itemChange.subscribe((function(){return e.checkActiveItems()}));e.itemComponentSubscriptions.push(r),e.itemList.push(t)}))):e.itemList=e.items,e.items)try{for(var a=b(e.items),n=a.next();!n.done;n=a.next()){var i=n.value;if(!i)throw Error("item is "+i);I(i.text,i.html)}}catch(e){t={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}e.checkActiveItems()}))},r.prototype.ngDoCheck=function(){this.items&&this.itemList&&this.checkActiveItems()},r.prototype.getActiveItemsData=function(){return this.itemList.map((function(e,t){return e.active?{item:e,index:t}:null})).filter((function(e){return null!==e}))},r.prototype.checkActiveItems=function(){var e,t,r=this.itemList.map((function(e,t){return e.active?{item:e,index:t}:null})).filter((function(e){return null!==e})),a=!1;if(this.lastActiveItems&&r.length===this.lastActiveItems.length){for(var n=0;n<r.length;n++)if(r[n].index!==this.lastActiveItems[n].index){a=!0;break}}else a=!0;if(this.lastActiveItems&&!this.isMultiselectable&&a&&r.length!==this.lastActiveItems.length){var i=function(e){o.lastActiveItems.findIndex((function(t){return t.index===e.index}))>=0&&(e.item.active=!1),r=r.filter((function(e){return e.item.active}))},o=this;try{for(var l=b(r),s=l.next();!s.done;s=l.next()){i(s.value)}}catch(t){e={error:t}}finally{try{s&&!s.done&&(t=l.return)&&t.call(l)}finally{if(e)throw e.error}}}if(this.lastActiveItems=r,this.doesChangeButtonText&&!this.isMultiselectable&&r.length>0){var d=this.listboxOptions.find((function(e,t){return t===r[0].index}));d&&(this.buttonContentHtml=d.nativeElement.innerHTML)}else this.buttonContentHtml=this.html?this.html:null;a&&(this.itemsChange.emit(this.itemList),this.activeItemChange.emit(r.length>0?r[0].item:null))},r.prototype.onListShow=function(){var e=this;this.isListVisible=!0,this.listboxList&&setTimeout((function(){return e.listboxList.nativeElement.focus()}))},r.prototype.onListClose=function(){this.isListVisible=!1},r.prototype.onListFocus=function(){var e=this.getActiveItemsData();if(e.length>0){var t=document.getElementById(this.getItemId(e[0].item,e[0].index));t&&(t.focus(),this.currentFocusIndex=e[0].index)}else this.itemList&&this.itemList.length>0?(this.currentFocusIndex=0,this.isMultiselectable||this.selectItem(0)):console.warn("No element to focus")},r.prototype.moveFocus=function(e,t){t.preventDefault(),e>=0&&e<this.itemList.length&&(this.isMultiselectable?this.currentFocusIndex=e:this.selectItem(e))},r.prototype.onSpace=function(e){e.preventDefault(),this.isMultiselectable&&this.selectItem(this.currentFocusIndex)},r.prototype.selectItem=function(e){this.isMultiselectable?this.itemList[e].active=!this.itemList[e].active:(this.itemList.forEach((function(e){return e.active=!1})),this.itemList[e].active=!0),this.currentFocusIndex=e,this.checkActiveItems()},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:this.id+"-listbox-item"},r.prototype.getItemId=function(e,t){var r;return e.id?r=e.id:(r=this.getIdPrefix(),t>0&&(r+="-"+t)),r},r.prototype.hasLabel=function(){return!(!this.label&&!this.labelComponent)},r.prototype.getLabelContent=function(e){return e.html?e.html:"<p>"+M.escapeHtml(e.text)+"</p>"},r}(D);R.KEY_CODE_ESC="Escape",R.decorators=[{type:t.Component,args:[{selector:"desy-listbox",template:'<div [ngClass]="classesContainer ? classesContainer : \'relative\'">\r\n <div [id]="id + \'-label\'" [class]="[\'mb-sm\', labelComponent?.classes, label?.classes] | makeHtmlList">\r\n <ng-container *desyCustomInnerContent="{ component: labelComponent, html: label ? getLabelContent(label) : null }"></ng-container>\r\n </div>\r\n <button #button [id]="id + \'-button\'"\r\n [class]="[\'c-listbox\', classes] | makeHtmlList"\r\n ngxTippy [tippyProps]="tippyProperties"\r\n aria-haspopup="listbox"\r\n [attr.aria-labelledby]="[hasLabel() ? id + \'-label\' : null, id + \'-button\'] | makeHtmlList"\r\n [attr.disabled]="disabled ? \'disabled\' : null"\r\n [attr.aria-disabled]="disabled ? \'true\' : (ariaDisabled ? ariaDisabled : null)"\r\n [attr.aria-role] = "role ? role : null"\r\n [attr.aria-label] = "ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby] = "ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-hidden] = "ariaHidden ? ariaHidden : null"\r\n [attr.aria-controls] = "ariaControls ? ariaControls : null"\r\n [attr.aria-current] = "ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live] = "ariaLive ? ariaLive : null"\r\n [attr.aria-expanded] = "ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errorMessage] = "ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-hasppup] = "ariaHasPopup ? ariaHasPopup : null"\r\n [attr.aria-tabindex] = "tabindex ? tabindex : null">\r\n <span class="inline-flex self-center max-w-xs align-middle truncate">\r\n <ng-container *desyCustomInnerContent="{ html: buttonContentHtml, text: text }"></ng-container>\r\n </span>\r\n <svg class="inline-block -mr-2 align-middle -my-px" viewBox="0 0 96 96" aria-hidden="true" fill="currentColor" focusable="false" width="1.5em" height="1.5em"><g><path d="M46.71 58.037a1.823 1.823 0 002.581 0L62.048 45.28a1.823 1.823 0 00-1.29-3.113H35.243a1.823 1.823 0 00-1.291 3.113z"/></g></svg>\r\n </button>\r\n <div #tooltip [class]="[\'c-listbox__tooltip -ml-sm mt-2 border border-neutral-base shadow-md bg-white\', classesTooltip] | makeHtmlList">\r\n <ul *ngIf="itemList"\r\n #list [id]="id"\r\n (focus)="onListFocus()"\r\n (keydown.arrowUp)="moveFocus(currentFocusIndex - 1, $event)"\r\n (keydown.arrowDown)="moveFocus(currentFocusIndex + 1, $event)"\r\n (keydown.home)="moveFocus(0, $event)"\r\n (keydown.end)="moveFocus(items.length - 1, $event)"\r\n (keydown.space)="onSpace($event)"\r\n role="listbox"\r\n tabindex="-1"\r\n class="text-sm outline-none"\r\n [attr.aria-labelledby]="hasLabel() ? id : (ariaLabelledBy ? ariaLabelledBy : null)"\r\n [attr.aria-multiselectable]="isMultiselectable ? \'true\' : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-label] = "ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby] = "ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-hidden] = "ariaHidden ? ariaHidden : null"\r\n [attr.aria-controls] = "ariaControls ? ariaControls : null"\r\n [attr.aria-current] = "ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live] = "ariaLive ? ariaLive : null"\r\n [attr.aria-expanded] = "ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage] = "ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup] = "ariaHasPopup ? ariaHasPopup : null"\r\n [attr.aria-activedescendant] = "lastActiveItems.length > 0 ? getItemId(lastActiveItems[0].item, lastActiveItems[0].index) : null">\r\n <ng-container *ngFor="let item of itemList; index as index">\r\n <li #option *ngIf="item" role="option" (click)="selectItem(index)"\r\n [class]="[\'flex items-center pr-base pl-lg py-sm hover:bg-primary-base hover:text-white focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'focused\': index === currentFocusIndex}"\r\n [attr.aria-label]="item.active ? \'true\' : (item.ariaLabel ? item.ariaLabel : null)"\r\n [id]="getItemId(item, index)"\r\n [attr.title]="item.title ? item.title : null"\r\n\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-hidden] = "item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current] = "item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live] = "item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup] = "item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.aria-tabindex] = "item.tabindex ? item.tabindex : null"\r\n\r\n [attr.aria-checked]="item.active"\r\n [attr.aria-selected]="item.active">\r\n <ng-container *desyCustomInnerContent="{ template: item[\'content\'], html: item.html, text: item.text }"></ng-container>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n</div>\r\n'}]}],R.propDecorators={listboxButton:[{type:t.ViewChild,args:["button",{read:t.ElementRef,static:!0}]}],listboxList:[{type:t.ViewChild,args:["list",{read:t.ElementRef}]}],listboxContent:[{type:t.ViewChild,args:["tooltip",{read:t.ElementRef,static:!0}]}],listboxOptions:[{type:t.ViewChildren,args:["option",{read:t.ElementRef}]}],labelComponent:[{type:t.ContentChildren,args:[B]}],itemComponentList:[{type:t.ContentChildren,args:[T]}],id:[{type:t.Input}],isMultiselectable:[{type:t.Input}],doesChangeButtonText:[{type:t.Input}],label:[{type:t.Input}],classes:[{type:t.Input}],classesContainer:[{type:t.Input}],classesTooltip:[{type:t.Input}],idPrefix:[{type:t.Input}],disabled:[{type:t.Input}],items:[{type:t.Input}],itemsChange:[{type:t.Output}],activeItemChange:[{type:t.Output}]},m([P()],R.prototype,"labelComponent",void 0);var S=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.clickEvent=new t.EventEmitter,r.hostTabIndex=null,r}return u(r,e),r.prototype.onClick=function(e){this.clickEvent.emit(e)},r.prototype.getType=function(){return this.type?this.type.toLocaleLowerCase():this.href?r.TYPE_A:r.TYPE_SPAN},r.prototype.getClassNames=function(){var e="c-pill";return this.classes&&(e+=" "+this.classes),e},Object.defineProperty(r.prototype,"staticElementTypeA",{get:function(){return r.TYPE_A},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"staticElementTypeButton",{get:function(){return r.TYPE_BUTTON},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"staticElementTypeSpan",{get:function(){return r.TYPE_SPAN},enumerable:!1,configurable:!0}),r}(E);S.TYPE_A="a",S.TYPE_BUTTON="button",S.TYPE_SPAN="span",S.decorators=[{type:t.Component,args:[{selector:"desy-pill",template:'<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n<ng-container [ngSwitch]="getType()">\r\n <ng-container *ngSwitchCase="staticElementTypeA">\r\n \x3c!-- routerLink modifica href, por eso se duplica para que no convivan en un mismo html --\x3e\r\n <a *ngIf="routerLink" data-module="c-pill" (click)="onClick($event)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"\r\n [routerLink]="routerLink" [routerLinkActive]="routerLinkActiveClasses ? routerLinkActiveClasses : []"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\r\n </a>\r\n\r\n <a *ngIf="!routerLink" data-module="c-pill" (click)="onClick($event)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"\r\n [href]="href | externalHref"\r\n [class]="getClassNames()"\r\n [attr.target]="target ? target : null"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\r\n </a>\r\n </ng-container>\r\n\r\n <button *ngSwitchCase="staticElementTypeButton" data-module="c-pill" (click)="onClick($event)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\r\n </button>\r\n\r\n <span *ngSwitchCase="staticElementTypeSpan" data-module="c-pill" (click)="onClick($event)"\r\n [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngTemplateOutlet="contentTemplate"></ng-container>\r\n </span>\r\n</ng-container>\r\n'}]}],S.propDecorators={type:[{type:t.Input}],href:[{type:t.Input}],target:[{type:t.Input}],routerLink:[{type:t.Input}],routerLinkActiveClasses:[{type:t.Input}],classes:[{type:t.Input}],id:[{type:t.Input}],clickEvent:[{type:t.Output}],hostTabIndex:[{type:t.HostBinding,args:["attr.tabindex"]}]};var O=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);O.decorators=[{type:t.Component,args:[{selector:"desy-content",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],O.propDecorators={classes:[{type:t.Input}]};var A=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);A.decorators=[{type:t.Component,args:[{selector:"desy-description",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],A.propDecorators={classes:[{type:t.Input}]};var F=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);F.decorators=[{type:t.Component,args:[{selector:"desy-icon",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],F.propDecorators={type:[{type:t.Input}]};var N=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);N.decorators=[{type:t.Component,args:[{selector:"desy-title",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],N.propDecorators={classes:[{type:t.Input}]};var q=function(e){function t(t){var r=e.call(this)||this;return r.changeDetectorRef=t,r}return u(t,e),t.prototype.detectChanges=function(){this.changeDetectorRef.detectChanges()},t}(C);q.decorators=[{type:t.Component,args:[{selector:"desy-hint",template:'<p class="block text-neutral-dark" [ngClass]="classes"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-content></ng-content>\r\n <ng-container *desyCustomInnerContent="{ html: html, text: text }"></ng-container>\r\n</p>\r\n'}]}],q.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},q.propDecorators={id:[{type:t.Input}],classes:[{type:t.Input}],html:[{type:t.Input}],text:[{type:t.Input}]};var z=function(e){function t(t){var r=e.call(this)||this;return r.changeDetectorRef=t,r}return u(t,e),t.prototype.detectChanges=function(){this.changeDetectorRef.detectChanges()},t}(C);z.decorators=[{type:t.Component,args:[{selector:"desy-label",template:'<ng-template #labelTemplate>\r\n <label [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"\r\n [class]="\'block\' + (classes ? \' \' + classes : \'\')"\r\n [attr.id]="id ? id : null"\r\n [attr.for]="for ? for : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-content></ng-content></label>\r\n</ng-template>\r\n\x3c!-- label --\x3e\r\n<ng-container *ngIf="isPageHeading; else elseBlock" class="block">\r\n <ng-container [ngSwitch]="headingLevel">\r\n <h1 *ngSwitchCase="1" class="block">\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n </h1>\r\n <h2 *ngSwitchCase="2" class="block">\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n </h2>\r\n <h3 *ngSwitchCase="3" class="block">\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n </h3>\r\n <h4 *ngSwitchCase="4" class="block">\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n </h4>\r\n <h5 *ngSwitchCase="5" class="block">\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n </h5>\r\n <h1 *ngSwitchDefault class="block">\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n </h1>\r\n </ng-container>\r\n</ng-container>\r\n<ng-template #elseBlock>\r\n <ng-container *ngTemplateOutlet="labelTemplate"></ng-container>\r\n</ng-template>\r\n\x3c!-- /label --\x3e\r\n\r\n\r\n'}]}],z.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},z.propDecorators={id:[{type:t.Input}],classes:[{type:t.Input}],html:[{type:t.Input}],text:[{type:t.Input}],isPageHeading:[{type:t.Input}],headingLevel:[{type:t.Input}],for:[{type:t.Input}]};var V=function(e){function t(t){var r=e.call(this)||this;return r.changeDetectorRef=t,r}return u(t,e),t.prototype.detectChanges=function(){this.changeDetectorRef.detectChanges()},t}(C);V.decorators=[{type:t.Component,args:[{selector:"desy-error-message",template:'<p class="block font-semibold text-alert-base" [ngClass]="classes"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <span class="sr-only">{{visuallyHiddenText ? visuallyHiddenText : \'Error\'}}:</span>\r\n <ng-content></ng-content>\r\n <ng-container *desyCustomInnerContent="{ html: html, text: text }"></ng-container>\r\n</p>\r\n'}]}],V.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},V.propDecorators={id:[{type:t.Input}],classes:[{type:t.Input}],html:[{type:t.Input}],text:[{type:t.Input}],visuallyHiddenText:[{type:t.Input}]};var _=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(E);_.decorators=[{type:t.Component,args:[{selector:"desy-legend",template:'<legend *ngIf="isPageHeading" [ngClass]="classes ? classes : \'font-bold\'">\r\n <ng-container [ngSwitch]="headingLevel">\r\n <h1 *ngSwitchCase="1" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></h1>\r\n <h2 *ngSwitchCase="2" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></h2>\r\n <h3 *ngSwitchCase="3" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></h3>\r\n <h4 *ngSwitchCase="4" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></h4>\r\n <h5 *ngSwitchCase="5" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></h5>\r\n <h1 *ngSwitchDefault [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></h1>\r\n </ng-container>\r\n</legend>\r\n\r\n<legend *ngIf="!isPageHeading" [ngClass]="classes ? classes : \'font-bold\'" [desyInnerContent]="html ? html : text" [isHtml]="html" [deleteContentIfEmpty]="false"><ng-container *ngTemplateOutlet="contentTemplate"></ng-container></legend>\r\n\r\n<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n'}]}],_.propDecorators={classes:[{type:t.Input}],isPageHeading:[{type:t.Input}],headingLevel:[{type:t.Input}]};var G=function(e){function t(t){var r=e.call(this)||this;return r.changeDetectorRef=t,r}return u(t,e),t.prototype.detectChanges=function(){this.changeDetectorRef.detectChanges()},t}(C);G.decorators=[{type:t.Component,args:[{selector:"desy-fieldset",template:'<fieldset [class]="classes"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="describedBy ? describedBy : ariaDescribedBy"\r\n [attr.aria-errormessage]="errorId ? errorId : ariaErrorMessage"\r\n\r\n [attr.id]="id"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngIf="legendComponent">\r\n <ng-content select="desy-legend"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!legendComponent">\r\n <ng-container *ngTemplateOutlet="legendRef"></ng-container>\r\n <desy-legend *ngIf="!legendRef && legendData"\r\n [text]="legendData.text"\r\n [html]="legendData.html"\r\n [classes]="legendData.classes"\r\n [isPageHeading]="legendData.isPageHeading"\r\n [headingLevel]="headingLevel"></desy-legend>\r\n <desy-legend *ngIf="!legendRef && !legendData && legendText" [text]="legendText" [headingLevel]="headingLevel"></desy-legend>\r\n </ng-container>\r\n\r\n <ng-container *desyCustomInnerContent="{ component: contentComponent, template: caller }"></ng-container>\r\n</fieldset>\r\n'}]}],G.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},G.propDecorators={describedBy:[{type:t.Input}],errorId:[{type:t.Input}],legendRef:[{type:t.Input}],legendData:[{type:t.Input}],legendText:[{type:t.Input}],classes:[{type:t.Input}],caller:[{type:t.Input}],id:[{type:t.Input}],headingLevel:[{type:t.Input}],legendComponent:[{type:t.ContentChildren,args:[_]}],contentComponent:[{type:t.ContentChildren,args:[O]}]},m([P()],G.prototype,"legendComponent",void 0),m([P()],G.prototype,"contentComponent",void 0);var U=function(e){function t(){var t=e.apply(this,f(arguments))||this;return t.onChange=function(e){},t.onTouch=function(){},t}return u(t,e),t.prototype.onblur=function(){this.onTouch()},t.prototype.onInput=function(e){this.value=e,this.onTouch(),this.onChange(this.value)},t.prototype.registerOnChange=function(e){this.onChange=e},t.prototype.registerOnTouched=function(e){this.onTouch=e},t.prototype.setDisabledState=function(e){this.disabled=e},t.prototype.writeValue=function(e){e&&(this.value=e),this.onChange(e)},t.prototype.getHintId=function(){return this.hasHint()?this.id+"-hint":null},t.prototype.getErrorId=function(){return this.hasErrorsMessage()?this.id+"-error":null},t.prototype.hasLabel=function(){return!!(this.hasLabelComponent()||this.labelText||this.labelRef||this.labelData&&(this.labelData.text||this.labelData.html))},t.prototype.hasHint=function(){return!!(this.hasHintComponent()||this.hintText||this.hintRef||this.hintData&&(this.hintData.text||this.hintData.html))},t.prototype.hasErrorsMessage=function(){return!!(this.hasErrorMessageComponent()||this.errorMessageText||this.errorMessageRef||this.errorMessageData&&(this.errorMessageData.text||this.errorMessageData.html))},t.prototype.hasLabelComponent=function(){return!!this.labelComponent},t.prototype.hasHintComponent=function(){return!!this.hintComponent},t.prototype.hasErrorMessageComponent=function(){return!!this.errorMessageComponent},t}(C);U.decorators=[{type:t.Component,args:[{selector:"desy-form-field",template:""}]}],U.propDecorators={id:[{type:t.Input}],disabled:[{type:t.Input}],labelComponent:[{type:t.ContentChildren,args:[z]}],labelRef:[{type:t.Input}],labelData:[{type:t.Input}],labelText:[{type:t.Input}],hintComponent:[{type:t.ContentChildren,args:[q]}],hintRef:[{type:t.Input}],hintData:[{type:t.Input}],hintText:[{type:t.Input}],errorMessageComponent:[{type:t.ContentChildren,args:[V]}],errorMessageRef:[{type:t.Input}],errorMessageData:[{type:t.Input}],errorMessageText:[{type:t.Input}],onblur:[{type:t.HostListener,args:["focusout"]}]},m([P({onSetCallbackName:"overrideLabelParams",onDeleteCallbackName:"onDeleteLabel"})],U.prototype,"labelComponent",void 0),m([P({onSetCallbackName:"overrideHintParams",onDeleteCallbackName:"onDeleteHint"})],U.prototype,"hintComponent",void 0),m([P({onSetCallbackName:"overrideErrorMessageParams",onDeleteCallbackName:"onDeleteErrorMessage"})],U.prototype,"errorMessageComponent",void 0);var j=function(e){function t(){var t=e.call(this)||this;return t.inputTransform=function(e){return e},t}return u(t,e),t.prototype.ngOnChanges=function(e){this.checkRequiredParams(),this.writeValue(this.value)},t.prototype.checkRequiredParams=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.labelRef&&!this.labelData&&!this.labelText)throw Error("label is required")},t.prototype.getRows=function(){return this.rows?this.rows:t.DEFAULT_ROWS},t.prototype.onInput=function(t){e.prototype.onInput.call(this,this.inputTransform(this.ensureText(t)))},t.prototype.writeValue=function(e){this.value=this.inputTransform(this.ensureText(e)),this.onChange(this.value)},t.prototype.registerInputTransform=function(e){this.inputTransform=e},t.prototype.ensureText=function(e){return e&&e||""},t}(U);j.DEFAULT_ROWS=5,j.decorators=[{type:t.Component,args:[{selector:"desy-textarea",template:'<div [class]="[\'c-form-group\', this.formGroupClasses] | makeHtmlList" [ngClass]="{\'c-form-group--error\': hasErrorsMessage()}">\r\n\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n [classes]="labelData.classes"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" [for]="id"></desy-label>\r\n\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n\r\n <textarea #textarea\r\n [class]="[\'block mt-sm px-base py-sm border-black rounded font-semibold leading-normal placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base\', classes] | makeHtmlList"\r\n [value]="value" (input)="onInput($event.target.value)"\r\n [ngClass]="{\'border-alert-base ring-2 ring-alert-base\' : hasErrorsMessage()}"\r\n [rows]="getRows()"\r\n [attr.id]="id ? id : null"\r\n [attr.name]="name ? name : null"\r\n [attr.aria-describedby]="[describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="hasErrorsMessage() ? getErrorId() : null"\r\n [attr.aria-invalid]="hasErrorsMessage() ? true : null"\r\n [attr.placeholder]="placeholder ? placeholder : null"\r\n [attr.autocomplete]="autocomplete ? autocomplete : null"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.maxlength]="maxlength"\r\n\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"></textarea>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return j})),multi:!0}]}]}],j.ctorParameters=function(){return[]},j.propDecorators={textareaElement:[{type:t.ViewChild,args:["textarea"]}],name:[{type:t.Input}],rows:[{type:t.Input}],placeholder:[{type:t.Input}],describedBy:[{type:t.Input}],formGroupClasses:[{type:t.Input}],classes:[{type:t.Input}],autocomplete:[{type:t.Input}],maxlength:[{type:t.Input}]};var $=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.ngAfterViewInit=function(){var e=this;this.textareaElement=this.textarea.textareaElement.nativeElement,this.textarea.registerInputTransform(this.inputTransform.bind(this)),this.registerOnChange(this.onChange),this.registerOnTouched(this.onTouch),this.textarea.setDisabledState(this.disabled),setTimeout((function(){return e.textarea.writeValue(e.value)}),50)},t.prototype.ngOnChanges=function(e){var t=this;this.checkRequired(),this.textarea&&setTimeout((function(){return t.textarea.ngOnChanges(e)}),50)},t.prototype.inputTransform=function(e){if(e)if(this.maxlength){var t=this.calculateLenght(e);for(this.displayCountMessage=!this.threshold||t>this.maxlength*this.threshold/100;t>this.maxlength;)e=e.substring(0,e.length-1),t=this.calculateLenght(e);this.remaining=this.maxlength-t}else{var r=e.match(/[\wáéíóúÁÉÍÓÚüÜñÑ]+/g)||[];for(this.displayCountMessage=!this.threshold||r.length>this.maxwords*this.threshold/100;r.length>this.maxwords;)e=e.substring(0,e.lastIndexOf(r.pop()));this.remaining=this.maxwords-r.length}else e="",this.displayCountMessage=!this.threshold,this.remaining=this.maxlength?this.maxlength:this.maxwords;return this.textareaElement.value=e,e},t.prototype.calculateLenght=function(e){var t=e.length;if(this.countbbdd&&e){var r=e.match(/[^A-z0-9_\s.,:;]/g);t+=r?r.length:0}return t},t.prototype.checkRequired=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.maxlength&&!this.maxwords)throw Error("maxlength or maxwords are required");if(!this.hasLabel())throw Error("label is required")},t.prototype.registerOnChange=function(e){this.onChange=e,this.textarea&&(this.textarea.registerOnChange(e),this.onChange=function(e){})},t.prototype.registerOnTouched=function(e){this.onTouch=e,this.textarea&&(this.textarea.registerOnTouched(e),this.onTouch=function(){})},t.prototype.setDisabledState=function(e){this.disabled=e,this.textarea&&this.textarea.setDisabledState(e)},t.prototype.writeValue=function(e){this.value=e,this.textarea&&this.textarea.writeValue(e)},t}(U);$.decorators=[{type:t.Component,args:[{selector:"desy-character-count",template:'<div>\r\n <desy-textarea\r\n [id]="id"\r\n [name]="name"\r\n [describedBy]="id + \'-info\'"\r\n [rows]="rows"\r\n [placeholder]="placeholder"\r\n formGroupClasses= "[\'\' + (formGroupClasses ? formGroupClasses : \'mb-0\')] | makeHtmlList"\r\n [classes]="[\'js-character-count\', hasErrorsMessage() ? \'border-alert-base ring-2 ring-alert-base\' : null, classes] | makeHtmlList"\r\n [labelRef]="labelRef" [labelData]="labelData" [labelText]="labelText"\r\n [hintRef]="hintRef" [hintData]="hintData" [hintText]="hintText"\r\n [errorMessageRef]="errorMessageRef" [errorMessageData]="errorMessageData" [errorMessageText]="errorMessageText"\r\n [role]="role"\r\n [ariaLabel]="ariaLabel"\r\n [ariaLabelledBy]="ariaLabelledBy"\r\n [ariaHidden]="ariaHidden"\r\n [ariaDisabled]="ariaDisabled"\r\n [ariaControls]="ariaControls"\r\n [ariaCurrent]="ariaCurrent"\r\n [ariaLive]="ariaLive"\r\n [ariaExpanded]="ariaExpanded"\r\n [ariaErrorMessage]="ariaErrorMessage"\r\n [ariaHasPopup]="ariaHasPopup"\r\n [tabindex]="tabindex"></desy-textarea>\r\n\r\n <desy-hint *ngIf="!!displayCountMessage"\r\n [id]="id + \'-info\'" [classes]="[\'mt-xs text-sm\', countMessageClasses] | makeHtmlList" ariaLive="polite"\r\n [text]="\'Puedes escribir hasta \' + remaining + (maxlength ? \' caracteres\' : \' palabras\')"></desy-hint>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return $})),multi:!0}]}]}],$.propDecorators={textarea:[{type:t.ViewChild,args:[j]}],name:[{type:t.Input}],type:[{type:t.Input}],rows:[{type:t.Input}],placeholder:[{type:t.Input}],maxlength:[{type:t.Input}],countbbdd:[{type:t.Input}],maxwords:[{type:t.Input}],threshold:[{type:t.Input}],formGroupClasses:[{type:t.Input}],countMessageClasses:[{type:t.Input}],classes:[{type:t.Input}]};var W=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.ngOnChanges=function(e){this.checkRequired()},t.prototype.getErrorId=function(){return this.errorId?this.errorId:e.prototype.getErrorId.call(this)},t.prototype.writeValue=function(e){this.value=e&&e||"",this.onChange(this.value)},t.prototype.checkRequired=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.hasLabel())throw Error("label is required")},t}(U);W.decorators=[{type:t.Component,args:[{selector:"desy-input",template:'\r\n<div [class]="[\'c-form-group\', this.formGroupClasses] | makeHtmlList" [ngClass]="{\'c-form-group--error\': hasErrorsMessage()}">\r\n\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n [classes]="labelData.classes"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" [for]="id"></desy-label>\r\n\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n <input [class]="[\'c-input block mt-sm border-black rounded font-semibold placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base\',\r\n classes,\r\n getErrorId() ? \'border-alert-base ring-2 ring-alert-base\' : null] | makeHtmlList"\r\n [value]="value ? value : \'\'" (input)="onInput($event.target.value)"\r\n [attr.id]="id ? id : null"\r\n [attr.name]="name ? name : null"\r\n [type]="type ? type : \'text\'"\r\n [attr.aria-describedby]="[describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="getErrorId() ? getErrorId() : null"\r\n [attr.aria-invalid]="getErrorId() ? true : null"\r\n [attr.autocomplete]="autocomplete ? autocomplete : null"\r\n [attr.pattern]="pattern ? pattern : null"\r\n [attr.inputmode]="inputmode ? inputmode : null"\r\n [attr.placeholder]="placeholder ? placeholder : null"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.maxlength]="maxlength ? maxlength : null"\r\n\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return W})),multi:!0}]}]}],W.propDecorators={name:[{type:t.Input}],type:[{type:t.Input}],describedBy:[{type:t.Input}],pattern:[{type:t.Input}],inputmode:[{type:t.Input}],placeholder:[{type:t.Input}],formGroupClasses:[{type:t.Input}],classes:[{type:t.Input}],autocomplete:[{type:t.Input}],maxlength:[{type:t.Input}],errorId:[{type:t.Input}]};var Y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Y.decorators=[{type:t.Component,args:[{selector:"desy-select-item",template:"<p>select-item works!</p>\r\n"}]}],Y.propDecorators={disabled:[{type:t.Input}]};var K=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(Y);K.decorators=[{type:t.Component,args:[{selector:"desy-option",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>",providers:[{provide:Y,useExisting:t.forwardRef((function(){return K}))}]}]}],K.propDecorators={value:[{type:t.Input}],selected:[{type:t.Input}],hidden:[{type:t.Input}]};var X=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(Y);X.decorators=[{type:t.Component,args:[{selector:"desy-option-group",template:"<p>option-group works!</p>\r\n",providers:[{provide:Y,useExisting:t.forwardRef((function(){return X}))}]}]}],X.propDecorators={label:[{type:t.Input}],items:[{type:t.ContentChildren,args:[K]}]};var Q=function(e){function t(){var t=e.apply(this,f(arguments))||this;return t.contentInit=!1,t}return u(t,e),t.prototype.ngOnInit=function(){this.checkRequiredParams()},t.prototype.ngOnChanges=function(e){this.checkRequiredParams()},t.prototype.ngAfterContentInit=function(){var e=this;if(this.contentInit=!0,!this.value){var t=this.getItems(),r=null==t?void 0:t.find((function(e){return e.selected}));r&&setTimeout((function(){return e.writeValue(r.value)}))}},t.prototype.writeValue=function(e){this.value=e,this.onChange(e)},t.prototype.getItems=function(){var e=this.itemComponents.length>0?this.itemComponents.toArray():this.items;if(this.contentInit&&(!e||0===e.length))throw new Error("items are required");return e},t.prototype.checkRequiredParams=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required")},t.prototype.isItemSelected=function(e){return this.value?this.value===e.value:e.selected},t.prototype.isOptionGroup=function(e){return e instanceof X},t}(U);Q.decorators=[{type:t.Component,args:[{selector:"desy-select",template:'<div [class]="[\'c-form-group\', this.formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\': hasErrorsMessage()}">\r\n <ng-container *ngIf="labelComponent">\r\n <ng-content select="desy-label"></ng-content>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData && !labelComponent"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n [classes]="labelData.classes"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText && !labelComponent" [text]="labelText" [for]="id"></desy-label>\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <ng-container *ngIf="hintComponent">\r\n <ng-content select="desy-hint"></ng-content>\r\n</ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData && !hintComponent"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText && !hintComponent" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngIf="errorMessageComponent">\r\n <ng-content select="desy-error-message"></ng-content>\r\n </ng-container>\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData && !errorMessageComponent"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && !errorMessageComponent && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n <select\r\n [class]="[\'c-select block mt-sm transition duration-150 ease-in-out border-black rounded font-semibold focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base\',\r\n classes,\r\n hasErrorsMessage() ? \'c-select--error border-alert-base ring-2 ring-alert-base\' : null] | makeHtmlList"\r\n [value]="value" (input)="onInput($event.target.value)"\r\n [attr.id]="id ? id : null"\r\n [attr.name]="name ? name : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="[describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="hasErrorsMessage() ? getErrorId() : null"\r\n [attr.aria-invalid]="hasErrorsMessage() ? true : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"\r\n [disabled]=disabled>\r\n\r\n <ng-container *ngFor="let item of getItems()">\r\n <optgroup *ngIf="isOptionGroup(item)" [label]="item.label" [attr.disabled]="item.disabled ? true : null"\r\n [attr.role]="item?.role"\r\n [attr.aria-label]="item?.ariaLabel"\r\n [attr.aria-describedby]="item?.describedBy"\r\n [attr.aria-labelledby]="item?.ariaLabelledBy"\r\n [attr.aria-hidden]="item?.ariaHidden"\r\n [attr.aria-disabled]="item?.ariaDisabled"\r\n [attr.aria-controls]="item?.ariaControls"\r\n [attr.aria-current]="item?.ariaCurrent"\r\n [attr.aria-live]="item?.ariaLive"\r\n [attr.aria-expanded]="item?.ariaExpanded"\r\n [attr.aria-errormessage]="item?.ariaErrorMessage"\r\n [attr.aria-haspopup]="item?.ariaHasPopup"\r\n [attr.tabindex]="item?.tabindex">>\r\n <option *ngFor="let subItem of item.items"\r\n [value]="subItem.value"\r\n [disabled]="subItem.disabled"\r\n [selected]="isItemSelected(subItem)"\r\n [attr.hidden]="subItem.hidden"\r\n [attr.role]="subItem?.role"\r\n [attr.aria-label]="subItem?.ariaLabel"\r\n [attr.aria-describedby]="subItem?.describedBy"\r\n [attr.aria-labelledby]="subItem?.ariaLabelledBy"\r\n [attr.aria-hidden]="subItem?.ariaHidden"\r\n [attr.aria-disabled]="subItem?.ariaDisabled"\r\n [attr.aria-controls]="subItem?.ariaControls"\r\n [attr.aria-current]="subItem?.ariaCurrent"\r\n [attr.aria-live]="subItem?.ariaLive"\r\n [attr.aria-expanded]="subItem?.ariaExpanded"\r\n [attr.aria-errormessage]="subItem?.ariaErrorMessage"\r\n [attr.aria-haspopup]="subItem?.ariaHasPopup"\r\n [attr.tabindex]="subItem?.tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: subItem, text: subItem.text }"></ng-container>\r\n </option>\r\n </optgroup>\r\n <option *ngIf="!isOptionGroup(item)" [value]="item.value" [disabled]="item.disabled ? true : null" [selected]="isItemSelected(item)"\r\n [attr.hidden]="item.hidden"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.describedBy ? item.describedBy : ariaDescribedBy"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n <ng-container *desyCustomInnerContent="{ component: item, text: item.text }"></ng-container>\r\n </option>\r\n </ng-container>\r\n </select>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return Q})),multi:!0}]}]}],Q.propDecorators={name:[{type:t.Input}],items:[{type:t.Input}],describedBy:[{type:t.Input}],formGroupClasses:[{type:t.Input}],classes:[{type:t.Input}],itemComponents:[{type:t.ContentChildren,args:[Y]}]};var J=function(e){function t(){return e.call(this)||this}return u(t,e),t.prototype.onInput=function(e){e&&e.length>0&&e[0]?this.value=e[0]:this.value=null,this.onTouch(),this.onChange(this.value)},t.prototype.ngOnChanges=function(e){this.checkRequiredParams()},t.prototype.checkRequiredParams=function(){if(!this.id)throw Error("id is required");if(!this.name)throw Error("name is required");if(!this.labelRef&&!this.labelData&&!this.labelText)throw Error("label is required")},t}(U);J.decorators=[{type:t.Component,args:[{selector:"desy-file-upload",template:'<div [class]="[\'c-form-group\', this.formGroupClasses] | makeHtmlList" [ngClass]="{\'c-form-group--error\': hasErrorsMessage()}">\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n [classes]="labelData.classes"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" [for]="id"></desy-label>\r\n\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n <input [class]="[\'mt-sm focus:outline-none focus:bg-warning-base focus:shadow-outline-focus\', classes] | makeHtmlList" type="file"\r\n [ngClass]="{\'c-file-upload--error\' : hasErrorsMessage()}"\r\n (input)="onInput($event.target.files)"\r\n\r\n [attr.id]="id ? id : null"\r\n [attr.name]="name ? name : null"\r\n [attr.aria-describedby]="[describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="hasErrorsMessage() ? getErrorId() : null"\r\n [attr.aria-invalid]="hasErrorsMessage() ? true : null"\r\n [attr.accept]="accept ? accept : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,multi:!0,useExisting:t.forwardRef((function(){return J}))}]}]}],J.ctorParameters=function(){return[]},J.propDecorators={name:[{type:t.Input}],describedBy:[{type:t.Input}],formGroupClasses:[{type:t.Input}],classes:[{type:t.Input}],accept:[{type:t.Input}]};var Z=function(){};function ee(e){return function(t,r){var a="_"+r;Object.defineProperty(t,r,{set:function(t){this[a]=t,this[e]()},get:function(){return this[a]}})}}Z.decorators=[{type:t.Component,args:[{selector:"desy-input-group-item",template:""}]}],Z.propDecorators={classes:[{type:t.Input}]};var te=function(){function e(){}return e.prototype.transform=function(e,t){var r=e.filter((function(e){return e})).join(" ");return 0===r.length&&t&&(r=t),r},e}();te.decorators=[{type:t.Pipe,args:[{name:"makeHtmlList"}]}];var re=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.isSelect=!1,r.valueChange=new t.EventEmitter,r}return u(r,e),r.prototype.ngAfterContentInit=function(){if(!this.name)throw Error("item name is required");if(!this.labelComponent)throw Error("item label is required")},r}(Z);re.decorators=[{type:t.Component,args:[{selector:"desy-input-group-input",template:'<ng-template #label>\r\n <ng-content select="desy-label"></ng-content>\r\n</ng-template>\r\n',providers:[{provide:Z,useExisting:t.forwardRef((function(){return re}))}]}]}],re.propDecorators={id:[{type:t.Input}],name:[{type:t.Input}],value:[{type:t.Input}],valueChange:[{type:t.Output}],formGroupClasses:[{type:t.Input}],type:[{type:t.Input}],inputmode:[{type:t.Input}],autocomplete:[{type:t.Input}],placeholder:[{type:t.Input}],pattern:[{type:t.Input}],maxlength:[{type:t.Input}],labelRef:[{type:t.ViewChild,args:["label",{static:!0}]}],labelComponent:[{type:t.ContentChildren,args:[z]}]},m([P()],re.prototype,"labelComponent",void 0);var ae=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.isSelect=!0,r.valueChange=new t.EventEmitter,r}return u(r,e),r.prototype.ngAfterContentInit=function(){if(!this.name)throw Error("item name is required");if(!this.labelComponent)throw Error("item label is required")},r}(Z);ae.decorators=[{type:t.Component,args:[{selector:"desy-input-group-select",template:'<ng-template #label>\r\n <ng-content select="desy-label"></ng-content>\r\n</ng-template>\r\n',providers:[{provide:Z,useExisting:t.forwardRef((function(){return ae}))}]}]}],ae.propDecorators={id:[{type:t.Input}],name:[{type:t.Input}],value:[{type:t.Input}],valueChange:[{type:t.Output}],formGroupClasses:[{type:t.Input}],labelRef:[{type:t.ViewChild,args:["label",{static:!0}]}],selectItemComponentList:[{type:t.ContentChildren,args:[K]}],labelComponent:[{type:t.ContentChildren,args:[z]}]},m([P()],ae.prototype,"labelComponent",void 0);var ne=function(e){function t(){var t=e.apply(this,f(arguments))||this;return t.isSelect=!1,t.divider=t,t}return u(t,e),t}(Z);ne.decorators=[{type:t.Component,args:[{selector:"desy-input-group-divider",template:"<ng-template #dividerContent>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n",providers:[{provide:Z,useExisting:t.forwardRef((function(){return ne}))}]}]}],ne.propDecorators={dividerContent:[{type:t.ViewChild,args:["dividerContent",{static:!0}]}]};var ie=function(e){function r(r){var a=e.call(this)||this;return a.controlContainer=r,a.itemsChange=new t.EventEmitter,a.contentInit=!1,a}return u(r,e),r.prototype.ngOnChanges=function(){var e,t;if(!this.id)throw Error("id is required");if(this.items)try{for(var r=b(this.items),a=r.next();!a.done;a=r.next()){var n=a.value;if(!n.divider&&!n.name)throw Error("item name is required");if(!n.divider&&!this.hasItemLabel(n))throw Error("item label is required")}}catch(t){e={error:t}}finally{try{a&&!a.done&&(t=r.return)&&t.call(r)}finally{if(e)throw e.error}}},r.prototype.ngAfterContentInit=function(){this.contentInit=!0},r.prototype.ngAfterViewChecked=function(){var e=this.getItems();if(!e||0===e.length)throw Error("items are required")},r.prototype.writeValue=function(e){var t=this;e&&(this.value=e,this.getItems().forEach((function(e){var r=t.value[t.getItemName(e)];e.value=r||null})),this.items&&this.itemsChange.emit(this.items));this.onChange(e)},r.prototype.onExternalChange=function(){var e=this;this.contentInit&&(this.value||(this.value={}),this.getItems().forEach((function(t){return e.value[e.getItemName(t)]=t.value})),this.onChange(this.value))},r.prototype.onInternalChange=function(e,t){var r=this.getItemName(e);this.value||(this.value={}),this.value[r]!==t&&(this.value[r]=t,this.onChange(this.value),(e instanceof re||e instanceof ae)&&e.valueChange.emit(t),this.items&&(e.value=t,this.itemsChange.emit(this.items)))},r.prototype.overrideFieldsetParams=function(e){e.caller=this.innerHtml,e.errorId=this.getErrorId(),e.describedBy=(new te).transform([this.getHintId(),this.getErrorId()],null),e.role="group",e.detectChanges()},r.prototype.getItems=function(){return this.itemsComponents&&this.itemsComponents.length?this.itemsComponents.toArray():this.items},r.prototype.getItemLabelRef=function(e){return e instanceof re||e instanceof ae?e.labelRef:null},r.prototype.getItemLabelData=function(e){return e.labelData?e.labelData:{text:e.labelText}},r.prototype.hasFieldset=function(){return!!(this.hasFieldsetComponent()||this.hasLegendComponent()||this.legendRef||this.fieldsetData||this.legendData&&(this.legendData.text||this.legendData.html)||this.legendText)},r.prototype.hasFieldsetComponent=function(){return!!this.fieldsetComponent},r.prototype.hasLegendComponent=function(){return!!this.legendComponent},r.prototype.getItemName=function(e){return this.namePrefix?this.namePrefix+"-"+e.name:e.name},r.prototype.getItemSelectOptions=function(e){return e instanceof ae?e.selectItemComponentList.toArray():e.selectItems},r.prototype.getItemDividerTemplate=function(e){return e.divider instanceof ne?e.divider.dividerContent:null},r.prototype.getItemDividerHtml=function(e){return e.divider.html?e.divider.html:"<p>"+M.escapeHtml(e.divider.text)+"</p>"},r.prototype.isSelectItem=function(e){var t;return t=e instanceof ae?e.selectItemComponentList&&e.selectItemComponentList.length>0:e.selectItems,e.isSelect&&t},r.prototype.hasItemLabel=function(e){return!!(e.labelData&&(e.labelData.text||e.labelData.html)||e.labelText)},r}(U);ie.decorators=[{type:t.Component,args:[{selector:"desy-input-group",template:'\r\n\x3c!-- Divider no forma parte del formulario, por lo que es reutilizable en cualquier caso --\x3e\r\n<ng-template #itemDivider let-item="item">\r\n <div role="separator" [ngClass]="item.divider.classes">\r\n <ng-container *desyCustomInnerContent="{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }"></ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #innerHtml>\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n\r\n \x3c!-- Reactive forms --\x3e\r\n <div *ngIf="controlContainer && !ngModelGroup"\r\n [formGroup]="controlContainer.control"\r\n [ngClass]="classes ? classes : \'flex\'"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n <ng-container *ngTemplateOutlet="isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelRef]="getItemLabelRef(item)"\r\n [labelData]="getItemLabelData(item)"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [formControlName]="getItemName(item)"\r\n [items]="getItemSelectOptions(item)"\r\n\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelRef]="getItemLabelRef(item)"\r\n [labelData]="getItemLabelData(item)"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [formControlName]="getItemName(item)"\r\n [type]="item.type ? item.type : \'text\'"\r\n [inputmode]="item.inputmode"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern"\r\n [placeholder]="item.placeholder"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </ng-template>\r\n </ng-container>\r\n </div>\r\n\r\n \x3c!-- Template-driven forms --\x3e\r\n <desy-template-driven-wrapper *ngIf="controlContainer && ngModelGroup">\r\n <div [ngModelGroup]="ngModelGroup"\r\n [ngClass]="classes ? classes : \'flex\'"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n <ng-container *ngTemplateOutlet="isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelRef]="getItemLabelRef(item)"\r\n [labelData]="getItemLabelData(item)"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item, $event)"\r\n [items]="getItemSelectOptions(item)"\r\n\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelRef]="getItemLabelRef(item)"\r\n [labelData]="getItemLabelData(item)"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item, $event)"\r\n [type]="item.type ? item.type : \'text\'"\r\n [inputmode]="item.inputmode"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern"\r\n [placeholder]="item.placeholder"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </ng-template>\r\n </ng-container>\r\n </div>\r\n </desy-template-driven-wrapper>\r\n\r\n \x3c!-- With ngModel--\x3e\r\n <div *ngIf="!controlContainer"\r\n [ngClass]="classes ? classes : \'flex\'"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n <ng-container *ngTemplateOutlet="isSelectItem(item) ? itemSelect : (item.divider ? itemDivider : itemInput); context: {item: item}"></ng-container>\r\n <ng-template #itemSelect>\r\n <desy-select [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelRef]="getItemLabelRef(item)"\r\n [labelData]="getItemLabelData(item)"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [items]="getItemSelectOptions(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item, $event)"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-select>\r\n </ng-template>\r\n <ng-template #itemInput>\r\n <desy-input [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [labelRef]="getItemLabelRef(item)"\r\n [labelData]="getItemLabelData(item)"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [formGroupClasses]="item.formGroupClasses"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item, $event)"\r\n [type]="item.type ? item.type : \'text\'"\r\n [inputmode]="item.inputmode"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern"\r\n [placeholder]="item.placeholder"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </ng-template>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<div [class]="[\'c-form-group\', formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\' : (hasErrorsMessage() || formGroupClasses == \'c-form-group--error\')}">\r\n\r\n <ng-container *ngIf="hasFieldsetComponent()">\r\n <ng-content select="desy-fieldset"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasFieldsetComponent()">\r\n <desy-fieldset *ngIf="fieldsetData"\r\n [classes]="fieldsetData.classes"\r\n [id]="fieldsetData.id"\r\n [legendData]="fieldsetData.legend"\r\n [headingLevel]="fieldsetData.headingLevel"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"\r\n [ariaLabel]="fieldsetData.ariaLabel"\r\n [ariaLabelledBy]="fieldsetData.ariaLabelledBy"\r\n [ariaHidden]="fieldsetData.ariaHidden"\r\n [ariaDisabled]="fieldsetData.ariaDisabled"\r\n [ariaControls]="fieldsetData.ariaControls"\r\n [ariaCurrent]="fieldsetData.ariaCurrent"\r\n [ariaLive]="fieldsetData.ariaLive"\r\n [ariaExpanded]="fieldsetData.ariaExpanded"\r\n [ariaHasPopup]="fieldsetData.ariaHasPopup"\r\n [tabindex]="fieldsetData.tabindex"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && hasLegendComponent()"\r\n [legendRef]="legendTemplate"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null">\r\n <ng-template #legendTemplate>\r\n <ng-content select="desy-legend"></ng-content>\r\n </ng-template>\r\n </desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && legendRef"\r\n [legendRef]="legendRef"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && !legendRef && legendData"\r\n [legendData]="{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && !legendRef && !legendData && legendText"\r\n [legendText]="legendText"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n\r\n <ng-container *ngIf="!hasFieldset()">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return ie})),multi:!0}]}]}],ie.ctorParameters=function(){return[{type:r.ControlContainer,decorators:[{type:t.Optional}]}]},ie.propDecorators={ngModelGroup:[{type:t.Input}],items:[{type:t.Input}],itemsChange:[{type:t.Output}],namePrefix:[{type:t.Input}],classes:[{type:t.Input}],formGroupClasses:[{type:t.Input}],errorMessage:[{type:t.Input}],id:[{type:t.Input}],fieldsetData:[{type:t.Input}],legendRef:[{type:t.Input}],legendData:[{type:t.Input}],legendText:[{type:t.Input}],itemsComponents:[{type:t.ContentChildren,args:[Z]}],fieldsetComponent:[{type:t.ContentChildren,args:[G]}],legendComponent:[{type:t.ContentChildren,args:[_]}],innerHtml:[{type:t.ViewChild,args:["innerHtml",{static:!0}]}]},m([ee("onExternalChange")],ie.prototype,"items",void 0),m([ee("onExternalChange")],ie.prototype,"namePrefix",void 0),m([P({onSetCallbackName:"overrideFieldsetParams"})],ie.prototype,"fieldsetComponent",void 0),m([P()],ie.prototype,"legendComponent",void 0);var oe=function(e){function r(r,a){var n=e.call(this)||this;if(n.radios=r,n.changeDetectorRef=a,n.checkedChange=new t.EventEmitter,n.index=0,!n.radios)throw Error("Radios items must be inside of RadiosComponent");return n}return u(r,e),r.prototype.ngOnInit=function(){this.radios.markForUpdateCheckboxIds()},r.prototype.ngOnDestroy=function(){this.radios.markForUpdateCheckboxIds()},r.prototype.ngOnChanges=function(e){if(!this.value&&!this.divider)throw Error("value or divider are required for checkbox item");this.checked!==this.lastChecked&&this.isInit()?(this.setChecked(this.checked),this.radios.updateValueFromRadioItems()):void 0!==this.lastValue&&this.lastValue!==this.value&&this.radios.updateValueFromRadioItems(),this.lastValue=this.value,this.id!==this.radioId&&this.radios.markForUpdateCheckboxIds()},r.prototype.ngAfterViewInit=function(){this.setChecked(this.checked),this.radios.updateValueFromRadioItems()},r.prototype.setChecked=function(e){this.checked=e,this.lastChecked=e,this.checkedChange.emit(e),this.changeDetectorRef.detectChanges()},r.prototype.getItemHintId=function(){return this.hintComponentList&&this.hintComponentList.length>0&&this.radioId?this.radioId+"-item-hint":null},r.prototype.hasChanged=function(){this.setChecked(this.isInputChecked()),this.radios.updateValueFromRadioItems()},r.prototype.isInit=function(){return!!this.inputElement},r.prototype.isInputChecked=function(){return this.inputElement?this.inputElement.nativeElement.checked:null},r.prototype.updateRadioId=function(e){if(this.id)this.radioId=this.id;else{var t=this.radios.idPrefix?this.radios.idPrefix:this.radios.name;this.radioId=0===e?t:t+"-"+e}this.labelComponentList&&this.labelComponentList.length>0&&(this.labelComponentList.first.for=this.radioId),this.hintComponentList&&this.hintComponentList.length>0&&(this.hintComponentList.first.id=this.getItemHintId()),this.changeDetectorRef.detectChanges()},r.prototype.hasDividers=function(){return this.radios.hasDividers},r.prototype.hasError=function(){return this.radios.hasErrorsMessage()},r.prototype.getNameRadio=function(){return this.radios.name},r.prototype.getDescribedBy=function(){return this.radios.hasFieldset()?null:this.radios.describedBy},r}(v);oe.decorators=[{type:t.Component,args:[{selector:"desy-radio-item",template:'<div [ngClass]="{\'border-t border-b border-neutral-base -mb-px\': hasDividers()}" [class]="classes">\r\n <div *ngIf="divider"><p>{{ divider }}</p></div>\r\n <div *ngIf="!divider">\r\n <div class="relative flex items-start py-base">\r\n <div class="flex items-center mx-sm">\r\n <input #input class="w-6 h-6 text-primary-base transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-base disabled:border-neutral-base text-primary-base"\r\n [attr.id]="radioId"\r\n [attr.name]="name ? name : getNameRadio()"\r\n type="radio"\r\n [value]="value" (change)="hasChanged()"\r\n [checked]="checked"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.aria-controls]="conditionalContentList && conditionalContentList.length > 0 ? \'conditional-\' + this.radioId : null"\r\n [attr.aria-describedby]="[getDescribedBy(), getItemHintId()] | makeHtmlList:null"\r\n [attr.aria-invalid]="hasError ? true : null"\r\n\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n </div>\r\n\r\n <div class="pt-0.5 leading-5">\r\n <ng-container *ngIf="labelComponentList && labelComponentList.length > 0">\r\n <ng-content select="desy-label"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!(labelComponentList && labelComponentList.length > 0)">\r\n <desy-label [for]="radioId">\r\n <ng-content></ng-content>\r\n </desy-label>\r\n </ng-container>\r\n\r\n <ng-content select="desy-hint"></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf="conditional && conditionalContentList && conditionalContentList.length > 0 && checked" @displayConditional\r\n class="mb-lg ml-5 pt-sm pb-base pl-6 origin-top-left border-l-2 border-primary-base"\r\n [attr.id]="\'conditional-\' + this.radioId">\r\n <ng-container *desyCustomInnerContent="{ component: conditionalContentList.first }"></ng-container>\r\n </div>\r\n</div>\r\n',animations:[a.trigger("displayConditional",[a.state("void",a.style({opacity:"0.0",transform:"scale(0.95)"})),a.state("*",a.style({opacity:"1.0",transform:"scale(1.0)"})),a.transition(":enter",[a.animate("100ms ease-out")]),a.transition("* => *",[a.query("@*",a.animateChild(),{optional:!0})])])]}]}],oe.ctorParameters=function(){return[{type:le,decorators:[{type:t.Host}]},{type:t.ChangeDetectorRef}]},oe.propDecorators={inputElement:[{type:t.ViewChild,args:["input"]}],id:[{type:t.Input}],name:[{type:t.Input}],value:[{type:t.Input}],conditional:[{type:t.Input}],disabled:[{type:t.Input}],classes:[{type:t.Input}],divider:[{type:t.Input}],labelComponentList:[{type:t.ContentChildren,args:[z]}],hintComponentList:[{type:t.ContentChildren,args:[q]}],conditionalContentList:[{type:t.ContentChildren,args:[O]}],checked:[{type:t.Input}],checkedChange:[{type:t.Output}]};var le=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.itemsChange=new t.EventEmitter,r.nextValue=null,r.updateChekboxIds=!1,r.contentInit=!1,r}return u(r,e),r.prototype.ngDoCheck=function(){var e=this;if(null!==this.nextValue&&(""!==this.nextValue||this.value&&""!==this.value)){this.value=this.nextValue,this.nextValue=null;var t=this.updateRadioItemsChecked();setTimeout((function(){e.onChange(e.value),t&&e.items&&e.items.length>0&&e.itemsChange.emit(e.items)}))}if(this.updateChekboxIds){var r=this.getRadioItems();if(!(r.length>0))throw Error("items are required");r.forEach((function(e,t){return e.updateRadioId(t)})),this.updateChekboxIds=!1}},r.prototype.ngAfterContentInit=function(){if(!this.name)throw Error("name is required");this.contentInit=!0},r.prototype.writeValue=function(e){e&&(this.nextValue=e)},r.prototype.onIdPrefixChange=function(){this.contentInit&&this.markForUpdateCheckboxIds(),this.propagateNewIdPrefixValue()},r.prototype.onNameChange=function(){if(this.contentInit&&!this.name)throw Error("name is required");this.contentInit&&this.markForUpdateCheckboxIds(),this.propagateNewIdPrefixValue()},r.prototype.propagateNewIdPrefixValue=function(){this.hintComponent&&this.overrideHintParams(this.hintComponent),this.errorMessageComponent&&this.overrideErrorMessageParams(this.errorMessageComponent),this.hintComponent||this.errorMessageComponent||!this.fieldsetComponent||this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.markForUpdateCheckboxIds=function(){this.updateChekboxIds=!0},r.prototype.updateRadioItemsChecked=function(){var e=this,t=!1,r=this.getRadioItems();return r.length>0&&r.forEach((function(r){r.value!==e.value||r.lastChecked?r.value!==e.value&&r.lastChecked&&(r.setChecked(!1),t=!0):(r.setChecked(!0),t=!0)})),t},r.prototype.updateValueFromRadioItems=function(){var e=this;setTimeout((function(){var t=e.getRadioItems();if(t&&t.length>0&&t.findIndex((function(e){return!e.isInit()&&!e.divider}))<0){var r=t.find((function(e){return e.isInputChecked()&&!e.divider}));e.nextValue=r?r.value:null}})),this.items&&this.items.length>0&&this.itemsChange.emit(this.items)},r.prototype.overrideFieldsetParams=function(e){e.caller=this.innerHtml,e.errorId=this.getErrorId(),e.describedBy=(new te).transform([this.getHintId(),this.getErrorId()],null),e.detectChanges()},r.prototype.overrideHintParams=function(e){e.id=this.getHintId(),e.detectChanges(),this.hasFieldsetComponent()&&this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.overrideErrorMessageParams=function(e){e.id=this.getErrorId(),e.detectChanges(),this.hasFieldsetComponent()&&this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.onDeleteHint=function(){this.hasFieldsetComponent()&&this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.onDeleteErrorMessage=function(){this.hasFieldsetComponent()&&this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.hasFieldset=function(){return!!(this.hasFieldsetComponent()||this.hasLegendComponent()||this.legendRef||this.fieldsetData||this.legendData&&(this.legendData.text||this.legendData.html)||this.legendText)},r.prototype.hasFieldsetComponent=function(){return!!this.fieldsetComponent},r.prototype.hasLegendComponent=function(){return!!this.legendComponent},r.prototype.getErrorId=function(){return this.hasErrorsMessage()?this.getIdPrefix()+"-error":null},r.prototype.getHintId=function(){return this.hasHint()?this.getIdPrefix()+"-hint":null},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:this.name},r.prototype.getRadioItems=function(){var e=[];return this.radioComponentItems&&this.radioComponentItems.length>0?e=this.radioComponentItems.toArray():this.radioComponentItems2&&this.radioComponentItems2.length>0&&(e=this.radioComponentItems2.toArray()),e},r}(U);le.decorators=[{type:t.Component,args:[{selector:"desy-radios",template:'<div [class]="[\'c-form-group\', formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\': (hasErrorsMessage() || formGroupClasses == \'c-form-group--error\') }">\r\n\r\n <ng-container *ngIf="hasFieldsetComponent()">\r\n <ng-content select="desy-fieldset"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasFieldsetComponent()">\r\n <desy-fieldset *ngIf="fieldsetData"\r\n [classes]="fieldsetData.classes"\r\n [id]="fieldsetData.id"\r\n [legendData]="fieldsetData.legend"\r\n [headingLevel]="fieldsetData.headingLevel"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [role]="fieldsetData.role"\r\n [ariaLabel]="fieldsetData.ariaLabel"\r\n [ariaLabelledBy]="fieldsetData.ariaLabelledBy"\r\n [ariaHidden]="fieldsetData.ariaHidden"\r\n [ariaDisabled]="fieldsetData.ariaDisabled"\r\n [ariaControls]="fieldsetData.ariaControls"\r\n [ariaCurrent]="fieldsetData.ariaCurrent"\r\n [ariaLive]="fieldsetData.ariaLive"\r\n [ariaExpanded]="fieldsetData.ariaExpanded"\r\n [ariaHasPopup]="fieldsetData.ariaHasPopup"\r\n [tabindex]="fieldsetData.tabindex"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && hasLegendComponent()"\r\n [legendRef]="legendTemplate"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null">\r\n <ng-template #legendTemplate>\r\n <ng-content select="desy-legend"></ng-content>\r\n </ng-template>\r\n </desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && legendRef"\r\n [legendRef]="legendRef"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && !legendRef && legendData"\r\n [legendData]="{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && !legendRef && !legendData && legendText"\r\n [legendText]="legendText"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="!hasFieldset()">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #innerHtml>\r\n <ng-container *ngIf="hasHintComponent()">\r\n <ng-content select="desy-hint"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasHintComponent()">\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="hasErrorMessageComponent()">\r\n <ng-content select="desy-error-message"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasErrorMessageComponent()">\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n </ng-container>\r\n\r\n\r\n <div class="c-radios" [ngClass]="classes"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngIf="radioComponentItems && radioComponentItems.length > 0">\r\n <ng-content select="desy-radio-item"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!(radioComponentItems && radioComponentItems.length > 0) && items">\r\n <desy-radio-item *ngFor="let item of items; index as i"\r\n [id]="item.id"\r\n [disabled]="item.disabled"\r\n [classes]="item.classes"\r\n [value]="item.value"\r\n [(checked)]="item.checked"\r\n [conditional]="item.conditional"\r\n [divider]="item.divider"\r\n\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex">\r\n <desy-label [text]="item.text" [html]="item.html"\r\n [classes]="item.labelData ? item.labelData.classes : null"\r\n [role]="item.labelData ? item.labelData.role : null"\r\n [ariaLabel]="item.labelData ? item.labelData.ariaLabel : null"\r\n [ariaDescribedBy]="item.labelData ? item.labelData.ariaDescribedBy: null"\r\n [ariaLabelledBy]="item.labelData ? item.labelData.ariaLabelledBy : null"\r\n [ariaHidden]="item.labelData ? item.labelData.ariaHidden : null"\r\n [ariaDisabled]="item.labelData ? item.labelData.ariaDisabled : null"\r\n [ariaControls]="item.labelData ? item.labelData.ariaControls : null"\r\n [ariaCurrent]="item.labelData ? item.labelData.ariaCurrent : null"\r\n [ariaLive]="item.labelData ? item.labelData.ariaLive : null"\r\n [ariaExpanded]="item.labelData ? item.labelData.ariaExpanded : null"\r\n [ariaErrorMessage]="item.labelData ? item.labelData.ariaErrorMessage : null"\r\n [ariaHasPopup]="item.labelData ? item.labelData.ariaHasPopup : null"\r\n [tabindex]="tabindex ? item.labelData.tabindex : null"></desy-label>\r\n <desy-hint *ngIf="item.hintData && (item.hintData.text || item.hintData.html)"\r\n [text]="item.hintData.text"\r\n [html]="item.hintData.html"\r\n [classes]="item.hintData.classes"\r\n [role]="item.hintData.role"\r\n [ariaLabel]="item.hintData.ariaLabel"\r\n [ariaDescribedBy]="item.hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="item.hintData.ariaLabelledBy"\r\n [ariaHidden]="item.hintData.ariaHidden"\r\n [ariaDisabled]="item.hintData.ariaDisabled"\r\n [ariaControls]="item.hintData.ariaControls"\r\n [ariaCurrent]="item.hintData.ariaCurrent"\r\n [ariaLive]="item.hintData.ariaLive"\r\n [ariaExpanded]="item.hintData.ariaExpanded"\r\n [ariaErrorMessage]="item.hintData.ariaErrorMessage"\r\n [ariaHasPopup]="item.hintData.ariaHasPopup"\r\n [tabindex]="item.hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!item.hintData && item.hintText" [text]="item.hintText"></desy-hint>\r\n <desy-content *ngIf="item.conditionalHtml">\r\n <ng-container *ngTemplateOutlet="item.conditionalHtml"></ng-container>\r\n </desy-content>\r\n </desy-radio-item>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return le})),multi:!0}]}]}],le.propDecorators={fieldsetData:[{type:t.Input}],legendRef:[{type:t.Input}],legendData:[{type:t.Input}],legendText:[{type:t.Input}],idPrefix:[{type:t.Input}],name:[{type:t.Input}],items:[{type:t.Input}],itemsChange:[{type:t.Output}],formGroupClasses:[{type:t.Input}],hasDividers:[{type:t.Input}],hasError:[{type:t.Input}],classes:[{type:t.Input}],describedBy:[{type:t.Input}],fieldsetComponent:[{type:t.ContentChildren,args:[G]}],legendComponent:[{type:t.ContentChildren,args:[_]}],radioComponentItems:[{type:t.ContentChildren,args:[oe]}],innerHtml:[{type:t.ViewChild,args:["innerHtml",{static:!0}]}],radioComponentItems2:[{type:t.ViewChildren,args:[oe]}]},m([ee("onIdPrefixChange")],le.prototype,"idPrefix",void 0),m([ee("onNameChange")],le.prototype,"name",void 0),m([P({onSetCallbackName:"overrideFieldsetParams"})],le.prototype,"fieldsetComponent",void 0),m([P()],le.prototype,"legendComponent",void 0);var se=function(e){function r(r,a){var n=e.call(this)||this;if(n.checkboxes=r,n.changeDetectorRef=a,n.checkedChange=new t.EventEmitter,n.indeterminateChange=new t.EventEmitter,!n.checkboxes)throw Error("Checkbox items must be inside of CheckboxesComponent");return n}return u(r,e),r.prototype.ngOnInit=function(){this.checkboxes.markForUpdateCheckboxIds()},r.prototype.ngOnDestroy=function(){this.checkboxes.markForUpdateCheckboxIds()},r.prototype.ngOnChanges=function(e){if(!this.value)throw Error("value is required for checkbox item");this.checked!==this.lastChecked&&this.isInit()?(this.setChecked(this.checked),this.checkboxes.updateValueFromCheckboxItems()):void 0!==this.lastValue&&this.lastValue!==this.value&&this.checkboxes.updateValueFromCheckboxItems(),this.indeterminateChecked!==this.lastIndeterminate&&this.isInit()&&(this.setIndeterminateChecked(this.indeterminateChecked),this.checkboxes.updateValueFromCheckboxItems()),this.lastValue=this.value,this.id!==this.checkboxId&&this.checkboxes.markForUpdateCheckboxIds()},r.prototype.ngAfterViewInit=function(){this.setChecked(this.checked),this.setIndeterminateChecked(this.indeterminateChecked),this.checkboxes.updateValueFromCheckboxItems()},r.prototype.getItemHintId=function(){return this.hintComponentList&&this.hintComponentList.length>0&&this.checkboxId?this.checkboxId+"-item-hint":null},r.prototype.hasChanged=function(){var e=this.inputElement.nativeElement;this.isIndeterminate&&(e.readOnly?(e.checked=!1,e.readOnly=!1):e.checked||(e.readOnly=!0,e.indeterminate=!0)),this.setChecked(e.checked),this.setIndeterminateChecked(e.indeterminate),this.checkboxes.updateValueFromCheckboxItems()},r.prototype.setChecked=function(e){this.checked=e,this.lastChecked=e,this.checkedChange.emit(e),this.changeDetectorRef.detectChanges()},r.prototype.setIndeterminateChecked=function(e){this.indeterminateChecked=e,this.lastIndeterminate=e,this.indeterminateChange.emit(e),this.changeDetectorRef.detectChanges()},r.prototype.setIndeterminateStatus=function(){var e,t=null===(e=this.inputElement)||void 0===e?void 0:e.nativeElement;t&&(this.indeterminateChecked?(t.readOnly=!0,t.indeterminate=!0):t.readOnly&&(t.readOnly=!1,t.indeterminate=!1))},r.prototype.isInit=function(){return!!this.inputElement},r.prototype.getValue=function(){var e=this.inputElement.nativeElement;return e.checked||e.indeterminate?this.value:null},r.prototype.updateCheckboxId=function(e){if(this.id)this.checkboxId=this.id;else{var t=this.checkboxes.idPrefix?this.checkboxes.idPrefix:this.checkboxes.name;this.checkboxId=0===e?t:t+"-"+e}this.labelComponentList&&this.labelComponentList.length>0&&(this.labelComponentList.first.for=this.checkboxId),this.hintComponentList&&this.hintComponentList.length>0&&(this.hintComponentList.first.id=this.getItemHintId()),this.changeDetectorRef.detectChanges()},r.prototype.hasDividers=function(){return this.checkboxes.hasDividers},r.prototype.hasError=function(){return this.checkboxes.hasErrorsMessage()},r.prototype.getNameCheckbox=function(){return this.checkboxes.name},r.prototype.getDescribedBy=function(){return this.checkboxes.hasFieldset()?null:this.checkboxes.describedBy},r}(C);se.decorators=[{type:t.Component,args:[{selector:"desy-checkbox-item",template:'<div [ngClass]="{\'border-t border-b border-neutral-base -mb-px\' : hasDividers()}" [class]="classes">\r\n <div class="relative flex items-start py-base">\r\n <div class="flex items-center mx-sm">\r\n <input #input class="w-6 h-6 transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-base disabled:border-neutral-base text-primary-base"\r\n [checked]="checked"\r\n [attr.id]="checkboxId"\r\n [attr.name]="name ? name : getNameCheckbox()"\r\n type="checkbox"\r\n [value]="value" (change)="hasChanged()"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.aria-controls]="conditionalContentList && conditionalContentList.length > 0 ? \'conditional-\' + checkboxId : null"\r\n [attr.aria-describedby]="[getDescribedBy(), getItemHintId()] | makeHtmlList:null"\r\n [attr.aria-invalid]="hasError() ? true : null"\r\n\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n </div>\r\n <div class="pt-0.5 leading-5">\r\n <ng-container *ngIf="labelComponentList && labelComponentList.length > 0">\r\n <ng-content select="desy-label"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!(labelComponentList && labelComponentList.length > 0)">\r\n <desy-label [for]="checkboxId">\r\n <ng-content></ng-content>\r\n </desy-label>\r\n </ng-container>\r\n <ng-content select="desy-hint"></ng-content>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf="conditional && conditionalContentList && conditionalContentList.length > 0 && (input.checked || input.indeterminate)" @displayConditional\r\n class="mb-base ml-5 py-sm pl-6 origin-top-left border-l-2 border-primary-base"\r\n [attr.id]="\'conditional-\' + checkboxId">\r\n <ng-container *desyCustomInnerContent="{ component: conditionalContentList.first }"></ng-container>\r\n </div>\r\n</div>\r\n',animations:[a.trigger("displayConditional",[a.state("void",a.style({opacity:"0.0",transform:"scale(0.95)"})),a.state("*",a.style({opacity:"1.0",transform:"scale(1.0)"})),a.transition(":enter",[a.animate("100ms ease-out")]),a.transition("* => *",[a.query("@*",a.animateChild(),{optional:!0})])])]}]}],se.ctorParameters=function(){return[{type:de,decorators:[{type:t.Host}]},{type:t.ChangeDetectorRef}]},se.propDecorators={inputElement:[{type:t.ViewChild,args:["input"]}],id:[{type:t.Input}],value:[{type:t.Input}],name:[{type:t.Input}],conditional:[{type:t.Input}],disabled:[{type:t.Input}],isIndeterminate:[{type:t.Input}],indeterminateChecked:[{type:t.Input}],classes:[{type:t.Input}],labelComponentList:[{type:t.ContentChildren,args:[z]}],hintComponentList:[{type:t.ContentChildren,args:[q]}],conditionalContentList:[{type:t.ContentChildren,args:[O]}],checked:[{type:t.Input}],checkedChange:[{type:t.Output}],indeterminateChange:[{type:t.Output}]},m([ee("setIndeterminateStatus")],se.prototype,"indeterminateChecked",void 0);var de=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.itemsChange=new t.EventEmitter,r.nextValue=null,r.updateChekboxIds=!1,r.contentInit=!1,r}return u(r,e),r.prototype.ngDoCheck=function(){var e=this;if(null!==this.nextValue&&(this.nextValue.length>0||this.value&&this.value.length>0)&&(this.value=this.nextValue,this.nextValue=null,this.updateCheckboxItemsChecked(),setTimeout((function(){e.onChange(e.value),e.items&&e.items.length>0&&e.itemsChange.emit(e.items)}))),this.updateChekboxIds){var t=this.getCheckboxItems();if(!(t.length>0))throw Error("items are required");t.forEach((function(e,t){return e.updateCheckboxId(t)})),this.updateChekboxIds=!1}},r.prototype.ngAfterContentInit=function(){if(!this.name)throw Error("name is required");this.contentInit=!0},r.prototype.writeValue=function(e){e&&(this.nextValue=e)},r.prototype.onIdPrefixChange=function(){this.contentInit&&this.markForUpdateCheckboxIds(),this.propagateNewIdPrefixValue()},r.prototype.onNameChange=function(){if(this.contentInit&&!this.name)throw Error("name is required");this.contentInit&&this.markForUpdateCheckboxIds(),this.propagateNewIdPrefixValue()},r.prototype.propagateNewIdPrefixValue=function(){this.hintComponent&&this.overrideHintParams(this.hintComponent),this.errorMessageComponent&&this.overrideErrorMessageParams(this.errorMessageComponent),this.hintComponent||this.errorMessageComponent||!this.fieldsetComponent||this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.markForUpdateCheckboxIds=function(){this.updateChekboxIds=!0},r.prototype.updateCheckboxItemsChecked=function(){var e=this,t=this.getCheckboxItems();t.length>0&&t.forEach((function(t){var r=e.value.findIndex((function(e){return e===t.value}))>-1;r!==t.lastChecked&&t.setChecked(r)}))},r.prototype.updateValueFromCheckboxItems=function(){var e=this;setTimeout((function(){var t=e.getCheckboxItems();t&&t.length>0&&t.findIndex((function(e){return!e.isInit()}))<0&&(e.nextValue=t.filter((function(e){return e.checked})).map((function(e){return e.getValue()})))})),this.items&&this.items.length>0&&this.itemsChange.emit(this.items)},r.prototype.overrideFieldsetParams=function(e){e.caller=this.innerHtml,e.errorId=this.getErrorId(),e.describedBy=(new te).transform([this.getHintId(),this.getErrorId()],null),e.detectChanges()},r.prototype.overrideHintParams=function(e){e.id=this.getHintId(),e.detectChanges(),this.hasFieldsetComponent()&&this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.overrideErrorMessageParams=function(e){e.id=this.getErrorId(),e.detectChanges(),this.hasFieldsetComponent()&&this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.onDeleteHint=function(){this.hasFieldsetComponent()&&this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.onDeleteErrorMessage=function(){this.hasFieldsetComponent()&&this.overrideFieldsetParams(this.fieldsetComponent)},r.prototype.hasFieldset=function(){return!!(this.hasFieldsetComponent()||this.hasLegendComponent()||this.legendRef||this.fieldsetData||this.legendData&&(this.legendData.text||this.legendData.html)||this.legendText)},r.prototype.hasFieldsetComponent=function(){return!!this.fieldsetComponent},r.prototype.hasLegendComponent=function(){return!!this.legendComponent},r.prototype.getErrorId=function(){return this.hasErrorsMessage()?this.getIdPrefix()+"-error":void 0},r.prototype.getHintId=function(){return this.hasHint()?this.getIdPrefix()+"-hint":void 0},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:this.name},r.prototype.getCheckboxItems=function(){var e=[];return this.checkboxComponentItems&&this.checkboxComponentItems.length>0?e=this.checkboxComponentItems.toArray():this.checkboxComponentItems2&&this.checkboxComponentItems2.length>0&&(e=this.checkboxComponentItems2.toArray()),e},r}(U);de.decorators=[{type:t.Component,args:[{selector:"desy-checkboxes",template:'<div [class]="[\'c-form-group\', formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\': (hasErrorsMessage() || formGroupClasses == \'c-form-group--error\') }">\r\n\r\n <ng-container *ngIf="hasFieldsetComponent()">\r\n <ng-content select="desy-fieldset"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasFieldsetComponent()">\r\n <desy-fieldset *ngIf="fieldsetData"\r\n [classes]="fieldsetData.classes"\r\n [id]="fieldsetData.id"\r\n [legendData]="fieldsetData.legend"\r\n [headingLevel]="fieldsetData.headingLevel"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n [role]="fieldsetData.role"\r\n [ariaLabel]="fieldsetData.ariaLabel"\r\n [ariaLabelledBy]="fieldsetData.ariaLabelledBy"\r\n [ariaHidden]="fieldsetData.ariaHidden"\r\n [ariaDisabled]="fieldsetData.ariaDisabled"\r\n [ariaControls]="fieldsetData.ariaControls"\r\n [ariaCurrent]="fieldsetData.ariaCurrent"\r\n [ariaLive]="fieldsetData.ariaLive"\r\n [ariaExpanded]="fieldsetData.ariaExpanded"\r\n [ariaHasPopup]="fieldsetData.ariaHasPopup"\r\n [tabindex]="fieldsetData.tabindex"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !!legendComponent"\r\n [legendRef]="legendTemplate"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null">\r\n <ng-template #legendTemplate>\r\n <ng-content select="desy-legend"></ng-content>\r\n </ng-template>\r\n </desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendComponent && legendRef"\r\n [legendRef]="legendRef"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendComponent && !legendRef && legendData"\r\n [legendData]="{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !legendComponent && !legendRef && !legendData && legendText"\r\n [legendText]="legendText"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"></desy-fieldset>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="!hasFieldset()">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n\r\n<ng-template #innerHtml>\r\n <ng-container *ngIf="hasHintComponent()">\r\n <ng-content select="desy-hint"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasHintComponent()">\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="hasErrorMessageComponent()">\r\n <ng-content select="desy-error-message"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasErrorMessageComponent()">\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n </ng-container>\r\n\r\n <div [class]="[\'c-checkboxes\', classes] | makeHtmlList"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n\r\n <ng-container *ngIf="checkboxComponentItems && checkboxComponentItems.length > 0">\r\n <ng-content select="desy-checkbox-item"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!(checkboxComponentItems && checkboxComponentItems.length > 0) && items">\r\n <desy-checkbox-item *ngFor="let item of items; index as i"\r\n [id]="item.id"\r\n [disabled]="item.disabled"\r\n [name]="item.name"\r\n [classes]="item.classes"\r\n [value]="item.value"\r\n [(checked)]="item.checked"\r\n [conditional]="item.conditional"\r\n [isIndeterminate]="item.isIndeterminate"\r\n [indeterminateChecked]="item.indeterminateChecked"\r\n\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex">\r\n <desy-label [text]="item.text" [html]="item.html"\r\n [classes]="item.labelData ? item.labelData.classes : null"\r\n [role]="item.labelData ? item.labelData.role : null"\r\n [ariaLabel]="item.labelData ? item.labelData.ariaLabel : null"\r\n [ariaDescribedBy]="item.labelData ? item.labelData.ariaDescribedBy: null"\r\n [ariaLabelledBy]="item.labelData ? item.labelData.ariaLabelledBy : null"\r\n [ariaHidden]="item.labelData ? item.labelData.ariaHidden : null"\r\n [ariaDisabled]="item.labelData ? item.labelData.ariaDisabled : null"\r\n [ariaControls]="item.labelData ? item.labelData.ariaControls : null"\r\n [ariaCurrent]="item.labelData ? item.labelData.ariaCurrent : null"\r\n [ariaLive]="item.labelData ? item.labelData.ariaLive : null"\r\n [ariaExpanded]="item.labelData ? item.labelData.ariaExpanded : null"\r\n [ariaErrorMessage]="item.labelData ? item.labelData.ariaErrorMessage : null"\r\n [ariaHasPopup]="item.labelData ? item.labelData.ariaHasPopup : null"\r\n [tabindex]="tabindex ? item.labelData.tabindex : null"></desy-label>\r\n <desy-hint *ngIf="item.hintData && (item.hintData.text || item.hintData.html)"\r\n [text]="item.hintData.text"\r\n [html]="item.hintData.html"\r\n [classes]="item.hintData.classes"\r\n [role]="item.hintData.role"\r\n [ariaLabel]="item.hintData.ariaLabel"\r\n [ariaDescribedBy]="item.hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="item.hintData.ariaLabelledBy"\r\n [ariaHidden]="item.hintData.ariaHidden"\r\n [ariaDisabled]="item.hintData.ariaDisabled"\r\n [ariaControls]="item.hintData.ariaControls"\r\n [ariaCurrent]="item.hintData.ariaCurrent"\r\n [ariaLive]="item.hintData.ariaLive"\r\n [ariaExpanded]="item.hintData.ariaExpanded"\r\n [ariaErrorMessage]="item.hintData.ariaErrorMessage"\r\n [ariaHasPopup]="item.hintData.ariaHasPopup"\r\n [tabindex]="item.hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!item.hintData && item.hintText" [text]="item.hintText"></desy-hint>\r\n <desy-content *ngIf="item.conditionalHtml">\r\n <ng-container *ngTemplateOutlet="item.conditionalHtml"></ng-container>\r\n </desy-content>\r\n </desy-checkbox-item>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return de})),multi:!0}]}]}],de.propDecorators={fieldsetData:[{type:t.Input}],legendRef:[{type:t.Input}],legendData:[{type:t.Input}],legendText:[{type:t.Input}],idPrefix:[{type:t.Input}],name:[{type:t.Input}],items:[{type:t.Input}],itemsChange:[{type:t.Output}],formGroupClasses:[{type:t.Input}],hasDividers:[{type:t.Input}],hasError:[{type:t.Input}],classes:[{type:t.Input}],describedBy:[{type:t.Input}],fieldsetComponent:[{type:t.ContentChildren,args:[G]}],legendComponent:[{type:t.ContentChildren,args:[_]}],checkboxComponentItems:[{type:t.ContentChildren,args:[se]}],innerHtml:[{type:t.ViewChild,args:["innerHtml",{static:!0}]}],checkboxComponentItems2:[{type:t.ViewChildren,args:[se]}]},m([ee("onIdPrefixChange")],de.prototype,"idPrefix",void 0),m([ee("onNameChange")],de.prototype,"name",void 0),m([P({onSetCallbackName:"overrideFieldsetParams"})],de.prototype,"fieldsetComponent",void 0),m([P()],de.prototype,"legendComponent",void 0);var pe=function(){};pe.decorators=[{type:t.Component,args:[{selector:"desy-date-input-item",template:""}]}],pe.propDecorators={classes:[{type:t.Input}]};var ce=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.valueChange=new t.EventEmitter,r}return u(r,e),r.prototype.ngAfterContentInit=function(){if(!this.name)throw Error("day name is required");if(!this.labelComponent)throw Error("day label is required")},r}(pe);ce.decorators=[{type:t.Component,args:[{selector:"desy-input-day",template:'<ng-template #label>\r\n <ng-content select="desy-label"></ng-content>\r\n</ng-template>\r\n',providers:[{provide:pe,useExisting:t.forwardRef((function(){return ce}))}]}]}],ce.propDecorators={id:[{type:t.Input}],name:[{type:t.Input}],labelText:[{type:t.Input}],labelData:[{type:t.Input}],disabled:[{type:t.Input}],hasErrors:[{type:t.Input}],value:[{type:t.Input}],autocomplete:[{type:t.Input}],pattern:[{type:t.Input}],classes:[{type:t.Input}],maxlength:[{type:t.Input}],valueChange:[{type:t.Output}],labelComponent:[{type:t.ContentChildren,args:[z]}],labelRef:[{type:t.ViewChild,args:["label",{static:!0}]}]},m([P()],ce.prototype,"labelComponent",void 0);var ue=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.valueChange=new t.EventEmitter,r}return u(r,e),r.prototype.ngAfterContentInit=function(){if(!this.name)throw Error("month name is required");if(!this.labelComponent)throw Error("month label is required")},r}(pe);ue.decorators=[{type:t.Component,args:[{selector:"desy-input-month",template:'<ng-template #label>\r\n <ng-content select="desy-label"></ng-content>\r\n</ng-template>\r\n',providers:[{provide:pe,useExisting:t.forwardRef((function(){return ue}))}]}]}],ue.propDecorators={id:[{type:t.Input}],name:[{type:t.Input}],labelText:[{type:t.Input}],labelData:[{type:t.Input}],disabled:[{type:t.Input}],hasErrors:[{type:t.Input}],value:[{type:t.Input}],autocomplete:[{type:t.Input}],pattern:[{type:t.Input}],classes:[{type:t.Input}],maxlength:[{type:t.Input}],valueChange:[{type:t.Output}],labelComponent:[{type:t.ContentChildren,args:[z]}],labelRef:[{type:t.ViewChild,args:["label",{static:!0}]}]},m([P()],ue.prototype,"labelComponent",void 0);var me=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.valueChange=new t.EventEmitter,r}return u(r,e),r.prototype.ngAfterContentInit=function(){if(!this.name)throw Error("year name is required");if(!this.labelComponent)throw Error("year label is required")},r}(pe);me.decorators=[{type:t.Component,args:[{selector:"desy-input-year",template:'<ng-template #label>\r\n <ng-content select="desy-label"></ng-content>\r\n</ng-template>\r\n',providers:[{provide:pe,useExisting:t.forwardRef((function(){return me}))}]}]}],me.propDecorators={id:[{type:t.Input}],name:[{type:t.Input}],disabled:[{type:t.Input}],hasErrors:[{type:t.Input}],value:[{type:t.Input}],autocomplete:[{type:t.Input}],pattern:[{type:t.Input}],classes:[{type:t.Input}],maxlength:[{type:t.Input}],valueChange:[{type:t.Output}],labelComponent:[{type:t.ContentChildren,args:[z]}],labelRef:[{type:t.ViewChild,args:["label",{static:!0}]}]},m([P()],me.prototype,"labelComponent",void 0);var ge=function(e){function t(){var t=e.apply(this,f(arguments))||this;return t.divider=t,t}return u(t,e),t}(pe);ge.decorators=[{type:t.Component,args:[{selector:"desy-date-input-divider",template:"<ng-template #dividerContent>\r\n <ng-content></ng-content>\r\n</ng-template>",providers:[{provide:pe,useExisting:t.forwardRef((function(){return ge}))}]}]}],ge.propDecorators={dividerContent:[{type:t.ViewChild,args:["dividerContent",{static:!0}]}]};var he=function(e){function r(r){var a=e.call(this)||this;return a.controlContainer=r,a.itemsChange=new t.EventEmitter,a.contentInit=!1,a}return u(r,e),r.prototype.ngOnChanges=function(){this.checkRequired()},r.prototype.ngAfterContentInit=function(){this.contentInit=!0},r.prototype.initDefaultItems=function(){this.items||(this.items=[{name:"día",classes:"w-14",maxlength:2},{name:"mes",classes:"w-14",maxlength:2},{name:"año",classes:"w-20",maxlength:4}])},r.prototype.checkRequired=function(){if(!this.id)throw Error("id is required")},r.prototype.writeValue=function(e){var t=this;(this.value=e,this.value)&&(this.getItems().forEach((function(e){return e.value=t.value[t.getItemName(e)]})),this.items&&this.itemsChange.emit(this.items));this.onChange(e)},r.prototype.overrideFieldsetParams=function(e){e.caller=this.innerHtml,e.errorId=this.getErrorId(),e.describedBy=(new te).transform([this.getHintId(),this.getErrorId()],null),e.role="group",e.detectChanges()},r.prototype.onExternalChange=function(){var e=this;if(this.contentInit){this.value||(this.value={}),this.getItems().forEach((function(t){return e.value[e.getItemName(t)]=t.value}));var t={};Object.assign(t,this.value),this.onChange(t)}},r.prototype.onInternalChange=function(e,t){var r=this.getItemName(e);if(this.value||(this.value={}),this.value[r]!==t){this.value[r]=t?+t:void 0;var a={};Object.assign(a,this.value),this.onChange(a),(e instanceof ce||e instanceof ue||e instanceof me)&&e.valueChange.emit(t),this.items&&(e.value=t,this.itemsChange.emit(this.items))}},r.prototype.hasFieldset=function(){return!!(this.hasFieldsetComponent()||this.hasLegendComponent()||this.legendRef||this.fieldsetData||this.legendData&&(this.legendData.text||this.legendData.html)||this.legendText)},r.prototype.hasFieldsetComponent=function(){return!!this.fieldsetComponent},r.prototype.hasLegendComponent=function(){return!!this.legendComponent},r.prototype.hasErrorMessageComponent=function(){return!!this.errorMessageComponent},r.prototype.getItemName=function(e){return this.namePrefix?this.namePrefix+"-"+e.name:e.name},r.prototype.getItemLabel=function(e){return e.labelData&&(e.labelData.text||e.labelData.html)?e.labelData:{text:e.labelText?e.labelText:e.name.toUpperCase()}},r.prototype.getItemLabelRef=function(e){return e instanceof ce||e instanceof ue||e instanceof me?e.labelRef:null},r.prototype.getItems=function(){var e;return(e=this.dateInputItemComponents&&this.dateInputItemComponents.length>0?this.dateInputItemComponents.toArray():this.items?this.items:this.contentInit?r.defaultItems:[]).forEach((function(e){if(!(e.name||e instanceof ge))throw new Error("Item name is required")})),e},r.prototype.getItemDividerTemplate=function(e){return e.divider instanceof ge?e.divider.dividerContent:null},r.prototype.getItemDividerHtml=function(e){return e.divider.html?e.divider.html:"<p>"+M.escapeHtml(e.divider.text)+"</p>"},r}(U);he.defaultItems=[{name:"day",classes:"w-14",maxlength:2},{name:"month",classes:"w-14",maxlength:2},{name:"year",classes:"w-20",maxlength:4}],he.decorators=[{type:t.Component,args:[{selector:"desy-date-input",template:'\r\n<ng-template #innerHtml>\r\n <ng-container *ngIf="hasHintComponent()">\r\n <ng-content select="desy-hint"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasHintComponent()">\r\n <ng-container *ngTemplateOutlet="hintRef"></ng-container>\r\n <desy-hint *ngIf="!hintRef && hintData"\r\n [id]="getHintId()"\r\n [text]="hintData.text"\r\n [html]="hintData.html"\r\n [classes]="hintData.classes"\r\n [role]="hintData.role"\r\n [ariaLabel]="hintData.ariaLabel"\r\n [ariaDescribedBy]="hintData.ariaDescribedBy"\r\n [ariaLabelledBy]="hintData.ariaLabelledBy"\r\n [ariaHidden]="hintData.ariaHidden"\r\n [ariaDisabled]="hintData.ariaDisabled"\r\n [ariaControls]="hintData.ariaControls"\r\n [ariaCurrent]="hintData.ariaCurrent"\r\n [ariaLive]="hintData.ariaLive"\r\n [ariaExpanded]="hintData.ariaExpanded"\r\n [ariaErrorMessage]="hintData.ariaErrorMessage"\r\n [ariaHasPopup]="hintData.ariaHasPopup"\r\n [tabindex]="hintData.tabindex"></desy-hint>\r\n <desy-hint *ngIf="!hintRef && !hintData && hintText" [text]="hintText" [id]="getHintId()"></desy-hint>\r\n </ng-container>\r\n\r\n\r\n <ng-container *ngIf="hasErrorMessageComponent()">\r\n <ng-content select="desy-error-message"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasErrorMessageComponent()">\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n </ng-container>\r\n\r\n \x3c!-- With reactive forms --\x3e\r\n <div *ngIf="controlContainer && !ngModelGroup"\r\n [formGroup]="controlContainer.control"\r\n [class]="[\'flex\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n <ng-container *ngIf="item.divider">\r\n <div role="separator" [ngClass]="item.divider.classes">\r\n <ng-container *desyCustomInnerContent="{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf="!item.divider">\r\n <div class="mr-base">\r\n <desy-input [labelData]="getItemLabel(item)"\r\n [labelRef]="getItemLabelRef(item)"\r\n [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [formControlName]="getItemName(item)"\r\n [type]="\'text\'"\r\n [inputmode]="\'numeric\'"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern ? item.pattern : \'[0-9]*\'"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n \x3c!-- Template-driven forms --\x3e\r\n <desy-template-driven-wrapper *ngIf="controlContainer && ngModelGroup">\r\n <div [ngModelGroup]="ngModelGroup"\r\n [class]="[\'flex\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n \r\n <ng-container *ngIf="item.divider">\r\n <div role="separator" [ngClass]="item.divider.classes">\r\n <ng-container *desyCustomInnerContent="{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf="!item.divider">\r\n <div class="mr-base">\r\n <desy-input [labelData]="getItemLabel(item)"\r\n [labelRef]="getItemLabelRef(item)"\r\n [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item, +$event)"\r\n [type]="\'text\'"\r\n [inputmode]="\'numeric\'"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern ? item.pattern : \'[0-9]*\'"\r\n [disabled]="disabled ? true : null"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </desy-template-driven-wrapper>\r\n\r\n \x3c!-- With ngModel--\x3e\r\n <div *ngIf="!controlContainer"\r\n [class]="[\'flex\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n \r\n <ng-container *ngIf="item.divider">\r\n <div role="separator" [ngClass]="item.divider.classes">\r\n <ng-container *desyCustomInnerContent="{ template: getItemDividerTemplate(item), html: getItemDividerHtml(item) }"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf="!item.divider">\r\n <div class="mr-base">\r\n <desy-input [labelData]="getItemLabel(item)"\r\n [labelRef]="getItemLabelRef(item)"\r\n [id]="item.id ? item.id : id + \'-\' + item.name"\r\n [classes]="[\'mb-0\', item.classes] | makeHtmlList"\r\n [errorId]="item.hasErrors ? getErrorId() : null"\r\n [name]="getItemName(item)"\r\n [ngModel]="item.value" (ngModelChange)="onInternalChange(item, +$event)"\r\n [type]="\'text\'"\r\n [inputmode]="\'numeric\'"\r\n [autocomplete]="item.autocomplete"\r\n [pattern]="item.pattern ? item.pattern : \'[0-9]*\'"\r\n [disabled]="disabled ? true : null"\r\n\r\n [maxlength]="item.maxlength"\r\n [role]="item.role"\r\n [ariaLabel]="item.ariaLabel"\r\n [ariaDescribedBy]="item.ariaDescribedBy"\r\n [ariaLabelledBy]="item.ariaLabelledBy"\r\n [ariaHidden]="item.ariaHidden"\r\n [ariaDisabled]="item.ariaDisabled"\r\n [ariaControls]="item.ariaControls"\r\n [ariaCurrent]="item.ariaCurrent"\r\n [ariaLive]="item.ariaLive"\r\n [ariaExpanded]="item.ariaExpanded"\r\n [ariaErrorMessage]="item.ariaErrorMessage"\r\n [ariaHasPopup]="item.ariaHasPopup"\r\n [tabindex]="item.tabindex"></desy-input>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n</div>\r\n</ng-template>\r\n\r\n<div [class]="[\'c-form-group\', formGroupClasses] | makeHtmlList"\r\n [ngClass]="{\'c-form-group--error\' : (hasErrorsMessage() || formGroupClasses == \'c-form-group--error\')}">\r\n\r\n <ng-container *ngIf="hasFieldsetComponent()">\r\n <ng-content select="desy-fieldset"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hasFieldsetComponent()">\r\n <desy-fieldset *ngIf="fieldsetData"\r\n [classes]="fieldsetData.classes"\r\n [id]="fieldsetData.id"\r\n [legendData]="fieldsetData.legend"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[fieldsetData.describedBy, getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"\r\n [ariaLabel]="fieldsetData.ariaLabel"\r\n [ariaLabelledBy]="fieldsetData.ariaLabelledBy"\r\n [ariaHidden]="fieldsetData.ariaHidden"\r\n [ariaDisabled]="fieldsetData.ariaDisabled"\r\n [ariaControls]="fieldsetData.ariaControls"\r\n [ariaCurrent]="fieldsetData.ariaCurrent"\r\n [ariaLive]="fieldsetData.ariaLive"\r\n [ariaExpanded]="fieldsetData.ariaExpanded"\r\n [ariaHasPopup]="fieldsetData.ariaHasPopup"\r\n [tabindex]="fieldsetData.tabindex"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && hasLegendComponent()"\r\n [legendRef]="legendTemplate"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null">\r\n <ng-template #legendTemplate>\r\n <ng-content select="desy-legend"></ng-content>\r\n </ng-template>\r\n </desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && legendRef"\r\n [legendRef]="legendRef"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && !legendRef && legendData"\r\n [legendData]="{text: legendData.text, html: legendData.html, classes: legendData.classes, isPageHeading: legendData.isPageHeading}"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n <desy-fieldset *ngIf="!fieldsetData && !hasLegendComponent() && !legendRef && !legendData && legendText"\r\n [legendText]="legendText"\r\n [caller]="innerHtml"\r\n [errorId]="getErrorId()"\r\n [describedBy]="[ getHintId(), getErrorId()] | makeHtmlList:null"\r\n role="group"></desy-fieldset>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="!hasFieldset()">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ng-container>\r\n</div>\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return he})),multi:!0}]}]}],he.ctorParameters=function(){return[{type:r.ControlContainer,decorators:[{type:t.Optional}]}]},he.propDecorators={ngModelGroup:[{type:t.Input}],items:[{type:t.Input}],itemsChange:[{type:t.Output}],namePrefix:[{type:t.Input}],classes:[{type:t.Input}],formGroupClasses:[{type:t.Input}],errorMessage:[{type:t.Input}],id:[{type:t.Input}],fieldsetComponent:[{type:t.ContentChildren,args:[G]}],legendComponent:[{type:t.ContentChildren,args:[_]}],dateInputItemComponents:[{type:t.ContentChildren,args:[pe]}],fieldsetData:[{type:t.Input}],legendRef:[{type:t.Input}],legendData:[{type:t.Input}],legendText:[{type:t.Input}],innerHtml:[{type:t.ViewChild,args:["innerHtml",{static:!0}]}]},m([ee("onExternalChange")],he.prototype,"items",void 0),m([ee("onExternalChange")],he.prototype,"namePrefix",void 0),m([P({onSetCallbackName:"overrideFieldsetParams"})],he.prototype,"fieldsetComponent",void 0),m([P()],he.prototype,"legendComponent",void 0);var be=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.clickEvent=new t.EventEmitter,r.value="",r}return u(r,e),r.prototype.ngOnChanges=function(e){this.checkRequiredParams()},r.prototype.checkRequiredParams=function(){if(!this.id)throw Error("id is required");if(!this.hasLabel())throw Error("label is required")},r.prototype.ngAfterViewInit=function(){if(this.button&&this.button.length>1)throw Error("only 1 button in content is allowed")},r.prototype.onClick=function(e){this.disabled||this.clickEvent.emit(e)},r.prototype.hasButton=function(){return this.button&&this.button.length>0},r}(U);be.decorators=[{type:t.Component,args:[{selector:"desy-search-bar",template:'\x3c!-- searchbar --\x3e\r\n<div class="relative" [ngClass]="{\'flex flex-wrap items-end\': hasButton()}">\r\n <ng-container *ngTemplateOutlet="labelRef"></ng-container>\r\n <desy-label *ngIf="!labelRef && labelData"\r\n [text]="labelData.text"\r\n [html]="labelData.html"\r\n classes="sr-only"\r\n [isPageHeading]="labelData.isPageHeading"\r\n [for]="id"\r\n [role]="labelData.role"\r\n [ariaLabel]="labelData.ariaLabel"\r\n [ariaDescribedBy]="labelData.ariaDescribedBy"\r\n [ariaLabelledBy]="labelData.ariaLabelledBy"\r\n [ariaHidden]="labelData.ariaHidden"\r\n [ariaDisabled]="labelData.ariaDisabled"\r\n [ariaControls]="labelData.ariaControls"\r\n [ariaCurrent]="labelData.ariaCurrent"\r\n [ariaLive]="labelData.ariaLive"\r\n [ariaExpanded]="labelData.ariaExpanded"\r\n [ariaErrorMessage]="labelData.ariaErrorMessage"\r\n [ariaHasPopup]="labelData.ariaHasPopup"\r\n [tabindex]="labelData.tabindex"></desy-label>\r\n <desy-label *ngIf="!labelRef && !labelData && labelText" [text]="labelText" classes="sr-only" [for]="id"></desy-label>\r\n <input type="search"\r\n [class]="[\'c-input block mt-sm pr-12 border-black rounded font-semibold placeholder-neutral-dark focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base\', classes] | makeHtmlList"\r\n [ngClass]="{\'border-alert-base ring-2 ring-alert-base\': hasErrorsMessage(),\'w-full\': !hasButton()}"\r\n [value]="value" (input)="onInput($event.target.value)"\r\n [attr.id]="id ? id : null"\r\n [attr.name]="id ? id : null"\r\n [attr.aria-describedby]="[describedBy, getErrorId()] | makeHtmlList:null"\r\n [attr.aria-errormessage]="hasErrorsMessage() ? getErrorId() : null"\r\n [attr.aria-invalid]="hasErrorsMessage() ? true : null"\r\n [attr.disabled]="disabled ? true : null"\r\n [attr.placeholder]="placeholder ? placeholder : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngIf="hasButton(); else defaultButton">\r\n <ng-content select="desy-button"></ng-content>\r\n </ng-container>\r\n <ng-template #defaultButton>\r\n <button type="submit" [attr.disabled]="disabled ? \'disabled\' : null" [attr.aria-disabled]="disabled ? \'true\' : null"\r\n (click)="onClick($event)"\r\n [class]="[\'absolute top-0 right-0 m-sm p-0.5 text-primary-base hover:text-primary-dark focus:bg-warning-base focus:outline-none focus:shadow-outline-focus\', buttonClasses] | makeHtmlList">\r\n <span class="sr-only">Buscar</span>\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="1.375em" height="1.375em" aria-hidden="true"><path d="M23.498 23.487a1.713 1.713 0 000-2.421l-4.572-4.575a.43.43 0 01-.062-.539 10.283 10.283 0 10-2.911 2.911.43.43 0 01.539.055l4.574 4.574a1.712 1.712 0 002.433-.005zM3.451 10.289a6.85 6.85 0 116.85 6.85 6.85 6.85 0 01-6.85-6.85z" fill="currentColor"/></svg>\r\n </button>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet="errorMessageRef"></ng-container>\r\n <desy-error-message *ngIf="!errorMessageRef && errorMessageData"\r\n [id]="getErrorId()"\r\n [text]="errorMessageData.text"\r\n [html]="errorMessageData.html"\r\n [classes]="errorMessageData.classes"\r\n [visuallyHiddenText]="errorMessageData.visuallyHiddenText"\r\n [role]="errorMessageData.role"\r\n [ariaLabel]="errorMessageData.ariaLabel"\r\n [ariaDescribedBy]="errorMessageData.ariaDescribedBy"\r\n [ariaLabelledBy]="errorMessageData.ariaLabelledBy"\r\n [ariaHidden]="errorMessageData.ariaHidden"\r\n [ariaDisabled]="errorMessageData.ariaDisabled"\r\n [ariaControls]="errorMessageData.ariaControls"\r\n [ariaCurrent]="errorMessageData.ariaCurrent"\r\n [ariaLive]="errorMessageData.ariaLive"\r\n [ariaExpanded]="errorMessageData.ariaExpanded"\r\n [ariaErrorMessage]="errorMessageData.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessageData.ariaHasPopup"\r\n [tabindex]="errorMessageData.tabindex"></desy-error-message>\r\n <desy-error-message *ngIf="!errorMessageRef && !errorMessageData && errorMessageText"\r\n [text]="errorMessageText" [id]="getErrorId()"></desy-error-message>\r\n</div>\r\n\x3c!-- /searchbar --\x3e\r\n',providers:[{provide:r.NG_VALUE_ACCESSOR,useExisting:t.forwardRef((function(){return be})),multi:!0}]}]}],be.propDecorators={button:[{type:t.ContentChildren,args:[L]}],describedBy:[{type:t.Input}],classes:[{type:t.Input}],buttonClasses:[{type:t.Input}],placeholder:[{type:t.Input}],clickEvent:[{type:t.Output}]};var ye=function(){function e(e){this.templateRef=e}return e.prototype.ngOnChanges=function(e){var t,r;if(this.item)this.item.conditionalHtml=this.templateRef;else{if(!this.value||!this.items)throw Error("item or value + items are required");try{for(var a=b(this.items),n=a.next();!n.done;n=a.next()){var i=n.value;i.value===this.value&&(i.conditionalHtml=this.templateRef)}}catch(e){t={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}}},e}();ye.decorators=[{type:t.Directive,args:[{selector:"[desyCondition]"}]}],ye.ctorParameters=function(){return[{type:t.TemplateRef}]},ye.propDecorators={item:[{type:t.Input}],value:[{type:t.Input}],items:[{type:t.Input}]};var fe=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.clickEvent=new t.EventEmitter,r}return u(r,e),r}(v);fe.decorators=[{type:t.Component,args:[{selector:"desy-modal-button-primary",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],fe.propDecorators={classes:[{type:t.Input}],clickEvent:[{type:t.Output}]};var Ce=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.clickEvent=new t.EventEmitter,r}return u(r,e),r}(v);Ce.decorators=[{type:t.Component,args:[{selector:"desy-modal-button-secondary",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],Ce.propDecorators={classes:[{type:t.Input}],clickEvent:[{type:t.Output}]};var ve=function(e){function r(r){var a=e.call(this)||this;return a.changeDetectorRef=r,a.closeModal=new t.EventEmitter,a.clickButton=new t.EventEmitter,a.hasIconContent=!0,a.descriptionIsHtml=!0,a.descriptionIsEmpty=!1,a}return u(r,e),r.prototype.closeDialog=function(){this.closeModal.emit()},r.prototype.getType=function(){var e;return this.iconComponent?e=this.iconComponent.type?this.iconComponent.type.toLocaleLowerCase():null:this.icon.type&&(e=this.icon.type?this.icon.type.toLocaleLowerCase():null),e},r.prototype.ngOnChanges=function(e){if(!this.id)throw new Error("id are required")},r.prototype.handleRequiredEmpty=function(e){throw new Error(e+" is required")},r.prototype.checkDescriptionContent=function(e){for(var t=e.nativeElement.childNodes,r=!1,a=!1,n=0;n<t.length&&!r;n++){var i=t.item(n);i.nodeType===Node.TEXT_NODE&&i.textContent.length>0?a=!0:i.nodeType!==Node.ELEMENT_NODE&&i.nodeType!==Node.CDATA_SECTION_NODE||(r=!0,a=!0)}var o=this.descriptionIsEmpty;this.descriptionIsEmpty=!a,this.descriptionIsHtml=r,this.changeDetectorRef.detectChanges(),a||o||this.handleRequiredEmpty("description")},r.prototype.clickButtonEmit=function(e,t){this.clickButton.emit(t),(e instanceof fe||e instanceof Ce)&&e.clickEvent.emit(t)},r.prototype.handleIconContentEmpty=function(e){this.hasIconContent=!e,this.changeDetectorRef.detectChanges()},r.prototype.getTitleClasses=function(){var e="c-h2 px-base text-center focus:outline-none focus:underline";return this.titleComponent&&this.titleComponent.classes?e=this.titleComponent.classes:this.title&&this.title.classes&&(e=this.title.classes),e},r.prototype.getDescriptionClasses=function(){var e="c-paragraph-base my-base text-center";return this.descriptionComponent&&this.descriptionComponent.classes?e=this.descriptionComponent.classes:this.description&&this.description.classes&&(e=this.description.classes),e},r.prototype.getPrimaryItems=function(){return this.primaryButtonComponents&&this.primaryButtonComponents.length>0?this.primaryButtonComponents.toArray():this.itemsPrimary},r.prototype.getSecondaryItems=function(){return this.secondaryButtonComponents&&this.secondaryButtonComponents.length>0?this.secondaryButtonComponents.toArray():this.itemsSecondary},r}(C);ve.decorators=[{type:t.Component,args:[{selector:"desy-modal",template:'<div [class]="[ \'relative max-w-lg mx-auto p-base lg:p-lg border border-neutral-base rounded bg-white\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div *ngIf="iconComponent || icon" class="flex justify-center p-base"\r\n (desyContentEmpty)="handleIconContentEmpty(true)"\r\n (desyContentNotEmpty)="handleIconContentEmpty(false)">\r\n <ng-container *desyCustomInnerContent="{ component: iconComponent, html: icon ? icon.html : null }"></ng-container>\r\n <ng-container *ngIf="!hasIconContent">\r\n <ng-container [ngSwitch]="getType()">\r\n <svg *ngSwitchCase="\'discard\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-alert-light" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M4.375 70a65.625 65.625 0 10131.25 0 65.625 65.625 0 10-131.25 0zM23.596 116.404l92.808-92.808" stroke-width="8.749995"/></g></svg>\r\n <svg *ngSwitchCase="\'delete\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-alert-light" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M100.625 122.5h-61.25a8.75 8.75 0 01-8.75-8.75V35h78.75v78.75a8.75 8.75 0 01-8.75 8.75zM56.875 96.25v-35M83.125 96.25v-35M13.125 35h113.75M83.125 17.5h-26.25a8.75 8.75 0 00-8.75 8.75V35h43.75v-8.75a8.75 8.75 0 00-8.75-8.75z" stroke-width="8.749995"/></g></svg>\r\n <svg *ngSwitchCase="\'edit\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-primary-light" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M73.89 82.46l-21.652 3.098 3.091-21.66 55.685-55.685a13.125 13.125 0 0118.562 18.562z" stroke-width="8.749995"/><path d="M111.545 83.125v43.75a8.75 8.75 0 01-8.75 8.75h-87.5a8.75 8.75 0 01-8.75-8.75v-87.5a8.75 8.75 0 018.75-8.75h43.75" stroke-width="8.749995"/></g></svg>\r\n <svg *ngSwitchCase="\'changes\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-primary-light" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M107.112 40.833a48.125 48.125 0 00-85.237 30.608v13.142M35 104.463a48.125 48.125 0 0083.125-33.022v-8.75" stroke-width="8.749995"/><path d="M4.375 67.066l17.5 17.5 17.5-17.5M135.625 80.19l-17.5-17.5-17.5 17.5" stroke-width="8.749995"/></g></svg>\r\n <svg *ngSwitchCase="\'publish\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="block w-16 h-16 text-primary-light" focusable="false" aria-hidden="true" role="presentation"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5"><path d="M16.094 91.17a9.707 9.707 0 01-5.145-17.938L118.767 5.833a9.7 9.7 0 0114.676 10.034l-21 111.842a9.707 9.707 0 01-17.301 4.031L64.75 91.17z" stroke-width="8.749995"/><path d="M64.75 91.17H50.167v30.163a9.7 9.7 0 0015.166 8.015l18.539-12.635zM64.744 91.17l64.633-85.11" stroke-width="8.749995"/></g></svg>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n <ng-container [ngSwitch]="headingLevel > 0 && headingLevel < 6 ? headingLevel : 2">\r\n <h1 *ngSwitchCase="1" [attr.id]="\'label-\' + id" [class]="getTitleClasses()" tabindex="-1"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: this.titleComponent,\r\n html: this.title ? this.title.html : null,\r\n text: this.title ? this.title.text : null\r\n }"></ng-container>\r\n </h1>\r\n <h2 *ngSwitchCase="2" [attr.id]="\'label-\' + id" [class]="getTitleClasses()" tabindex="-1"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: this.titleComponent,\r\n html: this.title ? this.title.html : null,\r\n text: this.title ? this.title.text : null\r\n }"></ng-container>\r\n </h2>\r\n <h3 *ngSwitchCase="3" [attr.id]="\'label-\' + id" [class]="getTitleClasses()" tabindex="-1"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: this.titleComponent,\r\n html: this.title ? this.title.html : null,\r\n text: this.title ? this.title.text : null\r\n }"></ng-container>\r\n </h3>\r\n <h4 *ngSwitchCase="4" [attr.id]="\'label-\' + id" [class]="getTitleClasses()" tabindex="-1"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: this.titleComponent,\r\n html: this.title ? this.title.html : null,\r\n text: this.title ? this.title.text : null\r\n }"></ng-container>\r\n </h4>\r\n <h5 *ngSwitchCase="5" [attr.id]="\'label-\' + id" [class]="getTitleClasses()" tabindex="-1"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: this.titleComponent,\r\n html: this.title ? this.title.html : null,\r\n text: this.title ? this.title.text : null\r\n }"></ng-container>\r\n </h5>\r\n </ng-container>\r\n\r\n <div *ngIf="descriptionIsHtml" [class]="getDescriptionClasses()"\r\n (desyContentChange)="checkDescriptionContent($event)" [observeProperties]="{ attributes: false, childList: true, characterData: true, subtree: true }">\r\n <ng-container *desyCustomInnerContent="{\r\n component: descriptionComponent,\r\n html: description ? description.html : null,\r\n text: description ? description.text : null\r\n }"></ng-container>\r\n </div>\r\n <p *ngIf="!descriptionIsHtml" [class]="getDescriptionClasses()"\r\n (desyContentChange)="checkDescriptionContent($event)" [observeProperties]="{ attributes: false, childList: true, characterData: true, subtree: true }">\r\n <ng-container *desyCustomInnerContent="{\r\n component: descriptionComponent,\r\n html: description ? description.html : null,\r\n text: description ? description.text : null\r\n }"></ng-container>\r\n </p>\r\n\r\n <div *ngIf="contentComponent || caller" class="p-base">\r\n <ng-container *desyCustomInnerContent="{ component: contentComponent, template: caller }"></ng-container>\r\n </div>\r\n\r\n <div class="flex flex-wrap gap-sm w-full" [ngClass]="(itemsPrimary || (primaryButtonComponents && primaryButtonComponents.length > 0)) && (itemsSecondary || (secondaryButtonComponents && secondaryButtonComponents.length > 0)) ? \'justify-between\' : \'justify-center\'">\r\n <ng-template #buttons let-items="items">\r\n <ng-container *ngIf="items">\r\n <div class="mt-sm" *ngIf="items.length === 1">\r\n <desy-button (clickEvent)="clickButtonEmit(items[0], $event)" [classes]="items[0].classes">\r\n <ng-container *desyCustomInnerContent="{ component: items[0], text: items[0].text }"></ng-container>\r\n </desy-button>\r\n </div>\r\n\r\n \x3c!-- FIXME De momento se mantiene el nbsp por no tener clases diferentes a desy-html.\r\n Eliminar al adaptar a una versión de desy-html que lo contemple --\x3e\r\n <ul class="flex flex-wrap gap-sm" *ngIf="items.length > 1">\r\n <ng-container *ngFor="let item of items">\r\n <li>\r\n <desy-button (clickEvent)="clickButtonEmit(item, $event)" [classes]="item.classes">\r\n <ng-container *desyCustomInnerContent="{ component: item, text: item.text }"></ng-container>\r\n </desy-button>\r\n </li> \r\n </ng-container>\r\n </ul>\r\n </ng-container>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet="buttons; context: { items: getPrimaryItems() }"></ng-container>\r\n <ng-container *ngTemplateOutlet="buttons; context: { items: getSecondaryItems() }"></ng-container>\r\n </div>\r\n\r\n <ng-container *ngIf="isDismissible">\r\n <div class="absolute top-0 right-0 p-sm lg:p-base">\r\n <button (click)="closeDialog()" class="p-sm focus:bg-warning-base focus:border-warning-base focus:shadow-outline-black focus:text-black focus:outline-none" aria-label="X: Cerrar la ventana emergente">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4" aria-hidden="true" role="presentation"><path d="M85.91 71.77a2.5 2.5 0 010-3.54l46.16-46.16a10 10 0 10-14.14-14.14L71.77 54.09a2.5 2.5 0 01-3.54 0L22.07 7.93A10 10 0 007.93 22.07l46.16 46.16a2.5 2.5 0 010 3.54L7.93 117.93a10 10 0 0014.14 14.14l46.16-46.16a2.5 2.5 0 013.54 0l46.16 46.16a10 10 0 0014.14-14.14z" fill="currentColor"/></svg>\r\n </button>\r\n </div>\r\n </ng-container>\r\n</div>\r\n'}]}],ve.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},ve.propDecorators={title:[{type:t.Input}],description:[{type:t.Input}],itemsPrimary:[{type:t.Input}],itemsSecondary:[{type:t.Input}],icon:[{type:t.Input}],headingLevel:[{type:t.Input}],isDismissible:[{type:t.Input}],id:[{type:t.Input}],classes:[{type:t.Input}],caller:[{type:t.Input}],closeModal:[{type:t.Output}],clickButton:[{type:t.Output}],titleComponent:[{type:t.ContentChildren,args:[N]}],descriptionComponent:[{type:t.ContentChildren,args:[A]}],contentComponent:[{type:t.ContentChildren,args:[O]}],primaryButtonComponents:[{type:t.ContentChildren,args:[fe]}],secondaryButtonComponents:[{type:t.ContentChildren,args:[Ce]}],iconComponent:[{type:t.ContentChildren,args:[F]}]},m([P()],ve.prototype,"titleComponent",void 0),m([P()],ve.prototype,"descriptionComponent",void 0),m([P()],ve.prototype,"contentComponent",void 0),m([P()],ve.prototype,"iconComponent",void 0);var xe=0,Ie=function(e){function r(r,a,n){var i=e.call(this)||this;return i.cdRef=r,i.focusTrapFactory=a,i.factoryResolver=n,i.activeChange=new t.EventEmitter,i.lastActiveState=!1,i.clickOutsideEnabled=!1,i}return u(r,e),r.prototype.ngOnChanges=function(){this.focusTrapWrapper&&this.handleActiveState()},r.prototype.ngAfterViewInit=function(){if(!this.id)throw Error("id is required");if(!this.caller&&!this.callerType)throw Error("caller is required");if(this.callerType){var e=this.factoryResolver.resolveComponentFactory(this.callerType),t=this.container.createComponent(e);this.onCallerCreationCallback&&this.onCallerCreationCallback(this,t)}this.focusTrapWrapper.nativeElement.children&&1===this.focusTrapWrapper.nativeElement.children.length&&(this.childElem=this.focusTrapWrapper.nativeElement.children[0]),this.handleActiveState(),this.cdRef.detectChanges()},r.prototype.ngOnDestroy=function(){this.active=!1,this.handleActiveState()},r.prototype.dismiss=function(){this.activeChange.emit(!1)},r.prototype.onKeyUp=function(e){e.key===r.KEY_CODE_ESC&&(e.stopPropagation(),this.dismiss())},r.prototype.handleActiveState=function(){var e=this;if(this.focusTrap||(this.focusTrap=this.focusTrapFactory.create(this.focusTrapWrapper.nativeElement)),this.active!==this.lastActiveState){var t;if(this.lastActiveState=this.active,this.active&&0===xe?document.body.classList.add(r.DIALOG_OPEN_CLASS):this.active||1!==xe||(document.body.classList.remove(r.DIALOG_OPEN_CLASS),0===document.body.classList.length&&document.body.removeAttribute("class")),this.active)setTimeout((function(){return e.focusTrap.focusInitialElement()})),xe++;else this.focusTrap.destroy(),(t=this.focusOnClose?"string"==typeof this.focusOnClose?document.getElementById(this.focusOnClose):this.focusOnClose:H.getFirstFocusableElement())&&setTimeout((function(){return t.focus()})),xe--;setTimeout((function(){return e.clickOutsideEnabled=e.active}))}},r.prototype.handleClickOutside=function(){this.dismissOnBackdrop&&this.dismiss()},r}(C);Ie.DIALOG_OPEN_CLASS="has-dialog",Ie.KEY_CODE_ESC="Escape",Ie.decorators=[{type:t.Component,args:[{selector:"desy-dialog",template:'<div class="dialog-backdrop" [ngClass]="{\'active\': active}"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.aria-modal]="ariaModal ? ariaModal : null">\r\n <div #focusTrapWrapper [id]="id" [class]="classes"\r\n [desyClickOutside]="clickOutsideEnabled" (clickOutside)="handleClickOutside()" [desyClickOutsideElem]="childElem">\r\n <ng-template #container></ng-template>\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n</div>\r\n'}]}],Ie.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:n.ConfigurableFocusTrapFactory},{type:t.ComponentFactoryResolver}]},Ie.propDecorators={container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef}]}],focusTrapWrapper:[{type:t.ViewChild,args:["focusTrapWrapper"]}],active:[{type:t.Input}],activeChange:[{type:t.Output}],id:[{type:t.Input}],caller:[{type:t.Input}],classes:[{type:t.Input}],focusOnClose:[{type:t.Input}],dismissOnBackdrop:[{type:t.Input}],onKeyUp:[{type:t.HostListener,args:["document:keyup",["$event"]]}]};var De=function(){function e(e,t,r){this.factoryResolver=e,this.defaultInjector=t,this.appRef=r}return e.prototype.openDialog=function(e,r){var a=this;return new Promise((function(n,i){e||i("caller is required"),r||i("dialogOptions is required");var o=a.createDialog(r),l={dialog:o};e instanceof t.Type?(o.instance.callerType=e,o.instance.onCallerCreationCallback=function(e,t){l.component=t,n(l)}):e instanceof t.TemplateRef?(o.instance.caller=e,n(l)):(o.instance.callerType=ve,o.instance.onCallerCreationCallback=function(t,r){a.initModal(t,r,e),l.component=r,n(l)})}))},e.prototype.closeDialog=function(e){if(!e)throw Error("dialog is required");e instanceof t.ComponentRef?e.instance.dismiss():e.dismiss()},e.prototype.onCloseDialog=function(e){return new Promise((function(r){var a=(e instanceof t.ComponentRef?e.instance:e).activeChange.subscribe((function(){r(),a.unsubscribe()}))}))},e.prototype.createDialog=function(e){var t,r=this.factoryResolver.resolveComponentFactory(Ie);if(e.rootViewContainer)t=e.rootViewContainer.createComponent(r);else{t=r.create(this.defaultInjector),this.appRef.attachView(t.hostView);var a=t.hostView.rootNodes[0];document.body.appendChild(a)}return t.instance.active=!0,e&&Object.assign(t.instance,e),this.onCloseDialog(t).then((function(){return t.destroy()})),t},e.prototype.initModal=function(e,t,r){var a=this;if(t.instance.title=r.title,t.instance.description=r.description,t.instance.itemsPrimary=r.itemsPrimary,t.instance.itemsSecondary=r.itemsSecondary,t.instance.icon=r.icon,t.instance.isDismissible=r.isDismissible,t.instance.id=r.id,t.instance.classes=r.classes,t.instance.caller=r.caller,r.isDismissible)var n=t.instance.closeModal.subscribe((function(){a.closeDialog(e),n.unsubscribe()}))},e}();De.ɵprov=p.ɵɵdefineInjectable({factory:function(){return new De(p.ɵɵinject(p.ComponentFactoryResolver),p.ɵɵinject(p.INJECTOR),p.ɵɵinject(p.ApplicationRef))},token:De,providedIn:"root"}),De.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],De.ctorParameters=function(){return[{type:t.ComponentFactoryResolver},{type:t.Injector},{type:t.ApplicationRef}]};var Ee=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Ee.decorators=[{type:t.Component,args:[{selector:"desy-breadcrumbs-item",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n"}]}],Ee.propDecorators={id:[{type:t.Input}],routerLink:[{type:t.Input}]};var Le=function(e){function t(t){var r=e.call(this)||this;return r.location=t,r}return u(t,e),t.prototype.getLength=function(){var e=this.items?this.items.length:this.itemComponentList.length;return this.hasBackButton&&(e+=1),e},t.prototype.goBack=function(){this.location.back()},t.prototype.getItemList=function(){var e=this.itemComponentList&&this.itemComponentList.length>0?this.itemComponentList.toArray():this.items;if(!e||0===e.length)throw new Error("items are required");return e},t.prototype.handleEmptyItem=function(e){throw new Error("item content, html or text are required at position "+e)},t}(C);Le.decorators=[{type:t.Component,args:[{selector:"desy-breadcrumbs",template:'<nav [class]="(classes ? \'c-breadcrumbs \' + classes : \'c-breadcrumbs\') + (collapseOnMobile==true ? \' \' + \'c-breadcrumbs--collapse-on-mobile\' : \'\')"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : \'Estás en: \'"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <ol [class]="\'lg:grid lg:grid-cols-max-content-\'+getLength()+\' w-full items-baseline text-sm\'">\r\n <li *ngIf="hasBackButton" class="c-breadcrumbs__backbutton flex items-baseline font-bold text-primary-base">\r\n <a (click)="goBack()" class="px-sm border-r border-neutral-base focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black cursor-pointer">\r\n <span class="sr-only">Volver a la página anterior</span><span aria-hidden="true" title="Volver a la página anterior">←</span>\r\n </a>\r\n </li>\r\n <ng-container *ngFor="let item of getItemList(); last as isLast; index as index">\r\n <li *ngIf="!isLast" class="flex items-baseline mb-sm py-xs text-neutral-dark" [ngClass]="{\'hover:text-black\' : item.routerLink}">\r\n <a *ngIf="item.routerLink" class="underline focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black truncate"\r\n (desyContentEmpty)="handleEmptyItem(index)"\r\n [routerLink]="item.routerLink"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </a>\r\n <span *ngIf="!item.routerLink" class="no-underline truncate"\r\n (desyContentEmpty)="handleEmptyItem(index)"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </span>\r\n </li>\r\n <li *ngIf="isLast" class="flex items-baseline mb-sm py-xs text-neutral-dark flex-1 font-semibold" [ngClass]="{\'hover:text-black\' : item.routerLink}">\r\n <a *ngIf="item.routerLink" class="underline focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black text-black font-semibold no-underline truncate"\r\n (desyContentEmpty)="handleEmptyItem(index)"\r\n aria-current="page" [routerLink]="item.routerLink"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <strong (desyContentEmpty)="handleEmptyItem(index)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </strong>\r\n </a>\r\n <span *ngIf="!item.routerLink" class="no-underline text-black truncate" aria-current="page"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <strong (desyContentEmpty)="handleEmptyItem(index)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </strong>\r\n </span>\r\n </li>\r\n </ng-container>\r\n </ol>\r\n</nav>\r\n'}]}],Le.ctorParameters=function(){return[{type:i.Location}]},Le.propDecorators={items:[{type:t.Input}],classes:[{type:t.Input}],id:[{type:t.Input}],collapseOnMobile:[{type:t.Input}],hasBackButton:[{type:t.Input}],itemComponentList:[{type:t.ContentChildren,args:[Ee]}]};var we=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);we.decorators=[{type:t.Component,args:[{selector:"desy-header-offcanvas-close-button",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}];var He=function(e){function t(){var t=e.apply(this,f(arguments))||this;return t.openOffcanvas=function(){return g(t,void 0,void 0,(function(){return h(this,(function(e){return[2]}))}))},t}return u(t,e),t.prototype.handleClick=function(e){return g(this,void 0,void 0,(function(){return h(this,(function(t){switch(t.label){case 0:return e.stopPropagation(),[4,this.openOffcanvas()];case 1:return t.sent(),[2]}}))}))},t.prototype.handleEmptyContent=function(e){throw new Error(e+" content is required")},t}(v);He.decorators=[{type:t.Component,args:[{selector:"desy-header-offcanvas-button",template:'<ng-template #contentTemplate>\r\n <button id="header-offcanvas-button" tabindex="0" aria-haspopup="true"\r\n class="inline-flex items-center px-3 py-4 text-sm text-white focus:outline-none focus:shadow-outline-warning"\r\n (click)="handleClick($event)">\r\n <span id="header-offcanvas-button-text" class="inline-block align-middle text-right"\r\n (desyContentEmpty)="handleEmptyContent(\'Header-offcanvas button\')">\r\n <ng-content></ng-content>\r\n </span>\r\n <svg role="img" aria-label="Cerrado" class="inline-block align-middle" viewBox="0 0 96 96" fill="currentColor" width="1.5em" height="1.5em"><g><path d="M46.71 58.037a1.823 1.823 0 002.581 0L62.048 45.28a1.823 1.823 0 00-1.29-3.113H35.243a1.823 1.823 0 00-1.291 3.113z"/></g></svg>\r\n </button>\r\n</ng-template>\r\n\r\n'}]}];var ke=function(){function e(e){this.dialogService=e,this.hostClass="-mr-2 flex lg:hidden"}return e.prototype.ngOnDestroy=function(){this.isOpen()&&this.close()},e.prototype.open=function(){return g(this,void 0,void 0,(function(){var t,r=this;return h(this,(function(a){switch(a.label){case 0:return this.isOpen()?[3,2]:(t=this,[4,this.dialogService.openDialog(this.offcanvasContent,e.dialogOptions)]);case 1:t.dialog=a.sent().dialog,this.dialogService.onCloseDialog(this.dialog).then((function(){return r.dialog=null})),a.label=2;case 2:return[2]}}))}))},e.prototype.close=function(){this.isOpen()&&(this.dialogService.closeDialog(this.dialog),this.dialog=null)},e.prototype.isOpen=function(){return!!this.dialog},e.prototype.setHostClass=function(){this.hostClass=this.classes?this.classes:"-mr-2 flex lg:hidden"},e.prototype.bindButton=function(e){e.openOffcanvas=this.open.bind(this)},e.prototype.handleEmptyContent=function(e){throw new Error(e+" content is required")},e}();ke.dialogOptions={id:"header-offcanvas-dialog",focusOnClose:"header-offcanvas",ariaModal:"true",ariaLabelledBy:"header-offcanvas-button-text"},ke.decorators=[{type:t.Component,args:[{selector:"desy-header-offcanvas",template:'\r\n<ng-template #offcanvasContent>\r\n <div class="origin-top-left left-0 fixed inset-0 h-screen">\r\n <div class="h-full overflow-auto relative w-offcanvas h-screen ml-offcanvas-negative bg-white z-10"\r\n [desyClickOutside]="isOpen()" (clickOutside)="close()">\r\n <div class="text-right p-sm">\r\n <button (click)="close()" id="header-offcanvas-button-close" class="c-button c-button--sm c-button--transparent m-sm"\r\n (desyContentEmpty)="handleEmptyContent(\'Header-offcanvas close button\')">\r\n <ng-container *desyCustomInnerContent="{ component: closeButton }"></ng-container> <svg #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="14" height="14" class="self-center ml-2"><path fill="currentColor" d="M8.591 7.177a.25.25 0 010-.354l4.616-4.616A1 1 0 1011.793.793L7.177 5.409a.25.25 0 01-.354 0L2.207.793A1 1 0 00.793 2.207l4.616 4.616a.25.25 0 010 .354L.793 11.793a1 1 0 001.414 1.414l4.616-4.616a.25.25 0 01.354 0l4.616 4.616a1 1 0 001.414-1.414z"/></svg>\r\n </button>\r\n </div>\r\n <ng-container *desyCustomInnerContent="{ component: content }"></ng-container>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-container *desyCustomInnerContent="{ component: button }"></ng-container>\r\n'}]}],ke.ctorParameters=function(){return[{type:De}]},ke.propDecorators={classes:[{type:t.Input}],hostClass:[{type:t.HostBinding,args:["class"]}],offcanvasContent:[{type:t.ViewChild,args:["offcanvasContent"]}],button:[{type:t.ContentChildren,args:[He]}],content:[{type:t.ContentChildren,args:[O]}],closeButton:[{type:t.ContentChildren,args:[we]}]},m([ee("setHostClass")],ke.prototype,"classes",void 0),m([P({onSetCallbackName:"bindButton"})],ke.prototype,"button",void 0),m([P()],ke.prototype,"content",void 0),m([P()],ke.prototype,"closeButton",void 0);var Me=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Me.decorators=[{type:t.Component,args:[{selector:"desy-header-navigation-item",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],Me.propDecorators={href:[{type:t.Input}],routerLink:[{type:t.Input}],fragment:[{type:t.Input}],id:[{type:t.Input}],active:[{type:t.Input}],disabled:[{type:t.Input}]};var Be=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.ngAfterContentInit=function(){var e=this.getItems();if(!e||0===e.length)throw new Error("Header-navigation items are required")},t.prototype.getItemId=function(e,t){var r=this.idPrefix?this.idPrefix:"header-nav-item",a=t>0?"-"+t:"";return e.id?e.id:r+a},t.prototype.getItems=function(){return this.itemComponents&&this.itemComponents.length>0?this.itemComponents.toArray():this.items},t}(C);Be.decorators=[{type:t.Component,args:[{selector:"desy-header-navigation",template:'<nav [class]="classes ? classes : \'hidden lg:block\'"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ul class="ml-sm flex flex-wrap items-baseline uppercase">\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n <li *ngIf="item">\r\n\r\n \x3c!-- Active + routerlink --\x3e\r\n <a *ngIf="item.active && (item.routerLink || !item.href)" [id]="getItemId(item, i)" [routerLink]="item.routerLink" [fragment]="item.fragment"\r\n class="max-w-40 lg:max-w-xs px-3 py-4 font-bold text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base" aria-current="page">\r\n <strong>\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </strong>\r\n </a>\r\n\r\n \x3c!-- Active + href --\x3e\r\n <a *ngIf="item.active && !item.routerLink && item.href" [id]="getItemId(item, i)" [href]="item.href"\r\n class="max-w-40 lg:max-w-xs px-3 py-4 font-bold text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base" aria-current="page">\r\n <strong>\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </strong>\r\n </a>\r\n\r\n \x3c!-- Not active + routerlink --\x3e\r\n <a *ngIf="!item.active && (item.routerLink || !item.href)" [id]="getItemId(item, i)" [routerLink]="item.routerLink" [fragment]="item.fragment"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': item.disabled}"\r\n class="max-w-40 lg:max-w-xs px-3 py-4 text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base"\r\n [attr.disabled]="item.disabled ? item.disabled : null" [attr.aria-disabled]="item.disabled ? item.disabled : null" [attr.tabindex]="item.disabled ? -1 : null">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </a>\r\n\r\n \x3c!-- Not active + href --\x3e\r\n <a *ngIf="!item.active && !item.routerLink && item.href" [id]="getItemId(item, i)" [href]="item.href"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': item.disabled}"\r\n class="max-w-40 lg:max-w-xs px-3 py-4 text-sm text-white truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-warning-base"\r\n [attr.disabled]="item.disabled ? item.disabled : null" [attr.aria-disabled]="item.disabled ? item.disabled : null" [attr.tabindex]="item.disabled ? -1 : null">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</nav>\r\n'}]}],Be.propDecorators={idPrefix:[{type:t.Input}],classes:[{type:t.Input}],items:[{type:t.Input}],itemComponents:[{type:t.ContentChildren,args:[Me]}]};var Te=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.clickEvent=new t.EventEmitter,r.activeChange=new t.EventEmitter,r}return u(r,e),r}(v);Te.decorators=[{type:t.Component,args:[{selector:"desy-nav-item",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],Te.propDecorators={id:[{type:t.Input}],active:[{type:t.Input}],classes:[{type:t.Input}],title:[{type:t.Input}],href:[{type:t.Input}],routerLink:[{type:t.Input}],fragment:[{type:t.Input}],target:[{type:t.Input}],disabled:[{type:t.Input}],divider:[{type:t.Input}],clickEvent:[{type:t.Output}],activeChange:[{type:t.Output}]};var Pe=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.hasNav=!0,r.clickEvent=new t.EventEmitter,r}return u(r,e),r.prototype.onClick=function(e,t){var r=[];t.active||r.push(t),this.getItemList().forEach((function(e){e.active&&e!==t&&r.push(e),e.active=!1})),t.active=!0,r.forEach((function(e){e instanceof Te&&e.activeChange.emit(e.active)})),this.clickEvent.emit({item:t,event:e}),t instanceof Te&&t.clickEvent.emit({item:t,event:e})},r.prototype.ngOnChanges=function(e){if(!this.idPrefix)throw new Error("idPrefix is required")},r.prototype.getItemList=function(){var e=this.itemComponentList&&this.itemComponentList.length>0?this.itemComponentList.toArray():this.items;if(!e||0===e.length)throw new Error("items are required");return e.forEach((function(e){if(!e.href&&!e.routerLink)throw new Error("href or routerLink are required")})),e},r.prototype.handleContentEmpty=function(e){throw new Error("item content, html or text are required at position "+e)},r.prototype.getItemId=function(e,t){return e.id?e.id:0===t?this.getIdPrefix():this.getIdPrefix()+"-"+t},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"nav-item"},r}(C);Pe.decorators=[{type:t.Component,args:[{selector:"desy-nav",template:'<ng-template #innerHtml>\r\n <ng-container *ngFor="let item of getItemList(); index as i">\r\n <li>\r\n <span *ngIf="item.active"\r\n [class]="[\'flex items-center px-base py-sm font-semibold\', item.classes] | makeHtmlList"\r\n [attr.id]="getItemId(item, i)"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="hasNav ? \'true\' : \'page\'"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex"\r\n (click)="onClick($event, item)">\r\n <strong>\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </strong>\r\n </span>\r\n <a *ngIf="!item.active && item.href"\r\n [href]="item.href | externalHref" [target]="item.target"\r\n [class]="[\'flex items-center px-base py-sm hover:bg-primary-base hover:text-white focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'pointer-events-none\': item.disabled}"\r\n [attr.aria-disabled]="item.disabled ? \'true\' : null"\r\n [attr.tabindex]="item.disabled ? -1 : item.tabindex"\r\n [attr.id]="getItemId(item, i)"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n (desyContentEmpty)="handleContentEmpty(i)"\r\n (click)="onClick($event, item)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n <svg #desyContentEmptyIgnore *ngIf="item.disabled" viewBox="0 0 140 140" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg" class="inline-block align-middle ml-sm text-neutral-base fill-current" aria-hidden="true" focusable="false" ><path d="M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zM20 70a50 50 0 0174.8-43.4 2.51 2.51 0 011.23 1.84 2.48 2.48 0 01-.71 2.1L30.54 95.32a2.51 2.51 0 01-3.94-.52A49.63 49.63 0 0120 70zm100 0a50 50 0 01-74.8 43.4 2.51 2.51 0 01-1.23-1.84 2.48 2.48 0 01.71-2.1l64.78-64.78a2.51 2.51 0 013.94.52A49.63 49.63 0 01120 70z"/></svg>\r\n </a>\r\n <a *ngIf="!item.active && !item.href"\r\n [routerLink]="item.routerLink" [fragment]="item.fragment"\r\n [class]="[\'flex items-center px-base py-sm hover:bg-primary-base hover:text-white focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'pointer-events-none\': item.disabled}"\r\n [attr.aria-disabled]="item.disabled ? \'true\' : null"\r\n [attr.tabindex]="item.disabled ? -1 : item.tabindex"\r\n [attr.id]="getItemId(item, i)"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n (click)="onClick($event, item)"\r\n (desyContentEmpty)="handleContentEmpty(i)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n <svg #desyContentEmptyIgnore *ngIf="item.disabled" viewBox="0 0 140 140" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg" class="inline-block align-middle ml-sm text-neutral-base fill-current" aria-hidden="true" focusable="false" ><path d="M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zM20 70a50 50 0 0174.8-43.4 2.51 2.51 0 011.23 1.84 2.48 2.48 0 01-.71 2.1L30.54 95.32a2.51 2.51 0 01-3.94-.52A49.63 49.63 0 0120 70zm100 0a50 50 0 01-74.8 43.4 2.51 2.51 0 01-1.23-1.84 2.48 2.48 0 01.71-2.1l64.78-64.78a2.51 2.51 0 013.94.52A49.63 49.63 0 01120 70z"/></svg>\r\n </a>\r\n </li>\r\n <li *ngIf="item.divider" class="my-sm border-b border-neutral-base" aria-hidden="true">\r\n <div class="sr-only">Separador</div>\r\n </li>\r\n </ng-container>\r\n</ng-template>\r\n\r\n\r\n<ul *ngIf="!hasNav; else wrapIntoNav"\r\n [class]="[\'text-sm\', classes] | makeHtmlList"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n</ul>\r\n<ng-template #wrapIntoNav>\r\n <nav [class]="[\'text-sm\', classes] | makeHtmlList"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ul>\r\n <ng-container *ngTemplateOutlet="innerHtml"></ng-container>\r\n </ul>\r\n </nav>\r\n</ng-template>\r\n'}]}],Pe.propDecorators={hasNav:[{type:t.Input}],idPrefix:[{type:t.Input}],items:[{type:t.Input}],classes:[{type:t.Input}],clickEvent:[{type:t.Output}],itemComponentList:[{type:t.ContentChildren,args:[Te]}]};var Re=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.hasSubnavItems=function(){return this.nav&&this.nav.getItemList().length>0},t.prototype.overrideNavParams=function(e){e.hasNav=!0,e.idPrefix="header-subnav-nav-item",e.ariaLabel="Aplicaciones",e.classes="w-max max-w-64"},t.prototype.handleEmptyContent=function(e){throw new Error(e+" content is required")},t}(C);Re.decorators=[{type:t.Component,args:[{selector:"desy-header-subnav",template:'<ng-template #templateNav>\r\n <ng-content select="desy-nav"></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #templateContent>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n<div class="hidden lg:flex items-center" *ngIf="hasSubnavItems(); else noItems">\r\n <div class="ml-3 py-2 relative border-r border-l border-neutral-base">\r\n <h2 id="subnav-title" class="">\r\n <desy-dropdown [hiddenText]="hiddenText"\r\n [classesContainer]="classesContainer"\r\n [classesTooltip]="classesTooltip"\r\n [classes]="classes ? classes : \'c-dropdown--header\'"\r\n [caller]="caller"\r\n\r\n [role]="role"\r\n [ariaLabel]="ariaLabel"\r\n [ariaDescribedBy]="ariaDescribedBy"\r\n [ariaLabelledBy]="ariaLabelledBy"\r\n [ariaHidden]="ariaHidden"\r\n [ariaDisabled]="ariaDisabled"\r\n [ariaControls]="ariaControls"\r\n [ariaCurrent]="ariaCurrent"\r\n [ariaLive]="ariaLive"\r\n [ariaExpanded]="ariaExpanded"\r\n [ariaErrorMessage]="ariaErrorMessage"\r\n [ariaHasPopup]="ariaHasPopup"\r\n [tabindex]="tabindex">\r\n <ng-container *ngTemplateOutlet="templateContent"></ng-container>\r\n </desy-dropdown>\r\n <ng-template #caller>\r\n <ng-container *ngTemplateOutlet="templateNav"></ng-container>\r\n </ng-template>\r\n </h2>\r\n </div>\r\n</div>\r\n<ng-template #noItems>\r\n <p class="hidden lg:inline-block align-middle ml-4 px-3 py-4 border-r border-l border-neutral-base text-sm text-white"\r\n (desyContentEmpty)="handleEmptyContent(\'Header-subnav\')">\r\n <span #desyContentEmptyIgnore class="sr-only">Aplicación actual: </span>\r\n <ng-container *ngTemplateOutlet="templateContent"></ng-container>\r\n </p>\r\n</ng-template>\r\n\r\n\r\n'}]}],Re.propDecorators={hiddenText:[{type:t.Input}],classesContainer:[{type:t.Input}],classesTooltip:[{type:t.Input}],classes:[{type:t.Input}],nav:[{type:t.ContentChildren,args:[Pe]}]},m([P({onSetCallbackName:"overrideNavParams"})],Re.prototype,"nav",void 0);var Se=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.overrideNavParams=function(e){e.hasNav=!0,e.idPrefix="header-dropdown-nav-item",e.ariaLabel="Menú de usuario",e.classes="w-max max-w-64"},t.prototype.handleEmptyContent=function(e){throw new Error(e+" content is required")},t}(C);Se.decorators=[{type:t.Component,args:[{selector:"desy-header-dropdown",template:'<div class="ml-4 flex items-center lg:ml-6">\r\n <div class="ml-3 relative">\r\n <desy-dropdown [hiddenText]="hiddenText"\r\n [classesContainer]="classesContainer ? classesContainer : \'hidden lg:block\'"\r\n [classesTooltip]="classesTooltip"\r\n [classes]="classes ? classes : \'c-dropdown--header\'"\r\n [caller]="caller"\r\n\r\n [role]="role"\r\n [ariaLabel]="ariaLabel"\r\n [ariaDescribedBy]="ariaDescribedBy"\r\n [ariaLabelledBy]="ariaLabelledBy"\r\n [ariaHidden]="ariaHidden"\r\n [ariaDisabled]="ariaDisabled"\r\n [ariaControls]="ariaControls"\r\n [ariaCurrent]="ariaCurrent"\r\n [ariaLive]="ariaLive"\r\n [ariaExpanded]="ariaExpanded"\r\n [ariaErrorMessage]="ariaErrorMessage"\r\n [ariaHasPopup]="ariaHasPopup"\r\n [tabindex]="tabindex">\r\n <ng-content></ng-content>\r\n </desy-dropdown>\r\n <ng-template #caller>\r\n <ng-content select="desy-nav"></ng-content>\r\n </ng-template>\r\n </div>\r\n</div>\r\n'}]}],Se.propDecorators={hiddenText:[{type:t.Input}],classesContainer:[{type:t.Input}],classesTooltip:[{type:t.Input}],classes:[{type:t.Input}],nav:[{type:t.ContentChildren,args:[Pe]}]},m([P({onSetCallbackName:"overrideNavParams"})],Se.prototype,"nav",void 0);var Oe=function(e){function t(t){var r=e.call(this)||this;return r.changeDetectorRef=t,r.hasContent=!0,r}return u(t,e),t.prototype.getClassNames=function(){var e="c-skip-link sr-only active:not-sr-only focus:not-sr-only focus:outline-none focus:shadow-outline-focus block p-base bg-warning-base text-center text-black underline";return this.classes&&(e+=" "+this.classes),e},t.prototype.handleNoContent=function(){if(!this.html&&!this.text)throw new Error("skip-link content, html or text are required");this.hasContent=!1,this.changeDetectorRef.detectChanges()},t}(C);Oe.decorators=[{type:t.Component,args:[{selector:"desy-skip-link",template:'<a *ngIf="hasContent"\r\n [routerLink]="[]" [fragment]="fragment ? fragment : \'content\'"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null"\r\n (desyContentEmpty)="handleNoContent()">\r\n <ng-content></ng-content>\r\n</a>\r\n\r\n<a *ngIf="!hasContent"\r\n [routerLink]="[]" [fragment]="fragment ? fragment : \'content\'"\r\n [class]="getClassNames()"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *desyCustomInnerContent="{ html: html, text: text }"></ng-container>\r\n</a>\r\n'}]}],Oe.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},Oe.propDecorators={html:[{type:t.Input}],text:[{type:t.Input}],fragment:[{type:t.Input}],classes:[{type:t.Input}],id:[{type:t.Input}]};var Ae=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.overrideSkipLinkParams=function(e){e.id=e.id||"skip-link",e.text="Saltar al contenido principal"},t.prototype.overrideNavigationParams=function(e){e.idPrefix="header-nav-item",e.ariaLabel="Menú principal"},t}(C);Ae.decorators=[{type:t.Component,args:[{selector:"desy-header",template:'<header [ngClass]="classes"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <div [ngClass]="containerClasses">\r\n <nav [attr.aria-labelledby]="skiplinkComponent ? skiplinkComponent.id : \'skip-link\'">\r\n <ng-content select="desy-skip-link"></ng-content>\r\n <desy-skip-link *ngIf="!skiplinkComponent" text="Saltar al contenido principal" [id]="\'skip-link\'"></desy-skip-link>\r\n </nav>\r\n <div class="flex h-1 bg-red-700">\r\n <div class="flex-auto bg-yellow-300 h-full"></div>\r\n <div class="flex-auto bg-red-500 h-full"></div>\r\n <div class="flex-auto bg-red-800 h-full"></div>\r\n </div>\r\n <div class="bg-black">\r\n <div class="container mx-auto px-base">\r\n <div class="flex items-center justify-between min-h-14">\r\n <div class="flex flex-wrap items-center">\r\n <div class="flex items-center flex-shrink-0">\r\n <a *ngIf="homepageRouterLink || !homepageUrl" [routerLink]="homepageRouterLink" [fragment]="homepageFragment" class="text-white focus:outline-none focus:shadow-outline-warning" title="Ir a la página de inicio">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 216.878 51.894" width="144" height="32" [ngClass]="{\'sm:block\': expandedLogo}" class="fill-current hidden" aria-label="Gobierno de Aragón" role="img"><title>Ir a la página de inicio</title><path data-name="img" d="M51.89 51.892H0V0h51.89zm-2.5-2.494v-8.96L38.906 42.33a17.743 17.743 0 01-3.136.278 18.211 18.211 0 01-9.225-2.517 21.42 21.42 0 00-9.317-2.082 20.786 20.786 0 00-4.9.571c-.743.15-1.526.292-2.282.429l-.125.023-.613.112-4.928.913-1.875.382V48.934l1.527-.247 22.517-4.133a17.458 17.458 0 013.236-.3 18.06 18.06 0 017.317 1.527l5.442 2.854a9.431 9.431 0 002.372.679 7.837 7.837 0 001.147.083h.029a16 16 0 003.3-.464zm0 0zm0-8.96V27.195a8.1 8.1 0 00-4.062-1.2 7.451 7.451 0 00-1.162.094l-10.852 2.009c-.026 0-2.878.518-4.281.779L17.12 31.048a18.266 18.266 0 01-2.5.173 18.246 18.246 0 01-7.67-1.683l-4.447-2.34V33.636l1.511-.281a19.009 19.009 0 014.442-.517 17.882 17.882 0 018.168 1.894 23.042 23.042 0 0010.673 2.617 23.64 23.64 0 002.884-.178l19.21-3.535zm0-13.243v-8.778l-1.341.282a19.092 19.092 0 01-4.442.516 17.873 17.873 0 01-8.169-1.894 23.049 23.049 0 00-10.672-2.618 23.464 23.464 0 00-2.884.179L2.5 18.417v6.538a7.558 7.558 0 003.968 1.128 9.406 9.406 0 001.426-.116l10.852-2.008c.027-.005 2.876-.518 4.28-.78l11.914-2.174a18.122 18.122 0 012.5-.173 18.236 18.236 0 017.67 1.683l4.277 2.441v-4.427zm0-8.778V2.981l-7.4 1.524-7.35 1.328-7.035 1.277a23.976 23.976 0 01-5.306.62 16.834 16.834 0 01-4.517-.57 19.322 19.322 0 01-5.084-2.209 95.551 95.551 0 00-1.3-.712c-.285-.139-.571-.291-.846-.437h-.005a9.085 9.085 0 00-2.252-.954 7.331 7.331 0 00-1.918-.341H2.5v9c1.433-.237 2.593-.442 3.651-.647l7.517-1.345a19.656 19.656 0 012.63-.178 17.162 17.162 0 012.63.2 22.628 22.628 0 017.434 2.705 21.654 21.654 0 008.584 1.768h.006a20.746 20.746 0 003.173-.242l11.264-2.256v6.907zM2.5 2.98v-.472h2.95a14.929 14.929 0 00-2.949.473z"/><path data-name="typo" d="M59.352 45.091V32.36h2.074c4.307 0 6.668 2.266 6.668 6.382 0 4.212-2.265 6.349-6.7 6.349zm15.489-16.974v21.281h14.1v-4.307h-9.348v-4.85h9.253v-4.308h-9.253v-3.542h9.348v-4.275zm32.389 0l-7.757 21.282h5.041l2.3-6.477h6.509l2.265 6.477h5.138l-7.912-21.281zm2.807 4.4l-1.978 6.287h3.989zm63.051 6h-4.754v6.7a6.262 6.262 0 01-2.042.288c-3.638 0-6.317-2.84-6.317-6.7 0-4.147 2.84-6.923 7.051-6.923a11.142 11.142 0 016.062 1.851v-4.849a17.388 17.388 0 00-6.477-1.276c-6.891 0-11.677 4.626-11.677 11.262 0 6.54 4.689 10.976 11.677 10.976a19.329 19.329 0 006.477-1.117zm24.023.192c0-6.35-4.722-10.976-11.167-10.976a11.024 11.024 0 00.16 22.047c6.445.001 11.007-4.593 11.007-11.07zm-11.1-6.637c-3.573 0-5.966 2.713-5.966 6.7s2.456 6.7 6.062 6.7c3.573 0 5.934-2.681 5.934-6.7s-2.428-6.699-6.033-6.699zm12.94-3.956v21.281h4.85v-13.56l8.58 13.56h4.5V28.116h-4.849l.006 13.235-8.237-13.235zm-126.6-15h-4.754v6.7a6.266 6.266 0 01-2.042.287c-3.637 0-6.317-2.84-6.317-6.7 0-4.148 2.84-6.923 7.051-6.923a11.152 11.152 0 016.062 1.85V3.481a17.386 17.386 0 00-6.477-1.277c-6.891 0-11.677 4.626-11.677 11.263 0 6.54 4.69 10.974 11.677 10.974a19.342 19.342 0 006.477-1.116zm24 .191c0-6.349-4.722-10.975-11.167-10.975a11.023 11.023 0 00.159 22.046c6.437-.002 11-4.597 11-11.074zm-11.1-6.636c-3.573 0-5.966 2.711-5.966 6.7s2.457 6.7 6.062 6.7c3.573 0 5.935-2.68 5.935-6.7s-2.437-6.702-6.042-6.702zm12.695-3.956v21.281h8.806c4.69 0 7.433-2.33 7.433-6.318 0-2.743-1.563-4.721-4.435-5.551a4.665 4.665 0 002.9-4.371c.032-3.382-2.265-5.041-6.859-5.041zm7.083 7.944c2.074 0 2.9-.575 2.9-2.01 0-1.372-.8-1.882-3.062-1.882h-2.074v3.892zm.638 9c2.36 0 3.381-.734 3.381-2.457 0-1.786-1.053-2.489-3.573-2.489h-2.679v4.946zm14.274-16.942h-4.768v21.281h4.754zm2.07 0v21.281h14.1v-4.307h-9.349v-4.85h9.253v-4.307h-9.253V6.993h9.349V2.718zm75.145 10.592c0-6.349-4.722-10.975-11.167-10.975a11.023 11.023 0 00.16 22.046c6.435-.004 10.997-4.599 10.997-11.076zm-11.1-6.636c-3.573 0-5.966 2.711-5.966 6.7s2.456 6.7 6.062 6.7c3.573 0 5.934-2.68 5.934-6.7s-2.438-6.704-6.043-6.704zm-37.783 32.132l-2.01-6.287-1.978 6.287zM126.43 49.398v-8.743h.606c3.063 0 3.382.319 5.423 5.583a10.7 10.7 0 00.447 1.085l.415.989a9.523 9.523 0 00.51 1.085h6.911l2.3-6.477h6.509l2.265 6.477h5.137l-7.912-21.281h-5.583l-6.288 17.258a89.817 89.817 0 01-1.549-3.411c-.83-1.819-1.308-2.362-2.84-3a5.086 5.086 0 003.892-5.106c0-3.828-2.52-5.743-7.593-5.743h-7.53v21.281zm0-12.763h2.105c2.042 0 3.063-.734 3.063-2.265s-.926-2.2-3-2.2h-2.17zm16.613-12.643V15.25h.605c3.063 0 3.382.319 5.424 5.583a10.427 10.427 0 00.447 1.085l.415.989a9.465 9.465 0 00.51 1.085h9.578l.027-13.652 8.555 13.652h4.5V2.711h-4.849l.021 13.056-8.252-13.056h-4.851v19.812a44.3 44.3 0 01-2.942-5.962c-.829-1.818-1.307-2.36-2.839-3a5.085 5.085 0 003.892-5.1c0-3.829-2.521-5.743-7.594-5.743h-7.529v21.281zm0-12.762h2.106c2.041 0 3.062-.734 3.062-2.265s-.924-2.2-3-2.2h-2.169zM54.53 28.117v21.281h7.114c7.21 0 11.454-3.956 11.454-10.657 0-6.669-4.339-10.625-11.709-10.625z" fill-rule="evenodd"/></svg>\r\n <svg class="w-8 h-8 fill-current" [ngClass]="{\'sm:hidden\': expandedLogo}" viewBox="0 0 51.894 51.894" width="32" height="32" aria-label="Gobierno de Aragón" role="img"><title>Ir a la página de inicio</title><path data-name="img" d="M51.89 51.892H0V0h51.89zm-2.5-2.494v-8.96L38.906 42.33a17.743 17.743 0 01-3.136.278 18.211 18.211 0 01-9.225-2.517 21.42 21.42 0 00-9.317-2.082 20.786 20.786 0 00-4.9.571c-.743.15-1.526.292-2.282.429l-.125.023-.613.112-4.928.913-1.875.382V48.934l1.527-.247 22.517-4.133a17.458 17.458 0 013.236-.3 18.06 18.06 0 017.317 1.527l5.442 2.854a9.431 9.431 0 002.372.679 7.837 7.837 0 001.147.083h.029a16 16 0 003.3-.464zm0 0zm0-8.96V27.195a8.1 8.1 0 00-4.062-1.2 7.451 7.451 0 00-1.162.094l-10.852 2.009c-.026 0-2.878.518-4.281.779L17.12 31.048a18.266 18.266 0 01-2.5.173 18.246 18.246 0 01-7.67-1.683l-4.447-2.34V33.636l1.511-.281a19.009 19.009 0 014.442-.517 17.882 17.882 0 018.168 1.894 23.042 23.042 0 0010.673 2.617 23.64 23.64 0 002.884-.178l19.21-3.535zm0-13.243v-8.778l-1.341.282a19.092 19.092 0 01-4.442.516 17.873 17.873 0 01-8.169-1.894 23.049 23.049 0 00-10.672-2.618 23.464 23.464 0 00-2.884.179L2.5 18.417v6.538a7.558 7.558 0 003.968 1.128 9.406 9.406 0 001.426-.116l10.852-2.008c.027-.005 2.876-.518 4.28-.78l11.914-2.174a18.122 18.122 0 012.5-.173 18.236 18.236 0 017.67 1.683l4.277 2.441v-4.427zm0-8.778V2.981l-7.4 1.524-7.35 1.328-7.035 1.277a23.976 23.976 0 01-5.306.62 16.834 16.834 0 01-4.517-.57 19.322 19.322 0 01-5.084-2.209 95.551 95.551 0 00-1.3-.712c-.285-.139-.571-.291-.846-.437h-.005a9.085 9.085 0 00-2.252-.954 7.331 7.331 0 00-1.918-.341H2.5v9c1.433-.237 2.593-.442 3.651-.647l7.517-1.345a19.656 19.656 0 012.63-.178 17.162 17.162 0 012.63.2 22.628 22.628 0 017.434 2.705 21.654 21.654 0 008.584 1.768h.006a20.746 20.746 0 003.173-.242l11.264-2.256v6.907zM2.5 2.98v-.472h2.95a14.929 14.929 0 00-2.949.473z"/></svg>\r\n </a>\r\n <a *ngIf="!homepageRouterLink && homepageUrl" [href]="homepageUrl | externalHref" class="text-white focus:outline-none focus:shadow-outline-warning" title="Ir a la página de inicio">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 216.878 51.894" width="144" height="32" [ngClass]="{\'sm:block\': expandedLogo}" class="fill-current hidden" aria-label="Gobierno de Aragón" role="img"><title>Ir a la página de inicio</title><path data-name="img" d="M51.89 51.892H0V0h51.89zm-2.5-2.494v-8.96L38.906 42.33a17.743 17.743 0 01-3.136.278 18.211 18.211 0 01-9.225-2.517 21.42 21.42 0 00-9.317-2.082 20.786 20.786 0 00-4.9.571c-.743.15-1.526.292-2.282.429l-.125.023-.613.112-4.928.913-1.875.382V48.934l1.527-.247 22.517-4.133a17.458 17.458 0 013.236-.3 18.06 18.06 0 017.317 1.527l5.442 2.854a9.431 9.431 0 002.372.679 7.837 7.837 0 001.147.083h.029a16 16 0 003.3-.464zm0 0zm0-8.96V27.195a8.1 8.1 0 00-4.062-1.2 7.451 7.451 0 00-1.162.094l-10.852 2.009c-.026 0-2.878.518-4.281.779L17.12 31.048a18.266 18.266 0 01-2.5.173 18.246 18.246 0 01-7.67-1.683l-4.447-2.34V33.636l1.511-.281a19.009 19.009 0 014.442-.517 17.882 17.882 0 018.168 1.894 23.042 23.042 0 0010.673 2.617 23.64 23.64 0 002.884-.178l19.21-3.535zm0-13.243v-8.778l-1.341.282a19.092 19.092 0 01-4.442.516 17.873 17.873 0 01-8.169-1.894 23.049 23.049 0 00-10.672-2.618 23.464 23.464 0 00-2.884.179L2.5 18.417v6.538a7.558 7.558 0 003.968 1.128 9.406 9.406 0 001.426-.116l10.852-2.008c.027-.005 2.876-.518 4.28-.78l11.914-2.174a18.122 18.122 0 012.5-.173 18.236 18.236 0 017.67 1.683l4.277 2.441v-4.427zm0-8.778V2.981l-7.4 1.524-7.35 1.328-7.035 1.277a23.976 23.976 0 01-5.306.62 16.834 16.834 0 01-4.517-.57 19.322 19.322 0 01-5.084-2.209 95.551 95.551 0 00-1.3-.712c-.285-.139-.571-.291-.846-.437h-.005a9.085 9.085 0 00-2.252-.954 7.331 7.331 0 00-1.918-.341H2.5v9c1.433-.237 2.593-.442 3.651-.647l7.517-1.345a19.656 19.656 0 012.63-.178 17.162 17.162 0 012.63.2 22.628 22.628 0 017.434 2.705 21.654 21.654 0 008.584 1.768h.006a20.746 20.746 0 003.173-.242l11.264-2.256v6.907zM2.5 2.98v-.472h2.95a14.929 14.929 0 00-2.949.473z"/><path data-name="typo" d="M59.352 45.091V32.36h2.074c4.307 0 6.668 2.266 6.668 6.382 0 4.212-2.265 6.349-6.7 6.349zm15.489-16.974v21.281h14.1v-4.307h-9.348v-4.85h9.253v-4.308h-9.253v-3.542h9.348v-4.275zm32.389 0l-7.757 21.282h5.041l2.3-6.477h6.509l2.265 6.477h5.138l-7.912-21.281zm2.807 4.4l-1.978 6.287h3.989zm63.051 6h-4.754v6.7a6.262 6.262 0 01-2.042.288c-3.638 0-6.317-2.84-6.317-6.7 0-4.147 2.84-6.923 7.051-6.923a11.142 11.142 0 016.062 1.851v-4.849a17.388 17.388 0 00-6.477-1.276c-6.891 0-11.677 4.626-11.677 11.262 0 6.54 4.689 10.976 11.677 10.976a19.329 19.329 0 006.477-1.117zm24.023.192c0-6.35-4.722-10.976-11.167-10.976a11.024 11.024 0 00.16 22.047c6.445.001 11.007-4.593 11.007-11.07zm-11.1-6.637c-3.573 0-5.966 2.713-5.966 6.7s2.456 6.7 6.062 6.7c3.573 0 5.934-2.681 5.934-6.7s-2.428-6.699-6.033-6.699zm12.94-3.956v21.281h4.85v-13.56l8.58 13.56h4.5V28.116h-4.849l.006 13.235-8.237-13.235zm-126.6-15h-4.754v6.7a6.266 6.266 0 01-2.042.287c-3.637 0-6.317-2.84-6.317-6.7 0-4.148 2.84-6.923 7.051-6.923a11.152 11.152 0 016.062 1.85V3.481a17.386 17.386 0 00-6.477-1.277c-6.891 0-11.677 4.626-11.677 11.263 0 6.54 4.69 10.974 11.677 10.974a19.342 19.342 0 006.477-1.116zm24 .191c0-6.349-4.722-10.975-11.167-10.975a11.023 11.023 0 00.159 22.046c6.437-.002 11-4.597 11-11.074zm-11.1-6.636c-3.573 0-5.966 2.711-5.966 6.7s2.457 6.7 6.062 6.7c3.573 0 5.935-2.68 5.935-6.7s-2.437-6.702-6.042-6.702zm12.695-3.956v21.281h8.806c4.69 0 7.433-2.33 7.433-6.318 0-2.743-1.563-4.721-4.435-5.551a4.665 4.665 0 002.9-4.371c.032-3.382-2.265-5.041-6.859-5.041zm7.083 7.944c2.074 0 2.9-.575 2.9-2.01 0-1.372-.8-1.882-3.062-1.882h-2.074v3.892zm.638 9c2.36 0 3.381-.734 3.381-2.457 0-1.786-1.053-2.489-3.573-2.489h-2.679v4.946zm14.274-16.942h-4.768v21.281h4.754zm2.07 0v21.281h14.1v-4.307h-9.349v-4.85h9.253v-4.307h-9.253V6.993h9.349V2.718zm75.145 10.592c0-6.349-4.722-10.975-11.167-10.975a11.023 11.023 0 00.16 22.046c6.435-.004 10.997-4.599 10.997-11.076zm-11.1-6.636c-3.573 0-5.966 2.711-5.966 6.7s2.456 6.7 6.062 6.7c3.573 0 5.934-2.68 5.934-6.7s-2.438-6.704-6.043-6.704zm-37.783 32.132l-2.01-6.287-1.978 6.287zM126.43 49.398v-8.743h.606c3.063 0 3.382.319 5.423 5.583a10.7 10.7 0 00.447 1.085l.415.989a9.523 9.523 0 00.51 1.085h6.911l2.3-6.477h6.509l2.265 6.477h5.137l-7.912-21.281h-5.583l-6.288 17.258a89.817 89.817 0 01-1.549-3.411c-.83-1.819-1.308-2.362-2.84-3a5.086 5.086 0 003.892-5.106c0-3.828-2.52-5.743-7.593-5.743h-7.53v21.281zm0-12.763h2.105c2.042 0 3.063-.734 3.063-2.265s-.926-2.2-3-2.2h-2.17zm16.613-12.643V15.25h.605c3.063 0 3.382.319 5.424 5.583a10.427 10.427 0 00.447 1.085l.415.989a9.465 9.465 0 00.51 1.085h9.578l.027-13.652 8.555 13.652h4.5V2.711h-4.849l.021 13.056-8.252-13.056h-4.851v19.812a44.3 44.3 0 01-2.942-5.962c-.829-1.818-1.307-2.36-2.839-3a5.085 5.085 0 003.892-5.1c0-3.829-2.521-5.743-7.594-5.743h-7.529v21.281zm0-12.762h2.106c2.041 0 3.062-.734 3.062-2.265s-.924-2.2-3-2.2h-2.169zM54.53 28.117v21.281h7.114c7.21 0 11.454-3.956 11.454-10.657 0-6.669-4.339-10.625-11.709-10.625z" fill-rule="evenodd"/></svg>\r\n <svg class="w-8 h-8 fill-current" [ngClass]="{\'sm:hidden\': expandedLogo}" viewBox="0 0 51.894 51.894" width="32" height="32" aria-label="Gobierno de Aragón" role="img"><title>Ir a la página de inicio</title><path data-name="img" d="M51.89 51.892H0V0h51.89zm-2.5-2.494v-8.96L38.906 42.33a17.743 17.743 0 01-3.136.278 18.211 18.211 0 01-9.225-2.517 21.42 21.42 0 00-9.317-2.082 20.786 20.786 0 00-4.9.571c-.743.15-1.526.292-2.282.429l-.125.023-.613.112-4.928.913-1.875.382V48.934l1.527-.247 22.517-4.133a17.458 17.458 0 013.236-.3 18.06 18.06 0 017.317 1.527l5.442 2.854a9.431 9.431 0 002.372.679 7.837 7.837 0 001.147.083h.029a16 16 0 003.3-.464zm0 0zm0-8.96V27.195a8.1 8.1 0 00-4.062-1.2 7.451 7.451 0 00-1.162.094l-10.852 2.009c-.026 0-2.878.518-4.281.779L17.12 31.048a18.266 18.266 0 01-2.5.173 18.246 18.246 0 01-7.67-1.683l-4.447-2.34V33.636l1.511-.281a19.009 19.009 0 014.442-.517 17.882 17.882 0 018.168 1.894 23.042 23.042 0 0010.673 2.617 23.64 23.64 0 002.884-.178l19.21-3.535zm0-13.243v-8.778l-1.341.282a19.092 19.092 0 01-4.442.516 17.873 17.873 0 01-8.169-1.894 23.049 23.049 0 00-10.672-2.618 23.464 23.464 0 00-2.884.179L2.5 18.417v6.538a7.558 7.558 0 003.968 1.128 9.406 9.406 0 001.426-.116l10.852-2.008c.027-.005 2.876-.518 4.28-.78l11.914-2.174a18.122 18.122 0 012.5-.173 18.236 18.236 0 017.67 1.683l4.277 2.441v-4.427zm0-8.778V2.981l-7.4 1.524-7.35 1.328-7.035 1.277a23.976 23.976 0 01-5.306.62 16.834 16.834 0 01-4.517-.57 19.322 19.322 0 01-5.084-2.209 95.551 95.551 0 00-1.3-.712c-.285-.139-.571-.291-.846-.437h-.005a9.085 9.085 0 00-2.252-.954 7.331 7.331 0 00-1.918-.341H2.5v9c1.433-.237 2.593-.442 3.651-.647l7.517-1.345a19.656 19.656 0 012.63-.178 17.162 17.162 0 012.63.2 22.628 22.628 0 017.434 2.705 21.654 21.654 0 008.584 1.768h.006a20.746 20.746 0 003.173-.242l11.264-2.256v6.907zM2.5 2.98v-.472h2.95a14.929 14.929 0 00-2.949.473z"/></svg>\r\n </a>\r\n\r\n <ng-content select="desy-header-subnav"></ng-content>\r\n <desy-header-subnav *ngIf="!subnavComponent && subnavData && (subnavData.text || subnavData.html)"\r\n [classes]="subnavData.classes"\r\n [hiddenText]="subnavData.hiddenText"\r\n [classesContainer]="subnavData.classesContainer"\r\n [classesTooltip]="subnavData.classesTooltip"\r\n [role]="subnavData.role"\r\n [ariaLabel]="subnavData.ariaLabel"\r\n [ariaDescribedBy]="subnavData.ariaDescribedBy"\r\n [ariaLabelledBy]="subnavData.ariaLabelledBy"\r\n [ariaHidden]="subnavData.ariaHidden"\r\n [ariaDisabled]="subnavData.ariaDisabled"\r\n [ariaControls]="subnavData.ariaControls"\r\n [ariaCurrent]="subnavData.ariaCurrent"\r\n [ariaLive]="subnavData.ariaLive"\r\n [ariaExpanded]="subnavData.ariaExpanded"\r\n [ariaErrorMessage]="subnavData.ariaErrorMessage"\r\n [ariaHasPopup]="subnavData.ariaHasPopup"\r\n [tabindex]="subnavData.tabindex">\r\n <ng-container *desyCustomInnerContent="{ html: subnavData.html, text: subnavData.text }"></ng-container>\r\n <desy-nav *ngIf="subnavData && subnavData.items && subnavData.items.length > 0"\r\n [hasNav]="true"\r\n [idPrefix]="\'header-subnav-nav-item\'"\r\n [classes]="\'w-max max-w-64\'"\r\n [items]="subnavData.items"\r\n [id]="\'id-subnav-nav\'"\r\n [ariaLabel]="\'Aplicaciones\'"></desy-nav>\r\n </desy-header-subnav>\r\n </div>\r\n\r\n <ng-content select="desy-header-navigation"></ng-content>\r\n <desy-header-navigation *ngIf="!navigationComponent && navigationData && navigationData.items && navigationData.items.length > 0"\r\n [idPrefix]="\'header-nav-item\'"\r\n [classes]="navigationData.classes"\r\n [items]="navigationData.items"\r\n [ariaLabel]="\'Menú principal\'"></desy-header-navigation>\r\n </div>\r\n\r\n <ng-content select="desy-header-dropdown"></ng-content>\r\n <ng-container *ngIf="!dropdownComponent && dropdownData && dropdownData.items && dropdownData.items.length > 0">\r\n <desy-header-dropdown [classes]="dropdownData.classes"\r\n [hiddenText]="dropdownData.hiddenText"\r\n [classesContainer]="dropdownData.classesContainer"\r\n [classesTooltip]="dropdownData.classesTooltip"\r\n [role]="dropdownData.role"\r\n [ariaLabel]="dropdownData.ariaLabel"\r\n [ariaDescribedBy]="dropdownData.ariaDescribedBy"\r\n [ariaLabelledBy]="dropdownData.ariaLabelledBy"\r\n [ariaHidden]="dropdownData.ariaHidden"\r\n [ariaDisabled]="dropdownData.ariaDisabled"\r\n [ariaControls]="dropdownData.ariaControls"\r\n [ariaCurrent]="dropdownData.ariaCurrent"\r\n [ariaLive]="dropdownData.ariaLive"\r\n [ariaExpanded]="dropdownData.ariaExpanded"\r\n [ariaErrorMessage]="dropdownData.ariaErrorMessage"\r\n [ariaHasPopup]="dropdownData.ariaHasPopup"\r\n [tabindex]="dropdownData.tabindex">\r\n <ng-container *desyCustomInnerContent="{ html: dropdownData.html, text: dropdownData.text }"></ng-container>\r\n <desy-nav [hasNav]="true"\r\n [idPrefix]="\'header-dropdown-nav-item\'"\r\n [classes]="\'w-max max-w-64\'"\r\n [items]="dropdownData.items"\r\n [id]="\'id-dropdown-nav\'"\r\n [ariaLabel]="\'Menú de usuario\'"></desy-nav>\r\n </desy-header-dropdown>\r\n </ng-container>\r\n\r\n <ng-content select="desy-header-offcanvas"></ng-content>\r\n <ng-container *ngIf="!offcanvasComponent && offcanvasData">\r\n <desy-header-offcanvas [classes]="offcanvasData.classes">\r\n <desy-header-offcanvas-button>\r\n <ng-container *desyCustomInnerContent="{ html: offcanvasData.html, text: offcanvasData.text }"></ng-container>\r\n </desy-header-offcanvas-button>\r\n <desy-header-offcanvas-close-button>{{ offcanvasData.textClose }}</desy-header-offcanvas-close-button>\r\n <desy-content>\r\n <ng-container *desyCustomInnerContent="{ template: offcanvasData.contentHtml }"></ng-container>\r\n </desy-content>\r\n </desy-header-offcanvas>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</header>\r\n'}]}],Ae.propDecorators={classes:[{type:t.Input}],containerClasses:[{type:t.Input}],homepageUrl:[{type:t.Input}],homepageRouterLink:[{type:t.Input}],homepageFragment:[{type:t.Input}],expandedLogo:[{type:t.Input}],subnavData:[{type:t.Input}],navigationData:[{type:t.Input}],dropdownData:[{type:t.Input}],offcanvasData:[{type:t.Input}],skiplinkComponent:[{type:t.ContentChildren,args:[Oe]}],subnavComponent:[{type:t.ContentChildren,args:[Re]}],navigationComponent:[{type:t.ContentChildren,args:[Be]}],dropdownComponent:[{type:t.ContentChildren,args:[Se]}],offcanvasComponent:[{type:t.ContentChildren,args:[ke]}]},m([P({onSetCallbackName:"overrideSkipLinkParams"})],Ae.prototype,"skiplinkComponent",void 0),m([P()],Ae.prototype,"subnavComponent",void 0),m([P({onSetCallbackName:"overrideNavigationParams"})],Ae.prototype,"navigationComponent",void 0),m([P()],Ae.prototype,"dropdownComponent",void 0),m([P()],Ae.prototype,"offcanvasComponent",void 0);var Fe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Fe.decorators=[{type:t.Component,args:[{selector:"desy-footer-navigation-item",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],Fe.propDecorators={href:[{type:t.Input}],routerLink:[{type:t.Input}],fragment:[{type:t.Input}]};var Ne=function(){};Ne.decorators=[{type:t.Component,args:[{selector:"desy-footer-navigation",template:""}]}],Ne.propDecorators={title:[{type:t.Input}],columns:[{type:t.Input}],itemComponents:[{type:t.ContentChildren,args:[Fe]}]};var qe=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);qe.decorators=[{type:t.Component,args:[{selector:"desy-footer-meta-item",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],qe.propDecorators={href:[{type:t.Input}],routerLink:[{type:t.Input}],fragment:[{type:t.Input}]};var ze=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);ze.decorators=[{type:t.Component,args:[{selector:"desy-footer-meta",template:""}]}],ze.propDecorators={visuallyHiddenTitle:[{type:t.Input}],contentComponent:[{type:t.ContentChildren,args:[O]}],itemComponents:[{type:t.ContentChildren,args:[qe]}]},m([P()],ze.prototype,"contentComponent",void 0);var Ve=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.getNavigationItems=function(){var e=this.navigationComponent&&this.navigationComponent.length>0?this.navigationComponent.toArray():this.navigation;return e&&e.length>0?e:null},t.prototype.getNavigationItemItems=function(e){return e instanceof Ne?e.itemComponents.toArray():e.items},t.prototype.getMetaItems=function(e){return e instanceof ze?e.itemComponents.toArray():e.items},t.prototype.getMetaContent=function(e){return e instanceof ze?e.contentComponent:null},t}(C);Ve.decorators=[{type:t.Component,args:[{selector:"desy-footer",template:'<footer [class]="[\'py-base bg-neutral-lighter border-t border-neutral-base text-xs lg:text-sm text-neutral-dark\', classes] | makeHtmlList"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <div [class]="[\'container mx-auto px-base\', containerClasses] | makeHtmlList">\r\n <ng-container *ngIf="getNavigationItems()">\r\n <div class="flex flex-wrap">\r\n <div class="flex-1 mr-base" *ngFor="let nav of getNavigationItems()">\r\n <h3 class="mb-base font-bold text-xl">{{nav.title}}</h3>\r\n <ul [class]="\'grid grid-cols-1 gap-base lg:grid-cols-\' + nav.columns">\r\n <li class="mb-xs" *ngFor="let item of getNavigationItemItems(nav)">\r\n <ng-container *ngTemplateOutlet="item.href != null ? itemHref : itemRouterLink; context: {item: item}"></ng-container>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n <hr class="my-base border-t border-neutral-base">\r\n </ng-container>\r\n\r\n <div class="flex flex-wrap flex-col lg:flex-row justify-between">\r\n <div class="mb-base">\r\n <ng-template #metaTemplate let-metaElement="metaElement">\r\n <ng-container *ngIf="metaElement">\r\n <h2 class="sr-only">{{(metaElement.visuallyHiddenTitle ? metaElement.visuallyHiddenTitle : \'Enlaces de pie de página\')}}</h2>\r\n <ul class="flex flex-col lg:flex-row lg:flex-wrap" *ngIf="getMetaItems(metaElement)">\r\n <li class="mb-sm mr-base" *ngFor="let item of getMetaItems(metaElement)">\r\n <ng-container *ngTemplateOutlet="item.href != null ? itemHref : itemRouterLink; context: {item: item}"></ng-container>\r\n </li>\r\n </ul>\r\n <div class="mb-sm" *ngIf="getMetaContent(metaElement) || metaElement.html || metaElement.text">\r\n <p>\r\n <ng-container *desyCustomInnerContent="{ component: getMetaContent(metaElement), html: metaElement.html, text: metaElement.text }"></ng-container>\r\n </p>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n <ng-container *ngTemplateOutlet="metaTemplate; context: { metaElement: metaComponent ? metaComponent : meta }"></ng-container>\r\n <div class="leading-tight">\r\n <p>\r\n Todo el contenido bajo\r\n <a\r\n class="c-link c-link--neutral"\r\n href="https://creativecommons.org/licenses/by/4.0/legalcode.es"\r\n rel="license"\r\n >licencia CC BY 4.0</a>\r\n </p>\r\n </div>\r\n <div class="leading-tight">\r\n <p>\r\n <a\r\n class="c-link c-link--neutral"\r\n href="https://www.aragon.es/"\r\n >Gobierno de Aragón</a>. Edificio Pignatelli. <abbr title=”Paseo”>Pº</abbr> María Agustín, 36. 50004 - Zaragoza - <abbr title="Teléfono" class="no-underline">Tel.</abbr> <a href="tel:+976714000" class="c-link c-link--neutral">976 714 000</a>\r\n </p>\r\n </div>\r\n </div>\r\n <div class="mb-base lg:pl-base overflow-hidden">\r\n <p *ngIf="iconComponent || icon?.html">\r\n <ng-container *desyCustomInnerContent="{ component: iconComponent, html: icon?.html }"></ng-container>\r\n </p>\r\n <p>\r\n <a href="http://www.aragon.es/Fondos_Europeos" class="inline-block text-sm c-link no-underline" title="Más información sobre los Fondos Estructurales y de Inversión Europeos (Fondos EIE)">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 575 96" width="288" height="48" class="w-auto h-12" role="img" aria-label="Logotipo Unión Europea. Fondo Europeo de Desarrollo Regional (FEDER). Construyendo Europa desde Aragón."><text transform="translate(126 33)" fill="#039" font-size="20" font-family="Arial, Tahoma, Verdana, Calibri, Garamond, Trebuchet, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, HelveticaNeue-Bold, Helvetica Neue, Helvetica, sans" font-weight="700"><tspan x="0" y="0">UNIÓN EUROPEA</tspan></text><text transform="translate(126 56)" fill="#039" font-size="20" font-family="Arial, Tahoma, Verdana, Calibri, Garamond, Trebuchet, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, HelveticaNeue-Bold, Helvetica Neue, Helvetica, sans"><tspan x="0" y="0">Fondo Europeo de Desarrollo Regional (FEDER)</tspan></text><text transform="translate(126 79)" fill="#039" font-size="20" font-family="Arial, Tahoma, Verdana, Calibri, Garamond, Trebuchet, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, HelveticaNeue-Bold, Helvetica Neue, Helvetica, sans"><tspan x="0" y="0">“Construyendo Europa desde Aragón”</tspan></text><path fill="#039" stroke="#fff" stroke-width="1%" d="M14.086 13.02h104.282v69.522H14.086z"/><g fill="#fc0"><path d="M64.004 28.167l2.2-1.606 2.2 1.606-.837-2.6 2.235-1.606h-2.755l-.843-2.628-.843 2.631h-2.753l2.233 1.606zM52.617 31.229l2.2-1.606 2.2 1.606-.836-2.6 2.233-1.606h-2.755l-.843-2.631-.843 2.634H51.22l2.234 1.606zM46.486 32.743l-.843 2.634H42.89l2.234 1.606-.837 2.6 2.2-1.606 2.2 1.606-.837-2.6 2.234-1.606h-2.752zM43.429 49.345l2.2 1.606-.836-2.6 2.234-1.606h-2.753l-.843-2.631-.843 2.637-2.755-.006 2.235 1.606-.837 2.6zM47.332 58.156l-.843-2.631-.843 2.634h-2.753l2.234 1.606-.837 2.6 2.2-1.609 2.2 1.609-.837-2.6 2.234-1.606zM55.677 66.504l-.843-2.628-.842 2.631h-2.755l2.234 1.606-.836 2.6 2.2-1.606 2.2 1.606-.836-2.6 2.234-1.606zM67.05 69.528l-.843-2.631-.842 2.634H62.61l2.234 1.606-.836 2.6 2.2-1.606 2.2 1.606-.837-2.6 2.235-1.606zM78.422 66.504l-.842-2.628-.845 2.631h-2.752l2.232 1.606-.836 2.6 2.2-1.606 2.2 1.606-.839-2.6 2.235-1.606zM86.774 58.156l-.845-2.631-.845 2.634h-2.752l2.235 1.606-.839 2.6 2.2-1.609 2.2 1.609-.839-2.6 2.235-1.606zM92.551 46.716h-2.755l-.845-2.631-.842 2.634h-2.755l2.235 1.606-.836 2.6 2.2-1.609 2.2 1.609-.836-2.6zM83.728 39.544l2.2-1.606 2.2 1.606-.839-2.6 2.235-1.6h-2.752l-.845-2.631-.845 2.634H82.33l2.235 1.6zM77.613 24.395l-.842 2.634-2.755-.006 2.232 1.609-.836 2.6 2.2-1.609 2.2 1.609-.836-2.6 2.235-1.609h-2.758z"/></g></svg>\r\n </a>\r\n </p>\r\n </div>\r\n </div>\r\n </div>\r\n</footer>\r\n\r\n<ng-template #itemHref let-item="item">\r\n <a class="c-link font-semibold" [href]="item.href | externalHref"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n <ng-container *desyCustomInnerContent="{ component: item, text: item.text }"></ng-container>\r\n </a>\r\n</ng-template>\r\n\r\n<ng-template #itemRouterLink let-item="item">\r\n <a class="c-link font-semibold" [routerLink]="item.routerLink" [fragment]="item.fragment"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n <ng-container *desyCustomInnerContent="{ component: item, text: item.text }"></ng-container>\r\n </a>\r\n</ng-template>\r\n'}]}],Ve.propDecorators={meta:[{type:t.Input}],navigation:[{type:t.Input}],icon:[{type:t.Input}],containerClasses:[{type:t.Input}],classes:[{type:t.Input}],iconComponent:[{type:t.ContentChildren,args:[F]}],metaComponent:[{type:t.ContentChildren,args:[ze]}],navigationComponent:[{type:t.ContentChildren,args:[Ne]}]},m([P()],Ve.prototype,"iconComponent",void 0),m([P()],Ve.prototype,"metaComponent",void 0);var _e=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);_e.decorators=[{type:t.Component,args:[{selector:"desy-error-summary-item",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],_e.propDecorators={fragment:[{type:t.Input}],id:[{type:t.Input}]};var Ge=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.handleContentRequired=function(e){throw new Error(e+" content, html or text are required")},t.prototype.getErrorItemList=function(){var e;e=this.errorComponentList&&this.errorComponentList.length>0?this.errorComponentList.toArray():this.errorList;var t=this.lastErrorItemCount;if(this.lastErrorItemCount=e.length,0===e.length&&0!==t)throw new Error("errorList or inner error-summary-item are required");return e},t}(C);Ge.decorators=[{type:t.Component,args:[{selector:"desy-error-summary",template:'<div [class]="[\'p-base bg-white border-2 border-alert-base\', classes] | makeHtmlList" tabindex="-1"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : \'alert\'"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : \'error-summary-title\'"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup">\r\n <h2 class="mb-base font-bold" [attr.id]="ariaLabelledBy ? ariaLabelledBy :\'error-summary-title\'"\r\n (desyContentEmpty)="handleContentRequired(\'title\')">\r\n <ng-container *desyCustomInnerContent="{component: titleComponent, html: titleHtml, text: titleText}"></ng-container>\r\n </h2>\r\n <div>\r\n <p *ngIf="(descriptionComponent && descriptionComponent.getContent()) || descriptionHtml || descriptionText" class="mb-base">\r\n <ng-container *desyCustomInnerContent="{component: descriptionComponent, html: descriptionHtml, text: descriptionText}"></ng-container>\r\n </p>\r\n <ul class="font-semibold text-alert-base">\r\n <ng-container *ngFor="let item of getErrorItemList(); index as i">\r\n <li *ngIf="item.fragment">\r\n <a routerLink="./" [fragment]="item.fragment" class="c-link c-link--alert"\r\n (desyContentEmpty)="handleContentRequired(\'item at position \' + i)"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <ng-container *desyCustomInnerContent="{component: item, html: item.html, text: item.text}"></ng-container>\r\n </a>\r\n </li>\r\n <li *ngIf="!item.fragment" (desyContentEmpty)="handleContentRequired(\'item at position \' + i)">\r\n <ng-container *desyCustomInnerContent="{component: item, html: item.html, text: item.text}"></ng-container>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </div>\r\n</div>\r\n'}]}],Ge.propDecorators={titleText:[{type:t.Input}],titleHtml:[{type:t.Input}],descriptionText:[{type:t.Input}],descriptionHtml:[{type:t.Input}],classes:[{type:t.Input}],id:[{type:t.Input}],errorList:[{type:t.Input}],titleComponent:[{type:t.ContentChildren,args:[N]}],descriptionComponent:[{type:t.ContentChildren,args:[A]}],errorComponentList:[{type:t.ContentChildren,args:[_e]}]},m([P()],Ge.prototype,"titleComponent",void 0),m([P()],Ge.prototype,"descriptionComponent",void 0);var Ue=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.clickEvent=new t.EventEmitter,r.activeChange=new t.EventEmitter,r}return u(r,e),r}(v);Ue.decorators=[{type:t.Component,args:[{selector:"desy-menu-horizontal-item",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],Ue.propDecorators={href:[{type:t.Input}],routerLink:[{type:t.Input}],fragment:[{type:t.Input}],target:[{type:t.Input}],id:[{type:t.Input}],active:[{type:t.Input}],disabled:[{type:t.Input}],classes:[{type:t.Input}],clickEvent:[{type:t.Output}],activeChange:[{type:t.Output}]};var je=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.clickEvent=new t.EventEmitter,r}return u(r,e),r.prototype.ngOnChanges=function(e){},r.prototype.onClick=function(e,t){var r=[];t.active||r.push(t),this.getItemList().forEach((function(e){e.active&&e!==t&&r.push(e),e.active=!1})),t.active=!0,r.forEach((function(e){e instanceof Ue&&e.activeChange.emit(e.active)})),this.clickEvent.emit({item:t,event:e}),t instanceof Ue&&t.clickEvent.emit({item:t,event:e})},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"menu-item"},r.prototype.getItemList=function(){var e=this.itemComponents&&this.itemComponents.length>0?this.itemComponents.toArray():this.items;if(!e||0===e.length)throw new Error("items are required");return e.forEach((function(e){if(!e.routerLink&&!e.href)throw Error("item routerLink or href are required")})),e},r.prototype.handleEmptyItem=function(e){throw new Error("item content, html or text are required at position "+e)},r.prototype.getItemId=function(e,t){return e.id?e.id:0===t?this.getIdPrefix():this.getIdPrefix()+"-"+t},r}(C);je.decorators=[{type:t.Component,args:[{selector:"desy-menu-horizontal",template:'\x3c!-- menu-horizontal --\x3e\r\n<nav [class]="[\'c-menu-horizontal\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ul class="c-menu-horizontal__list lg:flex lg:flex-wrap">\r\n <ng-container *ngFor="let item of getItemList(); index as i">\r\n <li *ngIf="item">\r\n <span *ngIf="item.active; else elseBlock" [attr.id]="getItemId(item, i)"\r\n [class]="[\'c-menu-horizontal__active flex items-center relative py-sm lg:px-lg lg:py-base border border-transparent truncate font-semibold\', item.classes] | makeHtmlList"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n aria-current="page"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n <strong (desyContentEmpty)="handleEmptyItem(i)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </strong>\r\n </span>\r\n <ng-template #elseBlock>\r\n <a *ngIf="item.routerLink && !item.href" (click)="onClick($event, item)"\r\n [attr.id]="getItemId(item, i)"\r\n [routerLink]="item.routerLink"\r\n [fragment]="item.fragment"\r\n [class]="[\'c-menu-horizontal__link relative flex items-center py-sm lg:px-lg lg:py-base border border-transparent text-black hover:text-primary-base underline truncate focus:outline-none\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'no-underline pointer-events-none\': item.disabled}"\r\n [attr.disabled]="item.disabled ? \'disabled\' : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : null"\r\n [attr.tabindex]="item.disabled ? -1 : item.tabindex"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null">\r\n <span class="flex items-center pointer-events-none" (desyContentEmpty)="handleEmptyItem(i)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </span>\r\n </a>\r\n <a *ngIf="!item.routerLink && item.href" (click)="onClick($event, item)"\r\n [attr.id]="getItemId(item, i)"\r\n [href]="item.href | externalHref"\r\n [target]="item.target"\r\n [class]="[\'c-menu-horizontal__link relative flex items-center py-sm lg:px-lg lg:py-base border border-transparent text-black hover:text-primary-base underline truncate focus:outline-none\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'no-underline pointer-events-none\': item.disabled}"\r\n [attr.disabled]="item.disabled ? \'disabled\' : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : null"\r\n [attr.tabindex]="item.disabled ? -1 : item.tabindex"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null">\r\n <span class="flex items-center pointer-events-none" (desyContentEmpty)="handleEmptyItem(i)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </span>\r\n </a>\r\n </ng-template>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</nav>\r\n\x3c!-- /menu-horizontal --\x3e\r\n'}]}],je.propDecorators={id:[{type:t.Input}],idPrefix:[{type:t.Input}],classes:[{type:t.Input}],items:[{type:t.Input}],itemComponents:[{type:t.ContentChildren,args:[Ue]}],clickEvent:[{type:t.Output}]};var $e=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);$e.decorators=[{type:t.Component,args:[{selector:"desy-menu-vertical-item-sub-item",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],$e.propDecorators={id:[{type:t.Input}],classes:[{type:t.Input}],href:[{type:t.Input}],routerLink:[{type:t.Input}],routerLinkActiveClasses:[{type:t.Input}],fragment:[{type:t.Input}],target:[{type:t.Input}],disabled:[{type:t.Input}],active:[{type:t.Input}],divider:[{type:t.Input}],title:[{type:t.Input}]};var We=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);We.decorators=[{type:t.Component,args:[{selector:"desy-menu-vertical-item-sub",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],We.propDecorators={classes:[{type:t.Input}],itemComponents:[{type:t.ContentChildren,args:[$e]}]};var Ye=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Ye.decorators=[{type:t.Component,args:[{selector:"desy-menu-vertical-item",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],Ye.propDecorators={id:[{type:t.Input}],classes:[{type:t.Input}],href:[{type:t.Input}],routerLink:[{type:t.Input}],routerLinkActiveClasses:[{type:t.Input}],fragment:[{type:t.Input}],target:[{type:t.Input}],disabled:[{type:t.Input}],active:[{type:t.Input}],divider:[{type:t.Input}],title:[{type:t.Input}],expanded:[{type:t.Input}],subComponent:[{type:t.ContentChildren,args:[We]}]},m([P()],Ye.prototype,"subComponent",void 0);var Ke=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.handleItemContentEmpty=function(e,t){throw new Error((t?"Item":"Subitem")+" content, html or text ar required at position "+e)},t.prototype.getItemHtml=function(e){return e.active?e.html?"<strong>"+e.html+"</strong>":"<strong>"+M.escapeHtml(e.text)+"</strong>":e.html},t.prototype.getId=function(e,t){if(e.id)return e.id;var r=this.idPrefix?this.idPrefix:"nav-item";return 0===t?r:r+"-"+t},t.prototype.getSubItemId=function(e,t,r){var a,n=this.getItemSub(e),i=this.getSubItems(n)[r];if(i)if(i.id)a=i.id;else{var o=this.getId(e,t);a=0===r?"sub-"+o:"sub-"+o+"-"+r}return a},t.prototype.getItems=function(){var e=this.itemComponents&&this.itemComponents.length>0?this.itemComponents.toArray():this.items;if(!e||0===e.length)throw new Error("items are required");return e},t.prototype.getItemSub=function(e){return e instanceof Ye?e.subComponent:e.sub},t.prototype.getSubItems=function(e){var t=e instanceof We?e.itemComponents.toArray():e.items;return t&&t.length>0?t:null},t}(C);Ke.decorators=[{type:t.Component,args:[{selector:"desy-menu-vertical",template:'\x3c!--\r\n Template para ser utilizado tanto por los items como por los subitems:\r\n - item: Item que representa\r\n - index: indice del item en la lista\r\n - id: identificador del item\r\n - isRoot: si pertenece al nivel raiz\r\n--\x3e\r\n<ng-template #itemTemplate let-item="item" let-index="index" let-id="id" let-sub="sub" let-isRoot="isRoot">\r\n <ng-container *ngIf="item">\r\n <li class="m-base" [ngClass]="{\'origin-top-left text-sm\': !isRoot}">\r\n <ng-container *ngIf="item.href || item.routerLink; else notHref">\r\n <a *ngIf="item.href; else hasRouterLink" [attr.id]="id"\r\n (desyContentEmpty)="handleItemContentEmpty(index, isRoot)"\r\n [href]="item.href | externalHref"\r\n [class]="[\'block px-xs focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\r\n \'underline\': hasUnderline,\r\n \'hover:text-primary-base hover:underline\': !item.disabled,\r\n \'no-underline pointer-events-none\': item.disabled,\r\n \'font-bold\': item.active\r\n }"\r\n [attr.title]="item.title"\r\n [attr.tabindex]="item.disabled ? -1 : null"\r\n [attr.target]="item.target ? item.target : null"\r\n [attr.aria-current]="item.active ? \'page\' : null"\r\n [attr.aria-disabled]="item.disabled"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.disabled]="item.disabled">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: getItemHtml(item), text: item.text }"></ng-container>\r\n </a>\r\n <ng-template #hasRouterLink>\r\n \x3c!-- Todos los enlaces que admiten o href o routerLink estaría bien unificarlos (en todos los componentes).\r\n Para ello, sería necesario crear una directiva para añadir o quitar la directiva routerLink si no tiene href.\r\n Sin embargo, esto no es posible actualmente, ya que Angular todavía no permite añadir directivas dinámicamente:\r\n https://angular.io/guide/roadmap#support-adding-directives-to-host-elements --\x3e\r\n <a [attr.id]="id"\r\n (desyContentEmpty)="handleItemContentEmpty(index, isRoot)"\r\n [routerLink]="item.routerLink" [fragment]="item.fragment ? item.fragment : null"\r\n [routerLinkActive]="item.routerLinkActiveClasses ? item.routerLinkActiveClasses : []"\r\n [class]="[\'block px-xs focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black\', item.classes] | makeHtmlList"\r\n [ngClass]="{\r\n \'underline\': hasUnderline,\r\n \'hover:text-primary-base hover:underline\': !item.disabled,\r\n \'no-underline pointer-events-none\': item.disabled,\r\n \'font-bold\': item.active\r\n }"\r\n [attr.title]="item.title"\r\n [attr.tabindex]="item.disabled ? -1 : null"\r\n [attr.target]="item.target ? item.target : null"\r\n [attr.aria-current]="item.active ? \'page\' : null"\r\n [attr.aria-disabled]="item.disabled"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.disabled]="item.disabled">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: getItemHtml(item), text: item.text }"></ng-container>\r\n </a>\r\n </ng-template>\r\n </ng-container>\r\n <ng-template #notHref>\r\n <span [attr.id]="id"\r\n (desyContentEmpty)="handleItemContentEmpty(index, isRoot)"\r\n [class]="[\'block px-xs\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'font-bold\': item.active}"\r\n\r\n [attr.title]="item.title"\r\n [attr.tabindex]="item.disabled ? -1 : null"\r\n [attr.aria-current]="item.active ? \'page\' : null"\r\n [attr.aria-disabled]="item.disabled"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.disabled]="item.disabled">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: getItemHtml(item), text: item.text }"></ng-container>\r\n </span>\r\n </ng-template>\r\n <ng-container *ngIf="isRoot && sub">\r\n <ul *ngIf="getSubItems(sub)" [ngClass]="sub.classes"\r\n [attr.aria-describedby]="sub.ariaDescribedBy"\r\n [attr.aria-errormessage]="sub.ariaErrorMessage"\r\n [attr.aria-label]="sub.ariaLabel"\r\n [attr.aria-labelledby]="sub.ariaLabelledBy"\r\n [attr.aria-hidden]="sub.ariaHidden"\r\n [attr.aria-disabled]="sub.ariaDisabled"\r\n [attr.aria-controls]="sub.ariaControls"\r\n [attr.aria-current]="sub.ariaCurrent"\r\n [attr.aria-live]="sub.ariaLive"\r\n [attr.aria-expanded]="sub.ariaExpanded"\r\n [attr.aria-haspopup]="sub.ariaHasPopup"\r\n [attr.tabindex]="sub.tabindex">\r\n <ng-container *ngFor="let subItem of getSubItems(sub); index as subIndex">\r\n <ng-container [ngTemplateOutlet]="itemTemplate"\r\n [ngTemplateOutletContext]="{\r\n item: subItem,\r\n id: getSubItemId(item, index, subIndex),\r\n index: subIndex,\r\n isRoot: false\r\n }">\r\n </ng-container>\r\n </ng-container>\r\n </ul>\r\n <div *ngIf="!getSubItems(sub)"\r\n [class]="[\'mb-base px-xs origin-top-left text-sm text-neutral-dark\', sub.classes] | makeHtmlList"\r\n [id]="\'sub-\' + id">\r\n <ng-container *desyCustomInnerContent="{ component: sub, html: sub.html }"></ng-container>\r\n </div>\r\n </ng-container>\r\n </li>\r\n <li *ngIf="item.divider" class="my-sm border-b border-neutral-base" aria-hidden="true">\r\n <div class="sr-only">Separador</div>\r\n </li>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<nav [ngClass]="classes"\r\n [attr.role]="(role ? role : null)"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <ul class="text-base">\r\n <ng-container *ngFor="let item of getItems(); index as index">\r\n <ng-container [ngTemplateOutlet]="itemTemplate"\r\n [ngTemplateOutletContext]="{ item: item, id: getId(item, index), index: index, sub: getItemSub(item), isRoot: true }">\r\n </ng-container>\r\n </ng-container>\r\n </ul>\r\n</nav>\r\n',animations:[a.trigger("displayMenuVertical",[a.state("void",a.style({opacity:"0.0",transform:"scale(0.95)"})),a.state("*",a.style({opacity:"1.0",transform:"scale(1.0)"})),a.transition(":enter",[a.animate("100ms ease-out")])])]}]}],Ke.propDecorators={id:[{type:t.Input}],idPrefix:[{type:t.Input}],items:[{type:t.Input}],hasUnderline:[{type:t.Input}],classes:[{type:t.Input}],itemComponents:[{type:t.ContentChildren,args:[Ye]}]};var Xe=function(){function e(e){this.elementRef=e,this.contentChanged=new t.EventEmitter,this.contentHasBeenChecked=!1}return e.prototype.ngAfterContentChecked=function(){var e=this;this.popupMenu===this.lastPopupMenu&&this.popupMenuItems===this.lastPopupMenuItems&&this.link===this.lastLink&&this.itemContentWrapper===this.lastItemContentWrapper||(setTimeout((function(){return e.contentChanged.emit()})),this.lastPopupMenu=this.popupMenu,this.lastPopupMenuItems=this.popupMenuItems,this.lastLink=this.link,this.lastItemContentWrapper=this.itemContentWrapper),this.contentHasBeenChecked||setTimeout((function(){return e.contentHasBeenChecked=!0}))},e}();Xe.decorators=[{type:t.Directive,args:[{selector:"[desyMenubaritem]"}]}],Xe.ctorParameters=function(){return[{type:t.ElementRef}]},Xe.propDecorators={link:[{type:t.ContentChild,args:["link",{read:t.ElementRef}]}],itemContentWrapper:[{type:t.ContentChild,args:["itemContentWrapper",{read:t.ElementRef}]}],popupMenu:[{type:t.ContentChild,args:["popupMenu",{read:t.ElementRef}]}],popupMenuItems:[{type:t.ContentChildren,args:["popupMenuItem",{read:t.ElementRef,descendants:!0}]}],contentChanged:[{type:t.Output}]};var Qe=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.selected=new t.EventEmitter,r.checkedChange=new t.EventEmitter,r}return u(r,e),r}(v);Qe.decorators=[{type:t.Component,args:[{selector:"desy-menubar-subsubitem",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],Qe.propDecorators={html:[{type:t.Input}],text:[{type:t.Input}],checked:[{type:t.Input}],selected:[{type:t.Output}],checkedChange:[{type:t.Output}]};var Je=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.selected=new t.EventEmitter,r.checkedChange=new t.EventEmitter,r}return u(r,e),r.prototype.getSubItems=function(){return this.subItems.toArray()},r}(v);Je.decorators=[{type:t.Component,args:[{selector:"desy-menubar-subitem",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],Je.propDecorators={text:[{type:t.Input}],html:[{type:t.Input}],checked:[{type:t.Input}],items:[{type:t.Input}],selected:[{type:t.Output}],checkedChange:[{type:t.Output}],subItems:[{type:t.ContentChildren,args:[Qe]}]};var Ze=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.selected=new t.EventEmitter,r}return u(r,e),r.prototype.getSubItems=function(){return this.subItems.toArray()},r}(v);Ze.decorators=[{type:t.Component,args:[{selector:"desy-menubar-item",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],Ze.propDecorators={href:[{type:t.Input}],target:[{type:t.Input}],routerLink:[{type:t.Input}],routerLinkActiveClasses:[{type:t.Input}],fragment:[{type:t.Input}],text:[{type:t.Input}],html:[{type:t.Input}],id:[{type:t.Input}],sub:[{type:t.Input}],classes:[{type:t.Input}],title:[{type:t.Input}],disabled:[{type:t.Input}],active:[{type:t.Input}],selected:[{type:t.Output}],subItems:[{type:t.ContentChildren,args:[Je]}]};var et=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);et.decorators=[{type:t.Component,args:[{selector:"desy-menubar-label",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}],et.propDecorators={classes:[{type:t.Input}]};var tt=function(e){function r(r){var a=e.call(this)||this;return a.changeDetectorRef=r,a.itemsChange=new t.EventEmitter,a.activeItemChange=new t.EventEmitter,a.activeSubItemChange=new t.EventEmitter,a.viewInit=!1,a.currentFocusItemIndex=0,a}return u(r,e),r.prototype.ngOnChanges=function(e){this.viewInit&&this.checkChanges()},r.prototype.ngAfterViewInit=function(){this.viewInit=!0,this.checkChanges()},r.prototype.checkChanges=function(){var e=this;if(this.menuItems){this.menuData=[],this.getItems().forEach((function(t,r){var a={open:!1,currentFocusSubItemIndex:0,currentFocusSubSubItemIndex:0,menuItem:e.menuItems.toArray()[r]};e.menuData.push(a)})),this.viewInit&&this.checkRequired();var t=this.currentFocusItemIndex,r=this.getItems();if(r)for(;!this.isItemFocusable(this.currentFocusItemIndex%r.length)&&(this.currentFocusItemIndex=(this.currentFocusItemIndex+r.length+1)%r.length,this.currentFocusItemIndex!==t););}},r.prototype.handleMenuFocusIn=function(){this.isFocused=!0,this.changeDetectorRef.detectChanges()},r.prototype.handleMenuFocusOut=function(e){this.menubar.nativeElement.contains(e.relatedTarget)||this.closeMenu(),this.isFocused=!1,this.changeDetectorRef.detectChanges()},r.prototype.handleMenuItemClick=function(e,t){if(this.hasPopupMenu(t)){e.preventDefault();var r=this.menuData[t].open;this.closeMenu(),r||this.openMenu(t)}else this.activateMenuItem(t)},r.prototype.handleMenuItemKeydown=function(e,t){var r=this;switch(e.key){case"Enter":case" ":case"ArrowDown":this.hasPopupMenu(t)&&(this.openMenu(t),setTimeout((function(){return r.focusFirstSubItem(t)})),e.stopPropagation(),e.preventDefault());break;case"Escape":this.hasPopupMenu(t)&&this.closeMenu(t),e.stopPropagation(),e.preventDefault();break;case"ArrowLeft":this.focusNextAvailableItem(t,-1),e.stopPropagation(),e.preventDefault();break;case"ArrowRight":this.focusNextAvailableItem(t,1),e.stopPropagation(),e.preventDefault();break;case"ArrowUp":this.hasPopupMenu(t)&&(this.openMenu(t),setTimeout((function(){return r.focusLastSubItem(t)}))),e.stopPropagation(),e.preventDefault();break;case"Home":case"PageUp":this.hasPopupMenu(t)&&this.closeMenu(),this.focusFirstItem(),e.stopPropagation(),e.preventDefault();break;case"End":case"PageDown":this.hasPopupMenu(t)&&this.closeMenu(),this.focusLastItem(),e.stopPropagation(),e.preventDefault();break;default:this.isPrintableChar(e.key)&&(this.focusItemByFirstChar(e.key),e.stopPropagation(),e.preventDefault())}},r.prototype.handleMenuItemMouseOver=function(e){this.focusItem(e,!0)},r.prototype.handlePopupMenuItemClick=function(e,t,r){this.activatePopupMenuItem(e,t,r),this.focusItem(e),this.closeMenu(e)},r.prototype.handlePopupMenuItemKeydown=function(e,t,r,a){var n=this.menuData[t].currentFocusSubItemIndex,i=this.menuData[t].currentFocusSubSubItemIndex,o=this.getItems();switch(e.key){case" ":this.activatePopupMenuItem(t,r,a),this.mustCloseAfterSelectPopupItem(t,r,a)&&(this.closeMenu(t),this.focusItem(t)),e.stopPropagation(),e.preventDefault();break;case"Enter":this.activatePopupMenuItem(t,r,a),this.closeMenu(t),this.focusItem(t),e.stopPropagation(),e.preventDefault();break;case"Escape":this.closeMenu(t),this.focusItem(t),e.stopPropagation(),e.preventDefault();break;case"ArrowUp":this.focusNextAvailableSubItem(t,n,i,-1),e.stopPropagation(),e.preventDefault();break;case"ArrowDown":this.focusNextAvailableSubItem(t,n,i,1),e.stopPropagation(),e.preventDefault();break;case"ArrowLeft":this.closeMenu(t),this.focusItem((t+o.length-1)%o.length),e.stopPropagation(),e.preventDefault();break;case"ArrowRight":this.closeMenu(t),this.focusItem((t+o.length+1)%o.length),e.stopPropagation(),e.preventDefault();break;case"Home":case"PageUp":this.focusFirstSubItem(t),e.stopPropagation(),e.preventDefault();break;case"End":case"PageDown":this.focusLastSubItem(t),e.stopPropagation(),e.preventDefault();break;case"Tab":this.closeMenu(t),this.focusItem(t);break;default:this.isPrintableChar(e.key)&&(this.focusSubItemByFirstChar(t,e.key),e.stopPropagation(),e.preventDefault())}},r.prototype.handlePopupMenuItemMouseOver=function(e,t,r){this.focusSubItem(e,t,r)},r.prototype.checkRequired=function(){if(!this.id)throw Error("id is required");if(!this.ariaLabel)throw Error("ariaLabel is required");var e=this.getItems();if(!e||0===e.length)throw Error("Items are required")},r.prototype.handleEmptyItem=function(e){throw Error(e)},r.prototype.activateMenuItem=function(e){var t=this.getItems();this.activeItemChange.emit(t[e]),t[e]instanceof Ze&&t[e].selected.emit()},r.prototype.activatePopupMenuItem=function(e,t,r){var a=this.getItems(),n=this.getItemSubitems(a[e])[t],i=[];null!=r&&(n=(i=this.getSubItemSubitems(n))[r]);var o=!1;"menuitemcheckbox"===n.role?(n.checked=!n.checked,o=!0):"menuitemradio"===n.role&&(o=!n.checked,i.forEach((function(e){return e.checked=!1})),n.checked=!0),this.itemsChange.emit(a),this.activeSubItemChange.emit(n),(n instanceof Je||n instanceof Qe)&&(n.selected.emit(),o&&n.checkedChange.emit(n.checked))},r.prototype.mustCloseAfterSelectPopupItem=function(e,t,r){var a=this.getItems(),n=this.getItemSubitems(a[e])[t];null!=r&&(n=this.getSubItemSubitems(n)[r]);return"menuitemcheckbox"!==n.role&&"menuitemradio"!==n.role},r.prototype.openMenu=function(e){var t=this.menuData[e].open;this.menuData[e].open=!0,t&&this.activateMenuItem(e)},r.prototype.closeMenu=function(e){null!=e?this.menuData[e].open=!1:this.menuData.forEach((function(e){return e.open=!1}))},r.prototype.hasPopupMenu=function(e){var t=this.getItems(),r=this.getItemSubitems(t[e]);return t[e].sub&&r&&r.length>0},r.prototype.isPrintableChar=function(e){return 1===e.length&&!!e.match(/\S/)},r.prototype.getMenuDataIndex=function(e,t,r){for(var a=0,n=this.getItems(),i=this.getItemSubitems(n[e]),o=0;o<t;o++){var l=i[o],s=this.getSubItemSubitems(l);a+=s&&s.length>0?s.length:1}return null!=r&&(a+=r),a},r.prototype.focusItem=function(e,t){var r=this.menubar.nativeElement.contains(document.activeElement),a=this.menuData[this.currentFocusItemIndex].open;t&&!r||this.menuData[e].menuItem.link.nativeElement.focus(),this.closeMenu(),a&&this.hasPopupMenu(e)&&this.openMenu(e),this.currentFocusItemIndex=e},r.prototype.focusNextAvailableItem=function(e,t){var r=e,a=this.getItems();do{r=(r+a.length+t)%a.length}while(!this.isItemFocusable(r)&&r!==e);r!==e&&this.focusItem(r)},r.prototype.focusFirstItem=function(){this.isItemFocusable(0)?this.focusItem(0):this.focusNextAvailableItem(0,1)},r.prototype.focusLastItem=function(){var e=this.getItems();this.isItemFocusable(e.length-1)?this.focusItem(e.length-1):this.focusNextAvailableItem(e.length-1,-1)},r.prototype.isItemFocusable=function(e){return!this.getItems()[e].disabled},r.prototype.focusItemByFirstChar=function(e){var t=this.menuItems.map((function(e){return e.itemContentWrapper.nativeElement.textContent})),r=this.currentFocusItemIndex,a=-1;do{t[r=(r+t.length+1)%t.length]&&t[r].trim().substr(0,1).toLowerCase()===e.toLowerCase()&&this.isItemFocusable(r)&&(a=r)}while(-1===a&&r!==this.currentFocusItemIndex);a>=0&&this.focusItem(a)},r.prototype.focusSubItem=function(e,t,r){if(this.menuData[e].menuItem.popupMenuItems.length>0){var a=this.getMenuDataIndex(e,t,r);this.menuData[e].currentFocusSubItemIndex=t,this.menuData[e].currentFocusSubSubItemIndex=r;var n=this.menuData[e].menuItem.popupMenuItems.toArray()[a].nativeElement;n?n.focus():console.error("No subitem to focus")}else console.error("No subitems")},r.prototype.focusNextAvailableSubItem=function(e,t,r,a){var n,i=t,o=r,l=this.getItems();do{var s=this.getNextSubItemIndexes(l,e,i,o,a);i=s.subIndex,o=s.subSubIndex,n=t===i&&r===o}while(!this.isSubItemFocusable(e,i,o)&&!n);n||this.focusSubItem(e,i,o)},r.prototype.focusFirstSubItem=function(e){var t=null,r=this.getItems(),a=this.getItemSubitems(r[e]),n=this.getSubItemSubitems(a[0]);n&&n.length>0&&(t=0),this.isSubItemFocusable(e,0,t)?this.focusSubItem(e,0,t):this.focusNextAvailableSubItem(e,0,t,1)},r.prototype.focusLastSubItem=function(e){var t=this.getItems(),r=this.getItemSubitems(t[e]),a=r.length-1,n=r[a],i=this.getSubItemSubitems(n),o=null;i&&i.length>0&&(o=i.length-1),this.isSubItemFocusable(e,a,o)?this.focusSubItem(e,a,o):this.focusNextAvailableSubItem(e,a,o,-1)},r.prototype.isSubItemFocusable=function(e,t,r){var a=this.getItems(),n=this.getItemSubitems(a[e])[t];null!=r&&(n=this.getSubItemSubitems(n)[r]);var i=!1;return"separator"!==n.role&&"none"!==n.role&&(i=!0),i},r.prototype.focusSubItemByFirstChar=function(e,t){var r=this.menuItems.toArray()[e].popupMenuItems.map((function(e){return e.nativeElement.textContent})),a=this.menuData[e].currentFocusSubItemIndex,n=this.menuData[e].currentFocusSubSubItemIndex,i=-1,o=null,l=!1,s=this.getItems();do{var d=this.getNextSubItemIndexes(s,e,a,n,1);a=d.subIndex,n=d.subSubIndex;var p=this.getMenuDataIndex(e,a,n);r[p]&&r[p].trim().substr(0,1).toLowerCase()===t.toLowerCase()&&this.isSubItemFocusable(e,a,n)&&(i=a,o=n),l=this.menuData[e].currentFocusSubItemIndex===a&&this.menuData[e].currentFocusSubSubItemIndex===n}while(-1===i&&!l);i>=0&&this.focusSubItem(e,i,o)},r.prototype.getItems=function(){return this.itemComponentList&&this.itemComponentList.length>0?this.itemComponentList.toArray():this.items},r.prototype.getItemSubitems=function(e){var t=[];return e instanceof Ze&&(t=e.getSubItems()),t&&0!==t.length||(t=e.sub?e.sub.items:[]),t},r.prototype.getSubItemSubitems=function(e){var t=[];return"group"===e.role&&(e instanceof Je&&(t=e.getSubItems()),t&&0!==t.length||(t=e.items?e.items:[])),t},r.prototype.getNextSubItemIndexes=function(e,t,r,a,n){var i=this.getItemSubitems(e[t]),o=this.getSubItemSubitems(i[r]),l=!0;if(o&&o.length>0&&a+n>=0&&a+n<o.length&&(a+=n,l=!1),l){r=(r+n+i.length)%i.length;var s=this.getSubItemSubitems(i[r]);a=s&&s.length>0?((n>0?-1:0)+n+s.length)%s.length:null}return{subIndex:r,subSubIndex:a}},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:this.id+"menubar-item"},r.prototype.getLabelRef=function(){return this.labelComponent?this.labelComponent.getContent():this.labelRef},r.prototype.getLabelContent=function(){var e;return this.labelData?e=this.labelData.html?this.labelData.html:"<p>"+M.escapeHtml(this.labelData.text)+"</p>":this.labelText&&(e="<p>"+M.escapeHtml(this.labelText)+"</p>"),e},r.prototype.getItemId=function(e,t){var r;return e&&(r=e.id?e.id:0===t?this.getIdPrefix():this.getIdPrefix()+"-"+t),r},r.prototype.getPopupStyle=function(e){var t={};if(this.menuData&&e<this.menuData.length){var r=this.menuData[e].menuItem.link.nativeElement.getBoundingClientRect();t=this.menuData[e].open?{position:"absolute",top:r.height-1+"px",left:"0px",zIndex:100,display:"block"}:{zIndex:0,display:"none"}}return t},r.prototype.getSubItemId=function(e,t,r){var a;return e&&(a=e.id?e.id:0===t?"sub-"+r:"sub-"+r+"-"+t),a},r.prototype.getSubSubItemAriaChecked=function(e){var t=null;return"menuitemcheckbox"!==e.role&&"menuitemradio"!==e.role||(t=!!e.checked),t},r}(C);tt.decorators=[{type:t.Component,args:[{selector:"desy-menubar",template:'<div [attr.id]="id" [class]="[\'c-menubar\', classes] | makeHtmlList"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.aria-modal]="ariaModal ? ariaModal : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ng-container *ngIf="getLabelRef()">\r\n <div [id]="id + \'-label\'" [class]="[\'mb-sm\', labelComponent ? labelComponent.classes : (labelData ? labelData.classes : null)] | makeHtmlList">\r\n <ng-container *ngTemplateOutlet="getLabelRef()"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf="!getLabelRef() && (labelData || labelText)">\r\n <div [id]="id + \'-label\'" [class]="[\'mb-sm\', labelData ? labelData.classes : null] | makeHtmlList">\r\n <ng-container *desyCustomInnerContent="{ html: getLabelContent() }"></ng-container>\r\n </div>\r\n </ng-container>\r\n <ul #menubar [id]="id + \'-menubar\'" class="lg:flex lg:flex-wrap" role="menubar"\r\n (focusin)="handleMenuFocusIn()"\r\n (focusout)="handleMenuFocusOut($event)"\r\n [ngClass]="{ \'focus\': isFocused }"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="getLabelRef() || labelData || labelText ? id + \'-label\' : null">\r\n <ng-container *ngFor="let item of getItems(); index as itemIndex">\r\n <li class="relative" role="none" desyMenubaritem (contentChanged)="checkChanges()">\r\n <a *ngIf="item.sub" #link\r\n role="menuitem" aria-haspopup="true" aria-expanded="false"\r\n (click)="handleMenuItemClick($event, itemIndex)"\r\n (keydown)="handleMenuItemKeydown($event, itemIndex)"\r\n (mouseover)="handleMenuItemMouseOver(itemIndex)"\r\n (desyAttributeChange)="checkChanges()" [attributesToCheck]="\'disabled\'"\r\n [id]="getItemId(item, itemIndex)"\r\n [class]="[\'c-menubar__button\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'c-menubar__button--disabled\': item.disabled, \'c-menubar__button--primary\': item.active}"\r\n [attr.disabled]="item.disabled ? item.disabled : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : (item.ariaDisabled ? item.ariaDisabled : null)"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-modal]="item.ariaModal ? item.ariaModal : null"\r\n [attr.tabindex]="item.disabled ? -1 : (itemIndex === currentFocusItemIndex ? 0 : -1)">\r\n <span class="inline-flex self-center max-w-xs align-middle truncate" #itemContentWrapper\r\n (desyContentEmpty)="handleEmptyItem(\'item content, html or text is required at position \' + itemIndex)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text}"></ng-container>\r\n </span>\r\n <svg class="inline-block -mr-2 align-middle -my-px" viewBox="0 0 96 96" aria-hidden="true" fill="currentColor" focusable="false" width="1.5em" height="1.5em"><g><path d="M46.71 58.037a1.823 1.823 0 002.581 0L62.048 45.28a1.823 1.823 0 00-1.29-3.113H35.243a1.823 1.823 0 00-1.291 3.113z"/></g></svg>\r\n </a>\r\n <a *ngIf="item.routerLink && !item.sub" #link #itemContentWrapper\r\n role="menuitem"\r\n (click)="handleMenuItemClick($event, itemIndex)"\r\n (keydown)="handleMenuItemKeydown($event, itemIndex)"\r\n (mouseover)="handleMenuItemMouseOver(itemIndex)"\r\n (desyContentEmpty)="handleEmptyItem(\'item content, html or text is required at position \' + itemIndex)"\r\n (desyAttributeChange)="checkChanges()" [attributesToCheck]="\'disabled\'"\r\n [id]="getItemId(item, itemIndex)"\r\n [routerLink]="item.routerLink"\r\n [routerLinkActive]="item.routerLinkActiveClasses ? item.routerLinkActiveClasses : []"\r\n [fragment]="item.fragment"\r\n [class]="[\'c-menubar__button\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'c-menubar__button--disabled\': item.disabled, \'c-menubar__button--primary\': item.active}"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.disabled]="item.disabled ? item.disabled : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : (item.ariaDisabled ? item.ariaDisabled : null)"\r\n [attr.tabindex]="item.disabled ? -1 : (itemIndex === currentFocusItemIndex ? 0 : -1)"\r\n [attr.target]="item.target ? item.target : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledBy]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.aria-modal]="item.ariaModal ? item.ariaModal : null">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text}"></ng-container>\r\n </a>\r\n <a *ngIf="!item.routerLink && item.href && !item.sub" #link #itemContentWrapper\r\n role="menuitem"\r\n (click)="handleMenuItemClick($event, itemIndex)"\r\n (keydown)="handleMenuItemKeydown($event, itemIndex)"\r\n (mouseover)="handleMenuItemMouseOver(itemIndex)"\r\n (desyContentEmpty)="handleEmptyItem(\'item content, html or text is required at position \' + itemIndex)"\r\n (desyAttributeChange)="checkChanges()" [attributesToCheck]="\'disabled\'"\r\n [id]="getItemId(item, itemIndex)"\r\n [href]="item.href | externalHref"\r\n [class]="[\'c-menubar__button\', item.classes] | makeHtmlList"\r\n [ngClass]="{\'c-menubar__button--disabled\': item.disabled, \'c-menubar__button--primary\': item.active}"\r\n [attr.title]="item.title ? item.title : null"\r\n [attr.disabled]="item.disabled ? item.disabled : null"\r\n [attr.aria-disabled]="item.disabled ? item.disabled : (item.ariaDisabled ? item.ariaDisabled : null)"\r\n [attr.tabindex]="item.disabled ? -1 : (itemIndex === currentFocusItemIndex ? 0 : -1)"\r\n [attr.target]="item.target ? item.target : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledBy]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.aria-modal]="item.ariaModal ? item.ariaModal : null">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text}"></ng-container>\r\n </a>\r\n\r\n <ul *ngIf="item.sub && getItemSubitems(item)" #popupMenu role="menu" tabindex="-1"\r\n [ngStyle]="getPopupStyle(itemIndex)"\r\n [class]="[\'c-menubar__tooltip w-max max-w-64 hidden border border-neutral-base shadow-md bg-white text-sm\', item.sub.classes] | makeHtmlList"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : (item.sub.ariaLabel ? item.sub.ariaLabel : null)"\r\n [attr.aria-describedby]="item.sub.ariaDescribedBy ? item.sub.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.sub.ariaLabelledBy ? item.sub.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.sub.ariaHidden ? item.sub.ariaHidden : null"\r\n [attr.aria-disabled]="item.sub.ariaDisabled ? item.sub.ariaDisabled : null"\r\n [attr.aria-controls]="item.sub.ariaControls ? item.sub.ariaControls : null"\r\n [attr.aria-current]="item.sub.ariaCurrent ? item.sub.ariaCurrent : null"\r\n [attr.aria-live]="item.sub.ariaLive ? item.sub.ariaLive : null"\r\n [attr.aria-expanded]="!!(menuData && menuData[itemIndex].open)"\r\n [attr.aria-errormessage]="item.sub.ariaErrorMessage ? item.sub.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.sub.ariaHasPopup ? item.sub.ariaHasPopup : null"\r\n [attr.aria-modal]="item.sub.ariaModal ? item.sub.ariaModal : null">\r\n <ng-container *ngFor="let subItem of getItemSubitems(item); index as subItemIndex">\r\n <ng-container [ngSwitch]="subItem.role">\r\n <li #popupMenuItem *ngSwitchCase="\'none\'" role="none" tabindex="-1"\r\n [id]="getSubItemId(subItem, subItemIndex, getItemId(item, itemIndex))"\r\n (desyContentEmpty)="handleEmptyItem(\'subitem content, html or text is required at position \' + subItemIndex + \' of item \' + itemIndex)"\r\n (click)="handlePopupMenuItemClick(itemIndex, subItemIndex)"\r\n (mouseover)="handlePopupMenuItemMouseOver(itemIndex, subItemIndex)"\r\n (keydown)="handlePopupMenuItemKeydown($event, itemIndex, subItemIndex)">\r\n <ng-container *desyCustomInnerContent="{ component: subItem, html: subItem.html, text: subItem.text}"></ng-container>\r\n </li>\r\n <li *ngSwitchCase="\'group\'" role="none">\r\n <ul role="group" [id]="getSubItemId(subItem, subItemIndex, getItemId(item, itemIndex))"\r\n [attr.aria-label]="subItem.ariaLabel ? subItem.ariaLabel : null">\r\n <ng-container *ngFor="let subsubitem of getSubItemSubitems(subItem); index as subsubIndex">\r\n <ng-container *ngIf="subsubitem">\r\n <li #popupMenuItem [attr.role]="subsubitem.role ? subsubitem.role : null" tabindex="-1"\r\n [id]="getSubItemId(subsubitem, subsubIndex, getSubItemId(subItem, subItemIndex, getItemId(item, itemIndex)))"\r\n (desyContentEmpty)="handleEmptyItem(\'subsubitem content, html or text is required at position \' + subsubIndex + \' of subItem \' + subItemIndex + \' of item \' + itemIndex)"\r\n (click)="handlePopupMenuItemClick(itemIndex, subItemIndex, subsubIndex)"\r\n (mouseover)="handlePopupMenuItemMouseOver(itemIndex, subItemIndex, subsubIndex)"\r\n (keydown)="handlePopupMenuItemKeydown($event, itemIndex, subItemIndex, subsubIndex)"\r\n [attr.aria-checked]="getSubSubItemAriaChecked(subsubitem)"\r\n class="flex items-center pr-base pl-lg py-sm cursor-pointer hover:bg-primary-base hover:text-white">\r\n <ng-container *desyCustomInnerContent="{ component: subsubitem, html: subsubitem.html, text: subsubitem.text}"></ng-container>\r\n </li>\r\n </ng-container>\r\n </ng-container>\r\n </ul>\r\n </li>\r\n <li #popupMenuItem *ngSwitchCase="\'menuitem\'" role="menuitem" tabindex="-1"\r\n (desyContentEmpty)="handleEmptyItem(\'subitem content, html or text is required at position \' + subItemIndex + \' of item \' + itemIndex)"\r\n (click)="handlePopupMenuItemClick(itemIndex, subItemIndex)"\r\n (mouseover)="handlePopupMenuItemMouseOver(itemIndex, subItemIndex)"\r\n (keydown)="handlePopupMenuItemKeydown($event, itemIndex, subItemIndex)"\r\n [id]="getSubItemId(subItem, subItemIndex, getItemId(item, itemIndex))"\r\n class="flex items-center pr-base pl-lg py-sm cursor-pointer hover:bg-primary-base hover:text-white focus:bg-primary-base focus:text-white focus:outline-none">\r\n <ng-container *desyCustomInnerContent="{ component: subItem, html: subItem.html, text: subItem.text}"></ng-container>\r\n </li>\r\n <li #popupMenuItem *ngSwitchCase="\'menuitemcheckbox\'" role="menuitemcheckbox" tabindex="-1"\r\n (desyContentEmpty)="handleEmptyItem(\'subitem content, html or text is required at position \' + subItemIndex + \' of item \' + itemIndex)"\r\n (click)="handlePopupMenuItemClick(itemIndex, subItemIndex)"\r\n (mouseover)="handlePopupMenuItemMouseOver(itemIndex, subItemIndex)"\r\n (keydown)="handlePopupMenuItemKeydown($event, itemIndex, subItemIndex)"\r\n [id]="getSubItemId(subItem, subItemIndex, getItemId(item, itemIndex))"\r\n [attr.aria-checked]="!!subItem.checked"\r\n class="flex items-center pr-base pl-lg py-sm cursor-pointer hover:bg-primary-base hover:text-white">\r\n <ng-container *desyCustomInnerContent="{ component: subItem, html: subItem.html, text: subItem.text}"></ng-container>\r\n </li>\r\n <li #popupMenuItem *ngSwitchCase="\'separator\'" role="separator"\r\n [id]="getSubItemId(subItem, subItemIndex, getItemId(item, itemIndex))"\r\n class="my-sm border-b border-neutral-base">\r\n </li>\r\n </ng-container>\r\n </ng-container>\r\n </ul>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n</div>\r\n'}]}],tt.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},tt.propDecorators={id:[{type:t.Input}],idPrefix:[{type:t.Input}],classes:[{type:t.Input}],items:[{type:t.Input}],itemsChange:[{type:t.Output}],activeItemChange:[{type:t.Output}],activeSubItemChange:[{type:t.Output}],labelRef:[{type:t.Input}],labelData:[{type:t.Input}],labelText:[{type:t.Input}],menubar:[{type:t.ViewChild,args:["menubar",{read:t.ElementRef}]}],menuItems:[{type:t.ViewChildren,args:[Xe]}],labelComponent:[{type:t.ContentChildren,args:[et]}],itemComponentList:[{type:t.ContentChildren,args:[Ze]}]},m([P()],tt.prototype,"labelComponent",void 0);var rt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);rt.decorators=[{type:t.Component,args:[{selector:"desy-notification-item",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],rt.propDecorators={href:[{type:t.Input}],target:[{type:t.Input}],routerLink:[{type:t.Input}],fragment:[{type:t.Input}],id:[{type:t.Input}]};var at=function(e){function r(r){var a=e.call(this)||this;return a.changeDetectorRef=r,a.isOpen=!0,a.isOpenChange=new t.EventEmitter,a.isDismissing=!1,a.displayDefaultIcon=!1,a}return u(r,e),r.prototype.dismiss=function(){var e=this;this.isDismissing=!0,setTimeout((function(){e.isDismissing=!1,e.isOpenChange.emit(!1)}),75)},r.prototype.getType=function(){var e;return this.type&&(e=this.type.toLocaleLowerCase()),e},r.prototype.getItems=function(){return this.itemCompontents&&this.itemCompontents.length>0?this.itemCompontents.toArray():this.items},r.prototype.handleIconEmpty=function(e){this.displayDefaultIcon=e,this.changeDetectorRef.detectChanges()},r.prototype.handleRequiredEmpty=function(e){throw new Error(e)},r.prototype.ngOnChanges=function(e){if(!this.id)throw new Error("id is required")},r}(C);at.decorators=[{type:t.Component,args:[{selector:"desy-notification",template:'<div [attr.id]="id ? id : null" [class]="(classes ? \'c-notification \' + classes : type==\'success\' ? \'c-notification c-notification--\' + type : type==\'alert\' ? \'c-notification c-notification--\' + type : \'c-notification c-notification--primary\') "\r\n *ngIf="isOpen && !isDismissing"\r\n @displayNotification\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div *ngIf="iconComponent || icon || type" class="h-full mr-base"\r\n (desyContentEmpty)="handleIconEmpty(true)"\r\n (desyContentNotEmpty)="handleIconEmpty(false)">\r\n <ng-container *desyCustomInnerContent="{ component: iconComponent, html: icon ? icon.html : null }"></ng-container>\r\n <ng-container *ngIf="displayDefaultIcon && type">\r\n <ng-container [ngSwitch]="getType()">\r\n <svg *ngSwitchCase="\'success\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-5 h-5 text-success-dark" aria-label="Éxito" focusable="false" role="img"><path d="M39.94 125a19.88 19.88 0 01-15.53-7.81L2.48 92.26a10 10 0 0115-13.2l20.55 23.39a2.5 2.5 0 003.68.08l81-84.42a10.002 10.002 0 1114.5 13.78l-82.02 86.33A19.41 19.41 0 0139.94 125z" fill="currentColor"/></svg>\r\n <svg *ngSwitchCase="\'alert\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-5 h-5 text-alert-base" aria-label="Error" focusable="false" role="img"><path d="M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>\r\n <svg *ngSwitchCase="\'info\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-5 h-5 text-primary-base" aria-label="Información" focusable="false" role="img"><path d="M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm7.5 105a7.5 7.5 0 01-15 0V70a7.5 7.5 0 0115 0zM70 50a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div class="lg:flex flex-1 self-center">\r\n <div class="lg:flex-1 lg:self-center">\r\n <ng-container [ngSwitch]="headingLevel">\r\n <h1 *ngSwitchCase="1" [id]="id ? id + \'-title\' : null" tabindex="-1"\r\n [class]="[\'font-bold pr-base focus:outline-none focus:underline\', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: titleComponent,\r\n html: title ? title.html : null,\r\n text: title ? title.text : null\r\n }"></ng-container>\r\n </h1>\r\n <h2 *ngSwitchCase="2" [id]="id ? id + \'-title\' : null" tabindex="-1"\r\n [class]="[\'font-bold pr-base focus:outline-none focus:underline\', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: titleComponent,\r\n html: title ? title.html : null,\r\n text: title ? title.text : null\r\n }"></ng-container>\r\n </h2>\r\n <h3 *ngSwitchCase="3" [id]="id ? id + \'-title\' : null" tabindex="-1"\r\n [class]="[\'font-bold pr-base focus:outline-none focus:underline\', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: titleComponent,\r\n html: title ? title.html : null,\r\n text: title ? title.text : null\r\n }"></ng-container>\r\n </h3>\r\n <h4 *ngSwitchCase="4" [id]="id ? id + \'-title\' : null" tabindex="-1"\r\n [class]="[\'font-bold pr-base focus:outline-none focus:underline\', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: titleComponent,\r\n html: title ? title.html : null,\r\n text: title ? title.text : null\r\n }"></ng-container>\r\n </h4>\r\n <h5 *ngSwitchCase="5" [id]="id ? id + \'-title\' : null" tabindex="-1"\r\n [class]="[\'font-bold pr-base focus:outline-none focus:underline\', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: titleComponent,\r\n html: title ? title.html : null,\r\n text: title ? title.text : null\r\n }"></ng-container>\r\n </h5>\r\n <p *ngSwitchDefault [id]="id ? id + \'-title\' : null" tabindex="-1"\r\n [class]="[\'font-bold pr-base focus:outline-none focus:underline\', titleComponent ? titleComponent.classes : title.classes] | makeHtmlList"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: titleComponent,\r\n html: title ? title.html : null,\r\n text: title ? title.text : null\r\n }"></ng-container>\r\n </p>\r\n </ng-container>\r\n <ng-container *ngIf="descriptionComponent || description">\r\n <p [class]="descriptionComponent ? descriptionComponent.classes : description.classes"\r\n (desyContentEmpty)="handleRequiredEmpty(\'description content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: descriptionComponent,\r\n html: description ? description.html : null,\r\n text: description ? description.text : null\r\n }"></ng-container>\r\n </p>\r\n </ng-container>\r\n <ul *ngIf="(itemCompontents && itemCompontents.length > 0) || items">\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n <li *ngIf="item.routerLink || item.href">\r\n <a *ngIf="item.routerLink" class="c-link"\r\n [routerLink]="item.routerLink"\r\n [fragment]="item.fragment"\r\n [ngClass]="{\'c-link--alert\': type===\'alert\'}"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.ariaLabel]="item.ariaLabel"\r\n [attr.ariaDescribedBy]="item.ariaDescribedBy"\r\n [attr.ariaLabelledBy]="item.ariaLabelledBy"\r\n [attr.ariaHidden]="item.ariaHidden"\r\n [attr.ariaDisabled]="item.ariaDisabled"\r\n [attr.ariaControls]="item.ariaControls"\r\n [attr.ariaCurrent]="item.ariaCurrent"\r\n [attr.ariaLive]="item.ariaLive"\r\n [attr.ariaExpanded]="item.ariaExpanded"\r\n [attr.ariaErrorMessage]="item.ariaErrorMessage"\r\n [attr.ariaHasPopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex"\r\n (desyContentEmpty)="handleRequiredEmpty(\'item content, html or text are required at position \' + i)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </a>\r\n <a *ngIf="!item.routerLink && item.href" class="c-link"\r\n [href]="item.href | externalHref"\r\n [target]="item.target"\r\n [ngClass]="{\'c-link--alert\': type===\'alert\'}"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.ariaLabel]="item.ariaLabel"\r\n [attr.ariaDescribedBy]="item.ariaDescribedBy"\r\n [attr.ariaLabelledBy]="item.ariaLabelledBy"\r\n [attr.ariaHidden]="item.ariaHidden"\r\n [attr.ariaDisabled]="item.ariaDisabled"\r\n [attr.ariaControls]="item.ariaControls"\r\n [attr.ariaCurrent]="item.ariaCurrent"\r\n [attr.ariaLive]="item.ariaLive"\r\n [attr.ariaExpanded]="item.ariaExpanded"\r\n [attr.ariaErrorMessage]="item.ariaErrorMessage"\r\n [attr.ariaHasPopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex"\r\n (desyContentEmpty)="handleRequiredEmpty(\'item content, html or text are required at position \' + i)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </a>\r\n </li>\r\n <li *ngIf="!item.routerLink && !item.href"\r\n (desyContentEmpty)="handleRequiredEmpty(\'item content, html or text are required at position \' + i)">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n <p *ngIf="contentComponent || content" [class]="[\'text-sm\', contentComponent ? contentComponent.classes : content.classes] | makeHtmlList">\r\n <ng-container *desyCustomInnerContent="{\r\n component: contentComponent,\r\n html: content ? content.html : null,\r\n text: content ? content.text : null\r\n }"></ng-container>\r\n </p>\r\n </div>\r\n <ng-container *ngIf="isDismissible">\r\n <div class="absolute top-0 right-0 p-sm">\r\n <button (click)="dismiss()" class="p-sm focus:bg-warning-base focus:border-warning-base focus:shadow-outline-black focus:text-black focus:outline-none" aria-label="X: Cerrar notificación">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4" aria-hidden="true" role="presentation"><path d="M85.91 71.77a2.5 2.5 0 010-3.54l46.16-46.16a10 10 0 10-14.14-14.14L71.77 54.09a2.5 2.5 0 01-3.54 0L22.07 7.93A10 10 0 007.93 22.07l46.16 46.16a2.5 2.5 0 010 3.54L7.93 117.93a10 10 0 0014.14 14.14l46.16-46.16a2.5 2.5 0 013.54 0l46.16 46.16a10 10 0 0014.14-14.14z" fill="currentColor"/></svg>\r\n </button>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n',animations:[a.trigger("displayNotification",[a.state("void",a.style({opacity:"0.0",transform:"scaleY(0.95)"})),a.state("*",a.style({opacity:"1.0",transform:"scaleY(1.0)"})),a.transition(":enter",[a.animate("100ms ease-out")]),a.transition(":leave",[a.animate("75ms ease-in")])])]}]}],at.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},at.propDecorators={id:[{type:t.Input}],classes:[{type:t.Input}],isOpen:[{type:t.Input}],isOpenChange:[{type:t.Output}],title:[{type:t.Input}],description:[{type:t.Input}],content:[{type:t.Input}],items:[{type:t.Input}],icon:[{type:t.Input}],type:[{type:t.Input}],isDismissible:[{type:t.Input}],headingLevel:[{type:t.Input}],titleComponent:[{type:t.ContentChildren,args:[N]}],descriptionComponent:[{type:t.ContentChildren,args:[A]}],contentComponent:[{type:t.ContentChildren,args:[O]}],iconComponent:[{type:t.ContentChildren,args:[F]}],itemCompontents:[{type:t.ContentChildren,args:[rt]}]},m([P()],at.prototype,"titleComponent",void 0),m([P()],at.prototype,"descriptionComponent",void 0),m([P()],at.prototype,"contentComponent",void 0),m([P()],at.prototype,"iconComponent",void 0);var nt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);nt.decorators=[{type:t.Component,args:[{selector:"desy-table-cell",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],nt.propDecorators={classes:[{type:t.Input}],id:[{type:t.Input}],colspan:[{type:t.Input}],rowspan:[{type:t.Input}]};var it=function(){};it.decorators=[{type:t.Component,args:[{selector:"desy-table-header",template:""}]}],it.propDecorators={cells:[{type:t.ContentChildren,args:[nt]}]};var ot=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);ot.decorators=[{type:t.Component,args:[{selector:"desy-table-caption",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],ot.propDecorators={classes:[{type:t.Input}]};var lt=function(){};lt.decorators=[{type:t.Component,args:[{selector:"desy-table-row",template:""}]}],lt.propDecorators={cells:[{type:t.ContentChildren,args:[nt]}]};var st=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.getCaptionClass=function(){return this.captionComponent?this.captionComponent.classes:this.captionClasses},t.prototype.getHeaderCells=function(){var e=[];return this.headerComponent&&this.headerComponent.cells?e=this.headerComponent.cells.toArray():this.head&&(e=this.head),e},t.prototype.getRows=function(){var e=this.rowComponentList&&this.rowComponentList.length>0?this.rowComponentList.toArray():this.rows;if(!e||0===e.length)throw new Error("rows are required");return e},t.prototype.getRowCells=function(e){return e instanceof lt?e.cells.toArray():e},t.prototype.handleEmptyCell=function(e,t,r){throw e instanceof nt?new Error("Content is required for cell at position "+r+" of row "+t):new Error("Text or Html are required for cell at position "+r+" of row "+t)},t}(C);st.decorators=[{type:t.Component,args:[{selector:"desy-table",template:'<ng-template #tableContent>\r\n <table [class]="[\'c-table\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <caption *ngIf="caption || captionComponent" [class]="getCaptionClass()">\r\n <ng-container *desyCustomInnerContent="{ component: captionComponent, text: caption ? caption : null }"></ng-container>\r\n </caption>\r\n <thead *ngIf="head || headerComponent">\r\n <tr class="border-t border-b border-neutral-base">\r\n <ng-container *ngFor="let headerCell of getHeaderCells()">\r\n <th scope="col"\r\n [class]="[\'align-top px-base py-sm text-left font-normal text-sm text-neutral-dark\', headerCell.classes] | makeHtmlList"\r\n [attr.colspan]="(headerCell.colspan ? headerCell.colspan : null)"\r\n [attr.rowspan]="(headerCell.rowspan ? headerCell.rowspan : null)"\r\n [attr.id]="headerCell.id ? headerCell.id : null"\r\n [attr.role]="headerCell.role"\r\n [attr.aria-describedby]="headerCell.ariaDescribedBy"\r\n [attr.aria-errormessage]="headerCell.ariaErrorMessage"\r\n [attr.aria-label]="headerCell.ariaLabel"\r\n [attr.aria-labelledby]="headerCell.ariaLabelledBy"\r\n [attr.aria-hidden]="headerCell.ariaHidden"\r\n [attr.aria-disabled]="headerCell.ariaDisabled"\r\n [attr.aria-controls]="headerCell.ariaControls"\r\n [attr.aria-current]="headerCell.ariaCurrent"\r\n [attr.aria-live]="headerCell.ariaLive"\r\n [attr.aria-expanded]="headerCell.ariaExpanded"\r\n [attr.aria-haspopup]="headerCell.ariaHasPopup"\r\n [attr.tabindex]="headerCell.tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: headerCell, html: headerCell.html, text: headerCell.text }"></ng-container>\r\n </th>\r\n </ng-container>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor="let row of getRows(); index as rowIndex" class="border-t border-b border-neutral-base">\r\n <ng-container *ngFor="let cell of getRowCells(row); first as isFirst; index as cellIndex">\r\n <th *ngIf="firstCellIsHeader && isFirst; else elseTd" scope="row"\r\n (desyContentEmpty)="handleEmptyCell(cell, rowIndex, cellIndex)"\r\n [class]="[\'align-top px-base py-sm text-left font-normal text-sm text-neutral-dark\', cell.classes] | makeHtmlList"\r\n [attr.colspan]="cell.colspan ? cell.colspan : null"\r\n [attr.rowspan]="cell.rowspan ? cell.rowspan : null"\r\n [attr.id]="cell.id ? cell.id : null"\r\n [attr.role]="cell.role ? cell.role : null"\r\n [attr.aria-label]="cell.ariaLabel ? cell.ariaLabel : null"\r\n [attr.aria-describedby]="cell.ariaDescribedBy ? cell.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="cell.ariaLabelledBy ? cell.ariaLabelledBy : null"\r\n [attr.aria-hidden]="cell.ariaHidden ? cell.ariaHidden : null"\r\n [attr.aria-disabled]="cell.ariaDisabled ? cell.ariaDisabled : null"\r\n [attr.aria-controls]="cell.ariaControls ? cell.ariaControls : null"\r\n [attr.aria-current]="cell.ariaCurrent ? cell.ariaCurrent : null"\r\n [attr.aria-live]="cell.ariaLive ? cell.ariaLive : null"\r\n [attr.aria-expanded]="cell.ariaExpanded ? cell.ariaExpanded : null"\r\n [attr.aria-errormessage]="cell.ariaErrorMessage ? cell.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="cell.ariaHasPopup ? cell.ariaHasPopup : null"\r\n [attr.tabindex]="cell.tabindex ? cell.tabindex : null">\r\n <ng-container *desyCustomInnerContent="{ component: cell, html: cell.html, text: cell.text }"></ng-container>\r\n </th>\r\n <ng-template #elseTd>\r\n <td [class]="[\'px-base py-sm\', cell.classes] | makeHtmlList"\r\n (desyContentEmpty)="handleEmptyCell(cell, rowIndex, cellIndex)"\r\n [attr.colspan]="cell.colspan ? cell.colspan : null"\r\n [attr.rowspan]="cell.rowspan ? cell.rowspan : null"\r\n [attr.id]="cell.id ? cell.id : null"\r\n [attr.role]="cell.role ? cell.role : null"\r\n [attr.aria-label]="cell.ariaLabel ? cell.ariaLabel : null"\r\n [attr.aria-describedby]="cell.ariaDescribedBy ? cell.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="cell.ariaLabelledBy ? cell.ariaLabelledBy : null"\r\n [attr.aria-hidden]="cell.ariaHidden ? cell.ariaHidden : null"\r\n [attr.aria-disabled]="cell.ariaDisabled ? cell.ariaDisabled : null"\r\n [attr.aria-controls]="cell.ariaControls ? cell.ariaControls : null"\r\n [attr.aria-current]="cell.ariaCurrent ? cell.ariaCurrent : null"\r\n [attr.aria-live]="cell.ariaLive ? cell.ariaLive : null"\r\n [attr.aria-expanded]="cell.ariaExpanded ? cell.ariaExpanded : null"\r\n [attr.aria-errormessage]="cell.ariaErrorMessage ? cell.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="cell.ariaHasPopup ? cell.ariaHasPopup : null"\r\n [attr.tabindex]="cell.tabindex ? cell.tabindex : null">\r\n <ng-container *desyCustomInnerContent="{ component: cell, html: cell.html, text: cell.text }"></ng-container>\r\n </td>\r\n </ng-template>\r\n </ng-container>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</ng-template>\r\n\r\n<div *ngIf="wrapper; else tableContent" [class]="wrapper.classes">\r\n <ng-container *ngTemplateOutlet="tableContent"></ng-container>\r\n</div>\r\n'}]}],st.propDecorators={rows:[{type:t.Input}],head:[{type:t.Input}],caption:[{type:t.Input}],captionClasses:[{type:t.Input}],firstCellIsHeader:[{type:t.Input}],classes:[{type:t.Input}],id:[{type:t.Input}],wrapper:[{type:t.Input}],captionComponent:[{type:t.ContentChildren,args:[ot]}],headerComponent:[{type:t.ContentChildren,args:[it]}],rowComponentList:[{type:t.ContentChildren,args:[lt]}]},m([P()],st.prototype,"captionComponent",void 0),m([P()],st.prototype,"headerComponent",void 0);var dt,pt=function(){function e(){}return e.containsAnyWordFrom=function(e,t,r){var a=this,n=[],i=!1,o=this.getSimplifiedString(e);return t&&t.split(" ").length>1&&(n=t.split(" ")),n.push(t),n.forEach((function(e){o&&e&&(r&&o===a.getSimplifiedString(e)||!r&&o.includes(a.getSimplifiedString(e)))&&(i=!0)})),i},e.getSimplifiedString=function(e){var t=e;return e&&(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=(t=e.toLocaleUpperCase().trim()).replace("Á","A")).replace("É","E")).replace("Í","I")).replace("Ó","O")).replace("Ú","U")).replace("À","A")).replace("È","E")).replace("Ì","I")).replace("Ò","O")).replace("Ù","U")).replace("Ä","A")).replace("Ë","E")).replace("Ï","I")).replace("Ö","O")).replace("Ü","U")).replace(",","")).replace(".","")).replace("'","")).replace('"',"")),t},e}();e.OrderBy=void 0,(dt=e.OrderBy||(e.OrderBy={})).none="none",dt.asc="asc",dt.desc="desc";var ct=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);ct.decorators=[{type:t.Component,args:[{selector:"desy-table-advanced-header-cell",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],ct.propDecorators={classes:[{type:t.Input}],id:[{type:t.Input}],colspan:[{type:t.Input}],rowspan:[{type:t.Input}],orderBy:[{type:t.Input}],hasFilter:[{type:t.Input}],filterClasses:[{type:t.Input}]};var ut=function(){};ut.decorators=[{type:t.Component,args:[{selector:"desy-table-advanced-header",template:""}]}],ut.propDecorators={cells:[{type:t.ContentChildren,args:[ct]}]};var mt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);mt.decorators=[{type:t.Component,args:[{selector:"desy-table-advanced-row-cell",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],mt.propDecorators={classes:[{type:t.Input}],id:[{type:t.Input}],colspan:[{type:t.Input}],rowspan:[{type:t.Input}]};var gt=function(){this.checkedChange=new t.EventEmitter};gt.decorators=[{type:t.Component,args:[{selector:"desy-table-advanced-row",template:""}]}],gt.propDecorators={cellsList:[{type:t.ContentChildren,args:[mt]}],id:[{type:t.Input}],checked:[{type:t.Input}],checkedChange:[{type:t.Output}]};var ht=function(){function e(e){this.element=e}return e.prototype.getContent=function(){return this.element.nativeElement.textContent},e}();ht.decorators=[{type:t.Directive,args:[{selector:"[desyCell]"}]}],ht.ctorParameters=function(){return[{type:t.ElementRef}]},ht.propDecorators={row:[{type:t.Input}],rowIndex:[{type:t.Input}],columnIndex:[{type:t.Input}]};var bt=function(){function e(){}return e.prototype.getCell=function(e){return this.contentCells.find((function(t){return t.columnIndex===e}))},e}();bt.decorators=[{type:t.Directive,args:[{selector:"[desyRow]"}]}],bt.propDecorators={contentCells:[{type:t.ContentChildren,args:[ht]}],desyRow:[{type:t.Input}]};var yt=function(r){function a(a,n){var i=r.call(this)||this;return i.el=a,i.changeDetector=n,i.rowsChange=new t.EventEmitter,i.rowsChecked=new t.EventEmitter,i.recalculateTable=new t.EventEmitter,i.orderByType=e.OrderBy,i}return u(a,r),a.prototype.ngAfterViewInit=function(){var e=this.el.nativeElement.querySelector("[tabindex]");e&&e.setAttribute("tabindex","0"),this.recalculateVisibleElements()},a.prototype.recalculateVisibleElements=function(){var e=this.buildRecalculateParams();if(this.recalculateTable.observers.length>0)this.recalculateTable.emit(e),this.changeDetector.markForCheck();else{this.visibleRows=this.getRows(),this.changeDetector.detectChanges();var t=this.filterRows(e,this.rowData.toArray());t=this.sortRows(e,t),this.visibleRows=t.map((function(e){return e.desyRow})),this.changeDetector.detectChanges()}},a.prototype.buildRecalculateParams=function(){var t={filters:[],sort:null},r=this.getHeaderCells();if(r){r.forEach((function(e,r){e.hasFilter&&e.activeFilter&&t.filters.push({columnIndex:r,filterText:e.valueFilter})}));var a=r.findIndex((function(t){return t.orderBy&&t.orderBy!==e.OrderBy.none}));t.sort=a>=0?{columnIndex:a,order:r[a].orderBy}:null}return t},a.prototype.hasFilters=function(){var e=this.getHeaderCells();return!!e&&e.findIndex((function(e){return e.hasFilter}))>=0},a.prototype.getHeaderCells=function(){return this.headerComponent&&this.headerComponent.cells.length>0?this.headerComponent.cells.toArray():this.head},a.prototype.getRows=function(){var e=[];return this.rowComponentList.length>0?e=this.rowComponentList.toArray():this.rows&&(e=this.rows),e},a.prototype.getVisibleRows=function(){return this.recalculateTable.observers.length>0?this.getRows():this.visibleRows},a.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"id-table-row"},a.prototype.getIdHeader=function(e){return this.getIdPrefix()+"-header-"+e},a.prototype.getIdRowCheckbox=function(e){return this.getIdPrefix()+"-checkbox-"+e},a.prototype.getIdHeaderFilter=function(e){return this.getIdPrefix()+"-header-filter-"+e},a.prototype.getCaptionClass=function(){return this.captionComponent?this.captionComponent.classes:this.captionClasses},a.prototype.getStringOrderBy=function(t){return t===e.OrderBy.asc?"ascending":t===e.OrderBy.desc?"descending":t===e.OrderBy.none?"none":void 0},a.prototype.handleTableCellContentEmpty=function(e,t){throw new Error("cell content, html or text are required at row "+e+" and column "+t)},a.prototype.handleCheckboxChange=function(e){e instanceof gt&&e.checkedChange.emit(e.checked),this.notifyCheckedChange()},a.prototype.uncheckAll=function(){this.getRows().forEach((function(e){var t=e.checked&&e instanceof gt;e.checked=!1,t&&e.checkedChange.emit(e.checked)})),this.notifyCheckedChange()},a.prototype.notifyCheckedChange=function(){0===this.rowComponentList.length&&this.rowsChange.emit(this.rows);var e={};this.getRows().forEach((function(t){return e[t.id]=!!t.checked})),this.rowsChecked.emit(e)},a.prototype.handleInputSearch=function(e){e.hasFilter&&(e.activeFilter=!!e.valueFilter,this.uncheckAll()),this.recalculateVisibleElements()},a.prototype.filterRows=function(e,t){var r=t;return e.filters.forEach((function(e){r=r.filter((function(t){return pt.containsAnyWordFrom(t.getCell(e.columnIndex).getContent(),e.filterText)}))})),r},a.prototype.handleSortByColumn=function(t){var r=this,a=this.getHeaderCells();a&&a.forEach((function(a,n){a.orderBy&&(a.orderBy=n===t?r.getNextDirection(a):e.OrderBy.none)})),this.recalculateVisibleElements()},a.prototype.sortRows=function(t,r){var a=this,n=r;if(t.sort){var i=t.sort.columnIndex,o=t.sort.order===e.OrderBy.asc;n=r.sort((function(e,t){return a.compareCellContent(e.getCell(i),t.getCell(i),o)}))}return n},a.prototype.compareCellContent=function(e,t,r){var a=this.cleanCurrency(e.getContent()),n=this.cleanCurrency(t.getContent());return(isNaN(+a)&&isNaN(+n)?a.localeCompare(n,"es",{sensitivity:"base",ignorePunctuation:!0}):a.localeCompare(n,void 0,{numeric:!0}))*(r?1:-1)},a.prototype.getNextDirection=function(t){return t.orderBy===e.OrderBy.none||t.orderBy===e.OrderBy.desc?e.OrderBy.asc:e.OrderBy.desc},a.prototype.cleanCurrency=function(e){return/[\d.,]+[\€]/g.test(e)&&(e=e.replace(/€/g,"")),e},a}(C);yt.decorators=[{type:t.Component,args:[{selector:"desy-table-advanced",template:'<ng-template #tableContent>\r\n <table role="grid"\r\n [class]="[\'c-table-advanced border-t-2 border-b-2 border-neutral-base\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <caption *ngIf="caption || captionComponent" [class]="getCaptionClass()">\r\n <ng-container *desyCustomInnerContent="{ component: captionComponent, text: caption ? caption : null }"></ng-container>\r\n </caption>\r\n <thead *ngIf="getHeaderCells()">\r\n <tr class="border-t border-neutral-base divide-x divide-neutral-base">\r\n <th *ngIf="hasCheckboxes" scope="col" [class]="[\'align-top px-base py-xs\', checkboxClasses] | makeHtmlList">\r\n <span class="sr-only">Seleccionar fila</span>\r\n </th>\r\n <th scope="col" *ngFor="let item of getHeaderCells(); index as iHeader" [id]="getIdHeader(iHeader)"\r\n [attr.aria-sort]="item.orderBy ? getStringOrderBy(item.orderBy) : null"\r\n [class]="[\'align-top px-base py-sm border-neutral-base border-b-0 text-left text-sm font-normal text-neutral-dark\', item.classes] | makeHtmlList"\r\n [attr.colspan]="item.colspan ? item.colspan : null"\r\n [attr.rowspan]="item.rowspan ? item.rowspan : null"\r\n [attr.role]="item.role ? item.role : null"\r\n [attr.aria-label]="item.ariaLabel ? item.ariaLabel : null"\r\n [attr.aria-describedby]="item.ariaDescribedBy ? item.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="item.ariaLabelledBy ? item.ariaLabelledBy : null"\r\n [attr.aria-hidden]="item.ariaHidden ? item.ariaHidden : null"\r\n [attr.aria-disabled]="item.ariaDisabled ? item.ariaDisabled : null"\r\n [attr.aria-controls]="item.ariaControls ? item.ariaControls : null"\r\n [attr.aria-current]="item.ariaCurrent ? item.ariaCurrent : null"\r\n [attr.aria-live]="item.ariaLive ? item.ariaLive : null"\r\n [attr.aria-expanded]="item.ariaExpanded ? item.ariaExpanded : null"\r\n [attr.aria-errormessage]="item.ariaErrorMessage ? item.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="item.ariaHasPopup ? item.ariaHasPopup : null"\r\n [attr.tabindex]="item.tabindex ? item.tabindex : null">\r\n\r\n <span *ngIf="item.orderBy" class="inline-block relative" (click)="handleSortByColumn(iHeader)" desyFocusClickedCell\r\n [attr.tabindex]="item.orderBy ? -1 : null"\r\n [attr.role]="item.orderBy ? \'button\' : null">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n <span class="c-table-advanced__order" *ngIf="item.orderBy">\r\n <span class="sr-only">Pulsa para ordenar por esta columna</span>\r\n <span class="c-table-advanced__ascending" *ngIf="item.orderBy == orderByType.asc">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" aria-hidden="true" width="1em" height="1em"><path d="M112.07 37.93l-35-35a10 10 0 00-14.14 0l-35 35a10 10 0 0014.14 14.14l13.66-13.66A2.5 2.5 0 0160 40.18V130a10 10 0 0020 0V40.18a2.5 2.5 0 014.27-1.77l13.66 13.66a10 10 0 0014.14-14.14z" fill="currentColor"/></svg>\r\n </span>\r\n <span class="c-table-advanced__descending" *ngIf="item.orderBy == orderByType.desc">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" aria-hidden="true" width="1em" height="1em"><path d="M27.93 102.07l35 35a10 10 0 0014.14 0l35-35a10 10 0 00-14.14-14.14l-13.66 13.66A2.5 2.5 0 0180 99.82V10a10 10 0 00-20 0v89.82a2.5 2.5 0 01-4.27 1.77L42.07 87.93a10 10 0 00-14.14 14.14z" fill="currentColor"/></svg>\r\n </span>\r\n <span class="c-table-advanced__none" *ngIf="item.orderBy == orderByType.none">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" class="text-neutral-base" aria-hidden="true" width="1em" height="1em"><path d="M94.7 97.2l-17.2 17.19V25.61L94.7 42.8a7.5 7.5 0 0010.6-10.6l-30-30a7.49 7.49 0 00-10.6 0l-30 30a7.5 7.5 0 0010.6 10.6l17.2-17.19v88.78L45.3 97.2a7.5 7.5 0 10-10.6 10.6l30 30a7.48 7.48 0 0010.6 0l30-30a7.5 7.5 0 00-10.6-10.6z" fill="currentColor"/></svg>\r\n </span>\r\n </span>\r\n </span>\r\n\r\n <span *ngIf="!item.orderBy" class="inline-block relative">\r\n <ng-container *desyCustomInnerContent="{ component: item, html: item.html, text: item.text }"></ng-container>\r\n </span>\r\n </th>\r\n </tr>\r\n </thead>\r\n\r\n <tbody>\r\n <tr class="divide-x divide-neutral-base" *ngIf="hasFilters()">\r\n <td *ngIf="hasCheckboxes" [ngClass]="checkboxClasses"></td>\r\n <td tabindex="-1" *ngFor="let item of getHeaderCells(); index as iHead" desyFocusClickedCell\r\n [class]="[\'align-top px-base pb-sm border-neutral-base border-b-0 text-left text-sm font-normal text-neutral-dark\', item.classes] | makeHtmlList">\r\n <desy-search-bar *ngIf="item.hasFilter"\r\n [(ngModel)]="item.valueFilter" [ngModelOptions]="{standalone: true}"\r\n (clickEvent)="handleInputSearch(item)"\r\n (ngModelChange)="handleInputSearch(item)"\r\n labelText="Buscar en esta columna"\r\n [id]="getIdHeaderFilter(iHead)"\r\n placeholder="Buscar"\r\n [classes]="[\'c-input--sm\', item.filterClasses] | makeHtmlList"\r\n buttonClasses="m-xs p-0.5 text-xs"\r\n [describedBy]="getIdHeader(iHead)"> </desy-search-bar>\r\n </td>\r\n </tr>\r\n\r\n\r\n <tr *ngFor="let row of getVisibleRows(); index as iRow" class="border-t border-b border-neutral-base hover:bg-neutral-lighter"\r\n [desyRow]="row"\r\n [ngClass]="{\'bg-neutral-light\': hasCheckboxes && row.checked }">\r\n <td *ngIf="hasCheckboxes" desyFocusClickedCell [class]="[\'px-base py-sm\', checkboxClasses] | makeHtmlList"\r\n tabindex="-1" >\r\n <div class="c-checkboxes c-checkboxes--sm">\r\n <div>\r\n <div class="relative flex items-start">\r\n <div class="flex items-center mx-sm">\r\n <input type="checkbox" class="w-6 h-6 transition duration-150 ease-in-out border-black focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-offset-0 focus:ring-warning-base disabled:bg-neutral-light disabled:border-neutral-base text-primary-base"\r\n [(ngModel)]="row.checked" (ngModelChange)="handleCheckboxChange(row)"\r\n [id]="getIdRowCheckbox(iRow)"\r\n [name]="getIdRowCheckbox(iRow)"\r\n [attr.aria-label]="\'Fila \' + iRow">\r\n </div>\r\n <div class="pt-0.5 leading-5">\r\n <label class="sr-only block text-sm -mt-1" [for]="getIdRowCheckbox(iRow)">Selecciona fila {{ iRow }}</label>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </td>\r\n <ng-container *ngFor="let cell of row.cellsList; first as isFirstCell; index as columnIndex">\r\n <th *ngIf="firstCellIsHeader && isFirstCell; else elseTd" scope="row"\r\n [class]="[\'px-base py-xs border-neutral-base border-b-0 border-r text-left font-normal text-sm text-neutral-dark\', cell.classes] | makeHtmlList"\r\n desyCell [row]="row" [rowIndex]="iRow" [columnIndex]="columnIndex"\r\n (desyContentEmpty)="handleTableCellContentEmpty(iRow, columnIndex)"\r\n [attr.colspan]="cell.colspan ? cell.colspan : null"\r\n [attr.rowspan]="cell.rowspan ? cell.rowspan : null"\r\n [attr.id]="cell.id ? cell.id : null"\r\n [attr.role]="cell.role ? cell.role : null"\r\n [attr.aria-label]="cell.ariaLabel ? cell.ariaLabel : null"\r\n [attr.aria-describedby]="cell.ariaDescribedBy ? cell.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="cell.ariaLabelledBy ? cell.ariaLabelledBy : null"\r\n [attr.aria-hidden]="cell.ariaHidden ? cell.ariaHidden : null"\r\n [attr.aria-disabled]="cell.ariaDisabled ? cell.ariaDisabled : null"\r\n [attr.aria-controls]="cell.ariaControls ? cell.ariaControls : null"\r\n [attr.aria-current]="cell.ariaCurrent ? cell.ariaCurrent : null"\r\n [attr.aria-live]="cell.ariaLive ? cell.ariaLive : null"\r\n [attr.aria-expanded]="cell.ariaExpanded ? cell.ariaExpanded : null"\r\n [attr.aria-errormessage]="cell.ariaErrorMessage ? cell.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="cell.ariaHasPopup ? cell.ariaHasPopup : null"\r\n [attr.tabindex]="cell.tabindex ? cell.tabindex : null">\r\n <ng-container *desyCustomInnerContent="{ component: cell, html: cell.html, text: cell.text }"></ng-container>\r\n </th>\r\n <ng-template #elseTd>\r\n <td tabindex="-1" desyFocusClickedCell\r\n [class]="[\'px-base py-sm\', cell.classes] | makeHtmlList"\r\n desyCell [row]="row" [rowIndex]="iRow" [columnIndex]="columnIndex"\r\n (desyContentEmpty)="handleTableCellContentEmpty(iRow, columnIndex)"\r\n [attr.colspan]="cell.colspan ? cell.colspan : null"\r\n [attr.rowspan]="cell.rowspan ? cell.rowspan : null"\r\n [attr.id]="cell.id ? cell.id : null"\r\n [attr.role]="cell.role ? cell.role : null"\r\n [attr.aria-label]="cell.ariaLabel ? cell.ariaLabel : null"\r\n [attr.aria-describedby]="cell.ariaDescribedBy ? cell.ariaDescribedBy : null"\r\n [attr.aria-labelledby]="cell.ariaLabelledBy ? cell.ariaLabelledBy : null"\r\n [attr.aria-hidden]="cell.ariaHidden ? cell.ariaHidden : null"\r\n [attr.aria-disabled]="cell.ariaDisabled ? cell.ariaDisabled : null"\r\n [attr.aria-controls]="cell.ariaControls ? cell.ariaControls : null"\r\n [attr.aria-current]="cell.ariaCurrent ? cell.ariaCurrent : null"\r\n [attr.aria-live]="cell.ariaLive ? cell.ariaLive : null"\r\n [attr.aria-expanded]="cell.ariaExpanded ? cell.ariaExpanded : null"\r\n [attr.aria-errormessage]="cell.ariaErrorMessage ? cell.ariaErrorMessage : null"\r\n [attr.aria-haspopup]="cell.ariaHasPopup ? cell.ariaHasPopup : null"\r\n [attr.tabindex]="cell.tabindex ? cell.tabindex : -1">\r\n <ng-container *desyCustomInnerContent="{ component: cell, html: cell.html, text: cell.text }"></ng-container>\r\n </td>\r\n </ng-template>\r\n </ng-container>\r\n </tr>\r\n </tbody>\r\n </table>\r\n</ng-template>\r\n\r\n<div *ngIf="wrapper; else tableContent" [class]="wrapper.classes">\r\n <ng-container *ngTemplateOutlet="tableContent"></ng-container>\r\n</div>\r\n'}]}],yt.ctorParameters=function(){return[{type:t.ElementRef},{type:t.ChangeDetectorRef}]},yt.propDecorators={rows:[{type:t.Input}],head:[{type:t.Input}],caption:[{type:t.Input}],captionClasses:[{type:t.Input}],firstCellIsHeader:[{type:t.Input}],hasCheckboxes:[{type:t.Input}],idPrefix:[{type:t.Input}],classes:[{type:t.Input}],checkboxClasses:[{type:t.Input}],id:[{type:t.Input}],wrapper:[{type:t.Input}],captionComponent:[{type:t.ContentChildren,args:[ot]}],headerComponent:[{type:t.ContentChildren,args:[ut]}],rowComponentList:[{type:t.ContentChildren,args:[gt]}],rowData:[{type:t.ViewChildren,args:[bt]}],rowsChange:[{type:t.Output}],rowsChecked:[{type:t.Output}],recalculateTable:[{type:t.Output}]},m([P()],yt.prototype,"captionComponent",void 0),m([P()],yt.prototype,"headerComponent",void 0);var ft=function(e){function r(r,a){var n=e.call(this)||this;return n.cdRef=r,n.factoryResolver=a,n.activeChange=new t.EventEmitter,n.lastActiveState=void 0,n.hasViewinit=!1,n.createdCallerFromType=!1,n}return u(r,e),Object.defineProperty(r.prototype,"active",{get:function(){return this._active},set:function(e){var t=this;setTimeout((function(){t._active=e,t.cdRef.detectChanges(),t.handleActiveState()}))},enumerable:!1,configurable:!0}),r.prototype.ngOnDestroy=function(){this.active=!1},r.prototype.ngAfterViewInit=function(){if(!this.id)throw Error("id is required");if(!this.caller&&!this.callerType)throw Error("caller is required");this.hasViewinit=!0,this.handleActiveState()},r.prototype.dismiss=function(){this.activeChange.emit(!1)},r.prototype.handleActiveState=function(){if(this._active&&this.callerType&&!this.createdCallerFromType){var e=this.factoryResolver.resolveComponentFactory(this.callerType),t=this.container.createComponent(e);this.onCallerCreationCallback&&this.onCallerCreationCallback(this,t),this.createdCallerFromType=!0}if(this._active!==this.lastActiveState&&this.hasViewinit&&(this.lastActiveState=this._active,this._active&&this.focusFirst)){this.cdRef.detectChanges();var r=H.getFirstFocusableElement(this.alertWrapper.nativeElement);r&&r.focus()}},r}(C);ft.decorators=[{type:t.Component,args:[{selector:"desy-alert",template:'<div #alertWrapper\r\n [id]="id" [class]="classes ? classes : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.aria-modal]="ariaModal ? ariaModal : null">\r\n <ng-container *ngIf="active">\r\n <ng-template #container></ng-template>\r\n <ng-container *ngTemplateOutlet="caller; context:callerContext"></ng-container>\r\n </ng-container>\r\n</div>\r\n\r\n'}]}],ft.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:t.ComponentFactoryResolver}]},ft.propDecorators={alertWrapper:[{type:t.ViewChild,args:["alertWrapper"]}],container:[{type:t.ViewChild,args:["container",{read:t.ViewContainerRef}]}],id:[{type:t.Input}],classes:[{type:t.Input}],caller:[{type:t.Input}],focusFirst:[{type:t.Input}],active:[{type:t.Input}],activeChange:[{type:t.Output}]};var Ct=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Ct.decorators=[{type:t.Component,args:[{selector:"desy-accordion-header",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],Ct.propDecorators={classes:[{type:t.Input}]};var vt=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.openChange=new t.EventEmitter,r}return u(r,e),r}(C);vt.decorators=[{type:t.Component,args:[{selector:"desy-accordion-item",template:""}]}],vt.propDecorators={id:[{type:t.Input}],open:[{type:t.Input}],classes:[{type:t.Input}],openChange:[{type:t.Output}],headerComponent:[{type:t.ContentChildren,args:[Ct]}],contentComponent:[{type:t.ContentChildren,args:[O]}]},m([P()],vt.prototype,"headerComponent",void 0),m([P()],vt.prototype,"contentComponent",void 0);var xt=function(e){function t(){var t=e.apply(this,f(arguments))||this;return t.showAll=!0,t}return u(t,e),t.prototype.ngOnChanges=function(e){if(!this.idPrefix)throw new Error("idPrefix is required")},t.prototype.getItemId=function(e,t){return e.id?e.id:0===t?this.idPrefix?this.idPrefix:void 0:this.idPrefix?this.idPrefix+"-"+t:t},t.prototype.changeAll=function(){var e=this;this.getItems().forEach((function(t){var r=t.open!==e.showAll;t.open=e.showAll,r&&t instanceof vt&&t.openChange.emit(t.open)})),this.showAll=!this.showAll},t.prototype.toggleItem=function(e){if(!e.open||this.allowToggle){var t=!e.open;if(!this.allowMultiple)this.getItems().forEach((function(t){var r=t.open;t.open=!1,r&&t!==e&&t instanceof vt&&t.openChange.emit(t.open)}));e.open=t,e instanceof vt&&e.openChange.emit(e.open)}},t.prototype.focusFirstItem=function(e){e.preventDefault(),this.itemSelectors.toArray()[0].nativeElement.focus()},t.prototype.focusLastItem=function(e){e.preventDefault(),this.itemSelectors.toArray()[this.itemSelectors.length-1].nativeElement.focus()},t.prototype.focusNextItem=function(e,t){e.preventDefault();var r=this.itemSelectors.toArray();null!=r[(t+1)%r.length]&&r[(t+1)%r.length].nativeElement.focus()},t.prototype.focusPreviousItem=function(e,t){e.preventDefault();var r=this.itemSelectors.toArray();null!=r[(t+r.length-1)%r.length]&&r[(t+r.length-1)%r.length].nativeElement.focus()},t.prototype.selectItem=function(e){this.currentItem=e},t.prototype.getTitleClasses=function(){var e="c-h2 mb-base";return this.headingComponent&&this.headingComponent.classes?e=this.headingComponent.classes:this.heading&&this.heading.classes&&(e=this.heading.classes),e},t.prototype.getItems=function(){var e=this.itemComponentList&&this.itemComponentList.length>0?this.itemComponentList.toArray():this.items;if(!e||0===e.length)throw new Error("items are required");return e},t.prototype.getItemHeader=function(e){return e instanceof vt?e.headerComponent:null},t.prototype.getItemContent=function(e){return e instanceof vt?e.contentComponent:null},t.prototype.handleRequiredEmpty=function(e){throw new Error(e)},t}(C);xt.decorators=[{type:t.Component,args:[{selector:"desy-accordion",template:'<div [class]="classes"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div class="flex justify-between">\r\n <ng-container *ngIf="headingComponent || heading">\r\n <ng-container [ngSwitch]="headingLevel > 0 && headingLevel < 6 ? headingLevel : 2">\r\n <h1 *ngSwitchCase="1" [class]="getTitleClasses()" (desyContentEmpty)="handleRequiredEmpty(\'heading content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }"></ng-container>\r\n </h1>\r\n <h2 *ngSwitchCase="2" [class]="getTitleClasses()" (desyContentEmpty)="handleRequiredEmpty(\'heading content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }"></ng-container>\r\n </h2>\r\n <h3 *ngSwitchCase="3" [class]="getTitleClasses()" (desyContentEmpty)="handleRequiredEmpty(\'heading content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }"></ng-container>\r\n </h3>\r\n <h4 *ngSwitchCase="4" [class]="getTitleClasses()" (desyContentEmpty)="handleRequiredEmpty(\'heading content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }"></ng-container>\r\n </h4>\r\n <h5 *ngSwitchCase="5" [class]="getTitleClasses()" (desyContentEmpty)="handleRequiredEmpty(\'heading content, html or text are required\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: headingComponent ? headingComponent : null,\r\n html: heading ? heading.html : null,\r\n text: heading ? heading.text : null\r\n }"></ng-container>\r\n </h5>\r\n </ng-container>\r\n <button *ngIf="showControl" (click)="changeAll()"\r\n class="ml-auto py-base text-sm text-neutral-dark underline focus:text-black focus:bg-warning-base focus:outline-none focus:shadow-outline-focus">\r\n {{showAll ? \'Mostrar\' : \'Ocultar\'}} todo\r\n </button>\r\n </ng-container>\r\n </div>\r\n <div class="Accordion">\r\n <div *ngFor="let item of getItems(); index as i" class="-my-px px-xs py-sm border-t border-b border-neutral-base"\r\n (keydown.home)="focusFirstItem($event)"\r\n (keydown.end)="focusLastItem($event)"\r\n (keydown.arrowup)="focusPreviousItem($event, i)"\r\n (keydown.arrowdown)="focusNextItem($event, i)"\r\n (click)="selectItem(i)">\r\n\r\n <ng-container [ngSwitch]="headingLevel > 0 && headingLevel < 6 ? headingLevel : 2">\r\n <h2 *ngSwitchCase="1"><ng-container *ngTemplateOutlet="itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}"></ng-container></h2>\r\n <h3 *ngSwitchCase="2"><ng-container *ngTemplateOutlet="itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}"></ng-container></h3>\r\n <h4 *ngSwitchCase="3"><ng-container *ngTemplateOutlet="itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}"></ng-container></h4>\r\n <h5 *ngSwitchCase="4"><ng-container *ngTemplateOutlet="itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}"></ng-container></h5>\r\n <h6 *ngSwitchCase="5"><ng-container *ngTemplateOutlet="itemHeaderContent; context: {item: item, id: getItemId(item, i), index: i}"></ng-container></h6>\r\n </ng-container>\r\n <p class="sr-only" aria-hidden="true">Haz click en el botón anterior para mostrar u ocultar</p>\r\n <div *ngIf="item.open" class="Accordion-panel"\r\n (desyContentEmpty)="handleRequiredEmpty(\'item content, html or text are required at position \' + i)"\r\n [attr.id]="getItemId(item, i)"\r\n [attr.role]="(item.role ? role : \'accordion\')"\r\n [attr.aria-selected]="currentItem === i ? \'true\' : \'false\'"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-controls]="\'accordion-\' + getItemId(item, i)"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup">\r\n <ng-container *desyCustomInnerContent="{ component: getItemContent(item), html: item.html, text: item.text }"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #itemHeaderContent let-item="item" let-id="id" let-index="index">\r\n <button #itemSelector [id]="id + \'-title\'" class="Accordion-trigger group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black"\r\n (desyContentEmpty)="handleRequiredEmpty(\'item heading content, html or text are required at position \' + index)"\r\n [attr.aria-controls]="id" [attr.aria-expanded]="item.open" (click)="toggleItem(item)">\r\n <ng-container *desyCustomInnerContent="{ component: getItemHeader(item), html: item.headerHtml, text: item.headerText }"></ng-container>\r\n <span #desyContentEmptyIgnore *ngIf="allowToggle || !item.open" class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black pointer-events-none" aria-hidden="true">\r\n {{ item.open ? \'Ocultar\' : \'Mostrar\' }}\r\n </span>\r\n </button>\r\n</ng-template>\r\n'}]}],xt.propDecorators={itemSelectors:[{type:t.ViewChildren,args:["itemSelector"]}],idPrefix:[{type:t.Input}],allowToggle:[{type:t.Input}],allowMultiple:[{type:t.Input}],heading:[{type:t.Input}],headingLevel:[{type:t.Input}],showControl:[{type:t.Input}],items:[{type:t.Input}],classes:[{type:t.Input}],headingComponent:[{type:t.ContentChildren,args:[Ct]}],itemComponentList:[{type:t.ContentChildren,args:[vt]}]},m([P()],xt.prototype,"headingComponent",void 0);var It=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(C);It.decorators=[{type:t.Component,args:[{selector:"desy-spinner",template:'<div [class]="\'c-spinner\' + (classes ? \' \' + classes : \'\')" data-module="c-spinner"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <p *ngIf="text" class="sr-only" role="alert" aria-live="assertive">{{text}}</p>\r\n</div>\r\n'}]}],It.propDecorators={classes:[{type:t.Input}],text:[{type:t.Input}],id:[{type:t.Input}]};var Dt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.ngOnInit=function(){Et(this.summaryText,this.summaryHtml)},t.prototype.ngOnChanges=function(e){Et(this.summaryText,this.summaryHtml)},t}(C);function Et(e,t){if(!t&&!e)throw new Error("summaryHtml or summaryText are required")}Dt.decorators=[{type:t.Component,args:[{selector:"desy-details",template:'<details \r\n [attr.id]="id ? id : null"\r\n [class]="classes"\r\n [attr.open]="open ? open : null"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <summary class="py-sm cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black">\r\n <span [desyInnerContent]="summaryHtml ? summaryHtml : summaryText" [isHtml]="summaryHtml"\r\n [class]="summaryClasses ? summaryClasses : \'c-link\'"></span>\r\n </summary>\r\n <div class="py-sm">\r\n <div [ngClass]="containerClasses">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</details> \r\n\r\n'}]}],Dt.propDecorators={summaryText:[{type:t.Input}],summaryHtml:[{type:t.Input}],summaryClasses:[{type:t.Input}],containerClasses:[{type:t.Input}],id:[{type:t.Input}],open:[{type:t.Input}],classes:[{type:t.Input}]};var Lt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Lt.decorators=[{type:t.Component,args:[{selector:"desy-term",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],Lt.propDecorators={classes:[{type:t.Input}],id:[{type:t.Input}]};var wt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);wt.decorators=[{type:t.Component,args:[{selector:"desy-definition",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],wt.propDecorators={classes:[{type:t.Input}],id:[{type:t.Input}]};var Ht=function(){};Ht.decorators=[{type:t.Component,args:[{selector:"desy-description-item",template:""}]}],Ht.propDecorators={term:[{type:t.ContentChildren,args:[Lt]}],definition:[{type:t.ContentChildren,args:[wt]}],classes:[{type:t.Input}],id:[{type:t.Input}]},m([P()],Ht.prototype,"term",void 0),m([P()],Ht.prototype,"definition",void 0);var kt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.handleContentEmpty=function(e){throw new Error(e+" content, html or text is required")},t.prototype.getItems=function(){var e=this.itemComponents.length>0?this.itemComponents.toArray():this.items;if(!e||0===e.length)throw new Error("items are required");return e},t}(C);kt.decorators=[{type:t.Component,args:[{selector:"desy-description-list",template:'<dl [class]="classes"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <div *ngFor="let item of getItems()"\r\n [class]="item.classes"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <dt [class]="(item.term.classes ? item.term.classes : \'text-sm text-neutral-dark\')"\r\n (desyContentEmpty)="handleContentEmpty(\'term\')"\r\n [attr.id]="item.term.id ? item.term.id : null"\r\n [attr.role]="item.term.role"\r\n [attr.aria-describedby]="item.term.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.term.ariaErrorMessage"\r\n [attr.aria-label]="item.term.ariaLabel"\r\n [attr.aria-labelledby]="item.term.ariaLabelledBy"\r\n [attr.aria-hidden]="item.term.ariaHidden"\r\n [attr.aria-disabled]="item.term.ariaDisabled"\r\n [attr.aria-controls]="item.term.ariaControls"\r\n [attr.aria-current]="item.term.ariaCurrent"\r\n [attr.aria-live]="item.term.ariaLive"\r\n [attr.aria-expanded]="item.term.ariaExpanded"\r\n [attr.aria-haspopup]="item.term.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: item.term, html: item.term.html, text: item.term.text}"></ng-container>\r\n </dt>\r\n <dd [class]="(item.definition.classes ? item.definition.classes : \'text-base text-black\')"\r\n (desyContentEmpty)="handleContentEmpty(\'definition\')"\r\n [attr.id]="item.definition.id ? item.definition.id : null"\r\n [attr.role]="item.definition.role"\r\n [attr.aria-describedby]="item.definition.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.definition.ariaErrorMessage"\r\n [attr.aria-label]="item.definition.ariaLabel"\r\n [attr.aria-labelledby]="item.definition.ariaLabelledBy"\r\n [attr.aria-hidden]="item.definition.ariaHidden"\r\n [attr.aria-disabled]="item.definition.ariaDisabled"\r\n [attr.aria-controls]="item.definition.ariaControls"\r\n [attr.aria-current]="item.definition.ariaCurrent"\r\n [attr.aria-live]="item.definition.ariaLive"\r\n [attr.aria-expanded]="item.definition.ariaExpanded"\r\n [attr.aria-haspopup]="item.definition.ariaHasPopup"\r\n [attr.tabindex]="item.tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: item.definition, html: item.definition.html, text: item.definition.text}"></ng-container>\r\n </dd>\r\n </div>\r\n</dl>\r\n'}]}],kt.propDecorators={items:[{type:t.Input}],itemComponents:[{type:t.ContentChildren,args:[Ht]}],classes:[{type:t.Input}],id:[{type:t.Input}]};var Mt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.isOpen=function(){this.open=!this.open,this.toggleOpen()},t.prototype.toggleOpen=function(){this.open?this.show="Ocultar":this.show="Mostrar"},t.prototype.ngOnInit=function(){I(this.text,this.html),this.toggleOpen()},t.prototype.ngOnChanges=function(e){I(this.text,this.html),this.toggleOpen()},t.prototype.headerTextOrheaderHtmlRequiredFunction=function(e,t,r){if(!t&&!e&&!r)throw new Error("headerHtml or headerText are required")},t}(E);Mt.decorators=[{type:t.Component,args:[{selector:"desy-collapsible",template:'<div [class]="(classes ? classes : \'-my-px py-sm border-t border-b border-neutral-base\')"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <h3> \r\n <button *ngIf="headerText && !headerHtml" (click)="isOpen()" [attr.id]="id ? (id + \'-title\') : null"\r\n class="group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black" \r\n [attr.aria-expanded]="open"\r\n [attr.aria-controls]="id ? id : null">{{ headerText }}\r\n <span class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black" aria-hidden="true">{{show}}</span>\r\n </button>\r\n <button *ngIf="headerHtml" (click)="isOpen()" [attr.id]="id ? (id + \'-title\') : null"\r\n class="group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black" \r\n [attr.aria-expanded]="open"\r\n [attr.aria-controls]="id ? id : null"><ng-container *ngTemplateOutlet="tmpHtml"></ng-container>\r\n <span class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black" aria-hidden="true">{{show}}</span>\r\n </button>\r\n <button *ngIf="!headerHtml && !headerText" (click)="isOpen()" [attr.id]="id ? (id + \'-title\') : null"\r\n class="group relative w-full py-sm font-semibold text-left cursor-pointer focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black" \r\n [attr.aria-expanded]="open"\r\n [attr.aria-controls]="id ? id : null">\r\n <ng-content></ng-content>\r\n <span class="absolute inset-y-0 right-0 py-sm font-normal text-sm text-neutral-dark underline group-focus:text-black" aria-hidden="true">{{show}}</span>\r\n </button>\r\n </h3>\r\n <div *ngIf="open && html" @displayCollapsible [attr.id]="(id ? id : null)" class="py-sm">\r\n <ng-container *ngTemplateOutlet="html"></ng-container>\r\n </div>\r\n <div *ngIf="open && !html" @displayCollapsible [attr.id]="(id ? id : null)" class="py-sm">\r\n <p [desyInnerContent]="text"></p>\r\n </div>\r\n</div>\r\n\r\n<ng-template #tmpHtml>\r\n <div [outerHTML]="headerHtml | innerHtml"></div> \r\n </ng-template>\r\n',animations:[a.trigger("displayCollapsible",[a.state("void",a.style({opacity:"0.0",transform:"scaleY(0.95)"})),a.state("*",a.style({opacity:"1.0",transform:"scaleY(1.0)"})),a.transition(":enter",[a.animate("100ms ease-out")]),a.transition(":leave",[a.animate("75ms ease-in")])])]}]}],Mt.propDecorators={headerText:[{type:t.Input}],headerHtml:[{type:t.Input}],id:[{type:t.Input}],open:[{type:t.Input}],classes:[{type:t.Input}]};var Bt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Bt.decorators=[{type:t.Component,args:[{selector:"desy-item-content-right",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}];var Tt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Tt.decorators=[{type:t.Component,args:[{selector:"desy-item-content-bottom",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],Tt.propDecorators={classes:[{type:t.Input}]};var Pt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Pt.decorators=[{type:t.Component,args:[{selector:"desy-item-item",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}];var Rt=function(e){function t(t){var r=e.call(this)||this;return r.changeDetectorRef=t,r.hasIconContent=!0,r}return u(t,e),t.prototype.ngAfterViewInit=function(){if(!this.titleComponent&&!this.title)throw new Error("title is required")},t.prototype.getItems=function(){return this.itemComponents.length>0?this.itemComponents.toArray():this.items},t.prototype.handleIconContentEmpty=function(e){this.hasIconContent=!e,this.changeDetectorRef.detectChanges()},t.prototype.handleRequiredEmpty=function(e){throw new Error(e)},t.prototype.getTitle=function(){return this.titleComponent?this.titleComponent:this.title},t}(C);Rt.decorators=[{type:t.Component,args:[{selector:"desy-item",template:'<div [class]="[\'flex flex-wrap p-base bg-white border border-neutral-base rounded\', classes] | makeHtmlList"\r\n [attr.id]="id ? id : null">\r\n <div class="self-center h-full mr-lg" *ngIf="isDraggable || isLocked">\r\n <svg *ngIf="isDraggable && !isLocked" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-5 h-5 text-neutral-base" aria-hidden="true" focusable="false"><g fill="currentColor"><path d="M41 28a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M79.999 28a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M41 70a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M79.999 70a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M41 112a10 10 0 1010-10 10 10 0 00-10 10z"/><path d="M79.999 112a10 10 0 1010-10 10 10 0 00-10 10z"/></g></svg>\r\n <svg *ngIf="isLocked && !isDraggable" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-base h-base text-neutral-dark" aria-label="Item Bloqueado" focusable="false"><path d="M115 55.86V45a45 45 0 00-90 0v10.86A15 15 0 0015 70v55a15 15 0 0015 15h80a15 15 0 0015-15V70a15 15 0 00-10-14.14zM70 110a12.5 12.5 0 1112.5-12.5A12.5 12.5 0 0170 110zm25-55H45V45a25 25 0 0150 0z" fill="currentColor"/></svg>\r\n </div>\r\n <div class="self-center h-full mr-lg" *ngIf="iconComponent || icon"\r\n (desyContentEmpty)="handleIconContentEmpty(true)"\r\n (desyContentNotEmpty)="handleIconContentEmpty(false)">\r\n <ng-container *desyCustomInnerContent="{ component: iconComponent, html: icon ? icon.html : null }"></ng-container>\r\n <ng-container *ngIf="!hasIconContent">\r\n <ng-container [ngSwitch]="iconComponent ? iconComponent.type : icon.type">\r\n <svg *ngSwitchCase="\'clipboard\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-8 h-8 text-neutral-dark" aria-label="Item tipo Solicitud" focusable="false"><path d="M96.25 52.5h-52.5a4.375 4.375 0 000 8.75h52.5a4.375 4.375 0 000-8.75zM100.625 77.286a4.375 4.375 0 00-4.375-4.375h-52.5a4.375 4.375 0 000 8.75h52.5a4.375 4.375 0 004.375-4.375zM58.333 37.917h23.334a5.833 5.833 0 005.833-5.834V17.5A17.54 17.54 0 0065.287.624 17.762 17.762 0 0052.5 18.007v14.076a5.833 5.833 0 005.833 5.834zm7.292-21.875A4.375 4.375 0 1170 20.417a4.375 4.375 0 01-4.375-4.381z" fill="currentColor"/><path d="M113.75 17.5H97.708a1.458 1.458 0 00-1.458 1.458v8.75a1.458 1.458 0 001.458 1.459h13.125a2.917 2.917 0 012.917 2.916v74.62a2.917 2.917 0 01-.852 2.065l-18.713 18.708a2.917 2.917 0 01-2.06.851H29.168a2.917 2.917 0 01-2.917-2.916V32.083a2.917 2.917 0 012.917-2.916h13.125a1.458 1.458 0 001.458-1.459v-8.75a1.458 1.458 0 00-1.458-1.458H26.25a11.667 11.667 0 00-11.667 11.667v99.166A11.667 11.667 0 0026.25 140h87.5a11.667 11.667 0 0011.667-11.667V29.167A11.667 11.667 0 00113.75 17.5z" fill="currentColor"/><path d="M43.75 93.333a4.375 4.375 0 000 8.75h21.875a4.375 4.375 0 000-8.75z" fill="currentColor"/></svg>\r\n <svg *ngSwitchCase="\'link\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-8 h-8 text-neutral-dark" aria-label="Item tipo Link" focusable="false"><path d="M72.368 86.946a5.833 5.833 0 00-3.167 7.624 5.833 5.833 0 01-1.266 6.358l-16.497 16.503a11.667 11.667 0 01-16.496 0l-12.379-12.373a11.667 11.667 0 010-16.502l16.52-16.497a5.91 5.91 0 016.364-1.266 5.834 5.834 0 004.451-10.786 17.698 17.698 0 00-19.063 3.804l-16.52 16.497a23.368 23.368 0 000 32.999l12.378 12.372a23.333 23.333 0 0032.994 0l16.502-16.496a17.547 17.547 0 003.798-19.075 5.833 5.833 0 00-7.619-3.162z" fill="currentColor"/><path d="M45.25 94.74a5.897 5.897 0 008.247 0l45.378-45.373a5.833 5.833 0 00-8.248-8.248L45.249 86.491a5.833 5.833 0 000 8.248z" fill="currentColor"/><path d="M125.685 26.682l-12.373-12.373a23.368 23.368 0 00-32.999 0L63.811 30.806a17.535 17.535 0 00-3.798 19.069A5.835 5.835 0 1070.8 45.418a5.833 5.833 0 011.266-6.335l16.497-16.496a11.667 11.667 0 0116.502 0l12.373 12.372a11.667 11.667 0 010 16.503l-16.52 16.467a5.92 5.92 0 01-6.364 1.266 5.836 5.836 0 00-4.463 10.786 17.652 17.652 0 0019.075-3.798l16.497-16.496a23.374 23.374 0 00.023-33.005z" fill="currentColor"/></svg>\r\n <svg *ngSwitchCase="\'document\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-8 h-8 text-neutral-dark" aria-label="Item tipo Archivo" focusable="false"><path d="M89.355 12.518l26.46 26.46a2.917 2.917 0 01.852 2.06v84.379a2.917 2.917 0 01-2.917 2.916h-87.5a2.917 2.917 0 01-2.917-2.916V14.583a2.917 2.917 0 012.917-2.916h61.046a2.917 2.917 0 012.059.851zM90.918 0H23.333a11.667 11.667 0 00-11.666 11.667v116.666A11.667 11.667 0 0023.333 140h93.334a11.667 11.667 0 0011.666-11.667V37.415a5.833 5.833 0 00-1.709-4.124L95.042 1.709A5.833 5.833 0 0090.918 0z" fill="currentColor"/><path d="M93.333 64.167h-52.5a5.833 5.833 0 010-11.667h52.5a5.833 5.833 0 010 11.667zM93.333 87.5h-52.5a5.833 5.833 0 010-11.667h52.5a5.833 5.833 0 010 11.667zM67.083 110.833h-26.25a5.833 5.833 0 010-11.666h26.25a5.833 5.833 0 010 11.666z" fill="currentColor"/></svg>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div class="lg:flex flex-1 self-center">\r\n <div class="lg:flex-1 lg:self-center">\r\n <ng-container [ngSwitch]="headingLevel">\r\n <h1 *ngSwitchCase="1"\r\n [class]="getTitle().classes"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')"\r\n [attr.role]="getTitle().role" [attr.aria-describedby]="getTitle().ariaDescribedBy" [attr.aria-errormessage]="getTitle().ariaErrorMessage" [attr.aria-label]="getTitle().ariaLabel" [attr.aria-labelledby]="getTitle().ariaLabelledBy" [attr.aria-hidden]="getTitle().ariaHidden" [attr.aria-disabled]="getTitle().ariaDisabled" [attr.aria-controls]="getTitle().ariaControls" [attr.aria-current]="getTitle().ariaCurrent" [attr.aria-live]="getTitle().ariaLive" [attr.aria-expanded]="getTitle().ariaExpanded" [attr.aria-haspopup]="getTitle().ariaHasPopup" [attr.tabindex]="getTitle().tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: titleComponent, html: getTitle().html, text: getTitle().text }"></ng-container>\r\n </h1>\r\n <h2 *ngSwitchCase="2"\r\n [class]="getTitle().classes"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')"\r\n [attr.role]="getTitle().role" [attr.aria-describedby]="getTitle().ariaDescribedBy" [attr.aria-errormessage]="getTitle().ariaErrorMessage" [attr.aria-label]="getTitle().ariaLabel" [attr.aria-labelledby]="getTitle().ariaLabelledBy" [attr.aria-hidden]="getTitle().ariaHidden" [attr.aria-disabled]="getTitle().ariaDisabled" [attr.aria-controls]="getTitle().ariaControls" [attr.aria-current]="getTitle().ariaCurrent" [attr.aria-live]="getTitle().ariaLive" [attr.aria-expanded]="getTitle().ariaExpanded" [attr.aria-haspopup]="getTitle().ariaHasPopup" [attr.tabindex]="getTitle().tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: titleComponent, html: getTitle().html, text: getTitle().text }"></ng-container>\r\n </h2>\r\n <h3 *ngSwitchCase="3"\r\n [class]="getTitle().classes"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')"\r\n [attr.role]="getTitle().role" [attr.aria-describedby]="getTitle().ariaDescribedBy" [attr.aria-errormessage]="getTitle().ariaErrorMessage" [attr.aria-label]="getTitle().ariaLabel" [attr.aria-labelledby]="getTitle().ariaLabelledBy" [attr.aria-hidden]="getTitle().ariaHidden" [attr.aria-disabled]="getTitle().ariaDisabled" [attr.aria-controls]="getTitle().ariaControls" [attr.aria-current]="getTitle().ariaCurrent" [attr.aria-live]="getTitle().ariaLive" [attr.aria-expanded]="getTitle().ariaExpanded" [attr.aria-haspopup]="getTitle().ariaHasPopup" [attr.tabindex]="getTitle().tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: titleComponent, html: getTitle().html, text: getTitle().text }"></ng-container>\r\n </h3>\r\n <h4 *ngSwitchCase="4"\r\n [class]="getTitle().classes"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')"\r\n [attr.role]="getTitle().role" [attr.aria-describedby]="getTitle().ariaDescribedBy" [attr.aria-errormessage]="getTitle().ariaErrorMessage" [attr.aria-label]="getTitle().ariaLabel" [attr.aria-labelledby]="getTitle().ariaLabelledBy" [attr.aria-hidden]="getTitle().ariaHidden" [attr.aria-disabled]="getTitle().ariaDisabled" [attr.aria-controls]="getTitle().ariaControls" [attr.aria-current]="getTitle().ariaCurrent" [attr.aria-live]="getTitle().ariaLive" [attr.aria-expanded]="getTitle().ariaExpanded" [attr.aria-haspopup]="getTitle().ariaHasPopup" [attr.tabindex]="getTitle().tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: titleComponent, html: getTitle().html, text: getTitle().text }"></ng-container>\r\n </h4>\r\n <h5 *ngSwitchCase="5"\r\n [class]="getTitle().classes"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')"\r\n [attr.role]="getTitle().role" [attr.aria-describedby]="getTitle().ariaDescribedBy" [attr.aria-errormessage]="getTitle().ariaErrorMessage" [attr.aria-label]="getTitle().ariaLabel" [attr.aria-labelledby]="getTitle().ariaLabelledBy" [attr.aria-hidden]="getTitle().ariaHidden" [attr.aria-disabled]="getTitle().ariaDisabled" [attr.aria-controls]="getTitle().ariaControls" [attr.aria-current]="getTitle().ariaCurrent" [attr.aria-live]="getTitle().ariaLive" [attr.aria-expanded]="getTitle().ariaExpanded" [attr.aria-haspopup]="getTitle().ariaHasPopup" [attr.tabindex]="getTitle().tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: titleComponent, html: getTitle().html, text: getTitle().text }"></ng-container>\r\n </h5>\r\n <p *ngSwitchDefault\r\n [class]="getTitle().classes"\r\n (desyContentEmpty)="handleRequiredEmpty(\'title content, html or text are required\')"\r\n [attr.role]="getTitle().role" [attr.aria-describedby]="getTitle().ariaDescribedBy" [attr.aria-errormessage]="getTitle().ariaErrorMessage" [attr.aria-label]="getTitle().ariaLabel" [attr.aria-labelledby]="getTitle().ariaLabelledBy" [attr.aria-hidden]="getTitle().ariaHidden" [attr.aria-disabled]="getTitle().ariaDisabled" [attr.aria-controls]="getTitle().ariaControls" [attr.aria-current]="getTitle().ariaCurrent" [attr.aria-live]="getTitle().ariaLive" [attr.aria-expanded]="getTitle().ariaExpanded" [attr.aria-haspopup]="getTitle().ariaHasPopup" [attr.tabindex]="getTitle().tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: titleComponent, html: getTitle().html, text: getTitle().text }"></ng-container>\r\n </p>\r\n </ng-container>\r\n\r\n <p *ngIf="descriptionComponent || description" [class]="descriptionComponent ? descriptionComponent.classes : description.classes"\r\n (desyContentEmpty)="handleRequiredEmpty(\'description content, html or text are required\')"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n <ng-container *desyCustomInnerContent="{ component: descriptionComponent, html: description ? description.html : null, text: description ? description.text : null }"></ng-container>\r\n </p>\r\n <ul class="-ml-sm lg:divide-x lg:divide-neutral-base" *ngIf="itemComponents.length > 0 || items">\r\n <li class="lg:inline-block px-sm text-sm text-neutral-dark" *ngFor="let item of getItems(); index as index"\r\n (desyContentEmpty)="handleRequiredEmpty(\'item content, html or text are required at position \' + index)">\r\n <ng-container *desyCustomInnerContent="{ component: item, text: item }"></ng-container>\r\n </li>\r\n </ul>\r\n <p *ngIf="contentBottomComponent || content" [class]="contentBottomComponent ? contentBottomComponent.classes : content.classes"\r\n (desyContentEmpty)="handleRequiredEmpty(contentBottomComponent ? \'content for content at bottom is required\' : \'html or text for content at bottom are required\')">\r\n <ng-container *desyCustomInnerContent="{ component: contentBottomComponent, html: content ? content.html : null, text: content ? content.text : null }"></ng-container>\r\n </p>\r\n </div>\r\n <div class="w-full lg:w-auto lg:text-right mt-base lg:mt-0 lg:ml-base" *ngIf="contentRightComponent || caller">\r\n <ng-container *desyCustomInnerContent="{ component: contentRightComponent, template: caller }"></ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n'}]}],Rt.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},Rt.propDecorators={title:[{type:t.Input}],description:[{type:t.Input}],headingLevel:[{type:t.Input}],items:[{type:t.Input}],content:[{type:t.Input}],icon:[{type:t.Input}],isDraggable:[{type:t.Input}],isLocked:[{type:t.Input}],id:[{type:t.Input}],classes:[{type:t.Input}],caller:[{type:t.Input}],titleComponent:[{type:t.ContentChildren,args:[N]}],descriptionComponent:[{type:t.ContentChildren,args:[A]}],iconComponent:[{type:t.ContentChildren,args:[F]}],contentBottomComponent:[{type:t.ContentChildren,args:[Tt]}],contentRightComponent:[{type:t.ContentChildren,args:[Bt]}],itemComponents:[{type:t.ContentChildren,args:[Pt]}]},m([P()],Rt.prototype,"titleComponent",void 0),m([P()],Rt.prototype,"descriptionComponent",void 0),m([P()],Rt.prototype,"iconComponent",void 0),m([P()],Rt.prototype,"contentBottomComponent",void 0),m([P()],Rt.prototype,"contentRightComponent",void 0);var St=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.ngOnChanges=function(e){this.checkRequiredParams()},t.prototype.checkRequiredParams=function(){if(!this.figureHtml)throw new Error("figureHtml are required")},t}(C);St.decorators=[{type:t.Component,args:[{selector:"desy-media-object",template:'<div [class]="\'flex\' + (classes ? \' \' + classes : \'\') + (center==true ? \' \' + \'items-center\' : \'\')" \r\n [attr.id]="id"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex">\r\n <div [class]="(reverse==true ? \' \' + \'order-1\' : \'\') + (figureClasses ? \' \' + figureClasses : \'\')" [attr.figureHtml]="figureHtml" [innerHtml]="figureHtml"></div>\r\n\r\n <div [class]="\'flex-1\' + (contenClasses ? \' \' + contenClasses : \'\')">\r\n <ng-container *ngTemplateOutlet="caller"></ng-container>\r\n </div>\r\n</div>\r\n\r\n'}]}],St.propDecorators={figureHtml:[{type:t.Input}],classes:[{type:t.Input}],center:[{type:t.Input}],reverse:[{type:t.Input}],figureClasses:[{type:t.Input}],contenClasses:[{type:t.Input}],caller:[{type:t.Input}],id:[{type:t.Input}]};var Ot=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.getType=function(){return this.icon.type?this.icon.type.toLocaleLowerCase():"success"},t.prototype.ngOnChanges=function(e){if(!this.text)throw new Error("title is required");if(!this.icon)throw new Error("icon is required")},t}(C);Ot.decorators=[{type:t.Component,args:[{selector:"desy-status",template:'<div [class]="(classes ? classes : \'\')"\r\n [attr.id]="id ? id : null"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n\r\n <p class="inline-flex items-center">\r\n <span class="inline-block font-bold uppercase">{{text}}</span>\r\n <span class="inline-block ml-sm" *ngIf="!icon.html; else elseBlock"> \r\n <ng-container [ngSwitch]="getType()">\r\n <ng-container *ngSwitchCase="\'success\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-success-dark" aria-hidden="true" focusable="false"><path d="M39.94 125a19.88 19.88 0 01-15.53-7.81L2.48 92.26a10 10 0 0115-13.2l20.55 23.39a2.5 2.5 0 003.68.08l81-84.42a10.002 10.002 0 1114.5 13.78l-82.02 86.33A19.41 19.41 0 0139.94 125z" fill="currentColor"/></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'alert\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-alert-base" aria-hidden="true" focusable="false"><path d="M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'loading\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4" aria-hidden="true" focusable="false"><path d="M71.15 2.3a7.7 7.7 0 100 15.4A52.3 52.3 0 1118.85 70a62.29 62.29 0 014.7-23.16l5.76 4a7.55 7.55 0 004.25 1.31 7.41 7.41 0 004.09-1.22 7.51 7.51 0 003.28-7.68L37 22.45a7.52 7.52 0 00-8.66-6l-21 3.65a7.5 7.5 0 00-3 13.57l6.21 4.27A77.78 77.78 0 003.45 70a67.7 67.7 0 1067.7-67.7z" fill="currentColor"/><path d="M91.15 92.5a7.45 7.45 0 01-3.35-.79l-20-10A7.51 7.51 0 0163.65 75V42.5a7.5 7.5 0 0115 0v27.87l15.86 7.92a7.5 7.5 0 01-3.36 14.21z" fill="currentColor"/></svg>\r\n </ng-container>\r\n <ng-container *ngSwitchCase="\'error\'">\r\n <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-alert-base" aria-hidden="true" focusable="false"><path d="M70 75a7.5 7.5 0 007.5-7.5v-25a7.5 7.5 0 00-15 0v25A7.5 7.5 0 0070 75zM60 92.5a10 10 0 1020 0 10 10 0 10-20 0z" fill="currentColor"/><path d="M139.78 101.83L135 82.6a7.51 7.51 0 00-9.1-5.45l-19.22 4.8a7.5 7.5 0 00-2 13.71l6.11 3.66A55.31 55.31 0 0170 120.19a50.47 50.47 0 01-47.16-33.06 7.503 7.503 0 00-14.09 5.16A65.52 65.52 0 0070 135.19 71.27 71.27 0 00123.57 107l5.07 3a7.5 7.5 0 0011.14-8.25zM14.13 62.85l19.22-4.8a7.5 7.5 0 002.05-13.71L29.76 41A56.18 56.18 0 0170 19.81a50.47 50.47 0 0147.16 33.06 7.51 7.51 0 007 4.92 7.61 7.61 0 002.59-.46 7.51 7.51 0 004.46-9.62A65.52 65.52 0 0070 4.81 71.53 71.53 0 0016.83 33.2l-5.47-3.28A7.5 7.5 0 00.22 38.17L5 57.4a7.51 7.51 0 007.27 5.68 7.65 7.65 0 001.86-.23z" fill="currentColor"/></svg>\r\n </ng-container>\r\n </ng-container>\r\n </span>\r\n <ng-template #elseBlock>\r\n <span class="inline-block ml-sm" [desyInnerContent]="icon.html" [isHtml]="icon.html" [deleteContentIfEmpty]="false"><ng-content></ng-content></span> \r\n </ng-template>\r\n </p> \r\n</div>\r\n'}]}],Ot.propDecorators={text:[{type:t.Input}],id:[{type:t.Input}],classes:[{type:t.Input}],icon:[{type:t.Input}]};var At=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t.prototype.ngOnChanges=function(e){if(!this.id)throw new Error("id is required")},t.prototype.handleContentEmpty=function(e){throw new Error(e+" content, html or text is required")},t.prototype.getItems=function(){return this.itemComponents.length>0?this.itemComponents.toArray():this.items},t}(C);At.decorators=[{type:t.Component,args:[{selector:"desy-status-item",template:'<ng-template #commonHtml>\r\n <p *ngIf="titleComponent || title" [class]="title ? title.classes : \'my-sm\'"\r\n (desyContentEmpty)="handleContentEmpty(\'title\')">\r\n <ng-container *desyCustomInnerContent="{\r\n component: titleComponent,\r\n html: title ? title.html : null,\r\n text: title ? title.text : null\r\n }"></ng-container>\r\n </p>\r\n\r\n <ng-container *ngIf="hintComponent">\r\n <ng-content select="desy-hint"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!hintComponent && hint">\r\n <desy-hint [text]="hint.text" [html]="hint.html" [classes]="hint.classes" [id]="hint.id"\r\n [role]="hint.role"\r\n [ariaLabel]="hint.ariaLabel"\r\n [ariaDescribedBy]="(hint.ariaDescribedBy ? hint.ariaDescribedBy + \'\' + hint.id : hint.id)"\r\n [ariaLabelledBy]="hint.ariaLabelledBy"\r\n [ariaHidden]="hint.ariaHidden"\r\n [ariaDisabled]="hint.ariaDisabled"\r\n [ariaControls]="hint.ariaControls"\r\n [ariaCurrent]="hint.ariaCurrent"\r\n [ariaLive]="hint.ariaLive"\r\n [ariaExpanded]="hint.ariaExpanded"\r\n [ariaErrorMessage]="hint.ariaErrorMessage"\r\n [ariaHasPopup]="hint.ariaHasPopup"\r\n [tabindex]="hint.tabindex"></desy-hint>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="errorMessageComponent">\r\n <ng-content select="desy-error-message"></ng-content>\r\n </ng-container>\r\n <ng-container *ngIf="!errorMessageComponent && errorMessage">\r\n <desy-error-message [text]="errorMessage.text" [html]="errorMessage.html"\r\n [visuallyHiddenText]="errorMessage.visuallyHiddenText"\r\n [id]="(errorId ? errorId : id + \'-error\')" [classes]="errorMessage.classes"\r\n [role]="errorMessage.role"\r\n [ariaLabel]="errorMessage.ariaLabel"\r\n [ariaDescribedBy]="(errorMessage.ariaDescribedBy ? errorMessage.ariaDescribedBy + \'\' + errorId : errorId)"\r\n [ariaLabelledBy]="errorMessage.ariaLabelledBy"\r\n [ariaHidden]="errorMessage.ariaHidden"\r\n [ariaDisabled]="errorMessage.ariaDisabled"\r\n [ariaControls]="errorMessage.ariaControls"\r\n [ariaCurrent]="errorMessage.ariaCurrent"\r\n [ariaLive]="errorMessage.ariaLive"\r\n [ariaExpanded]="errorMessage.ariaExpanded"\r\n [ariaErrorMessage]="errorMessage.ariaErrorMessage"\r\n [ariaHasPopup]="errorMessage.ariaHasPopup"\r\n [tabindex]="errorMessage.tabindex"></desy-error-message>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<div [attr.id]="id ? id : null" [class]="(classes ? classes : null)"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n\r\n <div class="lg:flex lg:justify-between lg:items-start -my-px px-base py-sm border-t border-b border-neutral-base">\r\n <ng-container *ngIf="getItems(); else noItems">\r\n <div class="lg:w-2/3">\r\n <ng-container *ngTemplateOutlet="commonHtml"></ng-container>\r\n <dl>\r\n <div *ngFor="let item of getItems()"\r\n [class]="(item.classes ? \'flex lg-flex-wrap \' + item.classes : \'flex lg-flex-wrap\')"\r\n [attr.id]="item.id ? item.id : null"\r\n [attr.role]="item.role"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-disabled]="item.ariaDisabled"\r\n [attr.aria-controls]="item.ariaControls"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup">\r\n <dt [class]="(item.term.classes ? item.term.classes : \'w-1/2 my-sm\')"\r\n (desyContentEmpty)="handleContentEmpty(\'term\')"\r\n [attr.id]="item.term.id ? item.term.id : null"\r\n [attr.role]="item.term.role"\r\n [attr.aria-describedby]="item.term.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.term.ariaErrorMessage"\r\n [attr.aria-label]="item.term.ariaLabel"\r\n [attr.aria-labelledby]="item.term.ariaLabelledBy"\r\n [attr.aria-hidden]="item.term.ariaHidden"\r\n [attr.aria-disabled]="item.term.ariaDisabled"\r\n [attr.aria-controls]="item.term.ariaControls"\r\n [attr.aria-current]="item.term.ariaCurrent"\r\n [attr.aria-live]="item.term.ariaLive"\r\n [attr.aria-expanded]="item.term.ariaExpanded"\r\n [attr.aria-haspopup]="item.term.ariaHasPopup">\r\n <ng-container *desyCustomInnerContent="{ component: item.term, html: item.term.html, text: item.term.text}"></ng-container>\r\n </dt>\r\n <dd [class]="(item.definition.classes ? item.definition.classes : \'w-1/2 my-sm font-semibold\')"\r\n (desyContentEmpty)="handleContentEmpty(\'definition\')"\r\n [attr.id]="item.definition.id ? item.definition.id : null"\r\n [attr.role]="item.definition.role"\r\n [attr.aria-describedby]="item.definition.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.definition.ariaErrorMessage"\r\n [attr.aria-label]="item.definition.ariaLabel"\r\n [attr.aria-labelledby]="item.definition.ariaLabelledBy"\r\n [attr.aria-hidden]="item.definition.ariaHidden"\r\n [attr.aria-disabled]="item.definition.ariaDisabled"\r\n [attr.aria-controls]="item.definition.ariaControls"\r\n [attr.aria-current]="item.definition.ariaCurrent"\r\n [attr.aria-live]="item.definition.ariaLive"\r\n [attr.aria-expanded]="item.definition.ariaExpanded"\r\n [attr.aria-haspopup]="item.definition.ariaHasPopup">\r\n <ng-container *desyCustomInnerContent="{ component: item.definition, html: item.definition.html, text: item.definition.text}"></ng-container>\r\n </dd>\r\n </div>\r\n </dl>\r\n </div>\r\n </ng-container>\r\n <ng-template #noItems>\r\n <div class="lg:w-2/3">\r\n <ng-container *ngTemplateOutlet="commonHtml"></ng-container>\r\n </div>\r\n </ng-template>\r\n\r\n <div class="lg:flex lg:flex-wrap lg:items-center lg:1/3">\r\n\r\n <div *ngIf="contentComponent || caller" [id]="id + \'-status-item\'"\r\n [class]="\'w-full lg:w-auto lg:text-right mt-base lg:mt-0 mb-base lg:mb-0\'">\r\n <ng-container *desyCustomInnerContent="{ component: contentComponent, template: caller }"></ng-container>\r\n </div>\r\n\r\n <div *ngIf="statusComponent || status" class="mb-base lg:mb-0 ml-base py-sm">\r\n <ng-container *ngIf="statusComponent">\r\n <ng-content select="desy-status"></ng-content>\r\n </ng-container>\r\n <desy-status *ngIf="!statusComponent && status"\r\n [text]="status.text" [icon]="status.icon" [classes]="status.classes" [id]="status.id"\r\n [role]="status.role"\r\n [ariaLabel]="status.ariaLabel"\r\n [ariaDescribedBy]="status.ariaDescribedBy"\r\n [ariaLabelledBy]="status.ariaLabelledBy"\r\n [ariaHidden]="status.ariaHidden"\r\n [ariaDisabled]="status.ariaDisabled"\r\n [ariaControls]="status.ariaControls"\r\n [ariaCurrent]="status.ariaCurrent"\r\n [ariaLive]="status.ariaLive"\r\n [ariaExpanded]="status.ariaExpanded"\r\n [ariaErrorMessage]="status.ariaErrorMessage"\r\n [ariaHasPopup]="status.ariaHasPopup"\r\n [tabindex]="status.tabindex"></desy-status>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n'}]}],At.propDecorators={id:[{type:t.Input}],classes:[{type:t.Input}],errorId:[{type:t.Input}],describedBy:[{type:t.Input}],title:[{type:t.Input}],hint:[{type:t.Input}],errorMessage:[{type:t.Input}],items:[{type:t.Input}],status:[{type:t.Input}],titleComponent:[{type:t.ContentChildren,args:[N]}],hintComponent:[{type:t.ContentChildren,args:[q]}],errorMessageComponent:[{type:t.ContentChildren,args:[V]}],contentComponent:[{type:t.ContentChildren,args:[O]}],itemComponents:[{type:t.ContentChildren,args:[Ht]}],statusComponent:[{type:t.ContentChildren,args:[Ot]}],caller:[{type:t.Input}]},m([P()],At.prototype,"titleComponent",void 0),m([P()],At.prototype,"hintComponent",void 0),m([P()],At.prototype,"errorMessageComponent",void 0),m([P()],At.prototype,"contentComponent",void 0),m([P()],At.prototype,"statusComponent",void 0);var Ft=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Ft.decorators=[{type:t.Component,args:[{selector:"desy-panel",template:"<ng-template #contentTemplate><ng-content></ng-content></ng-template>"}]}],Ft.propDecorators={classes:[{type:t.Input}],id:[{type:t.Input}]};var Nt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(C);Nt.decorators=[{type:t.Component,args:[{selector:"desy-tab-item",template:""}]}],Nt.propDecorators={contentComponent:[{type:t.ContentChildren,args:[O]}],panelComponent:[{type:t.ContentChildren,args:[Ft]}],classes:[{type:t.Input}],disabled:[{type:t.Input}],id:[{type:t.Input}]},m([P()],Nt.prototype,"contentComponent",void 0),m([P()],Nt.prototype,"panelComponent",void 0);var qt=function(e){function t(t){var r=e.call(this)||this;return r.changeDetector=t,r.currentTab=0,r}return u(t,e),t.prototype.ngOnChanges=function(e){if(!this.title)throw new Error("title is required");if(!this.tablistAriaLabel)throw new Error("tablistAriaLabel is required")},t.prototype.ngAfterViewInit=function(){var e=this.getItems();this.selectTab(e.findIndex((function(e){return!e.disabled}))),this.changeDetector.detectChanges()},t.prototype.getItems=function(){var e=this.itemComponents.length>0?this.itemComponents.toArray():this.items;if(!e||0===e.length)throw new Error("items are required");return e},t.prototype.getItemPanel=function(e){var t,r=this.getItems()[e];return r instanceof Nt&&(t=r.panelComponent),t},t.prototype.handleContentEmpty=function(e){throw new Error(e+" content, html or text is required")},t.prototype.getIdPrefix=function(){if(this.idPrefix)return this.idPrefix},t.prototype.getItemId=function(e){var t=this.getItems();return t[e].id?t[e].id:this.getIdPrefix()+"-"+e},t.prototype.isDisabled=function(e){return!!e.disabled||null},t.prototype.selectTab=function(e){this.currentTab=e;var t=this.getItems()[e];this.currentPanel=t instanceof Nt?t.panelComponent:t.panel,this.tabSrOnly.nativeElement.innerHTML=this.tabSelectorContentWrapper.toArray()[this.currentTab].nativeElement.innerHTML},t.prototype.focusFirstTab=function(e){e&&e.preventDefault(),this.tabSelectors.filter((function(e,t){return!e[t].disabled}))[0].nativeElement.focus()},t.prototype.focusLastTab=function(e){e&&e.preventDefault();var t=this.tabSelectors.filter((function(e,t){return!e[t].disabled}));t[t.length-1].nativeElement.focus()},t.prototype.focusNextTab=function(e){for(var t=this.getItems(),r=(e+1)%t.length;r!==e;){if(!t[r].disabled){this.tabSelectors.find((function(e,t){return t===r})).nativeElement.focus();break}r=(r+1)%t.length}},t.prototype.focusPreviousTab=function(e){for(var t=this.getItems(),r=(e-1+t.length)%t.length;r!==e;){if(!t[r].disabled){this.tabSelectors.find((function(e,t){return t===r})).nativeElement.focus();break}r=(r-1+t.length)%t.length}},t.prototype.getPanelContent=function(e){var t=this.getItems();return t[e].panel&&t[e].panel.text?"<p>"+M.escapeHtml(t[e].panel.text)+"</p>":null},t}(C);qt.decorators=[{type:t.Component,args:[{selector:"desy-tabs",template:'<div [attr.id]="id ? id : null" [class]="(classes ? \'c-tabs \' + classes : \'c-tabs\')" data-module="c-tabs"\r\n [attr.role]="role"\r\n [attr.aria-describedby]="ariaDescribedBy"\r\n [attr.aria-errormessage]="ariaErrorMessage"\r\n [attr.aria-label]="ariaLabel"\r\n [attr.aria-labelledby]="ariaLabelledBy"\r\n [attr.aria-hidden]="ariaHidden"\r\n [attr.aria-disabled]="ariaDisabled"\r\n [attr.aria-controls]="ariaControls"\r\n [attr.aria-current]="ariaCurrent"\r\n [attr.aria-live]="ariaLive"\r\n [attr.aria-expanded]="ariaExpanded"\r\n [attr.aria-haspopup]="ariaHasPopup"\r\n [attr.tabindex]="tabindex">\r\n\r\n <ng-container *ngIf="title">\r\n <ng-container [ngSwitch]="headingLevel">\r\n <h1 *ngSwitchCase="1" class="lg:hidden mb-sm text-sm">{{title}}</h1>\r\n <h2 *ngSwitchCase="2" class="lg:hidden mb-sm text-sm">{{title}}</h2>\r\n <h3 *ngSwitchCase="3" class="lg:hidden mb-sm text-sm">{{title}}</h3>\r\n <h4 *ngSwitchCase="4" class="lg:hidden mb-sm text-sm">{{title}}</h4>\r\n <h5 *ngSwitchCase="5" class="lg:hidden mb-sm text-sm">{{title}}</h5>\r\n <h2 *ngSwitchDefault class="lg:hidden mb-sm text-sm">{{title}}</h2>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!title">\r\n <ng-container [ngSwitch]="headingLevel">\r\n <h1 *ngSwitchCase="1" class="lg:hidden mb-sm text-sm">Contenido</h1>\r\n <h2 *ngSwitchCase="2" class="lg:hidden mb-sm text-sm">Contenido</h2>\r\n <h3 *ngSwitchCase="3" class="lg:hidden mb-sm text-sm">Contenido</h3>\r\n <h4 *ngSwitchCase="4" class="lg:hidden mb-sm text-sm">Contenido</h4>\r\n <h5 *ngSwitchCase="5" class="lg:hidden mb-sm text-sm">Contenido</h5>\r\n <h2 *ngSwitchDefault class="lg:hidden mb-sm text-sm">Contenido</h2>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf="getItems()">\r\n <div class="c-tabs lg:flex lg:flex-wrap" role="tablist" [attr.aria-label]=tablistAriaLabel>\r\n <ng-container *ngFor="let item of getItems(); index as i">\r\n <button #tabSelector\r\n (click)="selectTab(i)"\r\n (keydown.home)="focusFirstTab($event)"\r\n (keydown.end)="focusLastTab($event)"\r\n (keydown.arrowleft)="focusPreviousTab(i)"\r\n (keydown.arrowright)="focusNextTab(i)"\r\n class="c-tabs__link relative flex items-center py-sm lg:px-lg lg:py-base border border-transparent text-black hover:text-primary-base underline truncate focus:outline-none"\r\n [ngClass]="{\'opacity-50 pointer-events-none\': isDisabled(item)}"\r\n [attr.id]="getItemId(i)"\r\n [attr.role]="(item.role ? role : \'tab\')"\r\n [attr.aria-selected]="currentTab === i ? \'true\' : \'false\'"\r\n [attr.aria-describedby]="item.ariaDescribedBy"\r\n [attr.aria-errormessage]="item.ariaErrorMessage"\r\n [attr.aria-label]="item.ariaLabel"\r\n [attr.aria-labelledby]="item.ariaLabelledBy"\r\n [attr.aria-hidden]="item.ariaHidden"\r\n [attr.aria-controls]="\'tab-\' + getItemId(i)"\r\n [attr.aria-current]="item.ariaCurrent"\r\n [attr.aria-live]="item.ariaLive"\r\n [attr.aria-expanded]="item.ariaExpanded"\r\n [attr.aria-haspopup]="item.ariaHasPopup"\r\n [attr.tabindex]="(currentTab !== i || item.disabled ? \'-1\' : null)"\r\n [attr.disabled]="isDisabled(item)"\r\n [attr.aria-disabled]="isDisabled(item) ? \'true\' : (ariaDisabled ? ariaDisabled : null)">\r\n <span #tabSelectorContentWrapper class="flex items-center pointer-events-none" (desyContentEmpty)="handleContentEmpty(\'contentComponent\')">\r\n <ng-container *desyCustomInnerContent="{ component: item.contentComponent, html: item.html, text: item.text}"></ng-container>\r\n </span>\r\n </button>\r\n </ng-container>\r\n </div>\r\n\r\n <div [class]="[\'p-base mt-base lg:mt-0 border border-neutral-base focus:outline-none focus:border-black focus:shadow-outline-focus-input focus:ring-4 focus:ring-warning-base\', currentPanel?.classes] | makeHtmlList"\r\n [attr.id]="\'tab-\' + getItemId(currentTab)"\r\n [attr.role]="(currentPanel?.role ? currentPanel?.role : \'tabpanel\')"\r\n [attr.aria-describedby]="currentPanel?.ariaDescribedBy"\r\n [attr.aria-errormessage]="currentPanel?.ariaErrorMessage"\r\n [attr.aria-label]="currentPanel?.ariaLabel"\r\n [attr.aria-labelledby]="getItemId(currentTab)"\r\n [attr.aria-hidden]="currentPanel?.ariaHidden"\r\n [attr.aria-disabled]="currentPanel?.ariaDisabled"\r\n [attr.aria-controls]="currentPanel?.ariaControls"\r\n [attr.aria-current]="currentPanel?.ariaCurrent"\r\n [attr.aria-live]="currentPanel?.ariaLive"\r\n [attr.aria-expanded]="currentPanel?.ariaExpanded"\r\n [attr.aria-haspopup]="currentPanel?.ariaHasPopup"\r\n [attr.tabindex]="(currentPanel?.tabindex ? currentPanel?.tabindex : \'0\')">\r\n <ng-container [ngSwitch]="headingLevel">\r\n <h1 *ngSwitchCase="1" #tabSrOnly class="lg:sr-only inline-flex items-center mb-base lg:mb-0 font-semibold"></h1>\r\n <h2 *ngSwitchCase="2" #tabSrOnly class="lg:sr-only inline-flex items-center mb-base lg:mb-0 font-semibold"></h2>\r\n <h3 *ngSwitchCase="3" #tabSrOnly class="lg:sr-only inline-flex items-center mb-base lg:mb-0 font-semibold"></h3>\r\n <h4 *ngSwitchCase="4" #tabSrOnly class="lg:sr-only inline-flex items-center mb-base lg:mb-0 font-semibold"></h4>\r\n <h5 *ngSwitchCase="5" #tabSrOnly class="lg:sr-only inline-flex items-center mb-base lg:mb-0 font-semibold"></h5>\r\n <h3 *ngSwitchDefault #tabSrOnly class="lg:sr-only inline-flex items-center mb-base lg:mb-0 font-semibold"></h3>\r\n </ng-container>\r\n <ng-container *desyCustomInnerContent="{ component: getItemPanel(currentTab), template: currentPanel?.html, html: getPanelContent(currentTab) }"></ng-container>\r\n </div>\r\n </ng-container>\r\n</div>\r\n'}]}],qt.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},qt.propDecorators={itemComponents:[{type:t.ContentChildren,args:[Nt]}],tabSelectors:[{type:t.ViewChildren,args:["tabSelector"]}],tabSelectorContentWrapper:[{type:t.ViewChildren,args:["tabSelectorContentWrapper"]}],tabSrOnly:[{type:t.ViewChild,args:["tabSrOnly"]}],id:[{type:t.Input}],idPrefix:[{type:t.Input}],classes:[{type:t.Input}],headingLevel:[{type:t.Input}],title:[{type:t.Input}],tablistAriaLabel:[{type:t.Input}],items:[{type:t.Input}]};var zt=function(){function e(e){this.factoryResolver=e}return e.prototype.openAlert=function(e,r){var a=this;return new Promise((function(n,i){e||i("caller is required"),r||i("alertOptions is required");var o=a.createAlert(r),l={alert:o};e instanceof t.TemplateRef?(o.instance.caller=e,n(l)):(o.instance.callerType=at,o.instance.onCallerCreationCallback=function(t,r){a.initNotification(t,r,e),l.component=r,n(l)})}))},e.prototype.closeAlert=function(e){if(!e)throw Error("alert is required");e instanceof t.ComponentRef?e.instance.dismiss():e.dismiss()},e.prototype.onCloseAlert=function(e){return new Promise((function(r){var a=(e instanceof t.ComponentRef?e.instance:e).activeChange.subscribe((function(){r(),a.unsubscribe()}))}))},e.prototype.createAlert=function(e){var t=this.factoryResolver.resolveComponentFactory(ft),r=e.place.createComponent(t);return r.instance.active=!0,e&&Object.assign(r.instance,e),this.onCloseAlert(r).then((function(){return r.destroy()})),r},e.prototype.initNotification=function(e,t,r){var a=this;if(Object.assign(t.instance,r),r.isDismissible)var n=t.instance.isOpenChange.subscribe((function(){a.closeAlert(e),n.unsubscribe()}))},e}();zt.ɵprov=p.ɵɵdefineInjectable({factory:function(){return new zt(p.ɵɵinject(p.ComponentFactoryResolver))},token:zt,providedIn:"root"}),zt.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],zt.ctorParameters=function(){return[{type:t.ComponentFactoryResolver}]};var Vt=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return u(t,e),t}(v);Vt.decorators=[{type:t.Component,args:[{selector:"desy-tooltip-content",template:"<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n"}]}];var _t=function(e){function r(){var r=e.apply(this,f(arguments))||this;return r.currentPage=1,r.currentPageChange=new t.EventEmitter,r.previousIcon='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="self-center h-2.5 w-2.5 mr-2" aria-hidden="true" focusable="false"><path d="M54.87 71.77a2.5 2.5 0 010-3.54L106 17.07A10 10 0 1091.89 2.93L35.43 59.39a15 15 0 000 21.22l56.46 56.46A10 10 0 10106 122.93z" fill="currentColor" /></svg>',r.nextIcon='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="self-center h-2.5 w-2.5 ml-2" aria-hidden="true" focusable="false"><path d="M34 137.07a10 10 0 010-14.14l51.13-51.16a2.5 2.5 0 000-3.54L34 17.07A10 10 0 0148.11 2.93l56.46 56.46a15 15 0 010 21.22l-56.46 56.46a10 10 0 01-14.11 0z" fill="currentColor" /></svg>',r.prefix='<span class="sr-only">Página </span>',r}return u(r,e),r.prototype.ngOnChanges=function(e){var t=this;if(!this.id)throw new Error("id is required");if(void 0===this.totalItems||null===this.totalItems)throw new Error("totalItems is required");if(void 0===!this.itemsPerPage||null===this.itemsPerPage)throw new Error("itemsPerPage is required");this.nPages=Math.ceil(this.totalItems/this.itemsPerPage),(!this.currentPage||this.currentPage<1||this.currentPage>this.nPages)&&(this.currentPage=1,setTimeout((function(){return t.currentPageChange.emit(t.currentPage)}))),this.previousText||(this.previousText="Anterior"),this.nextText||(this.nextText="Siguiente"),this.buildPages()},r.prototype.getSuffix=function(e){return e>=0&&e*this.itemsPerPage<this.totalItems?'<span class="sr-only">: Página '+(e+1)+" con los resultados del "+(e*this.itemsPerPage+1)+" al "+this.getLastItemNumber(e)+"</span>":""},r.prototype.getLastItemNumber=function(e){return Math.min((e+1)*this.itemsPerPage,this.totalItems)},r.prototype.buildPages=function(){this.items=[];for(var e=0;e<this.nPages;e++){var t={text:e+1,active:e+1===this.currentPage,routerLink:[]};this.items.push(t)}},r.prototype.getIdPrefix=function(){return this.idPrefix?this.idPrefix:"pagination-item"},r.prototype.getButtonId=function(e){return this.getIdPrefix()+(0===e)?"":"-"+e},r.prototype.changePage=function(e){this.currentPage=e,this.currentPageChange.emit(this.currentPage);for(var t=0;t<this.items.length;t++){this.items[t].active=t+1===this.currentPage}},r.prototype.previous=function(){this.currentPage>1&&this.changePage(this.currentPage-1)},r.prototype.next=function(){this.currentPage<this.nPages&&this.changePage(this.currentPage+1)},r.prototype.getActiveItemText=function(){var e=this.items.filter((function(e){return e.active}));return e&&e.length>0?e[0].text:""},r}(C);_t.decorators=[{type:t.Component,args:[{selector:"desy-pagination",template:'<div [attr.id]="id ? id : null" [class]="[\'lg:flex lg:flex-wrap lg:align-center\', classesContainer] | makeHtmlList">\r\n <ng-container *ngIf="hasSelect">\r\n <p class="w-full mb-xs text-sm text-neutral-dark">\r\n Selecciona una página para cargar datos\r\n </p>\r\n <nav [class]="[\'flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm\', classes] | makeHtmlList"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <desy-button (clickEvent)="previous()" [id]="getIdPrefix() + \'-previous\'"\r\n [html]="previousIcon + prefix + previousText + getSuffix(currentPage - 2)" [disabled]="currentPage === 1 || !hasPrevious"\r\n classes="c-button--sm c-button--transparent mr-xs"></desy-button>\r\n <desy-listbox [id]="id + \'-listbox\'"\r\n [idPrefix]="idPrefix"\r\n [text]="\'Página \' + getActiveItemText()"\r\n [classes]="\'c-listbox--sm c-listbox--transparent mr-xs\'"\r\n [doesChangeButtonText]="true"\r\n [label]="{ text: \'Selecciona una página para cargar datos\', classes: \'sr-only\' }"\r\n [(items)]="items"\r\n (activeItemChange)="changePage(+$event.text)"></desy-listbox>\r\n <desy-button (clickEvent)="next()" [id]="getIdPrefix() + \'-next\'"\r\n [html]="prefix + nextText + getSuffix(currentPage) + nextIcon" [disabled]="currentPage === nPages || !hasNext"\r\n classes="c-button--sm c-button--transparent mr-xs"></desy-button>\r\n </nav>\r\n </ng-container>\r\n <ng-container *ngIf="!hasSelect">\r\n <nav [class]="[\'flex flex-wrap items-center flex-1 mb-base lg:mb-0 text-sm\', classes] | makeHtmlList"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <ul class="flex flex-wrap">\r\n <li *ngFor="let item of items; index as i">\r\n <desy-button *ngIf="item.active" [id]="getButtonId(i)"\r\n [html]="\'<strong>\' + prefix + (i + 1) + getSuffix(i) + \'</strong>\'"\r\n classes="c-button--primary c-button--disabled mb-sm mr-sm"\r\n disabled="true" ariaCurrent="page" tabindex="-1" ></desy-button>\r\n <desy-button *ngIf="!item.active" [id]="getButtonId(i)"\r\n [html]="prefix + (i + 1) + getSuffix(i)"\r\n (clickEvent)="changePage(i + 1)"\r\n classes="mb-sm mr-sm"></desy-button>\r\n </li>\r\n </ul>\r\n </nav>\r\n </ng-container>\r\n <p class="block lg:ml-auto text-sm text-neutral-dark">\r\n <span class="sr-only">Posición de paginación: </span>{{(currentPage - 1) * itemsPerPage + 1}} - {{getLastItemNumber(currentPage - 1)}} de {{totalItems}}\r\n </p>\r\n</div>\r\n'}]}],_t.propDecorators={hasSelect:[{type:t.Input}],idPrefix:[{type:t.Input}],classesContainer:[{type:t.Input}],totalItems:[{type:t.Input}],itemsPerPage:[{type:t.Input}],hasPrevious:[{type:t.Input}],hasNext:[{type:t.Input}],previousText:[{type:t.Input}],nextText:[{type:t.Input}],classes:[{type:t.Input}],id:[{type:t.Input}],currentPage:[{type:t.Input}],currentPageChange:[{type:t.Output}]};var Gt=function(){function e(e){this.sanitizer=e}return e.prototype.transform=function(e){return this.sanitizer.sanitize(t.SecurityContext.HTML,e)},e}();Gt.decorators=[{type:t.Pipe,args:[{name:"innerHtml"}]}],Gt.ctorParameters=function(){return[{type:l.DomSanitizer}]};var Ut=function(){function e(){}return e.prototype.transform=function(e){return e?e.match("http(s)?://")?e:"http://"+e:"#"},e}();Ut.decorators=[{type:t.Pipe,args:[{name:"externalHref"}]}];var jt=function(){function e(e){var r=this;this.elementRef=e,this.desyAttributeChange=new t.EventEmitter,this.desyAttributeChangeMutation=new t.EventEmitter;var a=this.elementRef.nativeElement;this.changes=new MutationObserver((function(e){e.forEach((function(e){r.attributesToCheck&&(("string"==typeof r.attributesToCheck?[r.attributesToCheck]:r.attributesToCheck).findIndex((function(t){return t===e.attributeName}))>=0&&(r.desyAttributeChange.emit(r.elementRef.nativeElement.innerHTML),r.desyAttributeChangeMutation.emit(e)))}))})),this.changes.observe(a,{attributes:!0,childList:!1,characterData:!1,subtree:!1})}return e.prototype.ngOnDestroy=function(){this.changes.disconnect()},e}();jt.decorators=[{type:t.Directive,args:[{selector:"[desyAttributeChange]"}]}],jt.ctorParameters=function(){return[{type:t.ElementRef}]},jt.propDecorators={attributesToCheck:[{type:t.Input}],desyAttributeChange:[{type:t.Output}],desyAttributeChangeMutation:[{type:t.Output}]};var $t=function(){function e(e){this.el=e,this.deleteContentIfEmpty=!0}return e.prototype.ngOnChanges=function(e){this.content?this.isHtml?this.el.nativeElement.innerHTML=this.content:this.el.nativeElement.innerText=this.content:this.deleteContentIfEmpty&&(this.el.nativeElement.innerText=null)},e}();$t.decorators=[{type:t.Directive,args:[{selector:"[desyInnerContent]"}]}],$t.ctorParameters=function(){return[{type:t.ElementRef}]},$t.propDecorators={content:[{type:t.Input,args:["desyInnerContent"]}],isHtml:[{type:t.Input}],deleteContentIfEmpty:[{type:t.Input}]};var Wt=function(){function e(e){this.hostElementRef=e,this.active=!0,this.clickOutside=new t.EventEmitter}return e.prototype.onClick=function(e){!(this.desyClickOutsideElem?this.desyClickOutsideElem.contains(e):this.hostElementRef.nativeElement.contains(e))&&this.active&&this.clickOutside.emit()},e}();Wt.decorators=[{type:t.Directive,args:[{selector:"[desyClickOutside]"}]}],Wt.ctorParameters=function(){return[{type:t.ElementRef}]},Wt.propDecorators={active:[{type:t.Input,args:["desyClickOutside"]}],clickOutside:[{type:t.Output}],desyClickOutsideElem:[{type:t.Input}],onClick:[{type:t.HostListener,args:["document:click",["$event.target"]]}]};var Yt=function(){function e(e){var r=this;this.elementRef=e,this.observeProperties={attributes:!1,childList:!0,characterData:!0,subtree:!0},this.desyContentChange=new t.EventEmitter,this.desyContentChangeMutation=new t.EventEmitter;var a=this.elementRef.nativeElement;this.changes=new MutationObserver((function(e){e.forEach((function(e){r.desyContentChange.emit(r.elementRef),r.desyContentChangeMutation.emit(e)}))})),this.changes.observe(a,this.observeProperties)}return e.prototype.ngOnDestroy=function(){this.changes.disconnect()},e}();Yt.decorators=[{type:t.Directive,args:[{selector:"[desyContentChange]"}]}],Yt.ctorParameters=function(){return[{type:t.ElementRef}]},Yt.propDecorators={observeProperties:[{type:t.Input}],desyContentChange:[{type:t.Output}],desyContentChangeMutation:[{type:t.Output}]};var Kt=function(){function e(e){var r=this;this.elementRef=e,this.desyContentEmpty=new t.EventEmitter,this.desyContentNotEmpty=new t.EventEmitter,this.lastWasEmpty=!1,this.viewInit=!1;var a=this.elementRef.nativeElement;this.changes=new MutationObserver((function(e){return e.forEach((function(){return r.checkContent()}))})),this.changes.observe(a,{attributes:!1,childList:!0,characterData:!0,subtree:!1})}return e.prototype.ngAfterViewInit=function(){this.viewInit||(this.viewInit=!0,this.checkContent())},e.prototype.checkContent=function(){if(this.viewInit){for(var e=this.elementRef.nativeElement.childNodes,t=!1,r=0;r<e.length&&!t;r++){var a=e.item(r);a.nodeType===Node.TEXT_NODE&&a.textContent.length>0?t=!0:a.nodeType!==Node.ELEMENT_NODE&&a.nodeType!==Node.CDATA_SECTION_NODE||!this.isContentNode(a)||(t=!0)}t?(this.lastWasEmpty&&this.desyContentNotEmpty.emit(this.elementRef.nativeElement.innerHTML),this.lastWasEmpty=!1):(this.lastWasEmpty||this.desyContentEmpty.emit(this.elementRef.nativeElement.innerHTML),this.lastWasEmpty=!0)}},e.prototype.isContentNode=function(e){var t=!0;return this.contentsToIgnore&&this.contentsToIgnore.length>0&&(t=!this.contentsToIgnore.find((function(t){return t.nativeElement===e}))),t},e.prototype.ngOnDestroy=function(){this.changes.disconnect()},e}();Kt.decorators=[{type:t.Directive,args:[{selector:"[desyContentEmpty]"}]}],Kt.ctorParameters=function(){return[{type:t.ElementRef}]},Kt.propDecorators={desyContentEmpty:[{type:t.Output}],desyContentNotEmpty:[{type:t.Output}],contentsToIgnore:[{type:t.ContentChildren,args:["desyContentEmptyIgnore",{read:t.ElementRef}]}]};var Xt=function(){function e(e,t,r){this.viewContainerRef=e,this.resolver=t,this.injector=r,this.factory=this.resolver.resolveComponentFactory(v)}return e.prototype.ngOnChanges=function(e){if(this.viewContainerRef.clear(),this.desyCustomInnerContent.component&&this.desyCustomInnerContent.component instanceof v)this.viewContainerRef.createEmbeddedView(this.desyCustomInnerContent.component.getContent());else if(this.desyCustomInnerContent.template)this.viewContainerRef.createEmbeddedView(this.desyCustomInnerContent.template);else if(this.desyCustomInnerContent.html){var t=document.createElement("div");t.innerHTML=this.desyCustomInnerContent.html;var r=[];t.childNodes.forEach((function(e){return r.push(e)}));var a=this.factory.create(this.injector,[r]);this.viewContainerRef.createEmbeddedView(a.instance.getContent())}else if(this.desyCustomInnerContent.text){var n=document.createTextNode(this.desyCustomInnerContent.text);a=this.factory.create(this.injector,[[n]]);this.viewContainerRef.createEmbeddedView(a.instance.getContent())}},e}();Xt.decorators=[{type:t.Directive,args:[{selector:"[desyCustomInnerContent]"}]}],Xt.ctorParameters=function(){return[{type:t.ViewContainerRef},{type:t.ComponentFactoryResolver},{type:t.Injector}]},Xt.propDecorators={desyCustomInnerContent:[{type:t.Input}]};var Qt=function(){};Qt.decorators=[{type:t.NgModule,args:[{declarations:[C,v,x,D,E,Gt,te,Ut,jt,$t,Wt,Yt,Kt,Xt],imports:[i.CommonModule],exports:[o.RouterModule,C,v,x,D,E,Gt,te,Ut,jt,$t,Wt,Yt,Kt,Xt]}]}];var Jt=function(){};Jt.decorators=[{type:t.Component,args:[{selector:"desy-template-driven-wrapper",template:"<ng-content></ng-content>\r\n",providers:[{provide:r.ControlContainer,useExisting:r.NgForm}]}]}];var Zt=function(){};Zt.decorators=[{type:t.NgModule,args:[{declarations:[F,O,A,N],imports:[i.CommonModule,Qt,s.NgxTippyModule],exports:[F,O,A,N]}]}];var er=function(){};er.decorators=[{type:t.NgModule,args:[{declarations:[Jt,U,q,z,V,G,_,j,$,W,Q,J,ie,Z,pe,ne,ge,re,ae,le,oe,de,se,he,be,K,X,Y,ce,ue,me,ye],imports:[i.CommonModule,r.FormsModule,r.ReactiveFormsModule,Qt,Zt],exports:[q,z,V,G,_,j,$,W,Q,J,ie,ne,ge,re,ae,le,oe,de,se,he,be,K,X,ce,ue,me,ye]}]}];var tr=function(e){function t(t){var r=e.call(this)||this;return r.changeDetectorRef=t,r.hasContent=!0,r.hasIconComponentContent=!0,r}return u(t,e),t.prototype.ngOnChanges=function(e){if(!this.id)throw Error("id is required")},t.prototype.ngAfterContentInit=function(){var e=this.tooltipContent.nativeElement;this.tippyProperties={placement:"top",inlinePositioning:!0,content:e,allowHTML:!0,trigger:"mouseenter focus",hideOnClick:!1,theme:"",plugins:[{name:"hideOnEsc",defaultValue:!0,fn:function(e){var r=e.hide;function a(e){e.key===t.KEY_CODE_ESC&&r()}return{onShow:function(){document.addEventListener("keydown",a)},onHide:function(){document.removeEventListener("keydown",a)}}}}],role:"tooltip",aria:{content:this.complex?"describedby":"labelledby"}}},t.prototype.getIdButton=function(){return this.id+"-button"},t.prototype.getIdTooltip=function(){return this.id+"-tooltip"},t.prototype.handleEmptyContent=function(e){this.hasContent=!e,this.changeDetectorRef.detectChanges()},t.prototype.handleEmptyIconContent=function(e){this.hasIconComponentContent=!e,this.changeDetectorRef.detectChanges()},t.prototype.handleEmptyTooltipContent=function(){throw Error("caller attribute or inner desy-tooltip-content component are required")},t.prototype.getMainContent=function(){var e;return this.html?e=this.html:this.text&&(e="<p>"+this.text+"</p>"),e},t.prototype.getIconContent=function(e){return e.html?this.icon.html:"info"===e.type?'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-primary-base" role="img" aria-label="Información"><path d="M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm7.5 105a7.5 7.5 0 01-15 0V70a7.5 7.5 0 0115 0zM70 50a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>':"alert"===e.type?'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-alert-base" role="img" aria-label="Alerta"><path d="M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>':'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-primary-base" role="img" aria-label="Ayuda"><path d="M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm0 117.51a10 10 0 1110-10 10 10 0 01-10 10zm9.17-39.08a2.5 2.5 0 00-1.67 2.36v1.71a7.5 7.5 0 01-15 0v-10A7.5 7.5 0 0170 65a12.5 12.5 0 10-12.5-12.5 7.5 7.5 0 01-15 0 27.5 27.5 0 1136.67 25.93z" fill="currentColor"/></svg>'},t}(C);tr.KEY_CODE_ESC="Escape",tr.decorators=[{type:t.Component,args:[{selector:"desy-tooltip",template:'<div [attr.id]="id" [ngClass]="classes"\r\n [attr.role]="role ? role : null"\r\n [attr.aria-describedby]="ariaDescribedBy ? ariaDescribedBy : null"\r\n [attr.aria-errormessage]="ariaErrorMessage ? ariaErrorMessage : null"\r\n [attr.aria-label]="ariaLabel ? ariaLabel : null"\r\n [attr.aria-labelledby]="ariaLabelledBy ? ariaLabelledBy : null"\r\n [attr.aria-hidden]="ariaHidden ? ariaHidden : null"\r\n [attr.aria-disabled]="ariaDisabled ? ariaDisabled : null"\r\n [attr.aria-controls]="ariaControls ? ariaControls : null"\r\n [attr.aria-current]="ariaCurrent ? ariaCurrent : null"\r\n [attr.aria-live]="ariaLive ? ariaLive : null"\r\n [attr.aria-expanded]="ariaExpanded ? ariaExpanded : null"\r\n [attr.aria-haspopup]="ariaHasPopup ? ariaHasPopup : null"\r\n [attr.tabindex]="tabindex ? tabindex : null">\r\n <div *ngIf="tippyProperties" [attr.id]="getIdButton()"\r\n ngxTippy [tippyProps]="tippyProperties"\r\n class="inline-flex items-center focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black"\r\n tabindex="0" role="button"\r\n [attr.aria-labelledby]="getIdButton() + \' \' + getIdTooltip()"\r\n (desyContentEmpty)="handleEmptyContent(true)" (desyContentNotEmpty)="handleEmptyContent(false)">\r\n <ng-container *desyCustomInnerContent="{ component: contentComponent, html: getMainContent() }"></ng-container>\r\n <span *ngIf="hasContent && ( (iconComponent) || (icon) )" #desyContentEmptyIgnore class="inline-block w-1.5"></span>\r\n <span *ngIf="iconComponent" #desyContentEmptyIgnore class="inline-block"\r\n (desyContentEmpty)="handleEmptyIconContent(true)"\r\n (desyContentNotEmpty)="handleEmptyIconContent(false)">\r\n <ng-container *desyCustomInnerContent="{ component: iconComponent }"></ng-container>\r\n\r\n <ng-container *ngIf="!hasIconComponentContent">\r\n <ng-container [ngSwitch]="iconComponent.type">\r\n <svg *ngSwitchCase="\'info\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-primary-base" role="img" aria-label="Información"><path d="M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm7.5 105a7.5 7.5 0 01-15 0V70a7.5 7.5 0 0115 0zM70 50a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>\r\n <svg *ngSwitchCase="\'alert\'" #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-alert-base" role="img" aria-label="Alerta"><path d="M138.42 118.29l-55-110a15 15 0 00-26.84 0l-55 110A15 15 0 0015 140h110a15 15 0 0013.42-21.71zM62.5 50a7.5 7.5 0 0115 0v30a7.5 7.5 0 01-15 0zm7.5 70a10 10 0 1110-10 10 10 0 01-10 10z" fill="currentColor"/></svg>\r\n <svg *ngSwitchDefault #desyContentEmptyIgnore xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" width="1em" height="1em" class="w-4 h-4 text-primary-base" role="img" aria-label="Ayuda"><path d="M70 0a70 70 0 1070 70A70.08 70.08 0 0070 0zm0 117.51a10 10 0 1110-10 10 10 0 01-10 10zm9.17-39.08a2.5 2.5 0 00-1.67 2.36v1.71a7.5 7.5 0 01-15 0v-10A7.5 7.5 0 0170 65a12.5 12.5 0 10-12.5-12.5 7.5 7.5 0 01-15 0 27.5 27.5 0 1136.67 25.93z" fill="currentColor"/></svg>\r\n </ng-container>\r\n </ng-container>\r\n </span>\r\n <span *ngIf="!iconComponent && icon" #desyContentEmptyIgnore class="inline-block">\r\n <ng-container *desyCustomInnerContent="{ html: getIconContent(icon) }"></ng-container>\r\n </span>\r\n </div>\r\n\r\n <div #tooltipContent [attr.id]="getIdTooltip()"\r\n [class]="[\'-my-xs p-sm shadow-md bg-black rounded text-white\', classesTooltip] | makeHtmlList"\r\n (desyContentEmpty)="handleEmptyTooltipContent()">\r\n <ng-container *desyCustomInnerContent="{ component: tooltipContentComponent, template: caller }"></ng-container>\r\n </div>\r\n</div>\r\n'}]}],tr.ctorParameters=function(){return[{type:t.ChangeDetectorRef}]},tr.propDecorators={contentComponent:[{type:t.ContentChildren,args:[O]}],iconComponent:[{type:t.ContentChildren,args:[F]}],tooltipContentComponent:[{type:t.ContentChildren,args:[Vt]}],tooltipContent:[{type:t.ViewChild,args:["tooltipContent",{read:t.ElementRef,static:!0}]}],id:[{type:t.Input}],text:[{type:t.Input}],html:[{type:t.Input}],complex:[{type:t.Input}],classes:[{type:t.Input}],classesTooltip:[{type:t.Input}],icon:[{type:t.Input}],caller:[{type:t.Input}]},m([P()],tr.prototype,"contentComponent",void 0),m([P()],tr.prototype,"iconComponent",void 0),m([P()],tr.prototype,"tooltipContentComponent",void 0);var rr=function(){};rr.decorators=[{type:t.NgModule,args:[{declarations:[ft,xt,Ct,vt,It,Dt,Mt,kt,Ht,Lt,wt,Rt,Tt,Bt,Pt,St,Ot,At,qt,tr,Vt,Ft,Nt],imports:[i.CommonModule,Qt,er,Zt,s.NgxTippyModule],exports:[ft,xt,Ct,vt,It,Dt,Mt,kt,Ht,Lt,wt,Rt,Tt,Bt,Pt,St,Ot,At,qt,tr,Vt,Ft,Nt]}]}];var ar=function(){};ar.decorators=[{type:t.NgModule,args:[{declarations:[L,w,k,R,S,T,B],imports:[i.CommonModule,Qt,rr,s.NgxTippyModule],exports:[L,w,k,R,S,T,B]}]}];var nr=function(){};nr.decorators=[{type:t.NgModule,args:[{declarations:[ve,fe,Ce,Ie],imports:[i.CommonModule,n.A11yModule,Qt,ar],exports:[ve,fe,Ce,Ie]}]}];var ir=function(){};ir.decorators=[{type:t.NgModule,args:[{declarations:[Le,Ee,Ge,_e,Ve,ze,qe,Ne,Fe,Ae,Re,Be,Me,Se,He,ke,we,je,Ue,Ke,Ye,We,$e,tt,et,Ze,Je,Qe,Pe,at,rt,Oe,Te,Xe],imports:[i.CommonModule,Qt,Zt,ar],exports:[Le,Ee,Ge,_e,Ve,ze,qe,Ne,Fe,Ae,Re,Be,Me,Se,ke,He,we,je,Ue,Ke,Ye,We,$e,tt,et,Ze,Je,Qe,Pe,at,rt,Te,Oe]}]}];var or=function(){function e(e){this.el=e}return e.prototype.onClick=function(){var e,t,r=this.el.nativeElement.offsetParent.querySelectorAll("[tabindex]");try{for(var a=b(r),n=a.next();!n.done;n=a.next()){n.value.setAttribute("tabindex","-1")}}catch(t){e={error:t}}finally{try{n&&!n.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}this.activeTabindex()},e.prototype.manageArrows=function(e){if("ArrowDown"===e.code||"ArrowUp"===e.code||"ArrowRight"===e.code||"ArrowLeft"===e.code){var t=null;if("ArrowDown"===e.code||"ArrowUp"===e.code){var r=null;"ArrowDown"===e.code?r=this.el.nativeElement.parentNode.nextElementSibling:"ArrowUp"===e.code&&(r=this.el.nativeElement.parentNode.previousElementSibling),t=r?r.children[this.findIndex()]:null,e.preventDefault()}if("ArrowRight"===e.code||"ArrowLeft"===e.code){t=this.el.nativeElement;do{"ArrowRight"===e.code?t=t.nextElementSibling:"ArrowLeft"===e.code&&(t=t.previousElementSibling)}while(t&&!t.getAttribute("tabindex"))}t&&t.getAttribute("tabindex")&&(this.inactiveTabindex(),t.setAttribute("tabindex","0"),t.focus())}},e.prototype.activeTabindex=function(){this.el.nativeElement.setAttribute("tabindex","0")},e.prototype.inactiveTabindex=function(){this.el.nativeElement.setAttribute("tabindex","-1")},e.prototype.findIndex=function(){for(var e=this.el.nativeElement,t=this.el.nativeElement.parentNode,r=-1,a=0;a<t.children.length;a++){var n=t.children[a];if(e.isEqualNode(n)){r=a;break}}return r},e}();or.decorators=[{type:t.Directive,args:[{selector:"[desyFocusClickedCell]"}]}],or.ctorParameters=function(){return[{type:t.ElementRef}]},or.propDecorators={onClick:[{type:t.HostListener,args:["click"]}],manageArrows:[{type:t.HostListener,args:["keydown",["$event"]]}]};var lr=function(){};lr.decorators=[{type:t.NgModule,args:[{declarations:[st,ot,nt,it,lt,yt,ut,ct,gt,mt,or,ht,bt],imports:[i.CommonModule,r.FormsModule,r.ReactiveFormsModule,n.A11yModule,Qt,er],exports:[st,ot,nt,it,lt,yt,ut,ct,gt,mt]}]}];var sr=function(){};sr.decorators=[{type:t.NgModule,args:[{declarations:[_t],imports:[i.CommonModule,Qt,ir,ar],exports:[_t]}]}];var dr=function(){};dr.decorators=[{type:t.NgModule,args:[{imports:[ar,Zt,er,nr,ir,lr,rr,sr,Zt],exports:[ar,Zt,er,nr,ir,lr,rr,sr,Zt]}]}],e.AccordionComponent=xt,e.AccordionHeaderComponent=Ct,e.AccordionItemComponent=vt,e.AlertComponent=ft,e.AlertService=zt,e.BreadcrumbsComponent=Le,e.BreadcrumbsItemComponent=Ee,e.ButtonComponent=L,e.ButtonLoaderComponent=w,e.CharacterCountComponent=$,e.CheckboxItemComponent=se,e.CheckboxesComponent=de,e.CollapsibleComponent=Mt,e.ConditionDirective=ye,e.ContentComponent=O,e.DateInputComponent=he,e.DefinitionComponent=wt,e.DescriptionComponent=A,e.DescriptionItemComponent=Ht,e.DescriptionListComponent=kt,e.DesyAngularModule=dr,e.DesyButtonsModule=ar,e.DesyCommonsModule=Zt,e.DesyFormsModule=er,e.DesyModalsModule=nr,e.DesyNavModule=ir,e.DesyPaginationModule=sr,e.DesyTablesModule=lr,e.DesyViewsModule=rr,e.DetailsComponent=Dt,e.DialogComponent=Ie,e.DialogService=De,e.DropdownComponent=k,e.ErrorMessageComponent=V,e.ErrorSummaryComponent=Ge,e.ErrorSummaryItemComponent=_e,e.FieldsetComponent=G,e.FileUploadComponent=J,e.FooterComponent=Ve,e.FooterMetaComponent=ze,e.FooterMetaItemComponent=qe,e.FooterNavigationComponent=Ne,e.FooterNavigationItemComponent=Fe,e.HeaderComponent=Ae,e.HeaderDropdownComponent=Se,e.HeaderNavigationComponent=Be,e.HeaderOffcanvasButtonComponent=He,e.HeaderOffcanvasCloseButtonComponent=we,e.HeaderOffcanvasComponent=ke,e.HeaderSubnavComponent=Re,e.HintComponent=q,e.IconComponent=F,e.InputComponent=W,e.InputGroupComponent=ie,e.InputGroupDividerComponent=ne,e.InputGroupInputComponent=re,e.InputGroupSelectComponent=ae,e.ItemComponent=Rt,e.ItemContentBottomComponent=Tt,e.ItemContentRightComponent=Bt,e.ItemItemComponent=Pt,e.LabelComponent=z,e.LegendComponent=_,e.ListboxComponent=R,e.ListboxItemComponent=T,e.ListboxLabelComponent=B,e.MediaObjectComponent=St,e.MenuHorizontalComponent=je,e.MenuHorizontalItemComponent=Ue,e.MenuVerticalComponent=Ke,e.MenuVerticalItemComponent=Ye,e.MenuVerticalItemSubComponent=We,e.MenuVerticalItemSubItemComponent=$e,e.MenubarComponent=tt,e.MenubarItemComponent=Ze,e.MenubarLabelComponent=et,e.MenubarSubitemComponent=Je,e.MenubarSubsubitemComponent=Qe,e.ModalButtonPrimaryComponent=fe,e.ModalButtonSecondaryComponent=Ce,e.ModalComponent=ve,e.NavComponent=Pe,e.NavItemComponent=Te,e.NotificationComponent=at,e.NotificationItemComponent=rt,e.OptionComponent=K,e.OptionGroupComponent=X,e.PaginationComponent=_t,e.PillComponent=S,e.RadioItemComponent=oe,e.RadiosComponent=le,e.SearchBarComponent=be,e.SelectComponent=Q,e.SkipLinkComponent=Oe,e.SpinnerComponent=It,e.StatusComponent=Ot,e.StatusItemComponent=At,e.TableAdvancedComponent=yt,e.TableAdvancedHeaderCellComponent=ct,e.TableAdvancedHeaderComponent=ut,e.TableAdvancedRowCellComponent=mt,e.TableAdvancedRowComponent=gt,e.TableCaptionComponent=ot,e.TableCellComponent=nt,e.TableComponent=st,e.TableHeaderComponent=it,e.TableRowComponent=lt,e.TabsComponent=qt,e.TermComponent=Lt,e.TextareaComponent=j,e.TitleComponent=N,e.TooltipContentComponent=Vt,e.summaryTextOrSummaryHtmlRequiredFunction=Et,e.ɵa=C,e.ɵb=E,e.ɵba=Xt,e.ɵbb=tr,e.ɵbc=Jt,e.ɵbd=ge,e.ɵbe=ce,e.ɵbf=ue,e.ɵbg=me,e.ɵbh=or,e.ɵc=D,e.ɵd=P,e.ɵe=v,e.ɵf=U,e.ɵg=Y,e.ɵh=ee,e.ɵi=Z,e.ɵj=pe,e.ɵk=Me,e.ɵl=Xe,e.ɵm=bt,e.ɵn=ht,e.ɵo=Nt,e.ɵp=Ft,e.ɵq=Qt,e.ɵr=x,e.ɵs=Gt,e.ɵt=te,e.ɵu=Ut,e.ɵv=jt,e.ɵw=$t,e.ɵx=Wt,e.ɵy=Yt,e.ɵz=Kt,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
16
|
//# sourceMappingURL=desy-angular.umd.min.js.map
|