@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.
Files changed (36) hide show
  1. package/esm/catalogDetail/CatalogDetailContent.js +2 -2
  2. package/esm/filter/FilterQuality.d.ts +1 -1
  3. package/esm/filter/FilterQuality.d.ts.map +1 -1
  4. package/esm/filter/FilterQuality.js +13 -6
  5. package/esm/filter/FilterQuality.js.map +1 -1
  6. package/esm/localization/bundles/en-US.json +12 -0
  7. package/esm/localization/bundles/en-US.localization-bundle.d.ts +3 -0
  8. package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  9. package/esm/localization/bundles/en-US.localization-bundle.js +4 -1
  10. package/esm/localization/bundles/en-US.localization-bundle.js.map +1 -1
  11. package/esm/quality/QualityContext.d.ts +4 -5
  12. package/esm/quality/QualityContext.d.ts.map +1 -1
  13. package/esm/quality/QualityContext.js +16 -14
  14. package/esm/quality/QualityContext.js.map +1 -1
  15. package/esm/quality/QualityScoreCard.d.ts.map +1 -1
  16. package/esm/quality/QualityScoreCard.js +18 -4
  17. package/esm/quality/QualityScoreCard.js.map +1 -1
  18. package/esm/quality/QualityScoreCardAction.d.ts +10 -0
  19. package/esm/quality/QualityScoreCardAction.d.ts.map +1 -0
  20. package/esm/quality/QualityScoreCardAction.js +15 -0
  21. package/esm/quality/QualityScoreCardAction.js.map +1 -0
  22. package/esm/quality/QualityScoreCardDate.d.ts +7 -0
  23. package/esm/quality/QualityScoreCardDate.d.ts.map +1 -0
  24. package/esm/quality/QualityScoreCardDate.js +7 -0
  25. package/esm/quality/QualityScoreCardDate.js.map +1 -0
  26. package/esm/quality/QualityScoreCardScore.js +1 -1
  27. package/esm/quality/QualityScoreCardScore.js.map +1 -1
  28. package/esm/quality/index.d.ts +1 -1
  29. package/esm/quality/index.js +1 -1
  30. package/esm/quality/query.d.ts +3 -3
  31. package/esm/quality/query.d.ts.map +1 -1
  32. package/esm/quality/query.js +2 -2
  33. package/package.json +11 -11
  34. package/styles/css/main.css +25 -0
  35. package/styles/css/main.css.map +1 -1
  36. 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, useQualityIssuesState } from "../quality/index.js";
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 } = useQualityIssuesState();
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":"AAkCA,wBAAgB,aAAa,4CAqC5B;AAED,eAAO,MAAM,iBAAiB,2DAAsB,CAAC"}
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 { useQualityIssuesState } from "../quality/index.js";
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 } = useQualityIssuesState();
32
+ const { issues, status } = useQualityReportState();
32
33
  const { setQualityIds } = useFilterActions();
33
- const codes = [...new Set(issues.map((issue) => issue.code))];
34
- const handleChange = (codes) => {
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 (codes.includes(issue.code)) {
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
- return (_jsx(FilterGroupLayout, { title: _jsx(FormattedMessage, { id: "analyticsCatalog.filter.qualityCodes.title" }), children: _jsx(StaticFilter, { options: codes, onChange: handleChange, getItemKey: (code) => code, getItemTitle: (code) => {
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":"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"}
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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2EjB,CAAC"}
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;CAC7D,CAAC"}
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
- qualityIssues: {
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
- fetchQualityIssues: () => void;
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 useQualityIssuesState(): IQualityState["qualityIssues"];
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;AAC7E,OAAO,EAAE,KAAK,0BAA0B,EAAwB,MAAM,kBAAkB,CAAC;AAKzF,UAAU,aAAa;IACnB,aAAa,EAAE;QACX,MAAM,EAAE,0BAA0B,CAAC;QACnC,MAAM,EAAE,qBAAqB,EAAE,CAAC;KACnC,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;AAmBD,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,2CAgEtE;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"}
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, getQualityIssuesQuery, triggerQualityIssuesCalculationQuery } from "./query.js";
5
+ import { createQueryId, getQualityReportQuery, triggerQualityIssuesCalculationQuery } from "./query.js";
6
6
  import { useFeatureFlag } from "../permission/index.js";
7
7
  const initialState = {
8
- qualityIssues: {
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
- fetchQualityIssues: () => { },
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 qualityIssues = useCancelablePromise({
27
- promise: enabled ? () => getQualityIssuesQuery({ backend, workspace }) : null,
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 fetchQualityIssues = useCallback(() => {
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
- qualityIssues: {
48
- status: qualityIssues.status,
49
- issues: qualityIssues.result ?? initialState.qualityIssues.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
- }), [qualityIssues.status, qualityIssues.result, qualityIssuesCalculation.status]);
56
+ }), [qualityReport, qualityIssuesCalculation.status]);
55
57
  // Exposed actions
56
- const actions = useMemo(() => ({ fetchQualityIssues, createQualityIssuesCalculation }), [fetchQualityIssues, createQualityIssuesCalculation]);
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 useQualityIssuesState() {
63
- return useQualityState().qualityIssues;
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 } = useQualityIssuesState();
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":"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"}
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":"AAQA,wBAAgB,gBAAgB,4CAmB/B"}
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 { qualityIssues, qualityIssuesCalculation } = useQualityState();
12
+ const { qualityReport, qualityIssuesCalculation } = useQualityState();
10
13
  const { createQualityIssuesCalculation } = useQualityActions();
11
- const isLoading = qualityIssues.status === "pending" ||
12
- qualityIssues.status === "loading" ||
14
+ const { setQualityIds } = useFilterActions();
15
+ const { issues } = qualityReport;
16
+ const isLoading = qualityReport.status === "pending" ||
17
+ qualityReport.status === "loading" ||
13
18
  qualityIssuesCalculation.status === "loading";
14
- 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: qualityIssues.issues, isLoading: isLoading })] }));
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;AAEnE,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;IAE/D,MAAM,SAAS,GACX,aAAa,CAAC,MAAM,KAAK,SAAS;QAClC,aAAa,CAAC,MAAM,KAAK,SAAS;QAClC,wBAAwB,CAAC,MAAM,KAAK,SAAS,CAAC;IAElD,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,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,GAAI,IAC3E,CACT,CAAC;AACN,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,7 @@
1
+ type Props = {
2
+ date: string;
3
+ locale?: string;
4
+ };
5
+ export declare function QualityScoreCardDate({ date, locale }: Props): import("react/jsx-runtime").JSX.Element;
6
+ export {};
7
+ //# sourceMappingURL=QualityScoreCardDate.d.ts.map
@@ -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,KAAG,CACvB,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"}
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"}
@@ -1,4 +1,4 @@
1
- export { QualityProvider, useQualityState, useQualityIssuesState, useQualityActions, useQualityIssuesMap, useQualityIssuesById, } from "./QualityContext.js";
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";
@@ -1,5 +1,5 @@
1
1
  // (C) 2025 GoodData Corporation
2
- export { QualityProvider, useQualityState, useQualityIssuesState, useQualityActions, useQualityIssuesMap, useQualityIssuesById, } from "./QualityContext.js";
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";
@@ -1,10 +1,10 @@
1
- import { IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
2
- import { ISemanticQualityIssue, type ISemanticQualityIssuesCalculation } from "@gooddata/sdk-model";
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 getQualityIssuesQuery({ backend, workspace, }: Options): Promise<ISemanticQualityIssue[]>;
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;AAC/D,OAAO,EAAE,qBAAqB,EAAE,KAAK,iCAAiC,EAAE,MAAM,qBAAqB,CAAC;AAEpG,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,qBAAqB,EAAE,CAAC,CAE5C;AAED,wBAAsB,oCAAoC,CAAC,EACvD,OAAO,EACP,SAAS,GACZ,EAAE,OAAO,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAEtD;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
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"}
@@ -1,6 +1,6 @@
1
1
  // (C) 2025 GoodData Corporation
2
- export async function getQualityIssuesQuery({ backend, workspace, }) {
3
- return backend.workspace(workspace).genAI().getSemanticQuality().getQualityIssues();
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.6",
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.6",
41
- "@gooddata/sdk-model": "11.6.0-alpha.6",
42
- "@gooddata/sdk-ui-kit": "11.6.0-alpha.6",
43
- "@gooddata/sdk-ui": "11.6.0-alpha.6",
44
- "@gooddata/sdk-ui-semantic-search": "11.6.0-alpha.6",
45
- "@gooddata/sdk-ui-theme-provider": "11.6.0-alpha.6",
46
- "@gooddata/util": "11.6.0-alpha.6"
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/eslint-config": "11.6.0-alpha.6",
87
- "@gooddata/sdk-backend-mockingbird": "11.6.0-alpha.6",
88
- "@gooddata/i18n-toolkit": "11.6.0-alpha.6"
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",
@@ -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;
@@ -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,OD3IQ;EC4IR;EACA;EACA;EACA;;AAGJ;EAEI,OD/II;ECgJJ;EACA;EACA;EACA;;AAIR;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA,OD9JQ;EC+JR;EACA;EACA,kBD9KS;;ACgLT;EACI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;;AAIR;AAAA;EAEI;EACA;;AAGJ;EACI;;AAKJ;EACI;;AAEA;EACI;EACA","file":"main.css"}
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"}
@@ -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;