desy-html 8.2.2 → 8.3.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 (68) hide show
  1. package/docs/_include.template-header.njk +8 -1
  2. package/docs/catalogo.html +1 -0
  3. package/docs/componentes.html +1 -0
  4. package/docs/estilos.html +1 -0
  5. package/docs/examples-accordion-history.html +1 -0
  6. package/docs/examples-accordion.html +1 -0
  7. package/docs/examples-alert.html +1 -0
  8. package/docs/examples-breadcrumbs.html +1 -0
  9. package/docs/examples-button-loader.html +1 -0
  10. package/docs/examples-button.html +1 -0
  11. package/docs/examples-card.html +1 -0
  12. package/docs/examples-character-count.html +1 -0
  13. package/docs/examples-checkboxes.html +1 -0
  14. package/docs/examples-collapsible.html +1 -0
  15. package/docs/examples-date-input.html +1 -0
  16. package/docs/examples-description-list.html +1 -0
  17. package/docs/examples-details.html +1 -0
  18. package/docs/examples-dialog.html +1 -0
  19. package/docs/examples-dropdown.html +1 -0
  20. package/docs/examples-error-message.html +1 -0
  21. package/docs/examples-error-summary.html +1 -0
  22. package/docs/examples-fieldset.html +1 -0
  23. package/docs/examples-file-upload.html +1 -0
  24. package/docs/examples-footer.html +1 -0
  25. package/docs/examples-header-advanced.html +1 -0
  26. package/docs/examples-header-mini.html +1 -0
  27. package/docs/examples-header.html +1 -0
  28. package/docs/examples-hint.html +1 -0
  29. package/docs/examples-input-group.html +1 -0
  30. package/docs/examples-input.html +1 -0
  31. package/docs/examples-item.html +1 -0
  32. package/docs/examples-label.html +1 -0
  33. package/docs/examples-links-list.html +1 -0
  34. package/docs/examples-listbox.html +1 -0
  35. package/docs/examples-media-object.html +1 -0
  36. package/docs/examples-menu-horizontal.html +1 -0
  37. package/docs/examples-menu-navigation.html +1 -0
  38. package/docs/examples-menu-vertical.html +1 -0
  39. package/docs/examples-menubar.html +1 -0
  40. package/docs/examples-modal.html +1 -0
  41. package/docs/examples-nav.html +1 -0
  42. package/docs/examples-notification.html +1 -0
  43. package/docs/examples-pagination.html +1 -0
  44. package/docs/examples-pill.html +1 -0
  45. package/docs/examples-radios.html +1 -0
  46. package/docs/examples-searchbar.html +1 -0
  47. package/docs/examples-select.html +1 -0
  48. package/docs/examples-skip-link.html +1 -0
  49. package/docs/examples-spinner.html +1 -0
  50. package/docs/examples-status-item.html +1 -0
  51. package/docs/examples-status.html +1 -0
  52. package/docs/examples-table-advanced.html +1 -0
  53. package/docs/examples-table.html +1 -0
  54. package/docs/examples-tabs.html +1 -0
  55. package/docs/examples-textarea.html +1 -0
  56. package/docs/examples-toggle.html +1 -0
  57. package/docs/examples-tooltip.html +1 -0
  58. package/docs/examples-tree.html +1 -0
  59. package/docs/index.html +11 -0
  60. package/docs/plantillas.html +1 -0
  61. package/package.json +1 -1
  62. package/src/js/aria/HeaderNavigation.js +55 -0
  63. package/src/js/aria/MenuVertical.js +21 -49
  64. package/src/js/desy-html.js +14 -0
  65. package/src/js/index.js +3 -1
  66. package/src/templates/components/header/_examples.header.njk +2 -1
  67. package/src/templates/components/header/_template.header.header__navigation.njk +3 -3
  68. package/src/templates/components/header-advanced/_examples.header-advanced.njk +1 -1
@@ -299,4 +299,11 @@
299
299
  }) }}
300
300
  </li>
301
301
  </ul>
302
- {% endcall %}
302
+ {% endcall %}
303
+ {% if activeSection != undefined %}
304
+ <script>
305
+ window.addEventListener("load", function(event) {
306
+ activateItemHeaderNavigation("header-nav-item", "{{ activeSection }}");
307
+ });
308
+ </script>
309
+ {% endif %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Catálogo visual de componentes. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-3" %}
2
3
  {% extends "_template.default.njk" %}
3
4
  {% block contentBlock %}
4
5
  <div class="pb-lg"></div>
@@ -1,4 +1,5 @@
1
1
  {% set title = "Lista de componentes. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.default.njk" %}
3
4
 
4
5
  {% from "components/menu-vertical/_macro.menu-vertical.njk" import componentMenuVertical %}
package/docs/estilos.html CHANGED
@@ -1,4 +1,5 @@
1
1
  {% set title = "Estilos: colores, espaciado, retícula y tipografía. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-2" %}
2
3
  {% extends "_template.default.njk" %}
3
4
 
4
5
  {% block contentBlock %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Accordion history. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/accordion-history/_examples.accordion-history.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Accordion. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/accordion/_examples.accordion.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Alert. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/alert/_examples.alert.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Breadcrumbs. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/breadcrumbs/_examples.breadcrumbs.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Button loader. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/button-loader/_examples.button-loader.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Button. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/button/_examples.button.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Card. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/card/_examples.card.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Character count. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/character-count/_examples.character-count.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Checkboxes. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/checkboxes/_examples.checkboxes.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Collapsible. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/collapsible/_examples.collapsible.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Date input. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/date-input/_examples.date-input.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Description list. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/description-list/_examples.description-list.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Details. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/details/_examples.details.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Dialog. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/dialog/_examples.dialog.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Dropdown. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/dropdown/_examples.dropdown.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Error message. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/error-message/_examples.error-message.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Error summary. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/error-summary/_examples.error-summary.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Fieldset. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/fieldset/_examples.fieldset.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "File upload. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/file-upload/_examples.file-upload.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Footer. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/footer/_examples.footer.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Header advanced. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/header-advanced/_examples.header-advanced.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Header mini. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/header-mini/_examples.header-mini.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Header. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/header/_examples.header.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Hint. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/hint/_examples.hint.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Input group. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/input-group/_examples.input-group.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Input. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/input/_examples.input.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Item. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/item/_examples.item.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Label. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/label/_examples.label.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Links list. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/links-list/_examples.links-list.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Listbox. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/listbox/_examples.listbox.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Media object. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/media-object/_examples.media-object.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Menu horizontal. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/menu-horizontal/_examples.menu-horizontal.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Menu navigation. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/menu-navigation/_examples.menu-navigation.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Menu vertical. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/menu-vertical/_examples.menu-vertical.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Menubar. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/menubar/_examples.menubar.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Modal. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/modal/_examples.modal.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Nav. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/nav/_examples.nav.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Notification. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/notification/_examples.notification.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Pagination. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/pagination/_examples.pagination.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Pill. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/pill/_examples.pill.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Radios. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/radios/_examples.radios.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Searchbar. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/searchbar/_examples.searchbar.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Select. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/select/_examples.select.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Skip link. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/skip-link/_examples.skip-link.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Spinner. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/spinner/_examples.spinner.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Status item. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/status-item/_examples.status-item.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Status. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/status/_examples.status.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Table advanced. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/table-advanced/_examples.table-advanced.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Table. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/table/_examples.table.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Tabs. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/tabs/_examples.tabs.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Textarea. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/textarea/_examples.textarea.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Toggle. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/toggle/_examples.toggle.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Tooltip. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/tooltip/_examples.tooltip.njk" as exampleData %}
@@ -1,4 +1,5 @@
1
1
  {% set title = "Tree. Componente, parámetros y ejemplos. Documentación de desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-4" %}
2
3
  {% extends "_template.examples.njk" %}
3
4
  {% block contentBlock %}
4
5
  {% import "components/tree/_examples.tree.njk" as exampleData %}
package/docs/index.html CHANGED
@@ -1,5 +1,6 @@
1
1
  {% set title = "Desy. Sistema de diseño para aplicaciones web. Gobierno de Aragón" %}
2
2
  {% set description = "Documentación y librería desy-html para implementarlo en HTML, CSS y Javascript con un paquete NPM." %}
3
+ {% set activeSection = "header-nav-item-1" %}
3
4
  {% extends "_template.default.njk" %}
4
5
  {% block contentBlock %}
5
6
 
@@ -37,6 +38,16 @@
37
38
 
38
39
  <h2>Changelog (English)</h2>
39
40
  <p>What's new in the latest version of desy-html</p>
41
+ <h3>v.8.3.1</h3>
42
+ <ul class="text-sm">
43
+ <li>Minor fixes.</li>
44
+ </ul>
45
+ <h3>v.8.3.0</h3>
46
+ <ul class="text-sm">
47
+ <li>Added global function to select an item in Header navigation in Header and Header advanced components.</li>
48
+ <li>Docs now show the active section in header menu.</li>
49
+ <li>Minor fixes.</li>
50
+ </ul>
40
51
  <h3>v.8.2.2</h3>
41
52
  <ul class="text-sm">
42
53
  <li>Fixed duplicate ids in subitems in components with subitems.</li>
@@ -1,4 +1,5 @@
1
1
  {% set title = "Plantillas para desy-html. Gobierno de Aragón" %}
2
+ {% set activeSection = "header-nav-item-5" %}
2
3
  {% extends "_template.default.njk" %}
3
4
 
4
5
  {% block contentBlock %}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "desy-html",
3
- "version": "8.2.2",
3
+ "version": "8.3.1",
4
4
  "description": "desy-html contains the code you need to start building a user interface for Gobierno de Aragón government webapps.",
5
5
  "author": {
6
6
  "name": "Desy (SDA Servicios Digitales de Aragón)",
@@ -0,0 +1,55 @@
1
+ export function HeaderNavigation(aria) {
2
+ (function () {
3
+ aria.HeaderNavigation = function (domNode) {
4
+ this.domNode = domNode;
5
+ };
6
+
7
+ aria.HeaderNavigation.prototype.init = function () {
8
+ this.valueActive = this.domNode.dataset.menuActive;
9
+ if (this.valueActive) {
10
+ this.activateElement(this.valueActive);
11
+ }
12
+ };
13
+
14
+ aria.HeaderNavigation.prototype.activateElement = function (elementActive) {
15
+ this.domNode.querySelectorAll('li').forEach((element) => {
16
+ const getLink = element.querySelector('a') || element.querySelector('span');
17
+ if (getLink) {
18
+ if (getLink.id === elementActive) {
19
+ this.wrapActiveElement(getLink);
20
+ } else {
21
+ this.deactivateElement(getLink);
22
+ }
23
+ }
24
+ });
25
+ };
26
+
27
+ aria.HeaderNavigation.prototype.wrapActiveElement = function (elementActive) {
28
+ elementActive.setAttribute('aria-current', 'true');
29
+ elementActive.innerHTML = `<strong class="font-bold">${elementActive.textContent}</strong>`;
30
+ };
31
+
32
+ aria.HeaderNavigation.prototype.deactivateElement = function (elementDeactivated) {
33
+ elementDeactivated.removeAttribute('aria-current');
34
+ elementDeactivated.innerHTML = elementDeactivated.textContent;
35
+ };
36
+
37
+ window.activateItemHeaderNavigation = function (menuId, activeItemId) {
38
+ const menu = document.getElementById(menuId);
39
+ if (menu) {
40
+ const activeItem = document.querySelector(`#${menuId} #${activeItemId}`);
41
+ if (activeItem) {
42
+ const menuInstance = new aria.HeaderNavigation(menu);
43
+ menuInstance.activateElement(activeItemId);
44
+ return [menu, activeItem];
45
+ } else {
46
+ console.log('There is no element with this id in the menu.');
47
+ return null;
48
+ }
49
+ } else {
50
+ console.log('There is no menu with this id in the document.');
51
+ return null;
52
+ }
53
+ };
54
+ }());
55
+ }
@@ -6,77 +6,49 @@ export function MenuVertical(aria) {
6
6
 
7
7
  aria.MenuVertical.prototype.init = function () {
8
8
  this.valueActive = this.domNode.dataset.menuActive;
9
- if(this.valueActive) {
9
+ if (this.valueActive) {
10
10
  this.activateElement(this.valueActive);
11
11
  }
12
12
  };
13
13
 
14
14
  aria.MenuVertical.prototype.activateElement = function (elementActive) {
15
- this.domNode.querySelectorAll('li').forEach((element, index) => {
16
- const processElement = function (elem, parent) {
17
- let getId = elem.id
18
- if(getId == elementActive){
19
- parent.wrapActiveElement(elem)
15
+ this.domNode.querySelectorAll('li').forEach((element) => {
16
+ const getLink = element.querySelector('a') || element.querySelector('span');
17
+ if (getLink) {
18
+ if (getLink.id === elementActive) {
19
+ this.wrapActiveElement(getLink);
20
20
  } else {
21
- parent.deactivateElement(elem)
21
+ this.deactivateElement(getLink);
22
22
  }
23
23
  }
24
- if (element.querySelector('a')) {
25
- const getLink = element.querySelector('a');
26
- processElement(getLink, this);
27
- } else if (element.querySelector('span')) {
28
- const getLink = element.querySelector('span');
29
- processElement(getLink, this);
30
- }
31
-
32
- })
24
+ });
33
25
  };
34
26
 
35
27
  aria.MenuVertical.prototype.wrapActiveElement = function (elementActive) {
36
- const getText = elementActive.textContent;
37
- const strongElement = `<strong>${getText}</strong>`;
38
- elementActive.innerHTML = strongElement;
28
+ elementActive.setAttribute('aria-current', 'true');
29
+ elementActive.innerHTML = `<strong>${elementActive.textContent}</strong>`;
39
30
  };
40
31
 
41
32
  aria.MenuVertical.prototype.deactivateElement = function (elementDeactivated) {
42
- const getText = elementDeactivated.textContent;
43
- const strongElement = `${getText}`;
44
- elementDeactivated.innerHTML = strongElement;
33
+ elementDeactivated.removeAttribute('aria-current');
34
+ elementDeactivated.innerHTML = elementDeactivated.textContent;
45
35
  };
46
36
 
47
37
  window.activateItemMenuVertical = function (menuId, activeItemId) {
48
- if (document.getElementById(menuId)) {
49
- if (document.querySelector('#' + menuId + ' #' + activeItemId)) {
50
- const menu = document.getElementById(menuId);
51
- let selectedItem = null;
52
- menu.querySelectorAll('li').forEach((element, index) => {
53
- const processElement = function (elem) {
54
- let getId = elem.id;
55
- if(getId == activeItemId){
56
- const getText = elem.textContent;
57
- const strongElement = `<strong>${getText}</strong>`;
58
- elem.innerHTML = strongElement;
59
- selectedItem = elem;
60
- } else {
61
- const getText = elem.textContent;
62
- const strongElement = `${getText}`;
63
- elem.innerHTML = strongElement;
64
- }
65
- }
66
- if (element.querySelector('a')) {
67
- let getLink = element.querySelector('a');
68
- processElement(getLink);
69
- } else if (element.querySelector('span')) {
70
- let getLink = element.querySelector('span');
71
- processElement(getLink);
72
- }
73
- });
74
- return([menu,selectedItem]);
38
+ const menu = document.getElementById(menuId);
39
+ if (menu) {
40
+ const activeItem = document.querySelector(`#${menuId} #${activeItemId}`);
41
+ if (activeItem) {
42
+ const menuInstance = new aria.MenuVertical(menu);
43
+ menuInstance.activateElement(activeItemId);
44
+ return [menu, activeItem];
75
45
  } else {
76
46
  console.log('There is no element with this id in the menu.');
47
+ return null;
77
48
  }
78
49
  } else {
79
50
  console.log('There is no menu with this id in the document.');
51
+ return null;
80
52
  }
81
53
  };
82
54
  }());
@@ -18,6 +18,7 @@ import { notification } from './aria/notification.js';
18
18
  import { RadioButton } from './aria/radioButton.js';
19
19
  import { CheckBox } from './aria/checkBoxes.js';
20
20
  import { MenuVertical } from './aria/MenuVertical.js';
21
+ import { HeaderNavigation } from './aria/HeaderNavigation.js';
21
22
 
22
23
 
23
24
  export function accordionComponent(aria) {
@@ -391,3 +392,16 @@ export function MenuVerticalComponent(aria) {
391
392
  }
392
393
  }
393
394
  }
395
+
396
+ export function HeaderNavigationComponent(aria) {
397
+ HeaderNavigation(aria);
398
+ const modules = document.querySelectorAll('[data-module]');
399
+ for (const item in modules) if (modules.hasOwnProperty(item)) {
400
+ const moduleValue = modules[item].getAttribute('data-module');
401
+
402
+ if (moduleValue == 'c-header-navigation'){
403
+ const headerNavigation = new aria.HeaderNavigation(modules[item]);
404
+ headerNavigation.init(null);
405
+ }
406
+ }
407
+ }
package/src/js/index.js CHANGED
@@ -20,7 +20,8 @@ import {
20
20
  notificationComponent,
21
21
  radioButtonComponent,
22
22
  checkBoxComponent,
23
- MenuVerticalComponent
23
+ MenuVerticalComponent,
24
+ HeaderNavigationComponent
24
25
  } from './desy-html.js';
25
26
 
26
27
  var aria = aria || {};
@@ -42,6 +43,7 @@ notificationComponent(aria);
42
43
  radioButtonComponent(aria);
43
44
  checkBoxComponent(aria);
44
45
  MenuVerticalComponent(aria);
46
+ HeaderNavigationComponent(aria);
45
47
 
46
48
  //Using the browser API to copy code to the clipboard
47
49
  const copyButtons = document.querySelectorAll('[data-module = "c-button-copy"]');
@@ -200,9 +200,10 @@
200
200
  {% set examples = [
201
201
  {
202
202
  "name": "por defecto",
203
- "description": "El menú por defecto de las aplicaciones de la administración digital tiene un logo que enlaza a la página de inicio y un menu principal de navegación. El menu de navegación se oculta en mobile si no se añaden clases a navigation. El logotipo es simple, sin letras, si la app está diseñada para funcionarios. Junto al logo hay un texto que da nombre a la app en la que estamos.",
203
+ "description": 'El menú por defecto de las aplicaciones de la administración digital tiene un logo que enlaza a la página de inicio y un menu principal de navegación. El menu de navegación se oculta en mobile si no se añaden clases a navigation. El logotipo es simple, sin letras, si la app está diseñada para funcionarios. Junto al logo hay un texto que da nombre a la app en la que estamos. Puedes usar con javascript la función global <code>activateItemHeaderNavigation(elementMenu, idItemSeleccionado)</code> para seleccionar un item de un menú, usando sus ids. Ej: Abre la consola del navegador y escribe <code>activateItemHeaderNavigation("header-nav-item", "header-nav-item-3")</code> para desactivar el item actual y activar el tercer item del header de la página.',
204
204
  "data": {
205
205
  "homepageUrl": "/",
206
+ "idPrefix": "mi-menu",
206
207
  "mobileTitle": {
207
208
  "text": "Gestor de expedientes"
208
209
  },
@@ -2,7 +2,7 @@
2
2
  instead -#}
3
3
  {% set idPrefix = params.idPrefix if params.idPrefix else "header-nav-item" %}
4
4
  <!-- header__navigation -->
5
- <nav class="{{ params.classes if params.classes else 'hidden lg:block' }}" {%- for attribute, value in params.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
5
+ <nav id="{{ idPrefix }}" data-module="c-header-navigation" class="{{ params.classes if params.classes else 'hidden lg:block' }}" {%- for attribute, value in params.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
6
6
  <ul class="ml-sm flex flex-wrap items-baseline">
7
7
  {% for item in params.items %}
8
8
  {% if item %}
@@ -15,10 +15,10 @@
15
15
  {% endif %}
16
16
  {% if item.active %}
17
17
 
18
- <a {%- if id %} id="{{ id }}"{% endif %} href="{{ item.href }}" class="max-w-40 lg:max-w-xs px-3 py-4 font-bold text-sm text-black hover:underline truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-black focus:bg-warning-base" aria-current="page" {%- if item.target %} target="{{ item.target }}"{% endif %}><strong class="font-bold">{{ item.html | safe if item.html else item.text }}</strong></a>
18
+ <a {%- if id %} id="{{ id }}"{% endif %} href="{{ item.href }}" class="max-w-40 lg:max-w-xs px-3 py-4 text-sm text-black hover:underline truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-black focus:bg-warning-base" aria-current="page" {%- if item.target %} target="{{ item.target }}"{% endif %}><strong class="font-bold">{{ item.html | safe if item.html else item.text }}</strong></a>
19
19
  {% else %}
20
20
 
21
- <a href="{{ item.href }}" class="max-w-40 lg:max-w-xs px-3 py-4 text-sm text-black hover:underline truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-black focus:bg-warning-base {%- if item.disabled %} opacity-50 pointer-events-none{% endif -%}" {%- if item.disabled %} disabled="disabled" aria-disabled="true" tabindex="-1"{% endif -%} {%- if item.target %} target="{{ item.target }}"{% endif %}>{{ item.html | safe if item.html else item.text }}</a>
21
+ <a {%- if id %} id="{{ id }}"{% endif %} href="{{ item.href }}" class="max-w-40 lg:max-w-xs px-3 py-4 text-sm text-black hover:underline truncate focus:outline-none focus:ring-4 focus:ring-inset focus:ring-black focus:bg-warning-base {%- if item.disabled %} opacity-50 pointer-events-none{% endif -%}" {%- if item.disabled %} disabled="disabled" aria-disabled="true" tabindex="-1"{% endif -%} {%- if item.target %} target="{{ item.target }}"{% endif %}>{{ item.html | safe if item.html else item.text }}</a>
22
22
  {% endif %}
23
23
  </li>
24
24
  {% endif %}
@@ -627,7 +627,7 @@
627
627
  {% set examples = [
628
628
  {
629
629
  "name": "por defecto",
630
- "description": "Esta es la cabecera por defecto para sitios web de submarcas del Gobierno de Aragón. Tiene un título que enlaza a la página de inicio.",
630
+ "description": 'Esta es la cabecera por defecto para sitios web de submarcas del Gobierno de Aragón. Tiene un título que enlaza a la página de inicio. Puedes usar con javascript la función global <code>activateItemHeaderNavigation(elementMenu, idItemSeleccionado)</code> para seleccionar un item de un menú, usando sus ids. Ej: Abre la consola del navegador y escribe <code>activateItemHeaderNavigation("header-nav-item", "header-nav-item-3")</code> para desactivar el item actual y activar el tercer item del header de la página.',
631
631
  "data": {
632
632
  "title": {
633
633
  "homepageUrl": "/",