@eifi1/ui-kit 0.6.1 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/README.md +69 -33
  2. package/dist/chart.d.ts +1 -0
  3. package/dist/components/account-settings.js +3 -2
  4. package/dist/components/account-settings.js.map +1 -1
  5. package/dist/components/amount-input.d.ts +5 -0
  6. package/dist/components/amount-input.js +6 -4
  7. package/dist/components/amount-input.js.map +1 -1
  8. package/dist/components/autocomplete.d.ts +33 -6
  9. package/dist/components/autocomplete.js +62 -16
  10. package/dist/components/autocomplete.js.map +1 -1
  11. package/dist/components/calculator.d.ts +5 -0
  12. package/dist/components/calculator.js +2 -1
  13. package/dist/components/calculator.js.map +1 -1
  14. package/dist/components/chart-zoom.js +2 -1
  15. package/dist/components/chart-zoom.js.map +1 -1
  16. package/dist/components/chart.d.ts +33 -2
  17. package/dist/components/chart.js +20 -8
  18. package/dist/components/chart.js.map +1 -1
  19. package/dist/components/chip.d.ts +34 -14
  20. package/dist/components/chip.js +63 -28
  21. package/dist/components/chip.js.map +1 -1
  22. package/dist/components/choice-card.d.ts +18 -1
  23. package/dist/components/choice-card.js +21 -8
  24. package/dist/components/choice-card.js.map +1 -1
  25. package/dist/components/combobox-core.d.ts +61 -2
  26. package/dist/components/combobox-core.js +68 -17
  27. package/dist/components/combobox-core.js.map +1 -1
  28. package/dist/components/combobox.d.ts +11 -7
  29. package/dist/components/combobox.js +51 -28
  30. package/dist/components/combobox.js.map +1 -1
  31. package/dist/components/currency-select.js +3 -3
  32. package/dist/components/currency-select.js.map +1 -1
  33. package/dist/components/danger-confirm.d.ts +30 -6
  34. package/dist/components/danger-confirm.js +51 -32
  35. package/dist/components/danger-confirm.js.map +1 -1
  36. package/dist/components/data-table-filter-popover.d.ts +1 -1
  37. package/dist/components/data-table-filters.d.ts +1 -1
  38. package/dist/components/data-table-pagination.d.ts +6 -3
  39. package/dist/components/data-table-pagination.js +6 -5
  40. package/dist/components/data-table-pagination.js.map +1 -1
  41. package/dist/components/data-table.d.ts +1 -1
  42. package/dist/components/data-table.js +332 -248
  43. package/dist/components/data-table.js.map +1 -1
  44. package/dist/components/date-picker.js +17 -7
  45. package/dist/components/date-picker.js.map +1 -1
  46. package/dist/components/dialog-frame.d.ts +28 -3
  47. package/dist/components/dialog-frame.js +47 -11
  48. package/dist/components/dialog-frame.js.map +1 -1
  49. package/dist/components/disclosure.d.ts +22 -2
  50. package/dist/components/disclosure.js +41 -8
  51. package/dist/components/disclosure.js.map +1 -1
  52. package/dist/components/dropdown.d.ts +7 -3
  53. package/dist/components/dropdown.js +6 -2
  54. package/dist/components/dropdown.js.map +1 -1
  55. package/dist/components/entity-combobox.d.ts +17 -8
  56. package/dist/components/entity-combobox.js +7 -5
  57. package/dist/components/entity-combobox.js.map +1 -1
  58. package/dist/components/file-button.d.ts +38 -5
  59. package/dist/components/file-button.js +23 -2
  60. package/dist/components/file-button.js.map +1 -1
  61. package/dist/components/file-dropzone.d.ts +11 -5
  62. package/dist/components/file-dropzone.js +14 -19
  63. package/dist/components/file-dropzone.js.map +1 -1
  64. package/dist/components/grouped-picker.js +2 -2
  65. package/dist/components/grouped-picker.js.map +1 -1
  66. package/dist/components/hover-menu.d.ts +8 -3
  67. package/dist/components/hover-menu.js +88 -4
  68. package/dist/components/hover-menu.js.map +1 -1
  69. package/dist/components/icon-picker.d.ts +10 -1
  70. package/dist/components/icon-picker.js +5 -1
  71. package/dist/components/icon-picker.js.map +1 -1
  72. package/dist/components/measured-grid.d.ts +165 -0
  73. package/dist/components/measured-grid.js +559 -0
  74. package/dist/components/measured-grid.js.map +1 -0
  75. package/dist/components/mini-calendar.js +7 -8
  76. package/dist/components/mini-calendar.js.map +1 -1
  77. package/dist/components/month-picker.js +13 -9
  78. package/dist/components/month-picker.js.map +1 -1
  79. package/dist/components/multi-entity-combobox.js +2 -2
  80. package/dist/components/multi-entity-combobox.js.map +1 -1
  81. package/dist/components/multi-select.d.ts +9 -1
  82. package/dist/components/multi-select.js +22 -8
  83. package/dist/components/multi-select.js.map +1 -1
  84. package/dist/components/number-field.d.ts +5 -0
  85. package/dist/components/number-input.d.ts +5 -0
  86. package/dist/components/number-input.js +3 -3
  87. package/dist/components/number-input.js.map +1 -1
  88. package/dist/components/numpad-sheet.d.ts +5 -0
  89. package/dist/components/numpad-sheet.js +3 -3
  90. package/dist/components/numpad-sheet.js.map +1 -1
  91. package/dist/components/picker-sheet.js +1 -1
  92. package/dist/components/picker-sheet.js.map +1 -1
  93. package/dist/components/popover.js +11 -2
  94. package/dist/components/popover.js.map +1 -1
  95. package/dist/components/series-chart-ticks.d.ts +13 -0
  96. package/dist/components/series-chart-ticks.js +29 -0
  97. package/dist/components/series-chart-ticks.js.map +1 -0
  98. package/dist/components/series-chart.js +33 -27
  99. package/dist/components/series-chart.js.map +1 -1
  100. package/dist/components/settings-fields.d.ts +2 -0
  101. package/dist/components/swatch-picker.d.ts +10 -1
  102. package/dist/components/swatch-picker.js +2 -0
  103. package/dist/components/swatch-picker.js.map +1 -1
  104. package/dist/components/swipeable-row.d.ts +11 -2
  105. package/dist/components/swipeable-row.js +5 -3
  106. package/dist/components/swipeable-row.js.map +1 -1
  107. package/dist/components/tile-radio.js +5 -7
  108. package/dist/components/tile-radio.js.map +1 -1
  109. package/dist/components/time-input.d.ts +2 -0
  110. package/dist/components/toggle-group.d.ts +13 -3
  111. package/dist/components/toggle-group.js +21 -1
  112. package/dist/components/toggle-group.js.map +1 -1
  113. package/dist/components/toggle-legend.js +1 -2
  114. package/dist/components/toggle-legend.js.map +1 -1
  115. package/dist/components/tooltip.d.ts +10 -4
  116. package/dist/components/tooltip.js +23 -6
  117. package/dist/components/tooltip.js.map +1 -1
  118. package/dist/components/treemap.d.ts +6 -1
  119. package/dist/components/treemap.js +16 -6
  120. package/dist/components/treemap.js.map +1 -1
  121. package/dist/components/ui.d.ts +36 -8
  122. package/dist/components/ui.js +27 -19
  123. package/dist/components/ui.js.map +1 -1
  124. package/dist/components/use-anchor-dir.d.ts +15 -0
  125. package/dist/components/use-anchor-dir.js +14 -0
  126. package/dist/components/use-anchor-dir.js.map +1 -0
  127. package/dist/components/use-mobile-reveal.d.ts +8 -1
  128. package/dist/components/use-mobile-reveal.js +3 -2
  129. package/dist/components/use-mobile-reveal.js.map +1 -1
  130. package/dist/components/use-table-state.d.ts +4 -4
  131. package/dist/components/use-table-state.js +12 -5
  132. package/dist/components/use-table-state.js.map +1 -1
  133. package/dist/{data-table-filters-DM1auUfH.d.ts → data-table-filters-noy0Abvi.d.ts} +40 -7
  134. package/dist/data-table.d.ts +1 -1
  135. package/dist/data-table.js.map +1 -1
  136. package/dist/feedback/feedback-attachment.d.ts +22 -3
  137. package/dist/feedback/feedback-attachment.js +15 -7
  138. package/dist/feedback/feedback-attachment.js.map +1 -1
  139. package/dist/feedback/feedback-dialog.d.ts +3 -2
  140. package/dist/feedback/feedback-dialog.js.map +1 -1
  141. package/dist/feedback.d.ts +1 -1
  142. package/dist/hooks/use-windowed-rows.d.ts +29 -0
  143. package/dist/hooks/use-windowed-rows.js +31 -0
  144. package/dist/hooks/use-windowed-rows.js.map +1 -0
  145. package/dist/i18n/defaults.d.ts +5 -0
  146. package/dist/i18n/defaults.js +5 -1
  147. package/dist/i18n/defaults.js.map +1 -1
  148. package/dist/i18n/kit-labels.d.ts +7 -0
  149. package/dist/i18n/kit-labels.js.map +1 -1
  150. package/dist/i18n/locales/de-CH.d.ts +45 -0
  151. package/dist/i18n/locales/de-CH.js +21 -0
  152. package/dist/i18n/locales/de-CH.js.map +1 -0
  153. package/dist/i18n/locales/de.d.ts +45 -0
  154. package/dist/i18n/locales/de.js +344 -0
  155. package/dist/i18n/locales/de.js.map +1 -0
  156. package/dist/i18n/locales/es.d.ts +45 -0
  157. package/dist/i18n/locales/es.js +339 -0
  158. package/dist/i18n/locales/es.js.map +1 -0
  159. package/dist/i18n/locales/fr.d.ts +45 -0
  160. package/dist/i18n/locales/fr.js +344 -0
  161. package/dist/i18n/locales/fr.js.map +1 -0
  162. package/dist/i18n/locales/hu.d.ts +45 -0
  163. package/dist/i18n/locales/hu.js +343 -0
  164. package/dist/i18n/locales/hu.js.map +1 -0
  165. package/dist/i18n/locales/it.d.ts +45 -0
  166. package/dist/i18n/locales/it.js +342 -0
  167. package/dist/i18n/locales/it.js.map +1 -0
  168. package/dist/i18n/locales/zh.d.ts +45 -0
  169. package/dist/i18n/locales/zh.js +338 -0
  170. package/dist/i18n/locales/zh.js.map +1 -0
  171. package/dist/index.d.ts +7 -4
  172. package/dist/index.js +4 -1
  173. package/dist/index.js.map +1 -1
  174. package/dist/lib/direction.d.ts +24 -0
  175. package/dist/lib/direction.js +19 -0
  176. package/dist/lib/direction.js.map +1 -0
  177. package/dist/rhf/form.d.ts +2 -0
  178. package/dist/rhf/form.js.map +1 -1
  179. package/dist/rhf.d.ts +2 -0
  180. package/dist/search/command-palette.d.ts +5 -0
  181. package/dist/search/command-palette.js +80 -50
  182. package/dist/search/command-palette.js.map +1 -1
  183. package/dist/shell/app-shell.d.ts +13 -1
  184. package/dist/shell/app-shell.js +134 -85
  185. package/dist/shell/app-shell.js.map +1 -1
  186. package/dist/shell/topbar-action-menu.js +1 -1
  187. package/dist/shell/topbar-action-menu.js.map +1 -1
  188. package/dist/shell/topbar-controls.d.ts +7 -3
  189. package/dist/shell/topbar-controls.js +38 -31
  190. package/dist/shell/topbar-controls.js.map +1 -1
  191. package/dist/theme/chart-palette.d.ts +7 -1
  192. package/dist/theme/chart-palette.js +2 -1
  193. package/dist/theme/chart-palette.js.map +1 -1
  194. package/dist/tour/tour.d.ts +11 -5
  195. package/dist/tour/tour.js +124 -58
  196. package/dist/tour/tour.js.map +1 -1
  197. package/dist/wizard/use-wizard.js +30 -13
  198. package/dist/wizard/use-wizard.js.map +1 -1
  199. package/dist/wizard/wizard-summary.js +1 -1
  200. package/dist/wizard/wizard-summary.js.map +1 -1
  201. package/package.json +12 -2
  202. package/src/components/account-settings.tsx +6 -2
  203. package/src/components/amount-input.tsx +10 -8
  204. package/src/components/autocomplete.tsx +110 -24
  205. package/src/components/calculator.tsx +5 -1
  206. package/src/components/chart-zoom.tsx +8 -1
  207. package/src/components/chart.tsx +68 -7
  208. package/src/components/chip.tsx +131 -49
  209. package/src/components/choice-card.tsx +77 -36
  210. package/src/components/combobox-core.tsx +147 -20
  211. package/src/components/combobox.tsx +100 -44
  212. package/src/components/currency-select.tsx +6 -6
  213. package/src/components/danger-confirm.tsx +90 -36
  214. package/src/components/data-table-pagination.tsx +32 -19
  215. package/src/components/data-table.tsx +198 -36
  216. package/src/components/date-picker.tsx +24 -7
  217. package/src/components/dialog-frame.tsx +97 -22
  218. package/src/components/disclosure.tsx +75 -13
  219. package/src/components/dropdown.tsx +17 -5
  220. package/src/components/entity-combobox.tsx +26 -13
  221. package/src/components/file-button.tsx +74 -5
  222. package/src/components/file-dropzone.tsx +44 -35
  223. package/src/components/grouped-picker.tsx +2 -2
  224. package/src/components/hover-menu.tsx +139 -10
  225. package/src/components/icon-picker.tsx +14 -1
  226. package/src/components/measured-grid.tsx +852 -0
  227. package/src/components/mini-calendar.tsx +11 -8
  228. package/src/components/month-picker.tsx +18 -11
  229. package/src/components/multi-entity-combobox.tsx +2 -2
  230. package/src/components/multi-select.tsx +34 -7
  231. package/src/components/number-input.tsx +4 -4
  232. package/src/components/numpad-sheet.tsx +5 -3
  233. package/src/components/picker-sheet.tsx +1 -1
  234. package/src/components/popover.tsx +18 -3
  235. package/src/components/series-chart-ticks.ts +52 -0
  236. package/src/components/series-chart.tsx +39 -31
  237. package/src/components/swatch-picker.tsx +11 -0
  238. package/src/components/swipeable-row.tsx +21 -6
  239. package/src/components/tile-radio.tsx +5 -7
  240. package/src/components/toggle-group.tsx +39 -3
  241. package/src/components/toggle-legend.tsx +5 -2
  242. package/src/components/tooltip.tsx +40 -12
  243. package/src/components/treemap.tsx +28 -5
  244. package/src/components/ui.tsx +79 -33
  245. package/src/components/use-anchor-dir.ts +20 -0
  246. package/src/components/use-mobile-reveal.ts +10 -2
  247. package/src/components/use-table-state.ts +44 -7
  248. package/src/data-table.ts +1 -0
  249. package/src/feedback/feedback-attachment.tsx +36 -9
  250. package/src/feedback/feedback-dialog.tsx +3 -2
  251. package/src/hooks/use-windowed-rows.ts +69 -0
  252. package/src/i18n/defaults.ts +4 -0
  253. package/src/i18n/kit-labels.tsx +4 -0
  254. package/src/i18n/locales/de-CH.ts +30 -0
  255. package/src/i18n/locales/de.ts +365 -0
  256. package/src/i18n/locales/es.ts +358 -0
  257. package/src/i18n/locales/fr.ts +371 -0
  258. package/src/i18n/locales/hu.ts +359 -0
  259. package/src/i18n/locales/it.ts +360 -0
  260. package/src/i18n/locales/zh.ts +348 -0
  261. package/src/index.ts +10 -1
  262. package/src/lib/direction.ts +37 -0
  263. package/src/rhf/form.tsx +21 -0
  264. package/src/search/command-palette.tsx +77 -19
  265. package/src/shell/app-shell.tsx +201 -130
  266. package/src/shell/topbar-action-menu.tsx +1 -1
  267. package/src/shell/topbar-controls.tsx +19 -8
  268. package/src/theme/chart-palette.ts +9 -2
  269. package/src/tour/tour.tsx +119 -18
  270. package/src/wizard/use-wizard.ts +55 -17
  271. package/src/wizard/wizard-summary.tsx +1 -1
@@ -0,0 +1,358 @@
1
+ import { formatFileSize } from "../kit-labels";
2
+ import type { UiKitLabels } from "../kit-labels";
3
+
4
+ /**
5
+ * The kit's words in Spanish: every namespace of {@link UiKitLabels}, for
6
+ * `<UiKitProvider labels={UI_KIT_LABELS_ES}>`.
7
+ *
8
+ * Self-contained on purpose — nothing but the kit's own `formatFileSize` — so it works
9
+ * as a starting point to copy and adjust. Counts and sizes are formatted with
10
+ * `es-ES` digits; {@link uiKitLabelsEs} takes another number locale
11
+ * (e.g. `"de-CH"` for 1’234) without touching the words.
12
+ */
13
+ export function uiKitLabelsEs(numberLocale = "es-ES"): UiKitLabels {
14
+ const num = new Intl.NumberFormat(numberLocale);
15
+ const n = (value: number) => num.format(value);
16
+ const plural = (count: number, one: string, many: string) => (count === 1 ? one : many);
17
+
18
+ return {
19
+ feedbackAttachment: {
20
+ attachmentAdd: "Adjuntar imagen",
21
+ attachmentCapture: "Capturar pantalla",
22
+ attachmentPaste: "…o pega una captura de pantalla desde el portapapeles.",
23
+ attachmentRemove: "Quitar adjunto",
24
+ },
25
+ measuredGrid: {
26
+ view: "Vista de tabla",
27
+ cellsView: "Celdas",
28
+ textView: "Texto",
29
+ addRow: "Añadir fila",
30
+ removeRow: (row) => `Quitar la fila ${row}`,
31
+ clear: "Vaciar tabla",
32
+ pasteHint: "Pega un bloque de una hoja de cálculo en cualquier celda",
33
+ cell: (column, row) => `${column}, fila ${row}`,
34
+ rowNumber: "Fila",
35
+ rowActions: "Acciones de fila",
36
+ keyboardHint:
37
+ "Las flechas mueven entre celdas. Escribe para reemplazar una celda, F2 para editarla, Escape para deshacer la edición. Intro baja y añade una fila al final.",
38
+ lineError: (line) => `No se pudo leer la línea ${line}`,
39
+ points: (count) => (count === 1 ? "1 punto" : `${count} puntos`),
40
+ problems: (count) =>
41
+ count === 1 ? "1 celda no es un número" : `${count} celdas no son números`,
42
+ },
43
+ pageContents: { title: "En esta página" },
44
+ common: {
45
+ close: "Cerrar",
46
+ clear: "Borrar",
47
+ search: "Buscar",
48
+ done: "Listo",
49
+ cancel: "Cancelar",
50
+ save: "Guardar",
51
+ back: "Atrás",
52
+ next: "Siguiente",
53
+ remove: "Quitar",
54
+ loading: "Cargando…",
55
+ noResults: "Sin resultados",
56
+ fieldValue: (field, value) => `${field}: ${value}`,
57
+ },
58
+ dataTable: {
59
+ columns: "Columnas",
60
+ selectAllRows: "Seleccionar todas las filas",
61
+ sortHint: "Haz clic para ordenar · Mayús+clic para añadir un criterio",
62
+ filter: "Filtrar",
63
+ close: "Cerrar",
64
+ selectRow: "Seleccionar fila",
65
+ autoSize: "Ajustar ancho de columnas",
66
+ loading: "Cargando…",
67
+ filters: "Filtros",
68
+ clearAll: "Borrar todo",
69
+ done: "Listo",
70
+ pageSize: "Filas por página",
71
+ pageSizeAll: "Todas",
72
+ prevPage: "Página anterior",
73
+ nextPage: "Página siguiente",
74
+ clearFilter: "Borrar filtro",
75
+ filterPlaceholder: "Filtrar…",
76
+ selectFilter: "Seleccionar",
77
+ selectAll: "Todos",
78
+ selectNone: "Ninguno",
79
+ dateFrom: "Desde",
80
+ dateTo: "Hasta",
81
+ numberMin: "Mín.",
82
+ numberMax: "Máx.",
83
+ numberAbs: "Valor absoluto",
84
+ presets: {
85
+ today: "Hoy",
86
+ yesterday: "Ayer",
87
+ this_week: "Esta semana",
88
+ last_week: "Semana pasada",
89
+ last_7_days: "Últimos 7 días",
90
+ last_30_days: "Últimos 30 días",
91
+ this_month: "Este mes",
92
+ last_month: "Mes pasado",
93
+ last_3_months: "Últimos 3 meses",
94
+ ytd: "En lo que va de año",
95
+ last_year: "Año pasado",
96
+ },
97
+ table: "Tabla de datos",
98
+ filterResults: (shown, total) =>
99
+ `${n(shown)} de ${n(total)} ${plural(total, "fila", "filas")}`,
100
+ sortedAscending: (column) => `Ordenado por ${column}, ascendente`,
101
+ sortedDescending: (column) => `Ordenado por ${column}, descendente`,
102
+ sortCleared: (column) => `Orden por ${column} eliminado`,
103
+ pageChanged: (page, totalPages) => `Página ${n(page)} de ${n(totalPages)}`,
104
+ pageRange: (from, to, total) => `${n(from)}–${n(to)} / ${n(total)}`,
105
+ rowCount: (total) => n(total),
106
+ columnsCount: (visible, total) => `Columnas (${n(visible)}/${n(total)})`,
107
+ },
108
+ miniCalendar: {
109
+ previousMonth: "Mes anterior",
110
+ nextMonth: "Mes siguiente",
111
+ // Already formatted in the provider's locale ("lunes, 14 de septiembre de 2026").
112
+ day: (date) => date,
113
+ chooseStart: "Elige una fecha de inicio",
114
+ chooseEnd: "Elige una fecha de fin",
115
+ // "Fecha" is feminine; the date follows a label rather than being the subject of
116
+ // a participle it cannot agree with.
117
+ startSelected: (date) => `Fecha de inicio: ${date}. Elige una fecha de fin.`,
118
+ rangeSelected: (from, to) =>
119
+ `Periodo seleccionado: del ${from} al ${to}. Elige una fecha de inicio para empezar de nuevo.`,
120
+ },
121
+ monthPicker: {
122
+ previousYear: "Año anterior",
123
+ nextYear: "Año siguiente",
124
+ panel: "Elegir un mes",
125
+ month: (monthYear) => monthYear,
126
+ },
127
+ datePicker: {
128
+ panel: "Elegir una fecha",
129
+ rangePanel: "Elegir un intervalo de fechas",
130
+ clear: "Borrar",
131
+ previousDay: "Día anterior",
132
+ nextDay: "Día siguiente",
133
+ today: "Hoy",
134
+ },
135
+ popover: {
136
+ panel: "Ventana emergente",
137
+ },
138
+ combobox: {
139
+ search: "Buscar",
140
+ noResults: "Sin resultados",
141
+ clear: "Borrar",
142
+ loading: "Cargando…",
143
+ create: (query) => `Crear «${query}»`,
144
+ selectedCount: (count) => `${n(count)} ${plural(count, "seleccionado", "seleccionados")}`,
145
+ loadError: "No se han podido cargar los resultados",
146
+ resultCount: (count) => `${n(count)} ${plural(count, "resultado", "resultados")}`,
147
+ minChars: (count) =>
148
+ `Escribe al menos ${n(count)} ${plural(count, "carácter", "caracteres")}`,
149
+ },
150
+ multiSelect: {
151
+ search: "Buscar",
152
+ selectAll: "Seleccionar todo",
153
+ clear: "Borrar",
154
+ all: "Todos",
155
+ // The bare count, as in English: the trigger has always shown just the number.
156
+ selectedCount: (count) => n(count),
157
+ },
158
+ calculator: {
159
+ open: "Abrir calculadora",
160
+ panel: "Calculadora",
161
+ calculation: "Cálculo",
162
+ backspace: "Retroceso",
163
+ clear: "Borrar",
164
+ equals: "Igual",
165
+ done: "Listo",
166
+ plus: "Más",
167
+ minus: "Menos",
168
+ times: "Por",
169
+ divide: "Entre",
170
+ decimal: "Separador decimal",
171
+ },
172
+ currency: {
173
+ currency: "Moneda",
174
+ search: "Buscar moneda",
175
+ },
176
+ chipInput: {
177
+ added: (value) => `«${value}» añadido`,
178
+ removed: (value) => `«${value}» quitado`,
179
+ remove: "Quitar",
180
+ atLimit: (max) => `Límite de ${n(max)} ${plural(max, "elemento", "elementos")} alcanzado`,
181
+ duplicate: (value) => `«${value}» ya está en la lista`,
182
+ },
183
+ swatchPicker: {
184
+ none: "Sin color",
185
+ mixed: "Mixto: los elementos seleccionados tienen colores distintos",
186
+ },
187
+ iconPicker: {
188
+ none: "Sin icono",
189
+ mixed: "Mixto: los elementos seleccionados tienen iconos distintos",
190
+ search: "Buscar iconos",
191
+ noResults: "Ningún icono coincide",
192
+ resultCount: (count) => `${n(count)} ${plural(count, "icono", "iconos")}`,
193
+ },
194
+ fieldSync: {
195
+ synced: "Guardado",
196
+ edited: "Cambios sin guardar",
197
+ pending: "Guardando…",
198
+ error: "No se pudo guardar",
199
+ retry: "Reintentar",
200
+ },
201
+ passwordReveal: {
202
+ show: "Mostrar contraseña",
203
+ hide: "Ocultar contraseña",
204
+ },
205
+ dangerConfirm: {
206
+ arm: "Eliminar…",
207
+ confirm: "Eliminar",
208
+ cancel: "Cancelar",
209
+ prompt: "Esta acción no se puede deshacer.",
210
+ password: "Contraseña",
211
+ phrase: (phrase) => `Escribe «${phrase}» para confirmar`,
212
+ },
213
+ tabs: {
214
+ add: "Añadir pestaña",
215
+ remove: (tab) => `Quitar ${tab}`,
216
+ },
217
+ appShell: {
218
+ collapse: "Contraer barra lateral",
219
+ expand: "Expandir barra lateral",
220
+ toggleGroup: (groupLabel) => `${groupLabel}: páginas`,
221
+ },
222
+ topBar: {
223
+ theme: "Cambiar de tema",
224
+ palette: "Ajuste de apariencia",
225
+ language: "Idioma",
226
+ switchRole: "Cambiar de rol",
227
+ role: (value) => `Rol: ${value}`,
228
+ },
229
+ pickerSheet: {
230
+ close: "Cerrar",
231
+ },
232
+ dialogFrame: {
233
+ close: "Cerrar",
234
+ },
235
+ swipeableRow: {
236
+ actions: "Acciones de la fila",
237
+ },
238
+ file: {
239
+ // The kit's own `Intl` unit formatting, pinned to this locale ("3,4 MB").
240
+ size: (bytes) => formatFileSize(bytes, numberLocale),
241
+ },
242
+ filePicker: {
243
+ rejectedPick: (count) =>
244
+ count === 1 ? "El archivo no se añadió" : `No se añadió ninguno de los ${count} archivos`,
245
+ rejectedType: (name) => `El tipo de archivo de «${name}» no es compatible`,
246
+ rejectedTypeOnly: (accept) => `Solo archivos ${accept}`,
247
+ rejectedSize: (name, maxSize) => `«${name}» supera ${maxSize}`,
248
+ rejectedCount: (name, maxFiles) =>
249
+ `«${name}» no se ha añadido: como máximo ${n(maxFiles)} ${plural(maxFiles, "archivo", "archivos")}`,
250
+ rejectedInvalid: (name) => `«${name}» no se puede usar aquí`,
251
+ rejectedMany: (count) =>
252
+ count === 1 ? "1 archivo no se ha añadido" : `${n(count)} archivos no se han añadido`,
253
+ selected: (count, firstName) =>
254
+ count === 1 ? `«${firstName}» seleccionado` : `${n(count)} archivos seleccionados`,
255
+ remove: (name) => `Quitar «${name}»`,
256
+ clearAll: "Quitar todos los archivos",
257
+ removed: (name) => `«${name}» quitado`,
258
+ cleared: "Se han quitado todos los archivos",
259
+ },
260
+ wizard: {
261
+ cancel: "Cancelar",
262
+ back: "Atrás",
263
+ next: "Siguiente",
264
+ skip: "Omitir",
265
+ finish: "Finalizar",
266
+ submitting: "Creando…",
267
+ steps: "Pasos",
268
+ step: (current, total) => `Paso ${n(current)} de ${n(total)}`,
269
+ cancelTitle: "¿Descartar este formulario?",
270
+ confirmCancel: "Se perderán los datos introducidos.",
271
+ cancelConfirmLabel: "Descartar",
272
+ cancelDismissLabel: "Seguir editando",
273
+ reviewTitle: "Revisión",
274
+ edit: "Editar",
275
+ missingRequired: "Rellena todos los campos obligatorios.",
276
+ genericError: "Se ha producido un error",
277
+ },
278
+ tour: {
279
+ next: "Siguiente",
280
+ back: "Atrás",
281
+ skip: "Omitir",
282
+ done: "Listo",
283
+ awaitClickHint: "Haz clic en el elemento resaltado para continuar",
284
+ step: (current, total) => `${n(current)} / ${n(total)}`,
285
+ },
286
+ commandPalette: {
287
+ placeholder: "Buscar…",
288
+ empty: "Sin resultados",
289
+ loading: "Buscando…",
290
+ dialog: "Búsqueda",
291
+ error: "La búsqueda ha fallado. Inténtelo de nuevo.",
292
+ },
293
+ sparkline: {
294
+ rising: (first, last) => `Sube de ${first} a ${last}`,
295
+ falling: (first, last) => `Baja de ${first} a ${last}`,
296
+ flat: (value) => `Estable en ${value}`,
297
+ single: (value) => `Un único valor: ${value}`,
298
+ noData: "Sin datos",
299
+ named: (name, summary) => `${name}: ${summary}`,
300
+ },
301
+ statTile: {
302
+ increase: (amount) => `Sube ${amount}`,
303
+ decrease: (amount) => `Baja ${amount}`,
304
+ unchanged: "Sin cambios",
305
+ better: (change) => `${change} (favorable)`,
306
+ worse: (change) => `${change} (desfavorable)`,
307
+ noValue: "Sin datos",
308
+ loading: "Cargando…",
309
+ },
310
+ signaturePad: {
311
+ label: "Firma",
312
+ instructions: "Firma en el recuadro con el ratón, el dedo o un lápiz.",
313
+ typedFallbackHint: "Si no puedes dibujar, escribe tu nombre.",
314
+ empty: "Aún no hay nada dibujado",
315
+ signed: "Firma dibujada",
316
+ undo: "Deshacer el último trazo",
317
+ clear: "Borrar",
318
+ save: "Guardar firma",
319
+ useTyped: "Escribir el nombre",
320
+ useDrawn: "Dibujar la firma",
321
+ typedName: "Nombre completo",
322
+ cleared: "Firma borrada",
323
+ undone: "Último trazo eliminado",
324
+ viewEmpty: "Sin firmar",
325
+ viewDrawn: "Firma manuscrita",
326
+ viewTyped: (name) => `Firmado con el nombre escrito ${name}`,
327
+ },
328
+ passwordStrength: {
329
+ // Agrees with "contraseña" (feminine).
330
+ tooShort: "Demasiado corta",
331
+ weak: "Débil",
332
+ fair: "Aceptable",
333
+ good: "Buena",
334
+ strong: "Fuerte",
335
+ announcement: (level) => `Seguridad de la contraseña: ${level}`,
336
+ // Unformatted, as in the English default.
337
+ ruleLength: (minLength) =>
338
+ `Al menos ${minLength} ${plural(minLength, "carácter", "caracteres")}`,
339
+ ruleCase: "Mayúsculas y minúsculas",
340
+ ruleDigit: "Un número",
341
+ ruleSymbol: "Un símbolo",
342
+ optional: (rule) => `${rule} (opcional)`,
343
+ met: "Cumplido:",
344
+ notMet: "No cumplido:",
345
+ tooLong: (maxBytes) =>
346
+ `Como máximo ${maxBytes} ${plural(maxBytes, "carácter", "caracteres")} (las letras con tilde y los emojis cuentan como más de uno).`,
347
+ },
348
+ seriesChart: {
349
+ resetZoom: "Restablecer zoom",
350
+ zoomHint:
351
+ "Arrastra para ampliar: una selección más o menos cuadrada amplía ambos ejes; una larga y estrecha, solo el suyo. Haz doble clic para restablecer.",
352
+ empty: "Sin datos",
353
+ legend: "Series",
354
+ },
355
+ };
356
+ }
357
+
358
+ export const UI_KIT_LABELS_ES: UiKitLabels = uiKitLabelsEs();