@gooddata/sdk-ui-catalog 11.57.0 → 11.58.0-alpha.1

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 (42) hide show
  1. package/esm/catalogDetail/hooks/useCatalogItemLoad.d.ts.map +1 -1
  2. package/esm/catalogDetail/hooks/useCatalogItemLoad.js +17 -4
  3. package/esm/catalogDetail/hooks/useCatalogItemUpdate.d.ts.map +1 -1
  4. package/esm/catalogDetail/hooks/useCatalogItemUpdate.js +4 -4
  5. package/esm/catalogDetail/share/guards.d.ts +3 -3
  6. package/esm/catalogDetail/share/guards.d.ts.map +1 -1
  7. package/esm/catalogDetail/share/guards.js +6 -5
  8. package/esm/catalogDetail/share/types.d.ts +5 -5
  9. package/esm/catalogDetail/share/types.d.ts.map +1 -1
  10. package/esm/catalogDetail/share/useShareableLabels.d.ts +5 -5
  11. package/esm/catalogDetail/share/useShareableLabels.d.ts.map +1 -1
  12. package/esm/catalogDetail/share/useShareableLabels.js +4 -5
  13. package/esm/catalogItem/converter.d.ts.map +1 -1
  14. package/esm/catalogItem/converter.js +1 -0
  15. package/esm/catalogItem/guards.d.ts +6 -1
  16. package/esm/catalogItem/guards.d.ts.map +1 -1
  17. package/esm/catalogItem/guards.js +7 -0
  18. package/esm/catalogItem/permission.d.ts +2 -2
  19. package/esm/catalogItem/permission.d.ts.map +1 -1
  20. package/esm/catalogItem/permission.js +12 -10
  21. package/esm/catalogItem/query.d.ts +1 -2
  22. package/esm/catalogItem/query.d.ts.map +1 -1
  23. package/esm/catalogItem/query.js +3 -5
  24. package/esm/catalogItem/types.d.ts +11 -0
  25. package/esm/catalogItem/types.d.ts.map +1 -1
  26. package/esm/catalogItem/useCatalogEndpoints.d.ts.map +1 -1
  27. package/esm/catalogItem/useCatalogEndpoints.js +3 -0
  28. package/esm/localization/bundles/en-US.localization-bundle.d.ts +4 -0
  29. package/esm/localization/bundles/en-US.localization-bundle.d.ts.map +1 -1
  30. package/esm/localization/bundles/en-US.localization-bundle.js +4 -0
  31. package/esm/metric/metricDescriptor.d.ts.map +1 -1
  32. package/esm/metric/metricDescriptor.js +1 -0
  33. package/esm/metric/metricMutationPort.d.ts +1 -1
  34. package/esm/metric/metricMutationPort.d.ts.map +1 -1
  35. package/esm/metric/metricMutationPort.js +8 -8
  36. package/esm/parameter/parameterDescriptor.d.ts.map +1 -1
  37. package/esm/parameter/parameterDescriptor.js +9 -1
  38. package/esm/parameter/parameterMutationPort.d.ts +4 -2
  39. package/esm/parameter/parameterMutationPort.d.ts.map +1 -1
  40. package/esm/parameter/parameterMutationPort.js +9 -0
  41. package/esm/sdk-ui-catalog.d.ts +2 -0
  42. package/package.json +15 -15
@@ -1 +1 @@
1
- {"version":3,"file":"useCatalogItemLoad.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/hooks/useCatalogItemLoad.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,eAAe,GAAG,YAAY,GAAG,IAAI,CAAC;CAC5D;AAED,wBAAgB,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,mBAAmB,GAAG;IACjG,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACpD,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC;CACjB,CAyDA"}
1
+ {"version":3,"file":"useCatalogItemLoad.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/hooks/useCatalogItemLoad.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,4BAA4B,CAAC;AACrF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,eAAe,GAAG,YAAY,GAAG,IAAI,CAAC;CAC5D;AAED,wBAAgB,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,mBAAmB,GAAG;IACjG,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACpD,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC;CACjB,CA2DA"}
@@ -1,7 +1,7 @@
1
1
  // (C) 2025-2026 GoodData Corporation
2
2
  import { convertError, isNotFound, useBackendStrict, useCancelablePromise, useWorkspaceStrict, } from "@gooddata/sdk-ui";
3
3
  import { convertAttributeToCatalogItem, convertComputedAttributeToCatalogItem, convertDashboardToCatalogItem, convertDataSetToCatalogItem, convertFactToCatalogItem, convertInsightToCatalogItem, convertMeasureToCatalogItem, convertParameterToCatalogItem, } from "../../catalogItem/converter.js";
4
- import { isCatalogItemAttribute, isCatalogItemLoaded, isCatalogItemMeasure, } from "../../catalogItem/guards.js";
4
+ import { isCatalogItemAttribute, isCatalogItemLoaded, isCatalogItemWithPermissions, } from "../../catalogItem/guards.js";
5
5
  import {} from "../../catalogItem/types.js";
6
6
  import {} from "../../objectType/types.js";
7
7
  import { useFeatureFlag } from "../../permission/PermissionsContext.js";
@@ -10,7 +10,9 @@ export function useCatalogItemLoad({ objectDefinition, objectId, objectType }) {
10
10
  const type = objectType ?? objectDefinition?.type;
11
11
  const backend = useBackendStrict();
12
12
  const workspace = useWorkspaceStrict();
13
- const loadPermissions = useFeatureFlag("enableMetricPermissions");
13
+ const metricPermissions = useFeatureFlag("enableMetricPermissions");
14
+ const visualizationPermissions = useFeatureFlag("enableVisualizationPermissions");
15
+ const loadPermissions = loadsOwnPermissions(type, metricPermissions, visualizationPermissions);
14
16
  const filled = isCatalogItemLoaded(objectDefinition) &&
15
17
  !awaitsPermissions(objectDefinition, loadPermissions) &&
16
18
  !awaitsLabels(objectDefinition);
@@ -53,10 +55,20 @@ export function useCatalogItemLoad({ objectDefinition, objectId, objectType }) {
53
55
  item: result,
54
56
  };
55
57
  }
56
- // A metric handed over by a producer that cannot return permissions (a semantic-search hit) has to
58
+ function loadsOwnPermissions(type, metricPermissions, visualizationPermissions) {
59
+ switch (type) {
60
+ case "measure":
61
+ return metricPermissions;
62
+ case "insight":
63
+ return visualizationPermissions;
64
+ default:
65
+ return false;
66
+ }
67
+ }
68
+ // An item handed over by a producer that cannot return permissions (a semantic-search hit) has to
57
69
  // be fetched for them, or its own EDIT and SHARE would read as absent.
58
70
  function awaitsPermissions(item, loadPermissions) {
59
- return loadPermissions && isCatalogItemMeasure(item) && item.permissions === undefined;
71
+ return loadPermissions && isCatalogItemWithPermissions(item) && item.permissions === undefined;
60
72
  }
61
73
  // List queries don't include labels; only the detail fetch below does.
62
74
  function awaitsLabels(item) {
@@ -103,6 +115,7 @@ async function loadObjectDefinition(workspace, id, type, loadPermissions) {
103
115
  identifier: id,
104
116
  }, {
105
117
  loadUserData: true,
118
+ ...(loadPermissions ? { loadPermissions: true } : {}),
106
119
  })
107
120
  .then(convertInsightToCatalogItem);
108
121
  case "measure":
@@ -1 +1 @@
1
- {"version":3,"file":"useCatalogItemUpdate.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/hooks/useCatalogItemUpdate.ts"],"names":[],"mappings":"AAOA,OAAO,EACH,KAAK,8BAA8B,EACnC,KAAK,KAAK,EACV,KAAK,UAAU,EACf,KAAK,MAAM,EAEd,MAAM,qBAAqB,CAAC;AAgB7B,OAAO,EACH,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACvB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAI5D,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,eAAe,GAAG,YAAY,GAAG,IAAI,CAAC;IACzD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACpC;AAID,wBAAgB,oBAAoB,CAAC,EACjC,WAAW,EACX,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,OAAO,GACV,EAAE,qBAAqB;;;;6BAyFR,MAAM;yCAIA,MAAM;2BAIb,MAAM,EAAE;mCAIJ,OAAO;iDAQA,OAAO;uCAQZ,UAAU,GAAG,SAAS;+BAY1B,MAAM,GAAG,IAAI;6DAYE,mBAAmB,CAAC,uBAAuB,CAAC;qDAYzD,MAAM,yBAAyB,8BAA8B,GAAG,SAAS;6CAqBpE,YAAY,CAAC,eAAe,CAAC;+BApInC,YAAY;2BAUhB,eAAe;EA6J5B"}
1
+ {"version":3,"file":"useCatalogItemUpdate.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/hooks/useCatalogItemUpdate.ts"],"names":[],"mappings":"AAOA,OAAO,EACH,KAAK,8BAA8B,EACnC,KAAK,KAAK,EACV,KAAK,UAAU,EACf,KAAK,MAAM,EAEd,MAAM,qBAAqB,CAAC;AAiB7B,OAAO,EACH,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACvB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAI5D,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,eAAe,GAAG,YAAY,GAAG,IAAI,CAAC;IACzD,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CACpC;AAID,wBAAgB,oBAAoB,CAAC,EACjC,WAAW,EACX,QAAQ,EACR,UAAU,EACV,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,OAAO,GACV,EAAE,qBAAqB;;;;6BAyFR,MAAM;yCAIA,MAAM;2BAIb,MAAM,EAAE;mCAIJ,OAAO;iDAQA,OAAO;uCAQZ,UAAU,GAAG,SAAS;+BAY1B,MAAM,GAAG,IAAI;6DAYE,mBAAmB,CAAC,uBAAuB,CAAC;qDAYzD,MAAM,yBAAyB,8BAA8B,GAAG,SAAS;6CAqBpE,YAAY,CAAC,eAAe,CAAC;+BApInC,YAAY;2BAUhB,eAAe;EA6J5B"}
@@ -4,7 +4,7 @@ import { isEqual } from "lodash-es";
4
4
  import { areObjRefsEqual, } from "@gooddata/sdk-model";
5
5
  import { useBackendStrict, useWorkspaceStrict } from "@gooddata/sdk-ui";
6
6
  import { getDisplayName } from "../../catalogItem/converter.js";
7
- import { isCatalogItemAttribute, isCatalogItemHidable, isCatalogItemLoaded, isCatalogItemMeasure, } from "../../catalogItem/guards.js";
7
+ import { isCatalogItemAttribute, isCatalogItemHidable, isCatalogItemLoaded, isCatalogItemMeasure, isCatalogItemWithPermissions, } from "../../catalogItem/guards.js";
8
8
  import { persistLabelConditionalFormatting, persistMeasureConditionalFormatting, updateCatalogItem, updateCatalogItemCertification, } from "../../catalogItem/query.js";
9
9
  import {} from "../../catalogItem/types.js";
10
10
  import { useMounted } from "../../hooks/useMounted.js";
@@ -39,7 +39,7 @@ export function useCatalogItemUpdate({ currentUser, objectId, objectType, object
39
39
  }, [mounted, onError, onUpdate]);
40
40
  /** Sync local state with an item mutation persisted outside this hook; does not re-persist. */
41
41
  const applyItemUpdate = useCallback((updated) => {
42
- const next = keepMeasurePermissions(item, updated);
42
+ const next = keepPermissions(item, updated);
43
43
  setItem(next);
44
44
  onUpdate?.(next);
45
45
  }, [item, onUpdate]);
@@ -141,8 +141,8 @@ function updateItem(backend, workspace, user, item, disabled, updater, onUpdate,
141
141
  Promise.resolve(persistFn(newItem)).catch(onError);
142
142
  }
143
143
  // The update endpoint cannot return permissions, and a save does not change them.
144
- function keepMeasurePermissions(previous, updated) {
145
- if (!previous || !isCatalogItemMeasure(previous) || !isCatalogItemMeasure(updated)) {
144
+ function keepPermissions(previous, updated) {
145
+ if (!previous || !isCatalogItemWithPermissions(previous) || !isCatalogItemWithPermissions(updated)) {
146
146
  return updated;
147
147
  }
148
148
  if (previous.identifier !== updated.identifier) {
@@ -2,9 +2,9 @@ import type { IObjectPermissionsObject } from "@gooddata/sdk-backend-spi";
2
2
  import type { ICatalogItem } from "../../catalogItem/types.js";
3
3
  import type { ShareableCatalogItem } from "./types.js";
4
4
  /**
5
- * Catalog items the share dialog can target: attributes, facts, measures and computed
6
- * attributes. Labels are not first-class catalog items; they appear inside the labels
7
- * picker when sharing an attribute.
5
+ * Catalog items the share dialog can target: attributes, facts, measures, computed
6
+ * attributes and visualizations. Labels are not first-class catalog items; they appear
7
+ * inside the labels picker when sharing an attribute.
8
8
  */
9
9
  export declare function isShareableCatalogItem(item: ICatalogItem): item is ShareableCatalogItem;
10
10
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/share/guards.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAS1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,IAAI,oBAAoB,CAOvF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,wBAAwB,CAKlF"}
1
+ {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/share/guards.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAU1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,IAAI,oBAAoB,CAQvF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,wBAAwB,CAKlF"}
@@ -1,16 +1,17 @@
1
1
  // (C) 2026 GoodData Corporation
2
2
  import { idRef } from "@gooddata/sdk-model";
3
- import { isCatalogItemAttribute, isCatalogItemComputedAttribute, isCatalogItemFact, isCatalogItemMeasure, } from "../../catalogItem/guards.js";
3
+ import { isCatalogItemAttribute, isCatalogItemComputedAttribute, isCatalogItemFact, isCatalogItemInsight, isCatalogItemMeasure, } from "../../catalogItem/guards.js";
4
4
  /**
5
- * Catalog items the share dialog can target: attributes, facts, measures and computed
6
- * attributes. Labels are not first-class catalog items; they appear inside the labels
7
- * picker when sharing an attribute.
5
+ * Catalog items the share dialog can target: attributes, facts, measures, computed
6
+ * attributes and visualizations. Labels are not first-class catalog items; they appear
7
+ * inside the labels picker when sharing an attribute.
8
8
  */
9
9
  export function isShareableCatalogItem(item) {
10
10
  return (isCatalogItemAttribute(item) ||
11
11
  isCatalogItemFact(item) ||
12
12
  isCatalogItemMeasure(item) ||
13
- isCatalogItemComputedAttribute(item));
13
+ isCatalogItemComputedAttribute(item) ||
14
+ isCatalogItemInsight(item));
14
15
  }
15
16
  /**
16
17
  * Build the backend target descriptor from a shareable catalog item. The kind
@@ -1,8 +1,8 @@
1
- import type { ICatalogItemAttribute, ICatalogItemComputedAttribute, ICatalogItemFact, ICatalogItemMeasure } from "../../catalogItem/types.js";
1
+ import type { ICatalogItemAttribute, ICatalogItemComputedAttribute, ICatalogItemFact, ICatalogItemInsight, ICatalogItemMeasure } from "../../catalogItem/types.js";
2
2
  /**
3
- * Catalog items that can be shared: attributes, facts, measures and computed attributes.
4
- * Labels are sub-selected from inside an attribute share, not shared as standalone
5
- * targets; a computed attribute has no labels at all.
3
+ * Catalog items that can be shared: attributes, facts, measures, computed attributes and
4
+ * visualizations. Labels are sub-selected from inside an attribute share, not shared as
5
+ * standalone targets; the other kinds have no labels at all.
6
6
  */
7
- export type ShareableCatalogItem = ICatalogItemAttribute | ICatalogItemFact | ICatalogItemMeasure | ICatalogItemComputedAttribute;
7
+ export type ShareableCatalogItem = ICatalogItemAttribute | ICatalogItemFact | ICatalogItemMeasure | ICatalogItemComputedAttribute | ICatalogItemInsight;
8
8
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/share/types.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,qBAAqB,EACrB,6BAA6B,EAC7B,gBAAgB,EAChB,mBAAmB,EACtB,MAAM,4BAA4B,CAAC;AAEpC;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAC1B,qBAAqB,GACrB,gBAAgB,GAChB,mBAAmB,GACnB,6BAA6B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/share/types.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,qBAAqB,EACrB,6BAA6B,EAC7B,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACtB,MAAM,4BAA4B,CAAC;AAEpC;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAC1B,qBAAqB,GACrB,gBAAgB,GAChB,mBAAmB,GACnB,6BAA6B,GAC7B,mBAAmB,CAAC"}
@@ -4,11 +4,11 @@ import type { ShareableCatalogItem } from "./types.js";
4
4
  * @internal
5
5
  */
6
6
  export interface IShareableLabels {
7
- /** Display forms of the shareable attribute; empty for facts, measures and computed attributes. */
7
+ /** Display forms of the shareable attribute; empty for every other shareable kind. */
8
8
  labels: IObjectShareLabel[];
9
9
  /**
10
- * True while an attribute's labels are still being fetched. Facts, measures and
11
- * computed attributes skip the fetch and report `false`. Gates the dialog's Add action so a grantee
10
+ * True while an attribute's labels are still being fetched. The other shareable kinds
11
+ * skip the fetch and report `false`. Gates the dialog's Add action so a grantee
12
12
  * can't be added before its labels are known.
13
13
  */
14
14
  loading: boolean;
@@ -22,8 +22,8 @@ export interface IShareableLabels {
22
22
  }
23
23
  /**
24
24
  * Loads the labels (display forms) of a shareable attribute so the share dialog
25
- * can scope a grantee's access per label. Facts, measures and computed attributes
26
- * have no labels — returns an empty list and skips the fetch. The result feeds
25
+ * can scope a grantee's access per label. The other shareable kinds have no labels —
26
+ * returns an empty list and skips the fetch. The result feeds
27
27
  * {@link ObjectShareDialog}'s `labels`.
28
28
  *
29
29
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"useShareableLabels.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/share/useShareableLabels.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,iBAAiB,EAAuB,MAAM,sBAAsB,CAAC;AAEnF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,mGAAmG;IACnG,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,KAAK,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,oBAAoB,GAAG,SAAS,GAAG,gBAAgB,CA2C3F"}
1
+ {"version":3,"file":"useShareableLabels.d.ts","sourceRoot":"","sources":["../../../src/catalogDetail/share/useShareableLabels.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,iBAAiB,EAAuB,MAAM,sBAAsB,CAAC;AAEnF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,sFAAsF;IACtF,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,KAAK,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,oBAAoB,GAAG,SAAS,GAAG,gBAAgB,CA0C3F"}
@@ -5,8 +5,8 @@ import { useBackendStrict, useCancelablePromise, useWorkspaceStrict } from "@goo
5
5
  import { sortShareableLabels } from "@gooddata/sdk-ui-ext";
6
6
  /**
7
7
  * Loads the labels (display forms) of a shareable attribute so the share dialog
8
- * can scope a grantee's access per label. Facts, measures and computed attributes
9
- * have no labels — returns an empty list and skips the fetch. The result feeds
8
+ * can scope a grantee's access per label. The other shareable kinds have no labels —
9
+ * returns an empty list and skips the fetch. The result feeds
10
10
  * {@link ObjectShareDialog}'s `labels`.
11
11
  *
12
12
  * @internal
@@ -14,7 +14,7 @@ import { sortShareableLabels } from "@gooddata/sdk-ui-ext";
14
14
  export function useShareableLabels(item) {
15
15
  const backend = useBackendStrict();
16
16
  const workspace = useWorkspaceStrict();
17
- // Only attributes carry labels; facts, measures and computed attributes do not.
17
+ // Only attributes carry labels; the other shareable kinds do not.
18
18
  const attributeRef = item?.type === "attribute" ? item.identifier : undefined;
19
19
  const { result, status } = useCancelablePromise({
20
20
  promise: attributeRef
@@ -35,8 +35,7 @@ export function useShareableLabels(item) {
35
35
  isPrimary: df.isPrimary === true,
36
36
  isDefault: df.isDefault === true,
37
37
  }))), [result]);
38
- // Facts, measures and computed attributes have no fetch, so they never "load". An attribute loads
39
- // until its fetch settles (success or error).
38
+ // Only an attribute fetches, so only an attribute "loads": until its fetch settles (success or error).
40
39
  const loading = attributeRef !== undefined && status !== "success" && status !== "error";
41
40
  const error = attributeRef !== undefined && status === "error";
42
41
  return { labels, loading, error };
@@ -1 +1 @@
1
- {"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../../src/catalogItem/converter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,EAEH,KAAK,wBAAwB,EAC7B,KAAK,gCAAgC,EACrC,KAAK,UAAU,EACf,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAE3B,KAAK,wBAAwB,EAC7B,KAAK,KAAK,EAUb,MAAM,qBAAqB,CAAC;AAK7B,OAAO,KAAK,EACR,YAAY,EACZ,qBAAqB,EACrB,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EAExB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,0BAA0B,CACtC,MAAM,EACA,QAAQ,GACR,gBAAgB,GAChB,sBAAsB,GACtB,wBAAwB,GACxB,gCAAgC,GAChC,mBAAmB,GACnB,wBAAwB,GACxB,sBAAsB,GACtB,SAAS,GAChB,YAAY,CA0Bd;AAED,wBAAgB,6BAA6B,CACzC,SAAS,EAAE,UAAU,GAAG,gBAAgB,GACzC,qBAAqB,CAiBvB;AAED,wBAAgB,2BAA2B,CAAC,EAAE,OAAO,EAAE,EAAE,QAAQ,GAAG,mBAAmB,CAkBtF;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,sBAAsB,GAAG,mBAAmB,CAwBhG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,GAAG,gBAAgB,CAgBpF;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,wBAAwB,GAAG,qBAAqB,CAiBxG;AAED,wBAAgB,qCAAqC,CACjD,iBAAiB,EAAE,gCAAgC,GACpD,6BAA6B,CAiB/B;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,wBAAwB,GAAG,qBAAqB,CAgBxG;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,sBAAsB,GAAG,mBAAmB,CAehG;AAED,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,MAAM,CAW1D;AAcD,wBAAgB,kCAAkC,CAAC,GAAG,EAAE,+BAA+B,GAAG,YAAY,CAuBrG"}
1
+ {"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../../src/catalogItem/converter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,EAEH,KAAK,wBAAwB,EAC7B,KAAK,gCAAgC,EACrC,KAAK,UAAU,EACf,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACb,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAE3B,KAAK,wBAAwB,EAC7B,KAAK,KAAK,EAUb,MAAM,qBAAqB,CAAC;AAK7B,OAAO,KAAK,EACR,YAAY,EACZ,qBAAqB,EACrB,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EAExB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,0BAA0B,CACtC,MAAM,EACA,QAAQ,GACR,gBAAgB,GAChB,sBAAsB,GACtB,wBAAwB,GACxB,gCAAgC,GAChC,mBAAmB,GACnB,wBAAwB,GACxB,sBAAsB,GACtB,SAAS,GAChB,YAAY,CA0Bd;AAED,wBAAgB,6BAA6B,CACzC,SAAS,EAAE,UAAU,GAAG,gBAAgB,GACzC,qBAAqB,CAiBvB;AAED,wBAAgB,2BAA2B,CAAC,EAAE,OAAO,EAAE,EAAE,QAAQ,GAAG,mBAAmB,CAmBtF;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,sBAAsB,GAAG,mBAAmB,CAwBhG;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,mBAAmB,GAAG,gBAAgB,CAgBpF;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,wBAAwB,GAAG,qBAAqB,CAiBxG;AAED,wBAAgB,qCAAqC,CACjD,iBAAiB,EAAE,gCAAgC,GACpD,6BAA6B,CAiB/B;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,wBAAwB,GAAG,qBAAqB,CAgBxG;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,sBAAsB,GAAG,mBAAmB,CAehG;AAED,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,GAAG,MAAM,CAW1D;AAcD,wBAAgB,kCAAkC,CAAC,GAAG,EAAE,+BAA+B,GAAG,YAAY,CAuBrG"}
@@ -63,6 +63,7 @@ export function convertInsightToCatalogItem({ insight }) {
63
63
  isLocked: insight.isLocked ?? false,
64
64
  isEditable: true,
65
65
  isHidden: insight.isHidden,
66
+ permissions: insight.permissions,
66
67
  };
67
68
  }
68
69
  export function convertMeasureToCatalogItem(measure) {
@@ -1,4 +1,4 @@
1
- import type { ICatalogItem, ICatalogItemAttribute, ICatalogItemComputedAttribute, ICatalogItemDashboard, ICatalogItemDataSet, ICatalogItemFact, ICatalogItemHidable, ICatalogItemInsight, ICatalogItemMeasure, ICatalogItemParameter, ICatalogItemRef, ICatalogItemTextGenerable, VisualizationType } from "./types.js";
1
+ import type { ICatalogItem, ICatalogItemAttribute, ICatalogItemComputedAttribute, ICatalogItemDashboard, ICatalogItemDataSet, ICatalogItemFact, ICatalogItemHidable, ICatalogItemInsight, ICatalogItemMeasure, ICatalogItemParameter, ICatalogItemRef, ICatalogItemTextGenerable, ICatalogItemWithPermissions, VisualizationType } from "./types.js";
2
2
  /**
3
3
  * @internal
4
4
  */
@@ -36,6 +36,11 @@ export declare function isCatalogItemDataSet(item: ICatalogItem | undefined | nu
36
36
  * @internal
37
37
  */
38
38
  export declare function isCatalogItemHidable(item: ICatalogItem | undefined | null): item is ICatalogItemHidable;
39
+ /**
40
+ * Type guard for catalog items that carry the current user's own object-level permissions.
41
+ * @internal
42
+ */
43
+ export declare function isCatalogItemWithPermissions(item: ICatalogItem | undefined | null): item is ICatalogItemWithPermissions;
39
44
  /**
40
45
  * Type guard for catalog items that support AI text generation.
41
46
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/catalogItem/guards.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,YAAY,EACZ,qBAAqB,EACrB,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACpB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,qBAAqB,CAE3G;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAEvG;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAEvG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,qBAAqB,CAE3G;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC1C,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GACtC,IAAI,IAAI,6BAA6B,CAEvC;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,qBAAqB,CAE3G;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,gBAAgB,CAEjG;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAEvG;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAOvG;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACtC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GACtC,IAAI,IAAI,yBAAyB,CAQnC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,eAAe,GAAG,YAAY,GAAG,SAAS,GAAG,IAAI,GACxD,IAAI,IAAI,YAAY,CAEtB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,iBAAiB,GAAG,SAAS,CAEzG"}
1
+ {"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/catalogItem/guards.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,YAAY,EACZ,qBAAqB,EACrB,6BAA6B,EAC7B,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,yBAAyB,EACzB,2BAA2B,EAC3B,iBAAiB,EACpB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,qBAAqB,CAE3G;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAEvG;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAEvG;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,qBAAqB,CAE3G;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC1C,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GACtC,IAAI,IAAI,6BAA6B,CAEvC;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,qBAAqB,CAE3G;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,gBAAgB,CAEjG;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAEvG;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAOvG;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CACxC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GACtC,IAAI,IAAI,2BAA2B,CAErC;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CACtC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GACtC,IAAI,IAAI,yBAAyB,CAQnC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,eAAe,GAAG,YAAY,GAAG,SAAS,GAAG,IAAI,GACxD,IAAI,IAAI,YAAY,CAEtB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,GAAG,iBAAiB,GAAG,SAAS,CAEzG"}
@@ -57,6 +57,13 @@ export function isCatalogItemHidable(item) {
57
57
  isCatalogItemAttribute(item) ||
58
58
  isCatalogItemFact(item));
59
59
  }
60
+ /**
61
+ * Type guard for catalog items that carry the current user's own object-level permissions.
62
+ * @internal
63
+ */
64
+ export function isCatalogItemWithPermissions(item) {
65
+ return isCatalogItemInsight(item) || isCatalogItemMeasure(item);
66
+ }
60
67
  /**
61
68
  * Type guard for catalog items that support AI text generation.
62
69
  * @internal
@@ -2,8 +2,8 @@ import { type ISettings, type IWorkspacePermissions } from "@gooddata/sdk-model"
2
2
  import type { ICatalogItem } from "./types.js";
3
3
  export declare function canEditCatalogItem(workspacePermissions?: IWorkspacePermissions, item?: ICatalogItem | null, settings?: ISettings): boolean;
4
4
  /**
5
- * Whether the user may share the item. Metrics are gated by the metric-permissions flag and then by
6
- * their own SHARE, deliberately not derived from EDIT. Attributes and facts have no object-level
5
+ * Whether the user may share the item. Metrics and visualizations are gated by their own permissions
6
+ * flag and then by their own SHARE, deliberately not derived from EDIT. Attributes and facts have no object-level
7
7
  * permissions, so their column-level-permissions flag decides and the backend refuses the access
8
8
  * list to anyone who may not manage them. The two flags are independent. A computed
9
9
  * attribute follows the attribute rule and additionally needs the computed-attributes
@@ -1 +1 @@
1
- {"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../../src/catalogItem/permission.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,SAAS,EACd,KAAK,qBAAqB,EAI7B,MAAM,qBAAqB,CAAC;AAU7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,wBAAgB,kBAAkB,CAC9B,oBAAoB,CAAC,EAAE,qBAAqB,EAC5C,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,EAC1B,QAAQ,CAAC,EAAE,SAAS,WAwCvB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAC/B,oBAAoB,CAAC,EAAE,qBAAqB,EAC5C,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,EAC1B,QAAQ,CAAC,EAAE,SAAS,WA0BvB"}
1
+ {"version":3,"file":"permission.d.ts","sourceRoot":"","sources":["../../src/catalogItem/permission.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,SAAS,EACd,KAAK,qBAAqB,EAK7B,MAAM,qBAAqB,CAAC;AAY7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,wBAAgB,kBAAkB,CAC9B,oBAAoB,CAAC,EAAE,qBAAqB,EAC5C,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,EAC1B,QAAQ,CAAC,EAAE,SAAS,WA2CvB;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAC/B,oBAAoB,CAAC,EAAE,qBAAqB,EAC5C,IAAI,CAAC,EAAE,YAAY,GAAG,IAAI,EAC1B,QAAQ,CAAC,EAAE,SAAS,WAkCvB"}
@@ -1,7 +1,7 @@
1
1
  // (C) 2025-2026 GoodData Corporation
2
- import { canEditMetric, canShareMetric, } from "@gooddata/sdk-model";
2
+ import { canEditMetric, canEditVisualization, canShareMetric, canShareVisualization, } from "@gooddata/sdk-model";
3
3
  import { COMPUTED_ATTRIBUTE_FEATURE_FLAG } from "../computedAttribute/gate.js";
4
- import { isCatalogItemAttribute, isCatalogItemComputedAttribute, isCatalogItemFact, isCatalogItemMeasure, } from "./guards.js";
4
+ import { isCatalogItemAttribute, isCatalogItemComputedAttribute, isCatalogItemDashboard, isCatalogItemFact, isCatalogItemInsight, isCatalogItemMeasure, } from "./guards.js";
5
5
  export function canEditCatalogItem(workspacePermissions, item, settings) {
6
6
  // If the workspace permissions or the item is not provided, the user cannot update it.
7
7
  if (!workspacePermissions || !item) {
@@ -24,17 +24,16 @@ export function canEditCatalogItem(workspacePermissions, item, settings) {
24
24
  if (isCatalogItemMeasure(item)) {
25
25
  return canEditMetric(item.permissions, workspacePermissions, Boolean(settings?.enableMetricPermissions));
26
26
  }
27
- // If the user has WS.Analyze permission to create visualizations, they can update the item if it is a visualization
28
- // or a dashboard to which they have access.
29
- if (workspacePermissions.canCreateVisualization) {
30
- const editableTypes = ["analyticalDashboard", "insight"];
31
- return editableTypes.includes(item.type);
27
+ // A visualization is edited through its own EDIT permission.
28
+ if (isCatalogItemInsight(item)) {
29
+ return canEditVisualization(item.permissions, workspacePermissions, Boolean(settings?.enableVisualizationPermissions));
32
30
  }
33
- return false;
31
+ // With WS.Analyze the user can update a dashboard to which they have access.
32
+ return isCatalogItemDashboard(item) && workspacePermissions.canCreateVisualization;
34
33
  }
35
34
  /**
36
- * Whether the user may share the item. Metrics are gated by the metric-permissions flag and then by
37
- * their own SHARE, deliberately not derived from EDIT. Attributes and facts have no object-level
35
+ * Whether the user may share the item. Metrics and visualizations are gated by their own permissions
36
+ * flag and then by their own SHARE, deliberately not derived from EDIT. Attributes and facts have no object-level
38
37
  * permissions, so their column-level-permissions flag decides and the backend refuses the access
39
38
  * list to anyone who may not manage them. The two flags are independent. A computed
40
39
  * attribute follows the attribute rule and additionally needs the computed-attributes
@@ -47,6 +46,9 @@ export function canShareCatalogItem(workspacePermissions, item, settings) {
47
46
  if (isCatalogItemMeasure(item)) {
48
47
  return canShareMetric(item.permissions, workspacePermissions, Boolean(settings?.enableMetricPermissions));
49
48
  }
49
+ if (isCatalogItemInsight(item)) {
50
+ return canShareVisualization(item.permissions, workspacePermissions, Boolean(settings?.enableVisualizationPermissions));
51
+ }
50
52
  if (isCatalogItemAttribute(item) || isCatalogItemFact(item)) {
51
53
  return Boolean(settings?.enableColumnLevelPermissions);
52
54
  }
@@ -2,7 +2,7 @@ import type { IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
2
2
  import { type IAttributeDisplayFormMetadataObject, type IMeasureMetadataObject, type IMeasureMetadataObjectDefinition, type IParameterMetadataObjectDefinition, type ObjRef } from "@gooddata/sdk-model";
3
3
  import type { ICatalogItem, ICatalogItemMeasure, ICatalogItemQueryOptions } from "./types.js";
4
4
  export declare function getDashboardsQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, isHidden, certification, pageSize, }: ICatalogItemQueryOptions): import("@gooddata/sdk-backend-spi").IDashboardsQuery;
5
- export declare function getInsightsQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, isHidden, certification, pageSize, }: ICatalogItemQueryOptions): import("@gooddata/sdk-backend-spi").IInsightsQuery;
5
+ export declare function getInsightsQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, isHidden, certification, pageSize, loadVisualizationPermissions, }: ICatalogItemQueryOptions): import("@gooddata/sdk-backend-spi").IInsightsQuery;
6
6
  export declare function getMetricsQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, isHidden, certification, pageSize, loadPermissions, }: ICatalogItemQueryOptions): import("@gooddata/sdk-backend-spi").IMeasuresQuery;
7
7
  export declare function getParametersQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, pageSize, }: ICatalogItemQueryOptions): import("@gooddata/sdk-backend-spi").IParametersQuery;
8
8
  export declare function getComputedAttributesQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, certification, pageSize, }: ICatalogItemQueryOptions): import("@gooddata/sdk-backend-spi").IComputedAttributesQuery;
@@ -21,6 +21,5 @@ export declare function createMeasureCatalogItem(backend: IAnalyticalBackend, wo
21
21
  export declare function updateMeasureCatalogItem(backend: IAnalyticalBackend, workspace: string, measure: IMeasureMetadataObject): Promise<IMeasureMetadataObject>;
22
22
  export declare function deleteMeasureCatalogItem(backend: IAnalyticalBackend, workspace: string, ref: ObjRef): Promise<void>;
23
23
  export declare function getMeasureCatalogItem(backend: IAnalyticalBackend, workspace: string, ref: ObjRef): Promise<IMeasureMetadataObject>;
24
- export declare function getMeasureReferencingObjectsCatalogItem(backend: IAnalyticalBackend, workspace: string, ref: ObjRef): Promise<import("@gooddata/sdk-backend-spi").IMeasureReferencing>;
25
24
  export declare function updateCatalogItemCertification(backend: IAnalyticalBackend, workspace: string, item: Pick<ICatalogItem, "type" | "identifier" | "certification">): Promise<void>;
26
25
  //# sourceMappingURL=query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/catalogItem/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/catalogItem/query.ts"],"names":[],"mappings":"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"}
@@ -25,8 +25,8 @@ export function getDashboardsQuery({ backend, workspace, search, origin, id, exc
25
25
  })
26
26
  .withMethod("POST");
27
27
  }
28
- export function getInsightsQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, isHidden, certification, pageSize = PAGE_SIZE, }) {
29
- return backend
28
+ export function getInsightsQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, isHidden, certification, pageSize = PAGE_SIZE, loadVisualizationPermissions = false, }) {
29
+ const query = backend
30
30
  .workspace(workspace)
31
31
  .insights()
32
32
  .getInsightsQuery()
@@ -47,6 +47,7 @@ export function getInsightsQuery({ backend, workspace, search, origin, id, exclu
47
47
  certification,
48
48
  })
49
49
  .withMethod("POST");
50
+ return loadVisualizationPermissions ? query.withMetaInclude(["permissions"]) : query;
50
51
  }
51
52
  export function getMetricsQuery({ backend, workspace, search, origin, id, excludeId, createdBy, excludeCreatedBy, tags, excludeTags, isHidden, certification, pageSize = PAGE_SIZE, loadPermissions = false, }) {
52
53
  const query = backend
@@ -351,9 +352,6 @@ export function deleteMeasureCatalogItem(backend, workspace, ref) {
351
352
  export function getMeasureCatalogItem(backend, workspace, ref) {
352
353
  return backend.workspace(workspace).measures().getMeasure(ref);
353
354
  }
354
- export function getMeasureReferencingObjectsCatalogItem(backend, workspace, ref) {
355
- return backend.workspace(workspace).measures().getMeasureReferencingObjects(ref);
356
- }
357
355
  export function updateCatalogItemCertification(backend, workspace, item) {
358
356
  const ref = idRef(item.identifier, item.type);
359
357
  switch (item.type) {
@@ -53,6 +53,8 @@ export interface ICatalogItemDashboard extends ICatalogItemBase {
53
53
  export interface ICatalogItemInsight extends ICatalogItemBase {
54
54
  type: "insight";
55
55
  visualizationType: VisualizationType;
56
+ /** Object-level permissions, only when the query asked for them. Undefined otherwise. */
57
+ permissions?: AccessGranularPermission[];
56
58
  }
57
59
  /**
58
60
  * Visualization type
@@ -139,6 +141,13 @@ export type ICatalogItemHidable = Extract<ICatalogItem, {
139
141
  export type ICatalogItemTextGenerable = Extract<ICatalogItem, {
140
142
  type: AnalyticsCatalogGenerateDescriptionObjectType;
141
143
  }>;
144
+ /**
145
+ * Catalog items that carry the current user's own object-level permissions.
146
+ * @internal
147
+ */
148
+ export type ICatalogItemWithPermissions = Extract<ICatalogItem, {
149
+ type: "insight" | "measure";
150
+ }>;
142
151
  export type ICatalogItemFeedOptions = Omit<ICatalogItemQueryOptions, "origin" | "tags">;
143
152
  export interface ICatalogItemQueryOptions {
144
153
  backend: IAnalyticalBackend;
@@ -156,6 +165,8 @@ export interface ICatalogItemQueryOptions {
156
165
  pageSize?: number;
157
166
  /** Ask for each metric's object-level permissions, kept on ICatalogItemMeasure.permissions. */
158
167
  loadPermissions?: boolean;
168
+ /** Ask for each visualization's object-level permissions, kept on ICatalogItemInsight.permissions. */
169
+ loadVisualizationPermissions?: boolean;
159
170
  }
160
171
  export interface ICatalogItemSemanticSearchOptions {
161
172
  queryOptions: ICatalogItemQueryOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/catalogItem/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/catalogItem/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useCatalogEndpoints.d.ts","sourceRoot":"","sources":["../../src/catalogItem/useCatalogEndpoints.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACR,sBAAsB,EACtB,8BAA8B,EAC9B,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACzB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAazD,OAAO,KAAK,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEpF,MAAM,MAAM,cAAc,GACpB,oBAAoB,GACpB,sBAAsB,GACtB,iBAAiB,GACjB,oBAAoB,GACpB,sBAAsB,GACtB,oBAAoB,GACpB,sBAAsB,GACtB,8BAA8B,CAAC;AAErC,MAAM,MAAM,YAAY,GAAG;IACvB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;CACxC,CAAC;AAEF,UAAU,YAAY,CAAC,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC;IACV,UAAU,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,yBAAyB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAClC,IAAI,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,UAAU,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC,GAAG,SAAS,CAAC;IACnD,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC;CACtC;AAED,wBAAgB,sBAAsB,CAClC,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,yBAAyB,GACxC,wBAAwB,CAgD1B;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACnE,OAAO,CAAC,EAAE,SAAS,CAAC,MAAM,aAAa,CAAC,EAAE,CAAC;IAC3C,cAAc,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CAC1C;AAED,KAAK,UAAU,GAAG,WAAW,GAAG,kBAAkB,GAAG,eAAe,CAAC;AA0CrE,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,UAAU,EAAE,EACnB,YAAY,EAAE,wBAAwB,EACtC,KAAK,EAAE,aAAa,GAAG,SAAS,GACjC,YAAY,EAAE,CAEhB;AAED,wBAAgB,qBAAqB,IAAI,UAAU,EAAE,CAMpD;AAED,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,OAAO,EAAE,wBAAwB,EACjC,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,SAAS,GAAE,SAAS,gBAAgB,EAAc,GACnD,YAAY,EAAE,CAqBhB"}
1
+ {"version":3,"file":"useCatalogEndpoints.d.ts","sourceRoot":"","sources":["../../src/catalogItem/useCatalogEndpoints.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACR,sBAAsB,EACtB,8BAA8B,EAC9B,sBAAsB,EACtB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACzB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAInF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAazD,OAAO,KAAK,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEpF,MAAM,MAAM,cAAc,GACpB,oBAAoB,GACpB,sBAAsB,GACtB,iBAAiB,GACjB,oBAAoB,GACpB,sBAAsB,GACtB,oBAAoB,GACpB,sBAAsB,GACtB,8BAA8B,CAAC;AAErC,MAAM,MAAM,YAAY,GAAG;IACvB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;CACxC,CAAC;AAEF,UAAU,YAAY,CAAC,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC;IACV,UAAU,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,yBAAyB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAClC,IAAI,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7B,UAAU,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC,GAAG,SAAS,CAAC;IACnD,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,aAAa,EAAE,OAAO,GAAG,SAAS,CAAC;CACtC;AAED,wBAAgB,sBAAsB,CAClC,WAAW,EAAE,uBAAuB,EACpC,YAAY,EAAE,yBAAyB,GACxC,wBAAwB,CAmD1B;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACnE,OAAO,CAAC,EAAE,SAAS,CAAC,MAAM,aAAa,CAAC,EAAE,CAAC;IAC3C,cAAc,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CAC1C;AAED,KAAK,UAAU,GAAG,WAAW,GAAG,kBAAkB,GAAG,eAAe,CAAC;AA0CrE,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,UAAU,EAAE,EACnB,YAAY,EAAE,wBAAwB,EACtC,KAAK,EAAE,aAAa,GAAG,SAAS,GACjC,YAAY,EAAE,CAEhB;AAED,wBAAgB,qBAAqB,IAAI,UAAU,EAAE,CAMpD;AAED,wBAAgB,sBAAsB,CAClC,KAAK,EAAE,SAAS,UAAU,EAAE,EAC5B,OAAO,EAAE,wBAAwB,EACjC,KAAK,EAAE,aAAa,GAAG,SAAS,EAChC,SAAS,GAAE,SAAS,gBAAgB,EAAc,GACnD,YAAY,EAAE,CAqBhB"}
@@ -10,6 +10,7 @@ export function useCatalogQueryOptions(feedOptions, filterInputs) {
10
10
  const { search, origin, createdBy, tags, qualityIds, isHidden, certification } = filterInputs;
11
11
  // the detail panel reuses the listed item, so its permissions have to come with the list
12
12
  const loadPermissions = useFeatureFlag("enableMetricPermissions");
13
+ const loadVisualizationPermissions = useFeatureFlag("enableVisualizationPermissions");
13
14
  return useMemo(() => {
14
15
  let includeIds = id;
15
16
  let excludeIds = undefined;
@@ -36,6 +37,7 @@ export function useCatalogQueryOptions(feedOptions, filterInputs) {
36
37
  certification,
37
38
  pageSize,
38
39
  loadPermissions,
40
+ loadVisualizationPermissions,
39
41
  };
40
42
  }, [
41
43
  backend,
@@ -50,6 +52,7 @@ export function useCatalogQueryOptions(feedOptions, filterInputs) {
50
52
  isHidden,
51
53
  certification,
52
54
  loadPermissions,
55
+ loadVisualizationPermissions,
53
56
  ]);
54
57
  }
55
58
  const ENDPOINTS = [
@@ -799,6 +799,10 @@ export declare const en_US: {
799
799
  text: string;
800
800
  crowdinContext: string;
801
801
  };
802
+ "analyticsCatalog.parameter.dialog.delete.usageWarning": {
803
+ text: string;
804
+ crowdinContext: string;
805
+ };
802
806
  "analyticsCatalog.parameter.delete.success": {
803
807
  text: string;
804
808
  crowdinContext: string;
@@ -1 +1 @@
1
- {"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/localization/bundles/en-US.localization-bundle.ts"],"names":[],"mappings":"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"}
@@ -801,6 +801,10 @@ export const en_US = {
801
801
  "text": "Delete",
802
802
  "crowdinContext": "Label for the Delete button in the parameter delete confirmation dialog."
803
803
  },
804
+ "analyticsCatalog.parameter.dialog.delete.usageWarning": {
805
+ "text": "This parameter is used by {count, plural, one {# object} other {# objects}}. Deleting it may break them.",
806
+ "crowdinContext": "Warning shown in the parameter delete dialog when the parameter is referenced by other objects."
807
+ },
804
808
  "analyticsCatalog.parameter.delete.success": {
805
809
  "text": "Parameter deleted.",
806
810
  "crowdinContext": "Toast shown after a parameter is deleted successfully from the Analytics Catalog."
@@ -1 +1 @@
1
- {"version":3,"file":"metricDescriptor.d.ts","sourceRoot":"","sources":["../../src/metric/metricDescriptor.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAC;AAQ5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AA8EnE;;GAEG;AACH,eAAO,MAAM,gBAAgB,4GAwB5B,CAAC"}
1
+ {"version":3,"file":"metricDescriptor.d.ts","sourceRoot":"","sources":["../../src/metric/metricDescriptor.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,qBAAqB,CAAC;AAQ5E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AA8EnE;;GAEG;AACH,eAAO,MAAM,gBAAgB,4GAyB5B,CAAC"}
@@ -77,6 +77,7 @@ export const metricDescriptor = defineAsCodeDescriptor({
77
77
  createMutationPort: createMetricMutationAdapter,
78
78
  emptyDefinition: (defaultTitle) => metricYamlToDefinition({ type: "metric", title: defaultTitle, maql: "SELECT 1" }),
79
79
  seed: { load: loadMetric, loadError: capabilityMessages.loadError },
80
+ // Warns when other objects still depend on it (insights, metrics, computed attributes, dashboards).
80
81
  referenceCounted: {
81
82
  load: listMetricReferences,
82
83
  usageWarning: capabilityMessages.deleteUsageWarning,
@@ -8,7 +8,7 @@ import type { ICatalogItemMeasure } from "../catalogItem/types.js";
8
8
  export type IMetricMutationPort = IAsCodeMutationPort<IMeasureMetadataObjectDefinition, ICatalogItemMeasure>;
9
9
  /** Fetches the full measure for editing (the catalog item carries no MAQL). @internal */
10
10
  export declare function loadMetric(backend: IAnalyticalBackend, workspace: string, item: ICatalogItemMeasure): Promise<IMeasureMetadataObjectDefinition>;
11
- /** Titles of the insights and measures referencing a measure. @internal */
11
+ /** Titles of objects that depend on a measure (insights, metrics, computed attributes, dashboards). @internal */
12
12
  export declare function listMetricReferences(backend: IAnalyticalBackend, workspace: string, item: ICatalogItemMeasure): Promise<string[]>;
13
13
  /**
14
14
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"metricMutationPort.d.ts","sourceRoot":"","sources":["../../src/metric/metricMutationPort.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAEH,KAAK,gCAAgC,EACrC,KAAK,SAAS,EAIjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAUnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,gCAAgC,EAAE,mBAAmB,CAAC,CAAC;AAW7G,yFAAyF;AACzF,wBAAgB,UAAU,CACtB,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,mBAAmB,GAC1B,OAAO,CAAC,gCAAgC,CAAC,CAE3C;AAED,2EAA2E;AAC3E,wBAAsB,oBAAoB,CACtC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,mBAAmB,GAC1B,OAAO,CAAC,MAAM,EAAE,CAAC,CAUnB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACvC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,SAAS,GACrB,mBAAmB,CA+BrB"}
1
+ {"version":3,"file":"metricMutationPort.d.ts","sourceRoot":"","sources":["../../src/metric/metricMutationPort.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAEH,KAAK,gCAAgC,EACrC,KAAK,SAAS,EAGjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AASnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,gCAAgC,EAAE,mBAAmB,CAAC,CAAC;AAW7G,yFAAyF;AACzF,wBAAgB,UAAU,CACtB,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,mBAAmB,GAC1B,OAAO,CAAC,gCAAgC,CAAC,CAE3C;AAED,iHAAiH;AACjH,wBAAsB,oBAAoB,CACtC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,mBAAmB,GAC1B,OAAO,CAAC,MAAM,EAAE,CAAC,CAMnB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACvC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,SAAS,GACrB,mBAAmB,CA+BrB"}
@@ -1,7 +1,7 @@
1
1
  // (C) 2026 GoodData Corporation
2
- import { idRef, insightTitle, isMeasureMetadataObject, } from "@gooddata/sdk-model";
2
+ import { idRef, isMeasureMetadataObject, } from "@gooddata/sdk-model";
3
3
  import { convertMeasureToCatalogItem } from "../catalogItem/converter.js";
4
- import { createMeasureCatalogItem, deleteMeasureCatalogItem, getMeasureCatalogItem, getMeasureReferencingObjectsCatalogItem, updateMeasureCatalogItem, } from "../catalogItem/query.js";
4
+ import { createMeasureCatalogItem, deleteMeasureCatalogItem, getMeasureCatalogItem, updateMeasureCatalogItem, } from "../catalogItem/query.js";
5
5
  // `id` is definition-expressible yet server-owned: the update targets by it, so a hand-edited id must not retarget it.
6
6
  function pickMetricIdentity(measure) {
7
7
  const { id, ref, uri, created, updated, createdBy, updatedBy, certification } = measure;
@@ -11,13 +11,13 @@ function pickMetricIdentity(measure) {
11
11
  export function loadMetric(backend, workspace, item) {
12
12
  return getMeasureCatalogItem(backend, workspace, idRef(item.identifier, "measure"));
13
13
  }
14
- /** Titles of the insights and measures referencing a measure. @internal */
14
+ /** Titles of objects that depend on a measure (insights, metrics, computed attributes, dashboards). @internal */
15
15
  export async function listMetricReferences(backend, workspace, item) {
16
- const referencing = await getMeasureReferencingObjectsCatalogItem(backend, workspace, idRef(item.identifier, "measure"));
17
- return [
18
- ...(referencing.insights ?? []).map((insight) => insightTitle(insight)),
19
- ...(referencing.measures ?? []).map((measure) => measure.title),
20
- ];
16
+ const { nodes } = await backend
17
+ .workspace(workspace)
18
+ .references()
19
+ .getReferences(idRef(item.identifier, "measure"), { direction: "up" });
20
+ return nodes.filter((node) => !node.isRoot).map((node) => node.title);
21
21
  }
22
22
  /**
23
23
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"parameterDescriptor.d.ts","sourceRoot":"","sources":["../../src/parameter/parameterDescriptor.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,qBAAqB,CAAC;AAQ9E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAsFrE;;GAEG;AACH,eAAO,MAAM,mBAAmB,gHAiC9B,CAAC"}
1
+ {"version":3,"file":"parameterDescriptor.d.ts","sourceRoot":"","sources":["../../src/parameter/parameterDescriptor.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,qBAAqB,CAAC;AAQ9E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AA0FrE;;GAEG;AACH,eAAO,MAAM,mBAAmB,gHAsC9B,CAAC"}
@@ -6,7 +6,7 @@ import { ObjectTypes } from "../objectType/constants.js";
6
6
  import { PARAMETER_FEATURE_FLAG, useEnabledParameterTypes } from "./gate.js";
7
7
  import { createParameterCompletions } from "./parameterCompletions.js";
8
8
  import { createCopiedParameter } from "./parameterCopy.js";
9
- import { createParameterMutationAdapter } from "./parameterMutationPort.js";
9
+ import { createParameterMutationAdapter, listParameterReferences } from "./parameterMutationPort.js";
10
10
  import { serializeParameterToYaml } from "./parameterSerialization.js";
11
11
  import { validateParameterYaml } from "./parameterValidation.js";
12
12
  const PARAMETER_DOCS_URL = "https://www.gooddata.ai/docs/cloud/experimental-features/numeric-parameters/";
@@ -28,6 +28,9 @@ const messages = defineMessages({
28
28
  deleteSuccess: { id: "analyticsCatalog.parameter.delete.success" },
29
29
  deleteError: { id: "analyticsCatalog.parameter.delete.error" },
30
30
  });
31
+ const capabilityMessages = defineMessages({
32
+ deleteUsageWarning: { id: "analyticsCatalog.parameter.dialog.delete.usageWarning" },
33
+ });
31
34
  const errorMessages = defineMessages({
32
35
  empty: { id: "analyticsCatalog.parameter.validation.empty" },
33
36
  syntax: { id: "analyticsCatalog.parameter.validation.syntax" },
@@ -105,6 +108,11 @@ export const parameterDescriptor = defineAsCodeDescriptor({
105
108
  definition: item.definition,
106
109
  }),
107
110
  },
111
+ // Warns when other objects still depend on it (metrics, computed attributes, insights, dashboards).
112
+ referenceCounted: {
113
+ load: listParameterReferences,
114
+ usageWarning: capabilityMessages.deleteUsageWarning,
115
+ },
108
116
  // A copied parameter derives a human-readable id that can collide on create; identity lets the dialog retry without it.
109
117
  identity: {
110
118
  read: (definition) => definition.id,
@@ -1,13 +1,15 @@
1
1
  import type { IAnalyticalBackend } from "@gooddata/sdk-backend-spi";
2
- import type { IParameterMetadataObjectDefinition } from "@gooddata/sdk-model";
2
+ import { type IParameterMetadataObjectDefinition } from "@gooddata/sdk-model";
3
3
  import type { IAsCodeMutationPort } from "../asCode/descriptor.js";
4
4
  import type { ICatalogItemParameter } from "../catalogItem/types.js";
5
5
  /**
6
6
  * A parameter's YAML round-trips 1:1 to its definition, so the editor works directly off the catalog
7
- * item (see the descriptor's `editSeed`) — there is no `load` and no `getReferencingObjectsCount`.
7
+ * item (see the descriptor's `editSeed`) — there is no `load`.
8
8
  * @internal
9
9
  */
10
10
  export type IParameterMutationPort = IAsCodeMutationPort<IParameterMetadataObjectDefinition, ICatalogItemParameter>;
11
+ /** Titles of objects that depend on a parameter (metrics, computed attributes, insights, dashboards). @internal */
12
+ export declare function listParameterReferences(backend: IAnalyticalBackend, workspace: string, item: ICatalogItemParameter): Promise<string[]>;
11
13
  /**
12
14
  * @internal
13
15
  */
@@ -1 +1 @@
1
- {"version":3,"file":"parameterMutationPort.d.ts","sourceRoot":"","sources":["../../src/parameter/parameterMutationPort.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,kCAAkC,EAAE,MAAM,qBAAqB,CAAC;AAE9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAOnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CACpD,kCAAkC,EAClC,qBAAqB,CACxB,CAAC;AAEF;;GAEG;AACH,wBAAgB,8BAA8B,CAC1C,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,GAClB,sBAAsB,CA2BxB"}
1
+ {"version":3,"file":"parameterMutationPort.d.ts","sourceRoot":"","sources":["../../src/parameter/parameterMutationPort.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,KAAK,kCAAkC,EAAS,MAAM,qBAAqB,CAAC;AAErF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAOnE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CACpD,kCAAkC,EAClC,qBAAqB,CACxB,CAAC;AAEF,mHAAmH;AACnH,wBAAsB,uBAAuB,CACzC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,qBAAqB,GAC5B,OAAO,CAAC,MAAM,EAAE,CAAC,CAMnB;AAED;;GAEG;AACH,wBAAgB,8BAA8B,CAC1C,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,GAClB,sBAAsB,CA2BxB"}
@@ -1,6 +1,15 @@
1
1
  // (C) 2026 GoodData Corporation
2
+ import { idRef } from "@gooddata/sdk-model";
2
3
  import { convertParameterToCatalogItem } from "../catalogItem/converter.js";
3
4
  import { createParameterCatalogItem, deleteParameterCatalogItem, updateParameterCatalogItem, } from "../catalogItem/query.js";
5
+ /** Titles of objects that depend on a parameter (metrics, computed attributes, insights, dashboards). @internal */
6
+ export async function listParameterReferences(backend, workspace, item) {
7
+ const { nodes } = await backend
8
+ .workspace(workspace)
9
+ .references()
10
+ .getReferences(idRef(item.identifier, "parameter"), { direction: "up" });
11
+ return nodes.filter((node) => !node.isRoot).map((node) => node.title);
12
+ }
4
13
  /**
5
14
  * @internal
6
15
  */
@@ -407,6 +407,8 @@ export declare interface ICatalogItemFact extends ICatalogItemBase {
407
407
  export declare interface ICatalogItemInsight extends ICatalogItemBase {
408
408
  type: "insight";
409
409
  visualizationType: VisualizationType;
410
+ /** Object-level permissions, only when the query asked for them. Undefined otherwise. */
411
+ permissions?: AccessGranularPermission[];
410
412
  }
411
413
 
412
414
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gooddata/sdk-ui-catalog",
3
- "version": "11.57.0",
3
+ "version": "11.58.0-alpha.1",
4
4
  "description": "GoodData SDK - Analytics Catalog",
5
5
  "license": "MIT",
6
6
  "author": "GoodData Corporation",
@@ -40,15 +40,15 @@
40
40
  "tslib": "2.8.1",
41
41
  "yaml": "2.8.3",
42
42
  "zod": "4.3.6",
43
- "@gooddata/sdk-backend-spi": "11.57.0",
44
- "@gooddata/sdk-code-schemas": "11.57.0",
45
- "@gooddata/sdk-model": "11.57.0",
46
- "@gooddata/sdk-ui-ext": "11.57.0",
47
- "@gooddata/sdk-ui": "11.57.0",
48
- "@gooddata/sdk-ui-kit": "11.57.0",
49
- "@gooddata/sdk-ui-theme-provider": "11.57.0",
50
- "@gooddata/util": "11.57.0",
51
- "@gooddata/sdk-ui-semantic-search": "11.57.0"
43
+ "@gooddata/sdk-backend-spi": "11.58.0-alpha.1",
44
+ "@gooddata/sdk-model": "11.58.0-alpha.1",
45
+ "@gooddata/sdk-code-schemas": "11.58.0-alpha.1",
46
+ "@gooddata/sdk-ui": "11.58.0-alpha.1",
47
+ "@gooddata/sdk-ui-ext": "11.58.0-alpha.1",
48
+ "@gooddata/sdk-ui-kit": "11.58.0-alpha.1",
49
+ "@gooddata/util": "11.58.0-alpha.1",
50
+ "@gooddata/sdk-ui-semantic-search": "11.58.0-alpha.1",
51
+ "@gooddata/sdk-ui-theme-provider": "11.58.0-alpha.1"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@microsoft/api-documenter": "7.30.10",
@@ -84,11 +84,11 @@
84
84
  "typescript": "7.0.2",
85
85
  "vitest": "4.1.8",
86
86
  "vitest-dom": "0.1.1",
87
- "@gooddata/i18n-toolkit": "11.57.0",
88
- "@gooddata/eslint-config": "11.57.0",
89
- "@gooddata/oxlint-config": "11.57.0",
90
- "@gooddata/sdk-backend-mockingbird": "11.57.0",
91
- "@gooddata/stylelint-config": "11.57.0"
87
+ "@gooddata/eslint-config": "11.58.0-alpha.1",
88
+ "@gooddata/i18n-toolkit": "11.58.0-alpha.1",
89
+ "@gooddata/oxlint-config": "11.58.0-alpha.1",
90
+ "@gooddata/sdk-backend-mockingbird": "11.58.0-alpha.1",
91
+ "@gooddata/stylelint-config": "11.58.0-alpha.1"
92
92
  },
93
93
  "peerDependencies": {
94
94
  "react": "^18.0.0 || ^19.0.0",