@allurereport/web-awesome 3.0.0-beta.17 → 3.0.0-beta.19
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-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/174.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/252.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/282.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/29.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/416.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/527.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/600.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/605.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/638.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/672.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/686.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/725.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/741.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/755.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/894.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/943.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/980.app-87488b008bf93bf0b234.js +1 -0
- package/dist/multi/app-87488b008bf93bf0b234.js +2 -0
- package/dist/multi/{app-3f57abaa5734556b2988.js.LICENSE.txt → app-87488b008bf93bf0b234.js.LICENSE.txt} +2 -8
- package/dist/multi/manifest.json +20 -20
- package/dist/multi/{styles-9475296a2cbcd0e5d2d0.css → styles-88a1cf6726b2a478108e.css} +13 -11
- package/dist/single/app-af34e3cec116175b6d9a.js +2 -0
- package/dist/single/{app-800f7e75bb52ecb2ae21.js.LICENSE.txt → app-af34e3cec116175b6d9a.js.LICENSE.txt} +2 -8
- package/dist/single/manifest.json +1 -1
- package/package.json +5 -5
- package/src/components/Charts/index.tsx +53 -5
- package/src/components/Charts/styles.scss +2 -2
- package/src/components/Header/CiInfo/index.tsx +45 -29
- package/src/components/Header/index.tsx +1 -4
- package/src/components/MainReport/index.tsx +65 -2
- package/src/components/MainReport/styles.scss +8 -0
- package/src/components/NavTabs/index.tsx +70 -0
- package/src/components/ReportBody/index.tsx +1 -2
- package/src/components/ReportBody/styles.scss +2 -2
- package/src/components/ReportGlobalAttachments/index.tsx +34 -0
- package/src/components/ReportGlobalAttachments/styles.scss +11 -0
- package/src/components/ReportGlobalErrors/index.tsx +30 -0
- package/src/components/ReportGlobalErrors/styles.scss +12 -0
- package/src/components/ReportHeader/index.tsx +28 -10
- package/src/components/ReportHeader/styles.scss +7 -1
- package/src/components/ReportMetadata/MetadataSummary.tsx +1 -2
- package/src/components/ReportMetadata/styles.scss +0 -2
- package/src/components/SplitLayout/index.tsx +0 -2
- package/src/components/TestResult/TrAttachmentsView/index.tsx +5 -3
- package/src/components/TestResult/TrError/index.tsx +6 -5
- package/src/components/TestResult/TrInfo/TrInfoStatuses.tsx +1 -1
- package/src/components/TestResult/TrInfo/index.tsx +1 -1
- package/src/components/TestResult/TrPrevStatuses/index.tsx +1 -2
- package/src/components/TestResult/TrSeverity/index.tsx +1 -1
- package/src/components/TestResult/TrStatus/index.tsx +1 -1
- package/src/components/TestResult/TrSteps/TrStepInfo.tsx +4 -4
- package/src/components/TestResult/TrSteps/styles.scss +10 -1
- package/src/components/TestResult/TrTabs/index.tsx +19 -57
- package/src/components/TestResult/index.tsx +0 -1
- package/src/index.tsx +9 -1
- package/src/locales/az.json +8 -2
- package/src/locales/de.json +8 -2
- package/src/locales/en.json +8 -2
- package/src/locales/es.json +8 -2
- package/src/locales/fr.json +8 -2
- package/src/locales/he.json +8 -2
- package/src/locales/hy.json +8 -2
- package/src/locales/it.json +8 -2
- package/src/locales/ja.json +8 -2
- package/src/locales/ka.json +8 -2
- package/src/locales/kr.json +8 -2
- package/src/locales/nl.json +8 -2
- package/src/locales/pl.json +8 -2
- package/src/locales/pt.json +8 -2
- package/src/locales/ru.json +8 -2
- package/src/locales/sv.json +8 -2
- package/src/locales/tr.json +8 -2
- package/src/locales/zh.json +8 -2
- package/src/stores/chart.ts +7 -7
- package/src/stores/globals.ts +28 -0
- package/test/components/Header/CiInfo.test.tsx +79 -53
- package/test/components/Header.test.tsx +1 -6
- package/vitest.config.ts +1 -1
- package/dist/multi/173.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/174.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/252.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/282.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/29.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/416.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/527.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/600.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/605.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/638.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/672.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/686.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/725.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/741.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/755.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/894.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/943.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/980.app-3f57abaa5734556b2988.js +0 -1
- package/dist/multi/app-3f57abaa5734556b2988.js +0 -2
- package/dist/single/app-800f7e75bb52ecb2ae21.js +0 -2
- package/src/utils/capitalize.ts +0 -6
- package/src/utils/charts.ts +0 -167
- /package/src/components/{TestResult/TrTabs → NavTabs}/styles.scss +0 -0
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
.report-metadata-wrapper {
|
|
9
|
-
padding: 0 24px;
|
|
10
9
|
align-items: center;
|
|
11
10
|
}
|
|
12
11
|
|
|
@@ -27,7 +26,6 @@
|
|
|
27
26
|
justify-content: space-between;
|
|
28
27
|
align-items: baseline;
|
|
29
28
|
padding: 16px 0;
|
|
30
|
-
border-top: 1px solid var(--on-border-primary);
|
|
31
29
|
border-bottom: 1px solid var(--on-border-primary);
|
|
32
30
|
width: 100%;
|
|
33
31
|
}
|
|
@@ -33,9 +33,7 @@ const Loader = () => {
|
|
|
33
33
|
export const SplitLayout = () => {
|
|
34
34
|
const testResultId = route.value.params?.testResultId ?? null;
|
|
35
35
|
const [cachedMain, setCachedMain] = useState<JSX.Element | null>(null);
|
|
36
|
-
|
|
37
36
|
const { t } = useI18n("controls");
|
|
38
|
-
|
|
39
37
|
const leftSide = (
|
|
40
38
|
<Loadable source={treeStore} renderLoader={() => <PageLoader />} renderData={() => <MainReportWrapper />} />
|
|
41
39
|
);
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AttachmentTestStepResult } from "@allurereport/core-api";
|
|
2
|
+
import cx from "clsx";
|
|
2
3
|
import type { FunctionalComponent } from "preact";
|
|
3
4
|
import type { AwesomeTestResult } from "types";
|
|
4
5
|
import { TrAttachment } from "@/components/TestResult/TrSteps/TrAttachment";
|
|
@@ -6,15 +7,16 @@ import { useI18n } from "@/stores";
|
|
|
6
7
|
import * as styles from "./styles.scss";
|
|
7
8
|
|
|
8
9
|
export type TrAttachmentViewProps = {
|
|
10
|
+
className?: string;
|
|
9
11
|
testResult?: AwesomeTestResult;
|
|
10
12
|
};
|
|
11
13
|
|
|
12
|
-
export const TrAttachmentView: FunctionalComponent<TrAttachmentViewProps> = ({ testResult }) => {
|
|
14
|
+
export const TrAttachmentView: FunctionalComponent<TrAttachmentViewProps> = ({ testResult, className }) => {
|
|
13
15
|
const { attachments } = testResult ?? {};
|
|
14
|
-
const { t } = useI18n("
|
|
16
|
+
const { t } = useI18n("ui");
|
|
15
17
|
|
|
16
18
|
return (
|
|
17
|
-
<div className={styles["test-result-attachments-view"]}>
|
|
19
|
+
<div className={cx(styles["test-result-attachments-view"], className)}>
|
|
18
20
|
{attachments.length ? (
|
|
19
21
|
attachments?.map((attach, key) => (
|
|
20
22
|
<TrAttachment item={attach as AttachmentTestStepResult} key={key} stepIndex={key + 1} />
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { TestError,
|
|
1
|
+
import type { TestError, TestStatus } from "@allurereport/core-api";
|
|
2
|
+
import { ansiToHTML } from "@allurereport/web-commons";
|
|
2
3
|
import { Button, Code, IconButton, Text, TooltipWrapper, allureIcons } from "@allurereport/web-components";
|
|
3
|
-
import AnsiToHtml from "ansi-to-html";
|
|
4
4
|
import clsx from "clsx";
|
|
5
5
|
import { type FunctionalComponent } from "preact";
|
|
6
6
|
import { useState } from "preact/hooks";
|
|
@@ -11,15 +11,16 @@ import { copyToClipboard } from "@/utils/copyToClipboard";
|
|
|
11
11
|
import * as styles from "./styles.scss";
|
|
12
12
|
|
|
13
13
|
const TrErrorTrace = ({ trace }: { trace: string }) => {
|
|
14
|
-
const
|
|
14
|
+
const sanitizedTrace = ansiToHTML(trace, {
|
|
15
15
|
fg: "var(--on-text-primary)",
|
|
16
16
|
colors: {},
|
|
17
|
-
})
|
|
17
|
+
});
|
|
18
|
+
|
|
18
19
|
return (
|
|
19
20
|
<div data-testid="test-result-error-trace" className={styles["test-result-error-trace"]}>
|
|
20
21
|
<Code size={"s"} type={"ui"}>
|
|
21
22
|
{/* eslint-disable-next-line react/no-danger */}
|
|
22
|
-
<pre dangerouslySetInnerHTML={{ __html:
|
|
23
|
+
<pre dangerouslySetInnerHTML={{ __html: sanitizedTrace }} />
|
|
23
24
|
</Code>
|
|
24
25
|
</div>
|
|
25
26
|
);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { capitalize } from "@allurereport/core-api";
|
|
1
2
|
import { SvgIcon, Text, allureIcons } from "@allurereport/web-components";
|
|
2
3
|
import { type FunctionalComponent } from "preact";
|
|
3
4
|
import { useI18n } from "@/stores";
|
|
4
|
-
import { capitalize } from "@/utils/capitalize";
|
|
5
5
|
import * as styles from "./styles.scss";
|
|
6
6
|
|
|
7
7
|
const icons: Record<string, string> = {
|
|
@@ -70,7 +70,7 @@ export const TrInfo: FunctionalComponent<TrInfoProps> = ({ testResult }) => {
|
|
|
70
70
|
</TrTab>
|
|
71
71
|
<Loadable<Record<string, TestEnvGroup>, TestEnvGroup | undefined>
|
|
72
72
|
source={testEnvGroupsStore}
|
|
73
|
-
transformData={(groups) => groups[testResult
|
|
73
|
+
transformData={(groups) => groups?.[testResult?.testCase?.id]}
|
|
74
74
|
renderData={(group) => {
|
|
75
75
|
const envsCount = getRealEnvsCount(group);
|
|
76
76
|
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { type HistoryTestResult } from "@allurereport/core-api";
|
|
1
|
+
import { type HistoryTestResult, capitalize } from "@allurereport/core-api";
|
|
2
2
|
import { getReportOptions } from "@allurereport/web-commons";
|
|
3
3
|
import { SvgIcon, Text, TooltipWrapper, allureIcons } from "@allurereport/web-components";
|
|
4
4
|
import type { FunctionalComponent } from "preact";
|
|
5
5
|
import type { AwesomeReportOptions, AwesomeTestResult } from "types";
|
|
6
6
|
import { useI18n } from "@/stores";
|
|
7
|
-
import { capitalize } from "@/utils/capitalize";
|
|
8
7
|
import { timestampToDate } from "@/utils/time";
|
|
9
8
|
import * as styles from "./styles.scss";
|
|
10
9
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { capitalize } from "@allurereport/core-api";
|
|
1
2
|
import { SvgIcon, Text, allureIcons } from "@allurereport/web-components";
|
|
2
3
|
import clsx from "clsx";
|
|
3
4
|
import { useI18n } from "@/stores/locale";
|
|
4
|
-
import { capitalize } from "@/utils/capitalize";
|
|
5
5
|
import * as styles from "./styles.scss";
|
|
6
6
|
|
|
7
7
|
const icons: Record<string, string> = {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { TestStatus } from "@allurereport/core-api";
|
|
2
|
+
import { capitalize } from "@allurereport/core-api";
|
|
2
3
|
import { Text, TreeItemIcon } from "@allurereport/web-components";
|
|
3
4
|
import clsx from "clsx";
|
|
4
5
|
import { useI18n } from "@/stores";
|
|
5
|
-
import { capitalize } from "@/utils/capitalize";
|
|
6
6
|
import * as styles from "./styles.scss";
|
|
7
7
|
|
|
8
8
|
export const TrStatus = ({ status }: { status: TestStatus }) => {
|
|
@@ -50,18 +50,18 @@ export const TrStepInfo = (props: { item: DefaultTestStepResult }) => {
|
|
|
50
50
|
const stepLength = item.steps?.length;
|
|
51
51
|
const attachmentLength = item.steps?.filter((step) => step.type === "attachment")?.length;
|
|
52
52
|
|
|
53
|
-
const failedStepsInTree = countErrorStatuses(item);
|
|
53
|
+
const failedStepsInTree = countErrorStatuses(item) || {};
|
|
54
54
|
|
|
55
55
|
const FailedSteps = () => (
|
|
56
|
-
<div>
|
|
56
|
+
<div className={styles["failed-steps"]}>
|
|
57
57
|
{Object.entries(failedStepsInTree).map(([status, count], index) => (
|
|
58
58
|
<div className={styles["item-status"]} key={index}>
|
|
59
59
|
<SvgIcon
|
|
60
|
-
size="
|
|
60
|
+
size="s"
|
|
61
61
|
id={icons[status as TestStatus]}
|
|
62
62
|
className={clsx(styles["item-status-icon"], styles[`status-${status}`])}
|
|
63
63
|
/>
|
|
64
|
-
{count && <
|
|
64
|
+
{count && <Text size={"s"}>{count}</Text>}
|
|
65
65
|
</div>
|
|
66
66
|
))}
|
|
67
67
|
</div>
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
align-items: center;
|
|
93
93
|
gap: 4px;
|
|
94
94
|
color: var(--on-icon-secondary);
|
|
95
|
-
min-width:
|
|
95
|
+
min-width: 56px;
|
|
96
96
|
justify-content: flex-end;
|
|
97
97
|
}
|
|
98
98
|
|
|
@@ -253,3 +253,12 @@
|
|
|
253
253
|
color: var(--bg-support-skat);
|
|
254
254
|
}
|
|
255
255
|
}
|
|
256
|
+
|
|
257
|
+
.failed-steps {
|
|
258
|
+
display: flex;
|
|
259
|
+
gap: 8px;
|
|
260
|
+
}
|
|
261
|
+
|
|
262
|
+
:global(.code-toolbar .toolbar) {
|
|
263
|
+
display: none;
|
|
264
|
+
}
|
|
@@ -1,57 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { activeSubTab,
|
|
5
|
-
import * as styles from "./styles.scss";
|
|
1
|
+
import { type ComponentChildren } from "preact";
|
|
2
|
+
import { useEffect } from "preact/hooks";
|
|
3
|
+
import { NavTab, NavTabs, NavTabsList, useNavTabsContext } from "@/components/NavTabs";
|
|
4
|
+
import { activeSubTab, navigateTo, route } from "@/stores/router";
|
|
6
5
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
const TestResultTabsContext = createContext<TrTabsContextT | null>(null);
|
|
13
|
-
|
|
14
|
-
export const useTestResultTabsContext = () => {
|
|
15
|
-
const context = useContext(TestResultTabsContext);
|
|
16
|
-
|
|
17
|
-
if (!context) {
|
|
18
|
-
throw new Error("TestResultTabs components must be used within a TrTabs component");
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
return context;
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export const TestResultTabsProvider = (props: { initialTab?: string; children: ComponentChildren }) => {
|
|
25
|
-
const { children, initialTab } = props;
|
|
26
|
-
const [currentTab, setCurrentTab] = useState<string | undefined>(initialTab);
|
|
27
|
-
|
|
28
|
-
return (
|
|
29
|
-
<TestResultTabsContext.Provider value={{ currentTab, setCurrentTab }}>{children}</TestResultTabsContext.Provider>
|
|
30
|
-
);
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
export const TrTabs = (props: { children: ComponentChildren; initialTab?: string }) => {
|
|
34
|
-
return <TestResultTabsProvider {...props} />;
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
export const TrTabsList = (props: { children: ComponentChildren }) => {
|
|
38
|
-
return <div className={styles.tabsList}>{props.children}</div>;
|
|
39
|
-
};
|
|
6
|
+
export const TrTabs = NavTabs;
|
|
7
|
+
export const TrTabsList = NavTabsList;
|
|
8
|
+
export const useTestResultTabsContext = useNavTabsContext;
|
|
40
9
|
|
|
41
10
|
export const TrTab = (props: { id: string; children: ComponentChildren }) => {
|
|
42
11
|
const { testResultId } = route.value.params;
|
|
43
|
-
const { currentTab, setCurrentTab } =
|
|
12
|
+
const { currentTab, setCurrentTab } = useNavTabsContext();
|
|
44
13
|
const { id, children } = props;
|
|
45
14
|
const isActiveFromUrl = activeSubTab.value === id;
|
|
46
|
-
const isCurrentTab = isActiveFromUrl ? isActiveFromUrl : currentTab === id;
|
|
47
|
-
|
|
48
|
-
useEffect(() => {
|
|
49
|
-
if (isActiveFromUrl) {
|
|
50
|
-
setCurrentTab(id);
|
|
51
|
-
}
|
|
52
|
-
}, [activeSubTab.value]);
|
|
53
|
-
|
|
54
15
|
const handleTabClick = () => {
|
|
16
|
+
const isCurrentTab = isActiveFromUrl ? isActiveFromUrl : currentTab === id;
|
|
55
17
|
if (isCurrentTab) {
|
|
56
18
|
return;
|
|
57
19
|
}
|
|
@@ -64,17 +26,17 @@ export const TrTab = (props: { id: string; children: ComponentChildren }) => {
|
|
|
64
26
|
},
|
|
65
27
|
});
|
|
66
28
|
};
|
|
29
|
+
const isCurrentTab = isActiveFromUrl ? isActiveFromUrl : currentTab === id;
|
|
30
|
+
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
if (isActiveFromUrl) {
|
|
33
|
+
setCurrentTab(id);
|
|
34
|
+
}
|
|
35
|
+
}, [activeSubTab.value, id, setCurrentTab]);
|
|
67
36
|
|
|
68
37
|
return (
|
|
69
|
-
<
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
data-testid={`test-result-tab-${id}`}
|
|
73
|
-
aria-current={isCurrentTab ? true : undefined}
|
|
74
|
-
>
|
|
75
|
-
<Text type="paragraph" size="m">
|
|
76
|
-
{children}
|
|
77
|
-
</Text>
|
|
78
|
-
</button>
|
|
38
|
+
<NavTab id={id} onClick={handleTabClick} data-testid={`test-result-tab-${id}`} isCurrentTab={isCurrentTab}>
|
|
39
|
+
{children}
|
|
40
|
+
</NavTab>
|
|
79
41
|
);
|
|
80
42
|
};
|
|
@@ -5,7 +5,6 @@ import type { AwesomeTestResult } from "types";
|
|
|
5
5
|
import { TrAttachmentView } from "@/components/TestResult/TrAttachmentsView";
|
|
6
6
|
import TrEmpty from "@/components/TestResult/TrEmpty";
|
|
7
7
|
import { TrEnvironmentsView } from "@/components/TestResult/TrEnvironmentsView";
|
|
8
|
-
import { TrHeader } from "@/components/TestResult/TrHeader";
|
|
9
8
|
import TrHistoryView from "@/components/TestResult/TrHistory";
|
|
10
9
|
import { TrInfo } from "@/components/TestResult/TrInfo";
|
|
11
10
|
import { TrOverview } from "@/components/TestResult/TrOverview";
|
package/src/index.tsx
CHANGED
|
@@ -14,6 +14,7 @@ import { fetchEnvStats, fetchReportStats, getLocale, getTheme, waitForI18next }
|
|
|
14
14
|
import { fetchPieChartData } from "@/stores/chart";
|
|
15
15
|
import { currentEnvironment, environmentsStore, fetchEnvironments } from "@/stores/env";
|
|
16
16
|
import { fetchEnvInfo } from "@/stores/envInfo";
|
|
17
|
+
import { fetchGlobals } from "@/stores/globals";
|
|
17
18
|
import { getLayout, isLayoutLoading, layoutStore } from "@/stores/layout";
|
|
18
19
|
import { handleHashChange, route } from "@/stores/router";
|
|
19
20
|
import { currentSection, getSection } from "@/stores/sections";
|
|
@@ -36,7 +37,14 @@ const App = () => {
|
|
|
36
37
|
const [prefetched, setPrefetched] = useState(false);
|
|
37
38
|
const testResultId = route.value.params?.testResultId ?? null;
|
|
38
39
|
const prefetchData = async () => {
|
|
39
|
-
const fns = [
|
|
40
|
+
const fns = [
|
|
41
|
+
ensureReportDataReady,
|
|
42
|
+
fetchReportStats,
|
|
43
|
+
fetchPieChartData,
|
|
44
|
+
fetchEnvironments,
|
|
45
|
+
fetchEnvInfo,
|
|
46
|
+
fetchGlobals,
|
|
47
|
+
];
|
|
40
48
|
|
|
41
49
|
if (globalThis) {
|
|
42
50
|
fns.unshift(
|
package/src/locales/az.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "Yeni testlər"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "Bütün"
|
|
20
|
+
"total": "Bütün",
|
|
21
|
+
"results": "Nəticələr",
|
|
22
|
+
"globalAttachments": "Qlobal Əlavələr",
|
|
23
|
+
"globalErrors": "Qlobal Səhvlər"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "Axtarış",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "Mesaj təqdim edilməyib",
|
|
77
80
|
"clear-filters": "Filtrləri təmizlə",
|
|
78
81
|
"no-attachments-results": "Əlavə məlumatı mövcud deyil",
|
|
82
|
+
"no-global-errors-results": "Qlobal səhvlər haqqında məlumat mövcud deyil",
|
|
79
83
|
"no-history-results": "Tarixçə məlumatı mövcud deyil",
|
|
80
84
|
"no-retries-results": "Təkrar məlumatı mövcud deyil",
|
|
81
85
|
"no-test-steps-results": "Test addımları haqqında məlumat mövcud deyil",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "Cəhd {{attempt}} / {{total}}",
|
|
120
124
|
"at": "üçün",
|
|
121
125
|
"variables": "Dəyişənlər",
|
|
122
|
-
"openPwTrace": "Playwright Trace aç"
|
|
126
|
+
"openPwTrace": "Playwright Trace aç",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, çıxış kodu {{original}} ilə",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, çıxış kodu {{actual}} ilə (əsas {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "Yeni sekmede aç",
|
package/src/locales/de.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "Neue Tests"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "Alle"
|
|
20
|
+
"total": "Alle",
|
|
21
|
+
"results": "Ergebnisse",
|
|
22
|
+
"globalAttachments": "Globale Anhänge",
|
|
23
|
+
"globalErrors": "Globale Fehler"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "Suchen",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "Keine Nachricht vorhanden",
|
|
77
80
|
"clear-filters": "Filter zurücksetzen",
|
|
78
81
|
"no-attachments-results": "Keine Anhängeinformationen verfügbar",
|
|
82
|
+
"no-global-errors-results": "Keine globalen Fehlerinformationen verfügbar",
|
|
79
83
|
"no-history-results": "Keine Verlaufsinformationen verfügbar",
|
|
80
84
|
"no-retries-results": "Keine Wiederholungsinformationen verfügbar",
|
|
81
85
|
"no-test-steps-results": "Keine Informationen zu Testschritten verfügbar",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "Versuch {{attempt}} von {{total}}",
|
|
120
124
|
"at": "bei",
|
|
121
125
|
"variables": "Variablen",
|
|
122
|
-
"openPwTrace": "Playwright Trace öffnen"
|
|
126
|
+
"openPwTrace": "Playwright Trace öffnen",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, mit Exit-Code {{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, mit Exit-Code {{actual}} (ursprünglich {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "Anhang in neuem Tab öffnen",
|
package/src/locales/en.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "New tests"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "All"
|
|
20
|
+
"total": "All",
|
|
21
|
+
"results": "Results",
|
|
22
|
+
"globalAttachments": "Global Attachments",
|
|
23
|
+
"globalErrors": "Global Errors"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "Search",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "No message is provided",
|
|
77
80
|
"clear-filters": "Clear filters",
|
|
78
81
|
"no-attachments-results": "No attachments information available",
|
|
82
|
+
"no-global-errors-results": "No global errors information available",
|
|
79
83
|
"no-history-results": "No history information available",
|
|
80
84
|
"no-retries-results": "No retries information available",
|
|
81
85
|
"no-test-steps-results": "No test steps information available",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "Attempt {{attempt}} of {{total}}",
|
|
120
124
|
"at": "at",
|
|
121
125
|
"variables": "Variables",
|
|
122
|
-
"openPwTrace": "Open Playwright Trace"
|
|
126
|
+
"openPwTrace": "Open Playwright Trace",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, with exit code {{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, with exit code {{actual}} (original {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "Open attachment in new tab",
|
package/src/locales/es.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "Pruebas nuevas"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "Todo"
|
|
20
|
+
"total": "Todo",
|
|
21
|
+
"results": "Resultados",
|
|
22
|
+
"globalAttachments": "Adjuntos Globales",
|
|
23
|
+
"globalErrors": "Errores Globales"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "Buscar",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "No se proporcionó mensaje",
|
|
77
80
|
"clear-filters": "Limpiar filtros",
|
|
78
81
|
"no-attachments-results": "No hay información de adjuntos disponible",
|
|
82
|
+
"no-global-errors-results": "No hay información de errores globales disponible",
|
|
79
83
|
"no-history-results": "No hay información de historial disponible",
|
|
80
84
|
"no-retries-results": "No hay información de reintentos disponible",
|
|
81
85
|
"no-test-steps-results": "No hay información disponible sobre los pasos de prueba",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "Intento {{attempt}} de {{total}}",
|
|
120
124
|
"at": "a las",
|
|
121
125
|
"variables": "Variables",
|
|
122
|
-
"openPwTrace": "Abrir Playwright Trace"
|
|
126
|
+
"openPwTrace": "Abrir Playwright Trace",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, con código de salida {{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, con código de salida {{actual}} (original {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "Abrir adjunto en nueva pestaña",
|
package/src/locales/fr.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "Nouveaux tests"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "Tous"
|
|
20
|
+
"total": "Tous",
|
|
21
|
+
"results": "Résultats",
|
|
22
|
+
"globalAttachments": "Pièces jointes globales",
|
|
23
|
+
"globalErrors": "Erreurs globales"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "Recherche",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "Aucun message fourni",
|
|
77
80
|
"clear-filters": "Effacer les filtres",
|
|
78
81
|
"no-attachments-results": "Aucune information sur les pièces jointes disponible",
|
|
82
|
+
"no-global-errors-results": "Aucune information sur les erreurs globales disponible",
|
|
79
83
|
"no-history-results": "Aucune information sur l'historique disponible",
|
|
80
84
|
"no-retries-results": "Aucune information sur les réessais disponible",
|
|
81
85
|
"no-test-steps-results": "Aucune information sur les étapes de test disponible",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "Tentative {{attempt}} sur {{total}}",
|
|
120
124
|
"at": "à",
|
|
121
125
|
"variables": "Variables",
|
|
122
|
-
"openPwTrace": "Ouvrir Playwright Trace"
|
|
126
|
+
"openPwTrace": "Ouvrir Playwright Trace",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, avec le code de sortie {{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, avec le code de sortie {{actual}} (original {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "Ouvrir dans un nouvel onglet",
|
package/src/locales/he.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "בדיקות חדשות"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "הכל"
|
|
20
|
+
"total": "הכל",
|
|
21
|
+
"results": "תוצאות",
|
|
22
|
+
"globalAttachments": "קבצים מצורפים גלובליים",
|
|
23
|
+
"globalErrors": "שגיאות גלובליות"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "חפש",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "לא סופק הודעה",
|
|
77
80
|
"clear-filters": "נקה מסננים",
|
|
78
81
|
"no-attachments-results": "לא נמצאה מידע על קבצים מצורפים",
|
|
82
|
+
"no-global-errors-results": "לא נמצא מידע על שגיאות גלובליות",
|
|
79
83
|
"no-history-results": "לא נמצאה מידע על היסטוריה",
|
|
80
84
|
"no-retries-results": "לא נמצאה מידע על נסיונות חוזרים",
|
|
81
85
|
"no-test-steps-results": "אין מידע על שלבי הבדיקה",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "ניסיון {{attempt}} מתוך {{total}}",
|
|
120
124
|
"at": "ב-",
|
|
121
125
|
"variables": "משתנים",
|
|
122
|
-
"openPwTrace": "פתח Playwright Trace"
|
|
126
|
+
"openPwTrace": "פתח Playwright Trace",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, עם קוד יציאה {{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, עם קוד יציאה {{actual}} (מקורי {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "פתח קובץ מצורף בלשונית חדשה",
|
package/src/locales/hy.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "Նոր թեստեր"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "Բոլոր"
|
|
20
|
+
"total": "Բոլոր",
|
|
21
|
+
"results": "Արդյունքներ",
|
|
22
|
+
"globalAttachments": "Գլոբալ կցորդներ",
|
|
23
|
+
"globalErrors": "Գլոբալ սխալներ"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "Որոնում",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "Հաղորդագրություն չի տրամադրվել",
|
|
77
80
|
"clear-filters": "Մաքրել ֆիլտրները",
|
|
78
81
|
"no-attachments-results": "Կցորդների մասին տեղեկություններ չկան",
|
|
82
|
+
"no-global-errors-results": "Գլոբալ սխալների մասին տեղեկություններ չկան",
|
|
79
83
|
"no-history-results": "Պատմության մասին տեղեկություններ չկան",
|
|
80
84
|
"no-retries-results": "Կրկնությունների մասին տեղեկություններ չկան",
|
|
81
85
|
"no-test-steps-results": "Թեստի քայլերի մասին տեղեկատվությունը հասանելի չէ։",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "Փորձ {{attempt}}-ից {{total}}-ը",
|
|
120
124
|
"at": "է",
|
|
121
125
|
"variables": "Փոփոխականներ",
|
|
122
|
-
"openPwTrace": "Բացել Playwright Trace"
|
|
126
|
+
"openPwTrace": "Բացել Playwright Trace",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, ելքի կոդ {{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, ելքի կոդ {{actual}} (սկզբնական {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "Բացել նոր ներդիրում",
|
package/src/locales/it.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "Nuovi test"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "Tutti"
|
|
20
|
+
"total": "Tutti",
|
|
21
|
+
"results": "Risultati",
|
|
22
|
+
"globalAttachments": "Allegati Globali",
|
|
23
|
+
"globalErrors": "Errori Globali"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "Cerca",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "Nessun messaggio fornito",
|
|
77
80
|
"clear-filters": "Cancella filtri",
|
|
78
81
|
"no-attachments-results": "Nessuna informazione sugli allegati disponibile",
|
|
82
|
+
"no-global-errors-results": "Nessuna informazione sugli errori globali disponibile",
|
|
79
83
|
"no-history-results": "Nessuna informazione sulla cronologia disponibile",
|
|
80
84
|
"no-retries-results": "Nessuna informazione sui ritentativi disponibile",
|
|
81
85
|
"no-test-steps-results": "Nessuna informazione disponibile sui passaggi del test",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "Tentativo {{attempt}} di {{total}}",
|
|
120
124
|
"at": "a",
|
|
121
125
|
"variables": "Variabili",
|
|
122
|
-
"openPwTrace": "Apri Playwright Trace"
|
|
126
|
+
"openPwTrace": "Apri Playwright Trace",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, con codice di uscita {{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, con codice di uscita {{actual}} (originale {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "Apri in una nuova scheda",
|
package/src/locales/ja.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "新しいテスト"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "すべて"
|
|
20
|
+
"total": "すべて",
|
|
21
|
+
"results": "結果",
|
|
22
|
+
"globalAttachments": "グローバル添付ファイル",
|
|
23
|
+
"globalErrors": "グローバルエラー"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "検索",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "メッセージが提供されていません",
|
|
77
80
|
"clear-filters": "フィルターをクリア",
|
|
78
81
|
"no-attachments-results": "添付ファイル情報が利用できません",
|
|
82
|
+
"no-global-errors-results": "グローバルエラー情報が利用できません",
|
|
79
83
|
"no-history-results": "履歴情報が利用できません",
|
|
80
84
|
"no-retries-results": "再試行情報が利用できません",
|
|
81
85
|
"no-test-steps-results": "テスト手順の情報は利用できません",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "試行 {{attempt}} 回目(全 {{total}} 回)",
|
|
120
124
|
"at": "時",
|
|
121
125
|
"variables": "変数",
|
|
122
|
-
"openPwTrace": "Playwright Trace
|
|
126
|
+
"openPwTrace": "Playwright Traceを開く",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}、終了コード{{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}、終了コード{{actual}}(元{{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "新しいタブで開く",
|
package/src/locales/ka.json
CHANGED
|
@@ -17,7 +17,10 @@
|
|
|
17
17
|
"new": "ახალი ტესტები"
|
|
18
18
|
},
|
|
19
19
|
"tabs": {
|
|
20
|
-
"total": "ყველა"
|
|
20
|
+
"total": "ყველა",
|
|
21
|
+
"results": "შედეგები",
|
|
22
|
+
"globalAttachments": "გლობალური დანართები",
|
|
23
|
+
"globalErrors": "გლობალური შეცდომები"
|
|
21
24
|
},
|
|
22
25
|
"search": {
|
|
23
26
|
"search": "ძებნა",
|
|
@@ -76,6 +79,7 @@
|
|
|
76
79
|
"no-message-provided": "შეტყობინება არ არის მოწოდებული",
|
|
77
80
|
"clear-filters": "ფილტრების გასუფთავება",
|
|
78
81
|
"no-attachments-results": "დანართების ინფორმაცია არ არის ხელმისაწვდომი",
|
|
82
|
+
"no-global-errors-results": "გლობალური შეცდომების ინფორმაცია არ არის ხელმისაწვდომი",
|
|
79
83
|
"no-history-results": "ისტორიის ინფორმაცია არ არის ხელმისაწვდომი",
|
|
80
84
|
"no-retries-results": "ხელახალი ცდების ინფორმაცია არ არის ხელმისაწვდომი",
|
|
81
85
|
"no-test-steps-results": "ტესტის ნაბიჯების ინფორმაცია ხელმისაწვდომი არ არის",
|
|
@@ -119,7 +123,9 @@
|
|
|
119
123
|
"attempt": "მცდელობა {{attempt}} {{total}}-დან",
|
|
120
124
|
"at": "ზე",
|
|
121
125
|
"variables": "ცვლადები",
|
|
122
|
-
"openPwTrace": "გახსენი Playwright Trace"
|
|
126
|
+
"openPwTrace": "გახსენი Playwright Trace",
|
|
127
|
+
"finishedAtOriginal": "{{formattedCreatedAt}}, გამოსვლის კოდით {{original}}",
|
|
128
|
+
"finishedAtBoth": "{{formattedCreatedAt}}, გამოსვლის კოდით {{actual}} (თავდაპირველი {{original}})"
|
|
123
129
|
},
|
|
124
130
|
"controls": {
|
|
125
131
|
"newTabAttachment": "დანართის გახსნა ახალ ჩანართში",
|