@evotecit/canopyx 0.3.15 → 0.3.18

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 (118) hide show
  1. package/CanopyX.Html/Assets/canopyx-board.css +50 -0
  2. package/CanopyX.Html/Assets/canopyx-board.js +39 -0
  3. package/CanopyX.Html/Assets/canopyx-buckets.js +15 -0
  4. package/CanopyX.Html/Assets/canopyx-calculations.css +7 -0
  5. package/CanopyX.Html/Assets/canopyx-calculations.js +52 -0
  6. package/CanopyX.Html/Assets/canopyx-calendar-edit.js +3 -3
  7. package/CanopyX.Html/Assets/canopyx-calendar.css +5 -24
  8. package/CanopyX.Html/Assets/canopyx-calendar.js +14 -19
  9. package/CanopyX.Html/Assets/canopyx-cell-range.js +16 -14
  10. package/CanopyX.Html/Assets/canopyx-changes.css +6 -24
  11. package/CanopyX.Html/Assets/canopyx-changes.js +18 -15
  12. package/CanopyX.Html/Assets/canopyx-compare.css +37 -0
  13. package/CanopyX.Html/Assets/canopyx-compare.js +12 -0
  14. package/CanopyX.Html/Assets/canopyx-data.js +3 -3
  15. package/CanopyX.Html/Assets/canopyx-editing.css +2 -2
  16. package/CanopyX.Html/Assets/canopyx-editing.js +2 -2
  17. package/CanopyX.Html/Assets/canopyx-enhance.js +4 -4
  18. package/CanopyX.Html/Assets/canopyx-export.js +54 -13
  19. package/CanopyX.Html/Assets/canopyx-facets.css +14 -5
  20. package/CanopyX.Html/Assets/canopyx-facets.js +19 -15
  21. package/CanopyX.Html/Assets/canopyx-filter-editor.css +71 -85
  22. package/CanopyX.Html/Assets/canopyx-filter-editor.js +20 -16
  23. package/CanopyX.Html/Assets/canopyx-flow-checks.css +2 -0
  24. package/CanopyX.Html/Assets/canopyx-flow-checks.js +5 -4
  25. package/CanopyX.Html/Assets/canopyx-flow-dialog.css +2 -0
  26. package/CanopyX.Html/Assets/canopyx-flow-dialog.js +1 -1
  27. package/CanopyX.Html/Assets/canopyx-flow-entry.css +136 -12
  28. package/CanopyX.Html/Assets/canopyx-flow-entry.js +5 -5
  29. package/CanopyX.Html/Assets/canopyx-flow-facts.js +2 -0
  30. package/CanopyX.Html/Assets/canopyx-flow-module.mjs +5 -5
  31. package/CanopyX.Html/Assets/canopyx-flow.js +8 -7
  32. package/CanopyX.Html/Assets/canopyx-format-editor.js +2 -2
  33. package/CanopyX.Html/Assets/canopyx-formatting.js +10 -9
  34. package/CanopyX.Html/Assets/canopyx-grid-module.mjs +185 -131
  35. package/CanopyX.Html/Assets/canopyx-grid.css +228 -96
  36. package/CanopyX.Html/Assets/canopyx-grid.js +185 -131
  37. package/CanopyX.Html/Assets/canopyx-grouping.css +22 -15
  38. package/CanopyX.Html/Assets/canopyx-grouping.js +24 -17
  39. package/CanopyX.Html/Assets/canopyx-interactive.css +197 -74
  40. package/CanopyX.Html/Assets/canopyx-interactive.js +38 -45
  41. package/CanopyX.Html/Assets/canopyx-labels-de.js +177 -9
  42. package/CanopyX.Html/Assets/canopyx-labels-es.js +177 -9
  43. package/CanopyX.Html/Assets/canopyx-labels-fr.js +176 -8
  44. package/CanopyX.Html/Assets/canopyx-labels-it.js +176 -8
  45. package/CanopyX.Html/Assets/canopyx-labels-pl.js +176 -8
  46. package/CanopyX.Html/Assets/canopyx-layouts.css +48 -20
  47. package/CanopyX.Html/Assets/canopyx-layouts.js +36 -14
  48. package/CanopyX.Html/Assets/canopyx-link.js +2 -2
  49. package/CanopyX.Html/Assets/canopyx-live.css +1 -3
  50. package/CanopyX.Html/Assets/canopyx-live.js +20 -15
  51. package/CanopyX.Html/Assets/canopyx-matrix.css +1 -8
  52. package/CanopyX.Html/Assets/canopyx-matrix.js +11 -11
  53. package/CanopyX.Html/Assets/canopyx-module.mjs +38 -45
  54. package/CanopyX.Html/Assets/canopyx-office-export.js +2936 -0
  55. package/CanopyX.Html/Assets/canopyx-path.css +45 -0
  56. package/CanopyX.Html/Assets/canopyx-path.js +28 -0
  57. package/CanopyX.Html/Assets/canopyx-pivot.css +75 -0
  58. package/CanopyX.Html/Assets/canopyx-pivot.js +72 -0
  59. package/CanopyX.Html/Assets/canopyx-plan.css +56 -0
  60. package/CanopyX.Html/Assets/canopyx-plan.js +67 -0
  61. package/CanopyX.Html/Assets/canopyx-presenters.js +2 -2
  62. package/CanopyX.Html/Assets/canopyx-record-panel.css +11 -2
  63. package/CanopyX.Html/Assets/canopyx-record-panel.js +18 -12
  64. package/CanopyX.Html/Assets/canopyx-reporting-module.mjs +225 -164
  65. package/CanopyX.Html/Assets/canopyx-reporting.css +240 -107
  66. package/CanopyX.Html/Assets/canopyx-reporting.js +225 -164
  67. package/CanopyX.Html/Assets/canopyx-stack.css +35 -0
  68. package/CanopyX.Html/Assets/canopyx-stack.js +24 -0
  69. package/CanopyX.Html/Assets/canopyx-time-slider.css +18 -0
  70. package/CanopyX.Html/Assets/canopyx-time-slider.js +27 -0
  71. package/CanopyX.Html/Assets/canopyx-timeline.js +6 -5
  72. package/CanopyX.Html/Assets/canopyx-tree-tools.css +36 -35
  73. package/CanopyX.Html/Assets/canopyx-tree-tools.js +15 -12
  74. package/CanopyX.Html/Assets/canopyx-ui-menu.css +41 -0
  75. package/CanopyX.Html/Assets/canopyx-ui-menu.js +64 -0
  76. package/CanopyX.Html/Assets/canopyx-ui-navigation.css +73 -0
  77. package/CanopyX.Html/Assets/canopyx-ui-navigation.js +39 -0
  78. package/CanopyX.Html/Assets/canopyx-ui-overlays.css +79 -0
  79. package/CanopyX.Html/Assets/canopyx-ui-overlays.js +42 -0
  80. package/CanopyX.Html/Assets/canopyx-ui-picker.css +12 -0
  81. package/CanopyX.Html/Assets/canopyx-ui-picker.js +6 -0
  82. package/CanopyX.Html/Assets/canopyx-ui-stepper.css +174 -0
  83. package/CanopyX.Html/Assets/canopyx-ui-stepper.js +48 -0
  84. package/CanopyX.Html/Assets/canopyx-ui-tabs.css +153 -0
  85. package/CanopyX.Html/Assets/canopyx-ui-tabs.js +47 -0
  86. package/CanopyX.Html/Assets/canopyx-values.css +5 -0
  87. package/CanopyX.Html/Assets/canopyx-values.js +13 -0
  88. package/CanopyX.Html/Assets/canopyx-view-intents.css +12 -0
  89. package/CanopyX.Html/Assets/canopyx-view-intents.js +56 -0
  90. package/CanopyX.Html/Assets/canopyx.css +197 -71
  91. package/CanopyX.Html/Assets/canopyx.js +29 -19
  92. package/JavaScript/board.d.ts +30 -0
  93. package/JavaScript/changes.d.ts +4 -1
  94. package/JavaScript/facets.d.ts +5 -3
  95. package/JavaScript/flow.d.ts +6 -0
  96. package/JavaScript/grid.d.ts +153 -17
  97. package/JavaScript/hosts.d.ts +14 -1
  98. package/JavaScript/index.d.ts +4 -2
  99. package/JavaScript/live.d.ts +2 -0
  100. package/JavaScript/locales/de.mjs +177 -9
  101. package/JavaScript/locales/es.mjs +177 -9
  102. package/JavaScript/locales/fr.mjs +176 -8
  103. package/JavaScript/locales/it.mjs +176 -8
  104. package/JavaScript/locales/pl.mjs +176 -8
  105. package/JavaScript/matrix.d.ts +4 -1
  106. package/JavaScript/path.d.ts +33 -0
  107. package/JavaScript/pivot.d.ts +135 -0
  108. package/JavaScript/plan.d.ts +23 -0
  109. package/JavaScript/protocol.d.ts +16 -3
  110. package/JavaScript/records.d.ts +20 -4
  111. package/JavaScript/stack.d.ts +28 -0
  112. package/JavaScript/time-slider.d.ts +58 -0
  113. package/JavaScript/ui.d.ts +261 -0
  114. package/JavaScript/view-intents.d.ts +45 -0
  115. package/README.md +22 -3
  116. package/ThirdParty/OfficeIMO/LICENSE +21 -0
  117. package/ThirdParty/OfficeIMO/README.md +13 -0
  118. package/package.json +76 -3
@@ -1,7 +1,14 @@
1
1
  // Generated from CanopyX/Views/Locales/labels.json by Build/Sync-Assets.ps1.
2
2
  const labels = Object.freeze({
3
3
  gridNoExportColumns: "Keine sichtbare Spalte unterstützt den Export.",
4
+ gridDownloadXlsx: "Excel-Arbeitsmappe (.xlsx)",
5
+ gridDownloadPdf: "PDF",
6
+ gridExportWorkbookHint: "Formatiert, mit Gruppen und Summen",
7
+ gridExportPdfHint: "Seitenbericht mit wiederholten Überschriften",
8
+ gridExportCsvHint: "Textwerte (.csv)",
9
+ gridExportCopy: "In Zwischenablage kopieren",
4
10
  searchPlaceholder: "Suchen",
11
+ gridRegexSearch: "Suchmuster",
5
12
  searchResults: "Suchergebnisse",
6
13
  searchResultCount: "{count} Ergebnisse",
7
14
  searchResultCountOfTotal: "{count} von {total} Ergebnissen",
@@ -116,7 +123,7 @@ const labels = Object.freeze({
116
123
  gridAllResults: "Alle Ergebnisse",
117
124
  gridVisibleRows: "Sichtbare Zeilen",
118
125
  gridAllRows: "Alle Zeilen",
119
- gridDownloadCsv: "CSV herunterladen",
126
+ gridDownloadCsv: "CSV",
120
127
  gridCopy: "Kopieren",
121
128
  gridDetails: "Datensatzdetails",
122
129
  gridCellRangeSelected: "{rows} Zeilen × {columns} Spalten ausgewählt",
@@ -215,7 +222,7 @@ const labels = Object.freeze({
215
222
  gridGroupMissing: "Fehlender Wert",
216
223
  gridGroupExpand: "Gruppe erweitern",
217
224
  gridGroupCollapse: "Gruppe reduzieren",
218
- gridSummary: "Ergebnissummen",
225
+ gridSummary: "Gesamtsumme",
219
226
  gridGroupOrder: "Die Gruppenreihenfolge ist im Bericht festgelegt",
220
227
  gridAggregateCount: "Anzahl {value}",
221
228
  gridAggregateSum: "Summe {value}",
@@ -306,7 +313,7 @@ const labels = Object.freeze({
306
313
  recordAfter: "Nachher",
307
314
  recordAdded: "Hinzugefügt",
308
315
  recordRemoved: "Entfernt",
309
- recordChanged: "{count} geänderte Felder",
316
+ recordChanged: "Geänderte Felder: {count}",
310
317
  yes: "Ja",
311
318
  no: "Nein",
312
319
  utcTime: "{time} UTC",
@@ -350,7 +357,7 @@ const labels = Object.freeze({
350
357
  gridLiveChanged: "Zeilen geändert: {added} hinzugefügt, {updated} aktualisiert, {removed} entfernt",
351
358
  gridLiveSorted: "Zeilen an ihre sortierte Stelle verschoben.",
352
359
  gridLiveRecordRemoved: "Dieser Datensatz wurde entfernt.",
353
- gridFacetPanel: "Filtern nach",
360
+ gridFacetPanel: "Eingrenzen",
354
361
  gridFacetPanelHide: "Filterbereich ausblenden",
355
362
  gridFacetPanelShow: "Filterbereich einblenden",
356
363
  gridFacetShowMore: "{count} weitere anzeigen",
@@ -506,11 +513,6 @@ const labels = Object.freeze({
506
513
  calendarOccurrenceTitle: "Wiederkehrenden Termin ändern",
507
514
  calendarOccurrenceReadOnly: "Dieser Teil der Serie kann nicht gespeichert werden, weil einige Werte schreibgeschützt sind.",
508
515
  calendarThisEvent: "Nur dieser Termin",
509
- calendarEditOccurrence: "Dieses Vorkommen bearbeiten",
510
- calendarRemoveOccurrence: "Dieses Vorkommen entfernen",
511
- calendarOccurrenceScope: "Nur {date} ändert sich; andere Termine von {title} bleiben unverändert.",
512
- calendarSharedResources: "{count} {resources}",
513
- calendarResourceWindow: "{resources} {start}–{end} von {total}",
514
516
  calendarThisAndFollowing: "Dieser und alle folgenden Termine",
515
517
  calendarAllEvents: "Alle Termine",
516
518
  calendarSources: "Kalender",
@@ -774,6 +776,172 @@ const labels = Object.freeze({
774
776
  changeCopyRequest: "Anfrage kopieren",
775
777
  changeFiltered: "Gefiltert: {filters}",
776
778
  changePrintLimit: "{count} weitere Zeilen werden nicht gedruckt.",
779
+ gridPivotFieldOptions: "Feldoptionen",
780
+ gridCalculationResultType: "Ergebnistyp",
781
+ gridCalculationDivideZero: "Division durch null",
782
+ gridCalculationAdd: "Berechnete Spalte hinzufügen",
783
+ gridCalculationTitle: "Spaltentitel",
784
+ gridCalculationId: "Spalten-ID",
785
+ gridCalculationExpression: "Ausdruck",
786
+ gridCalculationError: "Berechnungsfehler: {error}",
787
+ gridCalculationInvalid: "Prüfen Sie Ausdruck, Spaltenverweise und Ergebnistyp.",
788
+ gridCalculationHelp: "Verwenden Sie [columnId], Arithmetik, IF, COALESCE, ROUND, CONCAT, DATEPART oder DATEDIFF.",
789
+ gridCalculationNumber: "Zahl",
790
+ gridCalculationDate: "Datum und Uhrzeit",
791
+ gridPivot: "Kreuztabelle",
792
+ gridPivotRows: "Zeilengruppen",
793
+ gridPivotColumns: "Spaltengruppen",
794
+ gridPivotValues: "Werte",
795
+ gridPivotFlat: "Datensätze anzeigen",
796
+ gridPivotConfigure: "Pivot-Einstellungen",
797
+ gridPivotOther: "Andere",
798
+ gridPivotLimited: "{shown} von {total} Spaltenpfaden; der Rest ist unter Andere zusammengefasst. Zwischensummen enthalten alle passenden untergeordneten Werte.",
799
+ gridPivotColumn: "Spalte wählen",
800
+ gridPivotTopN: "Führende Spalten",
801
+ gridPivotSort: "Zeilenreihenfolge",
802
+ gridPivotDrill: "Datensätze für {row}, {column} anzeigen",
803
+ gridPivotReturn: "Zurück zur Kreuztabelle",
804
+ gridPivotInvalid: "Gültige Achsen und mindestens einen Wert wählen.",
805
+ gridShowAs: "Werte anzeigen als",
806
+ gridShowAsValue: "Wert",
807
+ gridShowAsPercentGrandTotal: "% der Gesamtsumme",
808
+ gridShowAsPercentParent: "% der übergeordneten Summe",
809
+ gridShowAsPercentColumn: "% der Spaltensumme",
810
+ gridShowAsPercentRow: "% der Zeilensumme",
811
+ gridShowAsRunningTotal: "Laufende Summe",
812
+ gridShowAsRank: "Rang",
813
+ gridShowAsDifference: "Differenz zum vorherigen Wert",
814
+ gridShowAsPercentChange: "% Änderung zum vorherigen Wert",
815
+ gridBucket: "Intervall",
816
+ gridBucketNone: "Exakte Werte",
817
+ gridBucketDay: "Tag",
818
+ gridBucketWeek: "Woche",
819
+ gridBucketMonth: "Monat",
820
+ gridBucketQuarter: "Quartal",
821
+ gridBucketYear: "Jahr",
822
+ gridBucketHour: "Tagesstunde",
823
+ gridBucketWeekday: "Wochentag",
824
+ gridBucketWidth: "Intervallbreite",
825
+ gridBucketEdges: "Intervallgrenzen",
826
+ gridBucketOrigin: "Intervallursprung",
827
+ gridBucketInvalid: "Gültige Intervalleinstellungen eingeben.",
828
+ boardLane: "Spalte",
829
+ boardUnassigned: "Nicht zugewiesen",
830
+ boardEmpty: "Keine Datensätze in dieser Spalte",
831
+ boardWip: "{count} / {limit}",
832
+ boardWipFull: "{lane} hat das Arbeitslimit erreicht ({limit}).",
833
+ boardMove: "In Spalte verschieben",
834
+ boardMoved: "{title} nach {lane} verschoben.",
835
+ boardRejected: "Verschiebung wurde nicht angenommen.",
836
+ boardPending: "Warten auf Annahme der Verschiebung…",
837
+ boardPartial: "Die ersten {count} Datensätze werden angezeigt. Filter eingrenzen, um weitere zu sehen.",
838
+ boardKeys: "Alt+Links oder Alt+Rechts verschiebt zwischen Spalten; Auf und Ab blättert durch Karten.",
839
+ planMilestone: "Meilenstein",
840
+ planCritical: "Kritischer Pfad",
841
+ planBaseline: "Basisplan: {start} – {end}",
842
+ planDependency: "{from} endet vor Beginn von {to}",
843
+ planDependencyConflict: "Abhängigkeitskonflikt mit {task}",
844
+ planOverlapConflict: "Überschneidung mit {task}",
845
+ planIncomplete: "Das vollständige Aufgabennetz ist nicht verfügbar; der Host muss diesen Vorschlag prüfen.",
846
+ planInvalidRange: "Die Aufgabe muss bei oder nach ihrem Beginn enden.",
847
+ planInvalidResource: "Eine Aufgabenressource wählen.",
848
+ planProposal: "Vorschlag {task}: {start} – {end}",
849
+ planMoveHint: "Alt+Links oder Alt+Rechts schlägt ein neues Datum vor; Alt+Auf oder Alt+Ab eine Ressource.",
850
+ planActual: "Ist",
851
+ planPending: "Vorschlag wartet auf den Host",
852
+ planBaselineLabel: "Basisplan",
853
+ planDependencies: "Abhängigkeiten",
854
+ planConflict: "Konflikt",
855
+ calendarEditOccurrence: "Dieses Vorkommen bearbeiten",
856
+ calendarRemoveOccurrence: "Dieses Vorkommen entfernen",
857
+ calendarOccurrenceScope: "Nur {date} ändert sich; andere Termine von {title} bleiben unverändert.",
858
+ calendarSharedResources: "{count} {resources}",
859
+ calendarResourceWindow: "{resources} {start}–{end} von {total}",
860
+ viewIntentWords: "Ganze Wörter",
861
+ viewIntentSubstring: "Text enthält",
862
+ viewIntentPreview: "Vorgeschlagene Änderungen",
863
+ viewIntentApplied: "Ansichtsänderungen angewendet.",
864
+ viewIntentSuperseded: "Die Ansicht wurde geändert. Prüfen Sie den Vorschlag erneut.",
865
+ viewIntentSearch: "Suche: {search}",
866
+ viewIntentSort: "Sortieren nach {columns}",
867
+ viewIntentGroup: "Zeilen gruppieren nach {columns}",
868
+ viewIntentColumns: "Spalten anzeigen: {columns}",
869
+ compareSummary: "Datensatzvergleich",
870
+ compareAdded: "Hinzugefügt",
871
+ compareRemoved: "Entfernt",
872
+ compareChanged: "Geändert",
873
+ compareUnchanged: "Unverändert",
874
+ compareOnlyChanges: "Nur Änderungen",
875
+ compareColumnChanges: "[one]{column}: {count} geänderte Zelle[other]{column}: {count} geänderte Zellen",
876
+ compareChanges: "Änderungen",
877
+ viewIntentClearSearch: "Suche löschen",
878
+ viewIntentRemoveGrouping: "Gruppierung entfernen",
879
+ viewIntentFlat: "Datensätze anzeigen",
880
+ viewIntentAscending: "aufsteigend",
881
+ viewIntentDescending: "absteigend",
882
+ viewIntentNotEqual: "ist nicht",
883
+ viewIntentGreater: "größer als",
884
+ viewIntentAtLeast: "mindestens",
885
+ viewIntentLess: "kleiner als",
886
+ viewIntentAtMost: "höchstens",
887
+ viewIntentFilter: "Zeilen anzeigen, in denen {column} {operator} {values}",
888
+ viewIntentOnly: "Nur {column} anzeigen: {values}",
889
+ viewIntentPivot: "Zeilen: {rows}; Spalten: {columns}; Werte: {values}",
890
+ viewIntentAllRows: "alle Datensätze",
891
+ viewIntentTotals: "Summen",
892
+ viewIntentTuples: "Passende Kombinationen anzeigen von {columns}: {values}",
893
+ viewIntentExcludeTuples: "Passende Kombinationen ausschließen von {columns}: {values}",
894
+ viewIntentNoChanges: "Diese Ansicht ist bereits ausgewählt.",
895
+ pathEmpty: "Keine Pfade vorhanden",
896
+ pathSource: "Quelle",
897
+ pathTarget: "Ziel",
898
+ pathStep: "Schritt {number} von {total}",
899
+ pathCycle: "Zyklus",
900
+ pathForeign: "Extern",
901
+ pathDisabled: "Deaktiviert",
902
+ pathKeys: "Mit Tab oder Pfeiltasten Schritte durchsuchen; Eingabe oder Leertaste öffnet den Datensatz.",
903
+ pathPartial: "{shown} von {total} Schritten angezeigt.",
904
+ stackWinner: "Gewinner",
905
+ stackEnforced: "Erzwungen",
906
+ stackFiltered: "Ausgefiltert",
907
+ stackEmpty: "Keine Ebenen vorhanden.",
908
+ stackOrder: "Verarbeitungsreihenfolge",
909
+ stackTruncated: "{shown} von {total} Ebenen in Verarbeitungsreihenfolge angezeigt; die gewinnende Ebene ist immer enthalten.",
910
+ timePlay: "Wiedergabe",
911
+ timePause: "Pause",
912
+ timePrevious: "Vorherige Momentaufnahme",
913
+ timeNext: "Nächste Momentaufnahme",
914
+ timePosition: "Momentaufnahme {index} von {count}",
915
+ timeFrame: "Momentaufnahme um {time}",
916
+ timeReducedMotion: "Die zeitgesteuerte Wiedergabe ist wegen reduzierter Bewegung deaktiviert. Momentaufnahmen manuell durchgehen.",
917
+ tabsMore: "Mehr",
918
+ tabsMoreSelected: "Mehr: {label}",
919
+ tabsScrollPrevious: "Vorherige Tabs",
920
+ tabsScrollNext: "Nächste Tabs",
921
+ tabsSection: "Abschnitt",
922
+ tabsPosition: "{current} von {total}",
923
+ tabsPause: "Pausieren",
924
+ tabsPlay: "Wiedergeben",
925
+ tabsMotionDisabled: "Automatischer Tabwechsel ist bei reduzierter Bewegung deaktiviert",
926
+ stepperStepOf: "Schritt {current} von {total}",
927
+ stepperBack: "Zurück",
928
+ stepperNext: "Weiter",
929
+ stepperFinish: "Abschließen",
930
+ stepperSkip: "Überspringen",
931
+ stepperSaveDraft: "Entwurf speichern",
932
+ stepperAllSteps: "Alle Schritte",
933
+ stepperOptional: "Optional",
934
+ stepperCompleted: "Abgeschlossen",
935
+ stepperSkipped: "Übersprungen",
936
+ stepperIssues: "{count} Probleme zu beheben",
937
+ stepperIssue: "1 Problem zu beheben",
938
+ dialogClose: "Schließen",
939
+ drawerClose: "Schließen",
940
+ drawerPrevious: "Vorheriger Datensatz",
941
+ drawerNext: "Nächster Datensatz",
942
+ stateLoading: "Wird geladen…",
943
+ stateRetry: "Erneut versuchen",
944
+ stateDetails: "Details",
777
945
  });
778
946
  const staticLabels = Object.freeze({
779
947
  overflowNote: "{shown} Zeilen angezeigt. Gesamtzahl: {total}.",
@@ -1,7 +1,14 @@
1
1
  // Generated from CanopyX/Views/Locales/labels.json by Build/Sync-Assets.ps1.
2
2
  const labels = Object.freeze({
3
3
  gridNoExportColumns: "Ninguna columna visible permite exportar.",
4
+ gridDownloadXlsx: "Libro de Excel (.xlsx)",
5
+ gridDownloadPdf: "PDF",
6
+ gridExportWorkbookHint: "Con formato, grupos y totales",
7
+ gridExportPdfHint: "Informe paginado con encabezados repetidos",
8
+ gridExportCsvHint: "Valores de texto (.csv)",
9
+ gridExportCopy: "Copiar al portapapeles",
4
10
  searchPlaceholder: "Buscar",
11
+ gridRegexSearch: "Patrón de búsqueda",
5
12
  searchResults: "Resultados de búsqueda",
6
13
  searchResultCount: "{count} resultados",
7
14
  searchResultCountOfTotal: "{count} de {total} resultados",
@@ -116,7 +123,7 @@ const labels = Object.freeze({
116
123
  gridAllResults: "Todos los resultados",
117
124
  gridVisibleRows: "Filas visibles",
118
125
  gridAllRows: "Todas las filas",
119
- gridDownloadCsv: "Descargar CSV",
126
+ gridDownloadCsv: "CSV",
120
127
  gridCopy: "Copiar",
121
128
  gridDetails: "Detalles del registro",
122
129
  gridCellRangeSelected: "{rows} filas × {columns} columnas seleccionadas",
@@ -215,7 +222,7 @@ const labels = Object.freeze({
215
222
  gridGroupMissing: "Valor ausente",
216
223
  gridGroupExpand: "Expandir grupo",
217
224
  gridGroupCollapse: "Contraer grupo",
218
- gridSummary: "Totales de resultados",
225
+ gridSummary: "Total general",
219
226
  gridGroupOrder: "El orden de los grupos está fijado en este informe",
220
227
  gridAggregateCount: "recuento {value}",
221
228
  gridAggregateSum: "suma {value}",
@@ -306,7 +313,7 @@ const labels = Object.freeze({
306
313
  recordAfter: "Después",
307
314
  recordAdded: "Añadido",
308
315
  recordRemoved: "Eliminado",
309
- recordChanged: "{count} campos modificados",
316
+ recordChanged: "Campos modificados: {count}",
310
317
  yes: "Sí",
311
318
  no: "No",
312
319
  utcTime: "{time} UTC",
@@ -350,7 +357,7 @@ const labels = Object.freeze({
350
357
  gridLiveChanged: "Filas cambiadas: {added} añadidas, {updated} actualizadas, {removed} eliminadas",
351
358
  gridLiveSorted: "Filas movidas a la posición que les da el orden.",
352
359
  gridLiveRecordRemoved: "Este registro se ha eliminado.",
353
- gridFacetPanel: "Filtrar por",
360
+ gridFacetPanel: "Acotar",
354
361
  gridFacetPanelHide: "Ocultar el panel de filtros",
355
362
  gridFacetPanelShow: "Mostrar el panel de filtros",
356
363
  gridFacetShowMore: "Mostrar {count} más",
@@ -506,11 +513,6 @@ const labels = Object.freeze({
506
513
  calendarOccurrenceTitle: "Cambiar un evento periódico",
507
514
  calendarOccurrenceReadOnly: "No se puede guardar esta parte de la serie porque algunos valores son de solo lectura.",
508
515
  calendarThisEvent: "Este evento",
509
- calendarEditOccurrence: "Editar esta ocurrencia",
510
- calendarRemoveOccurrence: "Eliminar esta ocurrencia",
511
- calendarOccurrenceScope: "Solo cambia {date}; las otras fechas de {title} se mantienen.",
512
- calendarSharedResources: "{count} {resources}",
513
- calendarResourceWindow: "{resources} {start}–{end} de {total}",
514
516
  calendarThisAndFollowing: "Este evento y los siguientes",
515
517
  calendarAllEvents: "Todos los eventos",
516
518
  calendarSources: "Calendarios",
@@ -774,6 +776,172 @@ const labels = Object.freeze({
774
776
  changeCopyRequest: "Copiar solicitud",
775
777
  changeFiltered: "Filtrado: {filters}",
776
778
  changePrintLimit: "{count} líneas más no se imprimen.",
779
+ gridPivotFieldOptions: "Opciones de campo",
780
+ gridCalculationResultType: "Tipo de resultado",
781
+ gridCalculationDivideZero: "División por cero",
782
+ gridCalculationAdd: "Añadir columna calculada",
783
+ gridCalculationTitle: "Título de columna",
784
+ gridCalculationId: "ID de columna",
785
+ gridCalculationExpression: "Expresión",
786
+ gridCalculationError: "Error de cálculo: {error}",
787
+ gridCalculationInvalid: "Compruebe la expresión, las referencias a columnas y el tipo de resultado.",
788
+ gridCalculationHelp: "Use [columnId], aritmética, IF, COALESCE, ROUND, CONCAT, DATEPART o DATEDIFF.",
789
+ gridCalculationNumber: "Número",
790
+ gridCalculationDate: "Fecha y hora",
791
+ gridPivot: "Tabla dinámica",
792
+ gridPivotRows: "Grupos de filas",
793
+ gridPivotColumns: "Grupos de columnas",
794
+ gridPivotValues: "Valores",
795
+ gridPivotFlat: "Mostrar registros",
796
+ gridPivotConfigure: "Ajustes de tabla dinámica",
797
+ gridPivotOther: "Otros",
798
+ gridPivotLimited: "Se muestran {shown} de {total} rutas de columnas; el resto se agrupa en Otros. Los subtotales incluyen todos los valores descendientes coincidentes.",
799
+ gridPivotColumn: "Elegir columna",
800
+ gridPivotTopN: "Columnas principales",
801
+ gridPivotSort: "Orden de filas",
802
+ gridPivotDrill: "Mostrar registros de {row}, {column}",
803
+ gridPivotReturn: "Volver a la tabla dinámica",
804
+ gridPivotInvalid: "Elige ejes válidos y al menos un valor.",
805
+ gridShowAs: "Mostrar valores como",
806
+ gridShowAsValue: "Valor",
807
+ gridShowAsPercentGrandTotal: "% del total general",
808
+ gridShowAsPercentParent: "% del total del grupo superior",
809
+ gridShowAsPercentColumn: "% del total de columna",
810
+ gridShowAsPercentRow: "% del total de fila",
811
+ gridShowAsRunningTotal: "Total acumulado",
812
+ gridShowAsRank: "Clasificación",
813
+ gridShowAsDifference: "Diferencia respecto al anterior",
814
+ gridShowAsPercentChange: "% de cambio respecto al anterior",
815
+ gridBucket: "Intervalo",
816
+ gridBucketNone: "Valores exactos",
817
+ gridBucketDay: "Día",
818
+ gridBucketWeek: "Semana",
819
+ gridBucketMonth: "Mes",
820
+ gridBucketQuarter: "Trimestre",
821
+ gridBucketYear: "Año",
822
+ gridBucketHour: "Hora del día",
823
+ gridBucketWeekday: "Día de la semana",
824
+ gridBucketWidth: "Amplitud del intervalo",
825
+ gridBucketEdges: "Límites de los intervalos",
826
+ gridBucketOrigin: "Origen de los intervalos",
827
+ gridBucketInvalid: "Introduce una configuración de intervalos válida.",
828
+ boardLane: "Columna",
829
+ boardUnassigned: "Sin asignar",
830
+ boardEmpty: "No hay registros en esta columna",
831
+ boardWip: "{count} / {limit}",
832
+ boardWipFull: "{lane} ha alcanzado su límite de trabajo ({limit}).",
833
+ boardMove: "Mover a columna",
834
+ boardMoved: "{title} se ha movido a {lane}.",
835
+ boardRejected: "El movimiento no se ha aceptado.",
836
+ boardPending: "Esperando la aceptación del movimiento…",
837
+ boardPartial: "Se muestran los primeros {count} registros. Limite los filtros para ver el resto.",
838
+ boardKeys: "Use Alt+Izquierda o Alt+Derecha para mover entre columnas; Arriba y Abajo para explorar tarjetas.",
839
+ planMilestone: "Hito",
840
+ planCritical: "Ruta crítica",
841
+ planBaseline: "Línea base: {start} – {end}",
842
+ planDependency: "{from} termina antes de que empiece {to}",
843
+ planDependencyConflict: "Conflicto de dependencia con {task}",
844
+ planOverlapConflict: "Se solapa con {task}",
845
+ planIncomplete: "La red completa de tareas no está disponible; el host debe comprobar esta propuesta.",
846
+ planInvalidRange: "La tarea debe terminar en su inicio o después.",
847
+ planInvalidResource: "Elija un recurso para la tarea.",
848
+ planProposal: "Propuesta {task}: {start} – {end}",
849
+ planMoveHint: "Alt+Izquierda o Alt+Derecha propone una fecha; Alt+Arriba o Alt+Abajo propone un recurso.",
850
+ planActual: "Real",
851
+ planPending: "Propuesta pendiente del host",
852
+ planBaselineLabel: "Línea base",
853
+ planDependencies: "Dependencias",
854
+ planConflict: "Conflicto",
855
+ calendarEditOccurrence: "Editar esta ocurrencia",
856
+ calendarRemoveOccurrence: "Eliminar esta ocurrencia",
857
+ calendarOccurrenceScope: "Solo cambia {date}; las otras fechas de {title} se mantienen.",
858
+ calendarSharedResources: "{count} {resources}",
859
+ calendarResourceWindow: "{resources} {start}–{end} de {total}",
860
+ viewIntentWords: "Palabras completas",
861
+ viewIntentSubstring: "El texto contiene",
862
+ viewIntentPreview: "Cambios propuestos",
863
+ viewIntentApplied: "Cambios de vista aplicados.",
864
+ viewIntentSuperseded: "La vista ha cambiado. Revise de nuevo la propuesta.",
865
+ viewIntentSearch: "Buscar: {search}",
866
+ viewIntentSort: "Ordenar por {columns}",
867
+ viewIntentGroup: "Agrupar filas por {columns}",
868
+ viewIntentColumns: "Mostrar columnas: {columns}",
869
+ compareSummary: "Comparación de conjuntos de datos",
870
+ compareAdded: "Añadidos",
871
+ compareRemoved: "Eliminados",
872
+ compareChanged: "Modificados",
873
+ compareUnchanged: "Sin cambios",
874
+ compareOnlyChanges: "Solo cambios",
875
+ compareColumnChanges: "[one]{column}: {count} celda modificada[other]{column}: {count} celdas modificadas",
876
+ compareChanges: "Cambios",
877
+ viewIntentClearSearch: "Borrar búsqueda",
878
+ viewIntentRemoveGrouping: "Quitar agrupación",
879
+ viewIntentFlat: "Mostrar registros",
880
+ viewIntentAscending: "ascendente",
881
+ viewIntentDescending: "descendente",
882
+ viewIntentNotEqual: "no es",
883
+ viewIntentGreater: "mayor que",
884
+ viewIntentAtLeast: "al menos",
885
+ viewIntentLess: "menor que",
886
+ viewIntentAtMost: "como máximo",
887
+ viewIntentFilter: "Mostrar filas donde {column} {operator} {values}",
888
+ viewIntentOnly: "Mostrar solo {column}: {values}",
889
+ viewIntentPivot: "Filas: {rows}; columnas: {columns}; valores: {values}",
890
+ viewIntentAllRows: "todos los registros",
891
+ viewIntentTotals: "totales",
892
+ viewIntentTuples: "Mostrar combinaciones coincidentes de {columns}: {values}",
893
+ viewIntentExcludeTuples: "Excluir combinaciones coincidentes de {columns}: {values}",
894
+ viewIntentNoChanges: "Esta vista ya está seleccionada.",
895
+ pathEmpty: "No hay rutas para mostrar",
896
+ pathSource: "Origen",
897
+ pathTarget: "Destino",
898
+ pathStep: "Paso {number} de {total}",
899
+ pathCycle: "Ciclo",
900
+ pathForeign: "Externo",
901
+ pathDisabled: "Deshabilitado",
902
+ pathKeys: "Usa Tab o las flechas para recorrer los pasos; Intro o Espacio abre el registro.",
903
+ pathPartial: "Se muestran {shown} de {total} pasos.",
904
+ stackWinner: "Ganador",
905
+ stackEnforced: "Aplicado obligatoriamente",
906
+ stackFiltered: "Filtrado",
907
+ stackEmpty: "No hay capas para mostrar.",
908
+ stackOrder: "Orden de procesamiento",
909
+ stackTruncated: "Se muestran {shown} de {total} capas en orden de procesamiento; siempre se incluye la capa ganadora.",
910
+ timePlay: "Reproducir",
911
+ timePause: "Pausar",
912
+ timePrevious: "Instantánea anterior",
913
+ timeNext: "Instantánea siguiente",
914
+ timePosition: "Instantánea {index} de {count}",
915
+ timeFrame: "Instantánea de {time}",
916
+ timeReducedMotion: "La reproducción automática está desactivada porque el movimiento reducido está activado. Recorre las instantáneas manualmente.",
917
+ tabsMore: "Más",
918
+ tabsMoreSelected: "Más: {label}",
919
+ tabsScrollPrevious: "Pestañas anteriores",
920
+ tabsScrollNext: "Pestañas siguientes",
921
+ tabsSection: "Sección",
922
+ tabsPosition: "{current} de {total}",
923
+ tabsPause: "Pausar",
924
+ tabsPlay: "Reproducir",
925
+ tabsMotionDisabled: "El cambio automático de pestañas está desactivado con movimiento reducido",
926
+ stepperStepOf: "Paso {current} de {total}",
927
+ stepperBack: "Atrás",
928
+ stepperNext: "Siguiente",
929
+ stepperFinish: "Finalizar",
930
+ stepperSkip: "Omitir",
931
+ stepperSaveDraft: "Guardar borrador",
932
+ stepperAllSteps: "Todos los pasos",
933
+ stepperOptional: "Opcional",
934
+ stepperCompleted: "Completado",
935
+ stepperSkipped: "Omitido",
936
+ stepperIssues: "{count} problemas por resolver",
937
+ stepperIssue: "1 problema por resolver",
938
+ dialogClose: "Cerrar",
939
+ drawerClose: "Cerrar",
940
+ drawerPrevious: "Registro anterior",
941
+ drawerNext: "Registro siguiente",
942
+ stateLoading: "Cargando…",
943
+ stateRetry: "Reintentar",
944
+ stateDetails: "Detalles",
777
945
  });
778
946
  const staticLabels = Object.freeze({
779
947
  overflowNote: "Filas mostradas: {shown}. Total: {total}.",