@evotecit/canopyx 0.1.2 → 0.2.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 (85) hide show
  1. package/CanopyX.Html/Assets/canopyx-calendar-edit.js +113 -0
  2. package/CanopyX.Html/Assets/canopyx-calendar-ics.js +87 -0
  3. package/CanopyX.Html/Assets/canopyx-calendar-recurrence.js +36 -0
  4. package/CanopyX.Html/Assets/canopyx-calendar.css +279 -0
  5. package/CanopyX.Html/Assets/canopyx-calendar.js +307 -0
  6. package/CanopyX.Html/Assets/canopyx-cell-range.css +38 -0
  7. package/CanopyX.Html/Assets/canopyx-cell-range.js +141 -0
  8. package/CanopyX.Html/Assets/canopyx-column-groups.css +18 -0
  9. package/CanopyX.Html/Assets/canopyx-column-groups.js +51 -0
  10. package/CanopyX.Html/Assets/canopyx-data.js +14 -0
  11. package/CanopyX.Html/Assets/canopyx-detail-rows.css +18 -0
  12. package/CanopyX.Html/Assets/canopyx-detail-rows.js +51 -0
  13. package/CanopyX.Html/Assets/canopyx-editing.css +44 -0
  14. package/CanopyX.Html/Assets/canopyx-editing.js +134 -0
  15. package/CanopyX.Html/Assets/canopyx-enhance.js +126 -0
  16. package/CanopyX.Html/Assets/canopyx-export.js +18 -0
  17. package/CanopyX.Html/Assets/canopyx-facets.css +86 -0
  18. package/CanopyX.Html/Assets/canopyx-facets.js +65 -0
  19. package/CanopyX.Html/Assets/canopyx-filter-editor.css +15 -18
  20. package/CanopyX.Html/Assets/canopyx-filter-editor.js +23 -17
  21. package/CanopyX.Html/Assets/canopyx-format-editor.css +77 -0
  22. package/CanopyX.Html/Assets/canopyx-format-editor.js +30 -0
  23. package/CanopyX.Html/Assets/canopyx-formatting.css +40 -0
  24. package/CanopyX.Html/Assets/canopyx-formatting.js +101 -0
  25. package/CanopyX.Html/Assets/canopyx-grid-module.mjs +352 -246
  26. package/CanopyX.Html/Assets/canopyx-grid.css +139 -117
  27. package/CanopyX.Html/Assets/canopyx-grid.js +352 -246
  28. package/CanopyX.Html/Assets/canopyx-grouping.css +39 -0
  29. package/CanopyX.Html/Assets/canopyx-grouping.js +85 -0
  30. package/CanopyX.Html/Assets/canopyx-highlight.css +34 -0
  31. package/CanopyX.Html/Assets/canopyx-highlight.js +80 -0
  32. package/CanopyX.Html/Assets/canopyx-history.js +13 -0
  33. package/CanopyX.Html/Assets/canopyx-interactive.css +18 -6
  34. package/CanopyX.Html/Assets/canopyx-interactive.js +179 -100
  35. package/CanopyX.Html/Assets/canopyx-labels-de.js +304 -0
  36. package/CanopyX.Html/Assets/canopyx-labels-es.js +304 -0
  37. package/CanopyX.Html/Assets/canopyx-labels-fr.js +529 -0
  38. package/CanopyX.Html/Assets/canopyx-labels-it.js +529 -0
  39. package/CanopyX.Html/Assets/canopyx-labels-pl.js +304 -0
  40. package/CanopyX.Html/Assets/canopyx-layouts.css +48 -0
  41. package/CanopyX.Html/Assets/canopyx-layouts.js +39 -0
  42. package/CanopyX.Html/Assets/canopyx-link.css +19 -0
  43. package/CanopyX.Html/Assets/canopyx-link.js +38 -0
  44. package/CanopyX.Html/Assets/canopyx-links.js +14 -0
  45. package/CanopyX.Html/Assets/canopyx-live.css +24 -0
  46. package/CanopyX.Html/Assets/canopyx-live.js +88 -0
  47. package/CanopyX.Html/Assets/canopyx-module.mjs +180 -100
  48. package/CanopyX.Html/Assets/canopyx-pager.css +10 -0
  49. package/CanopyX.Html/Assets/canopyx-pager.js +14 -0
  50. package/CanopyX.Html/Assets/canopyx-record-panel.css +111 -0
  51. package/CanopyX.Html/Assets/canopyx-record-panel.js +178 -0
  52. package/CanopyX.Html/Assets/canopyx-reporting-module.mjs +406 -342
  53. package/CanopyX.Html/Assets/canopyx-reporting.css +140 -135
  54. package/CanopyX.Html/Assets/canopyx-reporting.js +406 -342
  55. package/CanopyX.Html/Assets/canopyx-search.js +32 -0
  56. package/CanopyX.Html/Assets/canopyx-timeline.css +80 -0
  57. package/CanopyX.Html/Assets/canopyx-timeline.js +88 -0
  58. package/CanopyX.Html/Assets/canopyx-tree-tools.css +103 -0
  59. package/CanopyX.Html/Assets/canopyx-tree-tools.js +92 -0
  60. package/CanopyX.Html/Assets/canopyx.css +17 -5
  61. package/CanopyX.Html/Assets/canopyx.js +175 -96
  62. package/JavaScript/calendar.d.ts +362 -0
  63. package/JavaScript/cell-ranges.d.ts +76 -0
  64. package/JavaScript/column-groups.d.ts +32 -0
  65. package/JavaScript/editing.d.ts +257 -0
  66. package/JavaScript/enhance.d.ts +202 -0
  67. package/JavaScript/facets.d.ts +58 -0
  68. package/JavaScript/formatting.d.ts +88 -0
  69. package/JavaScript/grid.d.ts +409 -56
  70. package/JavaScript/hosts.d.ts +177 -2
  71. package/JavaScript/index.d.ts +53 -4
  72. package/JavaScript/live.d.ts +115 -0
  73. package/JavaScript/locales/de.mjs +304 -0
  74. package/JavaScript/locales/es.mjs +304 -0
  75. package/JavaScript/locales/fr.d.ts +6 -0
  76. package/JavaScript/locales/fr.mjs +527 -0
  77. package/JavaScript/locales/it.d.ts +6 -0
  78. package/JavaScript/locales/it.mjs +527 -0
  79. package/JavaScript/locales/pl.mjs +304 -0
  80. package/JavaScript/plugins.d.ts +113 -0
  81. package/JavaScript/protocol.d.ts +139 -6
  82. package/JavaScript/records.d.ts +136 -0
  83. package/README.md +61 -9
  84. package/README.nuget.md +1 -1
  85. package/package.json +99 -3
@@ -1,6 +1,7 @@
1
1
  // Generated from CanopyX/Views/Locales/labels.json by Build/Sync-Assets.ps1.
2
2
  (function (global) {
3
3
  const labels = Object.freeze({
4
+ gridNoExportColumns: "Ninguna columna visible permite exportar.",
4
5
  searchPlaceholder: "Buscar",
5
6
  searchResults: "Resultados de búsqueda",
6
7
  searchResultCount: "{count} resultados",
@@ -14,6 +15,24 @@ const labels = Object.freeze({
14
15
  gridFilters: "Filtros",
15
16
  gridFitContent: "Ajustar al contenido",
16
17
  gridUnpin: "Desfijar",
18
+ matchesHighlight: "Resaltar coincidencias",
19
+ matchesCount: "[one]{count} coincidencia[other]{count} coincidencias",
20
+ matchesPosition: "{current} de {count}",
21
+ matchesNone: "Sin coincidencias",
22
+ matchesLoaded: "[one]{count} coincidencia en las filas cargadas[other]{count} coincidencias en las filas cargadas",
23
+ matchesPrevious: "Coincidencia anterior",
24
+ matchesNext: "Coincidencia siguiente",
25
+ matchesAnnounce: "Coincidencia {current} de {count}, {column}",
26
+ layoutMenu: "Diseño",
27
+ layoutFit: "Ajustar al ancho",
28
+ layoutScroll: "Todas las columnas, desplazamiento horizontal",
29
+ layoutCards: "Tarjetas",
30
+ layoutDensity: "Densidad",
31
+ layoutCompact: "Compacta",
32
+ layoutNormal: "Normal",
33
+ layoutComfortable: "Amplia",
34
+ layoutChanged: "Diseño: {mode}, {density}",
35
+ layoutSort: "Ordenar por",
17
36
  gridWhere: "Donde",
18
37
  gridComplexFilter: "Esta columna pertenece a un grupo mixto de condiciones. Edítelo en Filtros.",
19
38
  gridClearColumnFilter: "Borrar filtro",
@@ -83,6 +102,9 @@ const labels = Object.freeze({
83
102
  gridPreviousPage: "Página anterior",
84
103
  gridNextPage: "Página siguiente",
85
104
  gridLastPage: "Última página",
105
+ gridPageInfo: "Mostrando filas {first} a {last} de {count}",
106
+ gridPageInfoFiltered: "Mostrando filas {first} a {last} de {count} (filtradas de {total})",
107
+ gridPageButton: "Página {page}",
86
108
  gridClearQuery: "Borrar búsqueda y filtros",
87
109
  gridRemoveSearch: "Borrar búsqueda: {search}",
88
110
  gridGroupedFilters: "Filtros agrupados ({count} condiciones)",
@@ -92,9 +114,30 @@ const labels = Object.freeze({
92
114
  gridFilteredResults: "Resultados filtrados",
93
115
  gridSelectedRows: "Filas seleccionadas",
94
116
  gridAllResults: "Todos los resultados",
117
+ gridVisibleRows: "Filas visibles",
118
+ gridAllRows: "Todas las filas",
95
119
  gridDownloadCsv: "Descargar CSV",
96
120
  gridCopy: "Copiar",
97
121
  gridDetails: "Detalles del registro",
122
+ gridCellRangeSelected: "{rows} filas × {columns} columnas seleccionadas",
123
+ gridCellRangesSelected: "{ranges} rangos seleccionados, {cells} celdas",
124
+ gridCellRangeCleared: "Selección de celdas borrada",
125
+ gridCopyCells: "Copiar celdas",
126
+ gridCopyCellsWithHeaders: "Copiar celdas con encabezados",
127
+ gridPasteCells: "Pegar",
128
+ gridSelectAllCells: "Seleccionar todas las celdas",
129
+ gridCellsCopied: "Copiadas {rows} filas × {columns} columnas",
130
+ gridCellsPasted: "Celdas pegadas: {count}",
131
+ gridPasteRefused: "Celdas no pegadas: {count}",
132
+ gridPasteReadOnly: "Esta celda no se puede cambiar.",
133
+ gridPasteType: "«{value}» no es un valor válido para {column}.",
134
+ gridPasteReport: "Informe de pegado",
135
+ gridPasteCell: "Fila {row}, {column}: {reason}",
136
+ gridFillHandle: "Arrastre para rellenar las celdas inferiores",
137
+ gridCellsFilled: "Celdas rellenadas: {count}",
138
+ gridCellMenu: "Acciones de celdas",
139
+ gridClearCellRanges: "Borrar la selección de celdas",
140
+ gridRowPicked: "Se ha recogido {title}. Vaya a un calendario y pulse Intro para soltarlo.",
98
141
  gridColumn: "Columna",
99
142
  gridOperator: "Condición",
100
143
  gridValue: "Valor (fechas en UTC)",
@@ -174,6 +217,28 @@ const labels = Object.freeze({
174
217
  gridGroupCollapse: "Contraer grupo",
175
218
  gridSummary: "Totales de resultados",
176
219
  gridGroupOrder: "El orden de los grupos está fijado en este informe",
220
+ gridAggregateCount: "recuento {value}",
221
+ gridAggregateSum: "suma {value}",
222
+ gridAggregateAverage: "media {value}",
223
+ gridAggregateMinimum: "mín. {value}",
224
+ gridAggregateMaximum: "máx. {value}",
225
+ gridGroupBy: "Agrupar por esta columna",
226
+ gridUngroup: "Dejar de agrupar por esta columna",
227
+ gridGroupDrop: "Arrastre aquí un encabezado de columna para agrupar las filas",
228
+ gridExpandAll: "Expandir todo",
229
+ gridCollapseAll: "Contraer todo",
230
+ gridExpandLevel: "Expandir nivel {level}",
231
+ gridCollapseLevel: "Contraer nivel {level}",
232
+ gridGroupMove: "Alt+Izquierda y Alt+Derecha mueven este nivel",
233
+ gridGroupSortBy: "Ordenar grupos por",
234
+ gridGroupSortValue: "por valor",
235
+ gridGroupSortAggregate: "por {aggregate}",
236
+ gridSelectGroup: "Seleccionar los registros de {group}",
237
+ gridAggregateDistinct: "distintos {value}",
238
+ gridShowDetail: "Mostrar detalles",
239
+ gridHideDetail: "Ocultar detalles",
240
+ gridDetailOf: "Detalles de {record}",
241
+ gridDetailFailed: "No se pudieron cargar los detalles: {error}",
177
242
  gridExportProgress: "{completed} de {total} registros",
178
243
  gridExportReading: "{completed} registros",
179
244
  gridExportCancelled: "Exportación cancelada",
@@ -208,11 +273,250 @@ const labels = Object.freeze({
208
273
  showMoreUnknownTotal: "Mostrar más ({loaded} cargados)",
209
274
  pageLoaded: "{loaded} de {total} cargados",
210
275
  itemsLoaded: "{count} elementos",
276
+ recordBack: "Atrás",
277
+ recordBackTo: "Volver a {record}",
278
+ recordTrail: "Ruta de registros",
279
+ recordShowing: "Mostrando {record}",
280
+ recordTabs: "Vistas del registro",
281
+ recordSections: "Ir a una sección",
282
+ recordOtherFields: "Otros campos",
283
+ recordShowEmpty: "Mostrar campos vacíos ({count})",
284
+ recordHideEmpty: "Ocultar campos vacíos",
285
+ recordActions: "Acciones del registro",
286
+ recordCopyValues: "Copiar valores",
287
+ recordCopyJson: "Copiar como JSON",
288
+ recordCopyLink: "Copiar enlace",
289
+ recordCopied: "Copiado al portapapeles",
290
+ recordPrint: "Imprimir registro",
291
+ recordExportCsv: "Exportar CSV",
292
+ recordExportJson: "Exportar JSON",
293
+ recordOpenAll: "Abrir todos en la tabla",
294
+ recordLoadMore: "Cargar más",
295
+ recordCount: "{shown} de {total}",
296
+ recordItems: "{count} elementos",
297
+ recordMore: "+{count}",
298
+ recordShowAll: "Mostrar los {count}",
299
+ recordRetry: "Reintentar",
300
+ recordLoadFailed: "No se pudieron cargar los detalles del registro: {error}",
301
+ recordUnavailable: "El registro {id} no está disponible aquí.",
302
+ recordField: "Campo",
303
+ recordValue: "Valor",
304
+ recordSection: "Sección",
305
+ recordBefore: "Antes",
306
+ recordAfter: "Después",
307
+ recordAdded: "Añadido",
308
+ recordRemoved: "Eliminado",
309
+ recordChanged: "{count} campos modificados",
211
310
  yes: "Sí",
212
311
  no: "No",
213
312
  utcTime: "{time} UTC",
214
313
  localTime: "{time} hora local",
215
314
  mountError: "No se pudo mostrar esta vista: {error}",
315
+ gridEditCell: "Editar {column}",
316
+ gridEditSave: "Guardar",
317
+ gridEditCancel: "Cancelar",
318
+ gridEditDiscard: "Descartar",
319
+ gridEditUndo: "Deshacer",
320
+ gridEditRedo: "Rehacer",
321
+ gridEditEdited: "Modificado",
322
+ gridEditChanges: "Cambios sin guardar: {count}",
323
+ gridEditErrors: "Errores: {count}",
324
+ gridEditSaving: "Guardando…",
325
+ gridEditSaved: "Filas guardadas: {count}",
326
+ gridEditFailed: "Filas no guardadas: {count}",
327
+ gridEditRequired: "{column} es obligatorio.",
328
+ gridEditNumber: "{column} debe ser un número.",
329
+ gridEditDate: "{column} debe ser una fecha válida.",
330
+ gridEditMin: "{column} debe ser como mínimo {min}.",
331
+ gridEditMax: "{column} debe ser como máximo {max}.",
332
+ gridEditStep: "{column} debe ser múltiplo de {step}.",
333
+ gridEditMinLength: "{column} necesita al menos {min} caracteres.",
334
+ gridEditMaxLength: "{column} admite como máximo {max} caracteres.",
335
+ gridEditPattern: "{column} no tiene el formato esperado.",
336
+ gridEditChoice: "Elija {column} de la lista.",
337
+ gridEditConflict: "Otra persona cambió esta fila. Vuelva a cargarla e inténtelo de nuevo.",
338
+ gridEditRejected: "No guardado: {error}",
339
+ gridEditNotSaved: "No guardado.",
340
+ gridEditNoMatches: "Sin coincidencias",
341
+ gridEditSearching: "Buscando…",
342
+ gridEditUndone: "Deshecho: {column}",
343
+ gridEditRedone: "Rehecho: {column}",
344
+ gridEditNone: "(ninguno)",
345
+ gridLiveOrderChanged: "El orden ha cambiado",
346
+ gridLiveResort: "Reordenar",
347
+ gridLiveNewData: "Datos nuevos",
348
+ gridLiveRefresh: "Actualizar",
349
+ gridLiveOrderHint: "Las filas mantienen su lugar mientras cambian los datos. Reordene para moverlas a la posición que les da el orden.",
350
+ gridLiveChanged: "Filas cambiadas: {added} añadidas, {updated} actualizadas, {removed} eliminadas",
351
+ gridLiveSorted: "Filas movidas a la posición que les da el orden.",
352
+ gridLiveRecordRemoved: "Este registro se ha eliminado.",
353
+ gridFacetPanel: "Filtrar por",
354
+ gridFacetPanelHide: "Ocultar el panel de filtros",
355
+ gridFacetPanelShow: "Mostrar el panel de filtros",
356
+ gridFacetShowMore: "Mostrar {count} más",
357
+ gridFacetShowFewer: "Mostrar menos",
358
+ gridFacetEmptyValue: "(Vacío)",
359
+ gridFacetFrom: "Desde",
360
+ gridFacetTo: "Hasta",
361
+ gridFacetHistogram: "Distribución de {column}",
362
+ gridFacetBin: "De {from} a {to}: {count} filas",
363
+ gridFacetNoChart: "Demasiados valores para un gráfico",
364
+ gridFacetClear: "Borrar {column}",
365
+ gridFacetCustom: "Otra condición filtra esta columna.",
366
+ gridFacetResult: "{count} filas coincidentes",
367
+ gridFacetSelected: "{count} seleccionados",
368
+ gridFacetValueCount: "{value}, {count} filas",
369
+ gridFacetCollapse: "Contraer {column}",
370
+ gridFacetExpand: "Expandir {column}",
371
+ gridFacetInvalid: "Introduzca un valor válido.",
372
+ gridFacetReversed: "«Desde» no puede ser posterior a «Hasta».",
373
+ linkFilteredBy: "Filtrado por {source}: {values}",
374
+ linkRemoveFilter: "Quitar el filtro de {source}: {values}",
375
+ linkFiltered: "Filtrado por {source}: {count} filas",
376
+ linkHighlighted: "{count} filas resaltadas desde {source}",
377
+ linkHighlightedRows: "{count} filas resaltadas",
378
+ linkCleared: "Filtros vinculados eliminados",
379
+ formatRules: "Formato condicional",
380
+ formatLegend: "Leyenda de formato",
381
+ formatUpTo: "Hasta",
382
+ formatAbove: "Por encima de",
383
+ formatHiddenFlagged: "Campos ocultos con formato: {count} ({rules})",
384
+ formatRule: "Regla {number}",
385
+ formatAddRule: "Agregar regla",
386
+ formatEditRule: "Editar {rule}",
387
+ formatDeleteRule: "Eliminar {rule}",
388
+ formatMoveUp: "Subir {rule}",
389
+ formatMoveDown: "Bajar {rule}",
390
+ formatEnableRule: "Aplicar {rule}",
391
+ formatNoRules: "No hay reglas de formato.",
392
+ formatName: "Nombre",
393
+ formatDescription: "Descripción para lectores de pantalla",
394
+ formatOnlyRowsWhere: "Solo filas en las que",
395
+ formatEveryRow: "Todas las filas",
396
+ formatNone: "Ninguna",
397
+ formatApplyTo: "Aplicar a",
398
+ formatTargetCell: "Celda",
399
+ formatTargetRow: "Fila completa",
400
+ formatTargetColumns: "Columnas elegidas",
401
+ formatStyle: "Estilo",
402
+ formatHighlight: "Resaltado",
403
+ formatDataBar: "Barra de datos",
404
+ formatColorScale: "Escala de color",
405
+ formatBands: "Bandas de umbral",
406
+ formatTone: "Tono",
407
+ formatEmphasis: "Énfasis",
408
+ formatFill: "Relleno",
409
+ formatTextOnly: "Color del texto",
410
+ formatStrong: "Relleno en negrita",
411
+ formatIcon: "Icono",
412
+ formatNoIcon: "Sin icono",
413
+ formatAutomatic: "Automático",
414
+ formatBadge: "Insignia",
415
+ formatCue: "Indicación de texto",
416
+ formatLowest: "Mínimo",
417
+ formatMidpoint: "Punto medio",
418
+ formatHighest: "Máximo",
419
+ formatAddBand: "+ Banda",
420
+ formatRemoveBand: "Quitar banda",
421
+ formatSave: "Guardar regla",
422
+ formatCancel: "Cancelar",
423
+ formatShowLegend: "Mostrar leyenda",
424
+ formatInvalid: "Complete la regla antes de guardar.",
425
+ formatMatchCase: "Coincidir mayúsculas y minúsculas",
426
+ formatToneDanger: "Peligro",
427
+ formatToneWarning: "Advertencia",
428
+ formatToneSuccess: "Éxito",
429
+ formatToneInfo: "Información",
430
+ formatToneNeutral: "Neutro",
431
+ formatToneMuted: "Atenuado",
432
+ formatNotContains: "no contiene",
433
+ formatEndsWith: "termina con",
434
+ formatNotIn: "no es ninguno de",
435
+ formatBetween: "entre",
436
+ formatLike: "coincide con comodín",
437
+ formatMatches: "coincide con el patrón",
438
+ formatOlderThan: "anterior a (días)",
439
+ formatWithinLast: "en los últimos (días)",
440
+ formatNotLike: "no coincide con comodín",
441
+ formatNotMatches: "no coincide con el patrón",
442
+ formatBetweenExclusive: "entre (exclusivo)",
443
+ calendarToday: "Hoy",
444
+ calendarPrevious: "Período anterior",
445
+ calendarNext: "Período siguiente",
446
+ calendarViews: "Vista del calendario",
447
+ calendarMonth: "Mes",
448
+ calendarWeek: "Semana",
449
+ calendarDay: "Día",
450
+ calendarDays: "{count} días",
451
+ calendarAgenda: "Agenda",
452
+ calendarYear: "Año",
453
+ calendarTimeline: "Línea de tiempo",
454
+ calendarGoTo: "Ir a la fecha",
455
+ calendarAllDay: "Todo el día",
456
+ calendarMore: "+{count} más",
457
+ calendarMoreLabel: "Mostrar {count} eventos más el {date}",
458
+ calendarDayEvents: "Eventos del {date}",
459
+ calendarNoEvents: "No hay eventos en este período",
460
+ calendarEvents: "[one]{count} evento[other]{count} eventos",
461
+ calendarShowing: "{view}, {range}",
462
+ calendarRepeats: "Se repite",
463
+ calendarTruncated: "Se muestran los primeros {count} eventos. Acote el período o los filtros para ver el resto.",
464
+ calendarLoading: "Cargando eventos…",
465
+ calendarLoadError: "No se pudieron cargar los eventos: {error}",
466
+ calendarNow: "Ahora",
467
+ calendarZoom: "Escala",
468
+ calendarZoomHour: "Horas",
469
+ calendarZoomDay: "Días",
470
+ calendarZoomWeek: "Semanas",
471
+ calendarZoomMonth: "Meses",
472
+ calendarZoomQuarter: "Trimestres",
473
+ calendarResources: "Recursos",
474
+ calendarCapacity: "Eventos simultáneos",
475
+ calendarCapacityAt: "{count} a la vez",
476
+ calendarBusy: "{hours} h ocupadas",
477
+ calendarOverlaps: "[one]{count} solapamiento[other]{count} solapamientos",
478
+ calendarUnavailable: "No disponible",
479
+ calendarOutsideHours: "Fuera del horario laboral",
480
+ calendarConflict: "Se solapa con {title}",
481
+ calendarNotAllowed: "{resource} no puede aceptar este evento",
482
+ calendarMoved: "{title} se movió a {time}",
483
+ calendarResized: "Nuevo fin de {title}: {time}",
484
+ calendarSeriesMoved: "Se movieron todas las repeticiones de {title}",
485
+ calendarSeriesTime: "Aquí solo se puede mover la hora de toda la serie.",
486
+ calendarMoveHelp: "Las flechas mueven, Mayús con las flechas cambia el final, Alt con Arriba o Abajo cambia el recurso, Intro guarda, Escape cancela.",
487
+ calendarEdit: "Mover o cambiar el tamaño de {title}",
488
+ calendarSaveFailed: "No se guardó {title}: {error}",
489
+ calendarExport: "iCalendar (.ics)",
490
+ calendarTimeRange: "{start} – {end}",
491
+ calendarSelected: "Seleccionado: {range}",
492
+ calendarLane: "{resource}, {events}",
493
+ calendarHighlighted: "[one]{count} evento resaltado[other]{count} eventos resaltados",
494
+ calendarMini: "Mes en miniatura",
495
+ calendarWeekList: "Lista semanal",
496
+ calendarDayList: "Lista diaria",
497
+ calendarMonths: "Meses",
498
+ calendarWeekNumber: "Semana {number}",
499
+ calendarWeekShort: "S{number}",
500
+ calendarNewEvent: "Nuevo evento",
501
+ calendarEventTitle: "Título",
502
+ calendarCreate: "Añadir",
503
+ calendarCancel: "Cancelar",
504
+ calendarCreated: "{title} añadido el {time}",
505
+ calendarReceived: "{title} programado el {time}",
506
+ calendarOccurrenceTitle: "Cambiar un evento periódico",
507
+ calendarOccurrenceReadOnly: "No se puede guardar esta parte de la serie porque algunos valores son de solo lectura.",
508
+ calendarThisEvent: "Este evento",
509
+ calendarThisAndFollowing: "Este evento y los siguientes",
510
+ calendarAllEvents: "Todos los eventos",
511
+ calendarSources: "Calendarios",
512
+ calendarImportFailed: "No se pudo leer {source}: {error}",
513
+ calendarActions: "Acciones para {title}",
514
+ calendarOpen: "Abrir",
515
+ calendarMove: "Mover",
516
+ calendarNewHere: "Nuevo evento aquí",
517
+ calendarOutsideRange: "Fuera de las fechas que muestra este calendario",
518
+ calendarClose: "Cerrar",
519
+ calendarDetailsOf: "Detalles de {title}",
216
520
  });
217
521
  const staticLabels = Object.freeze({
218
522
  overflowNote: "Filas mostradas: {shown}. Total: {total}.",