@gooddata/sdk-ui-catalog 11.6.0-alpha.6 → 11.6.0-alpha.7
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/esm/catalogDetail/CatalogDetailContent.js +2 -2
- package/esm/filter/FilterQuality.d.ts +1 -1
- package/esm/filter/FilterQuality.d.ts.map +1 -1
- package/esm/filter/FilterQuality.js +13 -6
- package/esm/filter/FilterQuality.js.map +1 -1
- package/esm/localization/bundles/en-US.json +12 -0
- package/esm/localization/bundles/en-US.localization-bundle.d.ts +3 -0
- package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
- package/esm/localization/bundles/en-US.localization-bundle.js +4 -1
- package/esm/localization/bundles/en-US.localization-bundle.js.map +1 -1
- package/esm/quality/QualityContext.d.ts +4 -5
- package/esm/quality/QualityContext.d.ts.map +1 -1
- package/esm/quality/QualityContext.js +16 -14
- package/esm/quality/QualityContext.js.map +1 -1
- package/esm/quality/QualityScoreCard.d.ts.map +1 -1
- package/esm/quality/QualityScoreCard.js +18 -4
- package/esm/quality/QualityScoreCard.js.map +1 -1
- package/esm/quality/QualityScoreCardAction.d.ts +10 -0
- package/esm/quality/QualityScoreCardAction.d.ts.map +1 -0
- package/esm/quality/QualityScoreCardAction.js +15 -0
- package/esm/quality/QualityScoreCardAction.js.map +1 -0
- package/esm/quality/QualityScoreCardDate.d.ts +7 -0
- package/esm/quality/QualityScoreCardDate.d.ts.map +1 -0
- package/esm/quality/QualityScoreCardDate.js +7 -0
- package/esm/quality/QualityScoreCardDate.js.map +1 -0
- package/esm/quality/QualityScoreCardScore.js +1 -1
- package/esm/quality/QualityScoreCardScore.js.map +1 -1
- package/esm/quality/index.d.ts +1 -1
- package/esm/quality/index.js +1 -1
- package/esm/quality/query.d.ts +3 -3
- package/esm/quality/query.d.ts.map +1 -1
- package/esm/quality/query.js +2 -2
- package/package.json +11 -11
- package/styles/css/main.css +25 -0
- package/styles/css/main.css.map +1 -1
- package/styles/scss/main.scss +31 -0
|
@@ -11,7 +11,7 @@ import { CatalogDetailTabQuality } from "./CatalogDetailTabQuality.js";
|
|
|
11
11
|
import { useCatalogItemUpdate } from "./hooks/useCatalogItemUpdate.js";
|
|
12
12
|
import { canEditCatalogItem } from "../catalogItem/index.js";
|
|
13
13
|
import { usePermissionsState } from "../permission/index.js";
|
|
14
|
-
import { useQualityIssuesById,
|
|
14
|
+
import { useQualityIssuesById, useQualityReportState } from "../quality/index.js";
|
|
15
15
|
const Tabs = {
|
|
16
16
|
METADATA: "metadata",
|
|
17
17
|
QUALITY: "issues",
|
|
@@ -33,7 +33,7 @@ export function CatalogDetailContent({ objectId, objectType, objectDefinition, f
|
|
|
33
33
|
});
|
|
34
34
|
const canEdit = canEditCatalogItem(permissions, item);
|
|
35
35
|
// Quality
|
|
36
|
-
const { status: qualityStatus } =
|
|
36
|
+
const { status: qualityStatus } = useQualityReportState();
|
|
37
37
|
const isQualityEnabled = Boolean(settings?.["enableGenAICatalogQualityChecker"]);
|
|
38
38
|
const isQualityVisible = isQualityEnabled && qualityStatus !== "error";
|
|
39
39
|
const isQualityLoading = qualityStatus === "loading" || qualityStatus === "pending";
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare function FilterQuality(): import("react/jsx-runtime").JSX.Element;
|
|
1
|
+
export declare function FilterQuality(): import("react/jsx-runtime").JSX.Element | null;
|
|
2
2
|
export declare const FilterQualityMemo: import("react").MemoExoticComponent<typeof FilterQuality>;
|
|
3
3
|
//# sourceMappingURL=FilterQuality.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterQuality.d.ts","sourceRoot":"","sources":["../../src/filter/FilterQuality.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FilterQuality.d.ts","sourceRoot":"","sources":["../../src/filter/FilterQuality.tsx"],"names":[],"mappings":"AAmCA,wBAAgB,aAAa,mDA6C5B;AAED,eAAO,MAAM,iBAAiB,2DAAsB,CAAC"}
|
|
@@ -3,11 +3,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import { memo } from "react";
|
|
4
4
|
import { FormattedMessage, defineMessages, useIntl } from "react-intl";
|
|
5
5
|
import { SemanticQualityIssueCodeValues } from "@gooddata/sdk-model";
|
|
6
|
+
import { UiSkeleton } from "@gooddata/sdk-ui-kit";
|
|
6
7
|
import { useFilterActions } from "./FilterContext.js";
|
|
7
8
|
import { FilterGroupLayout } from "./FilterGroupLayout.js";
|
|
8
9
|
import { StaticFilter } from "./StaticFilter.js";
|
|
9
10
|
import { testIds } from "../automation/index.js";
|
|
10
|
-
import {
|
|
11
|
+
import { useQualityReportState } from "../quality/QualityContext.js";
|
|
11
12
|
const dataTestId = `${testIds.filter}/quality`;
|
|
12
13
|
const titleMessages = defineMessages({
|
|
13
14
|
[SemanticQualityIssueCodeValues.IDENTICAL_TITLE]: {
|
|
@@ -28,13 +29,13 @@ const titleMessages = defineMessages({
|
|
|
28
29
|
});
|
|
29
30
|
export function FilterQuality() {
|
|
30
31
|
const intl = useIntl();
|
|
31
|
-
const { issues } =
|
|
32
|
+
const { issues, status } = useQualityReportState();
|
|
32
33
|
const { setQualityIds } = useFilterActions();
|
|
33
|
-
const
|
|
34
|
-
const handleChange = (
|
|
34
|
+
const options = [...new Set(issues.map((issue) => issue.code))];
|
|
35
|
+
const handleChange = (selection) => {
|
|
35
36
|
const idSet = new Set();
|
|
36
37
|
for (const issue of issues) {
|
|
37
|
-
if (
|
|
38
|
+
if (selection.includes(issue.code)) {
|
|
38
39
|
for (const obj of issue.objects) {
|
|
39
40
|
idSet.add(obj.identifier);
|
|
40
41
|
}
|
|
@@ -42,7 +43,13 @@ export function FilterQuality() {
|
|
|
42
43
|
}
|
|
43
44
|
setQualityIds([...idSet]);
|
|
44
45
|
};
|
|
45
|
-
|
|
46
|
+
if (status === "loading" || status === "pending") {
|
|
47
|
+
return _jsx(UiSkeleton, { itemsCount: 1, itemWidth: 137, itemHeight: 27, itemBorderRadius: 4 });
|
|
48
|
+
}
|
|
49
|
+
if (status === "error") {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
return (_jsx(FilterGroupLayout, { title: _jsx(FormattedMessage, { id: "analyticsCatalog.filter.qualityCodes.title" }), children: _jsx(StaticFilter, { options: options, onChange: handleChange, getItemKey: (code) => code, getItemTitle: (code) => {
|
|
46
53
|
const message = titleMessages[code];
|
|
47
54
|
return message ? intl.formatMessage(message) : code;
|
|
48
55
|
}, dataTestId: dataTestId, header: _jsx(FormattedMessage, { id: "analyticsCatalog.filter.qualityCodes.title" }), noDataMessage: _jsx(FormattedMessage, { id: "analyticsCatalog.filter.qualityCodes.noOptions" }) }) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilterQuality.js","sourceRoot":"","sources":["../../src/filter/FilterQuality.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAA0B,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE/F,OAAO,EAAiC,8BAA8B,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"FilterQuality.js","sourceRoot":"","sources":["../../src/filter/FilterQuality.tsx"],"names":[],"mappings":"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"}
|
|
@@ -294,5 +294,17 @@
|
|
|
294
294
|
"analyticsCatalog.quality.scoreCard.runCheck": {
|
|
295
295
|
"value": "Run check",
|
|
296
296
|
"comment": "Label for the button that runs the quality check."
|
|
297
|
+
},
|
|
298
|
+
"analyticsCatalog.quality.scoreCard.action.empty": {
|
|
299
|
+
"value": "No findings",
|
|
300
|
+
"comment": "Label for the empty state of the quality score card action."
|
|
301
|
+
},
|
|
302
|
+
"analyticsCatalog.quality.scoreCard.action.loading": {
|
|
303
|
+
"value": "Running...",
|
|
304
|
+
"comment": "Label for the loading state of the quality score card action."
|
|
305
|
+
},
|
|
306
|
+
"analyticsCatalog.quality.scoreCard.action.success": {
|
|
307
|
+
"value": "Show affected objects",
|
|
308
|
+
"comment": "Label for the success state of the quality score card action."
|
|
297
309
|
}
|
|
298
310
|
}
|
|
@@ -73,5 +73,8 @@ export declare const en_US: {
|
|
|
73
73
|
"analyticsCatalog.quality.description.unknownAbbreviation": string;
|
|
74
74
|
"analyticsCatalog.quality.scoreCard.title": string;
|
|
75
75
|
"analyticsCatalog.quality.scoreCard.runCheck": string;
|
|
76
|
+
"analyticsCatalog.quality.scoreCard.action.empty": string;
|
|
77
|
+
"analyticsCatalog.quality.scoreCard.action.loading": string;
|
|
78
|
+
"analyticsCatalog.quality.scoreCard.action.success": string;
|
|
76
79
|
};
|
|
77
80
|
//# sourceMappingURL=en-US.localization-bundle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK
|
|
1
|
+
{"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8EjB,CAAC"}
|
|
@@ -74,6 +74,9 @@ export const en_US = {
|
|
|
74
74
|
"analyticsCatalog.quality.description.similarDescription": "The description is similar to {objects} Distinguish it in its <u>title</u> to improve AI accuracy.",
|
|
75
75
|
"analyticsCatalog.quality.description.unknownAbbreviation": "The abbreviation <u>{abbreviation}</u> is not recognized. <u>Replace</u> it with the full form to improve AI accuracy.",
|
|
76
76
|
"analyticsCatalog.quality.scoreCard.title": "Semantic quality",
|
|
77
|
-
"analyticsCatalog.quality.scoreCard.runCheck": "Run check"
|
|
77
|
+
"analyticsCatalog.quality.scoreCard.runCheck": "Run check",
|
|
78
|
+
"analyticsCatalog.quality.scoreCard.action.empty": "No findings",
|
|
79
|
+
"analyticsCatalog.quality.scoreCard.action.loading": "Running...",
|
|
80
|
+
"analyticsCatalog.quality.scoreCard.action.success": "Show affected objects"
|
|
78
81
|
};
|
|
79
82
|
//# sourceMappingURL=en-US.localization-bundle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en-US.localization-bundle.js","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,6DAA6D;AAC7D,MAAM,CAAC,MAAM,KAAK,GAAG;IACjB,wBAAwB,EAAE,mBAAmB;IAC7C,2BAA2B,EAAE,WAAW;IACxC,2BAA2B,EAAE,WAAW;IACxC,mCAAmC,EAAE,cAAc;IACnD,wDAAwD,EAAE,oBAAoB;IAC9E,4DAA4D,EAAE,wBAAwB;IACtF,qDAAqD,EAAE,iBAAiB;IACxE,mDAAmD,EAAE,eAAe;IACpE,wDAAwD,EAAE,oBAAoB;IAC9E,iCAAiC,EAAE,SAAS;IAC5C,yCAAyC,EAAE,YAAY;IACvD,6CAA6C,EAAE,uBAAuB;IACtE,oCAAoC,EAAE,MAAM;IAC5C,wCAAwC,EAAE,mBAAmB;IAC7D,sCAAsC,EAAE,QAAQ;IAChD,wCAAwC,EAAE,QAAQ;IAClD,uCAAuC,EAAE,mBAAmB;IAC5D,4CAA4C,EAAE,aAAa;IAC3D,gDAAgD,EAAE,0BAA0B;IAC5E,qCAAqC,EAAE,OAAO;IAC9C,uCAAuC,EAAE,SAAS;IAClD,yCAAyC,EAAE,YAAY;IACvD,yCAAyC,EAAE,YAAY;IACvD,oCAAoC,EAAE,MAAM;IAC5C,yCAAyC,EAAE,kBAAkB;IAC7D,yCAAyC,EAAE,kBAAkB;IAC7D,0CAA0C,EAAE,WAAW;IACvD,4CAA4C,EAAE,SAAS;IACvD,2CAA2C,EAAE,OAAO;IACpD,8CAA8C,EAAE,SAAS;IACzD,+CAA+C,EAAE,MAAM;IACvD,iDAAiD,EAAE,QAAQ;IAC3D,+CAA+C,EAAE,MAAM;IACvD,iDAAiD,EAAE,QAAQ;IAC3D,wCAAwC,EAAE,eAAe;IACzD,4CAA4C,EAAE,+DAA+D;IAC7G,6CAA6C,EAAE,cAAc;IAC7D,iDAAiD,EAAE,wGAAwG;IAC3J,+CAA+C,EAAE,OAAO;IACxD,2CAA2C,EAAE,sBAAsB;IACnE,wCAAwC,EAAE,YAAY;IACtD,0CAA0C,EAAE,aAAa;IACzD,8CAA8C,EAAE,kBAAkB;IAClE,4CAA4C,EAAE,iDAAiD;IAC/F,iCAAiC,EAAE,IAAI;IACvC,mCAAmC,EAAE,MAAM;IAC3C,0CAA0C,EAAE,SAAS;IACrD,0CAA0C,EAAE,qBAAqB;IACjE,gDAAgD,EAAE,6BAA6B;IAC/E,mCAAmC,EAAE,kIAAkI;IACvK,kCAAkC,EAAE,yNAAyN;IAC7P,+BAA+B,EAAE,iCAAiC;IAClE,qCAAqC,EAAE,gBAAgB;IACvD,2CAA2C,EAAE,uCAAuC;IACpF,sCAAsC,EAAE,gBAAgB;IACxD,4CAA4C,EAAE,mDAAmD;IACjG,wCAAwC,EAAE,6DAA6D;IACvG,iDAAiD,EAAE,kFAAkF;IACrI,uDAAuD,EAAE,wFAAwF;IACjJ,+CAA+C,EAAE,iFAAiF;IAClI,qDAAqD,EAAE,uFAAuF;IAC9I,sDAAsD,EAAE,2HAA2H;IACnL,+CAA+C,EAAE,iBAAiB;IAClE,qDAAqD,EAAE,uBAAuB;IAC9E,6CAA6C,EAAE,eAAe;IAC9D,mDAAmD,EAAE,qBAAqB;IAC1E,oDAAoD,EAAE,sBAAsB;IAC5E,qDAAqD,EAAE,+EAA+E;IACtI,2DAA2D,EAAE,qFAAqF;IAClJ,mDAAmD,EAAE,oGAAoG;IACzJ,yDAAyD,EAAE,oGAAoG;IAC/J,0DAA0D,EAAE,wHAAwH;IACpL,0CAA0C,EAAE,kBAAkB;IAC9D,6CAA6C,EAAE,WAAW;
|
|
1
|
+
{"version":3,"file":"en-US.localization-bundle.js","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,6DAA6D;AAC7D,MAAM,CAAC,MAAM,KAAK,GAAG;IACjB,wBAAwB,EAAE,mBAAmB;IAC7C,2BAA2B,EAAE,WAAW;IACxC,2BAA2B,EAAE,WAAW;IACxC,mCAAmC,EAAE,cAAc;IACnD,wDAAwD,EAAE,oBAAoB;IAC9E,4DAA4D,EAAE,wBAAwB;IACtF,qDAAqD,EAAE,iBAAiB;IACxE,mDAAmD,EAAE,eAAe;IACpE,wDAAwD,EAAE,oBAAoB;IAC9E,iCAAiC,EAAE,SAAS;IAC5C,yCAAyC,EAAE,YAAY;IACvD,6CAA6C,EAAE,uBAAuB;IACtE,oCAAoC,EAAE,MAAM;IAC5C,wCAAwC,EAAE,mBAAmB;IAC7D,sCAAsC,EAAE,QAAQ;IAChD,wCAAwC,EAAE,QAAQ;IAClD,uCAAuC,EAAE,mBAAmB;IAC5D,4CAA4C,EAAE,aAAa;IAC3D,gDAAgD,EAAE,0BAA0B;IAC5E,qCAAqC,EAAE,OAAO;IAC9C,uCAAuC,EAAE,SAAS;IAClD,yCAAyC,EAAE,YAAY;IACvD,yCAAyC,EAAE,YAAY;IACvD,oCAAoC,EAAE,MAAM;IAC5C,yCAAyC,EAAE,kBAAkB;IAC7D,yCAAyC,EAAE,kBAAkB;IAC7D,0CAA0C,EAAE,WAAW;IACvD,4CAA4C,EAAE,SAAS;IACvD,2CAA2C,EAAE,OAAO;IACpD,8CAA8C,EAAE,SAAS;IACzD,+CAA+C,EAAE,MAAM;IACvD,iDAAiD,EAAE,QAAQ;IAC3D,+CAA+C,EAAE,MAAM;IACvD,iDAAiD,EAAE,QAAQ;IAC3D,wCAAwC,EAAE,eAAe;IACzD,4CAA4C,EAAE,+DAA+D;IAC7G,6CAA6C,EAAE,cAAc;IAC7D,iDAAiD,EAAE,wGAAwG;IAC3J,+CAA+C,EAAE,OAAO;IACxD,2CAA2C,EAAE,sBAAsB;IACnE,wCAAwC,EAAE,YAAY;IACtD,0CAA0C,EAAE,aAAa;IACzD,8CAA8C,EAAE,kBAAkB;IAClE,4CAA4C,EAAE,iDAAiD;IAC/F,iCAAiC,EAAE,IAAI;IACvC,mCAAmC,EAAE,MAAM;IAC3C,0CAA0C,EAAE,SAAS;IACrD,0CAA0C,EAAE,qBAAqB;IACjE,gDAAgD,EAAE,6BAA6B;IAC/E,mCAAmC,EAAE,kIAAkI;IACvK,kCAAkC,EAAE,yNAAyN;IAC7P,+BAA+B,EAAE,iCAAiC;IAClE,qCAAqC,EAAE,gBAAgB;IACvD,2CAA2C,EAAE,uCAAuC;IACpF,sCAAsC,EAAE,gBAAgB;IACxD,4CAA4C,EAAE,mDAAmD;IACjG,wCAAwC,EAAE,6DAA6D;IACvG,iDAAiD,EAAE,kFAAkF;IACrI,uDAAuD,EAAE,wFAAwF;IACjJ,+CAA+C,EAAE,iFAAiF;IAClI,qDAAqD,EAAE,uFAAuF;IAC9I,sDAAsD,EAAE,2HAA2H;IACnL,+CAA+C,EAAE,iBAAiB;IAClE,qDAAqD,EAAE,uBAAuB;IAC9E,6CAA6C,EAAE,eAAe;IAC9D,mDAAmD,EAAE,qBAAqB;IAC1E,oDAAoD,EAAE,sBAAsB;IAC5E,qDAAqD,EAAE,+EAA+E;IACtI,2DAA2D,EAAE,qFAAqF;IAClJ,mDAAmD,EAAE,oGAAoG;IACzJ,yDAAyD,EAAE,oGAAoG;IAC/J,0DAA0D,EAAE,wHAAwH;IACpL,0CAA0C,EAAE,kBAAkB;IAC9D,6CAA6C,EAAE,WAAW;IAC1D,iDAAiD,EAAE,aAAa;IAChE,mDAAmD,EAAE,YAAY;IACjE,mDAAmD,EAAE,uBAAuB;CAC/E,CAAC"}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
import { type PropsWithChildren } from "react";
|
|
2
2
|
import type { IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
|
|
3
|
-
import type { ISemanticQualityIssue, Identifier } from "@gooddata/sdk-model";
|
|
3
|
+
import type { ISemanticQualityIssue, ISemanticQualityReport, Identifier } from "@gooddata/sdk-model";
|
|
4
4
|
import { type UseCancelablePromiseStatus } from "@gooddata/sdk-ui";
|
|
5
5
|
interface IQualityState {
|
|
6
|
-
|
|
6
|
+
qualityReport: ISemanticQualityReport & {
|
|
7
7
|
status: UseCancelablePromiseStatus;
|
|
8
|
-
issues: ISemanticQualityIssue[];
|
|
9
8
|
};
|
|
10
9
|
qualityIssuesCalculation: {
|
|
11
10
|
status: UseCancelablePromiseStatus;
|
|
12
11
|
};
|
|
13
12
|
}
|
|
14
13
|
interface IQualityActions {
|
|
15
|
-
|
|
14
|
+
fetchQualityReport: () => void;
|
|
16
15
|
createQualityIssuesCalculation: () => void;
|
|
17
16
|
}
|
|
18
17
|
type Props = PropsWithChildren<{
|
|
@@ -21,7 +20,7 @@ type Props = PropsWithChildren<{
|
|
|
21
20
|
}>;
|
|
22
21
|
export declare function QualityProvider({ backend, workspace, children }: Props): import("react/jsx-runtime").JSX.Element;
|
|
23
22
|
export declare function useQualityState(): IQualityState;
|
|
24
|
-
export declare function
|
|
23
|
+
export declare function useQualityReportState(): IQualityState["qualityReport"];
|
|
25
24
|
export declare function useQualityActions(): IQualityActions;
|
|
26
25
|
export declare function useQualityIssuesMap(): Map<Identifier, ISemanticQualityIssue[]>;
|
|
27
26
|
export declare function useQualityIssuesById(id: Identifier): ISemanticQualityIssue[] | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QualityContext.d.ts","sourceRoot":"","sources":["../../src/quality/QualityContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAA6D,MAAM,OAAO,CAAC;AAE1G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"QualityContext.d.ts","sourceRoot":"","sources":["../../src/quality/QualityContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,iBAAiB,EAA6D,MAAM,OAAO,CAAC;AAE1G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACrG,OAAO,EAAE,KAAK,0BAA0B,EAAwB,MAAM,kBAAkB,CAAC;AAKzF,UAAU,aAAa;IACnB,aAAa,EAAE,sBAAsB,GAAG;QACpC,MAAM,EAAE,0BAA0B,CAAC;KACtC,CAAC;IACF,wBAAwB,EAAE;QACtB,MAAM,EAAE,0BAA0B,CAAC;KACtC,CAAC;CACL;AAED,UAAU,eAAe;IACrB,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,8BAA8B,EAAE,MAAM,IAAI,CAAC;CAC9C;AAoBD,KAAK,KAAK,GAAG,iBAAiB,CAAC;IAC3B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC,CAAC;AAEH,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,KAAK,2CAiEtE;AAED,wBAAgB,eAAe,IAAI,aAAa,CAE/C;AAED,wBAAgB,qBAAqB,IAAI,aAAa,CAAC,eAAe,CAAC,CAEtE;AAED,wBAAgB,iBAAiB,IAAI,eAAe,CAEnD;AAED,wBAAgB,mBAAmB,IAAI,GAAG,CAAC,UAAU,EAAE,qBAAqB,EAAE,CAAC,CAmB9E;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,UAAU,GAAG,qBAAqB,EAAE,GAAG,SAAS,CAGxF"}
|
|
@@ -2,19 +2,20 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
2
2
|
// (C) 2025 GoodData Corporation
|
|
3
3
|
import { createContext, useCallback, useContext, useMemo, useState } from "react";
|
|
4
4
|
import { useCancelablePromise } from "@gooddata/sdk-ui";
|
|
5
|
-
import { createQueryId,
|
|
5
|
+
import { createQueryId, getQualityReportQuery, triggerQualityIssuesCalculationQuery } from "./query.js";
|
|
6
6
|
import { useFeatureFlag } from "../permission/index.js";
|
|
7
7
|
const initialState = {
|
|
8
|
-
|
|
8
|
+
qualityReport: {
|
|
9
9
|
status: "pending",
|
|
10
10
|
issues: [],
|
|
11
|
+
updatedAt: undefined,
|
|
11
12
|
},
|
|
12
13
|
qualityIssuesCalculation: {
|
|
13
14
|
status: "pending",
|
|
14
15
|
},
|
|
15
16
|
};
|
|
16
17
|
const initialActions = {
|
|
17
|
-
|
|
18
|
+
fetchQualityReport: () => { },
|
|
18
19
|
createQualityIssuesCalculation: () => { },
|
|
19
20
|
};
|
|
20
21
|
const QualityStateContext = createContext(initialState);
|
|
@@ -23,11 +24,11 @@ export function QualityProvider({ backend, workspace, children }) {
|
|
|
23
24
|
const enabled = useFeatureFlag("enableGenAICatalogQualityChecker");
|
|
24
25
|
// Quality issues
|
|
25
26
|
const [qualityIssuesQueryKey, setQualityIssuesQueryKey] = useState(createQueryId);
|
|
26
|
-
const
|
|
27
|
-
promise: enabled ? () =>
|
|
27
|
+
const qualityReport = useCancelablePromise({
|
|
28
|
+
promise: enabled ? () => getQualityReportQuery({ backend, workspace }) : null,
|
|
28
29
|
onError: (error) => console.error(error),
|
|
29
30
|
}, [backend, workspace, enabled, qualityIssuesQueryKey]);
|
|
30
|
-
const
|
|
31
|
+
const fetchQualityReport = useCallback(() => {
|
|
31
32
|
setQualityIssuesQueryKey(createQueryId());
|
|
32
33
|
}, []);
|
|
33
34
|
// Quality issues calculation
|
|
@@ -44,29 +45,30 @@ export function QualityProvider({ backend, workspace, children }) {
|
|
|
44
45
|
}, []);
|
|
45
46
|
// Exposed state
|
|
46
47
|
const state = useMemo(() => ({
|
|
47
|
-
|
|
48
|
-
status:
|
|
49
|
-
issues:
|
|
48
|
+
qualityReport: {
|
|
49
|
+
status: qualityReport.status,
|
|
50
|
+
issues: qualityReport.result?.issues ?? initialState.qualityReport.issues,
|
|
51
|
+
updatedAt: qualityReport.result?.updatedAt,
|
|
50
52
|
},
|
|
51
53
|
qualityIssuesCalculation: {
|
|
52
54
|
status: qualityIssuesCalculation.status,
|
|
53
55
|
},
|
|
54
|
-
}), [
|
|
56
|
+
}), [qualityReport, qualityIssuesCalculation.status]);
|
|
55
57
|
// Exposed actions
|
|
56
|
-
const actions = useMemo(() => ({
|
|
58
|
+
const actions = useMemo(() => ({ fetchQualityReport, createQualityIssuesCalculation }), [fetchQualityReport, createQualityIssuesCalculation]);
|
|
57
59
|
return (_jsx(QualityStateContext.Provider, { value: state, children: _jsx(QualityActionsContext.Provider, { value: actions, children: children }) }));
|
|
58
60
|
}
|
|
59
61
|
export function useQualityState() {
|
|
60
62
|
return useContext(QualityStateContext);
|
|
61
63
|
}
|
|
62
|
-
export function
|
|
63
|
-
return useQualityState().
|
|
64
|
+
export function useQualityReportState() {
|
|
65
|
+
return useQualityState().qualityReport;
|
|
64
66
|
}
|
|
65
67
|
export function useQualityActions() {
|
|
66
68
|
return useContext(QualityActionsContext);
|
|
67
69
|
}
|
|
68
70
|
export function useQualityIssuesMap() {
|
|
69
|
-
const { issues } =
|
|
71
|
+
const { issues } = useQualityReportState();
|
|
70
72
|
return useMemo(() => {
|
|
71
73
|
const map = new Map();
|
|
72
74
|
for (const issue of issues) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QualityContext.js","sourceRoot":"","sources":["../../src/quality/QualityContext.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAA0B,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAI1G,OAAO,EAAmC,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAEzF,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,oCAAoC,EAAE,MAAM,YAAY,CAAC;AACxG,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"QualityContext.js","sourceRoot":"","sources":["../../src/quality/QualityContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QualityScoreCard.d.ts","sourceRoot":"","sources":["../../src/quality/QualityScoreCard.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"QualityScoreCard.d.ts","sourceRoot":"","sources":["../../src/quality/QualityScoreCard.tsx"],"names":[],"mappings":"AAWA,wBAAgB,gBAAgB,4CAwC/B"}
|
|
@@ -2,15 +2,29 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
// (C) 2025 GoodData Corporation
|
|
3
3
|
import { useIntl } from "react-intl";
|
|
4
4
|
import { useQualityActions, useQualityState } from "./QualityContext.js";
|
|
5
|
+
import { QualityScoreCardAction } from "./QualityScoreCardAction.js";
|
|
6
|
+
import { QualityScoreCardDate } from "./QualityScoreCardDate.js";
|
|
5
7
|
import { QualityScoreCardMenu } from "./QualityScoreCardMenu.js";
|
|
6
8
|
import { QualityScoreCardScore } from "./QualityScoreCardScore.js";
|
|
9
|
+
import { useFilterActions } from "../filter/index.js";
|
|
7
10
|
export function QualityScoreCard() {
|
|
8
11
|
const intl = useIntl();
|
|
9
|
-
const {
|
|
12
|
+
const { qualityReport, qualityIssuesCalculation } = useQualityState();
|
|
10
13
|
const { createQualityIssuesCalculation } = useQualityActions();
|
|
11
|
-
const
|
|
12
|
-
|
|
14
|
+
const { setQualityIds } = useFilterActions();
|
|
15
|
+
const { issues } = qualityReport;
|
|
16
|
+
const isLoading = qualityReport.status === "pending" ||
|
|
17
|
+
qualityReport.status === "loading" ||
|
|
13
18
|
qualityIssuesCalculation.status === "loading";
|
|
14
|
-
|
|
19
|
+
const handleActionClick = () => {
|
|
20
|
+
const idSet = new Set();
|
|
21
|
+
for (const issue of issues) {
|
|
22
|
+
for (const obj of issue.objects) {
|
|
23
|
+
idSet.add(obj.identifier);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
setQualityIds([...idSet]);
|
|
27
|
+
};
|
|
28
|
+
return (_jsxs("div", { className: "gd-analytics-catalog__quality-score-card", children: [_jsx("span", { className: "gd-analytics-catalog__quality-score-card__title", children: intl.formatMessage({ id: "analyticsCatalog.quality.scoreCard.title" }) }), _jsx(QualityScoreCardMenu, { intl: intl, onRunCheck: createQualityIssuesCalculation }), _jsx(QualityScoreCardScore, { issues: issues, isLoading: isLoading }), _jsx(QualityScoreCardAction, { intl: intl, isEmpty: issues.length === 0, isLoading: isLoading, onActionClick: handleActionClick }), qualityReport.updatedAt ? (_jsx(QualityScoreCardDate, { date: qualityReport.updatedAt, locale: intl.locale })) : null] }));
|
|
15
29
|
}
|
|
16
30
|
//# sourceMappingURL=QualityScoreCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QualityScoreCard.js","sourceRoot":"","sources":["../../src/quality/QualityScoreCard.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"QualityScoreCard.js","sourceRoot":"","sources":["../../src/quality/QualityScoreCard.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,UAAU,gBAAgB;IAC5B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,EAAE,aAAa,EAAE,wBAAwB,EAAE,GAAG,eAAe,EAAE,CAAC;IACtE,MAAM,EAAE,8BAA8B,EAAE,GAAG,iBAAiB,EAAE,CAAC;IAC/D,MAAM,EAAE,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAE7C,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;IACjC,MAAM,SAAS,GACX,aAAa,CAAC,MAAM,KAAK,SAAS;QAClC,aAAa,CAAC,MAAM,KAAK,SAAS;QAClC,wBAAwB,CAAC,MAAM,KAAK,SAAS,CAAC;IAElD,MAAM,iBAAiB,GAAG,GAAG,EAAE;QAC3B,MAAM,KAAK,GAAgB,IAAI,GAAG,EAAE,CAAC;QACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC9B,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;QACD,aAAa,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,OAAO,CACH,eAAK,SAAS,EAAC,0CAA0C,aACrD,eAAM,SAAS,EAAC,iDAAiD,YAC5D,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,0CAA0C,EAAE,CAAC,GACpE,EACP,KAAC,oBAAoB,IAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,8BAA8B,GAAI,EAChF,KAAC,qBAAqB,IAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAI,EAC/D,KAAC,sBAAsB,IACnB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAC5B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,iBAAiB,GAClC,EACD,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CACvB,KAAC,oBAAoB,IAAC,IAAI,EAAE,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,GAAI,CAC/E,CAAC,CAAC,CAAC,IAAI,IACN,CACT,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { IntlShape } from "react-intl";
|
|
2
|
+
type Props = {
|
|
3
|
+
intl: IntlShape;
|
|
4
|
+
isEmpty: boolean;
|
|
5
|
+
isLoading: boolean;
|
|
6
|
+
onActionClick: () => void;
|
|
7
|
+
};
|
|
8
|
+
export declare function QualityScoreCardAction({ intl, isEmpty, isLoading, onActionClick }: Props): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=QualityScoreCardAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QualityScoreCardAction.d.ts","sourceRoot":"","sources":["../../src/quality/QualityScoreCardAction.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI5C,KAAK,KAAK,GAAG;IACT,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,MAAM,IAAI,CAAC;CAC7B,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,KAAK,2CAqBxF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { UiButton } from "@gooddata/sdk-ui-kit";
|
|
3
|
+
export function QualityScoreCardAction({ intl, isEmpty, isLoading, onActionClick }) {
|
|
4
|
+
if (isLoading) {
|
|
5
|
+
return (_jsx(Layout, { children: intl.formatMessage({ id: "analyticsCatalog.quality.scoreCard.action.loading" }) }));
|
|
6
|
+
}
|
|
7
|
+
if (isEmpty) {
|
|
8
|
+
return (_jsx(Layout, { children: intl.formatMessage({ id: "analyticsCatalog.quality.scoreCard.action.empty" }) }));
|
|
9
|
+
}
|
|
10
|
+
return (_jsx(Layout, { children: _jsx(UiButton, { label: intl.formatMessage({ id: "analyticsCatalog.quality.scoreCard.action.success" }), variant: "tertiary", size: "small", onClick: onActionClick }) }));
|
|
11
|
+
}
|
|
12
|
+
function Layout({ children }) {
|
|
13
|
+
return _jsx("div", { className: "gd-analytics-catalog__quality-score-card__action", children: children });
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=QualityScoreCardAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QualityScoreCardAction.js","sourceRoot":"","sources":["../../src/quality/QualityScoreCardAction.tsx"],"names":[],"mappings":";AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAShD,MAAM,UAAU,sBAAsB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAS;IACrF,IAAI,SAAS,EAAE,CAAC;QACZ,OAAO,CACH,KAAC,MAAM,cAAE,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,mDAAmD,EAAE,CAAC,GAAU,CACrG,CAAC;IACN,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,CACH,KAAC,MAAM,cAAE,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,iDAAiD,EAAE,CAAC,GAAU,CACnG,CAAC;IACN,CAAC;IACD,OAAO,CACH,KAAC,MAAM,cACH,KAAC,QAAQ,IACL,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,mDAAmD,EAAE,CAAC,EACtF,OAAO,EAAC,UAAU,EAClB,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,aAAa,GACxB,GACG,CACZ,CAAC;AACN,CAAC;AAED,SAAS,MAAM,CAAC,EAAE,QAAQ,EAAqB;IAC3C,OAAO,cAAK,SAAS,EAAC,kDAAkD,YAAE,QAAQ,GAAO,CAAC;AAC9F,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QualityScoreCardDate.d.ts","sourceRoot":"","sources":["../../src/quality/QualityScoreCardDate.tsx"],"names":[],"mappings":"AAIA,KAAK,KAAK,GAAG;IACT,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,2CAM3D"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// (C) 2025 GoodData Corporation
|
|
3
|
+
import { UiDate } from "@gooddata/sdk-ui-kit";
|
|
4
|
+
export function QualityScoreCardDate({ date, locale }) {
|
|
5
|
+
return (_jsx("div", { className: "gd-analytics-catalog__quality-score-card__date", children: _jsx(UiDate, { date: date, locale: locale }) }));
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=QualityScoreCardDate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QualityScoreCardDate.js","sourceRoot":"","sources":["../../src/quality/QualityScoreCardDate.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAO9C,MAAM,UAAU,oBAAoB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAS;IACxD,OAAO,CACH,cAAK,SAAS,EAAC,gDAAgD,YAC3D,KAAC,MAAM,IAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAI,GACpC,CACT,CAAC;AACN,CAAC"}
|
|
@@ -6,7 +6,7 @@ import { groupQualityIssuesBySeverity } from "./utils.js";
|
|
|
6
6
|
export function QualityScoreCardScore({ issues, isLoading }) {
|
|
7
7
|
const severityGroup = groupQualityIssuesBySeverity(issues);
|
|
8
8
|
const totalCount = issues.length;
|
|
9
|
-
return (_jsx("div", { className: "gd-analytics-catalog__quality-score-card__score", children: isLoading ? (_jsx(LoadingComponent, {})) : totalCount > 0 ? ([...severityGroup].map(([severity, issues]) => {
|
|
9
|
+
return (_jsx("div", { className: "gd-analytics-catalog__quality-score-card__score", children: isLoading ? (_jsx(LoadingComponent, { className: "gd-analytics-catalog__quality-score-card__score__loading" })) : totalCount > 0 ? ([...severityGroup].map(([severity, issues]) => {
|
|
10
10
|
if (issues.length === 0) {
|
|
11
11
|
return null;
|
|
12
12
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QualityScoreCardScore.js","sourceRoot":"","sources":["../../src/quality/QualityScoreCardScore.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAO1D,MAAM,UAAU,qBAAqB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAS;IAC9D,MAAM,aAAa,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;IAEjC,OAAO,CACH,cAAK,SAAS,EAAC,iDAAiD,YAC3D,SAAS,CAAC,CAAC,CAAC,CACT,KAAC,gBAAgB,
|
|
1
|
+
{"version":3,"file":"QualityScoreCardScore.js","sourceRoot":"","sources":["../../src/quality/QualityScoreCardScore.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAO1D,MAAM,UAAU,qBAAqB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAS;IAC9D,MAAM,aAAa,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;IAEjC,OAAO,CACH,cAAK,SAAS,EAAC,iDAAiD,YAC3D,SAAS,CAAC,CAAC,CAAC,CACT,KAAC,gBAAgB,IAAC,SAAS,EAAC,0DAA0D,GAAG,CAC5F,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CACjB,CAAC,GAAG,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE;YAC1C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,CACH,eAAoB,SAAS,EAAC,uDAAuD,aAChF,MAAM,CAAC,MAAM,EACd,KAAC,mBAAmB,IAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,GAAI,KAF/C,QAAQ,CAGZ,CACT,CAAC;QACN,CAAC,CAAC,CACL,CAAC,CAAC,CAAC,CACA,eAAK,SAAS,EAAC,uDAAuD,aACjE,UAAU,EACX,KAAC,MAAM,IAAC,IAAI,EAAC,aAAa,EAAC,KAAK,EAAC,SAAS,EAAC,IAAI,EAAE,EAAE,EAAE,UAAU,SAAG,IAChE,CACT,GACC,CACT,CAAC;AACN,CAAC"}
|
package/esm/quality/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { QualityProvider, useQualityState,
|
|
1
|
+
export { QualityProvider, useQualityState, useQualityReportState, useQualityActions, useQualityIssuesMap, useQualityIssuesById, } from "./QualityContext.js";
|
|
2
2
|
export { QualityIcon, QualityIconMemo } from "./QualityIcon.js";
|
|
3
3
|
export { QualityIssue } from "./QualityIssue.js";
|
|
4
4
|
export { QualityScoreCard } from "./QualityScoreCard.js";
|
package/esm/quality/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// (C) 2025 GoodData Corporation
|
|
2
|
-
export { QualityProvider, useQualityState,
|
|
2
|
+
export { QualityProvider, useQualityState, useQualityReportState, useQualityActions, useQualityIssuesMap, useQualityIssuesById, } from "./QualityContext.js";
|
|
3
3
|
export { QualityIcon, QualityIconMemo } from "./QualityIcon.js";
|
|
4
4
|
export { QualityIssue } from "./QualityIssue.js";
|
|
5
5
|
export { QualityScoreCard } from "./QualityScoreCard.js";
|
package/esm/quality/query.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
|
|
2
|
-
import {
|
|
1
|
+
import type { IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
|
|
2
|
+
import type { ISemanticQualityIssuesCalculation, ISemanticQualityReport } from "@gooddata/sdk-model";
|
|
3
3
|
type Options = {
|
|
4
4
|
backend: IAnalyticalBackend;
|
|
5
5
|
workspace: string;
|
|
6
6
|
};
|
|
7
|
-
export declare function
|
|
7
|
+
export declare function getQualityReportQuery({ backend, workspace, }: Options): Promise<ISemanticQualityReport>;
|
|
8
8
|
export declare function triggerQualityIssuesCalculationQuery({ backend, workspace, }: Options): Promise<ISemanticQualityIssuesCalculation>;
|
|
9
9
|
export declare function createQueryId(): string;
|
|
10
10
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/quality/query.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/quality/query.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,iCAAiC,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAErG,KAAK,OAAO,GAAG;IACX,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAsB,qBAAqB,CAAC,EACxC,OAAO,EACP,SAAS,GACZ,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAE3C;AAED,wBAAsB,oCAAoC,CAAC,EACvD,OAAO,EACP,SAAS,GACZ,EAAE,OAAO,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAEtD;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
|
package/esm/quality/query.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// (C) 2025 GoodData Corporation
|
|
2
|
-
export async function
|
|
3
|
-
return backend.workspace(workspace).genAI().getSemanticQuality().
|
|
2
|
+
export async function getQualityReportQuery({ backend, workspace, }) {
|
|
3
|
+
return backend.workspace(workspace).genAI().getSemanticQuality().getQualityReport();
|
|
4
4
|
}
|
|
5
5
|
export async function triggerQualityIssuesCalculationQuery({ backend, workspace, }) {
|
|
6
6
|
return await backend.workspace(workspace).genAI().getSemanticQuality().triggerQualityIssuesCalculation();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gooddata/sdk-ui-catalog",
|
|
3
|
-
"version": "11.6.0-alpha.
|
|
3
|
+
"version": "11.6.0-alpha.7",
|
|
4
4
|
"description": "GoodData SDK - Analytics Catalog",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -37,13 +37,13 @@
|
|
|
37
37
|
"lodash-es": "^4.17.21",
|
|
38
38
|
"react-intl": "7.1.11",
|
|
39
39
|
"tslib": "2.8.1",
|
|
40
|
-
"@gooddata/sdk-backend-spi": "11.6.0-alpha.
|
|
41
|
-
"@gooddata/sdk-model": "11.6.0-alpha.
|
|
42
|
-
"@gooddata/sdk-ui-kit": "11.6.0-alpha.
|
|
43
|
-
"@gooddata/sdk-ui": "11.6.0-alpha.
|
|
44
|
-
"@gooddata/sdk-ui-semantic-search": "11.6.0-alpha.
|
|
45
|
-
"@gooddata/sdk-ui-theme-provider": "11.6.0-alpha.
|
|
46
|
-
"@gooddata/util": "11.6.0-alpha.
|
|
40
|
+
"@gooddata/sdk-backend-spi": "11.6.0-alpha.7",
|
|
41
|
+
"@gooddata/sdk-model": "11.6.0-alpha.7",
|
|
42
|
+
"@gooddata/sdk-ui-kit": "11.6.0-alpha.7",
|
|
43
|
+
"@gooddata/sdk-ui": "11.6.0-alpha.7",
|
|
44
|
+
"@gooddata/sdk-ui-semantic-search": "11.6.0-alpha.7",
|
|
45
|
+
"@gooddata/sdk-ui-theme-provider": "11.6.0-alpha.7",
|
|
46
|
+
"@gooddata/util": "11.6.0-alpha.7"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@microsoft/api-documenter": "^7.17.0",
|
|
@@ -83,9 +83,9 @@
|
|
|
83
83
|
"typescript": "5.8.3",
|
|
84
84
|
"vitest": "3.2.4",
|
|
85
85
|
"vitest-dom": "0.1.1",
|
|
86
|
-
"@gooddata/
|
|
87
|
-
"@gooddata/
|
|
88
|
-
"@gooddata/
|
|
86
|
+
"@gooddata/i18n-toolkit": "11.6.0-alpha.7",
|
|
87
|
+
"@gooddata/eslint-config": "11.6.0-alpha.7",
|
|
88
|
+
"@gooddata/sdk-backend-mockingbird": "11.6.0-alpha.7"
|
|
89
89
|
},
|
|
90
90
|
"peerDependencies": {
|
|
91
91
|
"react": "^18.0.0 || ^19.0.0",
|
package/styles/css/main.css
CHANGED
|
@@ -527,6 +527,7 @@
|
|
|
527
527
|
.gd-analytics-catalog__main header {
|
|
528
528
|
display: flex;
|
|
529
529
|
flex-wrap: wrap;
|
|
530
|
+
align-items: center;
|
|
530
531
|
gap: 20px;
|
|
531
532
|
margin: 20px 0;
|
|
532
533
|
}
|
|
@@ -541,6 +542,9 @@
|
|
|
541
542
|
border-top-left-radius: 3px;
|
|
542
543
|
border-top-right-radius: 3px;
|
|
543
544
|
}
|
|
545
|
+
.gd-analytics-catalog__filter__reset {
|
|
546
|
+
margin-left: -10px;
|
|
547
|
+
}
|
|
544
548
|
.gd-analytics-catalog__filter__group {
|
|
545
549
|
display: flex;
|
|
546
550
|
gap: 10px;
|
|
@@ -626,6 +630,9 @@
|
|
|
626
630
|
font-weight: 700;
|
|
627
631
|
line-height: 20px;
|
|
628
632
|
}
|
|
633
|
+
.gd-analytics-catalog__quality-score-card__menu {
|
|
634
|
+
justify-self: end;
|
|
635
|
+
}
|
|
629
636
|
.gd-analytics-catalog__quality-score-card__score {
|
|
630
637
|
grid-column: span 2;
|
|
631
638
|
display: flex;
|
|
@@ -636,11 +643,29 @@
|
|
|
636
643
|
font-size: 24px;
|
|
637
644
|
font-weight: 700;
|
|
638
645
|
}
|
|
646
|
+
.gd-analytics-catalog__quality-score-card__score__loading {
|
|
647
|
+
flex: none;
|
|
648
|
+
}
|
|
639
649
|
.gd-analytics-catalog__quality-score-card__score__item {
|
|
640
650
|
display: flex;
|
|
641
651
|
align-items: center;
|
|
642
652
|
gap: 5px;
|
|
643
653
|
}
|
|
654
|
+
.gd-analytics-catalog__quality-score-card__action {
|
|
655
|
+
font-size: 12px;
|
|
656
|
+
height: 20px;
|
|
657
|
+
line-height: 18px;
|
|
658
|
+
color: var(--gd-palette-complementary-7);
|
|
659
|
+
}
|
|
660
|
+
.gd-analytics-catalog__quality-score-card__action .gd-ui-kit-button {
|
|
661
|
+
height: fit-content;
|
|
662
|
+
}
|
|
663
|
+
.gd-analytics-catalog__quality-score-card__date {
|
|
664
|
+
justify-self: end;
|
|
665
|
+
font-size: 10px;
|
|
666
|
+
line-height: 17px;
|
|
667
|
+
color: var(--gd-palette-complementary-6);
|
|
668
|
+
}
|
|
644
669
|
.gd-analytics-catalog__quality-score-card .gd-dropdown-button-wrapper,
|
|
645
670
|
.gd-analytics-catalog__quality-score-card .gd-ui-kit-icon-button {
|
|
646
671
|
height: 20px;
|
package/styles/css/main.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../../node_modules/@gooddata/sdk-ui-kit/src/@ui/defaultTheme.scss","../scss/objectType.scss","../scss/detail.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss","../scss/main.scss"],"names":[],"mappings":"AAIA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;EAGA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EAGA;EACA;EAGA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AClVA;EACI;;AAGJ;EACI;;AAGJ;EAEI;;AAGJ;EACI;;;ACJR;EACI,aCmFc;EDlFd,WAJgB;EAKhB,WAVI;EAWJ,WAXI;EAYJ;;AAEA;EAEI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA,OCnBA;EDoBA,WA3CE;EA4CF,aA3CS;EA4CT;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI,OC7CG;;ADgDP;EACI;EACA,OC/CJ;EDgDI;EACA;;AAIR;EACI;;AAEA;EACI,OCzDJ;ED0DI,aA1EQ;EA2ER,WA5EC;EA6ED;EACA;EACA;;AAGJ;EACI,OC9DJ;ED+DI,WAlFA;EAmFA;EACA;EACA;EACA;;AAGJ;EACI,OC9EG;;ADiFP;EACI;EACA,OChFJ;;ADoFJ;EACI;;AAEA;EACI;;AAKZ;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI,OC7GQ;ED8GR;EACA;EACA;EACA;;AAGJ;EACI,OCjHQ;EDkHR;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAEA;EACI,OCpIW;EDqIX;EACA;EACA;EACA;;;AAMR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAIA;EACI;;AAEA;EACI;EACA;EACA;;AAIR;EACI;;;AEtLhB;EACI,aDsFc;ECrFd,WAJgB;EAKhB;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAEA;EACI;;AAMR;EACI;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;;AAGI;EAGI;;AAKJ;EAII;EACA;;AAMhB;EACI;EACA;;AAEA;EACI;;AAGJ;EAEI;;AAGJ;EACI;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;;AAGJ;EACI,
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../node_modules/@gooddata/sdk-ui-kit/src/@ui/defaultTheme.scss","../scss/objectType.scss","../scss/detail.scss","../../node_modules/@gooddata/sdk-ui-kit/styles/scss/variables.scss","../scss/main.scss"],"names":[],"mappings":"AAIA;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EAGA;EACA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;EAGA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EAGA;EACA;EAGA;EAGA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;AAAA;AAAA;AAAA;EAIA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AClVA;EACI;;AAGJ;EACI;;AAGJ;EAEI;;AAGJ;EACI;;;ACJR;EACI,aCmFc;EDlFd,WAJgB;EAKhB,WAVI;EAWJ,WAXI;EAYJ;;AAEA;EAEI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA,OCnBA;EDoBA,WA3CE;EA4CF,aA3CS;EA4CT;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI,OC7CG;;ADgDP;EACI;EACA,OC/CJ;EDgDI;EACA;;AAIR;EACI;;AAEA;EACI,OCzDJ;ED0DI,aA1EQ;EA2ER,WA5EC;EA6ED;EACA;EACA;;AAGJ;EACI,OC9DJ;ED+DI,WAlFA;EAmFA;EACA;EACA;EACA;;AAGJ;EACI,OC9EG;;ADiFP;EACI;EACA,OChFJ;;ADoFJ;EACI;;AAEA;EACI;;AAKZ;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI,OC7GQ;ED8GR;EACA;EACA;EACA;;AAGJ;EACI,OCjHQ;EDkHR;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAEA;EACI,OCpIW;EDqIX;EACA;EACA;EACA;;;AAMR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;AAIA;EACI;;AAEA;EACI;EACA;EACA;;AAIR;EACI;;;AEtLhB;EACI,aDsFc;ECrFd,WAJgB;EAKhB;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAMR;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;;AAGI;EAGI;;AAKJ;EAII;EACA;;AAMhB;EACI;EACA;;AAEA;EACI;;AAGJ;EAEI;;AAGJ;EACI;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;;AAGJ;EACI,ODhJQ;ECiJR;EACA;EACA;EACA;;AAGJ;EAEI,ODpJI;ECqJJ;EACA;EACA;EACA;;AAIR;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA,ODnKQ;ECoKR;EACA;EACA,kBDnLS;;ACqLT;EACI;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;;AAGJ;AAAA;EAEI;EACA;;AAGJ;EACI;;AAKJ;EACI;;AAEA;EACI;EACA","file":"main.css"}
|
package/styles/scss/main.scss
CHANGED
|
@@ -63,6 +63,7 @@ $content-font-size: 14px;
|
|
|
63
63
|
header {
|
|
64
64
|
display: flex;
|
|
65
65
|
flex-wrap: wrap;
|
|
66
|
+
align-items: center;
|
|
66
67
|
gap: 20px;
|
|
67
68
|
margin: 20px 0;
|
|
68
69
|
|
|
@@ -82,6 +83,10 @@ $content-font-size: 14px;
|
|
|
82
83
|
border-top-left-radius: 3px;
|
|
83
84
|
border-top-right-radius: 3px;
|
|
84
85
|
}
|
|
86
|
+
|
|
87
|
+
&__reset {
|
|
88
|
+
margin-left: -10px;
|
|
89
|
+
}
|
|
85
90
|
}
|
|
86
91
|
|
|
87
92
|
&__filter__group {
|
|
@@ -196,6 +201,10 @@ $content-font-size: 14px;
|
|
|
196
201
|
line-height: 20px;
|
|
197
202
|
}
|
|
198
203
|
|
|
204
|
+
&__menu {
|
|
205
|
+
justify-self: end;
|
|
206
|
+
}
|
|
207
|
+
|
|
199
208
|
&__score {
|
|
200
209
|
grid-column: span 2;
|
|
201
210
|
display: flex;
|
|
@@ -206,6 +215,10 @@ $content-font-size: 14px;
|
|
|
206
215
|
font-size: 24px;
|
|
207
216
|
font-weight: 700;
|
|
208
217
|
|
|
218
|
+
&__loading {
|
|
219
|
+
flex: none;
|
|
220
|
+
}
|
|
221
|
+
|
|
209
222
|
&__item {
|
|
210
223
|
display: flex;
|
|
211
224
|
align-items: center;
|
|
@@ -213,6 +226,24 @@ $content-font-size: 14px;
|
|
|
213
226
|
}
|
|
214
227
|
}
|
|
215
228
|
|
|
229
|
+
&__action {
|
|
230
|
+
font-size: 12px;
|
|
231
|
+
height: 20px;
|
|
232
|
+
line-height: 18px;
|
|
233
|
+
color: var(--gd-palette-complementary-7);
|
|
234
|
+
|
|
235
|
+
.gd-ui-kit-button {
|
|
236
|
+
height: fit-content;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
&__date {
|
|
241
|
+
justify-self: end;
|
|
242
|
+
font-size: 10px;
|
|
243
|
+
line-height: 17px;
|
|
244
|
+
color: var(--gd-palette-complementary-6);
|
|
245
|
+
}
|
|
246
|
+
|
|
216
247
|
.gd-dropdown-button-wrapper,
|
|
217
248
|
.gd-ui-kit-icon-button {
|
|
218
249
|
height: 20px;
|