desy-html 16.0.4 → 17.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.node-version +1 -1
- package/.nvmrc +1 -1
- package/AGENTS.md +207 -207
- package/README.md +203 -203
- package/TESTING_PLAN.md +379 -379
- package/branding/BRANDING.md +398 -398
- package/branding/branding.config.js +76 -76
- package/branding/branding.config.yourorganization.js +72 -72
- package/branding/logos/aragon-compact.svg +1 -1
- package/branding/logos/aragon-expanded.svg +1 -1
- package/branding/logos/aragon-mini.svg +1 -1
- package/branding/logos/favicon.svg +1 -1
- package/branding/logos/yourlogo-compact.svg +13 -13
- package/branding/logos/yourlogo-expanded.svg +17 -17
- package/branding/logos/yourlogo-mini.svg +17 -17
- package/branding/logos/yourorganization-favicon.svg +13 -13
- package/branding/vite-branding-plugin.js +221 -221
- package/docs/_global.content-placeholder.njk +7 -7
- package/docs/_global.foot.njk +11 -11
- package/docs/_global.head.njk +42 -42
- package/docs/_include.template-header.njk +391 -386
- package/docs/_macro.component-example.njk +6 -6
- package/docs/_macro.example-render.njk +350 -346
- package/docs/_macro.load-component-params.njk +2 -2
- package/docs/_macro.load-component-template.njk +3 -3
- package/docs/_macro.render-caller.njk +3 -3
- package/docs/_macro.show-code-from-file.njk +57 -57
- package/docs/_macro.show-html-from-file.njk +42 -42
- package/docs/_template.default.njk +8 -8
- package/docs/_template.examples.njk +13 -13
- package/docs/catalogo.html +27 -27
- package/docs/componentes.html +187 -184
- package/docs/ds/_ds.example.accordion.njk +109 -109
- package/docs/ds/_ds.example.border.njk +39 -39
- package/docs/ds/_ds.example.botones-alert-sm.njk +264 -264
- package/docs/ds/_ds.example.botones-alert.njk +264 -264
- package/docs/ds/_ds.example.botones-default-sm.njk +264 -264
- package/docs/ds/_ds.example.botones-default.njk +258 -258
- package/docs/ds/_ds.example.botones-primary-lg.njk +264 -264
- package/docs/ds/_ds.example.botones-primary-sm.njk +264 -264
- package/docs/ds/_ds.example.botones-primary.njk +264 -264
- package/docs/ds/_ds.example.botones-transparent-sm.njk +264 -264
- package/docs/ds/_ds.example.botones-transparent.njk +264 -264
- package/docs/ds/_ds.example.breadcrumbs.njk +65 -65
- package/docs/ds/_ds.example.card.njk +198 -198
- package/docs/ds/_ds.example.checkboxes.njk +377 -377
- package/docs/ds/_ds.example.collapsible.njk +18 -18
- package/docs/ds/_ds.example.color-de-interaccion.njk +16 -16
- package/docs/ds/_ds.example.colores-cabecera.njk +15 -15
- package/docs/ds/_ds.example.colores-de-soporte.njk +82 -82
- package/docs/ds/_ds.example.colores-neutros.njk +26 -26
- package/docs/ds/_ds.example.combobox.njk +91 -0
- package/docs/ds/_ds.example.date-input.njk +363 -363
- package/docs/ds/_ds.example.description-list.njk +289 -289
- package/docs/ds/_ds.example.details.njk +23 -23
- package/docs/ds/_ds.example.dropdowns-default.njk +186 -186
- package/docs/ds/_ds.example.dropdowns-en-uso.njk +105 -105
- package/docs/ds/_ds.example.dropdowns-variaciones.njk +224 -224
- package/docs/ds/_ds.example.error-summary.njk +34 -34
- package/docs/ds/_ds.example.file-upload.njk +54 -54
- package/docs/ds/_ds.example.footer.njk +28 -28
- package/docs/ds/_ds.example.header-advanced.njk +70 -70
- package/docs/ds/_ds.example.header.njk +211 -211
- package/docs/ds/_ds.example.input-group.njk +242 -242
- package/docs/ds/_ds.example.input.njk +164 -164
- package/docs/ds/_ds.example.item.njk +176 -176
- package/docs/ds/_ds.example.layout-escritorio.njk +38 -38
- package/docs/ds/_ds.example.layout-movil.njk +14 -14
- package/docs/ds/_ds.example.layout-sidebar.njk +11 -11
- package/docs/ds/_ds.example.links-list.njk +170 -170
- package/docs/ds/_ds.example.listbox-default.njk +677 -677
- package/docs/ds/_ds.example.listbox-variaciones.njk +824 -824
- package/docs/ds/_ds.example.menu-horizontal.njk +66 -66
- package/docs/ds/_ds.example.menu-navigation.njk +493 -493
- package/docs/ds/_ds.example.menu-vertical.njk +129 -129
- package/docs/ds/_ds.example.menubar-en-uso.njk +244 -244
- package/docs/ds/_ds.example.menubar-variaciones.njk +785 -785
- package/docs/ds/_ds.example.modal.njk +210 -210
- package/docs/ds/_ds.example.nav.njk +158 -158
- package/docs/ds/_ds.example.notification.njk +122 -122
- package/docs/ds/_ds.example.pagination.njk +190 -190
- package/docs/ds/_ds.example.pills.njk +215 -215
- package/docs/ds/_ds.example.radios.njk +419 -419
- package/docs/ds/_ds.example.searchbar.njk +87 -87
- package/docs/ds/_ds.example.select.njk +390 -390
- package/docs/ds/_ds.example.status-item.njk +239 -239
- package/docs/ds/_ds.example.status.njk +47 -47
- package/docs/ds/_ds.example.table.njk +740 -740
- package/docs/ds/_ds.example.tabs.njk +136 -136
- package/docs/ds/_ds.example.textarea.njk +237 -237
- package/docs/ds/_ds.example.textos.njk +32 -32
- package/docs/ds/_ds.example.toggle.njk +75 -75
- package/docs/ds/_ds.example.tree.njk +456 -456
- package/docs/ds/_ds.example.treegrid.njk +810 -810
- package/docs/ds/_ds.example.typography.njk +225 -225
- package/docs/ds/_ds.macro.code-snippet.njk +32 -32
- package/docs/ds/_ds.macro.section-title.njk +2 -2
- package/docs/ds/_ds.macro.subsection-title.njk +2 -2
- package/docs/ds/_ds.section.avisos.njk +22 -22
- package/docs/ds/_ds.section.botones.njk +53 -53
- package/docs/ds/_ds.section.campo-y-area-de-texto.njk +19 -19
- package/docs/ds/_ds.section.color.njk +147 -147
- package/docs/ds/_ds.section.datos.njk +42 -42
- package/docs/ds/_ds.section.dropdowns.njk +23 -23
- package/docs/ds/_ds.section.espaciado.njk +296 -296
- package/docs/ds/_ds.section.forms.njk +73 -68
- package/docs/ds/_ds.section.informacion.njk +12 -12
- package/docs/ds/_ds.section.layout.njk +63 -63
- package/docs/ds/_ds.section.menubar.njk +18 -18
- package/docs/ds/_ds.section.mostrar-ocultar.njk +33 -33
- package/docs/ds/_ds.section.navigation.njk +57 -57
- package/docs/ds/_ds.section.textos.njk +287 -287
- package/docs/ds/_ds.section.typography.njk +28 -28
- package/docs/estilos.html +37 -37
- package/docs/examples-accordion-history.html +8 -8
- package/docs/examples-accordion.html +8 -8
- package/docs/examples-alert.html +8 -8
- package/docs/examples-breadcrumbs.html +8 -8
- package/docs/examples-button-loader.html +8 -8
- package/docs/examples-button.html +8 -8
- package/docs/examples-card.html +8 -8
- package/docs/examples-character-count.html +8 -8
- package/docs/examples-checkboxes.html +8 -8
- package/docs/examples-collapsible.html +8 -8
- package/docs/examples-combobox.html +8 -0
- package/docs/examples-date-input.html +8 -8
- package/docs/examples-datepicker.html +8 -8
- package/docs/examples-description-list.html +8 -8
- package/docs/examples-details.html +8 -8
- package/docs/examples-dialog.html +8 -8
- package/docs/examples-dropdown.html +8 -8
- package/docs/examples-error-message.html +8 -8
- package/docs/examples-error-summary.html +8 -8
- package/docs/examples-fieldset.html +8 -8
- package/docs/examples-file-upload.html +8 -8
- package/docs/examples-footer.html +8 -8
- package/docs/examples-header-advanced.html +8 -8
- package/docs/examples-header-mini.html +8 -8
- package/docs/examples-header.html +8 -8
- package/docs/examples-hint.html +8 -8
- package/docs/examples-input-group.html +8 -8
- package/docs/examples-input.html +8 -8
- package/docs/examples-item.html +8 -8
- package/docs/examples-label.html +8 -8
- package/docs/examples-links-list.html +8 -8
- package/docs/examples-listbox.html +8 -8
- package/docs/examples-media-object.html +8 -8
- package/docs/examples-menu-horizontal.html +8 -8
- package/docs/examples-menu-navigation.html +8 -8
- package/docs/examples-menu-vertical.html +8 -8
- package/docs/examples-menubar.html +8 -8
- package/docs/examples-modal.html +8 -8
- package/docs/examples-nav.html +8 -8
- package/docs/examples-notification.html +8 -8
- package/docs/examples-pagination.html +8 -8
- package/docs/examples-pill.html +8 -8
- package/docs/examples-radios.html +8 -8
- package/docs/examples-searchbar.html +8 -8
- package/docs/examples-select.html +8 -8
- package/docs/examples-skip-link.html +8 -8
- package/docs/examples-spinner.html +8 -8
- package/docs/examples-status-item.html +8 -8
- package/docs/examples-status.html +8 -8
- package/docs/examples-table-advanced.html +8 -8
- package/docs/examples-table.html +8 -8
- package/docs/examples-tabs.html +8 -8
- package/docs/examples-textarea.html +8 -8
- package/docs/examples-toggle.html +8 -8
- package/docs/examples-tooltip.html +8 -8
- package/docs/examples-tree.html +8 -8
- package/docs/examples-treegrid.html +8 -8
- package/docs/index.html +919 -908
- package/docs/pagina-accesibilidad.html +110 -110
- package/docs/pagina-mapa-web.html +137 -137
- package/docs/pagina-prueba.html +95 -95
- package/docs/plantilla-con-header-advanced.html +14 -14
- package/docs/plantilla-editar-con-cabecera-fija-y-sidebar-sticky.html +154 -154
- package/docs/plantilla-editar-con-cabecera-fija.html +17 -17
- package/docs/plantilla-logueado-con-cabecera-fija-headroom.html +15 -15
- package/docs/plantilla-logueado-con-cabecera-fija.html +15 -15
- package/docs/plantilla-logueado-con-selector-de-app-y-sidebar.html +164 -164
- package/docs/plantilla-logueado-con-selector-de-app-y-subheader.html +16 -16
- package/docs/plantilla-logueado-con-selector-de-app.html +14 -14
- package/docs/plantilla-logueado-con-titulo-de-app.html +14 -14
- package/docs/plantilla-sin-loguear.html +14 -14
- package/docs/plantillas.html +89 -89
- package/docs/spinner-plantilla-con-header-advanced.html +2 -2
- package/docs/spinner-plantilla-editar-con-cabecera-fija.html +4 -4
- package/docs/spinner-plantilla-logueado-con-cabecera-fija.html +2 -2
- package/docs/spinner-plantilla-logueado-con-selector-de-app-y-subheader.html +2 -2
- package/docs/spinner-plantilla-logueado-con-titulo-de-app.html +2 -2
- package/docs/spinner-plantilla-sin-loguear.html +18 -18
- package/docs/sprints/01-combobox-template.md +433 -0
- package/docs/sprints/02-combobox-styles.md +291 -0
- package/docs/sprints/03-combobox-javascript.md +589 -0
- package/docs/sprints/04-combobox-integration.md +386 -0
- package/docs/sprints/05-combobox-refinamiento-w3c.md +55 -0
- package/package.json +61 -61
- package/public/images/demo-icon.svg +9 -9
- package/replit.md +74 -74
- package/src/EUPL-1.2.txt +287 -287
- package/src/css/base.css +44 -44
- package/src/css/component.form-group.css +24 -24
- package/src/css/component.headroom.css +32 -32
- package/src/css/component.text.css +169 -169
- package/src/css/styles.css +247 -246
- package/src/js/aria/MenuHorizontal.js +63 -65
- package/src/js/aria/MenuNavigation.js +56 -55
- package/src/js/aria/MenuVertical.js +60 -60
- package/src/js/aria/MenubarAction.js +29 -6
- package/src/js/aria/MenubarItemAction.js +1 -9
- package/src/js/aria/Nav.js +60 -60
- package/src/js/aria/PopupMenuAction.js +32 -14
- package/src/js/aria/accordion.js +281 -264
- package/src/js/aria/alert.js +8 -3
- package/src/js/aria/checkBoxes.js +52 -52
- package/src/js/aria/collapsible.js +44 -44
- package/src/js/aria/combobox.js +597 -0
- package/src/js/aria/dataGrid.js +953 -950
- package/src/js/aria/linksList.js +64 -42
- package/src/js/aria/listbox.js +3 -3
- package/src/js/aria/notification.js +56 -56
- package/src/js/aria/radioButton.js +50 -50
- package/src/js/aria/tabs.js +20 -6
- package/src/js/aria/toggle.js +61 -61
- package/src/js/aria/tree.js +60 -40
- package/src/js/aria/treegrid.js +507 -507
- package/src/js/aria/treeitem.js +22 -13
- package/src/js/aria/utils.js +240 -219
- package/src/js/desy-html.js +860 -813
- package/src/js/headroom.min.js +6 -6
- package/src/js/index.js +74 -72
- package/src/main.js +2 -2
- package/src/templates/components/accordion/_examples.accordion.njk +482 -482
- package/src/templates/components/accordion/_macro.accordion.njk +3 -3
- package/src/templates/components/accordion/_template.accordion.njk +131 -131
- package/src/templates/components/accordion/params.accordion.yaml +125 -125
- package/src/templates/components/accordion-history/_examples.accordion-history.njk +521 -521
- package/src/templates/components/accordion-history/_macro.accordion-history.njk +3 -3
- package/src/templates/components/accordion-history/_template.accordion-history.njk +193 -193
- package/src/templates/components/accordion-history/params.accordion-history.yaml +129 -129
- package/src/templates/components/alert/_examples.alert.njk +91 -91
- package/src/templates/components/alert/_macro.alert.njk +3 -3
- package/src/templates/components/alert/_styles.alert.css +9 -9
- package/src/templates/components/alert/_template.alert.njk +16 -16
- package/src/templates/components/alert/params.alert.yaml +25 -25
- package/src/templates/components/breadcrumbs/_examples.breadcrumbs.njk +464 -464
- package/src/templates/components/breadcrumbs/_macro.breadcrumbs.njk +3 -3
- package/src/templates/components/breadcrumbs/_styles.breadcrumbs.css +81 -81
- package/src/templates/components/breadcrumbs/_template.breadcrumbs.njk +77 -77
- package/src/templates/components/breadcrumbs/params.breadcrumbs.yaml +44 -44
- package/src/templates/components/button/_examples.button.njk +518 -511
- package/src/templates/components/button/_macro.button.njk +3 -3
- package/src/templates/components/button/_styles.button.css +180 -180
- package/src/templates/components/button/_template.button.njk +49 -49
- package/src/templates/components/button/params.button.yaml +48 -48
- package/src/templates/components/button-loader/_examples.button-loader.njk +499 -492
- package/src/templates/components/button-loader/_macro.button-loader.njk +3 -3
- package/src/templates/components/button-loader/_styles.button-loader.css +194 -194
- package/src/templates/components/button-loader/_template.button-loader.njk +84 -84
- package/src/templates/components/button-loader/params.button-loader.yaml +74 -74
- package/src/templates/components/card/_examples.card.njk +381 -381
- package/src/templates/components/card/_macro.card.njk +3 -3
- package/src/templates/components/card/_template.card.njk +34 -34
- package/src/templates/components/card/params.card.yaml +112 -112
- package/src/templates/components/character-count/_examples.character-count.njk +195 -195
- package/src/templates/components/character-count/_macro.character-count.njk +5 -5
- package/src/templates/components/character-count/_template.character-count.njk +38 -38
- package/src/templates/components/character-count/params.character-count.yaml +77 -77
- package/src/templates/components/checkboxes/_examples.checkboxes.njk +835 -835
- package/src/templates/components/checkboxes/_macro.checkboxes.njk +3 -3
- package/src/templates/components/checkboxes/_styles.checkboxes.css +30 -30
- package/src/templates/components/checkboxes/_template.checkboxes.njk +137 -137
- package/src/templates/components/checkboxes/params.checkboxes.yaml +116 -116
- package/src/templates/components/collapsible/_examples.collapsible.njk +107 -107
- package/src/templates/components/collapsible/_macro.collapsible.njk +3 -3
- package/src/templates/components/collapsible/_styles.collapsible.css +35 -35
- package/src/templates/components/collapsible/_template.collapsible.njk +17 -17
- package/src/templates/components/collapsible/params.collapsible.yaml +48 -48
- package/src/templates/components/combobox/_examples.combobox.njk +440 -0
- package/src/templates/components/combobox/_macro.combobox.njk +3 -0
- package/src/templates/components/combobox/_styles.combobox.css +92 -0
- package/src/templates/components/combobox/_template.combobox.njk +97 -0
- package/src/templates/components/combobox/params.combobox.yaml +102 -0
- package/src/templates/components/date-input/_examples.date-input.njk +578 -578
- package/src/templates/components/date-input/_macro.date-input.njk +3 -3
- package/src/templates/components/date-input/_template.date-input.njk +125 -125
- package/src/templates/components/date-input/params.date-input.yaml +97 -97
- package/src/templates/components/datepicker/_examples.datepicker.njk +415 -415
- package/src/templates/components/datepicker/_macro.datepicker.njk +3 -3
- package/src/templates/components/datepicker/_styles.datepicker.css +87 -87
- package/src/templates/components/datepicker/_template.datepicker.njk +129 -129
- package/src/templates/components/datepicker/params.datepicker.yaml +104 -104
- package/src/templates/components/description-list/_examples.description-list.njk +502 -502
- package/src/templates/components/description-list/_macro.description-list.njk +3 -3
- package/src/templates/components/description-list/_template.description-list.njk +17 -17
- package/src/templates/components/description-list/params.description-list.yaml +61 -61
- package/src/templates/components/details/_examples.details.njk +68 -68
- package/src/templates/components/details/_macro.details.njk +3 -3
- package/src/templates/components/details/_template.details.njk +17 -17
- package/src/templates/components/details/params.details.yaml +40 -40
- package/src/templates/components/dialog/_examples.dialog.njk +156 -156
- package/src/templates/components/dialog/_macro.dialog.njk +3 -3
- package/src/templates/components/dialog/_styles.dialog.css +27 -27
- package/src/templates/components/dialog/_template.dialog.njk +12 -12
- package/src/templates/components/dialog/params.dialog.yaml +25 -25
- package/src/templates/components/dropdown/_examples.dropdown.njk +226 -226
- package/src/templates/components/dropdown/_macro.dropdown.njk +3 -3
- package/src/templates/components/dropdown/_styles.dropdown.css +191 -191
- package/src/templates/components/dropdown/_template.dropdown.njk +34 -34
- package/src/templates/components/dropdown/params.dropdown.yaml +32 -32
- package/src/templates/components/error-message/_examples.error-message.njk +28 -28
- package/src/templates/components/error-message/_macro.error-message.njk +5 -5
- package/src/templates/components/error-message/_template.error-message.njk +8 -8
- package/src/templates/components/error-message/params.error-message.yaml +23 -23
- package/src/templates/components/error-summary/_examples.error-summary.njk +111 -111
- package/src/templates/components/error-summary/_macro.error-summary.njk +5 -5
- package/src/templates/components/error-summary/_template.error-summary.njk +48 -48
- package/src/templates/components/error-summary/params.error-summary.yaml +50 -50
- package/src/templates/components/fieldset/_examples.fieldset.njk +79 -79
- package/src/templates/components/fieldset/_macro.fieldset.njk +2 -2
- package/src/templates/components/fieldset/_template.fieldset.njk +46 -46
- package/src/templates/components/fieldset/params.fieldset.yaml +49 -49
- package/src/templates/components/file-upload/_examples.file-upload.njk +103 -103
- package/src/templates/components/file-upload/_macro.file-upload.njk +2 -2
- package/src/templates/components/file-upload/_template.file-upload.njk +45 -45
- package/src/templates/components/file-upload/params.file-upload.yaml +48 -48
- package/src/templates/components/footer/_examples.footer.njk +558 -558
- package/src/templates/components/footer/_macro.footer.njk +3 -3
- package/src/templates/components/footer/_styles.footer.css +43 -43
- package/src/templates/components/footer/_template.footer.njk +130 -130
- package/src/templates/components/footer/params.footer.yaml +140 -140
- package/src/templates/components/header/_examples.header.njk +627 -627
- package/src/templates/components/header/_macro.header.header__dropdown.njk +3 -3
- package/src/templates/components/header/_macro.header.header__navigation.njk +3 -3
- package/src/templates/components/header/_macro.header.header__offcanvas.njk +3 -3
- package/src/templates/components/header/_macro.header.header__offcanvasButton.njk +3 -3
- package/src/templates/components/header/_macro.header.header__subnav.njk +3 -3
- package/src/templates/components/header/_macro.header.njk +3 -3
- package/src/templates/components/header/_styles.header.css +12 -12
- package/src/templates/components/header/_template.header.header__dropdown.njk +27 -27
- package/src/templates/components/header/_template.header.header__navigation.njk +25 -25
- package/src/templates/components/header/_template.header.header__offcanvas.njk +20 -20
- package/src/templates/components/header/_template.header.header__offcanvasButton.njk +10 -10
- package/src/templates/components/header/_template.header.header__subnav.njk +33 -33
- package/src/templates/components/header/_template.header.njk +155 -155
- package/src/templates/components/header/params.header.yaml +295 -295
- package/src/templates/components/header-advanced/_examples.header-advanced.njk +1110 -1110
- package/src/templates/components/header-advanced/_macro.header-advanced.njk +3 -3
- package/src/templates/components/header-advanced/_template.header-advanced.njk +171 -171
- package/src/templates/components/header-advanced/params.header-advanced.yaml +352 -352
- package/src/templates/components/header-mini/_examples.header-mini.njk +319 -316
- package/src/templates/components/header-mini/_macro.header-mini.njk +3 -3
- package/src/templates/components/header-mini/_template.header-mini.njk +51 -51
- package/src/templates/components/header-mini/params.header-mini.yaml +90 -90
- package/src/templates/components/hint/_examples.hint.njk +26 -26
- package/src/templates/components/hint/_macro.hint.njk +3 -3
- package/src/templates/components/hint/_template.hint.njk +3 -3
- package/src/templates/components/hint/params.hint.yaml +21 -21
- package/src/templates/components/input/_examples.input.njk +393 -393
- package/src/templates/components/input/_macro.input.njk +3 -3
- package/src/templates/components/input/_styles.input.css +17 -17
- package/src/templates/components/input/_template.input.njk +53 -53
- package/src/templates/components/input/params.input.yaml +80 -80
- package/src/templates/components/input-group/_examples.input-group.njk +558 -558
- package/src/templates/components/input-group/_macro.input-group.njk +3 -3
- package/src/templates/components/input-group/_template.input-group.njk +107 -107
- package/src/templates/components/input-group/params.input-group.yaml +123 -123
- package/src/templates/components/item/_examples.item.njk +370 -370
- package/src/templates/components/item/_macro.item.njk +3 -3
- package/src/templates/components/item/_template.item.njk +73 -73
- package/src/templates/components/item/params.item.yaml +101 -101
- package/src/templates/components/label/_examples.label.njk +58 -58
- package/src/templates/components/label/_macro.label.njk +5 -5
- package/src/templates/components/label/_template.label.njk +37 -37
- package/src/templates/components/label/params.label.yaml +28 -28
- package/src/templates/components/links-list/_examples.links-list.njk +761 -761
- package/src/templates/components/links-list/_macro.links-list.njk +3 -3
- package/src/templates/components/links-list/_template.links-list.njk +119 -119
- package/src/templates/components/links-list/params.links-list.yaml +101 -101
- package/src/templates/components/listbox/_examples.listbox.njk +813 -812
- package/src/templates/components/listbox/_macro.listbox.njk +3 -3
- package/src/templates/components/listbox/_styles.listbox.css +218 -218
- package/src/templates/components/listbox/_template.listbox.njk +90 -90
- package/src/templates/components/listbox/params.listbox.yaml +85 -85
- package/src/templates/components/media-object/_examples.media-object.njk +79 -79
- package/src/templates/components/media-object/_macro.media-object.njk +3 -3
- package/src/templates/components/media-object/_template.media-object.njk +21 -21
- package/src/templates/components/media-object/params.media-object.yaml +16 -16
- package/src/templates/components/menu-horizontal/_examples.menu-horizontal.njk +613 -613
- package/src/templates/components/menu-horizontal/_macro.menu-horizontal.njk +3 -3
- package/src/templates/components/menu-horizontal/_styles.menu-horizontal.css +167 -167
- package/src/templates/components/menu-horizontal/_template.menu-horizontal.njk +36 -36
- package/src/templates/components/menu-horizontal/params.menu-horizontal.yaml +53 -53
- package/src/templates/components/menu-navigation/_examples.menu-navigation.njk +1292 -1292
- package/src/templates/components/menu-navigation/_macro.menu-navigation.njk +3 -3
- package/src/templates/components/menu-navigation/_styles.menu-navigation.css +238 -238
- package/src/templates/components/menu-navigation/_template.menu-navigation.njk +87 -87
- package/src/templates/components/menu-navigation/params.menu-navigation.yaml +86 -86
- package/src/templates/components/menu-vertical/_examples.menu-vertical.njk +835 -835
- package/src/templates/components/menu-vertical/_macro.menu-vertical.njk +3 -3
- package/src/templates/components/menu-vertical/_template.menu-vertical.njk +92 -92
- package/src/templates/components/menu-vertical/params.menu-vertical.yaml +77 -77
- package/src/templates/components/menubar/_examples.menubar.njk +1843 -1843
- package/src/templates/components/menubar/_macro.menubar.njk +3 -3
- package/src/templates/components/menubar/_styles.menubar.css +259 -259
- package/src/templates/components/menubar/_template.menubar.njk +106 -106
- package/src/templates/components/menubar/params.menubar.yaml +130 -130
- package/src/templates/components/modal/_examples.modal.njk +432 -432
- package/src/templates/components/modal/_macro.modal.njk +3 -3
- package/src/templates/components/modal/_template.modal.njk +129 -129
- package/src/templates/components/modal/params.modal.yaml +77 -77
- package/src/templates/components/nav/_examples.nav.njk +468 -468
- package/src/templates/components/nav/_macro.nav.njk +3 -3
- package/src/templates/components/nav/_template.nav.njk +53 -53
- package/src/templates/components/nav/params.nav.yaml +61 -61
- package/src/templates/components/notification/_examples.notification.njk +277 -277
- package/src/templates/components/notification/_macro.notification.njk +3 -3
- package/src/templates/components/notification/_styles.notification.css +30 -30
- package/src/templates/components/notification/_template.notification.njk +86 -86
- package/src/templates/components/notification/params.notification.yaml +101 -101
- package/src/templates/components/pagination/_examples.pagination.njk +444 -444
- package/src/templates/components/pagination/_macro.pagination.njk +3 -3
- package/src/templates/components/pagination/_template.pagination.njk +162 -162
- package/src/templates/components/pagination/params.pagination.yaml +150 -150
- package/src/templates/components/pill/_examples.pill.njk +180 -180
- package/src/templates/components/pill/_macro.pill.njk +3 -3
- package/src/templates/components/pill/_styles.pill.css +59 -59
- package/src/templates/components/pill/_template.pill.njk +38 -38
- package/src/templates/components/pill/params.pill.yaml +28 -28
- package/src/templates/components/radios/_examples.radios.njk +698 -698
- package/src/templates/components/radios/_macro.radios.njk +5 -5
- package/src/templates/components/radios/_styles.radios.css +30 -30
- package/src/templates/components/radios/_template.radios.njk +133 -133
- package/src/templates/components/radios/params.radios.yaml +104 -104
- package/src/templates/components/searchbar/_examples.searchbar.njk +147 -147
- package/src/templates/components/searchbar/_macro.searchbar.njk +3 -3
- package/src/templates/components/searchbar/_template.searchbar.njk +45 -45
- package/src/templates/components/searchbar/params.searchbar.yaml +46 -46
- package/src/templates/components/select/_examples.select.njk +364 -364
- package/src/templates/components/select/_macro.select.njk +5 -5
- package/src/templates/components/select/_styles.select.css +45 -45
- package/src/templates/components/select/_template.select.njk +67 -67
- package/src/templates/components/select/params.select.yaml +93 -93
- package/src/templates/components/skip-link/_examples.skip-link.njk +31 -31
- package/src/templates/components/skip-link/_macro.skip-link.njk +3 -3
- package/src/templates/components/skip-link/_styles.skip-link.css +12 -12
- package/src/templates/components/skip-link/_template.skip-link.njk +4 -4
- package/src/templates/components/skip-link/params.skip-link.yaml +20 -20
- package/src/templates/components/spinner/_examples.spinner.njk +91 -101
- package/src/templates/components/spinner/_macro.spinner.njk +3 -3
- package/src/templates/components/spinner/_styles.spinner.css +33 -33
- package/src/templates/components/spinner/_template.spinner.njk +12 -12
- package/src/templates/components/spinner/params.spinner.yaml +12 -12
- package/src/templates/components/status/_examples.status.njk +80 -80
- package/src/templates/components/status/_macro.status.njk +3 -3
- package/src/templates/components/status/_template.status.njk +23 -23
- package/src/templates/components/status/params.status.yaml +24 -24
- package/src/templates/components/status-item/_examples.status-item.njk +319 -319
- package/src/templates/components/status-item/_macro.status-item.njk +3 -3
- package/src/templates/components/status-item/_template.status-item.njk +99 -99
- package/src/templates/components/status-item/params.status-item.yaml +106 -106
- package/src/templates/components/table/_examples.table.njk +705 -705
- package/src/templates/components/table/_macro.table.njk +3 -3
- package/src/templates/components/table/_styles.table.css +19 -19
- package/src/templates/components/table/_template.table.njk +68 -68
- package/src/templates/components/table/params.table.yaml +130 -130
- package/src/templates/components/table-advanced/_examples.table-advanced.njk +839 -839
- package/src/templates/components/table-advanced/_macro.table-advanced.njk +3 -3
- package/src/templates/components/table-advanced/_styles.table-advanced.css +63 -63
- package/src/templates/components/table-advanced/_template.table-advanced.njk +210 -210
- package/src/templates/components/table-advanced/params.table-advanced.yaml +160 -160
- package/src/templates/components/tabs/_examples.tabs.njk +588 -588
- package/src/templates/components/tabs/_macro.tabs.njk +3 -3
- package/src/templates/components/tabs/_styles.tabs.css +132 -132
- package/src/templates/components/tabs/_template.tabs.njk +70 -70
- package/src/templates/components/tabs/params.tabs.yaml +83 -83
- package/src/templates/components/textarea/_examples.textarea.njk +174 -174
- package/src/templates/components/textarea/_macro.textarea.njk +5 -5
- package/src/templates/components/textarea/_template.textarea.njk +47 -47
- package/src/templates/components/textarea/params.textarea.yaml +64 -64
- package/src/templates/components/toggle/_examples.toggle.njk +248 -248
- package/src/templates/components/toggle/_macro.toggle.njk +3 -3
- package/src/templates/components/toggle/_styles.toggle.css +31 -31
- package/src/templates/components/toggle/_template.toggle.njk +27 -27
- package/src/templates/components/toggle/params.toggle.yaml +69 -69
- package/src/templates/components/tooltip/_examples.tooltip.njk +134 -134
- package/src/templates/components/tooltip/_macro.tooltip.njk +3 -3
- package/src/templates/components/tooltip/_styles.tooltip.css +9 -9
- package/src/templates/components/tooltip/_template.tooltip.njk +40 -40
- package/src/templates/components/tooltip/params.tooltip.yaml +40 -40
- package/src/templates/components/tree/_examples.tree.njk +2671 -2671
- package/src/templates/components/tree/_macro.tree.njk +3 -3
- package/src/templates/components/tree/_styles.tree.css +54 -54
- package/src/templates/components/tree/_template.tree.njk +232 -232
- package/src/templates/components/tree/params.tree.yaml +173 -173
- package/src/templates/components/treegrid/_examples.treegrid.njk +1269 -1269
- package/src/templates/components/treegrid/_macro.treegrid.njk +3 -3
- package/src/templates/components/treegrid/_styles.treegrid.css +31 -31
- package/src/templates/components/treegrid/_template.treegrid.njk +90 -90
- package/src/templates/components/treegrid/params.treegrid.yaml +131 -131
- package/src/templates/includes/_abrir-notificaciones-extra.njk +2 -2
- package/src/templates/includes/_abrir-notificaciones.njk +2 -2
- package/src/templates/includes/_acciones-de-cabecera.njk +28 -28
- package/src/templates/includes/_ejemplo-titulo-h2-parrafo.njk +4 -4
- package/src/templates/includes/_ejemplo-titulo-parrafo.njk +4 -4
- package/src/templates/includes/_test-include.njk +13 -13
- package/src/templates/pages/_page.foot-headroom.njk +30 -30
- package/src/templates/pages/_page.foot.njk +5 -5
- package/src/templates/pages/_page.footer.njk +19 -19
- package/src/templates/pages/_page.head.njk +27 -27
- package/src/templates/pages/_page.notification-edit-inner-content.njk +31 -31
- package/src/templates/pages/_page.notification-edit.njk +30 -30
- package/src/templates/pages/_page.notification-footer.njk +32 -32
- package/src/templates/pages/_page.notification-header-fixed.njk +30 -30
- package/src/templates/pages/_page.notification-header.njk +31 -31
- package/src/templates/pages/_page.sidebar-content.njk +20 -20
- package/src/templates/pages/_page.spinner-block.njk +14 -14
- package/src/templates/pages/_page.spinner-show.njk +15 -15
- package/src/templates/pages/_page.spinner.njk +15 -15
- package/src/templates/pages/_template.edit-fixed-with-sticky-sidebar.njk +36 -36
- package/src/templates/pages/_template.edit-fixed.njk +74 -74
- package/src/templates/pages/_template.home.njk +111 -111
- package/src/templates/pages/_template.logged-out.njk +56 -56
- package/src/templates/pages/_template.logged-selector-fixed-headroom.njk +198 -198
- package/src/templates/pages/_template.logged-selector-fixed.njk +195 -195
- package/src/templates/pages/_template.logged-selector-subheader.njk +80 -80
- package/src/templates/pages/_template.logged-selector-with-sidebar.njk +28 -28
- package/src/templates/pages/_template.logged-selector.njk +195 -195
- package/src/templates/pages/_template.logged.njk +141 -141
- package/src/templates/pages/_template.mfe-iframe-content.njk +31 -31
- package/src/templates/pages/_template.mfe.njk +83 -83
- package/src/templates/pages/_template.test.njk +48 -48
- package/src/templates/pages/_template.with-header-advanced.njk +311 -311
- package/vite.config.js +1021 -982
|
@@ -1,698 +1,698 @@
|
|
|
1
|
-
{% from "components/fieldset/_macro.fieldset.njk" import componentFieldset %}
|
|
2
|
-
{% from "components/input/_macro.input.njk" import componentInput %}
|
|
3
|
-
{% from "components/radios/_macro.radios.njk" import componentRadios %}
|
|
4
|
-
|
|
5
|
-
{% macro telefonoContent(id='id') %}
|
|
6
|
-
{% call componentFieldset({
|
|
7
|
-
"legend": {
|
|
8
|
-
"text": "¿Cuál es tu número de teléfono fijo?",
|
|
9
|
-
"classes": "mb-sm sr-only"
|
|
10
|
-
}
|
|
11
|
-
}) %}
|
|
12
|
-
<div class="c-form-group">
|
|
13
|
-
{{ componentInput({
|
|
14
|
-
"label": {
|
|
15
|
-
"text": "Número de teléfono fijo"
|
|
16
|
-
},
|
|
17
|
-
"id": "telefono-" + id,
|
|
18
|
-
"name": "telefono-name-" + id
|
|
19
|
-
}) }}
|
|
20
|
-
</div>
|
|
21
|
-
{% endcall %}
|
|
22
|
-
{% endmacro %}
|
|
23
|
-
|
|
24
|
-
{% macro mobileContent(id='id') %}
|
|
25
|
-
{% call componentFieldset({
|
|
26
|
-
"legend": {
|
|
27
|
-
"text": "¿Cuál es tu número de teléfono móvil?",
|
|
28
|
-
"classes": "mb-sm sr-only"
|
|
29
|
-
}
|
|
30
|
-
}) %}
|
|
31
|
-
<div class="c-form-group">
|
|
32
|
-
{{ componentInput({
|
|
33
|
-
"label": {
|
|
34
|
-
"text": "Número de teléfono móvil"
|
|
35
|
-
},
|
|
36
|
-
"id": "mobile-" + id,
|
|
37
|
-
"name": "mobile-name-" + id
|
|
38
|
-
}) }}
|
|
39
|
-
</div>
|
|
40
|
-
{% endcall %}
|
|
41
|
-
{% endmacro %}
|
|
42
|
-
|
|
43
|
-
{% macro mobileErrorContent(id='id') %}
|
|
44
|
-
{% call componentFieldset({
|
|
45
|
-
"legend": {
|
|
46
|
-
"text": "¿Cuál es tu número de teléfono móvil?",
|
|
47
|
-
"classes": "mb-sm sr-only"
|
|
48
|
-
}
|
|
49
|
-
}) %}
|
|
50
|
-
<div class="c-form-group">
|
|
51
|
-
{{ componentInput({
|
|
52
|
-
"label": {
|
|
53
|
-
"text": "Número de teléfono móvil"
|
|
54
|
-
},
|
|
55
|
-
"id": "input-with-error-message-" + id,
|
|
56
|
-
"name": "test-name-" + id,
|
|
57
|
-
"errorMessage": {
|
|
58
|
-
"text": "Este campo no puede estar vacío"
|
|
59
|
-
}
|
|
60
|
-
}) }}
|
|
61
|
-
</div>
|
|
62
|
-
{% endcall %}
|
|
63
|
-
{% endmacro %}
|
|
64
|
-
|
|
65
|
-
{% macro grandchildContent(id='id') %}
|
|
66
|
-
{{ componentRadios({
|
|
67
|
-
"idPrefix": "grandchild-" + id,
|
|
68
|
-
"name": "grandchild-" + id,
|
|
69
|
-
"items": [
|
|
70
|
-
{
|
|
71
|
-
"name": "oficina-principal-" + id,
|
|
72
|
-
"id": "oficina-principal-id-" + id,
|
|
73
|
-
"value": "oficina-principal-" + id,
|
|
74
|
-
"checked": true,
|
|
75
|
-
"html": "Oficina principal"
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
"name": "oficina-secundaria-" + id,
|
|
79
|
-
"id": "oficina-secundaria-id-" + id,
|
|
80
|
-
"value": "oficina-secundaria-" + id,
|
|
81
|
-
"html": "Oficina secundaria"
|
|
82
|
-
}
|
|
83
|
-
]
|
|
84
|
-
}) }}
|
|
85
|
-
{% endmacro %}
|
|
86
|
-
|
|
87
|
-
{% macro nestedContent(id='id') %}
|
|
88
|
-
{{ componentRadios({
|
|
89
|
-
"idPrefix": "with-conditional-items-checked-nested-" + id,
|
|
90
|
-
"name": "with-conditional-items-checked-nested-" + id,
|
|
91
|
-
"items": [
|
|
92
|
-
{
|
|
93
|
-
"value": "oficinas-de-registro",
|
|
94
|
-
"text": "Oficinas de registro",
|
|
95
|
-
"checked": true,
|
|
96
|
-
"conditional": {
|
|
97
|
-
"html": grandchildContent('oficinas-de-registro-' + id).val
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
|
-
{
|
|
101
|
-
"value": "oficinas-locales",
|
|
102
|
-
"text": "Oficinas locales",
|
|
103
|
-
"conditional": {
|
|
104
|
-
"html": grandchildContent('oficinas-locales-' + id).val
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
]
|
|
108
|
-
}) }}
|
|
109
|
-
{% endmacro %}
|
|
110
|
-
|
|
111
|
-
{% set exampleComponent = "radios" %}
|
|
112
|
-
{% set examples = [
|
|
113
|
-
{
|
|
114
|
-
"name": "por defecto",
|
|
115
|
-
"data": {
|
|
116
|
-
"idPrefix": "default",
|
|
117
|
-
"name": "por defecto",
|
|
118
|
-
"fieldset": {
|
|
119
|
-
"legend": {
|
|
120
|
-
"text": "¿Quieres que te contactemos por correo electrónico?"
|
|
121
|
-
}
|
|
122
|
-
},
|
|
123
|
-
"hint": {
|
|
124
|
-
"text": "Sólo puedes seleccionar un elemento."
|
|
125
|
-
},
|
|
126
|
-
"items": [
|
|
127
|
-
{
|
|
128
|
-
"value": "si",
|
|
129
|
-
"text": "Si"
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
"value": "no",
|
|
133
|
-
"text": "No",
|
|
134
|
-
"checked": true
|
|
135
|
-
}
|
|
136
|
-
]
|
|
137
|
-
},
|
|
138
|
-
"visualDescription": "Grupo de radio buttons con pregunta en negro bold, subtexto en gris debajo. Dos opciones apiladas verticalmente:
|
|
139
|
-
"_generated": {
|
|
140
|
-
"hash": "c0661da8ddbe3c662dd90dd77321057d",
|
|
141
|
-
"version": "15.0.3",
|
|
142
|
-
"timestamp": "2026-01-30T19:11:59.793Z"
|
|
143
|
-
}
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
"name": "En línea",
|
|
147
|
-
"data": {
|
|
148
|
-
"idPrefix": "inline",
|
|
149
|
-
"classes": "flex",
|
|
150
|
-
"name": "inline",
|
|
151
|
-
"fieldset": {
|
|
152
|
-
"legend": {
|
|
153
|
-
"text": "¿Quieres que te contactemos por correo electrónico?"
|
|
154
|
-
}
|
|
155
|
-
},
|
|
156
|
-
"hint": {
|
|
157
|
-
"text": "Sólo puedes seleccionar un elemento."
|
|
158
|
-
},
|
|
159
|
-
"items": [
|
|
160
|
-
{
|
|
161
|
-
"value": "si",
|
|
162
|
-
"text": "Si",
|
|
163
|
-
"classes": "mr-sm"
|
|
164
|
-
},
|
|
165
|
-
{
|
|
166
|
-
"value": "no",
|
|
167
|
-
"text": "No",
|
|
168
|
-
"classes": "mr-sm",
|
|
169
|
-
"checked": true
|
|
170
|
-
}
|
|
171
|
-
]
|
|
172
|
-
},
|
|
173
|
-
"visualDescription": "Grupo de radio buttons con pregunta en negro bold, subtexto en gris debajo. Dos opciones dispuestas horizontalmente:
|
|
174
|
-
"_generated": {
|
|
175
|
-
"hash": "89b65d904ea4cd559f9055034b3948f0",
|
|
176
|
-
"version": "15.0.3",
|
|
177
|
-
"timestamp": "2026-01-30T19:11:59.793Z"
|
|
178
|
-
}
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
"name": "Con deshabilitado",
|
|
182
|
-
"data": {
|
|
183
|
-
"idPrefix": "example-disabled",
|
|
184
|
-
"name": "example-disabled",
|
|
185
|
-
"fieldset": {
|
|
186
|
-
"legend": {
|
|
187
|
-
"text": "¿Quieres que te contactemos por correo electrónico?"
|
|
188
|
-
}
|
|
189
|
-
},
|
|
190
|
-
"hint": {
|
|
191
|
-
"text": "Sólo puedes seleccionar un elemento."
|
|
192
|
-
},
|
|
193
|
-
"items": [
|
|
194
|
-
{
|
|
195
|
-
"value": "si",
|
|
196
|
-
"text": "Si",
|
|
197
|
-
"disabled": true,
|
|
198
|
-
"checked": true
|
|
199
|
-
},
|
|
200
|
-
{
|
|
201
|
-
"value": "no",
|
|
202
|
-
"text": "No",
|
|
203
|
-
"disabled": true
|
|
204
|
-
}
|
|
205
|
-
]
|
|
206
|
-
},
|
|
207
|
-
"visualDescription": "Grupo de radio buttons con pregunta en negro bold, subtexto en gris debajo. Dos opciones apiladas verticalmente en estado inactivo: ambos círculos en gris claro con borde gris tenue, uno con relleno gris y otro vacío. Fondo blanco con borde gris claro rodeando el componente, toda la sección presenta opacidad reducida.",
|
|
208
|
-
"_generated": {
|
|
209
|
-
"hash": "76d3dd45ed46bacb0935f0492fe74b22",
|
|
210
|
-
"version": "15.0.3",
|
|
211
|
-
"timestamp": "2026-01-30T19:11:59.793Z"
|
|
212
|
-
}
|
|
213
|
-
},
|
|
214
|
-
{
|
|
215
|
-
"name": "con un legend como encabezado",
|
|
216
|
-
"description": "Usa el parámetro <code>'heading'</code> para añadir un encabezado asociado al componente. Usa el parámetro <code>'headingLevel'</code> para establecer el nivel del encabezado. Por ejemplo: <code>'headingLevel': 3</code> creará un encabezado <code><h3></code>.",
|
|
217
|
-
"data": {
|
|
218
|
-
"idPrefix": "legend-as-page-heading",
|
|
219
|
-
"name": "legend-as-page-heading",
|
|
220
|
-
"fieldset": {
|
|
221
|
-
"legend": {
|
|
222
|
-
"text": "¿Cómo prefieres que te contactemos?",
|
|
223
|
-
"classes": "c-h2",
|
|
224
|
-
"isPageHeading": true
|
|
225
|
-
},
|
|
226
|
-
"headingLevel": 2
|
|
227
|
-
},
|
|
228
|
-
"hint": {
|
|
229
|
-
"text": "Selecciona una de las opciones."
|
|
230
|
-
},
|
|
231
|
-
"items": [
|
|
232
|
-
{
|
|
233
|
-
"value": "part-2",
|
|
234
|
-
"text": "Por correo electrónico",
|
|
235
|
-
"hint": {
|
|
236
|
-
"text": "Asegúrate de que nuestros correos no lleguen a la bandeja de spam."
|
|
237
|
-
}
|
|
238
|
-
},
|
|
239
|
-
{
|
|
240
|
-
"value": "part-3",
|
|
241
|
-
"text": "Por correo postal",
|
|
242
|
-
"hint": {
|
|
243
|
-
"text": "Asegúrate de haber introducido correctamente tu dirección."
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
]
|
|
247
|
-
},
|
|
248
|
-
"visualDescription": "Grupo de radio buttons con borde gris de 1px y esquinas redondeadas, fondo blanco. Título en negro tamaño mediano peso normal, pregunta en negro peso negrita, dos opciones con círculos vacíos alineados verticalmente, labels en negro peso normal y texto descriptivo gris claro debajo de cada opción.",
|
|
249
|
-
"_generated": {
|
|
250
|
-
"hash": "de3c20041e27faeae9f61e568dbd2654",
|
|
251
|
-
"version": "15.0.3",
|
|
252
|
-
"timestamp": "2026-01-30T19:12:09.514Z"
|
|
253
|
-
}
|
|
254
|
-
},
|
|
255
|
-
{
|
|
256
|
-
"name": "con un legend del tamaño de un encabezado h2",
|
|
257
|
-
"data": {
|
|
258
|
-
"idPrefix": "medium-legend",
|
|
259
|
-
"name": "medium-legend",
|
|
260
|
-
"fieldset": {
|
|
261
|
-
"legend": {
|
|
262
|
-
"text": "¿Cómo prefieres que te contactemos?",
|
|
263
|
-
"classes": "c-h2"
|
|
264
|
-
}
|
|
265
|
-
},
|
|
266
|
-
"hint": {
|
|
267
|
-
"text": "Selecciona una de las opciones."
|
|
268
|
-
},
|
|
269
|
-
"items": [
|
|
270
|
-
{
|
|
271
|
-
"value": "part-2",
|
|
272
|
-
"text": "Por correo electrónico",
|
|
273
|
-
"hint": {
|
|
274
|
-
"text": "Asegúrate de que nuestros correos no lleguen a la bandeja de spam."
|
|
275
|
-
}
|
|
276
|
-
},
|
|
277
|
-
{
|
|
278
|
-
"value": "part-3",
|
|
279
|
-
"text": "Por correo postal",
|
|
280
|
-
"hint": {
|
|
281
|
-
"text": "Asegúrate de haber introducido correctamente tu dirección."
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
]
|
|
285
|
-
},
|
|
286
|
-
"visualDescription": "Grupo de radio buttons con borde gris de 1px y esquinas redondeadas, fondo blanco. Título en gris tamaño pequeño peso normal arriba, pregunta en negro tamaño grande peso negrita, dos opciones con círculos vacíos alineados verticalmente, labels en negro peso normal y texto descriptivo gris claro debajo de cada opción.",
|
|
287
|
-
"_generated": {
|
|
288
|
-
"hash": "b56321221bce74c0f9bf1cb04441eb60",
|
|
289
|
-
"version": "15.0.3",
|
|
290
|
-
"timestamp": "2026-01-30T19:12:09.514Z"
|
|
291
|
-
}
|
|
292
|
-
},
|
|
293
|
-
{
|
|
294
|
-
"name": "con un divisor",
|
|
295
|
-
"data": {
|
|
296
|
-
"idPrefix": "example-divider",
|
|
297
|
-
"name": "example-divider",
|
|
298
|
-
"fieldset": {
|
|
299
|
-
"legend": {
|
|
300
|
-
"text": "¿Cómo prefieres que te contactemos?"
|
|
301
|
-
}
|
|
302
|
-
},
|
|
303
|
-
"items": [
|
|
304
|
-
{
|
|
305
|
-
"value": "correo-electronico",
|
|
306
|
-
"text": "Correo electrónico"
|
|
307
|
-
},
|
|
308
|
-
{
|
|
309
|
-
"value": "correo-postal",
|
|
310
|
-
"text": "Correo postal"
|
|
311
|
-
},
|
|
312
|
-
{
|
|
313
|
-
"divider": "o bien"
|
|
314
|
-
},
|
|
315
|
-
{
|
|
316
|
-
"value": "telefono",
|
|
317
|
-
"text": "Teléfono"
|
|
318
|
-
}
|
|
319
|
-
]
|
|
320
|
-
},
|
|
321
|
-
"visualDescription": "Grupo de radio buttons con borde gris de 1px y esquinas redondeadas, fondo blanco. Título en gris tamaño pequeño peso normal arriba, pregunta en negro peso negrita debajo, cuatro opciones con círculos vacíos alineados verticalmente, labels en negro peso normal. Línea horizontal gris tenue separa visualmente la tercera y cuarta opción.",
|
|
322
|
-
"_generated": {
|
|
323
|
-
"hash": "74a74b319adb3a404bb7a5952619f265",
|
|
324
|
-
"version": "15.0.3",
|
|
325
|
-
"timestamp": "2026-01-30T19:12:09.514Z"
|
|
326
|
-
}
|
|
327
|
-
},
|
|
328
|
-
{
|
|
329
|
-
"name": "Con pistas en los items",
|
|
330
|
-
"data": {
|
|
331
|
-
"idPrefix": "hints-on-items",
|
|
332
|
-
"name": "hints-on-items",
|
|
333
|
-
"fieldset": {
|
|
334
|
-
"legend": {
|
|
335
|
-
"text": "¿Cómo prefieres que te contactemos?",
|
|
336
|
-
"isPageHeading": true
|
|
337
|
-
}
|
|
338
|
-
},
|
|
339
|
-
"items": [
|
|
340
|
-
{
|
|
341
|
-
"value": "correo-electronico",
|
|
342
|
-
"text": "Correo electrónico",
|
|
343
|
-
"hint": {
|
|
344
|
-
"text": "Asegúrate de que el correo no llega a la bandeja de spam."
|
|
345
|
-
}
|
|
346
|
-
},
|
|
347
|
-
{
|
|
348
|
-
"value": "correo-postal",
|
|
349
|
-
"text": "Correo postal",
|
|
350
|
-
"hint": {
|
|
351
|
-
"text": "Asegúrate de haber introducido la dirección postal correctamente."
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
]
|
|
355
|
-
},
|
|
356
|
-
"visualDescription": "Grupo de dos radio buttons con círculos vacíos color gris oscuro a la izquierda. Cada opción tiene un label en negro peso normal y texto de ayuda en gris peso normal debajo del label. Fondo blanco sin bordes divisores entre opciones, espaciado vertical generoso.",
|
|
357
|
-
"_generated": {
|
|
358
|
-
"hash": "5d302782a8e83b6f03f6f95638d8ee1b",
|
|
359
|
-
"version": "15.0.3",
|
|
360
|
-
"timestamp": "2026-01-30T19:12:18.726Z"
|
|
361
|
-
}
|
|
362
|
-
},
|
|
363
|
-
{
|
|
364
|
-
"name": "con líneas divisorias",
|
|
365
|
-
"data": {
|
|
366
|
-
"idPrefix": "has-dividers",
|
|
367
|
-
"name": "has-dividers",
|
|
368
|
-
"fieldset": {
|
|
369
|
-
"legend": {
|
|
370
|
-
"text": "¿Cómo prefieres que te contactemos?"
|
|
371
|
-
}
|
|
372
|
-
},
|
|
373
|
-
"hint": {
|
|
374
|
-
"text": "Sólo puedes elegir un elemento."
|
|
375
|
-
},
|
|
376
|
-
"hasDividers": true,
|
|
377
|
-
"items": [
|
|
378
|
-
{
|
|
379
|
-
"value": "correo-electronico",
|
|
380
|
-
"text": "Correo electrónico",
|
|
381
|
-
"classes": "font-normal",
|
|
382
|
-
"hint": {
|
|
383
|
-
"text": "Asegúrate de que el correo no llega a la bandeja de spam."
|
|
384
|
-
}
|
|
385
|
-
},
|
|
386
|
-
{
|
|
387
|
-
"value": "correo-postal",
|
|
388
|
-
"text": "Correo postal",
|
|
389
|
-
"hint": {
|
|
390
|
-
"text": "Asegúrate de haber introducido la dirección postal correctamente."
|
|
391
|
-
}
|
|
392
|
-
}
|
|
393
|
-
]
|
|
394
|
-
},
|
|
395
|
-
"visualDescription": "Grupo de dos radio buttons con círculos vacíos color gris oscuro a la izquierda. Cada opción tiene un label en negro peso normal y texto de ayuda en gris peso normal debajo del label. Línea divisora horizontal gris clara separa las dos opciones, fondo blanco, espaciado vertical generoso.",
|
|
396
|
-
"_generated": {
|
|
397
|
-
"hash": "b17432d8429d47b713eaf3e8954a1835",
|
|
398
|
-
"version": "15.0.3",
|
|
399
|
-
"timestamp": "2026-01-30T19:12:18.726Z"
|
|
400
|
-
}
|
|
401
|
-
},
|
|
402
|
-
{
|
|
403
|
-
"name": "Con clases de CSS aplicadas",
|
|
404
|
-
"description": "Los parámetros <code>classes</code> nos permiten aplicar clases de Tailwind CSS a nuestro componente.",
|
|
405
|
-
"data": {
|
|
406
|
-
"idPrefix": "classes",
|
|
407
|
-
"name": "classes",
|
|
408
|
-
"fieldset": {
|
|
409
|
-
"legend": {
|
|
410
|
-
"text": "¿Cómo prefieres que te contactemos?",
|
|
411
|
-
"isPageHeading": true
|
|
412
|
-
}
|
|
413
|
-
},
|
|
414
|
-
"items": [
|
|
415
|
-
{
|
|
416
|
-
"value": "correo-electronico",
|
|
417
|
-
"text": "Correo electrónico",
|
|
418
|
-
"hint": {
|
|
419
|
-
"text": "Asegúrate de que el correo no llega a la bandeja de spam."
|
|
420
|
-
},
|
|
421
|
-
"classes": "bg-primary-light"
|
|
422
|
-
},
|
|
423
|
-
{
|
|
424
|
-
"value": "correo-postal",
|
|
425
|
-
"text": "Correo postal",
|
|
426
|
-
"hint": {
|
|
427
|
-
"text": "Asegúrate de haber introducido la dirección postal correctamente."
|
|
428
|
-
},
|
|
429
|
-
"classes": "bg-neutral-lighter"
|
|
430
|
-
}
|
|
431
|
-
]
|
|
432
|
-
},
|
|
433
|
-
"visualDescription": "Grupo de dos radio buttons con círculos vacíos color gris oscuro a la izquierda sobre fondo celeste claro. Cada opción tiene un label en negro peso normal y texto de ayuda en gris peso normal debajo del label. Línea divisora horizontal gris clara separa las dos opciones, espaciado vertical generoso.",
|
|
434
|
-
"_generated": {
|
|
435
|
-
"hash": "d00c76a8f4bdd98118baca3781c2efb8",
|
|
436
|
-
"version": "15.0.3",
|
|
437
|
-
"timestamp": "2026-01-30T19:12:18.726Z"
|
|
438
|
-
}
|
|
439
|
-
},
|
|
440
|
-
{
|
|
441
|
-
"name": "sin fieldset",
|
|
442
|
-
"description": "Usa este ejemplo si vas a escribir tú mismo un fieldset, rodeándolo. Recuerda que el uso de fieldset es necesario por accesibilidad.",
|
|
443
|
-
"data": {
|
|
444
|
-
"idPrefix": "without-fieldset",
|
|
445
|
-
"name": "without-fieldset",
|
|
446
|
-
"items": [
|
|
447
|
-
{
|
|
448
|
-
"value": "correo-electronico",
|
|
449
|
-
"text": "Correo electrónico"
|
|
450
|
-
},
|
|
451
|
-
{
|
|
452
|
-
"value": "correp-postal",
|
|
453
|
-
"text": "Correo postal"
|
|
454
|
-
},
|
|
455
|
-
{
|
|
456
|
-
"value": "telefono",
|
|
457
|
-
"text": "Teléfono"
|
|
458
|
-
}
|
|
459
|
-
]
|
|
460
|
-
},
|
|
461
|
-
"visualDescription": "Grupo de tres radio buttons circulares no seleccionados con labels en texto negro tamaño regular. Fondo blanco sin contenedor visible. Título superior en negro pequeño.",
|
|
462
|
-
"_generated": {
|
|
463
|
-
"hash": "4290d8a36fbe37307edb99f35b807694",
|
|
464
|
-
"version": "15.0.3",
|
|
465
|
-
"timestamp": "2026-01-30T19:12:27.479Z"
|
|
466
|
-
}
|
|
467
|
-
},
|
|
468
|
-
{
|
|
469
|
-
"name": "con fieldset y mensaje de error",
|
|
470
|
-
"data": {
|
|
471
|
-
"idPrefix": "fieldset-and-error",
|
|
472
|
-
"name": "fieldset-and-error",
|
|
473
|
-
"errorMessage": {
|
|
474
|
-
"text": "Tienes que seleccionar al menos una opción"
|
|
475
|
-
},
|
|
476
|
-
"fieldset": {
|
|
477
|
-
"legend": {
|
|
478
|
-
"text": "¿Quieres que te contactemos por correo electrónico?"
|
|
479
|
-
}
|
|
480
|
-
},
|
|
481
|
-
"items": [
|
|
482
|
-
{
|
|
483
|
-
"value": "si",
|
|
484
|
-
"text": "Si"
|
|
485
|
-
},
|
|
486
|
-
{
|
|
487
|
-
"value": "no",
|
|
488
|
-
"text": "No",
|
|
489
|
-
"checked": true
|
|
490
|
-
}
|
|
491
|
-
]
|
|
492
|
-
},
|
|
493
|
-
"visualDescription": "Fieldset con borde gris de 1px conteniendo pregunta en texto negro peso normal, mensaje de error rojo debajo, y dos radio buttons circulares donde el segundo está seleccionado con punto azul central. Fondo blanco y título superior en negro pequeño.",
|
|
494
|
-
"_generated": {
|
|
495
|
-
"hash": "9da9c1e5fd363b09b674d053e7ee9801",
|
|
496
|
-
"version": "15.0.3",
|
|
497
|
-
"timestamp": "2026-01-30T19:12:27.479Z"
|
|
498
|
-
}
|
|
499
|
-
},
|
|
500
|
-
{
|
|
501
|
-
"name": "con un texto de item muy largo",
|
|
502
|
-
"data": {
|
|
503
|
-
"idPrefix": "very-long",
|
|
504
|
-
"name": "very-long",
|
|
505
|
-
"hint": {
|
|
506
|
-
"text": "Nullam id dolor id nibh ultricies vehicula ut id elit."
|
|
507
|
-
},
|
|
508
|
-
"errorMessage": {
|
|
509
|
-
"text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
|
|
510
|
-
},
|
|
511
|
-
"fieldset": {
|
|
512
|
-
"legend": {
|
|
513
|
-
"text": "Maecenas faucibus mollis interdum?"
|
|
514
|
-
}
|
|
515
|
-
},
|
|
516
|
-
"items": [
|
|
517
|
-
{
|
|
518
|
-
"value": "nullam",
|
|
519
|
-
"text": "Nullam id dolor id nibh ultricies vehicula ut id elit. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Maecenas faucibus mollis interdum. Donec id elit non mi porta gravida at eget metus."
|
|
520
|
-
},
|
|
521
|
-
{
|
|
522
|
-
"value": "aenean",
|
|
523
|
-
"text": "Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Donec sed odio dui. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras mattis consectetur purus sit amet fermentum."
|
|
524
|
-
},
|
|
525
|
-
{
|
|
526
|
-
"value": "fusce",
|
|
527
|
-
"text": "Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Etiam porta sem malesuada magna mollis euismod. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. Sed posuere consectetur est at lobortis."
|
|
528
|
-
}
|
|
529
|
-
]
|
|
530
|
-
},
|
|
531
|
-
"visualDescription": "Pregunta en texto negro peso negrita seguida de subtexto gris claro tamaño pequeño. Advertencia en texto rojo debajo del subtexto. Tres radio buttons circulares no seleccionados con labels extensos en texto negro tamaño regular ocupando múltiples líneas. Fondo blanco y borde gris delgado alrededor del contenedor.",
|
|
532
|
-
"_generated": {
|
|
533
|
-
"hash": "3150ae62c72805a0b6d63bb1296dc5a2",
|
|
534
|
-
"version": "15.0.3",
|
|
535
|
-
"timestamp": "2026-01-30T19:12:27.479Z"
|
|
536
|
-
}
|
|
537
|
-
},
|
|
538
|
-
{
|
|
539
|
-
"name": "con items condicionales",
|
|
540
|
-
"description": "El contenido de cada condicional es una agrupación, y como tal, se deben agrupar con una etiqueta <code><fieldset></code> o bien de una etiqueta <code><div></code> con <code>role=\"group\"</code> que tenga un <code>aria-label</code> o <code>aria-labelledby</code>.",
|
|
541
|
-
"data": {
|
|
542
|
-
"idPrefix": "conditional-items",
|
|
543
|
-
"name": "conditional-items",
|
|
544
|
-
"fieldset": {
|
|
545
|
-
"legend": {
|
|
546
|
-
"text": "¿Cómo quieres que te contactemos?"
|
|
547
|
-
}
|
|
548
|
-
},
|
|
549
|
-
"items": [
|
|
550
|
-
{
|
|
551
|
-
"value": "correo-electronico",
|
|
552
|
-
"text": "Correo electrónico",
|
|
553
|
-
"conditional": {
|
|
554
|
-
"html": mobileContent('1').val
|
|
555
|
-
}
|
|
556
|
-
},
|
|
557
|
-
{
|
|
558
|
-
"value": "telefono",
|
|
559
|
-
"text": "Teléfono",
|
|
560
|
-
"checked": true,
|
|
561
|
-
"conditional": {
|
|
562
|
-
"html": telefonoContent('2').val
|
|
563
|
-
}
|
|
564
|
-
},
|
|
565
|
-
{
|
|
566
|
-
"value": "mensaje-SMS",
|
|
567
|
-
"text": "Sin conditional"
|
|
568
|
-
}
|
|
569
|
-
]
|
|
570
|
-
},
|
|
571
|
-
"visualDescription": "Grupo de radio buttons con pregunta en texto negro regular arriba. Tres opciones verticales: primera sin seleccionar, segunda seleccionada en azul con círculo relleno y campo de texto con label gris y borde gris de 1px indentado debajo, tercera sin seleccionar. Fondo blanco, espaciado vertical consistente entre opciones.",
|
|
572
|
-
"_generated": {
|
|
573
|
-
"hash": "470864e9ae3ad08027bd0a55ad4e8f19",
|
|
574
|
-
"version": "15.0.3",
|
|
575
|
-
"timestamp": "2026-01-30T19:12:38.592Z"
|
|
576
|
-
}
|
|
577
|
-
},
|
|
578
|
-
{
|
|
579
|
-
"name": "con item condicional seleccionado",
|
|
580
|
-
"description": "Usa el parámetro <code>'checked': true</code> para mostrar un item condicional seleccionado. El contenido de cada condicional es una agrupación, y como tal, se deben agrupar con una etiqueta <code><fieldset></code> o bien de una etiqueta <code><div></code> con <code>role=\"group\"</code> que tenga un <code>aria-label</code> o <code>aria-labelledby</code>.",
|
|
581
|
-
"data": {
|
|
582
|
-
"idPrefix": "conditional-item-checked",
|
|
583
|
-
"name": "conditional-item-checked",
|
|
584
|
-
"fieldset": {
|
|
585
|
-
"legend": {
|
|
586
|
-
"text": "¿Cómo quieres que te contactemos?"
|
|
587
|
-
}
|
|
588
|
-
},
|
|
589
|
-
"items": [
|
|
590
|
-
{
|
|
591
|
-
"value": "correo-electronico",
|
|
592
|
-
"text": "Correo electrónico",
|
|
593
|
-
"conditional": {
|
|
594
|
-
"html": telefonoContent('4').val
|
|
595
|
-
}
|
|
596
|
-
},
|
|
597
|
-
{
|
|
598
|
-
"value": "telefono",
|
|
599
|
-
"text": "Teléfono",
|
|
600
|
-
"checked": true,
|
|
601
|
-
"conditional": {
|
|
602
|
-
"html": mobileContent('5').val
|
|
603
|
-
}
|
|
604
|
-
},
|
|
605
|
-
{
|
|
606
|
-
"value": "mensaje-SMS",
|
|
607
|
-
"text": "Mensaje SMS",
|
|
608
|
-
"conditional": {
|
|
609
|
-
"html": mobileContent('6').val
|
|
610
|
-
}
|
|
611
|
-
}
|
|
612
|
-
]
|
|
613
|
-
},
|
|
614
|
-
"visualDescription": "Grupo de radio buttons con pregunta en texto negro regular arriba. Tres opciones verticales: primera sin seleccionar, segunda seleccionada con círculo azul relleno y campo de texto con label gris y borde gris de 1px indentado debajo, tercera sin seleccionar. Fondo blanco con borde gris claro envolviendo todo el grupo.",
|
|
615
|
-
"_generated": {
|
|
616
|
-
"hash": "6d91710ed77fa48707b34ce9df67c197",
|
|
617
|
-
"version": "15.0.3",
|
|
618
|
-
"timestamp": "2026-01-30T19:12:38.593Z"
|
|
619
|
-
}
|
|
620
|
-
},
|
|
621
|
-
{
|
|
622
|
-
"name": "con clases opcionales del form-group mostrando un error del grupo",
|
|
623
|
-
"data": {
|
|
624
|
-
"idPrefix": "classes-group-error",
|
|
625
|
-
"name": "classes-group-error",
|
|
626
|
-
"formGroup": {
|
|
627
|
-
"classes": "c-form-group--error"
|
|
628
|
-
},
|
|
629
|
-
"fieldset": {
|
|
630
|
-
"legend": {
|
|
631
|
-
"text": "¿Cómo quieres que te contactemos?"
|
|
632
|
-
}
|
|
633
|
-
},
|
|
634
|
-
"items": [
|
|
635
|
-
{
|
|
636
|
-
"value": "correo-electronico",
|
|
637
|
-
"text": "Correo electrónico",
|
|
638
|
-
"conditional": {
|
|
639
|
-
"html": telefonoContent('5').val
|
|
640
|
-
}
|
|
641
|
-
},
|
|
642
|
-
{
|
|
643
|
-
"value": "telefono",
|
|
644
|
-
"text": "Teléfono",
|
|
645
|
-
"checked": true,
|
|
646
|
-
"conditional": {
|
|
647
|
-
"html": mobileErrorContent('1').val
|
|
648
|
-
}
|
|
649
|
-
},
|
|
650
|
-
{
|
|
651
|
-
"value": "mensaje-SMS",
|
|
652
|
-
"text": "Mensaje SMS",
|
|
653
|
-
"conditional": {
|
|
654
|
-
"html": mobileContent('7').val
|
|
655
|
-
}
|
|
656
|
-
}
|
|
657
|
-
]
|
|
658
|
-
},
|
|
659
|
-
"visualDescription": "Grupo de radio buttons con pregunta en texto negro regular arriba. Tres opciones verticales: primera sin seleccionar, segunda seleccionada con círculo azul relleno y campo de texto con borde rojo de 2px más mensaje de error en texto rojo pequeño debajo, tercera con círculo rojo en estado error. Fondo blanco con borde gris claro envolviendo el grupo.",
|
|
660
|
-
"_generated": {
|
|
661
|
-
"hash": "fcc9b7451829b59a5fd3746bebf3a50d",
|
|
662
|
-
"version": "15.0.3",
|
|
663
|
-
"timestamp": "2026-01-30T19:12:38.593Z"
|
|
664
|
-
}
|
|
665
|
-
},
|
|
666
|
-
{
|
|
667
|
-
"name": "peque",
|
|
668
|
-
"data": {
|
|
669
|
-
"idPrefix": "small",
|
|
670
|
-
"name": "peque",
|
|
671
|
-
"classes": "c-radios--sm",
|
|
672
|
-
"items": [
|
|
673
|
-
{
|
|
674
|
-
"value": "si",
|
|
675
|
-
"text": "Si",
|
|
676
|
-
"classes": "-mt-base",
|
|
677
|
-
"label": {
|
|
678
|
-
"classes": "text-sm -mt-1"
|
|
679
|
-
}
|
|
680
|
-
},
|
|
681
|
-
{
|
|
682
|
-
"value": "no",
|
|
683
|
-
"text": "No",
|
|
684
|
-
"classes": "-mt-base",
|
|
685
|
-
"label": {
|
|
686
|
-
"classes": "text-sm -mt-1"
|
|
687
|
-
}
|
|
688
|
-
}
|
|
689
|
-
]
|
|
690
|
-
},
|
|
691
|
-
"visualDescription": "Grupo de dos radio buttons con labels \"Si\" y \"No\" en texto negro de tamaño pequeño. Fondo blanco, radio buttons circulares con borde gris, espaciado vertical compacto entre opciones. Título \"peque\" en negro arriba del grupo.",
|
|
692
|
-
"_generated": {
|
|
693
|
-
"hash": "a01fcfd4da2fc1243bb0b1883e4df2ce",
|
|
694
|
-
"version": "15.0.3",
|
|
695
|
-
"timestamp": "2026-01-30T19:12:44.531Z"
|
|
696
|
-
}
|
|
697
|
-
}
|
|
698
|
-
] %}
|
|
1
|
+
{% from "components/fieldset/_macro.fieldset.njk" import componentFieldset %}
|
|
2
|
+
{% from "components/input/_macro.input.njk" import componentInput %}
|
|
3
|
+
{% from "components/radios/_macro.radios.njk" import componentRadios %}
|
|
4
|
+
|
|
5
|
+
{% macro telefonoContent(id='id') %}
|
|
6
|
+
{% call componentFieldset({
|
|
7
|
+
"legend": {
|
|
8
|
+
"text": "¿Cuál es tu número de teléfono fijo?",
|
|
9
|
+
"classes": "mb-sm sr-only"
|
|
10
|
+
}
|
|
11
|
+
}) %}
|
|
12
|
+
<div class="c-form-group">
|
|
13
|
+
{{ componentInput({
|
|
14
|
+
"label": {
|
|
15
|
+
"text": "Número de teléfono fijo"
|
|
16
|
+
},
|
|
17
|
+
"id": "telefono-" + id,
|
|
18
|
+
"name": "telefono-name-" + id
|
|
19
|
+
}) }}
|
|
20
|
+
</div>
|
|
21
|
+
{% endcall %}
|
|
22
|
+
{% endmacro %}
|
|
23
|
+
|
|
24
|
+
{% macro mobileContent(id='id') %}
|
|
25
|
+
{% call componentFieldset({
|
|
26
|
+
"legend": {
|
|
27
|
+
"text": "¿Cuál es tu número de teléfono móvil?",
|
|
28
|
+
"classes": "mb-sm sr-only"
|
|
29
|
+
}
|
|
30
|
+
}) %}
|
|
31
|
+
<div class="c-form-group">
|
|
32
|
+
{{ componentInput({
|
|
33
|
+
"label": {
|
|
34
|
+
"text": "Número de teléfono móvil"
|
|
35
|
+
},
|
|
36
|
+
"id": "mobile-" + id,
|
|
37
|
+
"name": "mobile-name-" + id
|
|
38
|
+
}) }}
|
|
39
|
+
</div>
|
|
40
|
+
{% endcall %}
|
|
41
|
+
{% endmacro %}
|
|
42
|
+
|
|
43
|
+
{% macro mobileErrorContent(id='id') %}
|
|
44
|
+
{% call componentFieldset({
|
|
45
|
+
"legend": {
|
|
46
|
+
"text": "¿Cuál es tu número de teléfono móvil?",
|
|
47
|
+
"classes": "mb-sm sr-only"
|
|
48
|
+
}
|
|
49
|
+
}) %}
|
|
50
|
+
<div class="c-form-group">
|
|
51
|
+
{{ componentInput({
|
|
52
|
+
"label": {
|
|
53
|
+
"text": "Número de teléfono móvil"
|
|
54
|
+
},
|
|
55
|
+
"id": "input-with-error-message-" + id,
|
|
56
|
+
"name": "test-name-" + id,
|
|
57
|
+
"errorMessage": {
|
|
58
|
+
"text": "Este campo no puede estar vacío"
|
|
59
|
+
}
|
|
60
|
+
}) }}
|
|
61
|
+
</div>
|
|
62
|
+
{% endcall %}
|
|
63
|
+
{% endmacro %}
|
|
64
|
+
|
|
65
|
+
{% macro grandchildContent(id='id') %}
|
|
66
|
+
{{ componentRadios({
|
|
67
|
+
"idPrefix": "grandchild-" + id,
|
|
68
|
+
"name": "grandchild-" + id,
|
|
69
|
+
"items": [
|
|
70
|
+
{
|
|
71
|
+
"name": "oficina-principal-" + id,
|
|
72
|
+
"id": "oficina-principal-id-" + id,
|
|
73
|
+
"value": "oficina-principal-" + id,
|
|
74
|
+
"checked": true,
|
|
75
|
+
"html": "Oficina principal"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"name": "oficina-secundaria-" + id,
|
|
79
|
+
"id": "oficina-secundaria-id-" + id,
|
|
80
|
+
"value": "oficina-secundaria-" + id,
|
|
81
|
+
"html": "Oficina secundaria"
|
|
82
|
+
}
|
|
83
|
+
]
|
|
84
|
+
}) }}
|
|
85
|
+
{% endmacro %}
|
|
86
|
+
|
|
87
|
+
{% macro nestedContent(id='id') %}
|
|
88
|
+
{{ componentRadios({
|
|
89
|
+
"idPrefix": "with-conditional-items-checked-nested-" + id,
|
|
90
|
+
"name": "with-conditional-items-checked-nested-" + id,
|
|
91
|
+
"items": [
|
|
92
|
+
{
|
|
93
|
+
"value": "oficinas-de-registro",
|
|
94
|
+
"text": "Oficinas de registro",
|
|
95
|
+
"checked": true,
|
|
96
|
+
"conditional": {
|
|
97
|
+
"html": grandchildContent('oficinas-de-registro-' + id).val
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"value": "oficinas-locales",
|
|
102
|
+
"text": "Oficinas locales",
|
|
103
|
+
"conditional": {
|
|
104
|
+
"html": grandchildContent('oficinas-locales-' + id).val
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
]
|
|
108
|
+
}) }}
|
|
109
|
+
{% endmacro %}
|
|
110
|
+
|
|
111
|
+
{% set exampleComponent = "radios" %}
|
|
112
|
+
{% set examples = [
|
|
113
|
+
{
|
|
114
|
+
"name": "por defecto",
|
|
115
|
+
"data": {
|
|
116
|
+
"idPrefix": "default",
|
|
117
|
+
"name": "por defecto",
|
|
118
|
+
"fieldset": {
|
|
119
|
+
"legend": {
|
|
120
|
+
"text": "¿Quieres que te contactemos por correo electrónico?"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"hint": {
|
|
124
|
+
"text": "Sólo puedes seleccionar un elemento."
|
|
125
|
+
},
|
|
126
|
+
"items": [
|
|
127
|
+
{
|
|
128
|
+
"value": "si",
|
|
129
|
+
"text": "Si"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"value": "no",
|
|
133
|
+
"text": "No",
|
|
134
|
+
"checked": true
|
|
135
|
+
}
|
|
136
|
+
]
|
|
137
|
+
},
|
|
138
|
+
"visualDescription": "Grupo de radio buttons con pregunta en negro bold, subtexto en gris debajo. Dos opciones apiladas verticalmente: primera con círculo vacío blanco con borde gris, segunda con círculo relleno azul oscuro indicando selección. Fondo blanco con borde gris claro rodeando todo el componente.",
|
|
139
|
+
"_generated": {
|
|
140
|
+
"hash": "c0661da8ddbe3c662dd90dd77321057d",
|
|
141
|
+
"version": "15.0.3",
|
|
142
|
+
"timestamp": "2026-01-30T19:11:59.793Z"
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"name": "En línea",
|
|
147
|
+
"data": {
|
|
148
|
+
"idPrefix": "inline",
|
|
149
|
+
"classes": "flex",
|
|
150
|
+
"name": "inline",
|
|
151
|
+
"fieldset": {
|
|
152
|
+
"legend": {
|
|
153
|
+
"text": "¿Quieres que te contactemos por correo electrónico?"
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
"hint": {
|
|
157
|
+
"text": "Sólo puedes seleccionar un elemento."
|
|
158
|
+
},
|
|
159
|
+
"items": [
|
|
160
|
+
{
|
|
161
|
+
"value": "si",
|
|
162
|
+
"text": "Si",
|
|
163
|
+
"classes": "mr-sm"
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
"value": "no",
|
|
167
|
+
"text": "No",
|
|
168
|
+
"classes": "mr-sm",
|
|
169
|
+
"checked": true
|
|
170
|
+
}
|
|
171
|
+
]
|
|
172
|
+
},
|
|
173
|
+
"visualDescription": "Grupo de radio buttons con pregunta en negro bold, subtexto en gris debajo. Dos opciones dispuestas horizontalmente: primera con círculo vacío blanco con borde gris, segunda con círculo relleno azul con marca de selección blanca. Fondo blanco sin borde visible.",
|
|
174
|
+
"_generated": {
|
|
175
|
+
"hash": "89b65d904ea4cd559f9055034b3948f0",
|
|
176
|
+
"version": "15.0.3",
|
|
177
|
+
"timestamp": "2026-01-30T19:11:59.793Z"
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
"name": "Con deshabilitado",
|
|
182
|
+
"data": {
|
|
183
|
+
"idPrefix": "example-disabled",
|
|
184
|
+
"name": "example-disabled",
|
|
185
|
+
"fieldset": {
|
|
186
|
+
"legend": {
|
|
187
|
+
"text": "¿Quieres que te contactemos por correo electrónico?"
|
|
188
|
+
}
|
|
189
|
+
},
|
|
190
|
+
"hint": {
|
|
191
|
+
"text": "Sólo puedes seleccionar un elemento."
|
|
192
|
+
},
|
|
193
|
+
"items": [
|
|
194
|
+
{
|
|
195
|
+
"value": "si",
|
|
196
|
+
"text": "Si",
|
|
197
|
+
"disabled": true,
|
|
198
|
+
"checked": true
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"value": "no",
|
|
202
|
+
"text": "No",
|
|
203
|
+
"disabled": true
|
|
204
|
+
}
|
|
205
|
+
]
|
|
206
|
+
},
|
|
207
|
+
"visualDescription": "Grupo de radio buttons con pregunta en negro bold, subtexto en gris debajo. Dos opciones apiladas verticalmente en estado inactivo: ambos círculos en gris claro con borde gris tenue, uno con relleno gris y otro vacío. Fondo blanco con borde gris claro rodeando el componente, toda la sección presenta opacidad reducida.",
|
|
208
|
+
"_generated": {
|
|
209
|
+
"hash": "76d3dd45ed46bacb0935f0492fe74b22",
|
|
210
|
+
"version": "15.0.3",
|
|
211
|
+
"timestamp": "2026-01-30T19:11:59.793Z"
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"name": "con un legend como encabezado",
|
|
216
|
+
"description": "Usa el parámetro <code>'heading'</code> para añadir un encabezado asociado al componente. Usa el parámetro <code>'headingLevel'</code> para establecer el nivel del encabezado. Por ejemplo: <code>'headingLevel': 3</code> creará un encabezado <code><h3></code>.",
|
|
217
|
+
"data": {
|
|
218
|
+
"idPrefix": "legend-as-page-heading",
|
|
219
|
+
"name": "legend-as-page-heading",
|
|
220
|
+
"fieldset": {
|
|
221
|
+
"legend": {
|
|
222
|
+
"text": "¿Cómo prefieres que te contactemos?",
|
|
223
|
+
"classes": "c-h2",
|
|
224
|
+
"isPageHeading": true
|
|
225
|
+
},
|
|
226
|
+
"headingLevel": 2
|
|
227
|
+
},
|
|
228
|
+
"hint": {
|
|
229
|
+
"text": "Selecciona una de las opciones."
|
|
230
|
+
},
|
|
231
|
+
"items": [
|
|
232
|
+
{
|
|
233
|
+
"value": "part-2",
|
|
234
|
+
"text": "Por correo electrónico",
|
|
235
|
+
"hint": {
|
|
236
|
+
"text": "Asegúrate de que nuestros correos no lleguen a la bandeja de spam."
|
|
237
|
+
}
|
|
238
|
+
},
|
|
239
|
+
{
|
|
240
|
+
"value": "part-3",
|
|
241
|
+
"text": "Por correo postal",
|
|
242
|
+
"hint": {
|
|
243
|
+
"text": "Asegúrate de haber introducido correctamente tu dirección."
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
]
|
|
247
|
+
},
|
|
248
|
+
"visualDescription": "Grupo de radio buttons con borde gris de 1px y esquinas redondeadas, fondo blanco. Título en negro tamaño mediano peso normal, pregunta en negro peso negrita, dos opciones con círculos vacíos alineados verticalmente, labels en negro peso normal y texto descriptivo gris claro debajo de cada opción.",
|
|
249
|
+
"_generated": {
|
|
250
|
+
"hash": "de3c20041e27faeae9f61e568dbd2654",
|
|
251
|
+
"version": "15.0.3",
|
|
252
|
+
"timestamp": "2026-01-30T19:12:09.514Z"
|
|
253
|
+
}
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"name": "con un legend del tamaño de un encabezado h2",
|
|
257
|
+
"data": {
|
|
258
|
+
"idPrefix": "medium-legend",
|
|
259
|
+
"name": "medium-legend",
|
|
260
|
+
"fieldset": {
|
|
261
|
+
"legend": {
|
|
262
|
+
"text": "¿Cómo prefieres que te contactemos?",
|
|
263
|
+
"classes": "c-h2"
|
|
264
|
+
}
|
|
265
|
+
},
|
|
266
|
+
"hint": {
|
|
267
|
+
"text": "Selecciona una de las opciones."
|
|
268
|
+
},
|
|
269
|
+
"items": [
|
|
270
|
+
{
|
|
271
|
+
"value": "part-2",
|
|
272
|
+
"text": "Por correo electrónico",
|
|
273
|
+
"hint": {
|
|
274
|
+
"text": "Asegúrate de que nuestros correos no lleguen a la bandeja de spam."
|
|
275
|
+
}
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
"value": "part-3",
|
|
279
|
+
"text": "Por correo postal",
|
|
280
|
+
"hint": {
|
|
281
|
+
"text": "Asegúrate de haber introducido correctamente tu dirección."
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
]
|
|
285
|
+
},
|
|
286
|
+
"visualDescription": "Grupo de radio buttons con borde gris de 1px y esquinas redondeadas, fondo blanco. Título en gris tamaño pequeño peso normal arriba, pregunta en negro tamaño grande peso negrita, dos opciones con círculos vacíos alineados verticalmente, labels en negro peso normal y texto descriptivo gris claro debajo de cada opción.",
|
|
287
|
+
"_generated": {
|
|
288
|
+
"hash": "b56321221bce74c0f9bf1cb04441eb60",
|
|
289
|
+
"version": "15.0.3",
|
|
290
|
+
"timestamp": "2026-01-30T19:12:09.514Z"
|
|
291
|
+
}
|
|
292
|
+
},
|
|
293
|
+
{
|
|
294
|
+
"name": "con un divisor",
|
|
295
|
+
"data": {
|
|
296
|
+
"idPrefix": "example-divider",
|
|
297
|
+
"name": "example-divider",
|
|
298
|
+
"fieldset": {
|
|
299
|
+
"legend": {
|
|
300
|
+
"text": "¿Cómo prefieres que te contactemos?"
|
|
301
|
+
}
|
|
302
|
+
},
|
|
303
|
+
"items": [
|
|
304
|
+
{
|
|
305
|
+
"value": "correo-electronico",
|
|
306
|
+
"text": "Correo electrónico"
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
"value": "correo-postal",
|
|
310
|
+
"text": "Correo postal"
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"divider": "o bien"
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
"value": "telefono",
|
|
317
|
+
"text": "Teléfono"
|
|
318
|
+
}
|
|
319
|
+
]
|
|
320
|
+
},
|
|
321
|
+
"visualDescription": "Grupo de radio buttons con borde gris de 1px y esquinas redondeadas, fondo blanco. Título en gris tamaño pequeño peso normal arriba, pregunta en negro peso negrita debajo, cuatro opciones con círculos vacíos alineados verticalmente, labels en negro peso normal. Línea horizontal gris tenue separa visualmente la tercera y cuarta opción.",
|
|
322
|
+
"_generated": {
|
|
323
|
+
"hash": "74a74b319adb3a404bb7a5952619f265",
|
|
324
|
+
"version": "15.0.3",
|
|
325
|
+
"timestamp": "2026-01-30T19:12:09.514Z"
|
|
326
|
+
}
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"name": "Con pistas en los items",
|
|
330
|
+
"data": {
|
|
331
|
+
"idPrefix": "hints-on-items",
|
|
332
|
+
"name": "hints-on-items",
|
|
333
|
+
"fieldset": {
|
|
334
|
+
"legend": {
|
|
335
|
+
"text": "¿Cómo prefieres que te contactemos?",
|
|
336
|
+
"isPageHeading": true
|
|
337
|
+
}
|
|
338
|
+
},
|
|
339
|
+
"items": [
|
|
340
|
+
{
|
|
341
|
+
"value": "correo-electronico",
|
|
342
|
+
"text": "Correo electrónico",
|
|
343
|
+
"hint": {
|
|
344
|
+
"text": "Asegúrate de que el correo no llega a la bandeja de spam."
|
|
345
|
+
}
|
|
346
|
+
},
|
|
347
|
+
{
|
|
348
|
+
"value": "correo-postal",
|
|
349
|
+
"text": "Correo postal",
|
|
350
|
+
"hint": {
|
|
351
|
+
"text": "Asegúrate de haber introducido la dirección postal correctamente."
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
]
|
|
355
|
+
},
|
|
356
|
+
"visualDescription": "Grupo de dos radio buttons con círculos vacíos color gris oscuro a la izquierda. Cada opción tiene un label en negro peso normal y texto de ayuda en gris peso normal debajo del label. Fondo blanco sin bordes divisores entre opciones, espaciado vertical generoso.",
|
|
357
|
+
"_generated": {
|
|
358
|
+
"hash": "5d302782a8e83b6f03f6f95638d8ee1b",
|
|
359
|
+
"version": "15.0.3",
|
|
360
|
+
"timestamp": "2026-01-30T19:12:18.726Z"
|
|
361
|
+
}
|
|
362
|
+
},
|
|
363
|
+
{
|
|
364
|
+
"name": "con líneas divisorias",
|
|
365
|
+
"data": {
|
|
366
|
+
"idPrefix": "has-dividers",
|
|
367
|
+
"name": "has-dividers",
|
|
368
|
+
"fieldset": {
|
|
369
|
+
"legend": {
|
|
370
|
+
"text": "¿Cómo prefieres que te contactemos?"
|
|
371
|
+
}
|
|
372
|
+
},
|
|
373
|
+
"hint": {
|
|
374
|
+
"text": "Sólo puedes elegir un elemento."
|
|
375
|
+
},
|
|
376
|
+
"hasDividers": true,
|
|
377
|
+
"items": [
|
|
378
|
+
{
|
|
379
|
+
"value": "correo-electronico",
|
|
380
|
+
"text": "Correo electrónico",
|
|
381
|
+
"classes": "font-normal",
|
|
382
|
+
"hint": {
|
|
383
|
+
"text": "Asegúrate de que el correo no llega a la bandeja de spam."
|
|
384
|
+
}
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
"value": "correo-postal",
|
|
388
|
+
"text": "Correo postal",
|
|
389
|
+
"hint": {
|
|
390
|
+
"text": "Asegúrate de haber introducido la dirección postal correctamente."
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
]
|
|
394
|
+
},
|
|
395
|
+
"visualDescription": "Grupo de dos radio buttons con círculos vacíos color gris oscuro a la izquierda. Cada opción tiene un label en negro peso normal y texto de ayuda en gris peso normal debajo del label. Línea divisora horizontal gris clara separa las dos opciones, fondo blanco, espaciado vertical generoso.",
|
|
396
|
+
"_generated": {
|
|
397
|
+
"hash": "b17432d8429d47b713eaf3e8954a1835",
|
|
398
|
+
"version": "15.0.3",
|
|
399
|
+
"timestamp": "2026-01-30T19:12:18.726Z"
|
|
400
|
+
}
|
|
401
|
+
},
|
|
402
|
+
{
|
|
403
|
+
"name": "Con clases de CSS aplicadas",
|
|
404
|
+
"description": "Los parámetros <code>classes</code> nos permiten aplicar clases de Tailwind CSS a nuestro componente.",
|
|
405
|
+
"data": {
|
|
406
|
+
"idPrefix": "classes",
|
|
407
|
+
"name": "classes",
|
|
408
|
+
"fieldset": {
|
|
409
|
+
"legend": {
|
|
410
|
+
"text": "¿Cómo prefieres que te contactemos?",
|
|
411
|
+
"isPageHeading": true
|
|
412
|
+
}
|
|
413
|
+
},
|
|
414
|
+
"items": [
|
|
415
|
+
{
|
|
416
|
+
"value": "correo-electronico",
|
|
417
|
+
"text": "Correo electrónico",
|
|
418
|
+
"hint": {
|
|
419
|
+
"text": "Asegúrate de que el correo no llega a la bandeja de spam."
|
|
420
|
+
},
|
|
421
|
+
"classes": "bg-primary-light"
|
|
422
|
+
},
|
|
423
|
+
{
|
|
424
|
+
"value": "correo-postal",
|
|
425
|
+
"text": "Correo postal",
|
|
426
|
+
"hint": {
|
|
427
|
+
"text": "Asegúrate de haber introducido la dirección postal correctamente."
|
|
428
|
+
},
|
|
429
|
+
"classes": "bg-neutral-lighter"
|
|
430
|
+
}
|
|
431
|
+
]
|
|
432
|
+
},
|
|
433
|
+
"visualDescription": "Grupo de dos radio buttons con círculos vacíos color gris oscuro a la izquierda sobre fondo celeste claro. Cada opción tiene un label en negro peso normal y texto de ayuda en gris peso normal debajo del label. Línea divisora horizontal gris clara separa las dos opciones, espaciado vertical generoso.",
|
|
434
|
+
"_generated": {
|
|
435
|
+
"hash": "d00c76a8f4bdd98118baca3781c2efb8",
|
|
436
|
+
"version": "15.0.3",
|
|
437
|
+
"timestamp": "2026-01-30T19:12:18.726Z"
|
|
438
|
+
}
|
|
439
|
+
},
|
|
440
|
+
{
|
|
441
|
+
"name": "sin fieldset",
|
|
442
|
+
"description": "Usa este ejemplo si vas a escribir tú mismo un fieldset, rodeándolo. Recuerda que el uso de fieldset es necesario por accesibilidad.",
|
|
443
|
+
"data": {
|
|
444
|
+
"idPrefix": "without-fieldset",
|
|
445
|
+
"name": "without-fieldset",
|
|
446
|
+
"items": [
|
|
447
|
+
{
|
|
448
|
+
"value": "correo-electronico",
|
|
449
|
+
"text": "Correo electrónico"
|
|
450
|
+
},
|
|
451
|
+
{
|
|
452
|
+
"value": "correp-postal",
|
|
453
|
+
"text": "Correo postal"
|
|
454
|
+
},
|
|
455
|
+
{
|
|
456
|
+
"value": "telefono",
|
|
457
|
+
"text": "Teléfono"
|
|
458
|
+
}
|
|
459
|
+
]
|
|
460
|
+
},
|
|
461
|
+
"visualDescription": "Grupo de tres radio buttons circulares no seleccionados con labels en texto negro tamaño regular. Fondo blanco sin contenedor visible. Título superior en negro pequeño.",
|
|
462
|
+
"_generated": {
|
|
463
|
+
"hash": "4290d8a36fbe37307edb99f35b807694",
|
|
464
|
+
"version": "15.0.3",
|
|
465
|
+
"timestamp": "2026-01-30T19:12:27.479Z"
|
|
466
|
+
}
|
|
467
|
+
},
|
|
468
|
+
{
|
|
469
|
+
"name": "con fieldset y mensaje de error",
|
|
470
|
+
"data": {
|
|
471
|
+
"idPrefix": "fieldset-and-error",
|
|
472
|
+
"name": "fieldset-and-error",
|
|
473
|
+
"errorMessage": {
|
|
474
|
+
"text": "Tienes que seleccionar al menos una opción"
|
|
475
|
+
},
|
|
476
|
+
"fieldset": {
|
|
477
|
+
"legend": {
|
|
478
|
+
"text": "¿Quieres que te contactemos por correo electrónico?"
|
|
479
|
+
}
|
|
480
|
+
},
|
|
481
|
+
"items": [
|
|
482
|
+
{
|
|
483
|
+
"value": "si",
|
|
484
|
+
"text": "Si"
|
|
485
|
+
},
|
|
486
|
+
{
|
|
487
|
+
"value": "no",
|
|
488
|
+
"text": "No",
|
|
489
|
+
"checked": true
|
|
490
|
+
}
|
|
491
|
+
]
|
|
492
|
+
},
|
|
493
|
+
"visualDescription": "Fieldset con borde gris de 1px conteniendo pregunta en texto negro peso normal, mensaje de error rojo debajo, y dos radio buttons circulares donde el segundo está seleccionado con punto azul central. Fondo blanco y título superior en negro pequeño.",
|
|
494
|
+
"_generated": {
|
|
495
|
+
"hash": "9da9c1e5fd363b09b674d053e7ee9801",
|
|
496
|
+
"version": "15.0.3",
|
|
497
|
+
"timestamp": "2026-01-30T19:12:27.479Z"
|
|
498
|
+
}
|
|
499
|
+
},
|
|
500
|
+
{
|
|
501
|
+
"name": "con un texto de item muy largo",
|
|
502
|
+
"data": {
|
|
503
|
+
"idPrefix": "very-long",
|
|
504
|
+
"name": "very-long",
|
|
505
|
+
"hint": {
|
|
506
|
+
"text": "Nullam id dolor id nibh ultricies vehicula ut id elit."
|
|
507
|
+
},
|
|
508
|
+
"errorMessage": {
|
|
509
|
+
"text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
|
|
510
|
+
},
|
|
511
|
+
"fieldset": {
|
|
512
|
+
"legend": {
|
|
513
|
+
"text": "Maecenas faucibus mollis interdum?"
|
|
514
|
+
}
|
|
515
|
+
},
|
|
516
|
+
"items": [
|
|
517
|
+
{
|
|
518
|
+
"value": "nullam",
|
|
519
|
+
"text": "Nullam id dolor id nibh ultricies vehicula ut id elit. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Maecenas faucibus mollis interdum. Donec id elit non mi porta gravida at eget metus."
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
"value": "aenean",
|
|
523
|
+
"text": "Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Donec sed odio dui. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Cras mattis consectetur purus sit amet fermentum."
|
|
524
|
+
},
|
|
525
|
+
{
|
|
526
|
+
"value": "fusce",
|
|
527
|
+
"text": "Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus. Etiam porta sem malesuada magna mollis euismod. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Etiam porta sem malesuada magna mollis euismod. Etiam porta sem malesuada magna mollis euismod. Donec sed odio dui. Sed posuere consectetur est at lobortis."
|
|
528
|
+
}
|
|
529
|
+
]
|
|
530
|
+
},
|
|
531
|
+
"visualDescription": "Pregunta en texto negro peso negrita seguida de subtexto gris claro tamaño pequeño. Advertencia en texto rojo debajo del subtexto. Tres radio buttons circulares no seleccionados con labels extensos en texto negro tamaño regular ocupando múltiples líneas. Fondo blanco y borde gris delgado alrededor del contenedor.",
|
|
532
|
+
"_generated": {
|
|
533
|
+
"hash": "3150ae62c72805a0b6d63bb1296dc5a2",
|
|
534
|
+
"version": "15.0.3",
|
|
535
|
+
"timestamp": "2026-01-30T19:12:27.479Z"
|
|
536
|
+
}
|
|
537
|
+
},
|
|
538
|
+
{
|
|
539
|
+
"name": "con items condicionales",
|
|
540
|
+
"description": "El contenido de cada condicional es una agrupación, y como tal, se deben agrupar con una etiqueta <code><fieldset></code> o bien de una etiqueta <code><div></code> con <code>role=\"group\"</code> que tenga un <code>aria-label</code> o <code>aria-labelledby</code>.",
|
|
541
|
+
"data": {
|
|
542
|
+
"idPrefix": "conditional-items",
|
|
543
|
+
"name": "conditional-items",
|
|
544
|
+
"fieldset": {
|
|
545
|
+
"legend": {
|
|
546
|
+
"text": "¿Cómo quieres que te contactemos?"
|
|
547
|
+
}
|
|
548
|
+
},
|
|
549
|
+
"items": [
|
|
550
|
+
{
|
|
551
|
+
"value": "correo-electronico",
|
|
552
|
+
"text": "Correo electrónico",
|
|
553
|
+
"conditional": {
|
|
554
|
+
"html": mobileContent('1').val
|
|
555
|
+
}
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
"value": "telefono",
|
|
559
|
+
"text": "Teléfono",
|
|
560
|
+
"checked": true,
|
|
561
|
+
"conditional": {
|
|
562
|
+
"html": telefonoContent('2').val
|
|
563
|
+
}
|
|
564
|
+
},
|
|
565
|
+
{
|
|
566
|
+
"value": "mensaje-SMS",
|
|
567
|
+
"text": "Sin conditional"
|
|
568
|
+
}
|
|
569
|
+
]
|
|
570
|
+
},
|
|
571
|
+
"visualDescription": "Grupo de radio buttons con pregunta en texto negro regular arriba. Tres opciones verticales: primera sin seleccionar, segunda seleccionada en azul con círculo relleno y campo de texto con label gris y borde gris de 1px indentado debajo, tercera sin seleccionar. Fondo blanco, espaciado vertical consistente entre opciones.",
|
|
572
|
+
"_generated": {
|
|
573
|
+
"hash": "470864e9ae3ad08027bd0a55ad4e8f19",
|
|
574
|
+
"version": "15.0.3",
|
|
575
|
+
"timestamp": "2026-01-30T19:12:38.592Z"
|
|
576
|
+
}
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"name": "con item condicional seleccionado",
|
|
580
|
+
"description": "Usa el parámetro <code>'checked': true</code> para mostrar un item condicional seleccionado. El contenido de cada condicional es una agrupación, y como tal, se deben agrupar con una etiqueta <code><fieldset></code> o bien de una etiqueta <code><div></code> con <code>role=\"group\"</code> que tenga un <code>aria-label</code> o <code>aria-labelledby</code>.",
|
|
581
|
+
"data": {
|
|
582
|
+
"idPrefix": "conditional-item-checked",
|
|
583
|
+
"name": "conditional-item-checked",
|
|
584
|
+
"fieldset": {
|
|
585
|
+
"legend": {
|
|
586
|
+
"text": "¿Cómo quieres que te contactemos?"
|
|
587
|
+
}
|
|
588
|
+
},
|
|
589
|
+
"items": [
|
|
590
|
+
{
|
|
591
|
+
"value": "correo-electronico",
|
|
592
|
+
"text": "Correo electrónico",
|
|
593
|
+
"conditional": {
|
|
594
|
+
"html": telefonoContent('4').val
|
|
595
|
+
}
|
|
596
|
+
},
|
|
597
|
+
{
|
|
598
|
+
"value": "telefono",
|
|
599
|
+
"text": "Teléfono",
|
|
600
|
+
"checked": true,
|
|
601
|
+
"conditional": {
|
|
602
|
+
"html": mobileContent('5').val
|
|
603
|
+
}
|
|
604
|
+
},
|
|
605
|
+
{
|
|
606
|
+
"value": "mensaje-SMS",
|
|
607
|
+
"text": "Mensaje SMS",
|
|
608
|
+
"conditional": {
|
|
609
|
+
"html": mobileContent('6').val
|
|
610
|
+
}
|
|
611
|
+
}
|
|
612
|
+
]
|
|
613
|
+
},
|
|
614
|
+
"visualDescription": "Grupo de radio buttons con pregunta en texto negro regular arriba. Tres opciones verticales: primera sin seleccionar, segunda seleccionada con círculo azul relleno y campo de texto con label gris y borde gris de 1px indentado debajo, tercera sin seleccionar. Fondo blanco con borde gris claro envolviendo todo el grupo.",
|
|
615
|
+
"_generated": {
|
|
616
|
+
"hash": "6d91710ed77fa48707b34ce9df67c197",
|
|
617
|
+
"version": "15.0.3",
|
|
618
|
+
"timestamp": "2026-01-30T19:12:38.593Z"
|
|
619
|
+
}
|
|
620
|
+
},
|
|
621
|
+
{
|
|
622
|
+
"name": "con clases opcionales del form-group mostrando un error del grupo",
|
|
623
|
+
"data": {
|
|
624
|
+
"idPrefix": "classes-group-error",
|
|
625
|
+
"name": "classes-group-error",
|
|
626
|
+
"formGroup": {
|
|
627
|
+
"classes": "c-form-group--error"
|
|
628
|
+
},
|
|
629
|
+
"fieldset": {
|
|
630
|
+
"legend": {
|
|
631
|
+
"text": "¿Cómo quieres que te contactemos?"
|
|
632
|
+
}
|
|
633
|
+
},
|
|
634
|
+
"items": [
|
|
635
|
+
{
|
|
636
|
+
"value": "correo-electronico",
|
|
637
|
+
"text": "Correo electrónico",
|
|
638
|
+
"conditional": {
|
|
639
|
+
"html": telefonoContent('5').val
|
|
640
|
+
}
|
|
641
|
+
},
|
|
642
|
+
{
|
|
643
|
+
"value": "telefono",
|
|
644
|
+
"text": "Teléfono",
|
|
645
|
+
"checked": true,
|
|
646
|
+
"conditional": {
|
|
647
|
+
"html": mobileErrorContent('1').val
|
|
648
|
+
}
|
|
649
|
+
},
|
|
650
|
+
{
|
|
651
|
+
"value": "mensaje-SMS",
|
|
652
|
+
"text": "Mensaje SMS",
|
|
653
|
+
"conditional": {
|
|
654
|
+
"html": mobileContent('7').val
|
|
655
|
+
}
|
|
656
|
+
}
|
|
657
|
+
]
|
|
658
|
+
},
|
|
659
|
+
"visualDescription": "Grupo de radio buttons con pregunta en texto negro regular arriba. Tres opciones verticales: primera sin seleccionar, segunda seleccionada con círculo azul relleno y campo de texto con borde rojo de 2px más mensaje de error en texto rojo pequeño debajo, tercera con círculo rojo en estado error. Fondo blanco con borde gris claro envolviendo el grupo.",
|
|
660
|
+
"_generated": {
|
|
661
|
+
"hash": "fcc9b7451829b59a5fd3746bebf3a50d",
|
|
662
|
+
"version": "15.0.3",
|
|
663
|
+
"timestamp": "2026-01-30T19:12:38.593Z"
|
|
664
|
+
}
|
|
665
|
+
},
|
|
666
|
+
{
|
|
667
|
+
"name": "peque",
|
|
668
|
+
"data": {
|
|
669
|
+
"idPrefix": "small",
|
|
670
|
+
"name": "peque",
|
|
671
|
+
"classes": "c-radios--sm",
|
|
672
|
+
"items": [
|
|
673
|
+
{
|
|
674
|
+
"value": "si",
|
|
675
|
+
"text": "Si",
|
|
676
|
+
"classes": "-mt-base",
|
|
677
|
+
"label": {
|
|
678
|
+
"classes": "text-sm -mt-1"
|
|
679
|
+
}
|
|
680
|
+
},
|
|
681
|
+
{
|
|
682
|
+
"value": "no",
|
|
683
|
+
"text": "No",
|
|
684
|
+
"classes": "-mt-base",
|
|
685
|
+
"label": {
|
|
686
|
+
"classes": "text-sm -mt-1"
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
]
|
|
690
|
+
},
|
|
691
|
+
"visualDescription": "Grupo de dos radio buttons con labels \"Si\" y \"No\" en texto negro de tamaño pequeño. Fondo blanco, radio buttons circulares con borde gris, espaciado vertical compacto entre opciones. Título \"peque\" en negro arriba del grupo.",
|
|
692
|
+
"_generated": {
|
|
693
|
+
"hash": "a01fcfd4da2fc1243bb0b1883e4df2ce",
|
|
694
|
+
"version": "15.0.3",
|
|
695
|
+
"timestamp": "2026-01-30T19:12:44.531Z"
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
] %}
|