desy-html 16.0.3 → 17.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (531) hide show
  1. package/.node-version +1 -1
  2. package/.nvmrc +1 -1
  3. package/AGENTS.md +207 -181
  4. package/README.md +203 -203
  5. package/TESTING_PLAN.md +379 -376
  6. package/branding/BRANDING.md +398 -395
  7. package/branding/branding.config.js +76 -76
  8. package/branding/branding.config.yourorganization.js +72 -65
  9. package/branding/logos/aragon-compact.svg +1 -1
  10. package/branding/logos/aragon-expanded.svg +1 -1
  11. package/branding/logos/aragon-mini.svg +1 -1
  12. package/branding/logos/favicon.svg +1 -1
  13. package/branding/logos/yourlogo-compact.svg +13 -13
  14. package/branding/logos/yourlogo-expanded.svg +17 -17
  15. package/branding/logos/yourlogo-mini.svg +17 -17
  16. package/branding/logos/yourorganization-apple-touch-icon.png +0 -0
  17. package/branding/logos/yourorganization-favicon.ico +0 -0
  18. package/branding/logos/yourorganization-favicon.svg +13 -0
  19. package/branding/vite-branding-plugin.js +221 -155
  20. package/docs/_global.content-placeholder.njk +7 -7
  21. package/docs/_global.foot.njk +11 -11
  22. package/docs/_global.head.njk +42 -43
  23. package/docs/_include.template-header.njk +391 -386
  24. package/docs/_macro.component-example.njk +6 -6
  25. package/docs/_macro.example-render.njk +350 -346
  26. package/docs/_macro.load-component-params.njk +2 -2
  27. package/docs/_macro.load-component-template.njk +3 -3
  28. package/docs/_macro.render-caller.njk +3 -3
  29. package/docs/_macro.show-code-from-file.njk +57 -57
  30. package/docs/_macro.show-html-from-file.njk +42 -42
  31. package/docs/_template.default.njk +8 -8
  32. package/docs/_template.examples.njk +13 -13
  33. package/docs/catalogo.html +27 -27
  34. package/docs/componentes.html +187 -184
  35. package/docs/ds/_ds.example.accordion.njk +109 -109
  36. package/docs/ds/_ds.example.border.njk +39 -39
  37. package/docs/ds/_ds.example.botones-alert-sm.njk +264 -264
  38. package/docs/ds/_ds.example.botones-alert.njk +264 -264
  39. package/docs/ds/_ds.example.botones-default-sm.njk +264 -264
  40. package/docs/ds/_ds.example.botones-default.njk +258 -258
  41. package/docs/ds/_ds.example.botones-primary-lg.njk +264 -264
  42. package/docs/ds/_ds.example.botones-primary-sm.njk +264 -264
  43. package/docs/ds/_ds.example.botones-primary.njk +264 -264
  44. package/docs/ds/_ds.example.botones-transparent-sm.njk +264 -264
  45. package/docs/ds/_ds.example.botones-transparent.njk +264 -264
  46. package/docs/ds/_ds.example.breadcrumbs.njk +65 -65
  47. package/docs/ds/_ds.example.card.njk +198 -198
  48. package/docs/ds/_ds.example.checkboxes.njk +377 -377
  49. package/docs/ds/_ds.example.collapsible.njk +18 -18
  50. package/docs/ds/_ds.example.color-de-interaccion.njk +16 -16
  51. package/docs/ds/_ds.example.colores-cabecera.njk +15 -15
  52. package/docs/ds/_ds.example.colores-de-soporte.njk +82 -82
  53. package/docs/ds/_ds.example.colores-neutros.njk +26 -26
  54. package/docs/ds/_ds.example.combobox.njk +91 -0
  55. package/docs/ds/_ds.example.date-input.njk +363 -363
  56. package/docs/ds/_ds.example.description-list.njk +289 -289
  57. package/docs/ds/_ds.example.details.njk +23 -23
  58. package/docs/ds/_ds.example.dropdowns-default.njk +186 -186
  59. package/docs/ds/_ds.example.dropdowns-en-uso.njk +105 -105
  60. package/docs/ds/_ds.example.dropdowns-variaciones.njk +224 -224
  61. package/docs/ds/_ds.example.error-summary.njk +34 -34
  62. package/docs/ds/_ds.example.file-upload.njk +54 -54
  63. package/docs/ds/_ds.example.footer.njk +28 -28
  64. package/docs/ds/_ds.example.header-advanced.njk +70 -70
  65. package/docs/ds/_ds.example.header.njk +211 -211
  66. package/docs/ds/_ds.example.input-group.njk +242 -242
  67. package/docs/ds/_ds.example.input.njk +164 -164
  68. package/docs/ds/_ds.example.item.njk +176 -176
  69. package/docs/ds/_ds.example.layout-escritorio.njk +38 -38
  70. package/docs/ds/_ds.example.layout-movil.njk +14 -14
  71. package/docs/ds/_ds.example.layout-sidebar.njk +11 -11
  72. package/docs/ds/_ds.example.links-list.njk +170 -170
  73. package/docs/ds/_ds.example.listbox-default.njk +677 -677
  74. package/docs/ds/_ds.example.listbox-variaciones.njk +824 -824
  75. package/docs/ds/_ds.example.menu-horizontal.njk +66 -66
  76. package/docs/ds/_ds.example.menu-navigation.njk +493 -493
  77. package/docs/ds/_ds.example.menu-vertical.njk +129 -129
  78. package/docs/ds/_ds.example.menubar-en-uso.njk +244 -244
  79. package/docs/ds/_ds.example.menubar-variaciones.njk +785 -785
  80. package/docs/ds/_ds.example.modal.njk +210 -210
  81. package/docs/ds/_ds.example.nav.njk +158 -158
  82. package/docs/ds/_ds.example.notification.njk +122 -122
  83. package/docs/ds/_ds.example.pagination.njk +190 -190
  84. package/docs/ds/_ds.example.pills.njk +215 -215
  85. package/docs/ds/_ds.example.radios.njk +419 -419
  86. package/docs/ds/_ds.example.searchbar.njk +87 -87
  87. package/docs/ds/_ds.example.select.njk +390 -390
  88. package/docs/ds/_ds.example.status-item.njk +239 -239
  89. package/docs/ds/_ds.example.status.njk +47 -47
  90. package/docs/ds/_ds.example.table.njk +740 -740
  91. package/docs/ds/_ds.example.tabs.njk +136 -136
  92. package/docs/ds/_ds.example.textarea.njk +237 -237
  93. package/docs/ds/_ds.example.textos.njk +32 -32
  94. package/docs/ds/_ds.example.toggle.njk +75 -75
  95. package/docs/ds/_ds.example.tree.njk +456 -456
  96. package/docs/ds/_ds.example.treegrid.njk +810 -810
  97. package/docs/ds/_ds.example.typography.njk +225 -225
  98. package/docs/ds/_ds.macro.code-snippet.njk +32 -32
  99. package/docs/ds/_ds.macro.section-title.njk +2 -2
  100. package/docs/ds/_ds.macro.subsection-title.njk +2 -2
  101. package/docs/ds/_ds.section.avisos.njk +22 -22
  102. package/docs/ds/_ds.section.botones.njk +53 -53
  103. package/docs/ds/_ds.section.campo-y-area-de-texto.njk +19 -19
  104. package/docs/ds/_ds.section.color.njk +147 -147
  105. package/docs/ds/_ds.section.datos.njk +42 -42
  106. package/docs/ds/_ds.section.dropdowns.njk +23 -23
  107. package/docs/ds/_ds.section.espaciado.njk +296 -296
  108. package/docs/ds/_ds.section.forms.njk +73 -68
  109. package/docs/ds/_ds.section.informacion.njk +12 -12
  110. package/docs/ds/_ds.section.layout.njk +63 -63
  111. package/docs/ds/_ds.section.menubar.njk +18 -18
  112. package/docs/ds/_ds.section.mostrar-ocultar.njk +33 -33
  113. package/docs/ds/_ds.section.navigation.njk +57 -57
  114. package/docs/ds/_ds.section.textos.njk +287 -287
  115. package/docs/ds/_ds.section.typography.njk +28 -28
  116. package/docs/estilos.html +37 -37
  117. package/docs/examples-accordion-history.html +8 -8
  118. package/docs/examples-accordion.html +8 -8
  119. package/docs/examples-alert.html +8 -8
  120. package/docs/examples-breadcrumbs.html +8 -8
  121. package/docs/examples-button-loader.html +8 -8
  122. package/docs/examples-button.html +8 -8
  123. package/docs/examples-card.html +8 -8
  124. package/docs/examples-character-count.html +8 -8
  125. package/docs/examples-checkboxes.html +8 -8
  126. package/docs/examples-collapsible.html +8 -8
  127. package/docs/examples-combobox.html +8 -0
  128. package/docs/examples-date-input.html +8 -8
  129. package/docs/examples-datepicker.html +8 -8
  130. package/docs/examples-description-list.html +8 -8
  131. package/docs/examples-details.html +8 -8
  132. package/docs/examples-dialog.html +8 -8
  133. package/docs/examples-dropdown.html +8 -8
  134. package/docs/examples-error-message.html +8 -8
  135. package/docs/examples-error-summary.html +8 -8
  136. package/docs/examples-fieldset.html +8 -8
  137. package/docs/examples-file-upload.html +8 -8
  138. package/docs/examples-footer.html +8 -8
  139. package/docs/examples-header-advanced.html +8 -8
  140. package/docs/examples-header-mini.html +8 -8
  141. package/docs/examples-header.html +8 -8
  142. package/docs/examples-hint.html +8 -8
  143. package/docs/examples-input-group.html +8 -8
  144. package/docs/examples-input.html +8 -8
  145. package/docs/examples-item.html +8 -8
  146. package/docs/examples-label.html +8 -8
  147. package/docs/examples-links-list.html +8 -8
  148. package/docs/examples-listbox.html +8 -8
  149. package/docs/examples-media-object.html +8 -8
  150. package/docs/examples-menu-horizontal.html +8 -8
  151. package/docs/examples-menu-navigation.html +8 -8
  152. package/docs/examples-menu-vertical.html +8 -8
  153. package/docs/examples-menubar.html +8 -8
  154. package/docs/examples-modal.html +8 -8
  155. package/docs/examples-nav.html +8 -8
  156. package/docs/examples-notification.html +8 -8
  157. package/docs/examples-pagination.html +8 -8
  158. package/docs/examples-pill.html +8 -8
  159. package/docs/examples-radios.html +8 -8
  160. package/docs/examples-searchbar.html +8 -8
  161. package/docs/examples-select.html +8 -8
  162. package/docs/examples-skip-link.html +8 -8
  163. package/docs/examples-spinner.html +8 -8
  164. package/docs/examples-status-item.html +8 -8
  165. package/docs/examples-status.html +8 -8
  166. package/docs/examples-table-advanced.html +8 -8
  167. package/docs/examples-table.html +8 -8
  168. package/docs/examples-tabs.html +8 -8
  169. package/docs/examples-textarea.html +8 -8
  170. package/docs/examples-toggle.html +8 -8
  171. package/docs/examples-tooltip.html +8 -8
  172. package/docs/examples-tree.html +8 -8
  173. package/docs/examples-treegrid.html +8 -8
  174. package/docs/index.html +914 -902
  175. package/docs/pagina-accesibilidad.html +110 -110
  176. package/docs/pagina-mapa-web.html +137 -137
  177. package/docs/pagina-prueba.html +95 -95
  178. package/docs/plantilla-con-header-advanced.html +14 -14
  179. package/docs/plantilla-editar-con-cabecera-fija-y-sidebar-sticky.html +154 -154
  180. package/docs/plantilla-editar-con-cabecera-fija.html +17 -17
  181. package/docs/plantilla-logueado-con-cabecera-fija-headroom.html +15 -15
  182. package/docs/plantilla-logueado-con-cabecera-fija.html +15 -15
  183. package/docs/plantilla-logueado-con-selector-de-app-y-sidebar.html +164 -164
  184. package/docs/plantilla-logueado-con-selector-de-app-y-subheader.html +16 -16
  185. package/docs/plantilla-logueado-con-selector-de-app.html +14 -14
  186. package/docs/plantilla-logueado-con-titulo-de-app.html +14 -14
  187. package/docs/plantilla-sin-loguear.html +14 -14
  188. package/docs/plantillas.html +89 -89
  189. package/docs/spinner-plantilla-con-header-advanced.html +2 -2
  190. package/docs/spinner-plantilla-editar-con-cabecera-fija.html +4 -4
  191. package/docs/spinner-plantilla-logueado-con-cabecera-fija.html +2 -2
  192. package/docs/spinner-plantilla-logueado-con-selector-de-app-y-subheader.html +2 -2
  193. package/docs/spinner-plantilla-logueado-con-titulo-de-app.html +2 -2
  194. package/docs/spinner-plantilla-sin-loguear.html +18 -18
  195. package/docs/sprints/01-combobox-template.md +433 -0
  196. package/docs/sprints/02-combobox-styles.md +291 -0
  197. package/docs/sprints/03-combobox-javascript.md +589 -0
  198. package/docs/sprints/04-combobox-integration.md +386 -0
  199. package/docs/sprints/05-combobox-refinamiento-w3c.md +55 -0
  200. package/package.json +61 -58
  201. package/public/images/demo-icon.svg +9 -0
  202. package/replit.md +74 -74
  203. package/src/EUPL-1.2.txt +287 -287
  204. package/src/css/base.css +44 -44
  205. package/src/css/component.form-group.css +24 -24
  206. package/src/css/component.headroom.css +32 -32
  207. package/src/css/component.text.css +169 -169
  208. package/src/css/styles.css +247 -246
  209. package/src/js/aria/MenuHorizontal.js +65 -65
  210. package/src/js/aria/MenuNavigation.js +34 -2
  211. package/src/js/aria/MenuVertical.js +60 -60
  212. package/src/js/aria/Nav.js +60 -60
  213. package/src/js/aria/PopupMenuAction.js +30 -12
  214. package/src/js/aria/accordion.js +264 -264
  215. package/src/js/aria/checkBoxes.js +52 -52
  216. package/src/js/aria/collapsible.js +44 -44
  217. package/src/js/aria/combobox.js +584 -0
  218. package/src/js/aria/dataGrid.js +950 -950
  219. package/src/js/aria/linksList.js +42 -42
  220. package/src/js/aria/notification.js +56 -56
  221. package/src/js/aria/radioButton.js +50 -50
  222. package/src/js/aria/toggle.js +61 -61
  223. package/src/js/aria/treegrid.js +507 -507
  224. package/src/js/aria/utils.js +219 -219
  225. package/src/js/desy-html.js +860 -813
  226. package/src/js/headroom.min.js +6 -6
  227. package/src/js/index.js +74 -72
  228. package/src/main.js +2 -2
  229. package/src/templates/components/accordion/_examples.accordion.njk +482 -482
  230. package/src/templates/components/accordion/_macro.accordion.njk +3 -3
  231. package/src/templates/components/accordion/_template.accordion.njk +131 -131
  232. package/src/templates/components/accordion/params.accordion.yaml +125 -125
  233. package/src/templates/components/accordion-history/_examples.accordion-history.njk +521 -521
  234. package/src/templates/components/accordion-history/_macro.accordion-history.njk +3 -3
  235. package/src/templates/components/accordion-history/_template.accordion-history.njk +193 -193
  236. package/src/templates/components/accordion-history/params.accordion-history.yaml +129 -129
  237. package/src/templates/components/alert/_examples.alert.njk +91 -91
  238. package/src/templates/components/alert/_macro.alert.njk +3 -3
  239. package/src/templates/components/alert/_styles.alert.css +9 -9
  240. package/src/templates/components/alert/_template.alert.njk +16 -16
  241. package/src/templates/components/alert/params.alert.yaml +25 -25
  242. package/src/templates/components/breadcrumbs/_examples.breadcrumbs.njk +464 -464
  243. package/src/templates/components/breadcrumbs/_macro.breadcrumbs.njk +3 -3
  244. package/src/templates/components/breadcrumbs/_styles.breadcrumbs.css +81 -81
  245. package/src/templates/components/breadcrumbs/_template.breadcrumbs.njk +77 -77
  246. package/src/templates/components/breadcrumbs/params.breadcrumbs.yaml +44 -44
  247. package/src/templates/components/button/_examples.button.njk +518 -511
  248. package/src/templates/components/button/_macro.button.njk +3 -3
  249. package/src/templates/components/button/_styles.button.css +180 -180
  250. package/src/templates/components/button/_template.button.njk +49 -49
  251. package/src/templates/components/button/params.button.yaml +48 -48
  252. package/src/templates/components/button-loader/_examples.button-loader.njk +499 -492
  253. package/src/templates/components/button-loader/_macro.button-loader.njk +3 -3
  254. package/src/templates/components/button-loader/_styles.button-loader.css +194 -194
  255. package/src/templates/components/button-loader/_template.button-loader.njk +84 -84
  256. package/src/templates/components/button-loader/params.button-loader.yaml +74 -74
  257. package/src/templates/components/card/_examples.card.njk +381 -381
  258. package/src/templates/components/card/_macro.card.njk +3 -3
  259. package/src/templates/components/card/_template.card.njk +34 -34
  260. package/src/templates/components/card/params.card.yaml +112 -112
  261. package/src/templates/components/character-count/_examples.character-count.njk +195 -195
  262. package/src/templates/components/character-count/_macro.character-count.njk +5 -5
  263. package/src/templates/components/character-count/_template.character-count.njk +38 -38
  264. package/src/templates/components/character-count/params.character-count.yaml +77 -77
  265. package/src/templates/components/checkboxes/_examples.checkboxes.njk +835 -835
  266. package/src/templates/components/checkboxes/_macro.checkboxes.njk +3 -3
  267. package/src/templates/components/checkboxes/_styles.checkboxes.css +30 -30
  268. package/src/templates/components/checkboxes/_template.checkboxes.njk +137 -137
  269. package/src/templates/components/checkboxes/params.checkboxes.yaml +116 -116
  270. package/src/templates/components/collapsible/_examples.collapsible.njk +107 -107
  271. package/src/templates/components/collapsible/_macro.collapsible.njk +3 -3
  272. package/src/templates/components/collapsible/_styles.collapsible.css +35 -35
  273. package/src/templates/components/collapsible/_template.collapsible.njk +17 -17
  274. package/src/templates/components/collapsible/params.collapsible.yaml +48 -48
  275. package/src/templates/components/combobox/_examples.combobox.njk +440 -0
  276. package/src/templates/components/combobox/_macro.combobox.njk +3 -0
  277. package/src/templates/components/combobox/_styles.combobox.css +92 -0
  278. package/src/templates/components/combobox/_template.combobox.njk +97 -0
  279. package/src/templates/components/combobox/params.combobox.yaml +102 -0
  280. package/src/templates/components/date-input/_examples.date-input.njk +578 -578
  281. package/src/templates/components/date-input/_macro.date-input.njk +3 -3
  282. package/src/templates/components/date-input/_template.date-input.njk +125 -125
  283. package/src/templates/components/date-input/params.date-input.yaml +97 -97
  284. package/src/templates/components/datepicker/_examples.datepicker.njk +415 -415
  285. package/src/templates/components/datepicker/_macro.datepicker.njk +3 -3
  286. package/src/templates/components/datepicker/_styles.datepicker.css +87 -87
  287. package/src/templates/components/datepicker/_template.datepicker.njk +129 -129
  288. package/src/templates/components/datepicker/params.datepicker.yaml +104 -104
  289. package/src/templates/components/description-list/_examples.description-list.njk +502 -502
  290. package/src/templates/components/description-list/_macro.description-list.njk +3 -3
  291. package/src/templates/components/description-list/_template.description-list.njk +17 -17
  292. package/src/templates/components/description-list/params.description-list.yaml +61 -61
  293. package/src/templates/components/details/_examples.details.njk +68 -68
  294. package/src/templates/components/details/_macro.details.njk +3 -3
  295. package/src/templates/components/details/_template.details.njk +17 -17
  296. package/src/templates/components/details/params.details.yaml +40 -40
  297. package/src/templates/components/dialog/_examples.dialog.njk +156 -156
  298. package/src/templates/components/dialog/_macro.dialog.njk +3 -3
  299. package/src/templates/components/dialog/_styles.dialog.css +27 -27
  300. package/src/templates/components/dialog/_template.dialog.njk +12 -12
  301. package/src/templates/components/dialog/params.dialog.yaml +25 -25
  302. package/src/templates/components/dropdown/_examples.dropdown.njk +226 -226
  303. package/src/templates/components/dropdown/_macro.dropdown.njk +3 -3
  304. package/src/templates/components/dropdown/_styles.dropdown.css +191 -191
  305. package/src/templates/components/dropdown/_template.dropdown.njk +34 -34
  306. package/src/templates/components/dropdown/params.dropdown.yaml +32 -32
  307. package/src/templates/components/error-message/_examples.error-message.njk +28 -28
  308. package/src/templates/components/error-message/_macro.error-message.njk +5 -5
  309. package/src/templates/components/error-message/_template.error-message.njk +8 -8
  310. package/src/templates/components/error-message/params.error-message.yaml +23 -23
  311. package/src/templates/components/error-summary/_examples.error-summary.njk +111 -111
  312. package/src/templates/components/error-summary/_macro.error-summary.njk +5 -5
  313. package/src/templates/components/error-summary/_template.error-summary.njk +48 -48
  314. package/src/templates/components/error-summary/params.error-summary.yaml +50 -50
  315. package/src/templates/components/fieldset/_examples.fieldset.njk +79 -79
  316. package/src/templates/components/fieldset/_macro.fieldset.njk +2 -2
  317. package/src/templates/components/fieldset/_template.fieldset.njk +46 -46
  318. package/src/templates/components/fieldset/params.fieldset.yaml +49 -49
  319. package/src/templates/components/file-upload/_examples.file-upload.njk +103 -103
  320. package/src/templates/components/file-upload/_macro.file-upload.njk +2 -2
  321. package/src/templates/components/file-upload/_template.file-upload.njk +45 -45
  322. package/src/templates/components/file-upload/params.file-upload.yaml +48 -48
  323. package/src/templates/components/footer/_examples.footer.njk +558 -558
  324. package/src/templates/components/footer/_macro.footer.njk +3 -3
  325. package/src/templates/components/footer/_styles.footer.css +43 -43
  326. package/src/templates/components/footer/_template.footer.njk +130 -130
  327. package/src/templates/components/footer/params.footer.yaml +140 -140
  328. package/src/templates/components/header/_examples.header.njk +627 -627
  329. package/src/templates/components/header/_macro.header.header__dropdown.njk +3 -3
  330. package/src/templates/components/header/_macro.header.header__navigation.njk +3 -3
  331. package/src/templates/components/header/_macro.header.header__offcanvas.njk +3 -3
  332. package/src/templates/components/header/_macro.header.header__offcanvasButton.njk +3 -3
  333. package/src/templates/components/header/_macro.header.header__subnav.njk +3 -3
  334. package/src/templates/components/header/_macro.header.njk +3 -3
  335. package/src/templates/components/header/_styles.header.css +12 -12
  336. package/src/templates/components/header/_template.header.header__dropdown.njk +27 -27
  337. package/src/templates/components/header/_template.header.header__navigation.njk +25 -25
  338. package/src/templates/components/header/_template.header.header__offcanvas.njk +20 -20
  339. package/src/templates/components/header/_template.header.header__offcanvasButton.njk +10 -10
  340. package/src/templates/components/header/_template.header.header__subnav.njk +33 -33
  341. package/src/templates/components/header/_template.header.njk +155 -155
  342. package/src/templates/components/header/params.header.yaml +295 -295
  343. package/src/templates/components/header-advanced/_examples.header-advanced.njk +1110 -1110
  344. package/src/templates/components/header-advanced/_macro.header-advanced.njk +3 -3
  345. package/src/templates/components/header-advanced/_template.header-advanced.njk +171 -171
  346. package/src/templates/components/header-advanced/params.header-advanced.yaml +352 -350
  347. package/src/templates/components/header-mini/_examples.header-mini.njk +319 -316
  348. package/src/templates/components/header-mini/_macro.header-mini.njk +3 -3
  349. package/src/templates/components/header-mini/_template.header-mini.njk +51 -51
  350. package/src/templates/components/header-mini/params.header-mini.yaml +90 -90
  351. package/src/templates/components/hint/_examples.hint.njk +26 -26
  352. package/src/templates/components/hint/_macro.hint.njk +3 -3
  353. package/src/templates/components/hint/_template.hint.njk +3 -3
  354. package/src/templates/components/hint/params.hint.yaml +21 -21
  355. package/src/templates/components/input/_examples.input.njk +393 -393
  356. package/src/templates/components/input/_macro.input.njk +3 -3
  357. package/src/templates/components/input/_styles.input.css +17 -17
  358. package/src/templates/components/input/_template.input.njk +53 -53
  359. package/src/templates/components/input/params.input.yaml +80 -80
  360. package/src/templates/components/input-group/_examples.input-group.njk +558 -558
  361. package/src/templates/components/input-group/_macro.input-group.njk +3 -3
  362. package/src/templates/components/input-group/_template.input-group.njk +107 -107
  363. package/src/templates/components/input-group/params.input-group.yaml +123 -123
  364. package/src/templates/components/item/_examples.item.njk +370 -370
  365. package/src/templates/components/item/_macro.item.njk +3 -3
  366. package/src/templates/components/item/_template.item.njk +73 -73
  367. package/src/templates/components/item/params.item.yaml +101 -101
  368. package/src/templates/components/label/_examples.label.njk +58 -58
  369. package/src/templates/components/label/_macro.label.njk +5 -5
  370. package/src/templates/components/label/_template.label.njk +37 -37
  371. package/src/templates/components/label/params.label.yaml +28 -28
  372. package/src/templates/components/links-list/_examples.links-list.njk +761 -761
  373. package/src/templates/components/links-list/_macro.links-list.njk +3 -3
  374. package/src/templates/components/links-list/_template.links-list.njk +119 -119
  375. package/src/templates/components/links-list/params.links-list.yaml +101 -101
  376. package/src/templates/components/listbox/_examples.listbox.njk +813 -812
  377. package/src/templates/components/listbox/_macro.listbox.njk +3 -3
  378. package/src/templates/components/listbox/_styles.listbox.css +218 -218
  379. package/src/templates/components/listbox/_template.listbox.njk +90 -90
  380. package/src/templates/components/listbox/params.listbox.yaml +85 -85
  381. package/src/templates/components/media-object/_examples.media-object.njk +79 -79
  382. package/src/templates/components/media-object/_macro.media-object.njk +3 -3
  383. package/src/templates/components/media-object/_template.media-object.njk +21 -21
  384. package/src/templates/components/media-object/params.media-object.yaml +16 -16
  385. package/src/templates/components/menu-horizontal/_examples.menu-horizontal.njk +613 -613
  386. package/src/templates/components/menu-horizontal/_macro.menu-horizontal.njk +3 -3
  387. package/src/templates/components/menu-horizontal/_styles.menu-horizontal.css +167 -167
  388. package/src/templates/components/menu-horizontal/_template.menu-horizontal.njk +36 -36
  389. package/src/templates/components/menu-horizontal/params.menu-horizontal.yaml +53 -53
  390. package/src/templates/components/menu-navigation/_examples.menu-navigation.njk +1292 -1292
  391. package/src/templates/components/menu-navigation/_macro.menu-navigation.njk +3 -3
  392. package/src/templates/components/menu-navigation/_styles.menu-navigation.css +238 -238
  393. package/src/templates/components/menu-navigation/_template.menu-navigation.njk +87 -87
  394. package/src/templates/components/menu-navigation/params.menu-navigation.yaml +86 -86
  395. package/src/templates/components/menu-vertical/_examples.menu-vertical.njk +835 -835
  396. package/src/templates/components/menu-vertical/_macro.menu-vertical.njk +3 -3
  397. package/src/templates/components/menu-vertical/_template.menu-vertical.njk +92 -92
  398. package/src/templates/components/menu-vertical/params.menu-vertical.yaml +77 -77
  399. package/src/templates/components/menubar/_examples.menubar.njk +1843 -1843
  400. package/src/templates/components/menubar/_macro.menubar.njk +3 -3
  401. package/src/templates/components/menubar/_styles.menubar.css +259 -259
  402. package/src/templates/components/menubar/_template.menubar.njk +106 -106
  403. package/src/templates/components/menubar/params.menubar.yaml +130 -130
  404. package/src/templates/components/modal/_examples.modal.njk +432 -432
  405. package/src/templates/components/modal/_macro.modal.njk +3 -3
  406. package/src/templates/components/modal/_template.modal.njk +129 -129
  407. package/src/templates/components/modal/params.modal.yaml +77 -77
  408. package/src/templates/components/nav/_examples.nav.njk +468 -468
  409. package/src/templates/components/nav/_macro.nav.njk +3 -3
  410. package/src/templates/components/nav/_template.nav.njk +53 -53
  411. package/src/templates/components/nav/params.nav.yaml +61 -61
  412. package/src/templates/components/notification/_examples.notification.njk +277 -277
  413. package/src/templates/components/notification/_macro.notification.njk +3 -3
  414. package/src/templates/components/notification/_styles.notification.css +30 -30
  415. package/src/templates/components/notification/_template.notification.njk +86 -86
  416. package/src/templates/components/notification/params.notification.yaml +101 -101
  417. package/src/templates/components/pagination/_examples.pagination.njk +444 -444
  418. package/src/templates/components/pagination/_macro.pagination.njk +3 -3
  419. package/src/templates/components/pagination/_template.pagination.njk +162 -162
  420. package/src/templates/components/pagination/params.pagination.yaml +150 -150
  421. package/src/templates/components/pill/_examples.pill.njk +180 -180
  422. package/src/templates/components/pill/_macro.pill.njk +3 -3
  423. package/src/templates/components/pill/_styles.pill.css +59 -59
  424. package/src/templates/components/pill/_template.pill.njk +38 -38
  425. package/src/templates/components/pill/params.pill.yaml +28 -28
  426. package/src/templates/components/radios/_examples.radios.njk +698 -698
  427. package/src/templates/components/radios/_macro.radios.njk +5 -5
  428. package/src/templates/components/radios/_styles.radios.css +30 -30
  429. package/src/templates/components/radios/_template.radios.njk +133 -133
  430. package/src/templates/components/radios/params.radios.yaml +104 -104
  431. package/src/templates/components/searchbar/_examples.searchbar.njk +147 -147
  432. package/src/templates/components/searchbar/_macro.searchbar.njk +3 -3
  433. package/src/templates/components/searchbar/_template.searchbar.njk +45 -45
  434. package/src/templates/components/searchbar/params.searchbar.yaml +46 -46
  435. package/src/templates/components/select/_examples.select.njk +364 -364
  436. package/src/templates/components/select/_macro.select.njk +5 -5
  437. package/src/templates/components/select/_styles.select.css +45 -45
  438. package/src/templates/components/select/_template.select.njk +67 -67
  439. package/src/templates/components/select/params.select.yaml +93 -93
  440. package/src/templates/components/skip-link/_examples.skip-link.njk +31 -31
  441. package/src/templates/components/skip-link/_macro.skip-link.njk +3 -3
  442. package/src/templates/components/skip-link/_styles.skip-link.css +12 -12
  443. package/src/templates/components/skip-link/_template.skip-link.njk +4 -4
  444. package/src/templates/components/skip-link/params.skip-link.yaml +20 -20
  445. package/src/templates/components/spinner/_examples.spinner.njk +91 -101
  446. package/src/templates/components/spinner/_macro.spinner.njk +3 -3
  447. package/src/templates/components/spinner/_styles.spinner.css +33 -33
  448. package/src/templates/components/spinner/_template.spinner.njk +12 -12
  449. package/src/templates/components/spinner/params.spinner.yaml +12 -12
  450. package/src/templates/components/status/_examples.status.njk +80 -80
  451. package/src/templates/components/status/_macro.status.njk +3 -3
  452. package/src/templates/components/status/_template.status.njk +23 -23
  453. package/src/templates/components/status/params.status.yaml +24 -24
  454. package/src/templates/components/status-item/_examples.status-item.njk +319 -319
  455. package/src/templates/components/status-item/_macro.status-item.njk +3 -3
  456. package/src/templates/components/status-item/_template.status-item.njk +99 -99
  457. package/src/templates/components/status-item/params.status-item.yaml +106 -106
  458. package/src/templates/components/table/_examples.table.njk +705 -705
  459. package/src/templates/components/table/_macro.table.njk +3 -3
  460. package/src/templates/components/table/_styles.table.css +19 -19
  461. package/src/templates/components/table/_template.table.njk +68 -68
  462. package/src/templates/components/table/params.table.yaml +130 -130
  463. package/src/templates/components/table-advanced/_examples.table-advanced.njk +839 -839
  464. package/src/templates/components/table-advanced/_macro.table-advanced.njk +3 -3
  465. package/src/templates/components/table-advanced/_styles.table-advanced.css +63 -63
  466. package/src/templates/components/table-advanced/_template.table-advanced.njk +210 -210
  467. package/src/templates/components/table-advanced/params.table-advanced.yaml +160 -160
  468. package/src/templates/components/tabs/_examples.tabs.njk +588 -588
  469. package/src/templates/components/tabs/_macro.tabs.njk +3 -3
  470. package/src/templates/components/tabs/_styles.tabs.css +132 -132
  471. package/src/templates/components/tabs/_template.tabs.njk +70 -70
  472. package/src/templates/components/tabs/params.tabs.yaml +83 -83
  473. package/src/templates/components/textarea/_examples.textarea.njk +174 -174
  474. package/src/templates/components/textarea/_macro.textarea.njk +5 -5
  475. package/src/templates/components/textarea/_template.textarea.njk +47 -47
  476. package/src/templates/components/textarea/params.textarea.yaml +64 -64
  477. package/src/templates/components/toggle/_examples.toggle.njk +248 -248
  478. package/src/templates/components/toggle/_macro.toggle.njk +3 -3
  479. package/src/templates/components/toggle/_styles.toggle.css +31 -31
  480. package/src/templates/components/toggle/_template.toggle.njk +27 -27
  481. package/src/templates/components/toggle/params.toggle.yaml +69 -69
  482. package/src/templates/components/tooltip/_examples.tooltip.njk +134 -134
  483. package/src/templates/components/tooltip/_macro.tooltip.njk +3 -3
  484. package/src/templates/components/tooltip/_styles.tooltip.css +9 -9
  485. package/src/templates/components/tooltip/_template.tooltip.njk +40 -40
  486. package/src/templates/components/tooltip/params.tooltip.yaml +40 -40
  487. package/src/templates/components/tree/_examples.tree.njk +2671 -2671
  488. package/src/templates/components/tree/_macro.tree.njk +3 -3
  489. package/src/templates/components/tree/_styles.tree.css +54 -54
  490. package/src/templates/components/tree/_template.tree.njk +232 -232
  491. package/src/templates/components/tree/params.tree.yaml +173 -173
  492. package/src/templates/components/treegrid/_examples.treegrid.njk +1269 -1269
  493. package/src/templates/components/treegrid/_macro.treegrid.njk +3 -3
  494. package/src/templates/components/treegrid/_styles.treegrid.css +31 -31
  495. package/src/templates/components/treegrid/_template.treegrid.njk +90 -90
  496. package/src/templates/components/treegrid/params.treegrid.yaml +131 -131
  497. package/src/templates/includes/_abrir-notificaciones-extra.njk +2 -2
  498. package/src/templates/includes/_abrir-notificaciones.njk +2 -2
  499. package/src/templates/includes/_acciones-de-cabecera.njk +28 -28
  500. package/src/templates/includes/_ejemplo-titulo-h2-parrafo.njk +4 -4
  501. package/src/templates/includes/_ejemplo-titulo-parrafo.njk +4 -4
  502. package/src/templates/includes/_test-include.njk +13 -13
  503. package/src/templates/pages/_page.foot-headroom.njk +30 -30
  504. package/src/templates/pages/_page.foot.njk +5 -5
  505. package/src/templates/pages/_page.footer.njk +19 -19
  506. package/src/templates/pages/_page.head.njk +27 -27
  507. package/src/templates/pages/_page.notification-edit-inner-content.njk +31 -31
  508. package/src/templates/pages/_page.notification-edit.njk +30 -30
  509. package/src/templates/pages/_page.notification-footer.njk +32 -32
  510. package/src/templates/pages/_page.notification-header-fixed.njk +30 -30
  511. package/src/templates/pages/_page.notification-header.njk +31 -31
  512. package/src/templates/pages/_page.sidebar-content.njk +20 -20
  513. package/src/templates/pages/_page.spinner-block.njk +14 -14
  514. package/src/templates/pages/_page.spinner-show.njk +15 -15
  515. package/src/templates/pages/_page.spinner.njk +15 -15
  516. package/src/templates/pages/_template.edit-fixed-with-sticky-sidebar.njk +36 -36
  517. package/src/templates/pages/_template.edit-fixed.njk +74 -74
  518. package/src/templates/pages/_template.home.njk +111 -111
  519. package/src/templates/pages/_template.logged-out.njk +56 -56
  520. package/src/templates/pages/_template.logged-selector-fixed-headroom.njk +198 -198
  521. package/src/templates/pages/_template.logged-selector-fixed.njk +195 -195
  522. package/src/templates/pages/_template.logged-selector-subheader.njk +80 -80
  523. package/src/templates/pages/_template.logged-selector-with-sidebar.njk +28 -28
  524. package/src/templates/pages/_template.logged-selector.njk +195 -195
  525. package/src/templates/pages/_template.logged.njk +141 -141
  526. package/src/templates/pages/_template.mfe-iframe-content.njk +31 -31
  527. package/src/templates/pages/_template.mfe.njk +83 -83
  528. package/src/templates/pages/_template.test.njk +48 -48
  529. package/src/templates/pages/_template.with-header-advanced.njk +311 -311
  530. package/vite.config.js +982 -955
  531. package/public/images/logo-educa-aragon.svg +0 -1
@@ -1,3 +1,3 @@
1
- {% macro componentTreegrid(params) %}
2
- {% include "./_template.treegrid.njk" %}
3
- {% endmacro %}
1
+ {% macro componentTreegrid(params) %}
2
+ {% include "./_template.treegrid.njk" %}
3
+ {% endmacro %}
@@ -1,31 +1,31 @@
1
- /* ==========================================================================
2
- _styles.treegrid.css
3
- ========================================================================== */
4
-
5
- /* No @layer components here to avoid specificity issues */
6
-
7
- .c-treegrid {
8
- /* Indentation based on level that comes from html style (--level)*/
9
- & tr[aria-level] > :is(td, th):first-child {
10
- padding-left: calc(var(--level) * 2.5ch);
11
- @apply relative;
12
- }
13
-
14
- & .c-treegrid__icon {
15
- left: calc((var(--level) - 1) * 2.5ch);
16
- size: 2.5ch;
17
- }
18
-
19
- & :is(
20
- tr[aria-expanded="true"] > td:first-child,
21
- tr[aria-expanded="true"] > th:first-child,
22
- td[aria-expanded="true"]:first-child,
23
- th[aria-expanded="true"]:first-child
24
- )
25
- .c-treegrid__icon
26
- svg {
27
- @apply rotate-90;
28
- }
29
- }
30
-
31
-
1
+ /* ==========================================================================
2
+ _styles.treegrid.css
3
+ ========================================================================== */
4
+
5
+ /* No @layer components here to avoid specificity issues */
6
+
7
+ .c-treegrid {
8
+ /* Indentation based on level that comes from html style (--level)*/
9
+ & tr[aria-level] > :is(td, th):first-child {
10
+ padding-left: calc(var(--level) * 2.5ch);
11
+ @apply relative;
12
+ }
13
+
14
+ & .c-treegrid__icon {
15
+ left: calc((var(--level) - 1) * 2.5ch);
16
+ size: 2.5ch;
17
+ }
18
+
19
+ & :is(
20
+ tr[aria-expanded="true"] > td:first-child,
21
+ tr[aria-expanded="true"] > th:first-child,
22
+ td[aria-expanded="true"]:first-child,
23
+ th[aria-expanded="true"]:first-child
24
+ )
25
+ .c-treegrid__icon
26
+ svg {
27
+ @apply rotate-90;
28
+ }
29
+ }
30
+
31
+
@@ -1,91 +1,91 @@
1
- {% set headArray = [] %}
2
-
3
- {#- Capture the HTML so we can optionally nest it in a wrapper -#}
4
- {% set innerHtml %}
5
- <table data-module="c-treegrid" class="c-treegrid
6
- {%- if params.classes %} {{ params.classes }}{% endif %}"{% for attribute, value in params.attributes %} {{ attribute }}="{{ value }}"{% endfor %} role="treegrid">
7
- {% if params.caption %}
8
- <caption {%- if params.captionClasses %} class="{{ params.captionClasses }}"{% endif %}>{{ params.caption }}</caption>
9
- {% endif %}
10
- {% if params.head %}
11
- <colgroup>
12
- {% for item in params.head %}
13
- <col class="treegrid-col-{{ loop.index }}">
14
- {% endfor %}
15
- </colgroup>
16
- <thead>
17
- <tr class="border-t border-b border-neutral-base">
18
- {% for item in params.head %}
19
- {% set headArray = (headArray.push(item.html | safe | striptags if item.html else
20
- item.text), headArray) %}
21
- <th scope="col" class="align-top px-base py-sm text-left font-normal text-sm text-neutral-dark {%- if item.classes %} {{ item.classes }}{% endif %}"
22
- {% for attribute, value in item.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>{{ item.html |safe if item.html else item.text }}</th>
23
- {% endfor %}
24
- </tr>
25
- </thead>
26
- {% endif %}
27
- <tbody>
28
- {% for row in params.rows %}
29
- {% if row %}
30
- <tr role="row" class="mb-0 text-left border-t border-b border-neutral-base focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black" {%- if row.level %} aria-level="{{ row.level }}" style="--level: {{ row.level }}"{% endif %} {%- if row.posinset %} aria-posinset="{{ row.posinset }}"{% endif %} {%- if row.setsize %} aria-setsize="{{ row.setsize }}"{% endif %} {%- if row.expanded != undefined %} aria-expanded="{{ row.expanded }}"{% endif %} {% for attribute, value in row.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
31
- {% for cell in row.cells %}
32
- {% set commonAttributes %}
33
- data-label="{{ headArray[loop.index0] }}"
34
- {% for attribute, value in cell.attributes %}
35
- {{ attribute }}="{{ value }}"{% endfor %}
36
- {% endset %}
37
-
38
- {% if loop.first and params.firstCellIsHeader %}
39
- <th scope="row" class="align-top px-base py-sm text-left font-normal text-sm leading-relaxed text-neutral-dark focus:text-black focus:bg-warning-base focus:outline-none focus:shadow-outline-focus{%- if cell.classes %} {{ cell.classes }}{% endif %}{% if row.expanded is defined and loop.first %} flex items-start{% endif %}"
40
- {{- commonAttributes | safe -}}
41
- >
42
- {% if row.expanded is defined and loop.first %}
43
- <span class="c-treegrid__icon absolute text-primary-base transition-transform duration-200 ease-out cursor-pointer select-none after:content-[''] after:absolute after:-top-1 after:-left-2 after:p-4" role="presentation">
44
- <svg width="24" height="24" viewBox="0 0 24 24" aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg">
45
- <rect width="24" height="24" fill="none"/>
46
- <path d="M15.0111 12.387C15.0621 12.3362 15.1025 12.2759 15.13 12.2094C15.1576 12.143 15.1718 12.0718 15.1718 11.9998C15.1718 11.9279 15.1576 11.8567 15.13 11.7903C15.1025 11.7238 15.0621 11.6635 15.0111 11.6127L11.1839 7.78547C11.1074 7.70887 11.0099 7.65669 10.9038 7.63554C10.7976 7.61439 10.6875 7.62522 10.5875 7.66666C10.4875 7.70811 10.4021 7.77829 10.342 7.86834C10.2819 7.95838 10.2499 8.06423 10.25 8.17248L10.25 15.8272C10.2498 15.9355 10.2818 16.0414 10.3419 16.1315C10.4019 16.2216 10.4874 16.2918 10.5874 16.3333C10.6874 16.3748 10.7975 16.3856 10.9037 16.3645C11.0099 16.3433 11.1074 16.2911 11.1839 16.2145L15.0111 12.387Z" fill="currentColor"/>
47
- </svg>
48
- </span>
49
- {% endif %}
50
- {{ cell.html | filterquotes | safe if cell.html else cell.text }}</th>
51
- {% else %}
52
- <td role="gridcell" class="text-left px-base py-sm focus:text-black focus:bg-warning-base focus:outline-none focus:shadow-outline-focus {%- if cell.classes %} {{ cell.classes }}{% endif %}{% if row.expanded is defined and loop.first %} flex items-start{% endif %}"
53
- {{- commonAttributes | safe -}}
54
- >
55
- {% if row.expanded is defined and loop.first %}
56
- <span class="c-treegrid__icon absolute text-primary-base transition-transform duration-200 ease-out cursor-pointer select-none after:content-[''] after:absolute after:-top-1 after:-left-2 after:p-4" role="presentation">
57
- <svg width="24" height="24" viewBox="0 0 24 24" aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg">
58
- <rect width="24" height="24" fill="none"/>
59
- <path d="M15.0111 12.387C15.0621 12.3362 15.1025 12.2759 15.13 12.2094C15.1576 12.143 15.1718 12.0718 15.1718 11.9998C15.1718 11.9279 15.1576 11.8567 15.13 11.7903C15.1025 11.7238 15.0621 11.6635 15.0111 11.6127L11.1839 7.78547C11.1074 7.70887 11.0099 7.65669 10.9038 7.63554C10.7976 7.61439 10.6875 7.62522 10.5875 7.66666C10.4875 7.70811 10.4021 7.77829 10.342 7.86834C10.2819 7.95838 10.2499 8.06423 10.25 8.17248L10.25 15.8272C10.2498 15.9355 10.2818 16.0414 10.3419 16.1315C10.4019 16.2216 10.4874 16.2918 10.5874 16.3333C10.6874 16.3748 10.7975 16.3856 10.9037 16.3645C11.0099 16.3433 11.1074 16.2911 11.1839 16.2145L15.0111 12.387Z" fill="currentColor"/>
60
- </svg>
61
- </span>
62
- {% endif %}
63
- {{ cell.html | filterquotes | safe if cell.html else cell.text }}</td>
64
- {% endif %}
65
- {% endfor %}
66
- </tr>
67
- {% endif %}
68
- {% endfor %}
69
- </tbody>
70
- {% if params.foot %}
71
- <tfoot>
72
- <tr class="border-t-2 border-b border-neutral-base">
73
- {% for item in params.foot %}
74
- <td class="text-left px-base py-sm {%- if item.classes %} {{ item.classes }}{% endif %}"
75
- {% for attribute, value in item.attributes %} {{ attribute }}="{{ value }}"{% endfor %} data-label="{{ headArray[loop.index0] }}">{{ item.html |safe if item.html else item.text }}</td>
76
- {% endfor %}
77
- </tr>
78
- </tfoot>
79
- {% endif %}
80
- </table>
81
- {% endset %}
82
-
83
- <!-- treegrid -->
84
- {% if params.wrapper %}
85
- <div {%- if params.wrapper.classes %} class="{{ params.wrapper.classes }}"{% endif %} {% for attribute, value in params.wrapper.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
86
- {{ innerHtml | trim | safe }}
87
- </div>
88
- {% else %}
89
- {{ innerHtml | trim | safe }}
90
- {% endif %}
1
+ {% set headArray = [] %}
2
+
3
+ {#- Capture the HTML so we can optionally nest it in a wrapper -#}
4
+ {% set innerHtml %}
5
+ <table data-module="c-treegrid" class="c-treegrid
6
+ {%- if params.classes %} {{ params.classes }}{% endif %}"{% for attribute, value in params.attributes %} {{ attribute }}="{{ value }}"{% endfor %} role="treegrid">
7
+ {% if params.caption %}
8
+ <caption {%- if params.captionClasses %} class="{{ params.captionClasses }}"{% endif %}>{{ params.caption }}</caption>
9
+ {% endif %}
10
+ {% if params.head %}
11
+ <colgroup>
12
+ {% for item in params.head %}
13
+ <col class="treegrid-col-{{ loop.index }}">
14
+ {% endfor %}
15
+ </colgroup>
16
+ <thead>
17
+ <tr class="border-t border-b border-neutral-base">
18
+ {% for item in params.head %}
19
+ {% set headArray = (headArray.push(item.html | safe | striptags if item.html else
20
+ item.text), headArray) %}
21
+ <th scope="col" class="align-top px-base py-sm text-left font-normal text-sm text-neutral-dark {%- if item.classes %} {{ item.classes }}{% endif %}"
22
+ {% for attribute, value in item.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>{{ item.html |safe if item.html else item.text }}</th>
23
+ {% endfor %}
24
+ </tr>
25
+ </thead>
26
+ {% endif %}
27
+ <tbody>
28
+ {% for row in params.rows %}
29
+ {% if row %}
30
+ <tr role="row" class="mb-0 text-left border-t border-b border-neutral-base focus:bg-warning-base focus:outline-none focus:shadow-outline-focus focus:text-black" {%- if row.level %} aria-level="{{ row.level }}" style="--level: {{ row.level }}"{% endif %} {%- if row.posinset %} aria-posinset="{{ row.posinset }}"{% endif %} {%- if row.setsize %} aria-setsize="{{ row.setsize }}"{% endif %} {%- if row.expanded != undefined %} aria-expanded="{{ row.expanded }}"{% endif %} {% for attribute, value in row.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
31
+ {% for cell in row.cells %}
32
+ {% set commonAttributes %}
33
+ data-label="{{ headArray[loop.index0] }}"
34
+ {% for attribute, value in cell.attributes %}
35
+ {{ attribute }}="{{ value }}"{% endfor %}
36
+ {% endset %}
37
+
38
+ {% if loop.first and params.firstCellIsHeader %}
39
+ <th scope="row" class="align-top px-base py-sm text-left font-normal text-sm leading-relaxed text-neutral-dark focus:text-black focus:bg-warning-base focus:outline-none focus:shadow-outline-focus{%- if cell.classes %} {{ cell.classes }}{% endif %}{% if row.expanded is defined and loop.first %} flex items-start{% endif %}"
40
+ {{- commonAttributes | safe -}}
41
+ >
42
+ {% if row.expanded is defined and loop.first %}
43
+ <span class="c-treegrid__icon absolute text-primary-base transition-transform duration-200 ease-out cursor-pointer select-none after:content-[''] after:absolute after:-top-1 after:-left-2 after:p-4" role="presentation">
44
+ <svg width="24" height="24" viewBox="0 0 24 24" aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg">
45
+ <rect width="24" height="24" fill="none"/>
46
+ <path d="M15.0111 12.387C15.0621 12.3362 15.1025 12.2759 15.13 12.2094C15.1576 12.143 15.1718 12.0718 15.1718 11.9998C15.1718 11.9279 15.1576 11.8567 15.13 11.7903C15.1025 11.7238 15.0621 11.6635 15.0111 11.6127L11.1839 7.78547C11.1074 7.70887 11.0099 7.65669 10.9038 7.63554C10.7976 7.61439 10.6875 7.62522 10.5875 7.66666C10.4875 7.70811 10.4021 7.77829 10.342 7.86834C10.2819 7.95838 10.2499 8.06423 10.25 8.17248L10.25 15.8272C10.2498 15.9355 10.2818 16.0414 10.3419 16.1315C10.4019 16.2216 10.4874 16.2918 10.5874 16.3333C10.6874 16.3748 10.7975 16.3856 10.9037 16.3645C11.0099 16.3433 11.1074 16.2911 11.1839 16.2145L15.0111 12.387Z" fill="currentColor"/>
47
+ </svg>
48
+ </span>
49
+ {% endif %}
50
+ {{ cell.html | filterquotes | safe if cell.html else cell.text }}</th>
51
+ {% else %}
52
+ <td role="gridcell" class="text-left px-base py-sm focus:text-black focus:bg-warning-base focus:outline-none focus:shadow-outline-focus {%- if cell.classes %} {{ cell.classes }}{% endif %}{% if row.expanded is defined and loop.first %} flex items-start{% endif %}"
53
+ {{- commonAttributes | safe -}}
54
+ >
55
+ {% if row.expanded is defined and loop.first %}
56
+ <span class="c-treegrid__icon absolute text-primary-base transition-transform duration-200 ease-out cursor-pointer select-none after:content-[''] after:absolute after:-top-1 after:-left-2 after:p-4" role="presentation">
57
+ <svg width="24" height="24" viewBox="0 0 24 24" aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg">
58
+ <rect width="24" height="24" fill="none"/>
59
+ <path d="M15.0111 12.387C15.0621 12.3362 15.1025 12.2759 15.13 12.2094C15.1576 12.143 15.1718 12.0718 15.1718 11.9998C15.1718 11.9279 15.1576 11.8567 15.13 11.7903C15.1025 11.7238 15.0621 11.6635 15.0111 11.6127L11.1839 7.78547C11.1074 7.70887 11.0099 7.65669 10.9038 7.63554C10.7976 7.61439 10.6875 7.62522 10.5875 7.66666C10.4875 7.70811 10.4021 7.77829 10.342 7.86834C10.2819 7.95838 10.2499 8.06423 10.25 8.17248L10.25 15.8272C10.2498 15.9355 10.2818 16.0414 10.3419 16.1315C10.4019 16.2216 10.4874 16.2918 10.5874 16.3333C10.6874 16.3748 10.7975 16.3856 10.9037 16.3645C11.0099 16.3433 11.1074 16.2911 11.1839 16.2145L15.0111 12.387Z" fill="currentColor"/>
60
+ </svg>
61
+ </span>
62
+ {% endif %}
63
+ {{ cell.html | filterquotes | safe if cell.html else cell.text }}</td>
64
+ {% endif %}
65
+ {% endfor %}
66
+ </tr>
67
+ {% endif %}
68
+ {% endfor %}
69
+ </tbody>
70
+ {% if params.foot %}
71
+ <tfoot>
72
+ <tr class="border-t-2 border-b border-neutral-base">
73
+ {% for item in params.foot %}
74
+ <td class="text-left px-base py-sm {%- if item.classes %} {{ item.classes }}{% endif %}"
75
+ {% for attribute, value in item.attributes %} {{ attribute }}="{{ value }}"{% endfor %} data-label="{{ headArray[loop.index0] }}">{{ item.html |safe if item.html else item.text }}</td>
76
+ {% endfor %}
77
+ </tr>
78
+ </tfoot>
79
+ {% endif %}
80
+ </table>
81
+ {% endset %}
82
+
83
+ <!-- treegrid -->
84
+ {% if params.wrapper %}
85
+ <div {%- if params.wrapper.classes %} class="{{ params.wrapper.classes }}"{% endif %} {% for attribute, value in params.wrapper.attributes %} {{ attribute }}="{{ value }}"{% endfor %}>
86
+ {{ innerHtml | trim | safe }}
87
+ </div>
88
+ {% else %}
89
+ {{ innerHtml | trim | safe }}
90
+ {% endif %}
91
91
  <!-- /treegrid -->
@@ -1,132 +1,132 @@
1
- params:
2
- - name: rows
3
- type: object
4
- required: true
5
- description: table rows in treegrid.
6
- params:
7
- - name: level
8
- type: integer
9
- required: false
10
- description: Specify the hierarchical level of the row. Level 1 is the top level. This will add the appropriate aria-level attribute to the row.
11
- - name: posinset
12
- type: integer
13
- required: false
14
- description: Specify the position of the row within its current level, starting at 1. This will add the appropriate aria-posinset attribute to the row.
15
- - name: setsize
16
- type: integer
17
- required: false
18
- description: Specify the number of rows within the current level. This will add the appropriate aria-setsize attribute to the row.
19
- - name: expanded
20
- type: boolean
21
- required: false
22
- description: If true, row sub will be expanded.
23
- - name: cells
24
- type: array
25
- required: false
26
- description: Provide cells for the row.
27
- params:
28
- - name: text
29
- type: string
30
- required: true
31
- description: If `html` is set, this is not required. Text for cells in table rows. If `html` is provided, the `text` argument will be ignored.
32
- - name: html
33
- type: string
34
- required: true
35
- description: If `text` is set, this is not required. HTML for cells in table rows. If `html` is provided, the `text` argument will be ignore
36
- - name: classes
37
- type: string
38
- required: false
39
- description: Classes to add to the table cell.
40
- - name: attributes
41
- type: object
42
- required: false
43
- description: HTML attributes (for example data attributes) to add to the table cell.
44
- - name: attributes
45
- type: object
46
- required: false
47
- description: HTML attributes (for example data attributes) to add to the table row.
48
- - name: head
49
- type: array
50
- required: false
51
- description: Array of table head cells.
52
- params:
53
- - name: text
54
- type: string
55
- required: false
56
- description: If `html` is set, this is not required. Text for table head cells. If `html` is provided, the `text` argument will be ignored.
57
- - name: html
58
- type: string
59
- required: false
60
- description: If `text` is set, this is not required. HTML for table head cells. If `html` is provided, the `text` argument will be ignore
61
- - name: classes
62
- type: string
63
- required: false
64
- description: Classes to add to the table head cell.
65
- - name: attributes
66
- type: object
67
- required: false
68
- description: HTML attributes (for example data attributes) to add to the table cell.
69
- - name: foot
70
- type: array
71
- required: false
72
- description: Array of table tfoot cells.
73
- params:
74
- - name: text
75
- type: string
76
- required: false
77
- description: If `html` is set, this is not required. Text for table tfoot cells. If `html` is provided, the `text` argument will be ignored.
78
- - name: html
79
- type: string
80
- required: false
81
- description: If `text` is set, this is not required. HTML for table tfoot cells. If `html` is provided, the `text` argument will be ignore
82
- - name: classes
83
- type: string
84
- required: false
85
- description: Classes to add to the table tfoot cell.
86
- - name: attributes
87
- type: object
88
- required: false
89
- description: HTML attributes (for example data attributes) to add to the table cell.
90
- - name: caption
91
- type: string
92
- required: false
93
- description: Caption text
94
- - name: captionClasses
95
- type: string
96
- required: false
97
- description: Classes for caption text size. Classes should correspond to the available typography heading classes.
98
- - name: firstCellIsHeader
99
- type: boolean
100
- required: false
101
- description: If set to true, first cell in table row will be a TH instead of a TD.
102
- - name: wrapper
103
- type: object
104
- required: false
105
- description: Options for a wrapper div outside the table
106
- params:
107
- - name: classes
108
- type: string
109
- required: false
110
- description: Classes to add to the wrapper (e.g. to show an horizontal scrollbar it there are many columns or in mobile)
111
- - name: attributes
112
- type: object
113
- required: false
114
- description: HTML attributes to add to the wrapper div. For accessibility it needs tabindex=0, role=section and aria-label or aria-labelledby.
115
- - name: classes
116
- type: string
117
- required: false
118
- description: Classes to add to the table container.
119
- - name: attributes
120
- type: object
121
- required: false
122
- description: HTML attributes (for example data attributes) to add to the table container.
123
-
124
- accessibilityCriteria: |
125
- ## Las tablas deben:
126
- 1. Debe tener al menos una celda de encabezado (TH) en las filas o columnas exteriores.
127
- 2. Si la tabla tiene más de un nivel de encabezado (si hay elementos th en dos filas o en dos columnas) las celdas de datos y de encabezado deben estar asociadas con los atributos id (en los th) /headers (en los td).
128
- 3. El título de la tabla debe estar marcado como <caption>
129
- 4. La primera fila de la tabla no puede tener todas las celdas unidas, o se interpreta que se está simulando un caption.
130
- 5. Después de un encabezado (h1, h2…) no puede ir directamente una tabla, o se entiende que se está usando el encabezado para lo que debería ser el <caption>
131
- 6. La tabla debe tener una descripción especialmente si la tabla es grande o compleja, tiene varios niveles de encabezados, tiene totales o enlaces, etc. La descripción intenta suplir la primera impresión que tienen de la tabla las personas que pueden verla, por ejemplo, vemos que en la última columna hay enlaces o en la última fila hay totales. Como en HTML 5 ya no está admitido el atributo summary en las tablas, lo que se hace es poner la descripción en un párrafo antes de la tabla y asociarlo a la tabla con aria-describedby (así se evita también el error 5). El caption y la descripción no deben ser iguales.
1
+ params:
2
+ - name: rows
3
+ type: object
4
+ required: true
5
+ description: table rows in treegrid.
6
+ params:
7
+ - name: level
8
+ type: integer
9
+ required: false
10
+ description: Specify the hierarchical level of the row. Level 1 is the top level. This will add the appropriate aria-level attribute to the row.
11
+ - name: posinset
12
+ type: integer
13
+ required: false
14
+ description: Specify the position of the row within its current level, starting at 1. This will add the appropriate aria-posinset attribute to the row.
15
+ - name: setsize
16
+ type: integer
17
+ required: false
18
+ description: Specify the number of rows within the current level. This will add the appropriate aria-setsize attribute to the row.
19
+ - name: expanded
20
+ type: boolean
21
+ required: false
22
+ description: If true, row sub will be expanded.
23
+ - name: cells
24
+ type: array
25
+ required: false
26
+ description: Provide cells for the row.
27
+ params:
28
+ - name: text
29
+ type: string
30
+ required: true
31
+ description: If `html` is set, this is not required. Text for cells in table rows. If `html` is provided, the `text` argument will be ignored.
32
+ - name: html
33
+ type: string
34
+ required: true
35
+ description: If `text` is set, this is not required. HTML for cells in table rows. If `html` is provided, the `text` argument will be ignore
36
+ - name: classes
37
+ type: string
38
+ required: false
39
+ description: Classes to add to the table cell.
40
+ - name: attributes
41
+ type: object
42
+ required: false
43
+ description: HTML attributes (for example data attributes) to add to the table cell.
44
+ - name: attributes
45
+ type: object
46
+ required: false
47
+ description: HTML attributes (for example data attributes) to add to the table row.
48
+ - name: head
49
+ type: array
50
+ required: false
51
+ description: Array of table head cells.
52
+ params:
53
+ - name: text
54
+ type: string
55
+ required: false
56
+ description: If `html` is set, this is not required. Text for table head cells. If `html` is provided, the `text` argument will be ignored.
57
+ - name: html
58
+ type: string
59
+ required: false
60
+ description: If `text` is set, this is not required. HTML for table head cells. If `html` is provided, the `text` argument will be ignore
61
+ - name: classes
62
+ type: string
63
+ required: false
64
+ description: Classes to add to the table head cell.
65
+ - name: attributes
66
+ type: object
67
+ required: false
68
+ description: HTML attributes (for example data attributes) to add to the table cell.
69
+ - name: foot
70
+ type: array
71
+ required: false
72
+ description: Array of table tfoot cells.
73
+ params:
74
+ - name: text
75
+ type: string
76
+ required: false
77
+ description: If `html` is set, this is not required. Text for table tfoot cells. If `html` is provided, the `text` argument will be ignored.
78
+ - name: html
79
+ type: string
80
+ required: false
81
+ description: If `text` is set, this is not required. HTML for table tfoot cells. If `html` is provided, the `text` argument will be ignore
82
+ - name: classes
83
+ type: string
84
+ required: false
85
+ description: Classes to add to the table tfoot cell.
86
+ - name: attributes
87
+ type: object
88
+ required: false
89
+ description: HTML attributes (for example data attributes) to add to the table cell.
90
+ - name: caption
91
+ type: string
92
+ required: false
93
+ description: Caption text
94
+ - name: captionClasses
95
+ type: string
96
+ required: false
97
+ description: Classes for caption text size. Classes should correspond to the available typography heading classes.
98
+ - name: firstCellIsHeader
99
+ type: boolean
100
+ required: false
101
+ description: If set to true, first cell in table row will be a TH instead of a TD.
102
+ - name: wrapper
103
+ type: object
104
+ required: false
105
+ description: Options for a wrapper div outside the table
106
+ params:
107
+ - name: classes
108
+ type: string
109
+ required: false
110
+ description: Classes to add to the wrapper (e.g. to show an horizontal scrollbar it there are many columns or in mobile)
111
+ - name: attributes
112
+ type: object
113
+ required: false
114
+ description: HTML attributes to add to the wrapper div. For accessibility it needs tabindex=0, role=section and aria-label or aria-labelledby.
115
+ - name: classes
116
+ type: string
117
+ required: false
118
+ description: Classes to add to the table container.
119
+ - name: attributes
120
+ type: object
121
+ required: false
122
+ description: HTML attributes (for example data attributes) to add to the table container.
123
+
124
+ accessibilityCriteria: |
125
+ ## Las tablas deben:
126
+ 1. Debe tener al menos una celda de encabezado (TH) en las filas o columnas exteriores.
127
+ 2. Si la tabla tiene más de un nivel de encabezado (si hay elementos th en dos filas o en dos columnas) las celdas de datos y de encabezado deben estar asociadas con los atributos id (en los th) /headers (en los td).
128
+ 3. El título de la tabla debe estar marcado como <caption>
129
+ 4. La primera fila de la tabla no puede tener todas las celdas unidas, o se interpreta que se está simulando un caption.
130
+ 5. Después de un encabezado (h1, h2…) no puede ir directamente una tabla, o se entiende que se está usando el encabezado para lo que debería ser el <caption>
131
+ 6. La tabla debe tener una descripción especialmente si la tabla es grande o compleja, tiene varios niveles de encabezados, tiene totales o enlaces, etc. La descripción intenta suplir la primera impresión que tienen de la tabla las personas que pueden verla, por ejemplo, vemos que en la última columna hay enlaces o en la última fila hay totales. Como en HTML 5 ya no está admitido el atributo summary en las tablas, lo que se hace es poner la descripción en un párrafo antes de la tabla y asociarlo a la tabla con aria-describedby (así se evita también el error 5). El caption y la descripción no deben ser iguales.
132
132
  7. El validador del OAW dará error si hay tablas de una única columna y 3 o más filas con texto menor de 150 caracteres, pues considerará que se está simulando una lista.
@@ -1,3 +1,3 @@
1
- <p class="c-paragraph-base">
2
- Abrir <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-header-container').removeAttribute('aria-hidden'); openAlert('notification-header', this);">Notification header</a>, <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-footer-container').removeAttribute('aria-hidden'); openAlert('notification-footer', this);">Notification footer</a>, <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-inner-content-container').removeAttribute('aria-hidden'); openAlert('notification-inner-content', this);">Notification inner-content (sólo en páginas con barra lateral)</a>
1
+ <p class="c-paragraph-base">
2
+ Abrir <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-header-container').removeAttribute('aria-hidden'); openAlert('notification-header', this);">Notification header</a>, <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-footer-container').removeAttribute('aria-hidden'); openAlert('notification-footer', this);">Notification footer</a>, <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-inner-content-container').removeAttribute('aria-hidden'); openAlert('notification-inner-content', this);">Notification inner-content (sólo en páginas con barra lateral)</a>
3
3
  </p>
@@ -1,3 +1,3 @@
1
- <p class="c-paragraph-base">
2
- Abrir <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-header-container').removeAttribute('aria-hidden'); openAlert('notification-header', this);">Notification header</a>, <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-footer-container').removeAttribute('aria-hidden'); openAlert('notification-footer', this);">Notification footer</a>
1
+ <p class="c-paragraph-base">
2
+ Abrir <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-header-container').removeAttribute('aria-hidden'); openAlert('notification-header', this);">Notification header</a>, <a href="javascript:void(0)" class="c-link" onclick="document.getElementById('notification-footer-container').removeAttribute('aria-hidden'); openAlert('notification-footer', this);">Notification footer</a>
3
3
  </p>
@@ -1,28 +1,28 @@
1
- {% from "components/button/_macro.button.njk" import componentButton %}
2
-
3
- <nav aria-labelledby="acciones-de-cabecera">
4
- <p class="sr-only" id="acciones-de-cabecera">Menú de acciones</p>
5
- <ul class="flex flex-wrap flex-column-reverse lg:flex-row-reverse gap-sm lg:items-center lg:ml-auto lg:pl-base">
6
- <li>
7
- {{ componentButton({
8
- "text": "Guardar y salir",
9
- "href": "#",
10
- "classes": "c-button--primary c-button--sm"
11
- }) }}
12
- </li>
13
- <li>
14
- {{ componentButton({
15
- "text": "Guardar",
16
- "href": "#",
17
- "classes": "c-button--sm"
18
- }) }}
19
- </li>
20
- <li>
21
- {{ componentButton({
22
- "text": "Salir",
23
- "href": "#",
24
- "classes": "c-button--sm"
25
- }) }}
26
- </li>
27
- </ul>
28
- </nav>
1
+ {% from "components/button/_macro.button.njk" import componentButton %}
2
+
3
+ <nav aria-labelledby="acciones-de-cabecera">
4
+ <p class="sr-only" id="acciones-de-cabecera">Menú de acciones</p>
5
+ <ul class="flex flex-wrap flex-column-reverse lg:flex-row-reverse gap-sm lg:items-center lg:ml-auto lg:pl-base">
6
+ <li>
7
+ {{ componentButton({
8
+ "text": "Guardar y salir",
9
+ "href": "#",
10
+ "classes": "c-button--primary c-button--sm"
11
+ }) }}
12
+ </li>
13
+ <li>
14
+ {{ componentButton({
15
+ "text": "Guardar",
16
+ "href": "#",
17
+ "classes": "c-button--sm"
18
+ }) }}
19
+ </li>
20
+ <li>
21
+ {{ componentButton({
22
+ "text": "Salir",
23
+ "href": "#",
24
+ "classes": "c-button--sm"
25
+ }) }}
26
+ </li>
27
+ </ul>
28
+ </nav>
@@ -1,5 +1,5 @@
1
- <div class="pb-lg"></div>
2
- <h2 class="c-h1">Título de página (h2)</h2>
3
- <p class="c-paragraph-base">
4
- Aqui un ejemplo de párrafo explicativo de la página. Lorem ipsum, dolor sit amet consectetur adipisicing elit. Illum, nobis quae amet esse! Accusamus, enim. Corrupti expedita officia perferendis quas dicta earum placeat voluptates, laudantium at, optio minus consequuntur pariatur.
1
+ <div class="pb-lg"></div>
2
+ <h2 class="c-h1">Título de página (h2)</h2>
3
+ <p class="c-paragraph-base">
4
+ Aqui un ejemplo de párrafo explicativo de la página. Lorem ipsum, dolor sit amet consectetur adipisicing elit. Illum, nobis quae amet esse! Accusamus, enim. Corrupti expedita officia perferendis quas dicta earum placeat voluptates, laudantium at, optio minus consequuntur pariatur.
5
5
  </p>
@@ -1,5 +1,5 @@
1
- <div class="pb-lg"></div>
2
- <h1 class="c-h1">Título de página (h1)</h1>
3
- <p class="c-paragraph-base">
4
- Aqui un ejemplo de párrafo explicativo de la página. Lorem ipsum, dolor sit amet consectetur adipisicing elit. Illum, nobis quae amet esse! Accusamus, enim. Corrupti expedita officia perferendis quas dicta earum placeat voluptates, laudantium at, optio minus consequuntur pariatur.
1
+ <div class="pb-lg"></div>
2
+ <h1 class="c-h1">Título de página (h1)</h1>
3
+ <p class="c-paragraph-base">
4
+ Aqui un ejemplo de párrafo explicativo de la página. Lorem ipsum, dolor sit amet consectetur adipisicing elit. Illum, nobis quae amet esse! Accusamus, enim. Corrupti expedita officia perferendis quas dicta earum placeat voluptates, laudantium at, optio minus consequuntur pariatur.
5
5
  </p>