truthound-dashboard 1.3.1__py3-none-any.whl → 1.4.0__py3-none-any.whl

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 (169) hide show
  1. truthound_dashboard/api/alerts.py +258 -0
  2. truthound_dashboard/api/anomaly.py +1302 -0
  3. truthound_dashboard/api/cross_alerts.py +352 -0
  4. truthound_dashboard/api/deps.py +143 -0
  5. truthound_dashboard/api/drift_monitor.py +540 -0
  6. truthound_dashboard/api/lineage.py +1151 -0
  7. truthound_dashboard/api/maintenance.py +363 -0
  8. truthound_dashboard/api/middleware.py +373 -1
  9. truthound_dashboard/api/model_monitoring.py +805 -0
  10. truthound_dashboard/api/notifications_advanced.py +2452 -0
  11. truthound_dashboard/api/plugins.py +2096 -0
  12. truthound_dashboard/api/profile.py +211 -14
  13. truthound_dashboard/api/reports.py +853 -0
  14. truthound_dashboard/api/router.py +147 -0
  15. truthound_dashboard/api/rule_suggestions.py +310 -0
  16. truthound_dashboard/api/schema_evolution.py +231 -0
  17. truthound_dashboard/api/sources.py +47 -3
  18. truthound_dashboard/api/triggers.py +190 -0
  19. truthound_dashboard/api/validations.py +13 -0
  20. truthound_dashboard/api/validators.py +333 -4
  21. truthound_dashboard/api/versioning.py +309 -0
  22. truthound_dashboard/api/websocket.py +301 -0
  23. truthound_dashboard/core/__init__.py +27 -0
  24. truthound_dashboard/core/anomaly.py +1395 -0
  25. truthound_dashboard/core/anomaly_explainer.py +633 -0
  26. truthound_dashboard/core/cache.py +206 -0
  27. truthound_dashboard/core/cached_services.py +422 -0
  28. truthound_dashboard/core/charts.py +352 -0
  29. truthound_dashboard/core/connections.py +1069 -42
  30. truthound_dashboard/core/cross_alerts.py +837 -0
  31. truthound_dashboard/core/drift_monitor.py +1477 -0
  32. truthound_dashboard/core/drift_sampling.py +669 -0
  33. truthound_dashboard/core/i18n/__init__.py +42 -0
  34. truthound_dashboard/core/i18n/detector.py +173 -0
  35. truthound_dashboard/core/i18n/messages.py +564 -0
  36. truthound_dashboard/core/lineage.py +971 -0
  37. truthound_dashboard/core/maintenance.py +443 -5
  38. truthound_dashboard/core/model_monitoring.py +1043 -0
  39. truthound_dashboard/core/notifications/channels.py +1020 -1
  40. truthound_dashboard/core/notifications/deduplication/__init__.py +143 -0
  41. truthound_dashboard/core/notifications/deduplication/policies.py +274 -0
  42. truthound_dashboard/core/notifications/deduplication/service.py +400 -0
  43. truthound_dashboard/core/notifications/deduplication/stores.py +2365 -0
  44. truthound_dashboard/core/notifications/deduplication/strategies.py +422 -0
  45. truthound_dashboard/core/notifications/dispatcher.py +43 -0
  46. truthound_dashboard/core/notifications/escalation/__init__.py +149 -0
  47. truthound_dashboard/core/notifications/escalation/backends.py +1384 -0
  48. truthound_dashboard/core/notifications/escalation/engine.py +429 -0
  49. truthound_dashboard/core/notifications/escalation/models.py +336 -0
  50. truthound_dashboard/core/notifications/escalation/scheduler.py +1187 -0
  51. truthound_dashboard/core/notifications/escalation/state_machine.py +330 -0
  52. truthound_dashboard/core/notifications/escalation/stores.py +2896 -0
  53. truthound_dashboard/core/notifications/events.py +49 -0
  54. truthound_dashboard/core/notifications/metrics/__init__.py +115 -0
  55. truthound_dashboard/core/notifications/metrics/base.py +528 -0
  56. truthound_dashboard/core/notifications/metrics/collectors.py +583 -0
  57. truthound_dashboard/core/notifications/routing/__init__.py +169 -0
  58. truthound_dashboard/core/notifications/routing/combinators.py +184 -0
  59. truthound_dashboard/core/notifications/routing/config.py +375 -0
  60. truthound_dashboard/core/notifications/routing/config_parser.py +867 -0
  61. truthound_dashboard/core/notifications/routing/engine.py +382 -0
  62. truthound_dashboard/core/notifications/routing/expression_engine.py +1269 -0
  63. truthound_dashboard/core/notifications/routing/jinja2_engine.py +774 -0
  64. truthound_dashboard/core/notifications/routing/rules.py +625 -0
  65. truthound_dashboard/core/notifications/routing/validator.py +678 -0
  66. truthound_dashboard/core/notifications/service.py +2 -0
  67. truthound_dashboard/core/notifications/stats_aggregator.py +850 -0
  68. truthound_dashboard/core/notifications/throttling/__init__.py +83 -0
  69. truthound_dashboard/core/notifications/throttling/builder.py +311 -0
  70. truthound_dashboard/core/notifications/throttling/stores.py +1859 -0
  71. truthound_dashboard/core/notifications/throttling/throttlers.py +633 -0
  72. truthound_dashboard/core/openlineage.py +1028 -0
  73. truthound_dashboard/core/plugins/__init__.py +39 -0
  74. truthound_dashboard/core/plugins/docs/__init__.py +39 -0
  75. truthound_dashboard/core/plugins/docs/extractor.py +703 -0
  76. truthound_dashboard/core/plugins/docs/renderers.py +804 -0
  77. truthound_dashboard/core/plugins/hooks/__init__.py +63 -0
  78. truthound_dashboard/core/plugins/hooks/decorators.py +367 -0
  79. truthound_dashboard/core/plugins/hooks/manager.py +403 -0
  80. truthound_dashboard/core/plugins/hooks/protocols.py +265 -0
  81. truthound_dashboard/core/plugins/lifecycle/__init__.py +41 -0
  82. truthound_dashboard/core/plugins/lifecycle/hot_reload.py +584 -0
  83. truthound_dashboard/core/plugins/lifecycle/machine.py +419 -0
  84. truthound_dashboard/core/plugins/lifecycle/states.py +266 -0
  85. truthound_dashboard/core/plugins/loader.py +504 -0
  86. truthound_dashboard/core/plugins/registry.py +810 -0
  87. truthound_dashboard/core/plugins/reporter_executor.py +588 -0
  88. truthound_dashboard/core/plugins/sandbox/__init__.py +59 -0
  89. truthound_dashboard/core/plugins/sandbox/code_validator.py +243 -0
  90. truthound_dashboard/core/plugins/sandbox/engines.py +770 -0
  91. truthound_dashboard/core/plugins/sandbox/protocols.py +194 -0
  92. truthound_dashboard/core/plugins/sandbox.py +617 -0
  93. truthound_dashboard/core/plugins/security/__init__.py +68 -0
  94. truthound_dashboard/core/plugins/security/analyzer.py +535 -0
  95. truthound_dashboard/core/plugins/security/policies.py +311 -0
  96. truthound_dashboard/core/plugins/security/protocols.py +296 -0
  97. truthound_dashboard/core/plugins/security/signing.py +842 -0
  98. truthound_dashboard/core/plugins/security.py +446 -0
  99. truthound_dashboard/core/plugins/validator_executor.py +401 -0
  100. truthound_dashboard/core/plugins/versioning/__init__.py +51 -0
  101. truthound_dashboard/core/plugins/versioning/constraints.py +377 -0
  102. truthound_dashboard/core/plugins/versioning/dependencies.py +541 -0
  103. truthound_dashboard/core/plugins/versioning/semver.py +266 -0
  104. truthound_dashboard/core/profile_comparison.py +601 -0
  105. truthound_dashboard/core/report_history.py +570 -0
  106. truthound_dashboard/core/reporters/__init__.py +57 -0
  107. truthound_dashboard/core/reporters/base.py +296 -0
  108. truthound_dashboard/core/reporters/csv_reporter.py +155 -0
  109. truthound_dashboard/core/reporters/html_reporter.py +598 -0
  110. truthound_dashboard/core/reporters/i18n/__init__.py +65 -0
  111. truthound_dashboard/core/reporters/i18n/base.py +494 -0
  112. truthound_dashboard/core/reporters/i18n/catalogs.py +930 -0
  113. truthound_dashboard/core/reporters/json_reporter.py +160 -0
  114. truthound_dashboard/core/reporters/junit_reporter.py +233 -0
  115. truthound_dashboard/core/reporters/markdown_reporter.py +207 -0
  116. truthound_dashboard/core/reporters/pdf_reporter.py +209 -0
  117. truthound_dashboard/core/reporters/registry.py +272 -0
  118. truthound_dashboard/core/rule_generator.py +2088 -0
  119. truthound_dashboard/core/scheduler.py +822 -12
  120. truthound_dashboard/core/schema_evolution.py +858 -0
  121. truthound_dashboard/core/services.py +152 -9
  122. truthound_dashboard/core/statistics.py +718 -0
  123. truthound_dashboard/core/streaming_anomaly.py +883 -0
  124. truthound_dashboard/core/triggers/__init__.py +45 -0
  125. truthound_dashboard/core/triggers/base.py +226 -0
  126. truthound_dashboard/core/triggers/evaluators.py +609 -0
  127. truthound_dashboard/core/triggers/factory.py +363 -0
  128. truthound_dashboard/core/unified_alerts.py +870 -0
  129. truthound_dashboard/core/validation_limits.py +509 -0
  130. truthound_dashboard/core/versioning.py +709 -0
  131. truthound_dashboard/core/websocket/__init__.py +59 -0
  132. truthound_dashboard/core/websocket/manager.py +512 -0
  133. truthound_dashboard/core/websocket/messages.py +130 -0
  134. truthound_dashboard/db/__init__.py +30 -0
  135. truthound_dashboard/db/models.py +3375 -3
  136. truthound_dashboard/main.py +22 -0
  137. truthound_dashboard/schemas/__init__.py +396 -1
  138. truthound_dashboard/schemas/anomaly.py +1258 -0
  139. truthound_dashboard/schemas/base.py +4 -0
  140. truthound_dashboard/schemas/cross_alerts.py +334 -0
  141. truthound_dashboard/schemas/drift_monitor.py +890 -0
  142. truthound_dashboard/schemas/lineage.py +428 -0
  143. truthound_dashboard/schemas/maintenance.py +154 -0
  144. truthound_dashboard/schemas/model_monitoring.py +374 -0
  145. truthound_dashboard/schemas/notifications_advanced.py +1363 -0
  146. truthound_dashboard/schemas/openlineage.py +704 -0
  147. truthound_dashboard/schemas/plugins.py +1293 -0
  148. truthound_dashboard/schemas/profile.py +420 -34
  149. truthound_dashboard/schemas/profile_comparison.py +242 -0
  150. truthound_dashboard/schemas/reports.py +285 -0
  151. truthound_dashboard/schemas/rule_suggestion.py +434 -0
  152. truthound_dashboard/schemas/schema_evolution.py +164 -0
  153. truthound_dashboard/schemas/source.py +117 -2
  154. truthound_dashboard/schemas/triggers.py +511 -0
  155. truthound_dashboard/schemas/unified_alerts.py +223 -0
  156. truthound_dashboard/schemas/validation.py +25 -1
  157. truthound_dashboard/schemas/validators/__init__.py +11 -0
  158. truthound_dashboard/schemas/validators/base.py +151 -0
  159. truthound_dashboard/schemas/versioning.py +152 -0
  160. truthound_dashboard/static/index.html +2 -2
  161. {truthound_dashboard-1.3.1.dist-info → truthound_dashboard-1.4.0.dist-info}/METADATA +142 -22
  162. truthound_dashboard-1.4.0.dist-info/RECORD +239 -0
  163. truthound_dashboard/static/assets/index-BZG20KuF.js +0 -586
  164. truthound_dashboard/static/assets/index-D_HyZ3pb.css +0 -1
  165. truthound_dashboard/static/assets/unmerged_dictionaries-CtpqQBm0.js +0 -1
  166. truthound_dashboard-1.3.1.dist-info/RECORD +0 -110
  167. {truthound_dashboard-1.3.1.dist-info → truthound_dashboard-1.4.0.dist-info}/WHEEL +0 -0
  168. {truthound_dashboard-1.3.1.dist-info → truthound_dashboard-1.4.0.dist-info}/entry_points.txt +0 -0
  169. {truthound_dashboard-1.3.1.dist-info → truthound_dashboard-1.4.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,930 @@
1
+ """Message catalogs for report localization.
2
+
3
+ This module contains pre-defined message catalogs for all supported locales.
4
+ Each catalog contains all translatable strings used in report generation.
5
+
6
+ Message keys follow a hierarchical naming convention:
7
+ - report.*: General report elements
8
+ - summary.*: Summary section
9
+ - statistics.*: Statistics section
10
+ - issues.*: Issues section
11
+ - severity.*: Severity levels
12
+ - status.*: Validation status
13
+ - common.*: Common UI elements
14
+ """
15
+
16
+ from .base import LocaleCatalog, SupportedLocale
17
+
18
+
19
+ # ============================================================================
20
+ # English (Base/Fallback)
21
+ # ============================================================================
22
+ ENGLISH_CATALOG = LocaleCatalog(
23
+ locale=SupportedLocale.ENGLISH,
24
+ messages={
25
+ # Report structure
26
+ "report.title": "Validation Report",
27
+ "report.generated_at": "Generated at",
28
+ "report.source": "Source",
29
+ "report.validation_id": "Validation ID",
30
+ "report.generated_by": "Generated by Truthound Dashboard",
31
+
32
+ # Summary section
33
+ "summary.title": "Validation Summary",
34
+ "summary.status": "Status",
35
+ "summary.total_issues": "Total Issues",
36
+ "summary.pass_rate": "Pass Rate",
37
+
38
+ # Statistics section
39
+ "statistics.title": "Data Statistics",
40
+ "statistics.row_count": "Row Count",
41
+ "statistics.column_count": "Column Count",
42
+ "statistics.duration": "Duration",
43
+ "statistics.started_at": "Started At",
44
+ "statistics.completed_at": "Completed At",
45
+ "statistics.na": "N/A",
46
+
47
+ # Issues section
48
+ "issues.title": "Issues",
49
+ "issues.no_issues": "No issues found. All validations passed.",
50
+ "issues.column": "Column",
51
+ "issues.type": "Issue Type",
52
+ "issues.severity": "Severity",
53
+ "issues.count": "Count",
54
+ "issues.details": "Details",
55
+ "issues.samples": "Sample Values",
56
+
57
+ # Severity levels
58
+ "severity.critical": "Critical",
59
+ "severity.high": "High",
60
+ "severity.medium": "Medium",
61
+ "severity.low": "Low",
62
+ "severity.info": "Info",
63
+
64
+ # Status indicators
65
+ "status.passed": "Passed",
66
+ "status.failed": "Failed",
67
+ "status.pending": "Pending",
68
+ "status.running": "Running",
69
+
70
+ # Plurals (using .one/.other pattern)
71
+ "issues.count.one": "{count} issue",
72
+ "issues.count.other": "{count} issues",
73
+ "rows.count.one": "{count} row",
74
+ "rows.count.other": "{count} rows",
75
+
76
+ # Time units
77
+ "time.seconds": "{value}s",
78
+ "time.milliseconds": "{value}ms",
79
+
80
+ # Common elements
81
+ "common.yes": "Yes",
82
+ "common.no": "No",
83
+ "common.true": "True",
84
+ "common.false": "False",
85
+ },
86
+ )
87
+
88
+
89
+ # ============================================================================
90
+ # Korean
91
+ # ============================================================================
92
+ KOREAN_CATALOG = LocaleCatalog(
93
+ locale=SupportedLocale.KOREAN,
94
+ messages={
95
+ # Report structure
96
+ "report.title": "검증 리포트",
97
+ "report.generated_at": "생성 시간",
98
+ "report.source": "데이터 소스",
99
+ "report.validation_id": "검증 ID",
100
+ "report.generated_by": "Truthound Dashboard에서 생성됨",
101
+
102
+ # Summary section
103
+ "summary.title": "검증 요약",
104
+ "summary.status": "상태",
105
+ "summary.total_issues": "총 이슈 수",
106
+ "summary.pass_rate": "통과율",
107
+
108
+ # Statistics section
109
+ "statistics.title": "데이터 통계",
110
+ "statistics.row_count": "행 수",
111
+ "statistics.column_count": "열 수",
112
+ "statistics.duration": "소요 시간",
113
+ "statistics.started_at": "시작 시간",
114
+ "statistics.completed_at": "완료 시간",
115
+ "statistics.na": "해당 없음",
116
+
117
+ # Issues section
118
+ "issues.title": "이슈 목록",
119
+ "issues.no_issues": "이슈가 없습니다. 모든 검증을 통과했습니다.",
120
+ "issues.column": "컬럼",
121
+ "issues.type": "이슈 유형",
122
+ "issues.severity": "심각도",
123
+ "issues.count": "개수",
124
+ "issues.details": "상세 내용",
125
+ "issues.samples": "샘플 값",
126
+
127
+ # Severity levels
128
+ "severity.critical": "심각",
129
+ "severity.high": "높음",
130
+ "severity.medium": "보통",
131
+ "severity.low": "낮음",
132
+ "severity.info": "정보",
133
+
134
+ # Status indicators
135
+ "status.passed": "통과",
136
+ "status.failed": "실패",
137
+ "status.pending": "대기 중",
138
+ "status.running": "실행 중",
139
+
140
+ # Plurals
141
+ "issues.count.one": "{count}개 이슈",
142
+ "issues.count.other": "{count}개 이슈",
143
+ "rows.count.one": "{count}개 행",
144
+ "rows.count.other": "{count}개 행",
145
+
146
+ # Time units
147
+ "time.seconds": "{value}초",
148
+ "time.milliseconds": "{value}밀리초",
149
+
150
+ # Common elements
151
+ "common.yes": "예",
152
+ "common.no": "아니오",
153
+ "common.true": "참",
154
+ "common.false": "거짓",
155
+ },
156
+ )
157
+
158
+
159
+ # ============================================================================
160
+ # Japanese
161
+ # ============================================================================
162
+ JAPANESE_CATALOG = LocaleCatalog(
163
+ locale=SupportedLocale.JAPANESE,
164
+ messages={
165
+ # Report structure
166
+ "report.title": "検証レポート",
167
+ "report.generated_at": "生成日時",
168
+ "report.source": "データソース",
169
+ "report.validation_id": "検証ID",
170
+ "report.generated_by": "Truthound Dashboardで生成",
171
+
172
+ # Summary section
173
+ "summary.title": "検証サマリー",
174
+ "summary.status": "ステータス",
175
+ "summary.total_issues": "総イシュー数",
176
+ "summary.pass_rate": "合格率",
177
+
178
+ # Statistics section
179
+ "statistics.title": "データ統計",
180
+ "statistics.row_count": "行数",
181
+ "statistics.column_count": "列数",
182
+ "statistics.duration": "所要時間",
183
+ "statistics.started_at": "開始時刻",
184
+ "statistics.completed_at": "完了時刻",
185
+ "statistics.na": "該当なし",
186
+
187
+ # Issues section
188
+ "issues.title": "イシュー一覧",
189
+ "issues.no_issues": "イシューはありません。すべての検証に合格しました。",
190
+ "issues.column": "カラム",
191
+ "issues.type": "イシュータイプ",
192
+ "issues.severity": "重要度",
193
+ "issues.count": "件数",
194
+ "issues.details": "詳細",
195
+ "issues.samples": "サンプル値",
196
+
197
+ # Severity levels
198
+ "severity.critical": "致命的",
199
+ "severity.high": "高",
200
+ "severity.medium": "中",
201
+ "severity.low": "低",
202
+ "severity.info": "情報",
203
+
204
+ # Status indicators
205
+ "status.passed": "合格",
206
+ "status.failed": "不合格",
207
+ "status.pending": "保留中",
208
+ "status.running": "実行中",
209
+
210
+ # Plurals
211
+ "issues.count.one": "{count}件のイシュー",
212
+ "issues.count.other": "{count}件のイシュー",
213
+ "rows.count.one": "{count}行",
214
+ "rows.count.other": "{count}行",
215
+
216
+ # Time units
217
+ "time.seconds": "{value}秒",
218
+ "time.milliseconds": "{value}ミリ秒",
219
+
220
+ # Common elements
221
+ "common.yes": "はい",
222
+ "common.no": "いいえ",
223
+ "common.true": "真",
224
+ "common.false": "偽",
225
+ },
226
+ )
227
+
228
+
229
+ # ============================================================================
230
+ # Chinese (Simplified)
231
+ # ============================================================================
232
+ CHINESE_CATALOG = LocaleCatalog(
233
+ locale=SupportedLocale.CHINESE,
234
+ messages={
235
+ # Report structure
236
+ "report.title": "验证报告",
237
+ "report.generated_at": "生成时间",
238
+ "report.source": "数据源",
239
+ "report.validation_id": "验证ID",
240
+ "report.generated_by": "由Truthound Dashboard生成",
241
+
242
+ # Summary section
243
+ "summary.title": "验证摘要",
244
+ "summary.status": "状态",
245
+ "summary.total_issues": "问题总数",
246
+ "summary.pass_rate": "通过率",
247
+
248
+ # Statistics section
249
+ "statistics.title": "数据统计",
250
+ "statistics.row_count": "行数",
251
+ "statistics.column_count": "列数",
252
+ "statistics.duration": "耗时",
253
+ "statistics.started_at": "开始时间",
254
+ "statistics.completed_at": "完成时间",
255
+ "statistics.na": "不适用",
256
+
257
+ # Issues section
258
+ "issues.title": "问题列表",
259
+ "issues.no_issues": "未发现问题。所有验证均已通过。",
260
+ "issues.column": "列",
261
+ "issues.type": "问题类型",
262
+ "issues.severity": "严重程度",
263
+ "issues.count": "数量",
264
+ "issues.details": "详情",
265
+ "issues.samples": "示例值",
266
+
267
+ # Severity levels
268
+ "severity.critical": "严重",
269
+ "severity.high": "高",
270
+ "severity.medium": "中",
271
+ "severity.low": "低",
272
+ "severity.info": "信息",
273
+
274
+ # Status indicators
275
+ "status.passed": "通过",
276
+ "status.failed": "失败",
277
+ "status.pending": "待处理",
278
+ "status.running": "运行中",
279
+
280
+ # Plurals
281
+ "issues.count.one": "{count}个问题",
282
+ "issues.count.other": "{count}个问题",
283
+ "rows.count.one": "{count}行",
284
+ "rows.count.other": "{count}行",
285
+
286
+ # Time units
287
+ "time.seconds": "{value}秒",
288
+ "time.milliseconds": "{value}毫秒",
289
+
290
+ # Common elements
291
+ "common.yes": "是",
292
+ "common.no": "否",
293
+ "common.true": "真",
294
+ "common.false": "假",
295
+ },
296
+ )
297
+
298
+
299
+ # ============================================================================
300
+ # German
301
+ # ============================================================================
302
+ GERMAN_CATALOG = LocaleCatalog(
303
+ locale=SupportedLocale.GERMAN,
304
+ messages={
305
+ # Report structure
306
+ "report.title": "Validierungsbericht",
307
+ "report.generated_at": "Erstellt am",
308
+ "report.source": "Datenquelle",
309
+ "report.validation_id": "Validierungs-ID",
310
+ "report.generated_by": "Erstellt von Truthound Dashboard",
311
+
312
+ # Summary section
313
+ "summary.title": "Validierungszusammenfassung",
314
+ "summary.status": "Status",
315
+ "summary.total_issues": "Gesamtanzahl Probleme",
316
+ "summary.pass_rate": "Erfolgsrate",
317
+
318
+ # Statistics section
319
+ "statistics.title": "Datenstatistik",
320
+ "statistics.row_count": "Zeilenanzahl",
321
+ "statistics.column_count": "Spaltenanzahl",
322
+ "statistics.duration": "Dauer",
323
+ "statistics.started_at": "Gestartet um",
324
+ "statistics.completed_at": "Abgeschlossen um",
325
+ "statistics.na": "Nicht verfügbar",
326
+
327
+ # Issues section
328
+ "issues.title": "Probleme",
329
+ "issues.no_issues": "Keine Probleme gefunden. Alle Validierungen bestanden.",
330
+ "issues.column": "Spalte",
331
+ "issues.type": "Problemtyp",
332
+ "issues.severity": "Schweregrad",
333
+ "issues.count": "Anzahl",
334
+ "issues.details": "Details",
335
+ "issues.samples": "Beispielwerte",
336
+
337
+ # Severity levels
338
+ "severity.critical": "Kritisch",
339
+ "severity.high": "Hoch",
340
+ "severity.medium": "Mittel",
341
+ "severity.low": "Niedrig",
342
+ "severity.info": "Info",
343
+
344
+ # Status indicators
345
+ "status.passed": "Bestanden",
346
+ "status.failed": "Fehlgeschlagen",
347
+ "status.pending": "Ausstehend",
348
+ "status.running": "Läuft",
349
+
350
+ # Plurals
351
+ "issues.count.one": "{count} Problem",
352
+ "issues.count.other": "{count} Probleme",
353
+ "rows.count.one": "{count} Zeile",
354
+ "rows.count.other": "{count} Zeilen",
355
+
356
+ # Time units
357
+ "time.seconds": "{value}s",
358
+ "time.milliseconds": "{value}ms",
359
+
360
+ # Common elements
361
+ "common.yes": "Ja",
362
+ "common.no": "Nein",
363
+ "common.true": "Wahr",
364
+ "common.false": "Falsch",
365
+ },
366
+ )
367
+
368
+
369
+ # ============================================================================
370
+ # French
371
+ # ============================================================================
372
+ FRENCH_CATALOG = LocaleCatalog(
373
+ locale=SupportedLocale.FRENCH,
374
+ messages={
375
+ # Report structure
376
+ "report.title": "Rapport de Validation",
377
+ "report.generated_at": "Généré le",
378
+ "report.source": "Source de données",
379
+ "report.validation_id": "ID de validation",
380
+ "report.generated_by": "Généré par Truthound Dashboard",
381
+
382
+ # Summary section
383
+ "summary.title": "Résumé de la Validation",
384
+ "summary.status": "Statut",
385
+ "summary.total_issues": "Total des problèmes",
386
+ "summary.pass_rate": "Taux de réussite",
387
+
388
+ # Statistics section
389
+ "statistics.title": "Statistiques des Données",
390
+ "statistics.row_count": "Nombre de lignes",
391
+ "statistics.column_count": "Nombre de colonnes",
392
+ "statistics.duration": "Durée",
393
+ "statistics.started_at": "Commencé à",
394
+ "statistics.completed_at": "Terminé à",
395
+ "statistics.na": "Non disponible",
396
+
397
+ # Issues section
398
+ "issues.title": "Problèmes",
399
+ "issues.no_issues": "Aucun problème trouvé. Toutes les validations ont réussi.",
400
+ "issues.column": "Colonne",
401
+ "issues.type": "Type de problème",
402
+ "issues.severity": "Gravité",
403
+ "issues.count": "Nombre",
404
+ "issues.details": "Détails",
405
+ "issues.samples": "Valeurs d'exemple",
406
+
407
+ # Severity levels
408
+ "severity.critical": "Critique",
409
+ "severity.high": "Élevé",
410
+ "severity.medium": "Moyen",
411
+ "severity.low": "Faible",
412
+ "severity.info": "Info",
413
+
414
+ # Status indicators
415
+ "status.passed": "Réussi",
416
+ "status.failed": "Échoué",
417
+ "status.pending": "En attente",
418
+ "status.running": "En cours",
419
+
420
+ # Plurals
421
+ "issues.count.one": "{count} problème",
422
+ "issues.count.other": "{count} problèmes",
423
+ "rows.count.one": "{count} ligne",
424
+ "rows.count.other": "{count} lignes",
425
+
426
+ # Time units
427
+ "time.seconds": "{value}s",
428
+ "time.milliseconds": "{value}ms",
429
+
430
+ # Common elements
431
+ "common.yes": "Oui",
432
+ "common.no": "Non",
433
+ "common.true": "Vrai",
434
+ "common.false": "Faux",
435
+ },
436
+ )
437
+
438
+
439
+ # ============================================================================
440
+ # Spanish
441
+ # ============================================================================
442
+ SPANISH_CATALOG = LocaleCatalog(
443
+ locale=SupportedLocale.SPANISH,
444
+ messages={
445
+ # Report structure
446
+ "report.title": "Informe de Validación",
447
+ "report.generated_at": "Generado el",
448
+ "report.source": "Fuente de datos",
449
+ "report.validation_id": "ID de validación",
450
+ "report.generated_by": "Generado por Truthound Dashboard",
451
+
452
+ # Summary section
453
+ "summary.title": "Resumen de Validación",
454
+ "summary.status": "Estado",
455
+ "summary.total_issues": "Total de problemas",
456
+ "summary.pass_rate": "Tasa de aprobación",
457
+
458
+ # Statistics section
459
+ "statistics.title": "Estadísticas de Datos",
460
+ "statistics.row_count": "Número de filas",
461
+ "statistics.column_count": "Número de columnas",
462
+ "statistics.duration": "Duración",
463
+ "statistics.started_at": "Iniciado a las",
464
+ "statistics.completed_at": "Completado a las",
465
+ "statistics.na": "No disponible",
466
+
467
+ # Issues section
468
+ "issues.title": "Problemas",
469
+ "issues.no_issues": "No se encontraron problemas. Todas las validaciones pasaron.",
470
+ "issues.column": "Columna",
471
+ "issues.type": "Tipo de problema",
472
+ "issues.severity": "Gravedad",
473
+ "issues.count": "Cantidad",
474
+ "issues.details": "Detalles",
475
+ "issues.samples": "Valores de ejemplo",
476
+
477
+ # Severity levels
478
+ "severity.critical": "Crítico",
479
+ "severity.high": "Alto",
480
+ "severity.medium": "Medio",
481
+ "severity.low": "Bajo",
482
+ "severity.info": "Info",
483
+
484
+ # Status indicators
485
+ "status.passed": "Aprobado",
486
+ "status.failed": "Fallido",
487
+ "status.pending": "Pendiente",
488
+ "status.running": "Ejecutando",
489
+
490
+ # Plurals
491
+ "issues.count.one": "{count} problema",
492
+ "issues.count.other": "{count} problemas",
493
+ "rows.count.one": "{count} fila",
494
+ "rows.count.other": "{count} filas",
495
+
496
+ # Time units
497
+ "time.seconds": "{value}s",
498
+ "time.milliseconds": "{value}ms",
499
+
500
+ # Common elements
501
+ "common.yes": "Sí",
502
+ "common.no": "No",
503
+ "common.true": "Verdadero",
504
+ "common.false": "Falso",
505
+ },
506
+ )
507
+
508
+
509
+ # ============================================================================
510
+ # Portuguese
511
+ # ============================================================================
512
+ PORTUGUESE_CATALOG = LocaleCatalog(
513
+ locale=SupportedLocale.PORTUGUESE,
514
+ messages={
515
+ "report.title": "Relatório de Validação",
516
+ "report.generated_at": "Gerado em",
517
+ "report.source": "Fonte de dados",
518
+ "report.validation_id": "ID de validação",
519
+ "report.generated_by": "Gerado pelo Truthound Dashboard",
520
+ "summary.title": "Resumo da Validação",
521
+ "summary.status": "Status",
522
+ "summary.total_issues": "Total de problemas",
523
+ "summary.pass_rate": "Taxa de aprovação",
524
+ "statistics.title": "Estatísticas dos Dados",
525
+ "statistics.row_count": "Número de linhas",
526
+ "statistics.column_count": "Número de colunas",
527
+ "statistics.duration": "Duração",
528
+ "statistics.started_at": "Iniciado em",
529
+ "statistics.completed_at": "Concluído em",
530
+ "statistics.na": "Não disponível",
531
+ "issues.title": "Problemas",
532
+ "issues.no_issues": "Nenhum problema encontrado. Todas as validações passaram.",
533
+ "issues.column": "Coluna",
534
+ "issues.type": "Tipo de problema",
535
+ "issues.severity": "Gravidade",
536
+ "issues.count": "Quantidade",
537
+ "issues.details": "Detalhes",
538
+ "issues.samples": "Valores de exemplo",
539
+ "severity.critical": "Crítico",
540
+ "severity.high": "Alto",
541
+ "severity.medium": "Médio",
542
+ "severity.low": "Baixo",
543
+ "severity.info": "Info",
544
+ "status.passed": "Aprovado",
545
+ "status.failed": "Falhou",
546
+ "status.pending": "Pendente",
547
+ "status.running": "Executando",
548
+ "issues.count.one": "{count} problema",
549
+ "issues.count.other": "{count} problemas",
550
+ "rows.count.one": "{count} linha",
551
+ "rows.count.other": "{count} linhas",
552
+ "time.seconds": "{value}s",
553
+ "time.milliseconds": "{value}ms",
554
+ "common.yes": "Sim",
555
+ "common.no": "Não",
556
+ "common.true": "Verdadeiro",
557
+ "common.false": "Falso",
558
+ },
559
+ )
560
+
561
+
562
+ # ============================================================================
563
+ # Italian
564
+ # ============================================================================
565
+ ITALIAN_CATALOG = LocaleCatalog(
566
+ locale=SupportedLocale.ITALIAN,
567
+ messages={
568
+ "report.title": "Report di Validazione",
569
+ "report.generated_at": "Generato il",
570
+ "report.source": "Origine dati",
571
+ "report.validation_id": "ID validazione",
572
+ "report.generated_by": "Generato da Truthound Dashboard",
573
+ "summary.title": "Riepilogo Validazione",
574
+ "summary.status": "Stato",
575
+ "summary.total_issues": "Totale problemi",
576
+ "summary.pass_rate": "Percentuale superamento",
577
+ "statistics.title": "Statistiche Dati",
578
+ "statistics.row_count": "Numero righe",
579
+ "statistics.column_count": "Numero colonne",
580
+ "statistics.duration": "Durata",
581
+ "statistics.started_at": "Iniziato alle",
582
+ "statistics.completed_at": "Completato alle",
583
+ "statistics.na": "Non disponibile",
584
+ "issues.title": "Problemi",
585
+ "issues.no_issues": "Nessun problema trovato. Tutte le validazioni sono passate.",
586
+ "issues.column": "Colonna",
587
+ "issues.type": "Tipo problema",
588
+ "issues.severity": "Gravità",
589
+ "issues.count": "Conteggio",
590
+ "issues.details": "Dettagli",
591
+ "issues.samples": "Valori di esempio",
592
+ "severity.critical": "Critico",
593
+ "severity.high": "Alto",
594
+ "severity.medium": "Medio",
595
+ "severity.low": "Basso",
596
+ "severity.info": "Info",
597
+ "status.passed": "Superato",
598
+ "status.failed": "Fallito",
599
+ "status.pending": "In attesa",
600
+ "status.running": "In esecuzione",
601
+ "issues.count.one": "{count} problema",
602
+ "issues.count.other": "{count} problemi",
603
+ "rows.count.one": "{count} riga",
604
+ "rows.count.other": "{count} righe",
605
+ "time.seconds": "{value}s",
606
+ "time.milliseconds": "{value}ms",
607
+ "common.yes": "Sì",
608
+ "common.no": "No",
609
+ "common.true": "Vero",
610
+ "common.false": "Falso",
611
+ },
612
+ )
613
+
614
+
615
+ # ============================================================================
616
+ # Russian
617
+ # ============================================================================
618
+ RUSSIAN_CATALOG = LocaleCatalog(
619
+ locale=SupportedLocale.RUSSIAN,
620
+ messages={
621
+ "report.title": "Отчёт о валидации",
622
+ "report.generated_at": "Сгенерировано",
623
+ "report.source": "Источник данных",
624
+ "report.validation_id": "ID валидации",
625
+ "report.generated_by": "Создано в Truthound Dashboard",
626
+ "summary.title": "Сводка валидации",
627
+ "summary.status": "Статус",
628
+ "summary.total_issues": "Всего проблем",
629
+ "summary.pass_rate": "Процент успеха",
630
+ "statistics.title": "Статистика данных",
631
+ "statistics.row_count": "Количество строк",
632
+ "statistics.column_count": "Количество столбцов",
633
+ "statistics.duration": "Продолжительность",
634
+ "statistics.started_at": "Начато",
635
+ "statistics.completed_at": "Завершено",
636
+ "statistics.na": "Недоступно",
637
+ "issues.title": "Проблемы",
638
+ "issues.no_issues": "Проблем не обнаружено. Все проверки пройдены.",
639
+ "issues.column": "Столбец",
640
+ "issues.type": "Тип проблемы",
641
+ "issues.severity": "Серьёзность",
642
+ "issues.count": "Количество",
643
+ "issues.details": "Детали",
644
+ "issues.samples": "Примеры значений",
645
+ "severity.critical": "Критическая",
646
+ "severity.high": "Высокая",
647
+ "severity.medium": "Средняя",
648
+ "severity.low": "Низкая",
649
+ "severity.info": "Инфо",
650
+ "status.passed": "Пройдено",
651
+ "status.failed": "Ошибка",
652
+ "status.pending": "Ожидание",
653
+ "status.running": "Выполняется",
654
+ "issues.count.one": "{count} проблема",
655
+ "issues.count.other": "{count} проблем",
656
+ "rows.count.one": "{count} строка",
657
+ "rows.count.other": "{count} строк",
658
+ "time.seconds": "{value}с",
659
+ "time.milliseconds": "{value}мс",
660
+ "common.yes": "Да",
661
+ "common.no": "Нет",
662
+ "common.true": "Истина",
663
+ "common.false": "Ложь",
664
+ },
665
+ )
666
+
667
+
668
+ # ============================================================================
669
+ # Arabic
670
+ # ============================================================================
671
+ ARABIC_CATALOG = LocaleCatalog(
672
+ locale=SupportedLocale.ARABIC,
673
+ messages={
674
+ "report.title": "تقرير التحقق",
675
+ "report.generated_at": "تم الإنشاء في",
676
+ "report.source": "مصدر البيانات",
677
+ "report.validation_id": "معرف التحقق",
678
+ "report.generated_by": "تم الإنشاء بواسطة Truthound Dashboard",
679
+ "summary.title": "ملخص التحقق",
680
+ "summary.status": "الحالة",
681
+ "summary.total_issues": "إجمالي المشاكل",
682
+ "summary.pass_rate": "معدل النجاح",
683
+ "statistics.title": "إحصائيات البيانات",
684
+ "statistics.row_count": "عدد الصفوف",
685
+ "statistics.column_count": "عدد الأعمدة",
686
+ "statistics.duration": "المدة",
687
+ "statistics.started_at": "بدأ في",
688
+ "statistics.completed_at": "انتهى في",
689
+ "statistics.na": "غير متاح",
690
+ "issues.title": "المشاكل",
691
+ "issues.no_issues": "لم يتم العثور على مشاكل. نجحت جميع عمليات التحقق.",
692
+ "issues.column": "العمود",
693
+ "issues.type": "نوع المشكلة",
694
+ "issues.severity": "الخطورة",
695
+ "issues.count": "العدد",
696
+ "issues.details": "التفاصيل",
697
+ "issues.samples": "قيم نموذجية",
698
+ "severity.critical": "حرج",
699
+ "severity.high": "عالي",
700
+ "severity.medium": "متوسط",
701
+ "severity.low": "منخفض",
702
+ "severity.info": "معلومات",
703
+ "status.passed": "نجح",
704
+ "status.failed": "فشل",
705
+ "status.pending": "قيد الانتظار",
706
+ "status.running": "قيد التشغيل",
707
+ "issues.count.one": "مشكلة واحدة",
708
+ "issues.count.other": "{count} مشاكل",
709
+ "rows.count.one": "صف واحد",
710
+ "rows.count.other": "{count} صفوف",
711
+ "time.seconds": "{value} ثانية",
712
+ "time.milliseconds": "{value} مللي ثانية",
713
+ "common.yes": "نعم",
714
+ "common.no": "لا",
715
+ "common.true": "صحيح",
716
+ "common.false": "خطأ",
717
+ },
718
+ )
719
+
720
+
721
+ # ============================================================================
722
+ # Thai
723
+ # ============================================================================
724
+ THAI_CATALOG = LocaleCatalog(
725
+ locale=SupportedLocale.THAI,
726
+ messages={
727
+ "report.title": "รายงานการตรวจสอบ",
728
+ "report.generated_at": "สร้างเมื่อ",
729
+ "report.source": "แหล่งข้อมูล",
730
+ "report.validation_id": "รหัสการตรวจสอบ",
731
+ "report.generated_by": "สร้างโดย Truthound Dashboard",
732
+ "summary.title": "สรุปการตรวจสอบ",
733
+ "summary.status": "สถานะ",
734
+ "summary.total_issues": "ปัญหาทั้งหมด",
735
+ "summary.pass_rate": "อัตราผ่าน",
736
+ "statistics.title": "สถิติข้อมูล",
737
+ "statistics.row_count": "จำนวนแถว",
738
+ "statistics.column_count": "จำนวนคอลัมน์",
739
+ "statistics.duration": "ระยะเวลา",
740
+ "statistics.started_at": "เริ่มเมื่อ",
741
+ "statistics.completed_at": "เสร็จเมื่อ",
742
+ "statistics.na": "ไม่มีข้อมูล",
743
+ "issues.title": "ปัญหา",
744
+ "issues.no_issues": "ไม่พบปัญหา การตรวจสอบทั้งหมดผ่าน",
745
+ "issues.column": "คอลัมน์",
746
+ "issues.type": "ประเภทปัญหา",
747
+ "issues.severity": "ความรุนแรง",
748
+ "issues.count": "จำนวน",
749
+ "issues.details": "รายละเอียด",
750
+ "issues.samples": "ค่าตัวอย่าง",
751
+ "severity.critical": "วิกฤต",
752
+ "severity.high": "สูง",
753
+ "severity.medium": "ปานกลาง",
754
+ "severity.low": "ต่ำ",
755
+ "severity.info": "ข้อมูล",
756
+ "status.passed": "ผ่าน",
757
+ "status.failed": "ไม่ผ่าน",
758
+ "status.pending": "รอดำเนินการ",
759
+ "status.running": "กำลังทำงาน",
760
+ "issues.count.one": "{count} ปัญหา",
761
+ "issues.count.other": "{count} ปัญหา",
762
+ "rows.count.one": "{count} แถว",
763
+ "rows.count.other": "{count} แถว",
764
+ "time.seconds": "{value} วินาที",
765
+ "time.milliseconds": "{value} มิลลิวินาที",
766
+ "common.yes": "ใช่",
767
+ "common.no": "ไม่",
768
+ "common.true": "จริง",
769
+ "common.false": "เท็จ",
770
+ },
771
+ )
772
+
773
+
774
+ # ============================================================================
775
+ # Vietnamese
776
+ # ============================================================================
777
+ VIETNAMESE_CATALOG = LocaleCatalog(
778
+ locale=SupportedLocale.VIETNAMESE,
779
+ messages={
780
+ "report.title": "Báo cáo Xác thực",
781
+ "report.generated_at": "Tạo lúc",
782
+ "report.source": "Nguồn dữ liệu",
783
+ "report.validation_id": "ID xác thực",
784
+ "report.generated_by": "Tạo bởi Truthound Dashboard",
785
+ "summary.title": "Tóm tắt Xác thực",
786
+ "summary.status": "Trạng thái",
787
+ "summary.total_issues": "Tổng số vấn đề",
788
+ "summary.pass_rate": "Tỷ lệ đạt",
789
+ "statistics.title": "Thống kê Dữ liệu",
790
+ "statistics.row_count": "Số hàng",
791
+ "statistics.column_count": "Số cột",
792
+ "statistics.duration": "Thời gian",
793
+ "statistics.started_at": "Bắt đầu lúc",
794
+ "statistics.completed_at": "Hoàn thành lúc",
795
+ "statistics.na": "Không có",
796
+ "issues.title": "Vấn đề",
797
+ "issues.no_issues": "Không tìm thấy vấn đề. Tất cả xác thực đều đạt.",
798
+ "issues.column": "Cột",
799
+ "issues.type": "Loại vấn đề",
800
+ "issues.severity": "Mức độ",
801
+ "issues.count": "Số lượng",
802
+ "issues.details": "Chi tiết",
803
+ "issues.samples": "Giá trị mẫu",
804
+ "severity.critical": "Nghiêm trọng",
805
+ "severity.high": "Cao",
806
+ "severity.medium": "Trung bình",
807
+ "severity.low": "Thấp",
808
+ "severity.info": "Thông tin",
809
+ "status.passed": "Đạt",
810
+ "status.failed": "Không đạt",
811
+ "status.pending": "Đang chờ",
812
+ "status.running": "Đang chạy",
813
+ "issues.count.one": "{count} vấn đề",
814
+ "issues.count.other": "{count} vấn đề",
815
+ "rows.count.one": "{count} hàng",
816
+ "rows.count.other": "{count} hàng",
817
+ "time.seconds": "{value} giây",
818
+ "time.milliseconds": "{value} ms",
819
+ "common.yes": "Có",
820
+ "common.no": "Không",
821
+ "common.true": "Đúng",
822
+ "common.false": "Sai",
823
+ },
824
+ )
825
+
826
+
827
+ # ============================================================================
828
+ # Indonesian
829
+ # ============================================================================
830
+ INDONESIAN_CATALOG = LocaleCatalog(
831
+ locale=SupportedLocale.INDONESIAN,
832
+ messages={
833
+ "report.title": "Laporan Validasi",
834
+ "report.generated_at": "Dibuat pada",
835
+ "report.source": "Sumber data",
836
+ "report.validation_id": "ID Validasi",
837
+ "report.generated_by": "Dibuat oleh Truthound Dashboard",
838
+ "summary.title": "Ringkasan Validasi",
839
+ "summary.status": "Status",
840
+ "summary.total_issues": "Total Masalah",
841
+ "summary.pass_rate": "Tingkat Kelulusan",
842
+ "statistics.title": "Statistik Data",
843
+ "statistics.row_count": "Jumlah Baris",
844
+ "statistics.column_count": "Jumlah Kolom",
845
+ "statistics.duration": "Durasi",
846
+ "statistics.started_at": "Dimulai pada",
847
+ "statistics.completed_at": "Selesai pada",
848
+ "statistics.na": "Tidak tersedia",
849
+ "issues.title": "Masalah",
850
+ "issues.no_issues": "Tidak ada masalah ditemukan. Semua validasi berhasil.",
851
+ "issues.column": "Kolom",
852
+ "issues.type": "Jenis Masalah",
853
+ "issues.severity": "Tingkat Keparahan",
854
+ "issues.count": "Jumlah",
855
+ "issues.details": "Detail",
856
+ "issues.samples": "Nilai Contoh",
857
+ "severity.critical": "Kritis",
858
+ "severity.high": "Tinggi",
859
+ "severity.medium": "Sedang",
860
+ "severity.low": "Rendah",
861
+ "severity.info": "Info",
862
+ "status.passed": "Lulus",
863
+ "status.failed": "Gagal",
864
+ "status.pending": "Menunggu",
865
+ "status.running": "Berjalan",
866
+ "issues.count.one": "{count} masalah",
867
+ "issues.count.other": "{count} masalah",
868
+ "rows.count.one": "{count} baris",
869
+ "rows.count.other": "{count} baris",
870
+ "time.seconds": "{value} detik",
871
+ "time.milliseconds": "{value} ms",
872
+ "common.yes": "Ya",
873
+ "common.no": "Tidak",
874
+ "common.true": "Benar",
875
+ "common.false": "Salah",
876
+ },
877
+ )
878
+
879
+
880
+ # ============================================================================
881
+ # Turkish
882
+ # ============================================================================
883
+ TURKISH_CATALOG = LocaleCatalog(
884
+ locale=SupportedLocale.TURKISH,
885
+ messages={
886
+ "report.title": "Doğrulama Raporu",
887
+ "report.generated_at": "Oluşturulma tarihi",
888
+ "report.source": "Veri kaynağı",
889
+ "report.validation_id": "Doğrulama ID",
890
+ "report.generated_by": "Truthound Dashboard tarafından oluşturuldu",
891
+ "summary.title": "Doğrulama Özeti",
892
+ "summary.status": "Durum",
893
+ "summary.total_issues": "Toplam Sorun",
894
+ "summary.pass_rate": "Başarı Oranı",
895
+ "statistics.title": "Veri İstatistikleri",
896
+ "statistics.row_count": "Satır Sayısı",
897
+ "statistics.column_count": "Sütun Sayısı",
898
+ "statistics.duration": "Süre",
899
+ "statistics.started_at": "Başlangıç",
900
+ "statistics.completed_at": "Bitiş",
901
+ "statistics.na": "Mevcut değil",
902
+ "issues.title": "Sorunlar",
903
+ "issues.no_issues": "Sorun bulunamadı. Tüm doğrulamalar başarılı.",
904
+ "issues.column": "Sütun",
905
+ "issues.type": "Sorun Türü",
906
+ "issues.severity": "Önem Derecesi",
907
+ "issues.count": "Sayı",
908
+ "issues.details": "Detaylar",
909
+ "issues.samples": "Örnek Değerler",
910
+ "severity.critical": "Kritik",
911
+ "severity.high": "Yüksek",
912
+ "severity.medium": "Orta",
913
+ "severity.low": "Düşük",
914
+ "severity.info": "Bilgi",
915
+ "status.passed": "Başarılı",
916
+ "status.failed": "Başarısız",
917
+ "status.pending": "Bekliyor",
918
+ "status.running": "Çalışıyor",
919
+ "issues.count.one": "{count} sorun",
920
+ "issues.count.other": "{count} sorun",
921
+ "rows.count.one": "{count} satır",
922
+ "rows.count.other": "{count} satır",
923
+ "time.seconds": "{value} saniye",
924
+ "time.milliseconds": "{value} ms",
925
+ "common.yes": "Evet",
926
+ "common.no": "Hayır",
927
+ "common.true": "Doğru",
928
+ "common.false": "Yanlış",
929
+ },
930
+ )