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.
Files changed (422) hide show
  1. package/README.md +5 -5
  2. package/bundles/desy-angular.umd.js +5961 -1898
  3. package/bundles/desy-angular.umd.js.map +1 -1
  4. package/bundles/desy-angular.umd.min.js +2 -2
  5. package/bundles/desy-angular.umd.min.js.map +1 -1
  6. package/desy-angular.d.ts +30 -17
  7. package/desy-angular.metadata.json +1 -1
  8. package/esm2015/desy-angular.js +31 -18
  9. package/esm2015/lib/desy-angular.module.js +6 -3
  10. package/esm2015/lib/desy-buttons/components/button/button.component.js +9 -20
  11. package/esm2015/lib/desy-buttons/components/button-loader/button-loader.component.js +8 -3
  12. package/esm2015/lib/desy-buttons/components/dropdown/dropdown.component.js +76 -17
  13. package/esm2015/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.js +26 -0
  14. package/esm2015/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.js +14 -0
  15. package/esm2015/lib/desy-buttons/components/listbox/listbox.component.js +287 -0
  16. package/esm2015/lib/desy-buttons/components/pill/pill.component.js +8 -10
  17. package/esm2015/lib/desy-buttons/desy-buttons.module.js +15 -4
  18. package/esm2015/lib/desy-buttons/interfaces/listbox-item-data.js +2 -0
  19. package/esm2015/lib/desy-buttons/interfaces/listbox-label-data.js +2 -0
  20. package/esm2015/lib/desy-commons/components/content/content.component.js +14 -0
  21. package/esm2015/lib/desy-commons/components/description/description.component.js +14 -0
  22. package/esm2015/lib/desy-commons/components/icon/icon.component.js +14 -0
  23. package/esm2015/lib/desy-commons/components/title/title.component.js +14 -0
  24. package/esm2015/lib/desy-commons/desy-commons.module.js +33 -0
  25. package/esm2015/lib/desy-commons/interfaces/content-data.js +2 -0
  26. package/esm2015/lib/desy-commons/interfaces/description-data.js +2 -0
  27. package/esm2015/lib/desy-commons/interfaces/icon-data.js +2 -0
  28. package/esm2015/lib/desy-commons/interfaces/index.js +5 -0
  29. package/esm2015/lib/desy-commons/interfaces/title-data.js +2 -0
  30. package/esm2015/lib/desy-forms/components/character-count/character-count.component.js +2 -2
  31. package/esm2015/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.js +190 -0
  32. package/esm2015/lib/desy-forms/components/checkboxes/checkboxes.component.js +181 -74
  33. package/esm2015/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.js +46 -0
  34. package/esm2015/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.js +19 -0
  35. package/esm2015/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.js +13 -0
  36. package/esm2015/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.js +46 -0
  37. package/esm2015/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.js +44 -0
  38. package/esm2015/lib/desy-forms/components/date-input/date-input.component.js +132 -27
  39. package/esm2015/lib/desy-forms/components/error-message/error-message.component.js +17 -5
  40. package/esm2015/lib/desy-forms/components/fieldset/fieldset.component.js +27 -4
  41. package/esm2015/lib/desy-forms/components/fieldset/legend/legend.component.js +6 -5
  42. package/esm2015/lib/desy-forms/components/file-upload/file-upload.component.js +1 -1
  43. package/esm2015/lib/desy-forms/components/form-field/form-field.component.js +45 -7
  44. package/esm2015/lib/desy-forms/components/hint/hint.component.js +18 -6
  45. package/esm2015/lib/desy-forms/components/input/input.component.js +2 -3
  46. package/esm2015/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.js +20 -0
  47. package/esm2015/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.js +46 -0
  48. package/esm2015/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.js +13 -0
  49. package/esm2015/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.js +42 -0
  50. package/esm2015/lib/desy-forms/components/input-group/input-group.component.js +115 -21
  51. package/esm2015/lib/desy-forms/components/label/label.component.js +21 -8
  52. package/esm2015/lib/desy-forms/components/radios/radio-item/radio-item.component.js +147 -0
  53. package/esm2015/lib/desy-forms/components/radios/radios.component.js +198 -12
  54. package/esm2015/lib/desy-forms/components/search-bar/search-bar.component.js +14 -4
  55. package/esm2015/lib/desy-forms/components/select/option/option.component.js +17 -0
  56. package/esm2015/lib/desy-forms/components/select/option-group/option-group.component.js +17 -0
  57. package/esm2015/lib/desy-forms/components/select/select-item/select-item.component.js +14 -0
  58. package/esm2015/lib/desy-forms/components/select/select.component.js +33 -18
  59. package/esm2015/lib/desy-forms/components/template-driven-wrapper/template-driven-wrapper.component.js +1 -1
  60. package/esm2015/lib/desy-forms/components/textarea/textarea.component.js +1 -1
  61. package/esm2015/lib/desy-forms/desy-forms.module.js +43 -6
  62. package/esm2015/lib/desy-forms/directives/condition.directive.js +1 -1
  63. package/esm2015/lib/desy-forms/interfaces/accesibility-data.js +1 -1
  64. package/esm2015/lib/desy-forms/interfaces/error-message-data.js +1 -1
  65. package/esm2015/lib/desy-forms/interfaces/fieldset-data.js +1 -1
  66. package/esm2015/lib/desy-forms/interfaces/hint-data.js +1 -1
  67. package/esm2015/lib/desy-forms/interfaces/index.js +1 -1
  68. package/esm2015/lib/desy-forms/interfaces/item-checkbox-data.js +1 -1
  69. package/esm2015/lib/desy-forms/interfaces/item-date-input-data.js +1 -1
  70. package/esm2015/lib/desy-forms/interfaces/item-divider-date-input-data.js +2 -0
  71. package/esm2015/lib/desy-forms/interfaces/item-divider-input-group-data.js +1 -1
  72. package/esm2015/lib/desy-forms/interfaces/item-input-group-data.js +1 -1
  73. package/esm2015/lib/desy-forms/interfaces/item-radio-data.js +1 -1
  74. package/esm2015/lib/desy-forms/interfaces/item-radio-with-template-data.js +1 -1
  75. package/esm2015/lib/desy-forms/interfaces/label-data.js +1 -1
  76. package/esm2015/lib/desy-forms/interfaces/legend-data.js +1 -1
  77. package/esm2015/lib/desy-forms/interfaces/select-item-data.js +1 -1
  78. package/esm2015/lib/desy-modals/components/dialog/dialog.component.js +1 -1
  79. package/esm2015/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.js +19 -0
  80. package/esm2015/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.js +19 -0
  81. package/esm2015/lib/desy-modals/components/modal/modal.component.js +106 -21
  82. package/esm2015/lib/desy-modals/desy-modals.module.js +7 -1
  83. package/esm2015/lib/desy-modals/interfaces/dialog-options.js +1 -1
  84. package/esm2015/lib/desy-modals/interfaces/index.js +1 -1
  85. package/esm2015/lib/desy-modals/interfaces/modal-button-data.js +1 -1
  86. package/esm2015/lib/desy-modals/interfaces/modal-data.js +1 -1
  87. package/esm2015/lib/desy-modals/interfaces/modal-icon-data.js +1 -1
  88. package/esm2015/lib/desy-modals/interfaces/modal-options.js +1 -1
  89. package/esm2015/lib/desy-modals/interfaces/open-dialog-result.js +1 -1
  90. package/esm2015/lib/desy-modals/services/dialog.service.js +1 -1
  91. package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.js +15 -0
  92. package/esm2015/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.js +18 -16
  93. package/esm2015/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.js +15 -0
  94. package/esm2015/lib/desy-nav/components/error-summary/error-summary.component.js +34 -13
  95. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.js +16 -0
  96. package/esm2015/lib/desy-nav/components/footer/footer-meta/footer-meta.component.js +23 -0
  97. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.js +16 -0
  98. package/esm2015/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.js +16 -0
  99. package/esm2015/lib/desy-nav/components/footer/footer.component.js +31 -8
  100. package/esm2015/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.js +26 -36
  101. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.js +19 -0
  102. package/esm2015/lib/desy-nav/components/header/header-navigation/header-navigation.component.js +14 -7
  103. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.js +25 -0
  104. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.js +11 -0
  105. package/esm2015/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.js +76 -14
  106. package/esm2015/lib/desy-nav/components/header/header-subnav/header-subnav.component.js +26 -36
  107. package/esm2015/lib/desy-nav/components/header/header.component.js +38 -7
  108. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.js +28 -0
  109. package/esm2015/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.js +41 -21
  110. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.js +32 -0
  111. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.js +16 -0
  112. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.js +24 -0
  113. package/esm2015/lib/desy-nav/components/menu-vertical/menu-vertical.component.js +43 -93
  114. package/esm2015/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.js +36 -0
  115. package/esm2015/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.js +14 -0
  116. package/esm2015/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.js +29 -0
  117. package/esm2015/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.js +23 -0
  118. package/esm2015/lib/desy-nav/components/menubar/directives/menubaritem.directive.js +37 -0
  119. package/esm2015/lib/desy-nav/components/menubar/menubar.component.js +656 -0
  120. package/esm2015/lib/desy-nav/components/nav/nav-item/nav-item.component.js +30 -0
  121. package/esm2015/lib/desy-nav/components/nav/nav.component.js +44 -22
  122. package/esm2015/lib/desy-nav/components/notification/notification-item/notification-item.component.js +18 -0
  123. package/esm2015/lib/desy-nav/components/notification/notification.component.js +49 -22
  124. package/esm2015/lib/desy-nav/components/skip-link/skip-link.component.js +24 -5
  125. package/esm2015/lib/desy-nav/desy-nav.module.js +78 -12
  126. package/esm2015/lib/desy-nav/interfaces/breadcrumbs.data.js +1 -1
  127. package/esm2015/lib/desy-nav/interfaces/error-summary-data.js +1 -1
  128. package/esm2015/lib/desy-nav/interfaces/footer-data.js +1 -1
  129. package/esm2015/lib/desy-nav/interfaces/header-dropdown-data.js +1 -1
  130. package/esm2015/lib/desy-nav/interfaces/header-navigation-data.js +1 -1
  131. package/esm2015/lib/desy-nav/interfaces/header-navigation-item-data.js +1 -1
  132. package/esm2015/lib/desy-nav/interfaces/header-offcanvas-data.js +1 -1
  133. package/esm2015/lib/desy-nav/interfaces/header-subnav-data.js +1 -1
  134. package/esm2015/lib/desy-nav/interfaces/index.js +1 -5
  135. package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-data.js +1 -1
  136. package/esm2015/lib/desy-nav/interfaces/menu-horizontal-item-event-data.js +1 -1
  137. package/esm2015/lib/desy-nav/interfaces/menu-vertical-items-data.js +1 -1
  138. package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-data.js +1 -1
  139. package/esm2015/lib/desy-nav/interfaces/menu-vertical-sub-items-data.js +1 -1
  140. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.js +2 -0
  141. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub-item.js +2 -0
  142. package/esm2015/lib/desy-nav/interfaces/menubar-item-sub.js +2 -0
  143. package/esm2015/lib/desy-nav/interfaces/menubar-item.js +2 -0
  144. package/esm2015/lib/desy-nav/interfaces/nav-item-event.data.js +1 -1
  145. package/esm2015/lib/desy-nav/interfaces/nav-item.data.js +1 -1
  146. package/esm2015/lib/desy-nav/interfaces/notification-items-data.js +1 -1
  147. package/esm2015/lib/desy-nav/interfaces/notification-options.js +1 -1
  148. package/esm2015/lib/desy-pagination/components/pagination/pagination.component.js +41 -76
  149. package/esm2015/lib/desy-pagination/desy-pagination.module.js +1 -1
  150. package/esm2015/lib/desy-pagination/interfaces/index.js +1 -1
  151. package/esm2015/lib/desy-pagination/interfaces/pagination-item.data.js +1 -1
  152. package/esm2015/lib/desy-tables/components/table/components/table-caption.component.js +14 -0
  153. package/esm2015/lib/desy-tables/components/table/components/table-cell.component.js +17 -0
  154. package/esm2015/lib/desy-tables/components/table/components/table-header.component.js +14 -0
  155. package/esm2015/lib/desy-tables/components/table/components/table-row.component.js +14 -0
  156. package/esm2015/lib/desy-tables/components/table/table.component.js +47 -14
  157. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.js +20 -0
  158. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.js +14 -0
  159. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.js +17 -0
  160. package/esm2015/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.js +20 -0
  161. package/esm2015/lib/desy-tables/components/table-advanced/table-advanced.component.js +173 -149
  162. package/esm2015/lib/desy-tables/desy-tables.module.js +31 -3
  163. package/esm2015/lib/desy-tables/directives/cell.directive.js +26 -0
  164. package/esm2015/lib/desy-tables/directives/focus-clicked-cell.directive.js +12 -8
  165. package/esm2015/lib/desy-tables/directives/row.directive.js +24 -0
  166. package/esm2015/lib/desy-tables/interfaces/cell-data.js +1 -1
  167. package/esm2015/lib/desy-tables/interfaces/head-cell-data.js +1 -1
  168. package/esm2015/lib/desy-tables/interfaces/index.js +2 -1
  169. package/esm2015/lib/desy-tables/interfaces/recalculate-table-params.js +2 -0
  170. package/esm2015/lib/desy-tables/interfaces/row-data.js +1 -1
  171. package/esm2015/lib/desy-tables/interfaces/wrapper-data.js +2 -0
  172. package/esm2015/lib/desy-views/components/accordion/accordion-header/accordion-header.component.js +14 -0
  173. package/esm2015/lib/desy-views/components/accordion/accordion-item/accordion-item.component.js +33 -0
  174. package/esm2015/lib/desy-views/components/accordion/accordion.component.js +84 -56
  175. package/esm2015/lib/desy-views/components/alert/alert.component.js +28 -23
  176. package/esm2015/lib/desy-views/components/collapsible/collapsible.component.js +6 -10
  177. package/esm2015/lib/desy-views/components/description-list/definition/definition.component.js +15 -0
  178. package/esm2015/lib/desy-views/components/description-list/description-item/description-item.component.js +26 -0
  179. package/esm2015/lib/desy-views/components/description-list/description-list.component.js +13 -23
  180. package/esm2015/lib/desy-views/components/description-list/term/term.component.js +15 -0
  181. package/esm2015/lib/desy-views/components/details/details.component.js +1 -1
  182. package/esm2015/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.js +14 -0
  183. package/esm2015/lib/desy-views/components/item/item-content-right/item-content-right.component.js +11 -0
  184. package/esm2015/lib/desy-views/components/item/item-item/item-item.component.js +11 -0
  185. package/esm2015/lib/desy-views/components/item/item.component.js +57 -24
  186. package/esm2015/lib/desy-views/components/media-object/media-object.component.js +1 -1
  187. package/esm2015/lib/desy-views/components/spinner/spinner.component.js +1 -1
  188. package/esm2015/lib/desy-views/components/status/status.component.js +2 -2
  189. package/esm2015/lib/desy-views/components/status-item/status-item.component.js +39 -26
  190. package/esm2015/lib/desy-views/components/tabs/panel/panel.component.js +15 -0
  191. package/esm2015/lib/desy-views/components/tabs/tab-item/tab-item.component.js +28 -0
  192. package/esm2015/lib/desy-views/components/tabs/tabs.component.js +58 -36
  193. package/esm2015/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.js +11 -0
  194. package/esm2015/lib/desy-views/components/tooltip/tooltip.component.js +132 -0
  195. package/esm2015/lib/desy-views/desy-views.module.js +41 -1
  196. package/esm2015/lib/desy-views/interfaces/accordion-header.data.js +1 -1
  197. package/esm2015/lib/desy-views/interfaces/accordion-item.data.js +1 -1
  198. package/esm2015/lib/desy-views/interfaces/alert-options.js +1 -1
  199. package/esm2015/lib/desy-views/interfaces/description-item.data.js +2 -0
  200. package/esm2015/lib/desy-views/interfaces/index.js +4 -4
  201. package/esm2015/lib/desy-views/interfaces/open-alert-result.js +1 -1
  202. package/esm2015/lib/desy-views/interfaces/status-data.js +1 -1
  203. package/esm2015/lib/desy-views/interfaces/status-icon-data.js +1 -1
  204. package/esm2015/lib/desy-views/interfaces/status-item-title-data.js +1 -1
  205. package/esm2015/lib/desy-views/interfaces/tabs-items-data.js +1 -1
  206. package/esm2015/lib/desy-views/interfaces/tabs-panel-data.js +1 -1
  207. package/esm2015/lib/desy-views/interfaces/term-definition.data.js +2 -0
  208. package/esm2015/lib/desy-views/services/alert.service.js +1 -1
  209. package/esm2015/lib/shared/components/accessibility/accessibility.component.js +1 -1
  210. package/esm2015/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.js +27 -0
  211. package/esm2015/lib/shared/components/accessibility-and-text-or-html-required/accessibility-and-text-or-html-required.component.js +1 -1
  212. package/esm2015/lib/shared/components/content-base/content-base.component.js +20 -0
  213. package/esm2015/lib/shared/components/index.js +3 -1
  214. package/esm2015/lib/shared/components/text-or-html-required/text-or-html-required.component.js +1 -1
  215. package/esm2015/lib/shared/decorators/desy-content-child.decorator.js +41 -0
  216. package/esm2015/lib/shared/decorators/desy-on-input-change.decorator.js +19 -0
  217. package/esm2015/lib/shared/directives/attribute-change.directive.js +43 -0
  218. package/esm2015/lib/shared/directives/click-outside.directive.js +1 -1
  219. package/esm2015/lib/shared/directives/content-change.directive.js +43 -0
  220. package/esm2015/lib/shared/directives/content-empty.directive.js +86 -0
  221. package/esm2015/lib/shared/directives/custom-inner-content.directive.js +62 -0
  222. package/esm2015/lib/shared/directives/inner-content.directive.js +5 -3
  223. package/esm2015/lib/shared/interfaces/accesibility-data.js +1 -1
  224. package/esm2015/lib/shared/pipes/external-href.pipe.js +28 -0
  225. package/esm2015/lib/shared/pipes/inner-html.pipe.js +1 -1
  226. package/esm2015/lib/shared/pipes/make-html-list.pipe.js +1 -1
  227. package/esm2015/lib/shared/shared.module.js +23 -4
  228. package/esm2015/lib/shared/utils/focus-utils.js +1 -1
  229. package/esm2015/lib/shared/utils/search-utils.js +1 -1
  230. package/esm2015/lib/shared/utils/string-utils.js +18 -0
  231. package/esm2015/public-api.js +88 -29
  232. package/fesm2015/desy-angular.js +5759 -2069
  233. package/fesm2015/desy-angular.js.map +1 -1
  234. package/lib/desy-buttons/components/button/button.component.d.ts +6 -7
  235. package/lib/desy-buttons/components/button-loader/button-loader.component.d.ts +1 -0
  236. package/lib/desy-buttons/components/dropdown/dropdown.component.d.ts +9 -7
  237. package/lib/desy-buttons/components/listbox/listbox-item/listbox-item.component.d.ts +12 -0
  238. package/lib/desy-buttons/components/listbox/listbox-label/listbox-label.component.d.ts +4 -0
  239. package/lib/desy-buttons/components/listbox/listbox.component.d.ts +53 -0
  240. package/lib/desy-buttons/components/pill/pill.component.d.ts +3 -3
  241. package/lib/desy-buttons/interfaces/listbox-item-data.d.ts +9 -0
  242. package/lib/{desy-nav/interfaces/notification-title-data.d.ts → desy-buttons/interfaces/listbox-label-data.d.ts} +1 -1
  243. package/lib/desy-commons/components/content/content.component.d.ts +5 -0
  244. package/lib/desy-commons/components/description/description.component.d.ts +5 -0
  245. package/lib/desy-commons/components/icon/icon.component.d.ts +5 -0
  246. package/lib/desy-commons/components/title/title.component.d.ts +5 -0
  247. package/lib/desy-commons/desy-commons.module.d.ts +2 -0
  248. package/lib/{desy-nav/interfaces/notification-content-data.d.ts → desy-commons/interfaces/content-data.d.ts} +1 -1
  249. package/lib/desy-commons/interfaces/description-data.d.ts +5 -0
  250. package/lib/desy-commons/interfaces/icon-data.d.ts +4 -0
  251. package/lib/desy-commons/interfaces/index.d.ts +4 -0
  252. package/lib/desy-commons/interfaces/title-data.d.ts +6 -0
  253. package/lib/desy-forms/components/checkboxes/checkbox-item/checkbox-item.component.d.ts +47 -0
  254. package/lib/desy-forms/components/checkboxes/checkboxes.component.d.ts +53 -15
  255. package/lib/desy-forms/components/date-input/date-input-day/date-input-day.component.d.ts +22 -0
  256. package/lib/desy-forms/components/date-input/date-input-divider/date-input-divider.component.d.ts +7 -0
  257. package/lib/desy-forms/components/date-input/date-input-item/date-input-item.component.d.ts +4 -0
  258. package/lib/desy-forms/components/date-input/date-input-month/date-input-month.component.d.ts +22 -0
  259. package/lib/desy-forms/components/date-input/date-input-year/date-input-year.component.d.ts +19 -0
  260. package/lib/desy-forms/components/date-input/date-input.component.d.ts +21 -4
  261. package/lib/desy-forms/components/error-message/error-message.component.d.ts +8 -2
  262. package/lib/desy-forms/components/fieldset/fieldset.component.d.ts +12 -4
  263. package/lib/desy-forms/components/fieldset/legend/legend.component.d.ts +3 -2
  264. package/lib/desy-forms/components/form-field/form-field.component.d.ts +7 -18
  265. package/lib/desy-forms/components/hint/hint.component.d.ts +8 -2
  266. package/lib/desy-forms/components/input-group/input-group-divider/input-group-divider.component.d.ts +8 -0
  267. package/lib/desy-forms/components/input-group/input-group-input/input-group-input.component.d.ts +20 -0
  268. package/lib/desy-forms/components/input-group/input-group-item/input-group-item.component.d.ts +4 -0
  269. package/lib/desy-forms/components/input-group/input-group-select/input-group-select.component.d.ts +16 -0
  270. package/lib/desy-forms/components/input-group/input-group.component.d.ts +24 -6
  271. package/lib/desy-forms/components/label/label.component.d.ts +12 -5
  272. package/lib/desy-forms/components/radios/radio-item/radio-item.component.d.ts +43 -0
  273. package/lib/desy-forms/components/radios/radios.component.d.ts +56 -11
  274. package/lib/desy-forms/components/search-bar/search-bar.component.d.ts +7 -3
  275. package/lib/desy-forms/components/select/option/option.component.d.ts +7 -0
  276. package/lib/desy-forms/components/select/option-group/option-group.component.d.ts +7 -0
  277. package/lib/desy-forms/components/select/select-item/select-item.component.d.ts +4 -0
  278. package/lib/desy-forms/components/select/select.component.d.ts +9 -2
  279. package/lib/desy-forms/interfaces/error-message-data.d.ts +5 -5
  280. package/lib/desy-forms/interfaces/fieldset-data.d.ts +5 -4
  281. package/lib/desy-forms/interfaces/hint-data.d.ts +4 -4
  282. package/lib/desy-forms/interfaces/item-checkbox-data.d.ts +1 -0
  283. package/lib/desy-forms/interfaces/item-date-input-data.d.ts +3 -0
  284. package/lib/desy-forms/interfaces/item-divider-date-input-data.d.ts +5 -0
  285. package/lib/desy-forms/interfaces/item-input-group-data.d.ts +1 -2
  286. package/lib/desy-forms/interfaces/item-radio-data.d.ts +15 -12
  287. package/lib/desy-forms/interfaces/legend-data.d.ts +4 -4
  288. package/lib/desy-forms/interfaces/select-item-data.d.ts +2 -1
  289. package/lib/desy-modals/components/modal/modal-button-primary/modal-button-primary.component.d.ts +7 -0
  290. package/lib/desy-modals/components/modal/modal-button-secondary/modal-button-secondary.component.d.ts +7 -0
  291. package/lib/desy-modals/components/modal/modal.component.d.ts +27 -2
  292. package/lib/desy-modals/interfaces/modal-button-data.d.ts +2 -2
  293. package/lib/desy-nav/components/breadcrumbs/breadcrumbs-item/breadcrumbs-item.component.d.ts +6 -0
  294. package/lib/desy-nav/components/breadcrumbs/breadcrumbs.component.d.ts +7 -4
  295. package/lib/desy-nav/components/error-summary/error-summary-item/error-summary-item.component.d.ts +6 -0
  296. package/lib/desy-nav/components/error-summary/error-summary.component.d.ts +12 -4
  297. package/lib/desy-nav/components/footer/footer-meta/footer-meta-item/footer-meta-item.component.d.ts +7 -0
  298. package/lib/desy-nav/components/footer/footer-meta/footer-meta.component.d.ts +10 -0
  299. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation-item/footer-navigation-item.component.d.ts +7 -0
  300. package/lib/desy-nav/components/footer/footer-navigation/footer-navigation.component.d.ts +8 -0
  301. package/lib/desy-nav/components/footer/footer.component.d.ts +15 -3
  302. package/lib/desy-nav/components/header/header-dropdown/header-dropdown.component.d.ts +10 -6
  303. package/lib/desy-nav/components/header/header-navigation/header-navigation-item/header-navigation-item.component.d.ts +10 -0
  304. package/lib/desy-nav/components/header/header-navigation/header-navigation.component.d.ts +6 -2
  305. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-button/header-offcanvas-button.component.d.ts +6 -0
  306. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas-close-button/header-offcanvas-close-button.component.d.ts +3 -0
  307. package/lib/desy-nav/components/header/header-offcanvas/header-offcanvas.component.d.ts +30 -9
  308. package/lib/desy-nav/components/header/header-subnav/header-subnav.component.d.ts +11 -8
  309. package/lib/desy-nav/components/header/header.component.d.ts +16 -5
  310. package/lib/desy-nav/components/menu-horizontal/menu-horizontal-item/menu-horizontal-item.component.d.ts +15 -0
  311. package/lib/desy-nav/components/menu-horizontal/menu-horizontal.component.d.ts +6 -5
  312. package/lib/desy-nav/components/menu-vertical/menu-vertical-item/menu-vertical-item.component.d.ts +18 -0
  313. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub/menu-vertical-item-sub.component.d.ts +8 -0
  314. package/lib/desy-nav/components/menu-vertical/menu-vertical-item-sub-item/menu-vertical-item-sub-item.component.d.ts +15 -0
  315. package/lib/desy-nav/components/menu-vertical/menu-vertical.component.d.ts +13 -18
  316. package/lib/desy-nav/components/menubar/components/menubar-item/menubar-item.component.d.ts +23 -0
  317. package/lib/desy-nav/components/menubar/components/menubar-label/menubar-label.component.d.ts +4 -0
  318. package/lib/desy-nav/components/menubar/components/menubar-subitem/menubar-subitem.component.d.ts +15 -0
  319. package/lib/desy-nav/components/menubar/components/menubar-subsubitem/menubar-subsubitem.component.d.ts +10 -0
  320. package/lib/desy-nav/components/menubar/directives/menubaritem.directive.d.ts +16 -0
  321. package/lib/desy-nav/components/menubar/menubar.component.d.ts +88 -0
  322. package/lib/desy-nav/components/nav/nav-item/nav-item.component.d.ts +17 -0
  323. package/lib/desy-nav/components/nav/nav.component.d.ts +7 -5
  324. package/lib/desy-nav/components/notification/notification-item/notification-item.component.d.ts +9 -0
  325. package/lib/desy-nav/components/notification/notification.component.d.ts +25 -11
  326. package/lib/desy-nav/components/skip-link/skip-link.component.d.ts +9 -2
  327. package/lib/desy-nav/interfaces/breadcrumbs.data.d.ts +4 -4
  328. package/lib/desy-nav/interfaces/error-summary-data.d.ts +4 -4
  329. package/lib/desy-nav/interfaces/footer-data.d.ts +7 -10
  330. package/lib/desy-nav/interfaces/header-dropdown-data.d.ts +5 -1
  331. package/lib/desy-nav/interfaces/header-offcanvas-data.d.ts +0 -1
  332. package/lib/desy-nav/interfaces/header-subnav-data.d.ts +6 -1
  333. package/lib/desy-nav/interfaces/index.d.ts +0 -4
  334. package/lib/desy-nav/interfaces/menu-vertical-items-data.d.ts +15 -13
  335. package/lib/desy-nav/interfaces/menu-vertical-sub-data.d.ts +3 -4
  336. package/lib/desy-nav/interfaces/menu-vertical-sub-items-data.d.ts +15 -12
  337. package/lib/desy-nav/interfaces/menubar-item-sub-item-sub-item.d.ts +6 -0
  338. package/lib/desy-nav/interfaces/menubar-item-sub-item.d.ts +9 -0
  339. package/lib/desy-nav/interfaces/menubar-item-sub.d.ts +6 -0
  340. package/lib/desy-nav/interfaces/menubar-item.d.ts +18 -0
  341. package/lib/desy-nav/interfaces/nav-item.data.d.ts +2 -1
  342. package/lib/desy-nav/interfaces/notification-items-data.d.ts +8 -5
  343. package/lib/desy-nav/interfaces/notification-options.d.ts +5 -8
  344. package/lib/desy-pagination/components/pagination/pagination.component.d.ts +7 -12
  345. package/lib/desy-tables/components/table/components/table-caption.component.d.ts +4 -0
  346. package/lib/desy-tables/components/table/components/table-cell.component.d.ts +8 -0
  347. package/lib/desy-tables/components/table/components/table-header.component.d.ts +5 -0
  348. package/lib/desy-tables/components/table/components/table-row.component.d.ts +5 -0
  349. package/lib/desy-tables/components/table/table.component.d.ts +16 -4
  350. package/lib/desy-tables/components/table-advanced/components/table-advanced-header-cell.component.d.ts +13 -0
  351. package/lib/desy-tables/components/table-advanced/components/table-advanced-header.component.d.ts +5 -0
  352. package/lib/desy-tables/components/table-advanced/components/table-advanced-row-cell.component.d.ts +8 -0
  353. package/lib/desy-tables/components/table-advanced/components/table-advanced-row.component.d.ts +8 -0
  354. package/lib/desy-tables/components/table-advanced/table-advanced.component.d.ts +66 -39
  355. package/lib/desy-tables/directives/cell.directive.d.ts +14 -0
  356. package/lib/desy-tables/directives/focus-clicked-cell.directive.d.ts +3 -3
  357. package/lib/desy-tables/directives/row.directive.d.ts +16 -0
  358. package/lib/desy-tables/interfaces/head-cell-data.d.ts +2 -2
  359. package/lib/desy-tables/interfaces/index.d.ts +1 -0
  360. package/lib/desy-tables/interfaces/recalculate-table-params.d.ts +11 -0
  361. package/lib/desy-tables/interfaces/row-data.d.ts +1 -0
  362. package/lib/desy-tables/interfaces/wrapper-data.d.ts +4 -0
  363. package/lib/desy-views/components/accordion/accordion-header/accordion-header.component.d.ts +5 -0
  364. package/lib/desy-views/components/accordion/accordion-item/accordion-item.component.d.ts +13 -0
  365. package/lib/desy-views/components/accordion/accordion.component.d.ts +20 -11
  366. package/lib/desy-views/components/alert/alert.component.d.ts +6 -4
  367. package/lib/desy-views/components/collapsible/collapsible.component.d.ts +4 -6
  368. package/lib/desy-views/components/description-list/definition/definition.component.d.ts +6 -0
  369. package/lib/desy-views/components/description-list/description-item/description-item.component.d.ts +9 -0
  370. package/lib/desy-views/components/description-list/description-list.component.d.ts +9 -6
  371. package/lib/desy-views/components/description-list/term/term.component.d.ts +6 -0
  372. package/lib/desy-views/components/item/item-content-bottom/item-content-bottom.component.d.ts +5 -0
  373. package/lib/desy-views/components/item/item-content-right/item-content-right.component.d.ts +3 -0
  374. package/lib/desy-views/components/item/item-item/item-item.component.d.ts +3 -0
  375. package/lib/desy-views/components/item/item.component.d.ts +28 -9
  376. package/lib/desy-views/components/status-item/status-item.component.d.ts +17 -6
  377. package/lib/desy-views/components/tabs/panel/panel.component.d.ts +6 -0
  378. package/lib/desy-views/components/tabs/tab-item/tab-item.component.d.ts +12 -0
  379. package/lib/desy-views/components/tabs/tabs.component.d.ts +15 -3
  380. package/lib/desy-views/components/tooltip/tooltip-content/tooltip-content.component.d.ts +3 -0
  381. package/lib/desy-views/components/tooltip/tooltip.component.d.ts +35 -0
  382. package/lib/desy-views/interfaces/accordion-header.data.d.ts +3 -3
  383. package/lib/desy-views/interfaces/accordion-item.data.d.ts +8 -8
  384. package/lib/desy-views/interfaces/description-item.data.d.ts +8 -0
  385. package/lib/desy-views/interfaces/index.d.ts +3 -3
  386. package/lib/desy-views/interfaces/tabs-items-data.d.ts +5 -5
  387. package/lib/desy-views/interfaces/tabs-panel-data.d.ts +4 -4
  388. package/lib/desy-views/interfaces/term-definition.data.d.ts +7 -0
  389. package/lib/shared/components/accessibility-and-content-required/accessibility-and-content-required.component.d.ts +26 -0
  390. package/lib/shared/components/content-base/content-base.component.d.ts +9 -0
  391. package/lib/shared/components/index.d.ts +2 -0
  392. package/lib/shared/decorators/desy-content-child.decorator.d.ts +15 -0
  393. package/lib/shared/decorators/desy-on-input-change.decorator.d.ts +5 -0
  394. package/lib/shared/directives/attribute-change.directive.d.ts +10 -0
  395. package/lib/shared/directives/content-change.directive.d.ts +19 -0
  396. package/lib/shared/directives/content-empty.directive.d.ts +26 -0
  397. package/lib/shared/directives/custom-inner-content.directive.d.ts +22 -0
  398. package/lib/shared/directives/inner-content.directive.d.ts +1 -0
  399. package/lib/shared/pipes/external-href.pipe.d.ts +8 -0
  400. package/lib/shared/utils/string-utils.d.ts +10 -0
  401. package/package.json +16 -11
  402. package/public-api.d.ts +75 -25
  403. package/esm2015/lib/desy-forms/components/checkboxes/item-checkbox/item-checkbox.component.js +0 -100
  404. package/esm2015/lib/desy-forms/components/radios/item-radio/item-radio.component.js +0 -89
  405. package/esm2015/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.js +0 -62
  406. package/esm2015/lib/desy-nav/interfaces/notification-content-data.js +0 -2
  407. package/esm2015/lib/desy-nav/interfaces/notification-description-data.js +0 -2
  408. package/esm2015/lib/desy-nav/interfaces/notification-icon-data.js +0 -2
  409. package/esm2015/lib/desy-nav/interfaces/notification-title-data.js +0 -2
  410. package/esm2015/lib/desy-views/interfaces/description.data.js +0 -2
  411. package/esm2015/lib/desy-views/interfaces/item-data.js +0 -2
  412. package/esm2015/lib/desy-views/interfaces/item-description.data.js +0 -2
  413. package/esm2015/lib/shared/utils/navigation-utils.js +0 -18
  414. package/lib/desy-forms/components/checkboxes/item-checkbox/item-checkbox.component.d.ts +0 -39
  415. package/lib/desy-forms/components/radios/item-radio/item-radio.component.d.ts +0 -36
  416. package/lib/desy-nav/components/header/header-offcanvas-button/header-offcanvas-button.component.d.ts +0 -19
  417. package/lib/desy-nav/interfaces/notification-description-data.d.ts +0 -5
  418. package/lib/desy-nav/interfaces/notification-icon-data.d.ts +0 -3
  419. package/lib/desy-views/interfaces/description.data.d.ts +0 -7
  420. package/lib/desy-views/interfaces/item-data.d.ts +0 -19
  421. package/lib/desy-views/interfaces/item-description.data.d.ts +0 -8
  422. package/lib/shared/utils/navigation-utils.d.ts +0 -3
@@ -1,26 +1,88 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
1
+ import { __awaiter, __decorate } from "tslib";
2
+ import { Component, ContentChildren, HostBinding, Input, ViewChild } from '@angular/core';
3
+ import { DesyContentChild } from '../../../../shared/decorators/desy-content-child.decorator';
4
+ import { ContentComponent } from '../../../../desy-commons/components/content/content.component';
5
+ import { HeaderOffcanvasCloseButtonComponent } from './header-offcanvas-close-button/header-offcanvas-close-button.component';
6
+ import { DialogService } from '../../../../desy-modals/services/dialog.service';
7
+ import { HeaderOffcanvasButtonComponent } from './header-offcanvas-button/header-offcanvas-button.component';
8
+ import { DesyOnInputChange } from '../../../../shared/decorators/desy-on-input-change.decorator';
2
9
  export class HeaderOffcanvasComponent {
3
- constructor() {
4
- this.closeDialog = new EventEmitter();
5
- this.clickOutsideEnabled = false;
10
+ constructor(dialogService) {
11
+ this.dialogService = dialogService;
12
+ this.hostClass = '-mr-2 flex lg:hidden';
6
13
  }
7
- ngOnInit() {
8
- setTimeout(() => this.clickOutsideEnabled = true);
14
+ ngOnDestroy() {
15
+ if (this.isOpen()) {
16
+ this.close();
17
+ }
9
18
  }
10
- onCloseDialog() {
11
- this.closeDialog.emit();
19
+ open() {
20
+ return __awaiter(this, void 0, void 0, function* () {
21
+ if (!this.isOpen()) {
22
+ this.dialog = (yield this.dialogService.openDialog(this.offcanvasContent, HeaderOffcanvasComponent.dialogOptions)).dialog;
23
+ this.dialogService.onCloseDialog(this.dialog).then(() => this.dialog = null);
24
+ }
25
+ });
26
+ }
27
+ close() {
28
+ if (this.isOpen()) {
29
+ this.dialogService.closeDialog(this.dialog);
30
+ this.dialog = null;
31
+ }
32
+ }
33
+ isOpen() {
34
+ return !!this.dialog;
35
+ }
36
+ /**
37
+ * Estable las clases del elemento html del componente
38
+ */
39
+ setHostClass() {
40
+ this.hostClass = this.classes ? this.classes : '-mr-2 flex lg:hidden';
41
+ }
42
+ /**
43
+ * Enlaza el botón del componente hijo con la acción de abrir de este componente
44
+ * @param button componente botón pasado como contenido
45
+ */
46
+ bindButton(button) {
47
+ button.openOffcanvas = this.open.bind(this);
48
+ }
49
+ handleEmptyContent(element) {
50
+ throw new Error(`${element} content is required`);
12
51
  }
13
52
  }
53
+ HeaderOffcanvasComponent.dialogOptions = {
54
+ id: 'header-offcanvas-dialog',
55
+ focusOnClose: 'header-offcanvas',
56
+ ariaModal: 'true',
57
+ ariaLabelledBy: 'header-offcanvas-button-text'
58
+ };
14
59
  HeaderOffcanvasComponent.decorators = [
15
60
  { type: Component, args: [{
16
61
  selector: 'desy-header-offcanvas',
17
- 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"
62
+ 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"
18
63
  },] }
19
64
  ];
65
+ HeaderOffcanvasComponent.ctorParameters = () => [
66
+ { type: DialogService }
67
+ ];
20
68
  HeaderOffcanvasComponent.propDecorators = {
21
- text: [{ type: Input }],
22
- labelledId: [{ type: Input }],
23
- contentHtml: [{ type: Input }],
24
- closeDialog: [{ type: Output }]
69
+ classes: [{ type: Input }],
70
+ hostClass: [{ type: HostBinding, args: ['class',] }],
71
+ offcanvasContent: [{ type: ViewChild, args: ['offcanvasContent',] }],
72
+ button: [{ type: ContentChildren, args: [HeaderOffcanvasButtonComponent,] }],
73
+ content: [{ type: ContentChildren, args: [ContentComponent,] }],
74
+ closeButton: [{ type: ContentChildren, args: [HeaderOffcanvasCloseButtonComponent,] }]
25
75
  };
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW9mZmNhbnZhcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9kZXN5LW5hdi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItb2ZmY2FudmFzL2hlYWRlci1vZmZjYW52YXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFNNUYsTUFBTSxPQUFPLHdCQUF3QjtJQUpyQztRQVVZLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUUzQyx3QkFBbUIsR0FBRyxLQUFLLENBQUM7SUFTOUIsQ0FBQztJQVBDLFFBQVE7UUFDTixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUMxQixDQUFDOzs7WUFwQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLHMrQkFBZ0Q7YUFDakQ7OzttQkFHRSxLQUFLO3lCQUNMLEtBQUs7MEJBQ0wsS0FBSzswQkFFTCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1oZWFkZXItb2ZmY2FudmFzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLW9mZmNhbnZhcy5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEhlYWRlck9mZmNhbnZhc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIHRleHQ6IHN0cmluZztcclxuICBASW5wdXQoKSBsYWJlbGxlZElkOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgY29udGVudEh0bWw6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIEBPdXRwdXQoKSBjbG9zZURpYWxvZyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgY2xpY2tPdXRzaWRlRW5hYmxlZCA9IGZhbHNlO1xyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jbGlja091dHNpZGVFbmFibGVkID0gdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBvbkNsb3NlRGlhbG9nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbG9zZURpYWxvZy5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
76
+ __decorate([
77
+ DesyOnInputChange('setHostClass')
78
+ ], HeaderOffcanvasComponent.prototype, "classes", void 0);
79
+ __decorate([
80
+ DesyContentChild({ onSetCallbackName: 'bindButton' })
81
+ ], HeaderOffcanvasComponent.prototype, "button", void 0);
82
+ __decorate([
83
+ DesyContentChild()
84
+ ], HeaderOffcanvasComponent.prototype, "content", void 0);
85
+ __decorate([
86
+ DesyContentChild()
87
+ ], HeaderOffcanvasComponent.prototype, "closeButton", void 0);
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLW9mZmNhbnZhcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LW5hdi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItb2ZmY2FudmFzL2hlYWRlci1vZmZjYW52YXMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULGVBQWUsRUFDZixXQUFXLEVBQ1gsS0FBSyxFQUdMLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw0REFBNEQsQ0FBQztBQUM1RixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrREFBK0QsQ0FBQztBQUMvRixPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSx5RUFBeUUsQ0FBQztBQUU1SCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0saURBQWlELENBQUM7QUFFOUUsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDM0csT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOERBQThELENBQUM7QUFNL0YsTUFBTSxPQUFPLHdCQUF3QjtJQTJCbkMsWUFBb0IsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFmMUIsY0FBUyxHQUFHLHNCQUFzQixDQUFDO0lBZ0J6RCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVLLElBQUk7O1lBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDbEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLHdCQUF3QixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO2dCQUMxSCxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLENBQUM7YUFDOUU7UUFDSCxDQUFDO0tBQUE7SUFFRCxLQUFLO1FBQ0gsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzVDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1NBQ3BCO0lBQ0gsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVk7UUFDVixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDO0lBQ3hFLENBQUM7SUFFRDs7O09BR0c7SUFDSCxVQUFVLENBQUMsTUFBc0M7UUFDL0MsTUFBTSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsT0FBZTtRQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsT0FBTyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ3BELENBQUM7O0FBckVjLHNDQUFhLEdBQWtCO0lBQzVDLEVBQUUsRUFBRSx5QkFBeUI7SUFDN0IsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxTQUFTLEVBQUUsTUFBTTtJQUNqQixjQUFjLEVBQUUsOEJBQThCO0NBQy9DLENBQUM7O1lBWEgsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLDYwQ0FBZ0Q7YUFDakQ7OztZQVJPLGFBQWE7OztzQkFtQmxCLEtBQUs7d0JBRUwsV0FBVyxTQUFDLE9BQU87K0JBRW5CLFNBQVMsU0FBQyxrQkFBa0I7cUJBRzVCLGVBQWUsU0FBQyw4QkFBOEI7c0JBRzlDLGVBQWUsU0FBQyxnQkFBZ0I7MEJBR2hDLGVBQWUsU0FBQyxtQ0FBbUM7O0FBYjNDO0lBRFIsaUJBQWlCLENBQUMsY0FBYyxDQUFDO3lEQUNUO0FBT3dCO0lBRGhELGdCQUFnQixDQUFDLEVBQUMsaUJBQWlCLEVBQUUsWUFBWSxFQUFDLENBQUM7d0RBQ29DO0FBR3JEO0lBRGxDLGdCQUFnQixFQUFFO3lEQUMwQztBQUdQO0lBRHJELGdCQUFnQixFQUFFOzZEQUNvRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIENvbXBvbmVudFJlZixcclxuICBDb250ZW50Q2hpbGRyZW4sXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0Rlc3lDb250ZW50Q2hpbGR9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktY29udGVudC1jaGlsZC5kZWNvcmF0b3InO1xyXG5pbXBvcnQge0NvbnRlbnRDb21wb25lbnR9IGZyb20gJy4uLy4uLy4uLy4uL2Rlc3ktY29tbW9ucy9jb21wb25lbnRzL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQge0hlYWRlck9mZmNhbnZhc0Nsb3NlQnV0dG9uQ29tcG9uZW50fSBmcm9tICcuL2hlYWRlci1vZmZjYW52YXMtY2xvc2UtYnV0dG9uL2hlYWRlci1vZmZjYW52YXMtY2xvc2UtYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RGlhbG9nQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi8uLi9kZXN5LW1vZGFscy9jb21wb25lbnRzL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHtEaWFsb2dTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi8uLi9kZXN5LW1vZGFscy9zZXJ2aWNlcy9kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7RGlhbG9nT3B0aW9uc30gZnJvbSAnLi4vLi4vLi4vLi4vZGVzeS1tb2RhbHMvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7SGVhZGVyT2ZmY2FudmFzQnV0dG9uQ29tcG9uZW50fSBmcm9tICcuL2hlYWRlci1vZmZjYW52YXMtYnV0dG9uL2hlYWRlci1vZmZjYW52YXMtYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RGVzeU9uSW5wdXRDaGFuZ2V9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9kZWNvcmF0b3JzL2Rlc3ktb24taW5wdXQtY2hhbmdlLmRlY29yYXRvcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktaGVhZGVyLW9mZmNhbnZhcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hlYWRlci1vZmZjYW52YXMuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIZWFkZXJPZmZjYW52YXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG5cclxuICBwcml2YXRlIHN0YXRpYyBkaWFsb2dPcHRpb25zOiBEaWFsb2dPcHRpb25zID0ge1xyXG4gICAgaWQ6ICdoZWFkZXItb2ZmY2FudmFzLWRpYWxvZycsXHJcbiAgICBmb2N1c09uQ2xvc2U6ICdoZWFkZXItb2ZmY2FudmFzJyxcclxuICAgIGFyaWFNb2RhbDogJ3RydWUnLFxyXG4gICAgYXJpYUxhYmVsbGVkQnk6ICdoZWFkZXItb2ZmY2FudmFzLWJ1dHRvbi10ZXh0J1xyXG4gIH07XHJcblxyXG4gIEBEZXN5T25JbnB1dENoYW5nZSgnc2V0SG9zdENsYXNzJylcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcblxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKSBob3N0Q2xhc3MgPSAnLW1yLTIgZmxleCBsZzpoaWRkZW4nO1xyXG5cclxuICBAVmlld0NoaWxkKCdvZmZjYW52YXNDb250ZW50Jykgb2ZmY2FudmFzQ29udGVudDogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoe29uU2V0Q2FsbGJhY2tOYW1lOiAnYmluZEJ1dHRvbid9KVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oSGVhZGVyT2ZmY2FudmFzQnV0dG9uQ29tcG9uZW50KSBidXR0b246IEhlYWRlck9mZmNhbnZhc0J1dHRvbkNvbXBvbmVudDtcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoKVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oQ29udGVudENvbXBvbmVudCkgY29udGVudDogQ29udGVudENvbXBvbmVudDtcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoKVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oSGVhZGVyT2ZmY2FudmFzQ2xvc2VCdXR0b25Db21wb25lbnQpIGNsb3NlQnV0dG9uOiBIZWFkZXJPZmZjYW52YXNDbG9zZUJ1dHRvbkNvbXBvbmVudDtcclxuXHJcbiAgcHJpdmF0ZSBkaWFsb2c6IENvbXBvbmVudFJlZjxEaWFsb2dDb21wb25lbnQ+O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuaXNPcGVuKCkpIHtcclxuICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgb3BlbigpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmICghdGhpcy5pc09wZW4oKSkge1xyXG4gICAgICB0aGlzLmRpYWxvZyA9IChhd2FpdCB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbkRpYWxvZyh0aGlzLm9mZmNhbnZhc0NvbnRlbnQsIEhlYWRlck9mZmNhbnZhc0NvbXBvbmVudC5kaWFsb2dPcHRpb25zKSkuZGlhbG9nO1xyXG4gICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uub25DbG9zZURpYWxvZyh0aGlzLmRpYWxvZykudGhlbigoKSA9PiB0aGlzLmRpYWxvZyA9IG51bGwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xvc2UoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5pc09wZW4oKSkge1xyXG4gICAgICB0aGlzLmRpYWxvZ1NlcnZpY2UuY2xvc2VEaWFsb2codGhpcy5kaWFsb2cpO1xyXG4gICAgICB0aGlzLmRpYWxvZyA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc09wZW4oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gISF0aGlzLmRpYWxvZztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVzdGFibGUgbGFzIGNsYXNlcyBkZWwgZWxlbWVudG8gaHRtbCBkZWwgY29tcG9uZW50ZVxyXG4gICAqL1xyXG4gIHNldEhvc3RDbGFzcygpOiB2b2lkIHtcclxuICAgIHRoaXMuaG9zdENsYXNzID0gdGhpcy5jbGFzc2VzID8gdGhpcy5jbGFzc2VzIDogJy1tci0yIGZsZXggbGc6aGlkZGVuJztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVubGF6YSBlbCBib3TDs24gZGVsIGNvbXBvbmVudGUgaGlqbyBjb24gbGEgYWNjacOzbiBkZSBhYnJpciBkZSBlc3RlIGNvbXBvbmVudGVcclxuICAgKiBAcGFyYW0gYnV0dG9uIGNvbXBvbmVudGUgYm90w7NuIHBhc2FkbyBjb21vIGNvbnRlbmlkb1xyXG4gICAqL1xyXG4gIGJpbmRCdXR0b24oYnV0dG9uOiBIZWFkZXJPZmZjYW52YXNCdXR0b25Db21wb25lbnQpOiB2b2lkIHtcclxuICAgIGJ1dHRvbi5vcGVuT2ZmY2FudmFzID0gdGhpcy5vcGVuLmJpbmQodGhpcyk7XHJcbiAgfVxyXG5cclxuICBoYW5kbGVFbXB0eUNvbnRlbnQoZWxlbWVudDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7ZWxlbWVudH0gY29udGVudCBpcyByZXF1aXJlZGApO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,47 +1,37 @@
1
- import { Component, Input } from '@angular/core';
2
- import { animate, state, style, transition, trigger } from '@angular/animations';
3
- import { TextOrHtmlRequiredComponent } from '../../../../shared/components';
4
- export class HeaderSubnavComponent extends TextOrHtmlRequiredComponent {
5
- constructor() {
6
- super(...arguments);
7
- this.isOpen = false;
8
- this.clickOutsideEnabled = false;
1
+ import { __decorate } from "tslib";
2
+ import { Component, ContentChildren, Input } from '@angular/core';
3
+ import { NavComponent } from '../../nav/nav.component';
4
+ import { DesyContentChild } from '../../../../shared/decorators/desy-content-child.decorator';
5
+ import { AccessibilityComponent } from "../../../../shared/components";
6
+ export class HeaderSubnavComponent extends AccessibilityComponent {
7
+ hasSubnavItems() {
8
+ return this.nav && this.nav.getItemList().length > 0;
9
9
  }
10
- toggleOpen() {
11
- this.isOpen = !this.isOpen;
12
- setTimeout(() => this.clickOutsideEnabled = this.isOpen);
10
+ overrideNavParams(nav) {
11
+ nav.hasNav = true;
12
+ nav.idPrefix = 'header-subnav-nav-item';
13
+ nav.ariaLabel = 'Aplicaciones';
14
+ nav.classes = 'w-max max-w-64';
15
+ // nav.id = 'id-subnav-nav'; // No existe como param de navComponent
13
16
  }
14
- onKeydownEscape() {
15
- this.isOpen = false;
16
- this.clickOutsideEnabled = false;
17
- document.getElementById('header-subnav-button').focus();
17
+ handleEmptyContent(element) {
18
+ throw new Error(`${element} content is required`);
18
19
  }
19
20
  }
20
21
  HeaderSubnavComponent.decorators = [
21
22
  { type: Component, args: [{
22
23
  selector: 'desy-header-subnav',
23
- 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\u00F3n actual\"\r\n [desyInnerContent]=\"html ? html : text\" [isHtml]=\"html\">\r\n </p>\r\n</ng-template>\r\n",
24
- animations: [
25
- trigger('toggleDropdown', [
26
- state('void', style({
27
- opacity: '0.0',
28
- transform: 'scale(0.95)'
29
- })),
30
- state('*', style({
31
- opacity: '1.0',
32
- transform: 'scale(1.0)'
33
- })),
34
- transition(':enter', [
35
- animate('100ms ease-out')
36
- ]),
37
- transition(':leave', [
38
- animate('75ms ease-in')
39
- ])
40
- ])
41
- ]
24
+ 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\u00F3n actual: </span>\r\n <ng-container *ngTemplateOutlet=\"templateContent\"></ng-container>\r\n </p>\r\n</ng-template>\r\n\r\n\r\n"
42
25
  },] }
43
26
  ];
44
27
  HeaderSubnavComponent.propDecorators = {
45
- items: [{ type: Input }]
28
+ hiddenText: [{ type: Input }],
29
+ classesContainer: [{ type: Input }],
30
+ classesTooltip: [{ type: Input }],
31
+ classes: [{ type: Input }],
32
+ nav: [{ type: ContentChildren, args: [NavComponent,] }]
46
33
  };
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXN1Ym5hdi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9kZXN5LW5hdi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItc3VibmF2L2hlYWRlci1zdWJuYXYuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUF3QjVFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSwyQkFBMkI7SUF0QnRFOztRQTBCRSxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2Ysd0JBQW1CLEdBQUcsS0FBSyxDQUFDO0lBYTlCLENBQUM7SUFYQyxVQUFVO1FBQ1IsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDM0IsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1FBQ2pDLFFBQVEsQ0FBQyxjQUFjLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMxRCxDQUFDOzs7WUF0Q0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLG91REFBNkM7Z0JBQzdDLFVBQVUsRUFBRTtvQkFDVixPQUFPLENBQUMsZ0JBQWdCLEVBQUU7d0JBQ3hCLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDOzRCQUNsQixPQUFPLEVBQUUsS0FBSzs0QkFDZCxTQUFTLEVBQUUsYUFBYTt5QkFDekIsQ0FBQyxDQUFDO3dCQUNILEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDOzRCQUNmLE9BQU8sRUFBRSxLQUFLOzRCQUNkLFNBQVMsRUFBRSxZQUFZO3lCQUN4QixDQUFDLENBQUM7d0JBQ0gsVUFBVSxDQUFDLFFBQVEsRUFBRTs0QkFDbkIsT0FBTyxDQUFDLGdCQUFnQixDQUFDO3lCQUMxQixDQUFDO3dCQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7NEJBQ25CLE9BQU8sQ0FBQyxjQUFjLENBQUM7eUJBQ3hCLENBQUM7cUJBQ0gsQ0FBQztpQkFDSDthQUNGOzs7b0JBR0UsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgYW5pbWF0ZSwgc3RhdGUsIHN0eWxlLCB0cmFuc2l0aW9uLCB0cmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IE5hdkl0ZW1EYXRhIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IFRleHRPckh0bWxSZXF1aXJlZENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9jb21wb25lbnRzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1oZWFkZXItc3VibmF2JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLXN1Ym5hdi5jb21wb25lbnQuaHRtbCcsXHJcbiAgYW5pbWF0aW9uczogW1xyXG4gICAgdHJpZ2dlcigndG9nZ2xlRHJvcGRvd24nLCBbXHJcbiAgICAgIHN0YXRlKCd2b2lkJywgc3R5bGUoe1xyXG4gICAgICAgIG9wYWNpdHk6ICcwLjAnLFxyXG4gICAgICAgIHRyYW5zZm9ybTogJ3NjYWxlKDAuOTUpJ1xyXG4gICAgICB9KSksXHJcbiAgICAgIHN0YXRlKCcqJywgc3R5bGUoe1xyXG4gICAgICAgIG9wYWNpdHk6ICcxLjAnLFxyXG4gICAgICAgIHRyYW5zZm9ybTogJ3NjYWxlKDEuMCknXHJcbiAgICAgIH0pKSxcclxuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xyXG4gICAgICAgIGFuaW1hdGUoJzEwMG1zIGVhc2Utb3V0JylcclxuICAgICAgXSksXHJcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcclxuICAgICAgICBhbmltYXRlKCc3NW1zIGVhc2UtaW4nKVxyXG4gICAgICBdKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIZWFkZXJTdWJuYXZDb21wb25lbnQgZXh0ZW5kcyBUZXh0T3JIdG1sUmVxdWlyZWRDb21wb25lbnR7XHJcblxyXG4gIEBJbnB1dCgpIGl0ZW1zOiBOYXZJdGVtRGF0YVtdO1xyXG5cclxuICBpc09wZW4gPSBmYWxzZTtcclxuICBjbGlja091dHNpZGVFbmFibGVkID0gZmFsc2U7XHJcblxyXG4gIHRvZ2dsZU9wZW4oKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzT3BlbiA9ICF0aGlzLmlzT3BlbjtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jbGlja091dHNpZGVFbmFibGVkID0gdGhpcy5pc09wZW4pO1xyXG4gIH1cclxuXHJcbiAgb25LZXlkb3duRXNjYXBlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcclxuICAgIHRoaXMuY2xpY2tPdXRzaWRlRW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2hlYWRlci1zdWJuYXYtYnV0dG9uJykuZm9jdXMoKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
34
+ __decorate([
35
+ DesyContentChild({ onSetCallbackName: 'overrideNavParams' })
36
+ ], HeaderSubnavComponent.prototype, "nav", void 0);
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLXN1Ym5hdi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjL2xpYi9kZXN5LW5hdi9jb21wb25lbnRzL2hlYWRlci9oZWFkZXItc3VibmF2L2hlYWRlci1zdWJuYXYuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDREQUE0RCxDQUFDO0FBQzVGLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBTXJFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxzQkFBc0I7SUFVL0QsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELGlCQUFpQixDQUFDLEdBQWlCO1FBQ2pDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsd0JBQXdCLENBQUM7UUFDeEMsR0FBRyxDQUFDLFNBQVMsR0FBRyxjQUFjLENBQUM7UUFDL0IsR0FBRyxDQUFDLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQztRQUMvQixvRUFBb0U7SUFDdEUsQ0FBQztJQUVELGtCQUFrQixDQUFDLE9BQWU7UUFDaEMsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLE9BQU8sc0JBQXNCLENBQUMsQ0FBQztJQUNwRCxDQUFDOzs7WUE1QkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxvQkFBb0I7Z0JBQzlCLHlqRUFBNkM7YUFDOUM7Ozt5QkFHRSxLQUFLOytCQUNMLEtBQUs7NkJBQ0wsS0FBSztzQkFDTCxLQUFLO2tCQUdMLGVBQWUsU0FBQyxZQUFZOztBQUFFO0lBRDlCLGdCQUFnQixDQUFDLEVBQUMsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUMsQ0FBQztrREFDViIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtOYXZDb21wb25lbnR9IGZyb20gJy4uLy4uL25hdi9uYXYuY29tcG9uZW50JztcclxuaW1wb3J0IHtEZXN5Q29udGVudENoaWxkfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvZGVjb3JhdG9ycy9kZXN5LWNvbnRlbnQtY2hpbGQuZGVjb3JhdG9yJztcclxuaW1wb3J0IHtBY2Nlc3NpYmlsaXR5Q29tcG9uZW50fSBmcm9tIFwiLi4vLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1oZWFkZXItc3VibmF2JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLXN1Ym5hdi5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEhlYWRlclN1Ym5hdkNvbXBvbmVudCBleHRlbmRzIEFjY2Vzc2liaWxpdHlDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBoaWRkZW5UZXh0OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgY2xhc3Nlc0NvbnRhaW5lcjogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNsYXNzZXNUb29sdGlwOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgY2xhc3Nlczogc3RyaW5nO1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCh7b25TZXRDYWxsYmFja05hbWU6ICdvdmVycmlkZU5hdlBhcmFtcyd9KVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oTmF2Q29tcG9uZW50KSBuYXY6IE5hdkNvbXBvbmVudDtcclxuXHJcbiAgaGFzU3VibmF2SXRlbXMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5uYXYgJiYgdGhpcy5uYXYuZ2V0SXRlbUxpc3QoKS5sZW5ndGggPiAwO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGVOYXZQYXJhbXMobmF2OiBOYXZDb21wb25lbnQpOiB2b2lkIHtcclxuICAgIG5hdi5oYXNOYXYgPSB0cnVlO1xyXG4gICAgbmF2LmlkUHJlZml4ID0gJ2hlYWRlci1zdWJuYXYtbmF2LWl0ZW0nO1xyXG4gICAgbmF2LmFyaWFMYWJlbCA9ICdBcGxpY2FjaW9uZXMnO1xyXG4gICAgbmF2LmNsYXNzZXMgPSAndy1tYXggbWF4LXctNjQnO1xyXG4gICAgLy8gbmF2LmlkID0gJ2lkLXN1Ym5hdi1uYXYnOyAvLyBObyBleGlzdGUgY29tbyBwYXJhbSBkZSBuYXZDb21wb25lbnRcclxuICB9XHJcblxyXG4gIGhhbmRsZUVtcHR5Q29udGVudChlbGVtZW50OiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgJHtlbGVtZW50fSBjb250ZW50IGlzIHJlcXVpcmVkYCk7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
@@ -1,15 +1,26 @@
1
- import { Component, Input } from '@angular/core';
1
+ import { __decorate } from "tslib";
2
+ import { Component, ContentChildren, Input } from '@angular/core';
2
3
  import { AccessibilityComponent } from '../../../shared/components';
3
- import { NavigationUtils } from '../../../shared/utils/navigation-utils';
4
+ import { DesyContentChild } from '../../../shared/decorators/desy-content-child.decorator';
5
+ import { HeaderOffcanvasComponent } from './header-offcanvas/header-offcanvas.component';
6
+ import { HeaderNavigationComponent } from './header-navigation/header-navigation.component';
7
+ import { HeaderSubnavComponent } from './header-subnav/header-subnav.component';
8
+ import { HeaderDropdownComponent } from './header-dropdown/header-dropdown.component';
9
+ import { SkipLinkComponent } from '../skip-link/skip-link.component';
4
10
  export class HeaderComponent extends AccessibilityComponent {
5
- getHomeUrl() {
6
- return NavigationUtils.getExternalHref(this.homepageUrl);
11
+ overrideSkipLinkParams(skiplinkComponent) {
12
+ skiplinkComponent.id = skiplinkComponent.id || 'skip-link';
13
+ skiplinkComponent.text = 'Saltar al contenido principal';
14
+ }
15
+ overrideNavigationParams(navigationComponent) {
16
+ navigationComponent.idPrefix = 'header-nav-item';
17
+ navigationComponent.ariaLabel = 'Menú principal';
7
18
  }
8
19
  }
9
20
  HeaderComponent.decorators = [
10
21
  { type: Component, args: [{
11
22
  selector: 'desy-header',
12
- 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\u00E1gina 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\u00F3n\" role=\"img\"><title>Ir a la p\u00E1gina 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\u00F3n\" role=\"img\"><title>Ir a la p\u00E1gina 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\u00E1gina 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\u00F3n\" role=\"img\"><title>Ir a la p\u00E1gina 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\u00F3n\" role=\"img\"><title>Ir a la p\u00E1gina 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\u00FA 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\u00FA 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"
23
+ 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\u00E1gina 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\u00F3n\" role=\"img\"><title>Ir a la p\u00E1gina 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\u00F3n\" role=\"img\"><title>Ir a la p\u00E1gina 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\u00E1gina 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\u00F3n\" role=\"img\"><title>Ir a la p\u00E1gina 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\u00F3n\" role=\"img\"><title>Ir a la p\u00E1gina 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\u00FA 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\u00FA 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"
13
24
  },] }
14
25
  ];
15
26
  HeaderComponent.propDecorators = {
@@ -22,6 +33,26 @@ HeaderComponent.propDecorators = {
22
33
  subnavData: [{ type: Input }],
23
34
  navigationData: [{ type: Input }],
24
35
  dropdownData: [{ type: Input }],
25
- offcanvasData: [{ type: Input }]
36
+ offcanvasData: [{ type: Input }],
37
+ skiplinkComponent: [{ type: ContentChildren, args: [SkipLinkComponent,] }],
38
+ subnavComponent: [{ type: ContentChildren, args: [HeaderSubnavComponent,] }],
39
+ navigationComponent: [{ type: ContentChildren, args: [HeaderNavigationComponent,] }],
40
+ dropdownComponent: [{ type: ContentChildren, args: [HeaderDropdownComponent,] }],
41
+ offcanvasComponent: [{ type: ContentChildren, args: [HeaderOffcanvasComponent,] }]
26
42
  };
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjLyIsInNvdXJjZXMiOlsibGliL2Rlc3ktbmF2L2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBVXpFLE1BQU0sT0FBTyxlQUFnQixTQUFRLHNCQUFzQjtJQWN6RCxVQUFVO1FBQ1IsT0FBTyxlQUFlLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMzRCxDQUFDOzs7WUFwQkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxhQUFhO2dCQUN2Qiw4NmpCQUFzQzthQUN2Qzs7O3NCQUdFLEtBQUs7K0JBQ0wsS0FBSzswQkFDTCxLQUFLO2lDQUNMLEtBQUs7K0JBQ0wsS0FBSzsyQkFDTCxLQUFLO3lCQUVMLEtBQUs7NkJBQ0wsS0FBSzsyQkFDTCxLQUFLOzRCQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY2Nlc3NpYmlsaXR5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvdXRpbHMvbmF2aWdhdGlvbi11dGlscyc7XHJcbmltcG9ydCB7IEhlYWRlclN1Ym5hdkRhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2hlYWRlci1zdWJuYXYtZGF0YSc7XHJcbmltcG9ydCB7IEhlYWRlck5hdmlnYXRpb25EYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9oZWFkZXItbmF2aWdhdGlvbi1kYXRhJztcclxuaW1wb3J0IHsgSGVhZGVyRHJvcGRvd25EYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9oZWFkZXItZHJvcGRvd24tZGF0YSc7XHJcbmltcG9ydCB7IEhlYWRlck9mZmNhbnZhc0RhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2hlYWRlci1vZmZjYW52YXMtZGF0YSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktaGVhZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSGVhZGVyQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBjb250YWluZXJDbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaG9tZXBhZ2VVcmw6IHN0cmluZztcclxuICBASW5wdXQoKSBob21lcGFnZVJvdXRlckxpbms6IHN0cmluZztcclxuICBASW5wdXQoKSBob21lcGFnZUZyYWdtZW50OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZXhwYW5kZWRMb2dvOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKSBzdWJuYXZEYXRhOiBIZWFkZXJTdWJuYXZEYXRhO1xyXG4gIEBJbnB1dCgpIG5hdmlnYXRpb25EYXRhOiBIZWFkZXJOYXZpZ2F0aW9uRGF0YTtcclxuICBASW5wdXQoKSBkcm9wZG93bkRhdGE6IEhlYWRlckRyb3Bkb3duRGF0YTtcclxuICBASW5wdXQoKSBvZmZjYW52YXNEYXRhOiBIZWFkZXJPZmZjYW52YXNEYXRhO1xyXG5cclxuICBnZXRIb21lVXJsKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gTmF2aWdhdGlvblV0aWxzLmdldEV4dGVybmFsSHJlZih0aGlzLmhvbWVwYWdlVXJsKTtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
43
+ __decorate([
44
+ DesyContentChild({ onSetCallbackName: 'overrideSkipLinkParams' })
45
+ ], HeaderComponent.prototype, "skiplinkComponent", void 0);
46
+ __decorate([
47
+ DesyContentChild()
48
+ ], HeaderComponent.prototype, "subnavComponent", void 0);
49
+ __decorate([
50
+ DesyContentChild({ onSetCallbackName: 'overrideNavigationParams' })
51
+ ], HeaderComponent.prototype, "navigationComponent", void 0);
52
+ __decorate([
53
+ DesyContentChild()
54
+ ], HeaderComponent.prototype, "dropdownComponent", void 0);
55
+ __decorate([
56
+ DesyContentChild()
57
+ ], HeaderComponent.prototype, "offcanvasComponent", void 0);
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktbmF2L2NvbXBvbmVudHMvaGVhZGVyL2hlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUtwRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQUN6RixPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSwrQ0FBK0MsQ0FBQztBQUN2RixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUMxRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNwRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQU1uRSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxzQkFBc0I7SUE4QnpELHNCQUFzQixDQUFDLGlCQUFvQztRQUN6RCxpQkFBaUIsQ0FBQyxFQUFFLEdBQUcsaUJBQWlCLENBQUMsRUFBRSxJQUFJLFdBQVcsQ0FBQztRQUMzRCxpQkFBaUIsQ0FBQyxJQUFJLEdBQUcsK0JBQStCLENBQUM7SUFDM0QsQ0FBQztJQUVELHdCQUF3QixDQUFDLG1CQUE4QztRQUNyRSxtQkFBbUIsQ0FBQyxRQUFRLEdBQUcsaUJBQWlCLENBQUM7UUFDakQsbUJBQW1CLENBQUMsU0FBUyxHQUFHLGdCQUFnQixDQUFDO0lBQ25ELENBQUM7OztZQTFDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGFBQWE7Z0JBQ3ZCLHcycUJBQXNDO2FBQ3ZDOzs7c0JBR0UsS0FBSzsrQkFDTCxLQUFLOzBCQUNMLEtBQUs7aUNBQ0wsS0FBSzsrQkFDTCxLQUFLOzJCQUNMLEtBQUs7eUJBRUwsS0FBSzs2QkFDTCxLQUFLOzJCQUNMLEtBQUs7NEJBQ0wsS0FBSztnQ0FHTCxlQUFlLFNBQUMsaUJBQWlCOzhCQUdqQyxlQUFlLFNBQUMscUJBQXFCO2tDQUdyQyxlQUFlLFNBQUMseUJBQXlCO2dDQUd6QyxlQUFlLFNBQUMsdUJBQXVCO2lDQUd2QyxlQUFlLFNBQUMsd0JBQXdCOztBQVpMO0lBRG5DLGdCQUFnQixDQUFDLEVBQUUsaUJBQWlCLEVBQUUsd0JBQXdCLEVBQUMsQ0FBQzswREFDUTtBQUdqQztJQUR2QyxnQkFBZ0IsRUFBRTt3REFDNEQ7QUFHbkM7SUFEM0MsZ0JBQWdCLENBQUMsRUFBRSxpQkFBaUIsRUFBRSwwQkFBMEIsRUFBQyxDQUFDOzREQUN3QjtBQUdqRDtJQUR6QyxnQkFBZ0IsRUFBRTswREFDa0U7QUFHMUM7SUFEMUMsZ0JBQWdCLEVBQUU7MkRBQ3FFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY2Nlc3NpYmlsaXR5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQgeyBIZWFkZXJTdWJuYXZEYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEhlYWRlck5hdmlnYXRpb25EYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEhlYWRlckRyb3Bkb3duRGF0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBIZWFkZXJPZmZjYW52YXNEYXRhIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7RGVzeUNvbnRlbnRDaGlsZH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2RlY29yYXRvcnMvZGVzeS1jb250ZW50LWNoaWxkLmRlY29yYXRvcic7XHJcbmltcG9ydCB7SGVhZGVyT2ZmY2FudmFzQ29tcG9uZW50fSBmcm9tICcuL2hlYWRlci1vZmZjYW52YXMvaGVhZGVyLW9mZmNhbnZhcy5jb21wb25lbnQnO1xyXG5pbXBvcnQge0hlYWRlck5hdmlnYXRpb25Db21wb25lbnR9IGZyb20gJy4vaGVhZGVyLW5hdmlnYXRpb24vaGVhZGVyLW5hdmlnYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHtIZWFkZXJTdWJuYXZDb21wb25lbnR9IGZyb20gJy4vaGVhZGVyLXN1Ym5hdi9oZWFkZXItc3VibmF2LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7SGVhZGVyRHJvcGRvd25Db21wb25lbnR9IGZyb20gJy4vaGVhZGVyLWRyb3Bkb3duL2hlYWRlci1kcm9wZG93bi5jb21wb25lbnQnO1xyXG5pbXBvcnQge1NraXBMaW5rQ29tcG9uZW50fSBmcm9tICcuLi9za2lwLWxpbmsvc2tpcC1saW5rLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktaGVhZGVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaGVhZGVyLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSGVhZGVyQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpIGNsYXNzZXM6IHN0cmluZztcclxuICBASW5wdXQoKSBjb250YWluZXJDbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaG9tZXBhZ2VVcmw6IHN0cmluZztcclxuICBASW5wdXQoKSBob21lcGFnZVJvdXRlckxpbms6IHN0cmluZztcclxuICBASW5wdXQoKSBob21lcGFnZUZyYWdtZW50OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgZXhwYW5kZWRMb2dvOiBib29sZWFuO1xyXG5cclxuICBASW5wdXQoKSBzdWJuYXZEYXRhOiBIZWFkZXJTdWJuYXZEYXRhO1xyXG4gIEBJbnB1dCgpIG5hdmlnYXRpb25EYXRhOiBIZWFkZXJOYXZpZ2F0aW9uRGF0YTtcclxuICBASW5wdXQoKSBkcm9wZG93bkRhdGE6IEhlYWRlckRyb3Bkb3duRGF0YTtcclxuICBASW5wdXQoKSBvZmZjYW52YXNEYXRhOiBIZWFkZXJPZmZjYW52YXNEYXRhO1xyXG5cclxuICBARGVzeUNvbnRlbnRDaGlsZCh7IG9uU2V0Q2FsbGJhY2tOYW1lOiAnb3ZlcnJpZGVTa2lwTGlua1BhcmFtcyd9KVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oU2tpcExpbmtDb21wb25lbnQpIHNraXBsaW5rQ29tcG9uZW50OiBTa2lwTGlua0NvbXBvbmVudDtcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoKVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oSGVhZGVyU3VibmF2Q29tcG9uZW50KSBzdWJuYXZDb21wb25lbnQ6IEhlYWRlclN1Ym5hdkNvbXBvbmVudDtcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoeyBvblNldENhbGxiYWNrTmFtZTogJ292ZXJyaWRlTmF2aWdhdGlvblBhcmFtcyd9KVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oSGVhZGVyTmF2aWdhdGlvbkNvbXBvbmVudCkgbmF2aWdhdGlvbkNvbXBvbmVudDogSGVhZGVyTmF2aWdhdGlvbkNvbXBvbmVudDtcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoKVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oSGVhZGVyRHJvcGRvd25Db21wb25lbnQpIGRyb3Bkb3duQ29tcG9uZW50OiBIZWFkZXJEcm9wZG93bkNvbXBvbmVudDtcclxuXHJcbiAgQERlc3lDb250ZW50Q2hpbGQoKVxyXG4gIEBDb250ZW50Q2hpbGRyZW4oSGVhZGVyT2ZmY2FudmFzQ29tcG9uZW50KSBvZmZjYW52YXNDb21wb25lbnQ6IEhlYWRlck9mZmNhbnZhc0NvbXBvbmVudDtcclxuXHJcblxyXG4gIG92ZXJyaWRlU2tpcExpbmtQYXJhbXMoc2tpcGxpbmtDb21wb25lbnQ6IFNraXBMaW5rQ29tcG9uZW50KTogdm9pZCB7XHJcbiAgICBza2lwbGlua0NvbXBvbmVudC5pZCA9IHNraXBsaW5rQ29tcG9uZW50LmlkIHx8ICdza2lwLWxpbmsnO1xyXG4gICAgc2tpcGxpbmtDb21wb25lbnQudGV4dCA9ICdTYWx0YXIgYWwgY29udGVuaWRvIHByaW5jaXBhbCc7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZU5hdmlnYXRpb25QYXJhbXMobmF2aWdhdGlvbkNvbXBvbmVudDogSGVhZGVyTmF2aWdhdGlvbkNvbXBvbmVudCk6IHZvaWQge1xyXG4gICAgbmF2aWdhdGlvbkNvbXBvbmVudC5pZFByZWZpeCA9ICdoZWFkZXItbmF2LWl0ZW0nO1xyXG4gICAgbmF2aWdhdGlvbkNvbXBvbmVudC5hcmlhTGFiZWwgPSAnTWVuw7ogcHJpbmNpcGFsJztcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,28 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import { ContentBaseComponent } from '../../../../shared/components';
3
+ export class MenuHorizontalItemComponent extends ContentBaseComponent {
4
+ constructor() {
5
+ super(...arguments);
6
+ this.clickEvent = new EventEmitter();
7
+ this.activeChange = new EventEmitter();
8
+ }
9
+ }
10
+ MenuHorizontalItemComponent.decorators = [
11
+ { type: Component, args: [{
12
+ selector: 'desy-menu-horizontal-item',
13
+ template: '<ng-template #contentTemplate><ng-content></ng-content></ng-template>'
14
+ },] }
15
+ ];
16
+ MenuHorizontalItemComponent.propDecorators = {
17
+ href: [{ type: Input }],
18
+ routerLink: [{ type: Input }],
19
+ fragment: [{ type: Input }],
20
+ target: [{ type: Input }],
21
+ id: [{ type: Input }],
22
+ active: [{ type: Input }],
23
+ disabled: [{ type: Input }],
24
+ classes: [{ type: Input }],
25
+ clickEvent: [{ type: Output }],
26
+ activeChange: [{ type: Output }]
27
+ };
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1ob3Jpem9udGFsLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGVzeS1hbmd1bGFyL3NyYy9saWIvZGVzeS1uYXYvY29tcG9uZW50cy9tZW51LWhvcml6b250YWwvbWVudS1ob3Jpem9udGFsLWl0ZW0vbWVudS1ob3Jpem9udGFsLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFckUsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sK0JBQStCLENBQUM7QUFNbkUsTUFBTSxPQUFPLDJCQUE0QixTQUFRLG9CQUFvQjtJQUpyRTs7UUFlWSxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQStCLENBQUM7UUFDN0QsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0lBRXZELENBQUM7OztZQWxCQSxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsUUFBUSxFQUFFLHVFQUF1RTthQUNsRjs7O21CQUdFLEtBQUs7eUJBQ0wsS0FBSzt1QkFDTCxLQUFLO3FCQUNMLEtBQUs7aUJBQ0wsS0FBSztxQkFDTCxLQUFLO3VCQUNMLEtBQUs7c0JBQ0wsS0FBSzt5QkFFTCxNQUFNOzJCQUNOLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtNZW51SG9yaXpvbnRhbEl0ZW1EYXRhLCBNZW51SG9yaXpvbnRhbEl0ZW1FdmVudERhdGF9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQge0NvbnRlbnRCYXNlQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Rlc3ktbWVudS1ob3Jpem9udGFsLWl0ZW0nLFxyXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlICNjb250ZW50VGVtcGxhdGU+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctdGVtcGxhdGU+J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTWVudUhvcml6b250YWxJdGVtQ29tcG9uZW50IGV4dGVuZHMgQ29udGVudEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBNZW51SG9yaXpvbnRhbEl0ZW1EYXRhIHtcclxuXHJcbiAgQElucHV0KCkgaHJlZj86IHN0cmluZztcclxuICBASW5wdXQoKSByb3V0ZXJMaW5rPzogc3RyaW5nfGFueVtdO1xyXG4gIEBJbnB1dCgpIGZyYWdtZW50Pzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHRhcmdldD86IHN0cmluZztcclxuICBASW5wdXQoKSBpZD86IHN0cmluZztcclxuICBASW5wdXQoKSBhY3RpdmU/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIGRpc2FibGVkPzogYm9vbGVhbjtcclxuICBASW5wdXQoKSBjbGFzc2VzPzogc3RyaW5nO1xyXG5cclxuICBAT3V0cHV0KCkgY2xpY2tFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8TWVudUhvcml6b250YWxJdGVtRXZlbnREYXRhPigpO1xyXG4gIEBPdXRwdXQoKSBhY3RpdmVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG59XHJcbiJdfQ==
@@ -1,33 +1,55 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { AccessibilityComponent, textOrHtmlRequiredFunction } from '../../../shared/components';
3
- import { NavigationUtils } from '../../../shared/utils/navigation-utils';
1
+ import { Component, ContentChildren, EventEmitter, Input, Output } from '@angular/core';
2
+ import { AccessibilityComponent } from '../../../shared/components';
3
+ import { MenuHorizontalItemComponent } from './menu-horizontal-item/menu-horizontal-item.component';
4
4
  export class MenuHorizontalComponent extends AccessibilityComponent {
5
5
  constructor() {
6
6
  super(...arguments);
7
7
  this.clickEvent = new EventEmitter();
8
8
  }
9
- ngOnInit() {
10
- this.required();
11
- }
12
9
  ngOnChanges(changes) {
13
- this.required();
14
- }
15
- required() {
16
- if (!this.items || this.items.length === 0) {
17
- throw new Error(`items are required`);
18
- }
19
- for (const item of this.items) {
20
- textOrHtmlRequiredFunction(item.text, item.html);
21
- }
22
10
  }
23
11
  onClick(event, item) {
24
- this.items.forEach(i => i.active = false);
12
+ const itemsActiveChange = [];
13
+ if (!item.active) {
14
+ itemsActiveChange.push(item);
15
+ }
16
+ const itemList = this.getItemList();
17
+ itemList.forEach(i => {
18
+ if (i.active && i !== item) {
19
+ itemsActiveChange.push(i);
20
+ }
21
+ i.active = false;
22
+ });
25
23
  item.active = true;
24
+ // Se emite el evento sólo para los items cuyo valor de active ha sido modificado
25
+ itemsActiveChange.forEach(i => {
26
+ if (i instanceof MenuHorizontalItemComponent) {
27
+ i.activeChange.emit(i.active);
28
+ }
29
+ });
26
30
  this.clickEvent.emit({ item, event });
31
+ if (item instanceof MenuHorizontalItemComponent) {
32
+ item.clickEvent.emit({ item, event });
33
+ }
27
34
  }
28
35
  getIdPrefix() {
29
36
  return this.idPrefix ? this.idPrefix : 'menu-item';
30
37
  }
38
+ getItemList() {
39
+ const itemList = this.itemComponents && this.itemComponents.length > 0 ? this.itemComponents.toArray() : this.items;
40
+ if (!itemList || itemList.length === 0) {
41
+ throw new Error(`items are required`);
42
+ }
43
+ itemList.forEach(item => {
44
+ if (!item.routerLink && !item.href) {
45
+ throw Error('item routerLink or href are required');
46
+ }
47
+ });
48
+ return itemList;
49
+ }
50
+ handleEmptyItem(position) {
51
+ throw new Error(`item content, html or text are required at position ${position}`);
52
+ }
31
53
  getItemId(item, index) {
32
54
  let id;
33
55
  if (item.id) {
@@ -41,14 +63,11 @@ export class MenuHorizontalComponent extends AccessibilityComponent {
41
63
  }
42
64
  return id;
43
65
  }
44
- getExternalHref(item) {
45
- return NavigationUtils.getExternalHref(item.href);
46
- }
47
66
  }
48
67
  MenuHorizontalComponent.decorators = [
49
68
  { type: Component, args: [{
50
69
  selector: 'desy-menu-horizontal',
51
- 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"
70
+ template: "<!-- menu-horizontal -->\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<!-- /menu-horizontal -->\r\n"
52
71
  },] }
53
72
  ];
54
73
  MenuHorizontalComponent.propDecorators = {
@@ -56,6 +75,7 @@ MenuHorizontalComponent.propDecorators = {
56
75
  idPrefix: [{ type: Input }],
57
76
  classes: [{ type: Input }],
58
77
  items: [{ type: Input }],
78
+ itemComponents: [{ type: ContentChildren, args: [MenuHorizontalItemComponent,] }],
59
79
  clickEvent: [{ type: Output }]
60
80
  };
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1ob3Jpem9udGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLi9wcm9qZWN0cy9kZXN5LWFuZ3VsYXIvc3JjLyIsInNvdXJjZXMiOlsibGliL2Rlc3ktbmF2L2NvbXBvbmVudHMvbWVudS1ob3Jpem9udGFsL21lbnUtaG9yaXpvbnRhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQU16RSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsc0JBQXNCO0lBSm5FOztRQVdZLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBK0IsQ0FBQztJQTRDekUsQ0FBQztJQTFDQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzFDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUN2QztRQUNELEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUM3QiwwQkFBMEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNsRDtJQUNILENBQUM7SUFFRCxPQUFPLENBQUMsS0FBVSxFQUFFLElBQTRCO1FBQzlDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDckQsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUE0QixFQUFFLEtBQWE7UUFDbkQsSUFBSSxFQUFFLENBQUM7UUFDUCxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDWCxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUNkO2FBQU0sSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFO1lBQ3RCLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDekI7YUFBTTtZQUNMLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxHQUFHLEtBQUssQ0FBQztTQUN2QztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELGVBQWUsQ0FBQyxJQUE0QjtRQUMxQyxPQUFPLGVBQWUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7OztZQXRERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMscTBNQUErQzthQUNoRDs7O2lCQUdFLEtBQUs7dUJBQ0wsS0FBSztzQkFDTCxLQUFLO29CQUNMLEtBQUs7eUJBRUwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNZW51SG9yaXpvbnRhbEl0ZW1EYXRhLCBNZW51SG9yaXpvbnRhbEl0ZW1FdmVudERhdGEgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcclxuaW1wb3J0IHsgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCwgdGV4dE9ySHRtbFJlcXVpcmVkRnVuY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29tcG9uZW50cyc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25VdGlscyB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC91dGlscy9uYXZpZ2F0aW9uLXV0aWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZGVzeS1tZW51LWhvcml6b250YWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWhvcml6b250YWwuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBNZW51SG9yaXpvbnRhbENvbXBvbmVudCBleHRlbmRzIEFjY2Vzc2liaWxpdHlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcblxyXG4gIEBJbnB1dCgpIGlkOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaWRQcmVmaXg6IHN0cmluZztcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaXRlbXM6IE1lbnVIb3Jpem9udGFsSXRlbURhdGFbXTtcclxuXHJcbiAgQE91dHB1dCgpIGNsaWNrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPE1lbnVIb3Jpem9udGFsSXRlbUV2ZW50RGF0YT4oKTtcclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlcXVpcmVkKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlcXVpcmVkKCk7XHJcbiAgfVxyXG5cclxuICByZXF1aXJlZCgpOiB2b2lke1xyXG4gICAgaWYgKCF0aGlzLml0ZW1zIHx8IHRoaXMuaXRlbXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihgaXRlbXMgYXJlIHJlcXVpcmVkYCk7XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgdGhpcy5pdGVtcykge1xyXG4gICAgICB0ZXh0T3JIdG1sUmVxdWlyZWRGdW5jdGlvbihpdGVtLnRleHQsIGl0ZW0uaHRtbCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrKGV2ZW50OiBhbnksIGl0ZW06IE1lbnVIb3Jpem9udGFsSXRlbURhdGEpOiB2b2lkIHtcclxuICAgIHRoaXMuaXRlbXMuZm9yRWFjaChpID0+IGkuYWN0aXZlID0gZmFsc2UpO1xyXG4gICAgaXRlbS5hY3RpdmUgPSB0cnVlO1xyXG4gICAgdGhpcy5jbGlja0V2ZW50LmVtaXQoeyBpdGVtLCBldmVudCB9KTtcclxuICB9XHJcblxyXG4gIGdldElkUHJlZml4KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5pZFByZWZpeCA/IHRoaXMuaWRQcmVmaXggOiAnbWVudS1pdGVtJztcclxuICB9XHJcblxyXG4gIGdldEl0ZW1JZChpdGVtOiBNZW51SG9yaXpvbnRhbEl0ZW1EYXRhLCBpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGxldCBpZDtcclxuICAgIGlmIChpdGVtLmlkKSB7XHJcbiAgICAgIGlkID0gaXRlbS5pZDtcclxuICAgIH0gZWxzZSBpZiAoaW5kZXggPT09IDApIHtcclxuICAgICAgaWQgPSB0aGlzLmdldElkUHJlZml4KCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZCA9IHRoaXMuZ2V0SWRQcmVmaXgoKSArICctJyArIGluZGV4O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGlkO1xyXG4gIH1cclxuXHJcbiAgZ2V0RXh0ZXJuYWxIcmVmKGl0ZW06IE1lbnVIb3Jpem9udGFsSXRlbURhdGEpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE5hdmlnYXRpb25VdGlscy5nZXRFeHRlcm5hbEhyZWYoaXRlbS5ocmVmKTtcclxuICB9XHJcbn1cclxuIl19
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1ob3Jpem9udGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Rlc3ktYW5ndWxhci9zcmMvbGliL2Rlc3ktbmF2L2NvbXBvbmVudHMvbWVudS1ob3Jpem9udGFsL21lbnUtaG9yaXpvbnRhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQTJCLE1BQU0sZUFBZSxDQUFDO0FBRTNILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBTWxHLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxzQkFBc0I7SUFKbkU7O1FBYVksZUFBVSxHQUFHLElBQUksWUFBWSxFQUErQixDQUFDO0lBa0V6RSxDQUFDO0lBaEVDLFdBQVcsQ0FBQyxPQUFzQjtJQUNsQyxDQUFDO0lBRUQsT0FBTyxDQUFDLEtBQVUsRUFBRSxJQUE0QjtRQUM5QyxNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNoQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDOUI7UUFFRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNuQixJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRTtnQkFDMUIsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzNCO1lBQ0QsQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUVuQixpRkFBaUY7UUFDakYsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzVCLElBQUksQ0FBQyxZQUFhLDJCQUEyQixFQUFFO2dCQUM3QyxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDL0I7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDdEMsSUFBSSxJQUFJLFlBQVksMkJBQTJCLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztTQUN2QztJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDckQsQ0FBQztJQUVELFdBQVc7UUFDVCxNQUFNLFFBQVEsR0FBSSxJQUFJLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNySCxJQUFJLENBQUMsUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3RDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztTQUN2QztRQUVELFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNsQyxNQUFNLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO2FBQ3JEO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsZUFBZSxDQUFDLFFBQWdCO1FBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsdURBQXVELFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUE0QixFQUFFLEtBQWE7UUFDbkQsSUFBSSxFQUFFLENBQUM7UUFDUCxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7WUFDWCxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQztTQUNkO2FBQU0sSUFBSSxLQUFLLEtBQUssQ0FBQyxFQUFFO1lBQ3RCLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDekI7YUFBTTtZQUNMLEVBQUUsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxHQUFHLEtBQUssQ0FBQztTQUN2QztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7O1lBOUVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsc0JBQXNCO2dCQUNoQyx5MU5BQStDO2FBQ2hEOzs7aUJBR0UsS0FBSzt1QkFDTCxLQUFLO3NCQUNMLEtBQUs7b0JBQ0wsS0FBSzs2QkFFTCxlQUFlLFNBQUMsMkJBQTJCO3lCQUUzQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFF1ZXJ5TGlzdCwgU2ltcGxlQ2hhbmdlc30gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1lbnVIb3Jpem9udGFsSXRlbURhdGEsIE1lbnVIb3Jpem9udGFsSXRlbUV2ZW50RGF0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBBY2Nlc3NpYmlsaXR5Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2NvbXBvbmVudHMnO1xyXG5pbXBvcnQge01lbnVIb3Jpem9udGFsSXRlbUNvbXBvbmVudH0gZnJvbSAnLi9tZW51LWhvcml6b250YWwtaXRlbS9tZW51LWhvcml6b250YWwtaXRlbS5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdkZXN5LW1lbnUtaG9yaXpvbnRhbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUtaG9yaXpvbnRhbC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE1lbnVIb3Jpem9udGFsQ29tcG9uZW50IGV4dGVuZHMgQWNjZXNzaWJpbGl0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcblxyXG4gIEBJbnB1dCgpIGlkOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaWRQcmVmaXg6IHN0cmluZztcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaXRlbXM6IE1lbnVIb3Jpem9udGFsSXRlbURhdGFbXTtcclxuXHJcbiAgQENvbnRlbnRDaGlsZHJlbihNZW51SG9yaXpvbnRhbEl0ZW1Db21wb25lbnQpIGl0ZW1Db21wb25lbnRzOiBRdWVyeUxpc3Q8TWVudUhvcml6b250YWxJdGVtQ29tcG9uZW50PjtcclxuXHJcbiAgQE91dHB1dCgpIGNsaWNrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPE1lbnVIb3Jpem9udGFsSXRlbUV2ZW50RGF0YT4oKTtcclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gIH1cclxuXHJcbiAgb25DbGljayhldmVudDogYW55LCBpdGVtOiBNZW51SG9yaXpvbnRhbEl0ZW1EYXRhKTogdm9pZCB7XHJcbiAgICBjb25zdCBpdGVtc0FjdGl2ZUNoYW5nZSA9IFtdO1xyXG4gICAgaWYgKCFpdGVtLmFjdGl2ZSkge1xyXG4gICAgICBpdGVtc0FjdGl2ZUNoYW5nZS5wdXNoKGl0ZW0pO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGl0ZW1MaXN0ID0gdGhpcy5nZXRJdGVtTGlzdCgpO1xyXG4gICAgaXRlbUxpc3QuZm9yRWFjaChpID0+IHtcclxuICAgICAgaWYgKGkuYWN0aXZlICYmIGkgIT09IGl0ZW0pIHtcclxuICAgICAgICBpdGVtc0FjdGl2ZUNoYW5nZS5wdXNoKGkpO1xyXG4gICAgICB9XHJcbiAgICAgIGkuYWN0aXZlID0gZmFsc2U7XHJcbiAgICB9KTtcclxuICAgIGl0ZW0uYWN0aXZlID0gdHJ1ZTtcclxuXHJcbiAgICAvLyBTZSBlbWl0ZSBlbCBldmVudG8gc8OzbG8gcGFyYSBsb3MgaXRlbXMgY3V5byB2YWxvciBkZSBhY3RpdmUgaGEgc2lkbyBtb2RpZmljYWRvXHJcbiAgICBpdGVtc0FjdGl2ZUNoYW5nZS5mb3JFYWNoKGkgPT4ge1xyXG4gICAgICBpZiAoaSBpbnN0YW5jZW9mICBNZW51SG9yaXpvbnRhbEl0ZW1Db21wb25lbnQpIHtcclxuICAgICAgICBpLmFjdGl2ZUNoYW5nZS5lbWl0KGkuYWN0aXZlKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5jbGlja0V2ZW50LmVtaXQoeyBpdGVtLCBldmVudCB9KTtcclxuICAgIGlmIChpdGVtIGluc3RhbmNlb2YgTWVudUhvcml6b250YWxJdGVtQ29tcG9uZW50KSB7XHJcbiAgICAgIGl0ZW0uY2xpY2tFdmVudC5lbWl0KHsgaXRlbSwgZXZlbnQgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRJZFByZWZpeCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuaWRQcmVmaXggPyB0aGlzLmlkUHJlZml4IDogJ21lbnUtaXRlbSc7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtTGlzdCgpOiBNZW51SG9yaXpvbnRhbEl0ZW1EYXRhW10ge1xyXG4gICAgY29uc3QgaXRlbUxpc3QgPSAgdGhpcy5pdGVtQ29tcG9uZW50cyAmJiB0aGlzLml0ZW1Db21wb25lbnRzLmxlbmd0aCA+IDAgPyB0aGlzLml0ZW1Db21wb25lbnRzLnRvQXJyYXkoKSA6IHRoaXMuaXRlbXM7XHJcbiAgICBpZiAoIWl0ZW1MaXN0IHx8IGl0ZW1MaXN0Lmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGl0ZW1zIGFyZSByZXF1aXJlZGApO1xyXG4gICAgfVxyXG5cclxuICAgIGl0ZW1MaXN0LmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgIGlmICghaXRlbS5yb3V0ZXJMaW5rICYmICFpdGVtLmhyZWYpIHtcclxuICAgICAgICB0aHJvdyBFcnJvcignaXRlbSByb3V0ZXJMaW5rIG9yIGhyZWYgYXJlIHJlcXVpcmVkJyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIGl0ZW1MaXN0O1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlRW1wdHlJdGVtKHBvc2l0aW9uOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgaXRlbSBjb250ZW50LCBodG1sIG9yIHRleHQgYXJlIHJlcXVpcmVkIGF0IHBvc2l0aW9uICR7cG9zaXRpb259YCk7XHJcbiAgfVxyXG5cclxuICBnZXRJdGVtSWQoaXRlbTogTWVudUhvcml6b250YWxJdGVtRGF0YSwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBsZXQgaWQ7XHJcbiAgICBpZiAoaXRlbS5pZCkge1xyXG4gICAgICBpZCA9IGl0ZW0uaWQ7XHJcbiAgICB9IGVsc2UgaWYgKGluZGV4ID09PSAwKSB7XHJcbiAgICAgIGlkID0gdGhpcy5nZXRJZFByZWZpeCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWQgPSB0aGlzLmdldElkUHJlZml4KCkgKyAnLScgKyBpbmRleDtcclxuICAgIH1cclxuICAgIHJldHVybiBpZDtcclxuICB9XHJcbn1cclxuIl19