desy-html 11.2.0 → 12.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 (117) hide show
  1. package/docs/_global.foot.njk +1 -1
  2. package/docs/_macro.example-render.njk +62 -18
  3. package/docs/ds/_ds.section.textos.njk +1 -1
  4. package/docs/index.html +10 -0
  5. package/docs/pagina-prueba.html +2 -2
  6. package/package.json +2 -2
  7. package/src/css/component.text.css +0 -1
  8. package/src/js/aria/utils.js +80 -15
  9. package/src/js/desy-html.js +239 -196
  10. package/src/js/filters/filter-caller.js +4 -2
  11. package/src/js/filters/filter-escape-ltgt.js +7 -0
  12. package/src/js/filters/filter-quotes.js +50 -0
  13. package/src/js/filters/filter-version.js +8 -0
  14. package/src/js/filters/index.js +7 -1
  15. package/src/templates/components/accordion/_examples.accordion.njk +107 -107
  16. package/src/templates/components/accordion/_template.accordion.njk +5 -5
  17. package/src/templates/components/accordion-history/_examples.accordion-history.njk +119 -119
  18. package/src/templates/components/accordion-history/_template.accordion-history.njk +11 -11
  19. package/src/templates/components/alert/_examples.alert.njk +2 -2
  20. package/src/templates/components/breadcrumbs/_examples.breadcrumbs.njk +4 -4
  21. package/src/templates/components/breadcrumbs/_template.breadcrumbs.njk +4 -4
  22. package/src/templates/components/button/_examples.button.njk +19 -19
  23. package/src/templates/components/button/_template.button.njk +2 -2
  24. package/src/templates/components/button-loader/_examples.button-loader.njk +17 -17
  25. package/src/templates/components/button-loader/_template.button-loader.njk +2 -2
  26. package/src/templates/components/card/_examples.card.njk +3 -3
  27. package/src/templates/components/card/_template.card.njk +4 -4
  28. package/src/templates/components/character-count/_examples.character-count.njk +2 -2
  29. package/src/templates/components/checkboxes/_examples.checkboxes.njk +6 -6
  30. package/src/templates/components/checkboxes/_template.checkboxes.njk +2 -2
  31. package/src/templates/components/collapsible/_examples.collapsible.njk +4 -4
  32. package/src/templates/components/collapsible/_template.collapsible.njk +1 -1
  33. package/src/templates/components/date-input/_template.date-input.njk +1 -1
  34. package/src/templates/components/datepicker/_examples.datepicker.njk +45 -62
  35. package/src/templates/components/datepicker/_styles.datepicker.css +4 -0
  36. package/src/templates/components/datepicker/_template.datepicker.njk +10 -2
  37. package/src/templates/components/description-list/_examples.description-list.njk +3 -3
  38. package/src/templates/components/description-list/_template.description-list.njk +2 -2
  39. package/src/templates/components/details/_examples.details.njk +3 -3
  40. package/src/templates/components/details/_template.details.njk +1 -1
  41. package/src/templates/components/dialog/_examples.dialog.njk +4 -4
  42. package/src/templates/components/dropdown/_examples.dropdown.njk +31 -17
  43. package/src/templates/components/dropdown/_template.dropdown.njk +1 -1
  44. package/src/templates/components/error-message/_examples.error-message.njk +1 -1
  45. package/src/templates/components/error-message/_template.error-message.njk +1 -1
  46. package/src/templates/components/error-summary/_template.error-summary.njk +2 -2
  47. package/src/templates/components/fieldset/_examples.fieldset.njk +3 -3
  48. package/src/templates/components/fieldset/_template.fieldset.njk +7 -7
  49. package/src/templates/components/footer/_examples.footer.njk +32 -32
  50. package/src/templates/components/footer/_template.footer.njk +6 -6
  51. package/src/templates/components/header/_examples.header.njk +14 -8
  52. package/src/templates/components/header/_template.header.header__navigation.njk +2 -2
  53. package/src/templates/components/header/_template.header.header__offcanvasButton.njk +1 -1
  54. package/src/templates/components/header/_template.header.header__subnav.njk +1 -1
  55. package/src/templates/components/header/_template.header.njk +2 -2
  56. package/src/templates/components/header-advanced/_examples.header-advanced.njk +14 -8
  57. package/src/templates/components/header-advanced/_template.header-advanced.njk +3 -3
  58. package/src/templates/components/header-mini/_examples.header-mini.njk +3 -3
  59. package/src/templates/components/header-mini/_template.header-mini.njk +2 -2
  60. package/src/templates/components/hint/_examples.hint.njk +1 -1
  61. package/src/templates/components/hint/_template.hint.njk +1 -1
  62. package/src/templates/components/input/_examples.input.njk +7 -7
  63. package/src/templates/components/input-group/_examples.input-group.njk +1 -1
  64. package/src/templates/components/input-group/_template.input-group.njk +1 -1
  65. package/src/templates/components/item/_examples.item.njk +23 -23
  66. package/src/templates/components/item/_template.item.njk +9 -9
  67. package/src/templates/components/label/_examples.label.njk +2 -2
  68. package/src/templates/components/label/_template.label.njk +1 -1
  69. package/src/templates/components/links-list/_examples.links-list.njk +29 -32
  70. package/src/templates/components/links-list/_template.links-list.njk +11 -11
  71. package/src/templates/components/listbox/_examples.listbox.njk +16 -16
  72. package/src/templates/components/listbox/_template.listbox.njk +3 -3
  73. package/src/templates/components/media-object/_examples.media-object.njk +5 -5
  74. package/src/templates/components/menu-horizontal/_examples.menu-horizontal.njk +16 -16
  75. package/src/templates/components/menu-horizontal/_template.menu-horizontal.njk +2 -2
  76. package/src/templates/components/menu-navigation/_examples.menu-navigation.njk +6 -6
  77. package/src/templates/components/menu-navigation/_template.menu-navigation.njk +4 -4
  78. package/src/templates/components/menu-vertical/_examples.menu-vertical.njk +8 -8
  79. package/src/templates/components/menu-vertical/_template.menu-vertical.njk +9 -9
  80. package/src/templates/components/menubar/_examples.menubar.njk +16 -16
  81. package/src/templates/components/menubar/_template.menubar.njk +7 -7
  82. package/src/templates/components/modal/_examples.modal.njk +18 -18
  83. package/src/templates/components/modal/_template.modal.njk +8 -8
  84. package/src/templates/components/nav/_examples.nav.njk +7 -7
  85. package/src/templates/components/nav/_template.nav.njk +2 -2
  86. package/src/templates/components/notification/_examples.notification.njk +9 -9
  87. package/src/templates/components/notification/_template.notification.njk +11 -11
  88. package/src/templates/components/pagination/_examples.pagination.njk +6 -6
  89. package/src/templates/components/pagination/_template.pagination.njk +3 -3
  90. package/src/templates/components/pill/_examples.pill.njk +8 -8
  91. package/src/templates/components/pill/_template.pill.njk +3 -3
  92. package/src/templates/components/radios/_examples.radios.njk +2 -2
  93. package/src/templates/components/radios/_template.radios.njk +1 -1
  94. package/src/templates/components/select/_examples.select.njk +1 -1
  95. package/src/templates/components/skip-link/_examples.skip-link.njk +1 -1
  96. package/src/templates/components/skip-link/_template.skip-link.njk +1 -1
  97. package/src/templates/components/status/_examples.status.njk +1 -1
  98. package/src/templates/components/status/_template.status.njk +1 -1
  99. package/src/templates/components/status-item/_examples.status-item.njk +15 -15
  100. package/src/templates/components/status-item/_template.status-item.njk +3 -3
  101. package/src/templates/components/table/_examples.table.njk +3 -3
  102. package/src/templates/components/table/_template.table.njk +2 -2
  103. package/src/templates/components/table-advanced/_examples.table-advanced.njk +7 -7
  104. package/src/templates/components/table-advanced/_template.table-advanced.njk +5 -5
  105. package/src/templates/components/tabs/_examples.tabs.njk +19 -19
  106. package/src/templates/components/tabs/_styles.tabs.css +2 -2
  107. package/src/templates/components/tabs/_template.tabs.njk +7 -7
  108. package/src/templates/components/textarea/_examples.textarea.njk +2 -2
  109. package/src/templates/components/toggle/_examples.toggle.njk +29 -29
  110. package/src/templates/components/toggle/_template.toggle.njk +2 -2
  111. package/src/templates/components/tooltip/_examples.tooltip.njk +11 -11
  112. package/src/templates/components/tooltip/_template.tooltip.njk +3 -3
  113. package/src/templates/components/tree/_examples.tree.njk +12 -60
  114. package/src/templates/components/tree/_template.tree.njk +4 -4
  115. package/src/templates/includes/_test-include.njk +2 -2
  116. package/src/templates/pages/_page.footer.njk +1 -1
  117. package/src/templates/pages/_template.logged-selector-subheader.njk +1 -1
@@ -57,7 +57,7 @@
57
57
  {{ iconLoader | safe }}
58
58
  {{ iconSuccess | safe }}
59
59
  <span class="c-button-loader__content inline-flex align-baseline">
60
- {{ params.html | safe if params.html else params.text }}
60
+ {{ params.html | filterquotes | safe if params.html else params.text }}
61
61
  </span>
62
62
  </a>
63
63
 
@@ -67,7 +67,7 @@
67
67
  {{ iconLoader | safe }}
68
68
  {{ iconSuccess | safe }}
69
69
  <span class="c-button-loader__content inline-flex align-baseline">
70
- {{ params.html | safe if params.html else params.text }}
70
+ {{ params.html | filterquotes | safe if params.html else params.text }}
71
71
  </span>
72
72
  </button>
73
73
 
@@ -29,7 +29,7 @@
29
29
 
30
30
  {% macro verButton(id='id') %}
31
31
  {{ componentButton({
32
- "html": 'Más <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" class="self-center ml-2" aria-hidden="true" focusable="false" width="1em" height="1em"><path d="M102.07 27.93l35 35a10 10 0 010 14.14l-35 35a10 10 0 01-14.14-14.14l13.66-13.66A2.5 2.5 0 0099.82 80H10a10 10 0 010-20h89.82a2.5 2.5 0 001.77-4.27L87.93 42.07a10 10 0 0114.14-14.14z" fill="currentColor"></path></svg>',
32
+ "html": "Más <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140' class='self-center ml-2' aria-hidden='true' focusable='false' width='1em' height='1em'><path d='M102.07 27.93l35 35a10 10 0 010 14.14l-35 35a10 10 0 01-14.14-14.14l13.66-13.66A2.5 2.5 0 0099.82 80H10a10 10 0 010-20h89.82a2.5 2.5 0 001.77-4.27L87.93 42.07a10 10 0 0114.14-14.14z' fill='currentColor'></path></svg>",
33
33
  "classes": "c-button--transparent",
34
34
  "href": "#",
35
35
  "attributes": {
@@ -41,7 +41,7 @@
41
41
 
42
42
  {% macro verDetalleButton(id='id') %}
43
43
  {{ componentButton({
44
- "html": 'Ver detalle <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 140 140" class="self-center ml-2" aria-hidden="true" focusable="false" width="1em" height="1em"><path d="M102.07 27.93l35 35a10 10 0 010 14.14l-35 35a10 10 0 01-14.14-14.14l13.66-13.66A2.5 2.5 0 0099.82 80H10a10 10 0 010-20h89.82a2.5 2.5 0 001.77-4.27L87.93 42.07a10 10 0 0114.14-14.14z" fill="currentColor"></path></svg>',
44
+ "html": "Ver detalle <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140' class='self-center ml-2' aria-hidden='true' focusable='false' width='1em' height='1em'><path d='M102.07 27.93l35 35a10 10 0 010 14.14l-35 35a10 10 0 01-14.14-14.14l13.66-13.66A2.5 2.5 0 0099.82 80H10a10 10 0 010-20h89.82a2.5 2.5 0 001.77-4.27L87.93 42.07a10 10 0 0114.14-14.14z' fill='currentColor'></path></svg>",
45
45
  "classes": "c-button--transparent",
46
46
  "href": "#",
47
47
  "attributes": {
@@ -111,7 +111,7 @@
111
111
  },
112
112
  {
113
113
  "name": "todo el card clicable",
114
- "description": 'Usa la clase <code>.c-link--full</code> en un único enlace dentro del card, junto con las clases <code>relative</code> y <code>hover:bg-neutral-light</code> en el parámetro <code>containerClasses</code> para hacer que el enlace ocupe todo el card y sea perceptible en el estado hover. Recuerda que sólo debe haber un enlace en este tipo de cards clicables.',
114
+ "description": "Usa la clase <code>.c-link--full</code> en un único enlace dentro del card, junto con las clases <code>relative</code> y <code>hover:bg-neutral-light</code> en el parámetro <code>containerClasses</code> para hacer que el enlace ocupe todo el card y sea perceptible en el estado hover. Recuerda que sólo debe haber un enlace en este tipo de cards clicables.",
115
115
  "data": {
116
116
  "classes": "lg:w-1/3",
117
117
  "containerClasses": "p-base border border-neutral-base rounded relative hover:bg-neutral-light",
@@ -3,13 +3,13 @@
3
3
  <div {%- if params.containerClasses %} class="{{ params.containerClasses }}"{% endif %}>
4
4
  {% if params.super %}
5
5
  <div class="{% if params.super.classes %}{{ params.super.classes }}{% else-%} h-32 bg-cover bg-center bg-no-repeat overflow-hidden{% endif %}" style="background-color: {{ params.super.backgroundFullColor }}; {% if params.super.backgroundFullUrl %} background-image: url('{{ params.super.backgroundFullUrl }}'){% endif %}" {%- for attribute, value in params.super.attributes %} {{attribute}}="{{value}}"{% endfor %}>
6
- {{ params.super.html | safe if params.super.html}}
6
+ {{ params.super.html | filterquotes | safe if params.super.html}}
7
7
  </div>
8
8
  {% endif %}
9
9
  <div class="flex">
10
10
  {% if params.left %}
11
11
  <div class="{% if params.left.classes %}{{ params.left.classes }}{% else-%} w-1/2 bg-cover bg-center bg-no-repeat overflow-hidden{% endif %}" style="background-color: {{ params.left.backgroundFullColor }}; {% if params.left.backgroundFullUrl %} background-image: url('{{ params.left.backgroundFullUrl }}'){% endif %}" {%- for attribute, value in params.left.attributes %} {{attribute}}="{{value}}"{% endfor %}>
12
- {{ params.left.html | safe if params.left.html}}
12
+ {{ params.left.html | filterquotes | safe if params.left.html}}
13
13
  </div>
14
14
  {% endif %}
15
15
  <div {%- if params.left or params.right %} class="flex-1"{% endif %}>
@@ -21,13 +21,13 @@
21
21
  </div>
22
22
  {% if params.right %}
23
23
  <div class="{% if params.right.classes %}{{ params.right.classes }}{% else-%} w-1/2 bg-cover bg-center bg-no-repeat overflow-hidden{% endif %}" style="background-color: {{ params.right.backgroundFullColor }}; {% if params.right.backgroundFullUrl %} background-image: url('{{ params.right.backgroundFullUrl }}'){% endif %}" {%- for attribute, value in params.right.attributes %} {{attribute}}="{{value}}"{% endfor %}>
24
- {{ params.right.html | safe if params.right.html}}
24
+ {{ params.right.html | filterquotes | safe if params.right.html}}
25
25
  </div>
26
26
  {% endif %}
27
27
  </div>
28
28
  {% if params.sub %}
29
29
  <div class="{% if params.sub.classes %}{{ params.sub.classes }}{% else-%} h-32 bg-cover bg-center bg-no-repeat overflow-hidden{% endif %}" style="background-color: {{ params.sub.backgroundFullColor }}; {% if params.sub.backgroundFullUrl %} background-image: url('{{ params.sub.backgroundFullUrl }}'){% endif %}" {%- for attribute, value in params.sub.attributes %} {{attribute}}="{{value}}"{% endfor %}>
30
- {{ params.sub.html | safe if params.sub.html}}
30
+ {{ params.sub.html | filterquotes | safe if params.sub.html}}
31
31
  </div>
32
32
  {% endif %}
33
33
  </div>
@@ -14,7 +14,7 @@
14
14
  {
15
15
  "name": "placeholder",
16
16
  "data": {
17
- "name": "placeholder",
17
+ "name": "con-placeholder",
18
18
  "id": "placeholder",
19
19
  "maxlength": 250,
20
20
  "placeholder": "Esto es un placeholder",
@@ -90,7 +90,7 @@
90
90
  },
91
91
  {
92
92
  "name": "con label como encabezado",
93
- "description": 'Utiliza el parámetro <code>"isPageheading": true</code> para que el label esté dentro de un encabezado. Usa el parámetro <code>"headingLevel"</code> para establecer el nivel del encabezado. Por ejemplo: <code>"headingLevel": 3</code> creará un encabezado <code>&lt;h3&gt;</code>. Si no se establece un <code>"headingLevel"</code>, por defecto usará un <code>&lt;h1&gt;</code>.',
93
+ "description": "Utiliza el parámetro <code>'isPageheading': true</code> para que el label esté dentro de un encabezado. Usa el parámetro <code>'headingLevel'</code> para establecer el nivel del encabezado. Por ejemplo: <code>'headingLevel': 3</code> creará un encabezado <code>&lt;h3&gt;</code>. Si no se establece un <code>'headingLevel'</code>, por defecto usará un <code>&lt;h1&gt;</code>.",
94
94
  "data": {
95
95
  "id": "textarea-with-page-heading",
96
96
  "name": "address",
@@ -218,7 +218,7 @@
218
218
  },
219
219
  {
220
220
  "name": "Con clases de CSS aplicadas",
221
- "description": 'Los parámetros <code>classes</code> nos permiten aplicar clases de Tailwind CSS a nuestro componente.',
221
+ "description": "Los parámetros <code>classes</code> nos permiten aplicar clases de Tailwind CSS a nuestro componente.",
222
222
  "data": {
223
223
  "idPrefix": "classes",
224
224
  "fieldset": {
@@ -276,7 +276,7 @@
276
276
  },
277
277
  {
278
278
  "name": "con un legend como encabezado",
279
- "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>&lt;h3&gt;</code>.',
279
+ "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>&lt;h3&gt;</code>.",
280
280
  "data": {
281
281
  "idPrefix": "legend-as-page-heading",
282
282
  "name": "legend-as-page-heading",
@@ -372,7 +372,7 @@
372
372
  "items": [
373
373
  {
374
374
  "value": "acepto",
375
- "html": 'Acepto los <a href="#" target="_blank" class="c-link" title="Se abre en ventana nueva del navegador">términos y condiciones</a>'
375
+ "html": "Acepto los <a href='#' target='_blank' class='c-link' title='Se abre en ventana nueva del navegador'>términos y condiciones</a>"
376
376
  }
377
377
  ]
378
378
  }
@@ -387,7 +387,7 @@
387
387
  "items": [
388
388
  {
389
389
  "value": "acepto",
390
- "html": 'Acepto los <a href="#" target="_blank" class="c-link" title="Se abre en ventana nueva del navegador">términos y condiciones</a>',
390
+ "html": "Acepto los <a href='#' target='_blank' class='c-link' title='Se abre en ventana nueva del navegador'>términos y condiciones</a>",
391
391
  "hint": {
392
392
  "text": "Puedes visualizarlos en ventana nueva del navegador"
393
393
  }
@@ -692,7 +692,7 @@
692
692
  },
693
693
  {
694
694
  "name": "indeterminado",
695
- "description": 'Usando el parámetro <code>"isIndeterminate": true</code> podemos crear un item del checkbox que tenga 3 estados: marcado, desmarcado o indeterminado. El estado indeterminado expresa que hay sólo algún item seleccionado pero no todos. Útil para selecciones múltiples.',
695
+ "description": "Usando el parámetro <code>'isIndeterminate': true</code> podemos crear un item del checkbox que tenga 3 estados: marcado, desmarcado o indeterminado. El estado indeterminado expresa que hay sólo algún item seleccionado pero no todos. Útil para selecciones múltiples.",
696
696
  "data": {
697
697
  "idPrefix": "indeterminate",
698
698
  "name": "indeterminate",
@@ -712,7 +712,7 @@
712
712
  },
713
713
  {
714
714
  "name": "indeterminado marcado",
715
- "description": 'Usando los parámetros <code>"isIndeterminate": true</code> y <code>"indeterminateChecked": true</code> podemos marcar como estado indeterminado un item que sea de tipo indeterminado.',
715
+ "description": "Usando los parámetros <code>'isIndeterminate': true</code> y <code>'indeterminateChecked': true</code> podemos marcar como estado indeterminado un item que sea de tipo indeterminado.",
716
716
  "data": {
717
717
  "idPrefix": "indeterminate-checked",
718
718
  "name": "indeterminate-checked",
@@ -79,7 +79,7 @@
79
79
  {{-" checked" if item.checked }}
80
80
  {{-" disabled" if item.disabled }}
81
81
  {%- if item.conditional.html %} aria-controls="{{ conditionalId }}"{% endif -%}
82
- {%- if itemDescribedBy %} aria-describedby="{{ itemDescribedBy }}"{% endif -%}
82
+ {%- if itemDescribedBy != " " %} aria-describedby="{{ itemDescribedBy }}"{% endif -%}
83
83
  {%- if params.errorMessage %} aria-invalid="true"{% endif -%}
84
84
  {%- for attribute, value in item.attributes %} {{ attribute }}="{{ value }}"{% endfor -%}
85
85
  {%- if item.isIndeterminate or item.indeterminateChecked %} onclick="if (this.readOnly) this.checked=this.readOnly=false; else if (!this.checked) this.readOnly=this.indeterminate=true;"{% endif %}>
@@ -105,7 +105,7 @@
105
105
  </div>
106
106
  {% if item.conditional.html %}
107
107
  <div class="mb-base ml-5 py-sm pl-6 origin-top-left border-l-2 border-primary-base c-checkboxes__conditional-item" id="{{ conditionalId }}">
108
- {{ item.conditional.html | safe | indent(10) }}
108
+ {{ item.conditional.html | filterquotes | safe | indent(10) }}
109
109
  </div>
110
110
  {% endif %}
111
111
  {% endif %}
@@ -15,7 +15,7 @@
15
15
  },
16
16
  {
17
17
  "name": "expandido",
18
- "description": 'Añade <code>open: true</code> a un item para mostrarlo abierto inicialmente.',
18
+ "description": "Añade <code>open: true</code> a un item para mostrarlo abierto inicialmente.",
19
19
  "data": {
20
20
  "id": "collapsible-initially-expanded",
21
21
  "headerText": "Cabecera del collapsible",
@@ -30,7 +30,7 @@
30
30
  },
31
31
  {
32
32
  "name": "expandido con JavaScript",
33
- "description": 'También puedes usar con javascript la función global <code>activateItemCollapsible(element, open)</code>, para mostrar un item abierto o cerrado, usando su id, el parámetro <code>open</code> admite <code>true</code> o <code>false</code>, si le pasamos true se mostrará abierto, y si le pasamos false se mostrará cerrado. Ej: Abre la consola del navegador y escribe <code>activateItemCollapsible("collapsible-expanded-title", true)</code> para mostrar el item actual abierto.',
33
+ "description": "También puedes usar con javascript la función global <code>activateItemCollapsible(element, open)</code>, para mostrar un item abierto o cerrado, usando su id, el parámetro <code>open</code> admite <code>true</code> o <code>false</code>, si le pasamos true se mostrará abierto, y si le pasamos false se mostrará cerrado. Ej: Abre la consola del navegador y escribe <code>activateItemCollapsible('collapsible-expanded-title', true)</code> para mostrar el item actual abierto.",
34
34
  "data": {
35
35
  "id": "collapsible-expanded",
36
36
  "headerText": "Cabecera del collapsible",
@@ -47,12 +47,12 @@
47
47
  "data": {
48
48
  "id": "collapsible-html",
49
49
  "headerText": "Cabecera del collapsible",
50
- "html": '<p>Lorem ipsum dolor sit amet, <strong>consectetur</strong> adipisicing elit, sed do eiusmod
50
+ "html": "<p>Lorem ipsum dolor sit amet, <strong>consectetur</strong> adipisicing elit, sed do eiusmod
51
51
  tempor <em>incididunt</em> ut labore et dolore magna aliqua. Ut enim ad minim veniam,
52
52
  quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
53
53
  consequat. Duis aute irure dolor in <strong>reprehenderit</strong> in voluptate velit esse
54
54
  cillum dolore eu fugiat nulla <em>pariatur</em>. Excepteur sint occaecat cupidatat non
55
- proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>'
55
+ proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>"
56
56
  }
57
57
  },
58
58
  {
@@ -6,7 +6,7 @@
6
6
  </button>
7
7
  <div aria-hidden="true" class="c-collapsible__content {% if params.contentClasses %} {{ params.contentClasses }}{% else -%} py-sm{% endif %}" {%- if params.id %} id="{{params.id}}"{% endif %}>
8
8
  {% if params.html %}
9
- {{ params.html | safe }}
9
+ {{ params.html | filterquotes | safe }}
10
10
  {% else %}
11
11
  <p>
12
12
  {{ params.text }}
@@ -68,7 +68,7 @@
68
68
  {% if item.divider %}
69
69
  <div {%- if item.divider.classes %} class="{{ item.divider.classes }}{% endif %}" role="separator">
70
70
  {% if item.divider.html %}
71
- {{ item.divider.html | safe }}
71
+ {{ item.divider.html | filterquotes | safe }}
72
72
  {% else %}
73
73
  <p>
74
74
  {{ item.divider.text }}
@@ -11,8 +11,8 @@
11
11
  },
12
12
  "classes": "c-select--sm w-full",
13
13
  "label": {
14
- "text": "Selecciona año",
15
- "classes": "text-sm"
14
+ "text": "Selecciona un año para cargar sus datos",
15
+ "classes": "max-w-40 text-sm"
16
16
  },
17
17
  "items": [
18
18
  {
@@ -47,9 +47,10 @@
47
47
 
48
48
  {% set calendarDateExample %}
49
49
  <calendar-date
50
- min="2024-01-01"
51
- max="2024-12-31"
52
- locale="es-ES"
50
+ min="01-01-2024"
51
+ max="01-01-2025"
52
+ locale="es"
53
+ format="DD-MM-YYYY"
53
54
  >
54
55
  {{ buttonLeft | safe }}
55
56
  {{ buttonRight | safe }}
@@ -61,10 +62,10 @@
61
62
 
62
63
  {% macro calendarDateYearsExample(id='id') %}
63
64
  <calendar-date
64
- value="2024-01-10"
65
- min="2024-01-01"
66
- max="2024-12-31"
67
- locale="es-ES"
65
+ value="01-10-2024"
66
+ min="01-01-2024"
67
+ max="12-31-2024"
68
+ locale="es"
68
69
  >
69
70
  {{ buttonLeft | safe }}
70
71
  {{ buttonRight | safe }}
@@ -77,10 +78,10 @@
77
78
 
78
79
  {% set calendarMultiExample %}
79
80
  <calendar-multi
80
- value="2024-01-10 2024-01-20"
81
- min="2024-01-01"
82
- max="2024-12-31"
83
- locale="es-ES"
81
+ value="10-01-2024 20-01-2024"
82
+ min="01-01-2024"
83
+ max="31-12-2024"
84
+ locale="es"
84
85
  >
85
86
  {{ buttonLeft | safe }}
86
87
  {{ buttonRight | safe }}
@@ -92,10 +93,10 @@
92
93
 
93
94
  {% set calendarRangeExample %}
94
95
  <calendar-range
95
- value="2024-01-10/2024-01-20"
96
- min="2024-01-01"
97
- max="2024-12-31"
98
- locale="es-ES"
96
+ value="10-01-2024/20-01-2024"
97
+ min="01-01-2024"
98
+ max="21-12-2024"
99
+ locale="es"
99
100
  >
100
101
  {{ buttonLeft | safe }}
101
102
  {{ buttonRight | safe }}
@@ -108,10 +109,10 @@
108
109
  {% macro calendarRangeExample2(id='id') %}
109
110
  <calendar-range
110
111
  months="2"
111
- value="2024-01-16/2024-02-04"
112
- min="2024-01-01"
113
- max="2024-12-31"
114
- locale="es-ES"
112
+ value="01-01-2025/16-01-2025"
113
+ min="01-01-2025"
114
+ max="31-12-2025"
115
+ locale="es"
115
116
  >
116
117
  {{ buttonLeft | safe }}
117
118
  {{ buttonRight | safe }}
@@ -127,7 +128,7 @@
127
128
  {% set examples = [
128
129
  {
129
130
  "name": "standalone fecha única",
130
- "description": 'Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href="https://wicky.nillia.ms/cally/" class="c-link" title="Se abre en ventana nueva" target="_blank">Cally<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="0.8em" width="0.8em" class="inline-block mx-xs no-underline align-baseline" aria-hidden="true" focusable="false" role="img"><g><path fill="currentcolor" fill-rule="evenodd" d="M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z" clip-rule="evenodd" stroke-width="1"></path></g></svg></a> para añadir el calendario como un caller de este componente.',
131
+ "description": "Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href='https://wicky.nillia.ms/cally/' class='c-link' title='Se abre en ventana nueva' target='_blank'>Cally<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' height='0.8em' width='0.8em' class='inline-block mx-xs no-underline align-baseline' aria-hidden='true' focusable='false' role='img'><g><path fill='currentcolor' fill-rule='evenodd' d='M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z' clip-rule='evenodd' stroke-width='1'></path></g></svg></a> para añadir el calendario como un caller de este componente.",
131
132
  "data": {
132
133
  "id": "datepicker-date",
133
134
  "standalone": true,
@@ -136,7 +137,7 @@
136
137
  },
137
138
  {
138
139
  "name": "standalone fecha única y selector de año",
139
- "description": 'Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href="https://wicky.nillia.ms/cally/" class="c-link" title="Se abre en ventana nueva" target="_blank">Cally<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="0.8em" width="0.8em" class="inline-block mx-xs no-underline align-baseline" aria-hidden="true" focusable="false" role="img"><g><path fill="currentcolor" fill-rule="evenodd" d="M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z" clip-rule="evenodd" stroke-width="1"></path></g></svg></a> para añadir el calendario como un caller de este componente. En este ejemplo hemos personalizado el slot "header" del calendario de Cally para añadirle un componente Select como selector de año.',
140
+ "description": "Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href='https://wicky.nillia.ms/cally/' class='c-link' title='Se abre en ventana nueva' target='_blank'>Cally<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' height='0.8em' width='0.8em' class='inline-block mx-xs no-underline align-baseline' aria-hidden='true' focusable='false' role='img'><g><path fill='currentcolor' fill-rule='evenodd' d='M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z' clip-rule='evenodd' stroke-width='1'></path></g></svg></a> para añadir el calendario como un caller de este componente. En este ejemplo hemos personalizado el slot 'header' del calendario de Cally para añadirle un componente Select como selector de año.",
140
141
  "data": {
141
142
  "id": "datepicker-years",
142
143
  "standalone": true,
@@ -145,7 +146,7 @@
145
146
  },
146
147
  {
147
148
  "name": "standalone fechas múltiples",
148
- "description": 'Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href="https://wicky.nillia.ms/cally/" class="c-link" title="Se abre en ventana nueva" target="_blank">Cally<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="0.8em" width="0.8em" class="inline-block mx-xs no-underline align-baseline" aria-hidden="true" focusable="false" role="img"><g><path fill="currentcolor" fill-rule="evenodd" d="M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z" clip-rule="evenodd" stroke-width="1"></path></g></svg></a> para añadir el calendario como un caller de este componente. En este ejemplo hemos usado el componente <code>&#x3C;calendar-multi&#x3E;</code> de Cally para se puedan seleccionar múltiples fechas.',
149
+ "description": "Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href='https://wicky.nillia.ms/cally/' class='c-link' title='Se abre en ventana nueva' target='_blank'>Cally<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' height='0.8em' width='0.8em' class='inline-block mx-xs no-underline align-baseline' aria-hidden='true' focusable='false' role='img'><g><path fill='currentcolor' fill-rule='evenodd' d='M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z' clip-rule='evenodd' stroke-width='1'></path></g></svg></a> para añadir el calendario como un caller de este componente. En este ejemplo hemos usado el componente <code>&#x3C;calendar-multi&#x3E;</code> de Cally para se puedan seleccionar múltiples fechas.",
149
150
  "data": {
150
151
  "id": "datepicker-multi",
151
152
  "standalone": true,
@@ -154,7 +155,7 @@
154
155
  },
155
156
  {
156
157
  "name": "standalone rango de fechas",
157
- "description": 'Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href="https://wicky.nillia.ms/cally/" class="c-link" title="Se abre en ventana nueva" target="_blank">Cally<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="0.8em" width="0.8em" class="inline-block mx-xs no-underline align-baseline" aria-hidden="true" focusable="false" role="img"><g><path fill="currentcolor" fill-rule="evenodd" d="M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z" clip-rule="evenodd" stroke-width="1"></path></g></svg></a> para añadir el calendario como un caller de este componente. En este ejemplo hemos usado el componente <code>&#x3C;calendar-range&#x3E;</code> de Cally para que tenga un selector de rangos de fecha.',
158
+ "description": "Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href='https://wicky.nillia.ms/cally/' class='c-link' title='Se abre en ventana nueva' target='_blank'>Cally<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' height='0.8em' width='0.8em' class='inline-block mx-xs no-underline align-baseline' aria-hidden='true' focusable='false' role='img'><g><path fill='currentcolor' fill-rule='evenodd' d='M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z' clip-rule='evenodd' stroke-width='1'></path></g></svg></a> para añadir el calendario como un caller de este componente. En este ejemplo hemos usado el componente <code>&#x3C;calendar-range&#x3E;</code> de Cally para que tenga un selector de rangos de fecha.",
158
159
  "data": {
159
160
  "id": "datepicker-range",
160
161
  "standalone": true,
@@ -163,7 +164,7 @@
163
164
  },
164
165
  {
165
166
  "name": "standalone rango de fechas 2 meses y selector de año",
166
- "description": 'Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href="https://wicky.nillia.ms/cally/" class="c-link" title="Se abre en ventana nueva" target="_blank">Cally<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="0.8em" width="0.8em" class="inline-block mx-xs no-underline align-baseline" aria-hidden="true" focusable="false" role="img"><g><path fill="currentcolor" fill-rule="evenodd" d="M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z" clip-rule="evenodd" stroke-width="1"></path></g></svg></a> para añadir el calendario como un caller de este componente. En este ejemplo hemos usado los componentes <code>&#x3C;calendar-range months="2"&#x3E;</code> y <code>&#x3C;calendar-month offset="1"&#x3E;</code> de Cally para que tenga un selector de rangos de fecha mostrando 2 meses.',
167
+ "description": "Usa el parámetro <code>standalone: true</code> para mostrar solo el calendario sin el input. Usa la documentación de la librería <a href='https://wicky.nillia.ms/cally/' class='c-link' title='Se abre en ventana nueva' target='_blank'>Cally<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' height='0.8em' width='0.8em' class='inline-block mx-xs no-underline align-baseline' aria-hidden='true' focusable='false' role='img'><g><path fill='currentcolor' fill-rule='evenodd' d='M7.428571428571428 0.5714285714285714c-0.6311885714285713 0 -1.1428571428571428 0.5116742857142856 -1.1428571428571428 1.1428571428571428 0 0.6311771428571428 0.5116685714285714 1.1428571428571428 1.1428571428571428 1.1428571428571428h4.098057142857143L0.9061634285714285 13.477599999999999c-0.4463131428571428 0.4462857142857143 -0.4463131428571428 1.1699428571428572 0 1.6162285714285711 0.4463165714285714 0.4462857142857143 1.1699279999999999 0.4462857142857143 1.616248 0L13.142857142857142 4.473382857142857V8.571428571428571c0 0.6311771428571428 0.5116571428571428 1.1428571428571428 1.1428571428571428 1.1428571428571428s1.1428571428571428 -0.51168 1.1428571428571428 -1.1428571428571428v-6.857142857142857c0 -0.6311828571428572 -0.5116571428571428 -1.1428571428571428 -1.1428571428571428 -1.1428571428571428h-6.857142857142857Z' clip-rule='evenodd' stroke-width='1'></path></g></svg></a> para añadir el calendario como un caller de este componente. En este ejemplo hemos usado los componentes <code>&#x3C;calendar-range months='2'&#x3E;</code> y <code>&#x3C;calendar-month offset='1'&#x3E;</code> de Cally para que tenga un selector de rangos de fecha mostrando 2 meses.",
167
168
  "data": {
168
169
  "id": "datepicker-range2",
169
170
  "standalone": true,
@@ -179,72 +180,54 @@
179
180
  "text": "Elige fecha de inicio"
180
181
  },
181
182
  "hint": {
182
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>.'
183
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span>"
183
184
  },
184
- "pattern": "(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))",
185
185
  "caller": calendarDateExample | safe
186
186
  }
187
187
  },
188
188
  {
189
189
  "name": "Fechas múltiples",
190
190
  "data": {
191
- "id": "datepicker-with-hint-text",
191
+ "id": "datepicker-multiple-dates",
192
192
  "name": "test-name",
193
193
  "label": {
194
194
  "text": "Elige tus días disponibles"
195
195
  },
196
196
  "hint": {
197
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>. Separa tus fechas con un espacio.'
197
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span> Separa tus fechas con un espacio."
198
198
  },
199
- "value": "2024-01-10 2024-01-20",
199
+ "value": "10-01-2024 20-01-2024",
200
200
  "caller": calendarMultiExample | safe
201
201
  }
202
202
  },
203
203
  {
204
204
  "name": "Rango de fechas",
205
205
  "data": {
206
- "id": "datepicker-with-hint-text",
206
+ "id": "datepicker-range3",
207
207
  "name": "test-name",
208
208
  "label": {
209
209
  "text": "Elige tus días disponibles"
210
210
  },
211
211
  "hint": {
212
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>. Separa la fecha inicial de la final con una barra /.'
212
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span> Separa la fecha inicial de la final con una barra /."
213
213
  },
214
- "value": "2024-01-10/2024-01-20",
214
+ "value": "10-01-2024/20-01-2024",
215
215
  "caller": calendarRangeExample | safe
216
216
  }
217
217
  },
218
218
  {
219
219
  "name": "Rango de fechas 2 meses y selector de año",
220
220
  "data": {
221
- "id": "datepicker-with-hint-text",
221
+ "id": "datepicker-with-hint-text-and-year",
222
222
  "name": "test-name",
223
223
  "label": {
224
224
  "text": "Elige tus días disponibles"
225
225
  },
226
226
  "hint": {
227
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>. Separa la fecha inicial de la final con una /.'
228
- },
229
- "value": "2024-01-16/2024-02-04",
230
- "caller": calendarRangeExample2('datepicker-with-hint-text') | safe
231
- }
232
- },
233
- {
234
- "name": "con placeholder y label invisible",
235
- "data": {
236
- "id": "datepicker-with-placeholder",
237
- "name": "test-name",
238
- "label": {
239
- "text": "Elige rango de fechas",
240
- "classes": "sr-only"
241
- },
242
- "hint": {
243
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>.',
244
- "classes": "sr-only"
227
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span> Separa la fecha inicial de la final con una /."
245
228
  },
246
- "placeholder": "Elige fecha de inicio. Ej.: AAAA-MM-DD",
247
- "caller": calendarDateExample | safe
229
+ "value": "16-01-2024/04-02-2024",
230
+ "caller": calendarRangeExample2('datepicker-with-hint-text-and-year') | safe
248
231
  }
249
232
  },
250
233
  {
@@ -256,7 +239,7 @@
256
239
  "text": "Elige fecha de inicio"
257
240
  },
258
241
  "hint": {
259
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>.'
242
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span>"
260
243
  },
261
244
  "disabled": true,
262
245
  "pattern": "(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))",
@@ -272,7 +255,7 @@
272
255
  "text": "Elige fecha de inicio"
273
256
  },
274
257
  "hint": {
275
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>.'
258
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span>"
276
259
  },
277
260
  "errorMessage": {
278
261
  "text": "Error: Esto es un mensaje de error",
@@ -292,7 +275,7 @@
292
275
  "classes": "text-sm"
293
276
  },
294
277
  "hint": {
295
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>.',
278
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span>",
296
279
  "classes": "text-sm"
297
280
  },
298
281
  "classes": "c-input--sm",
@@ -311,10 +294,10 @@
311
294
  "text": "Elige fecha de inicio"
312
295
  },
313
296
  "hint": {
314
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>.'
297
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span>"
315
298
  },
316
299
  "dropdown": {
317
- "html": 'Seleccionar fecha<span class="sr-only"> con tabla de calendario</span>'
300
+ "html": "Seleccionar fecha<span class='sr-only'> con tabla de calendario</span>"
318
301
  },
319
302
  "classes": "flex-1",
320
303
  "pattern": "(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))",
@@ -332,11 +315,11 @@
332
315
  "classes": "text-sm"
333
316
  },
334
317
  "hint": {
335
- "html": 'Usa el formato: <span aria-hidden="true">AAAA-MM-DD (año-mes-día)</span><span class="sr-only">año con 4 dígitos, guión simple, mes con dos dígitos, guión simple y día con dos dígitos</span>.',
318
+ "html": "Usa el formato: <span aria-hidden='true'>DD-MM-AAAA (día-mes-año)</span><span class='sr-only'>día con dos dígitos, guión simple, mes con dos dígitos, guión simple y año con 4 dígitos.</span>",
336
319
  "classes": "text-sm"
337
320
  },
338
321
  "dropdown": {
339
- "html": 'Seleccionar fecha<span class="sr-only"> con tabla de calendario</span>',
322
+ "html": "Seleccionar fecha<span class='sr-only'> con tabla de calendario</span>",
340
323
  "classes": "c-dropdown--sm"
341
324
  },
342
325
  "classes": "flex-1 c-input--sm",
@@ -20,6 +20,10 @@
20
20
  @apply focus:outline-none;
21
21
  }
22
22
  }
23
+
24
+ &::part(today){
25
+ @apply font-bold underline;
26
+ }
23
27
  }
24
28
 
25
29
  calendar-date,
@@ -105,16 +105,24 @@
105
105
  {% else %}
106
106
  <div class="absolute top-0 right-0">
107
107
  {% call componentDropdown({
108
- "html": '<span class="sr-only">Seleccionar fecha con una tabla de calendario</span><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" width="1.375em" height="1.375em" aria-hidden="true"><g><path fill="currentColor" fill-rule="evenodd" d="M4.5 1.5c0 -0.552285 -0.44772 -1 -1 -1s-1 0.447715 -1 1v1H2C1.17157 2.5 0.5 3.17157 0.5 4v8c0 0.8284 0.67157 1.5 1.5 1.5h10c0.8284 0 1.5 -0.6716 1.5 -1.5V4c0 -0.82843 -0.6716 -1.5 -1.5 -1.5h-0.5v-1c0 -0.552285 -0.4477 -1 -1 -1 -0.55229 0 -1 0.447715 -1 1v1h-5v-1Zm-1 5.75c0.55228 0 1 -0.44772 1 -1s-0.44772 -1 -1 -1 -1 0.44772 -1 1 0.44772 1 1 1Zm3.5 0c0.55228 0 1 -0.44772 1 -1s-0.44772 -1 -1 -1 -1 0.44772 -1 1 0.44772 1 1 1Zm-2.5 3c0 0.5523 -0.44772 1 -1 1s-1 -0.4477 -1 -1c0 -0.55229 0.44772 -1 1 -1s1 0.44771 1 1Zm2.5 1c0.55228 0 1 -0.4477 1 -1 0 -0.55229 -0.44772 -1 -1 -1s-1 0.44771 -1 1c0 0.5523 0.44772 1 1 1Zm4.5 -5c0 0.55228 -0.4477 1 -1 1 -0.55229 0 -1 -0.44772 -1 -1s0.44771 -1 1 -1c0.5523 0 1 0.44772 1 1Z" clip-rule="evenodd" stroke-width="1"></path></g></svg>',
108
+ "html": "<span class='sr-only'>Seleccionar fecha con una tabla de calendario</span><svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' width='1.375em' height='1.375em' aria-hidden='true'><g><path fill='currentColor' fill-rule='evenodd' d='M4.5 1.5c0 -0.552285 -0.44772 -1 -1 -1s-1 0.447715 -1 1v1H2C1.17157 2.5 0.5 3.17157 0.5 4v8c0 0.8284 0.67157 1.5 1.5 1.5h10c0.8284 0 1.5 -0.6716 1.5 -1.5V4c0 -0.82843 -0.6716 -1.5 -1.5 -1.5h-0.5v-1c0 -0.552285 -0.4477 -1 -1 -1 -0.55229 0 -1 0.447715 -1 1v1h-5v-1Zm-1 5.75c0.55228 0 1 -0.44772 1 -1s-0.44772 -1 -1 -1 -1 0.44772 -1 1 0.44772 1 1 1Zm3.5 0c0.55228 0 1 -0.44772 1 -1s-0.44772 -1 -1 -1 -1 0.44772 -1 1 0.44772 1 1 1Zm-2.5 3c0 0.5523 -0.44772 1 -1 1s-1 -0.4477 -1 -1c0 -0.55229 0.44772 -1 1 -1s1 0.44771 1 1Zm2.5 1c0.55228 0 1 -0.4477 1 -1 0 -0.55229 -0.44772 -1 -1 -1s-1 0.44771 -1 1c0 0.5523 0.44772 1 1 1Zm4.5 -5c0 0.55228 -0.4477 1 -1 1 -0.55229 0 -1 -0.44772 -1 -1s0.44771 -1 1 -1c0.5523 0 1 0.44772 1 1Z' clip-rule='evenodd' stroke-width='1'></path></g></svg>",
109
109
  "classes": params.dropdownClasses if params.dropdownClasses else "c-dropdown--transparent",
110
110
  "disabled": params.disabled,
111
111
  "attributes": {
112
- "id": params.id + "-dropdown"
112
+ "id": params.id + "-dropdown",
113
+ "data-aria-haspopup": "dialog",
114
+ "data-role": "dialog",
115
+ "data-aria-modal": "false",
116
+ "data-aria-label": "Selección de fecha"
113
117
  }
114
118
  }) %}
115
119
  {{ datepickerContent | safe }}
116
120
  {{ dropdownActionButtons | safe }}
117
121
  {% endcall %}
122
+ {# Change the dropdown aria-haspopup="true" to "dialog" #}
123
+ <script>
124
+ document.getElementById('{{params.id}}-dropdown').setAttribute('aria-haspopup', 'dialog');
125
+ </script>
118
126
  </div>
119
127
  {% endif %}
120
128
  </div>