@allurereport/web-dashboard 3.1.0 → 3.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.
- package/dist/multi/{173.app-7b5d6350b95318ff266b.js → 173.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{174.app-7b5d6350b95318ff266b.js → 174.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{252.app-7b5d6350b95318ff266b.js → 252.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{282.app-7b5d6350b95318ff266b.js → 282.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{29.app-7b5d6350b95318ff266b.js → 29.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{416.app-7b5d6350b95318ff266b.js → 416.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{527.app-7b5d6350b95318ff266b.js → 527.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{600.app-7b5d6350b95318ff266b.js → 600.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{605.app-7b5d6350b95318ff266b.js → 605.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{638.app-7b5d6350b95318ff266b.js → 638.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{672.app-7b5d6350b95318ff266b.js → 672.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{686.app-7b5d6350b95318ff266b.js → 686.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{725.app-7b5d6350b95318ff266b.js → 725.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{741.app-7b5d6350b95318ff266b.js → 741.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/749.app-7ac8c7228f79c5ce8ff3.js +1 -0
- package/dist/multi/{755.app-7b5d6350b95318ff266b.js → 755.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{894.app-7b5d6350b95318ff266b.js → 894.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{943.app-7b5d6350b95318ff266b.js → 943.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/{980.app-7b5d6350b95318ff266b.js → 980.app-7ac8c7228f79c5ce8ff3.js} +1 -1
- package/dist/multi/app-7ac8c7228f79c5ce8ff3.js +2 -0
- package/dist/multi/manifest.json +21 -21
- package/dist/multi/{styles-aac7a63204080ccd695a.css → styles-6e84fb28f87ce39fa305.css} +1 -1
- package/dist/single/app-a852a6b926584d4d704b.js +2 -0
- package/dist/single/manifest.json +1 -1
- package/package.json +6 -7
- package/src/components/Dashboard/index.tsx +5 -5
- package/src/locales/az.json +2 -2
- package/src/locales/de.json +2 -2
- package/src/locales/en.json +2 -2
- package/src/locales/es.json +2 -2
- package/src/locales/fr.json +2 -2
- package/src/locales/he.json +2 -2
- package/src/locales/hy.json +2 -2
- package/src/locales/it.json +2 -2
- package/src/locales/ja.json +2 -2
- package/src/locales/ka.json +2 -2
- package/src/locales/kr.json +2 -2
- package/src/locales/nl.json +2 -2
- package/src/locales/pl.json +2 -2
- package/src/locales/pt.json +2 -2
- package/src/locales/ru.json +2 -2
- package/src/locales/sv.json +2 -2
- package/src/locales/tr.json +2 -2
- package/src/locales/{ua.json → uk.json} +2 -2
- package/src/locales/zh.json +2 -2
- package/src/stores/locale.ts +68 -37
- package/types.d.ts +1 -1
- package/dist/multi/91.app-7b5d6350b95318ff266b.js +0 -1
- package/dist/multi/app-7b5d6350b95318ff266b.js +0 -2
- package/dist/single/app-97adb87875ceffb31341.js +0 -2
- /package/dist/multi/{app-7b5d6350b95318ff266b.js.LICENSE.txt → app-7ac8c7228f79c5ce8ff3.js.LICENSE.txt} +0 -0
- /package/dist/single/{app-97adb87875ceffb31341.js.LICENSE.txt → app-a852a6b926584d4d704b.js.LICENSE.txt} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@allurereport/web-dashboard",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"description": "The static files for Allure Dashboard Report",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"allure",
|
|
@@ -31,15 +31,14 @@
|
|
|
31
31
|
"IE 11"
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@allurereport/charts-api": "3.
|
|
35
|
-
"@allurereport/core-api": "3.
|
|
36
|
-
"@allurereport/web-commons": "3.
|
|
37
|
-
"@allurereport/web-components": "3.
|
|
34
|
+
"@allurereport/charts-api": "3.2.0",
|
|
35
|
+
"@allurereport/core-api": "3.2.0",
|
|
36
|
+
"@allurereport/web-commons": "3.2.0",
|
|
37
|
+
"@allurereport/web-components": "3.2.0",
|
|
38
38
|
"@preact/signals": "^2.6.1",
|
|
39
39
|
"clsx": "^2.1.1",
|
|
40
40
|
"i18next": "^24.0.2",
|
|
41
|
-
"preact": "^10.28.2"
|
|
42
|
-
"reset.css": "^2.0.2"
|
|
41
|
+
"preact": "^10.28.2"
|
|
43
42
|
},
|
|
44
43
|
"devDependencies": {
|
|
45
44
|
"@babel/core": "^7.27.4",
|
|
@@ -5,13 +5,13 @@ import {
|
|
|
5
5
|
CurrentStatusChartWidget,
|
|
6
6
|
DurationDynamicsChartWidget,
|
|
7
7
|
DurationsChartWidget,
|
|
8
|
-
FBSUAgePyramidChartWidget,
|
|
9
8
|
Grid,
|
|
10
9
|
GridItem,
|
|
11
10
|
HeatMapWidget,
|
|
12
11
|
Loadable,
|
|
13
12
|
PageLoader,
|
|
14
13
|
StabilityDistributionWidget,
|
|
14
|
+
StatusAgePyramidChartWidget,
|
|
15
15
|
StatusDynamicsChartWidget,
|
|
16
16
|
StatusTransitionsChartWidget,
|
|
17
17
|
TestBaseGrowthDynamicsChartWidget,
|
|
@@ -112,15 +112,15 @@ const getChartWidgetByType = (
|
|
|
112
112
|
/>
|
|
113
113
|
);
|
|
114
114
|
}
|
|
115
|
-
case ChartType.
|
|
116
|
-
const title = chartData.title ?? t("
|
|
115
|
+
case ChartType.StatusAgePyramid: {
|
|
116
|
+
const title = chartData.title ?? t("statusAgePyramid.title");
|
|
117
117
|
|
|
118
118
|
return (
|
|
119
|
-
<
|
|
119
|
+
<StatusAgePyramidChartWidget
|
|
120
120
|
title={title}
|
|
121
121
|
data={chartData.data}
|
|
122
122
|
statuses={chartData.statuses}
|
|
123
|
-
i18n={(key, props = {}) => t(`
|
|
123
|
+
i18n={(key, props = {}) => t(`statusAgePyramid.${key}`, props)}
|
|
124
124
|
/>
|
|
125
125
|
);
|
|
126
126
|
}
|
package/src/locales/az.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Statusa görə yaş piramidası",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/de.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Alterspyramide nach Status",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/en.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Status age pyramid",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/es.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "Pirámide de edad
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Pirámide de edad por estado",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/fr.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "Pyramide des âges
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Pyramide des âges par statut",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/he.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "פירמידת גילאים
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "פירמידת גילאים לפי סטטוס",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/hy.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Կարգավիճակի տարիքային պիրամիդ",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/it.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "Piramide delle età
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Piramide delle età per stato",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/ja.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "ステータス年齢ピラミッド",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/ka.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "ასაკობრივი პირამიდა სტატუსის მიხედვით",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/kr.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "상태 연령 피라미드",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/nl.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Leeftijdspiramide per status",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/pl.json
CHANGED
|
@@ -157,8 +157,8 @@
|
|
|
157
157
|
"history": "{{timestamp, timestamp_date}}"
|
|
158
158
|
}
|
|
159
159
|
},
|
|
160
|
-
"
|
|
161
|
-
"title": "Piramida
|
|
160
|
+
"statusAgePyramid": {
|
|
161
|
+
"title": "Piramida wieku według statusu",
|
|
162
162
|
"status": {
|
|
163
163
|
"passed": "$t(statuses:passed, capitalize)",
|
|
164
164
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/pt.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "Pirâmide etária
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Pirâmide etária por status",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/ru.json
CHANGED
|
@@ -157,8 +157,8 @@
|
|
|
157
157
|
"history": "{{timestamp, timestamp_date}}"
|
|
158
158
|
}
|
|
159
159
|
},
|
|
160
|
-
"
|
|
161
|
-
"title": "
|
|
160
|
+
"statusAgePyramid": {
|
|
161
|
+
"title": "Пирамида возраста по статусу",
|
|
162
162
|
"status": {
|
|
163
163
|
"passed": "$t(statuses:passed, capitalize)",
|
|
164
164
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/sv.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Ålderspyramid per status",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/tr.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "Durum yaş piramidi",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
|
@@ -157,8 +157,8 @@
|
|
|
157
157
|
"history": "{{timestamp, timestamp_date}}"
|
|
158
158
|
}
|
|
159
159
|
},
|
|
160
|
-
"
|
|
161
|
-
"title": "
|
|
160
|
+
"statusAgePyramid": {
|
|
161
|
+
"title": "Вікова піраміда за статусом",
|
|
162
162
|
"status": {
|
|
163
163
|
"passed": "$t(statuses:passed, capitalize)",
|
|
164
164
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/locales/zh.json
CHANGED
|
@@ -151,8 +151,8 @@
|
|
|
151
151
|
"history": "{{timestamp, timestamp_date}}"
|
|
152
152
|
}
|
|
153
153
|
},
|
|
154
|
-
"
|
|
155
|
-
"title": "
|
|
154
|
+
"statusAgePyramid": {
|
|
155
|
+
"title": "状态年龄金字塔",
|
|
156
156
|
"status": {
|
|
157
157
|
"passed": "$t(statuses:passed, capitalize)",
|
|
158
158
|
"failed": "$t(statuses:failed, capitalize)",
|
package/src/stores/locale.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { formatDuration } from "@allurereport/core-api";
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
DEFAULT_LOCALE,
|
|
4
|
+
LANG_LOCALE,
|
|
5
|
+
type LangLocale,
|
|
6
|
+
getLocaleDateTimeOverride,
|
|
7
|
+
getReportOptions,
|
|
8
|
+
} from "@allurereport/web-commons";
|
|
3
9
|
import { computed, signal } from "@preact/signals";
|
|
4
10
|
import i18next, { type TOptions } from "i18next";
|
|
5
11
|
import type { DashboardReportOptions } from "types";
|
|
@@ -45,7 +51,8 @@ export const waitForI18next = i18next
|
|
|
45
51
|
namespace: string,
|
|
46
52
|
callback: (errorValue: unknown, translations: null) => void,
|
|
47
53
|
) => {
|
|
48
|
-
|
|
54
|
+
const loadLocale = language === "en-iso" ? "en" : language;
|
|
55
|
+
await import(`@/locales/${loadLocale}.json`)
|
|
49
56
|
.then((resources: Record<string, null>) => {
|
|
50
57
|
callback(null, resources[namespace]);
|
|
51
58
|
})
|
|
@@ -61,43 +68,67 @@ export const waitForI18next = i18next
|
|
|
61
68
|
interpolation: { escapeValue: false },
|
|
62
69
|
})
|
|
63
70
|
.then(() => {
|
|
64
|
-
i18next.services.formatter.add("capitalize", (value) => {
|
|
71
|
+
i18next.services.formatter.add("capitalize", (value: string) => {
|
|
65
72
|
return value.charAt(0).toLocaleUpperCase() + value.slice(1);
|
|
66
73
|
});
|
|
67
|
-
i18next.services.formatter.add(
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
74
|
+
i18next.services.formatter.add(
|
|
75
|
+
"timestamp_date",
|
|
76
|
+
(value: number, lng: string, options?: Intl.DateTimeFormatOptions) => {
|
|
77
|
+
const override = getLocaleDateTimeOverride(lng, "date");
|
|
78
|
+
const formatter = new Intl.DateTimeFormat(override?.locale ?? lng, {
|
|
79
|
+
...options,
|
|
80
|
+
month: "numeric",
|
|
81
|
+
day: "numeric",
|
|
82
|
+
year: "numeric",
|
|
83
|
+
...(override?.options ?? {}),
|
|
84
|
+
});
|
|
85
|
+
const formatted = formatter.format(value);
|
|
86
|
+
return override?.stripComma ? formatted.replace(",", "") : formatted;
|
|
87
|
+
},
|
|
88
|
+
);
|
|
89
|
+
i18next.services.formatter.add(
|
|
90
|
+
"timestamp_long",
|
|
91
|
+
(value: number, lng: string, options?: Intl.DateTimeFormatOptions) => {
|
|
92
|
+
const override = getLocaleDateTimeOverride(lng, "dateTime");
|
|
93
|
+
const formatter = new Intl.DateTimeFormat(override?.locale ?? lng, {
|
|
94
|
+
...options,
|
|
95
|
+
month: "numeric",
|
|
96
|
+
day: "numeric",
|
|
97
|
+
year: "numeric",
|
|
98
|
+
hour: "numeric",
|
|
99
|
+
minute: "numeric",
|
|
100
|
+
second: "numeric",
|
|
101
|
+
hour12: false,
|
|
102
|
+
...(override?.options ?? {}),
|
|
103
|
+
});
|
|
104
|
+
const formatted = formatter.format(value);
|
|
105
|
+
if (override?.includeAtSeparator === false || override?.stripComma) {
|
|
106
|
+
return formatted.replace(",", "");
|
|
107
|
+
}
|
|
108
|
+
return formatted.replace(",", ` ${i18next.t("ui:at")}`);
|
|
109
|
+
},
|
|
110
|
+
);
|
|
111
|
+
i18next.services.formatter.add(
|
|
112
|
+
"timestamp_long_no_seconds",
|
|
113
|
+
(value: number, lng: string, options?: Intl.DateTimeFormatOptions) => {
|
|
114
|
+
const override = getLocaleDateTimeOverride(lng, "dateTimeNoSeconds");
|
|
115
|
+
const formatter = new Intl.DateTimeFormat(override?.locale ?? lng, {
|
|
116
|
+
...options,
|
|
117
|
+
month: "numeric",
|
|
118
|
+
day: "numeric",
|
|
119
|
+
year: "numeric",
|
|
120
|
+
hour: "numeric",
|
|
121
|
+
minute: "numeric",
|
|
122
|
+
hour12: false,
|
|
123
|
+
...(override?.options ?? {}),
|
|
124
|
+
});
|
|
125
|
+
const formatted = formatter.format(value);
|
|
126
|
+
if (override?.includeAtSeparator === false || override?.stripComma) {
|
|
127
|
+
return formatted.replace(",", "");
|
|
128
|
+
}
|
|
129
|
+
return formatted.replace(",", ` ${i18next.t("ui:at")}`);
|
|
130
|
+
},
|
|
131
|
+
);
|
|
101
132
|
i18next.services.formatter.add("format_duration", (value: number) => {
|
|
102
133
|
return formatDuration(value);
|
|
103
134
|
});
|
package/types.d.ts
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_allurereport_web_dashboard=self.webpackChunk_allurereport_web_dashboard||[]).push([[91],{4091:function(t){t.exports=JSON.parse('{"statuses":{"passed":"Успішний","failed":"Неуспішний","broken":"Зламаний","skipped":"Пропущений","unknown":"Невідомий","total":"Всі"},"empty":{"no-results":"Немає результатів","no-history-results":"Інформація про історію відсутня"},"severity":{"blocker":"Блокер","critical":"Критична","normal":"Звичайна","minor":"Невисока","trivial":"Мінімальна"},"environments":{"environment_one":"Оточення","environment_other":"Оточення","all":"Всі"},"charts":{"trend":{"title":"Графік тренду: {{type}}","type":{"status":"Статус","severity":"Важливість"}},"currentStatus":{"title":"Поточний статус","status":{"passed":"$t(statuses:passed, capitalize)","failed":"$t(statuses:failed, capitalize)","broken":"$t(statuses:broken, capitalize)","skipped":"$t(statuses:skipped, capitalize)","unknown":"$t(statuses:unknown, capitalize)"},"percentage":"{{percentage}}%","of":"з {{total}}","total":"{{total}}","tests":{"new_zero":"Немає нових тестів","new_one":"{{count}} новий тест","new_few":"{{count}} нових тести","new_many":"{{count}} нових тестів","new_other":"{{count}} нових тестів","flaky_zero":"Немає нестабільних тестів","flaky_one":"{{count}} нестабільний тест","flaky_few":"{{count}} нестабільних тести","flaky_many":"{{count}} нестабільних тестів","flaky_other":"{{count}} нестабільних тестів","retries_zero":"Немає повторних тестів","retries_one":"{{count}} повторний тест","retries_few":"{{count}} повторних тести","retries_many":"{{count}} повторних тестів","retries_other":"{{count}} повторних тестів"}},"statusDynamics":{"title":"Динаміка статусів","status":{"passed":"$t(statuses:passed, capitalize)","failed":"$t(statuses:failed, capitalize)","broken":"$t(statuses:broken, capitalize)","skipped":"$t(statuses:skipped, capitalize)","unknown":"$t(statuses:unknown, capitalize)"},"no-history":"$t(empty:no-history-results)","no-results":"$t(empty:no-results)","tooltips":{"current":"Останній звіт ({{timestamp, timestamp_long_no_seconds}})","history":"Звіт від {{timestamp, timestamp_long_no_seconds}}"},"ticks":{"current":"Останній","history":"{{timestamp, timestamp_date}}"}},"statusTransitions":{"title":"Переходи статусів","legend":{"trend":"Коефіцієнт виправлень"},"transitions":{"new":"$t(transitions:new, capitalize)","fixed":"$t(transitions:fixed, capitalize)","regressed":"$t(transitions:regressed, capitalize)","malfunctioned":"$t(transitions:malfunctioned, capitalize)"},"no-history":"$t(empty:no-history-results)","no-results":"$t(empty:no-results)","tooltips":{"current":"Останній звіт ({{timestamp, timestamp_long_no_seconds}})","history":"Звіт від {{timestamp, timestamp_long_no_seconds}}"},"ticks":{"current":"Останній","history":"{{timestamp, timestamp_date}}"}},"durations":{"title":"Гістограма тривалостей за {{groupBy}}","title_none":"Гістограма тривалостей","no-results":"$t(empty:no-results)","groupBy":{"none":"Немає","layer":"Шар"},"ticks":{"durationRange":"{{from, format_duration}} - {{to, format_duration}}"},"tooltips":{"durationRange":"{{from, format_duration}} - {{to, format_duration}}"},"legend":{"value":"{{value}}","total":"Кількість тестів"}},"stabilityDistribution":{"title":"Розподіл стабільності","no-results":"$t(empty:no-results)","legend":{"stabilityRate":"Коефіцієнт стабільності"}},"testBaseGrowthDynamics":{"title":"Динаміка росту бази тестів","status":{"newpassed":"Новий $t(statuses:passed)","newfailed":"Новий $t(statuses:failed)","newbroken":"Новий $t(statuses:broken)","newskipped":"Новий $t(statuses:skipped)","newunknown":"Новий $t(statuses:unknown)","removedpassed":"Видалений $t(statuses:passed)","removedfailed":"Видалений $t(statuses:failed)","removedbroken":"Видалений $t(statuses:broken)","removedskipped":"Видалений $t(statuses:skipped)","removedunknown":"Видалений $t(statuses:unknown)"},"legend":{"trend":"Тренд зростання"},"no-history":"$t(empty:no-history-results)","no-results":"$t(empty:no-results)","tooltips":{"current":"Останній звіт ({{timestamp, timestamp_long_no_seconds}})","history":"Звіт від {{timestamp, timestamp_long_no_seconds}}"},"ticks":{"current":"Останній","history":"{{timestamp, timestamp_date}}"}},"fbsuAgePyramid":{"title":"FBSU вікова піраміда","status":{"passed":"$t(statuses:passed, capitalize)","failed":"$t(statuses:failed, capitalize)","broken":"$t(statuses:broken, capitalize)","skipped":"$t(statuses:skipped, capitalize)","unknown":"$t(statuses:unknown, capitalize)"},"no-history":"$t(empty:no-history-results)","no-results":"$t(empty:no-results)","tooltips":{"current":"Останній звіт ({{timestamp, timestamp_long_no_seconds}})","history":"Звіт від {{timestamp, timestamp_long_no_seconds}}"},"ticks":{"current":"Останній","history":"{{timestamp, timestamp_date}}"}},"trSeverities":{"title":"Результати тестів за важливістю","no-results":"$t(empty:no-results)","status":{"passed":"$t(statuses:passed, capitalize)","failed":"$t(statuses:failed, capitalize)","broken":"$t(statuses:broken, capitalize)","skipped":"$t(statuses:skipped, capitalize)","unknown":"$t(statuses:unknown, capitalize)"},"severity":{"blocker":"$t(severity:blocker, capitalize)","critical":"$t(severity:critical, capitalize)","normal":"$t(severity:normal, capitalize)","minor":"$t(severity:minor, capitalize)","trivial":"$t(severity:trivial, capitalize)","unset":"Немає важливості"}},"durationDynamics":{"title":"Динаміка тривалості","durations":{"sequential":"Послідовна тривалість","duration":"Тривалість тестів","speedup":"Прискорення"},"no-results":"$t(empty:no-results)","tooltips":{"current":"Останній звіт ({{timestamp, timestamp_long_no_seconds}})","history":"Звіт від {{timestamp, timestamp_long_no_seconds}}"},"ticks":{"current":"Останній","history":"{{timestamp, timestamp_date}}"},"legend":{"duration":"{{duration, format_duration}}","speedup":"{{speedup}}x"}}},"transitions":{"description":{"new":"Перша поява цього результату тесту в звіті","fixed":"Раніше \\"неуспішний\\" або \\"зламаний\\" тест, який тепер \\"успішний\\"","regressed":"Раніше \\"успішний\\" або \\"зламаний\\" тест, який тепер \\"неуспішний\\"","malfunctioned":"Раніше \\"успішний\\" або \\"неуспішний\\" тест, який тепер \\"зламаний\\""},"new":"Нові","fixed":"Виправлені","regressed":"Регресовані","malfunctioned":"Зламані"}}')}}]);
|